国产车规AI芯片肇观电子NE-V163A开发板新体验
2021-03-17
来源:半导体行业观察
作为一枚车载智能硬件行业的资深老鸟,我存在的价值就是给我的车厂爸爸们turn-key一些智能汽车零部件,我要保证这些零部件在非常恶劣的工作条件下,性能和寿命都是杠杠滴。在汽车电子产业链Tier 1 系统集成厂商长期处于国际寡头垄断的市场格局下,我和一众难兄难弟一样,长期在国际大厂的阴影下勉强求生,常常感觉英雄难有用武之地。终于,东风来了,工信部要求加快国产化替代,加快布局和发展国产汽车电子芯片,还指导编制《汽车半导体供需手册》,作为一个把业内主流芯片都玩遍了的老手, 国产芯片到底能不能玩出点花儿样,我的好奇心和责任感怎能让我做吃瓜群众?
最近我注意到市面上出现了一款国产车规AI芯片,业内讨论的特别火热,这是上海肇观电子研发的,老鸟儿我不禁心痒难搔,各种费尽周章搞到了一块开发板拿来玩玩,稍等上图。这个开发板上的主芯片是一颗车规的NE-V163A,它的主要用途说白了也比较单纯,就是帮助智能汽车在行驶时使用摄像头识别车舱内外的情况,当车辆遇到障碍物的时候,能够灵敏准确的识别出障碍物是什么东西,并且还能判断出障碍物离车有多远。这里面用到的技术当然都是很高深的了,其实我也不完全懂,应该主要是用到了计算机视觉里的图像内容理解和图像几何理解两类算法,当然肯定也少不了当下最热门的AI和深度学习技术。
一。硬件配置
言归正传,让我们来揭开肇观电子NE-V163A开发板的庐山真面目,先看颜值:
▲肇观电子 NE-V163A开发板
▲肇观电子 NE-V163A 开发板 - 侧颜
从我这个行业老鸟的眼光来看,这块开发板的做工还是很扎实的,器件布局非常合理,走线走心,看着就是个上乘的作品。开发板预留了丰富的IO接口,有音视频接口、控制和调试接口、SD存储卡、USB和网络接口等等,都集成在了一块板子里,基于这些接口可以非常方便地扩展出复杂的功能,眼缘确实不错!这大概就是传说中的 “一块板子打遍天下无敌手” 了吧!
值得一提的是:板子上标配1 GB内存(DDR3200),8GB EMMC,128Mb Flash, 这个配置相当阔绰,和NE-V163A 强悍的性能很配,用来跑重型任务也不担心内存不够用了。
下面先来一段官方公布的硬件配置说明,拿走不谢!具体的硬件配置型号和描述,您如果感兴趣,可以拉到文末去看【附件1】:
NE-V163A开发板是基于肇观电子Nextvpu针对车规级机器视觉产品开发设计的一款超低功耗、超高性能的开发板,性能强劲,资源丰富;其CPU采用国产NE-V163A双核32位SoC芯片方案;双核DSP;独立的depth内核计算单元支持基于双目视觉技术,实时输出深度图;最高2.4TCNN算力;而且具备USB3.0,HDMI,Gigabit Ethernet AVB,SDIO等高性能数据传输及显示接口,可以通过 GPIO拓展如485、422、232等更多通用数据接口,满足用户复杂的边缘端连接需求,同时支持四路摄像头及单路BT转HDMI,满足用户高性能图形运算的需求。支持Linux、RTOS等低延时嵌入式OS,完备的BSP驱动,具有完善的软件+硬件生态资源。
开发板配件考虑很周到,有TF卡、TF转USB外设、电源、还配备了官方支持的OV4689传感器连接板,连接板直接插到NE-V163A的MIPI扩展连接器的位置就可以了。TF卡是用来存神经网络模型的,这东西太小了经常找不到,厂家比较贴心送了一个,省得自己单买了。
▲肇观电子 NE-V163A 开发板 – 配件图 & 上电图
厂家提供了快速启动说明书,写得挺明白,对老鸟来说简直没有任何难度,通过简单的几下操作,开发板的硬件环境连接无脑完成,和上图一样。
二。 如何启动
按照官方的说法,只要简单几个步骤就能实现我们想要实现的各种功能了,让我们来看看是不是这么一回事儿。先对主芯片NE-V163A做个理论铺垫,名词有点多,小白看着可能会有点晕:
开发板主要依赖于所搭载的NE-V163视觉处理单元,这里有必要提示一下,神经网络计算单元的细分领域非常多,而NE-V163主要是针对图像和视频的处理。高质量的ISP处理器支持3D降噪和畸变矫正;高精度的双目3D深度和几何计算引擎支持实时特征提取;高性能DSP支持16个单精度浮点MAC和32个半精度浮点MAC;以及支持多路摄像头输入,是它最大的亮点。所以,如果你关注的不是机器视觉领域,赶紧退群!
主芯片NE-V163A的Spec介绍就不赘述了,感兴趣的可以拉到文末看【附件2】。再来启动卡烧录,使用Windows调试计算机,并安装串口usb驱动程序:
CP210x_Universal_Windows_Driver
驱动安装好后,使用MicroUSB数据线连接开发板和计算机,给开发板上电,在计算机的设备管理器看到了串口通信的端口号,并记下了该端口号,接下来通信时会用到。这一套搞软件开发的都熟,就不多说了。
我习惯上会用市面上常见的测试工具PotPlayer播放器 测试rtsp视频流,看看视频流的分辨率和帧率是不是正常,画面的曝光和颜色是不是随场景变化能够正常调整:
ISP处理性能和H.265编码性能果然达到了4K@30fps。画面非常稳定,不像有些4K相机,画面一动起来就容易卡顿。
以上就是最基本的开机测试过程了,更进一步的测试就需要用串口调试工具登录到开发板的系统里,看一下系统的输出信息。我用的是SecureCRT,这是嵌入式开发人员的标配工具,专门用于调试开发板的。如果以前没接触过肇观开发板的话,建议还是先看看官方提供的技术资料,熟悉一下软硬件环境。
【手册图示】
按照上图硬件连接环境,烧录TF卡
映像文件路径选中SDK编译出来的映像
设备选择TF卡
点击写入等待烧录完毕即可
TF卡烧录完毕后将其插入开发板;开发板和计算机连接好,通电,按下上电开关,如下图
打开SecureCRT,选择快速连接
选择Serial协议,选择在计算机设备管理器记录的端口号,其他参数按照图示设置
连接后,按下回车,等到出现欢迎信息后,输入root按回车进入
看来,想要让板子活起来,还是需要花一点功夫的,至少你得跟着《操作手册》插插线,动动鼠标。对于熟悉海思或类似方案开发的人应该能比较快速地上手,基本风格都相差不多。
三。 开发效果如何?Demo 一下!
启动完以后,我们要进行自我算法的开发,比方说车厂爸爸需要我们Tier1提供检测驾驶员是否有疲劳驾驶或者打电话的智能零部件(DMS),又或者要能够辨别出道路上直行或左转的标线,区分红绿灯以提示制动或行驶,判断前车离我们的距离等等(ADAS),就需要计算机视觉帮助我们进行内容理解和几何理解了。
看起来,肇观电子为了展示NE-V163A开发板稳定的SDK、强大的CNN,良好的ISP等等美好神奇的blablabla,开发板上已经内置了很多了demo脚本,我们只要简单跑一下就能检阅结果了:
这么多宝贝,一看就很让人激动,接下来我们随手挑两个脚本跑一下,希望结果不要让我失望。
【Demo 1】
运行 vi_vpss_depth_bt1120_720p_720p_imx291_stitching_fusion
1.使用HDMI线连接NE-V163A开发板和显示器。
2.进入
/product/media/vi_vpss_depth_venc_rtsp_vo,执行对应的脚本:
cd /product/media/vi_vpss_depth_venc_rtsp_vo
./vi_vpss_depth_bt1120_720p_720p_imx291_stitching_fusion.sh
【结果】
显示器输出:双目720p@25fps的实时深度视频+左相机实时视频+右相机实时视频。
【Demo 2】
运行vi_cnn_venc_rtsp_vo
1.使用网线连接NE-V163A开发板和Windows调试计算机。
2.配置NE-V163A开发板的网络地址和Windows调试计算机在同一个网段,确保可以ping通,参考脚本如下:
ifconfig eth0 192.168.30.77 netmask 255.255.255.0
route add default gw 192.168.30.254
3.进入
/product/media/vi_cnn_venc_rtsp_vo,执行对应的脚本:
cd /product/media/vi_cnn_venc_rtsp_vo
./caffe_mobilenetv1_ssd_fp16_rtsp_1080p25_imx291.sh
4.在Windows调试计算机打开PotPlayer(PotPlayer1),
输入rtsp://192.168.30.77:5540/live0,播放主码流的实时视频,如下所示:
5.在Windows调试计算机打开另一个PotPlayer(PotPlayer2),输入rtsp://192.168.30.77:5541/live1,播放辅码流的实时视频
【结果】
PotPlayer1输出:实时视频+物体识别框。
PotPlayer2输出:实时视频。
SecureCRT控制台输出:cnn的处理时间和处理结果。
果然不错,提示信息很友好,想看的信息都在,而且结果显示芯片的CNN性能确实是非常不错的,比我的预期还要更好一点。
四。 性能和寿命
芯片的性能和寿命怎样是我们做产品的人最最关心的问题,但是这个事不经过长期批量测试谁也不好说,一般至少要几百颗芯片经历过一两个冬夏循环后才能比较靠谱,老鸟儿我作为一个谨慎的人不能刚拿到开发板就妄下结论,这事还得是第三方权威机构说了算。
▲肇观电子NE-V163A 通过AEC-Q100 认证报告
这是我从官方发布的新闻里找到的NE-V163A通过了车规认证的报告。AEC-Q100对于我们Tier 1 的工程师应该不陌生,这是汽车电子协会AEC (Automotive ElectronicsCouncil) 制定和推动的一套质量控制标准。大致流程是从厂家提供的待测芯片中随机抽取几千颗,对这些芯片进行一番玩命摧残之后,再逐一进行苛刻的质量和可靠性确认。由于用于车载的电子设备涉及到用户生命和财产安全,因此,相比消费和工业电子设备而言,车规级芯片的测试项目更加繁复、测试环境更加恶劣、通过标准更加严苛,对质量系统和安全系统要求极高。AEC-Q100测试涉及几十项测试要求,被测芯片必需通过全面测试芯片产品的可靠性指标,从而确保系统产品在整个生命周期的可靠性。
▲肇观电子NE-V163A
按照厂家提供的信息,在AEC-Q100温度循环测试中,NE-V163A芯片在-40°C至+105°C环境下多次迭代进行1000小时的测试,确保芯片能够在此测试温度下保持正常工作;以人为加速老化的方式测试芯片,依然确保芯片在产品使用中的可靠性和寿命。
今天的基本测评就差不多结束了。总结一下,NE-V163A开发板套件硬件配置丰富,配件周到, 接口丰富;通过运行的两个官方提供的脚本demo程序,我们初步认为, ISP干净通透,色彩纯正,图像清晰;H265编码流畅稳定,CNN运算实时高效,功耗常规,符合大家和市场对它的预期,尤其特别重点说明的是NE-V163A的双目depth功能,点云图稳定清晰,层次分明,60cm处测试人脸五官深度清晰,精度很高,超出了我的预期。
【附件1】NE-V163A开发板硬件配置
【附件2】NE-V163A芯片Spec