强大的低功耗嵌入式AI方案海思Hi3519AV100介绍
海思Hi3519AV100是2018年10月在北京安防展展会上第一次进入我们视线的,然后11月初北京一家公司委托我们先研究一下,并从代理拿到初始版本的SDK资料,本人认真看了芯片DATASHEET,当时发觉比公司主推的Hi3519V101+Intel Movidius Myriad 2 MA2450强大,就决定动手做这个芯片方案,为了降低风险,我们只能先出自己的V1.0版本开发板玩玩,等软件工程师和硬件工程师调试SDK软件跑起来,我们才答应北京客户,进行Hi3519AV100项目定制。2019年1月底样机回来,能跑Hi3519AV100 的SDK程序,我们就立刻动手给北京客户定制Hi3519AV100的产品,反而本公司的对外销售的开发板没那么快出来,客户定制优先。本公司2019年3月份才对外出售Hi3519AV100方案的开发板,博客这边一直没多少时间来打理,去年写《图像识别VPU——易用的嵌入式AI支持深度学习平台介绍》里面介绍了Hi3559A这个更强悍的嵌入式AI平台,但是由于海思不对小公司开放SDK资源,我们就没必要这里详细介绍。
时间来到2019年6月,发觉这个上半年推出很多价格适中低功耗嵌入式AI方案,比较有代表性的:
英伟达的JETSON NANO
(JETSON TX1的简化版本,注意是TX1的简化,核心板把价格降低到1000元内,性能是相当不错,不过看到那个散热片我们就不考虑了。当然如果你的产品放在室内使用,这个NANO还是相当不错的,因为性能强大是摆在那里的)
GOOGLE的CORAL USB(TPU)加速棒
)GOOGLE 的CORAL USB 这个TPU性能也是相当强悍,我们还没玩过,不好评论,也是学人家Intel Movidius NCS加速棒模式)
瑞芯微RK3399PRO,RK1808加速棒
(RK3399PRO的AI核就和Hi3519AV100 NNIE的AI相当类似,ARM 方面的性能RK3399PRO比Hi3519V100强悍,功耗比Hi3519AV100大多了,用在室外我们还是不敢拿来给客户做产品,RK1808加速棒也是学人家Intel Movidius NCS加速棒模式)
百度基于赛灵思Zynq的EdgeBoard(比较贵)
还有RISC-V+KPU低成本方案(超级便宜)
加上去年主推的Intel Movidius Myriad X MA2485(今年才发布支持树莓派OpenVINO开发包,本人上个月才在树莓派3和RK3288平台上面跑通车牌识别和人脸识别的例子,基于l_openvino_toolkit_raspbi_p_2019.1.094 包,本公司VPU模组板子正在做)
说实在的,我们小公司精力也有限,有现成的客户定制,就做对应的芯片方案,其他没时间折腾,而且Hi3519AV100软硬件资料SDK比较容易搞到手。详细介绍Hi3519AV100前,我们这里提示一下:
海思芯片命名比较头疼(很多客户反馈),单单在安防监控IPC网络摄像机领域,Hi3519AV100和Hi3519V101、Hi3519V100性能相差非常遥远,我们图-2看到Hi3519AV100不单单是双核CORTEX-A53+IVE,而且增加支持深度学习的NNIE和DSP;Hi3519V101只是CORTEX-A17+CORTEX-A7+IVE组合而已,不带支持深度学习的加速引擎,所以本公司去年推出的Hi3519V101 +VPU,就是必须外加Intel Movidius Myriad 2 MA2450 VPU芯片才能跑Caffe深度学习算法(必须是C/C++程序),而最差劲的Hi3519V100已经停产,这3个Hi3519芯片型号工艺制程不一样,所以性能就不一样。都叫Hi3519,但是后缀的字母和数字不一样,性能相差非常大,很多客户被搞晕了。在做IPC(网络摄像机)产品方面,海思还有一个性价比很高的型号叫Hi3516,这个型号衍生至少9个后缀,性能也相差非常大,这里就不多说了,见海思官网: 。其他拿来做NVR-DVR-机顶盒-手机等等型号这里也不描述,我们这里只关注图像识别的平台。
Hi3519AV100我们可以从下图图-1看看Hi3519AV100应用框图。
Hi3519AV100是一颗面向监控 IP 摄像机、运动相机、全景相机、后视镜、航拍无人机、双目机器人等多个产品领域推出的高性能、低功耗的 4K Ultra HD Mobile Camera SOC(台积电12nm工艺)。
Hi3519AV100 MIPI接口4-LANE模式可以同时接3个CMOS SENSOR, 2-LANE模式可以同时接5路CMOS SENSOR。内置高性能全景拼接引擎,可实现4K级的2~4实时视频全景拼接。主摄像头 ISP0支持4K x 2K(3840 x 2160)@30fps 编码,用于 SD 卡存储 + 1080p@30fps 子码流编码并通过网口或 USB 送给无线传输模块。ISP1/2 接向双目摄像头,采用 DPU 模块提取双目深度图,送飞控 MCU 用于避障。ISP3/4 接朝下的单目或双目摄像头,在 向量DSP 运行 SLAM 算法,计算结果送飞控MCU 用于悬停。
NNIE (寒武纪AI核)是一个强大的可编程神经网络推理引擎,用于运行人脸识别/检测、目标检测或手势识别算法。
从上图-2我们可以看到Hi3519AV100还是比较强悍的:
1、2*ARM Cortex A53@1.5GHz,32KB I-cache,32KB Dcache /256KB L2 cache
2、支持 Neon 加速,集成 FPU 处理单元
3、DSP集成Tensilica Vision P6 DSP@630MHz,32KB I-Cache/32KB I-RAM/512KB Data RAM, 0.3Tops 神经网络运算性能,支持 Huawei LiteOS
4、支持DDR4
图像识别的芯片现在最差的都得备DDR3的内存了,而Hi3519AV100是外接DDR4 内存芯片,深度学习访问内存速度是很关键的指标,DDR3还是比较落后。
5、NNIE
支持 AlexNet、VGG、ResNet、GoogLeNet 等多种分类神经网络
支持 Faster R-CNN、SSD、YoloV2 等多种目标检测神经网络
2.0Tops 神经网络运算性能
支持完整的 API 和工具链(编译器、仿真器),易于适配客户定制网络
(做过深度学习算法的朋友对上面列的算法应用很熟悉了,呵呵)
Hi3519AV100板上集成NNIE核支持深度学习:
加速引擎 NNIE 是一款基于 CNN、RCNN 等神经网络结构的深度学习专用加速器,可
用于图片分类、目标检测等应用场景。
NNIE性能:
支持深度学习算法AlexNet、VGG、ResNet、GoogLeNet 等多种分类神经网络
支深度学习算法Faster R-CNN、SSD、YoloV2 等多种目标检测神经网络
2.0Tops 神经网络运算性能
支持完整的 API 和工具链(编译器、仿真器) ,易于适配客户定制网络
NNIE 加速引擎特性如下:
支持 N * N 卷积
支持 Pooling(Max 和 Average)
支持 Stride
支持 Pad
支持激活函数(Relu、Sigmoid 和 TanH)
支持 LRN 运算
支持 BN(Batch Normalization)
支持向量与矩阵的乘加运算(Inner Product)
支持 Concat
支持 Eltwise
支持 8bit 的数据与参数模式
支持数据与参数位宽可配置
支持参数压缩和参数稀疏
支持输入图像为单通道(灰度图)和三通道(RGB 格式)
支持图像预处理(均值化和像素值缩放)
支持图像批处理
支持中间层结果上报
在海思SDK开发包的路径:Hi3519AV100R001C02SPC010\ReleaseDoc\zh\01.software\board\SVP下面,有一个《HiSVP 开发指南.pdf》和《HiSVP API 参考.pdf》
(提示:这些资料不得对外随便公布,必须采购华为海思Hi3519AV100芯片得到代理授权拿到资料,才能在公司内部公开的,所以本人也遵守一定原则)
Hi3519AV100 SDK包
Hi3519AV100的SDK包需要安装在ubuntu16.04 LST 64bit环境,这里就不累赘,SDK包里面有介绍如何安装SDK,简单的几个命令。不过这里还是提醒一下从来没安装过海思SDK包的朋友,由于在ubuntu16.04 LST 64bit环境,下面几个命令需要做的:
使用root登录ubuntu,
1、./sdk.unpack: run_command_progress_float: not found
#dpkg-reconfigure dash,选择no
2、/bin/sh: /opt/hisi-linux/x86-arm/arm-himix200-linux/bin/arm-himix200-linux-size: No such file or directory
#apt-get install lib32z1-dev
3、"mkimage" command not found - U-Boot images will not be built
#apt-get install u-boot-tools
4、/usr/bin/ld: cannot find -lncurses
#apt-get install libncurses5-dev
5、makeinfo: command not found
#apt-get install texinfo
上面是公司自己做的Hi3519AV100核心板和开发板,淘宝上面有卖,输入Hi3519AV100应该能看到,或者链接:。 还有本人的联系方式QQ:2505133162周1---周6在线。总之做这个Hi3519AV100需要一定实力,而且对深度学习一些经典Caffe算法在PC上的开发需要一定功力。图-3、图-4 和图-5 NNIE开发指南,涉及的知识点还比较多。Hi3519AV100上面提到Hi3519AV100除了能做人脸识别,而且能做手势识别的产品,本人也希望更多算法软件公司基于这些嵌入式AI平台,在边缘端做出更多识别算法服务老百姓,比如现在一直存在的反人类的抢夺和拐卖儿童的事件,配合人脸识别、手势识别、行为分析和云端处理,让犯罪份子无地藏身等等。越往后,嵌入式AI的芯片越强大,比如1W功耗10.0T运算能力很快就出来。
这些天(2019-05-25)贸易战打得很火,这对于我们这些科技公司杀伤力很大,活下去是短期最大目标了,还好海思拿到ARM公司的ARMV7和ARMV8的永久授权,台积电那边也支持这些大客户,应该对Hi3519AV100这些都没有影响。当然,我们公司不单单拿海思的芯片设计嵌入式AI产品,也拿Intel Movidius的芯片做产品,后面还会做其他平台的产品,根据自己的实力,哪个好用,资料容易搞到,性价比最优,就选择谁。从上面的介绍,Hi3519AV100性价比真的还不错的。
转载于:https://blog.51cto.com/zjbintsystem/2399918