自动驾驶汽车的确需要专门搭建相应的计算平台,这也是计算机系统硬件和软件设计、开发的基础。
硬件的基础是CPU,软件基础是操作系统。当传感器接受到信息后,数据被导入计算平台,由芯片进行运算处理。以上的过程对于安全性和实时性都有要求。
现阶段被行业普遍应用的自动驾驶汽车计算平台有四种。
GPU计算平台
GPU的多核心、高内存带宽,在并行运算、浮点运算上的性能是CPU的数十倍甚至上百倍。
凭借其计算能力以及对深度学习应用的支持,GPU现在是自动驾驶技术开发的主流平台了。
说到GPU计算平台,就得说下英伟达。
其为自动巡航开发的NVIDIA DRIVE PX2平台是开放式的AI汽车计算平台,能够让车企和一级供应商迅速进行自动驾驶技术的研发和生产。
英伟达还提供一套DriveWorks的用于自动驾驶软件开发的套件(SDK),可以提供用于构建目标检测,地图定位、路径规划等计算密集型算法的基础。
借助上述的平台和套件,汽车ADAS系统可以清晰分辨出各大种类的汽车、摩托车、自行车、行人。
而且整个NVIDIA DRIVE PX2硬件设施高度集成化,巴掌大小,消耗功率仅10W左右,使用深度神经网络来处理多个摄像头和传感器的数据,并采用传感器融合技术得到完整、准确的环境数据。
英伟达开发此平台,尽可能让汽车自身拥有人工智能和态势感知平台,让汽车能自行规避周围的危险。
现在采用英伟达平台方案的有宝马,特斯拉,沃尔沃等众多厂商。
FPGA计算平台
采用可编程逻辑单元阵列,是一种高性能、低功耗的可编程芯片。
通过烧录FPGA配置文件来自定义芯片内部的电路连接,且烧录是可擦写,可以根据产品需求进行不同的功能配置。
Xilinx在1984年创造出FPGA以来,在通讯、医疗、安防上面都有着极为广泛的应用。
对比CPU和GPU,FPGA的优势在于硬件配置灵活、能耗低、性能高及可编程等,十分适合感知类的计算。
以最先搭载L3级别的2017款奥迪A8为例,ADAS的核心zFAS搭载了四个核心原件。
Mobileye的EyeQ3,负责交通信号识别,行人检测,碰撞报警,光线探测和车道线识别。
英伟达的K1负责驾驶员状态检测,360度全景。
英特尔(Altera)的Cyclone V负责目标识别融合,地图融合,自动泊车,预刹车,激光雷达传感器数据处理。
英飞凌的Aurix TC297T负责监测系统运行状态。
其中的Cyclone V Soc,就是Altera 提供的FPGA方案,提高传感器融合,高效完成对各类目标的检测。
DSP计算平台
数字信号处理是将事物的运动变化转变为一串数字,并用计算的方法从中提取有用的信息。
数字信号处理器(Digital Signal Processor),则是一种特别适合进行数字信号处理运算的微处理器。
在设计方案中,DSP的数据和地址总线分开,允许取出和执行指令完全重叠。在执行上一条指令的时候,同时可取出下一条指令进行译码,大幅提升了微处理器的运行速度。
强大的数据处理能力和高运行速度,使得它十分适合自动驾驶应用中的计算。
美国德州仪器公司(TI)是世界上最大的DSP厂商,也是DSP解决自动驾驶计算方案的宣导者。
他推出的TDA2X汽车系统级芯片,低功耗、高性能,能满足高级驾驶员辅助系统(ADAS)设计要求。其系统级芯片(SoC)采用多相可升级的架构,包括固定和浮点 TMS320C66x数字信号处理器(DSP)产生核 ,Vision AcceleraTIonPac, ARMCortex-A15 MPCore™和双Cortex-M4处理器.
TI的Vision AccelerationPac 还可补充TMS320C66x数字信号处理器(DSP)的内核,可以让众多的ADAS算法同步运行。同时,TI TDA2X还可以作为融合雷达和摄像传感器数据的中央处理器,帮助ADAS进行决策。
而另一家知名的DSP公司,美国的CEVA,2015年推出的CEVA-XM4,支持三维深度图的生成和三维点云的数据处理,单一CEVA-XM4的内核可以完成典型的「目标检测与跟踪」,功耗相当于现在先进CPU簇的10%,面积只有先进CPU簇的5%。
不过,CEVA可能更有名的就是它在通讯业务上的地位,2017年,有12亿台通讯设备搭载了CEVA的DSP。(提供IP授权,不生产芯片)
目前为止,全球超过40%的手机使用CEVA的DSP内核,国内众多手机,包括华为手机使用的也是CEVA授权生产的DSP(数字信号处理器)。
ASIC计算平台
专用集成电路,为特定需求专门定制的芯片。一旦设计制造完成,内部的电路和算法就固定了,无法再改变。
体积小、功耗低、计算性能和计算效率高,因为芯片内部电路、算法固定,容易量产,批量大所带来的成本递减效应明显。
ASIC和FPGA的区别,类似房产推出的批量精装修房和毛坯房装修的区别。
精装修房前期要规划合适的装修方案,确定各大供应商,试样是否合格,中间可能要多次调整方案,在成本、效果、效率中衡量,需要一个较长周期,才能制作出合适的标准装修模板。前期装修的花费高,确定模板的周期长,但随着量的铺开,成本就会迅速下降。而毛坯房则是给客户一个基础,接好基本的水电气,装饰好外墙、装好窗户,后面的大量细节由客户去确定如何装修,相当于个性化的装修,即便大量装修毛坯房,由于每户的毛坯房风格不同,装修材料不同,装修成本也很难降下来。
ASIC芯片研发费高,从研发到量产周期长(通常需要2-3年),前期开模投入高,但是性能优越,量产后成本会迅速下降。而FPGA研发速度快,一次性投入少,不需要介入芯片布局布线和工艺问题,可以随时烧录新的逻辑功能,但由于无法固定模板,大量生产后,成本也降不下来。
但FPGA往往是ASIC定制的前哨站,往往FPGA确定某种烧录效果好,需要大批量生产,就会转为ASIC的模式。
业内现在比较知名的ASIC自动驾驶芯片的厂商有Mobileye(2017年被Inter收购).
Mobileye推出的视觉芯片EyeQ5,装备有4种异构的全编程加速器,分别对计算机视觉、信号处理和机器学习进行了算法优化,可以达到L4级别自动驾驶的计算需求。
而最先搭载的EyeQ5的车型有可能是宝马的纯电动IX(国内还未上市)。
百度自动驾驶计算平台
百度 在2020年12月22日,宣布Apollo的自动驾驶计算平台ACU和德州仪器(TI)合作,搭载了TI的TDA4处理器,也就是DSP计算平台。
第一,多级处理,支持深度学习和实时图像处理;第二,功耗和性能效率表现突出,仅用5到20W的功耗和性能效率便可以
执行高性能ADAS操作,无需主动冷却;
第三,有针对性的集成,带有通用软件平台的有针对性的集成SoC能够降低系统复杂性和开发成本;
第四,能够在单芯片上接入并处理4到6个三百万像素摄像头的数据,增强车辆感知能力和环视处理功能。
谷歌Waymo 的计算平台架构,2018年底还是采用的Altera的FPGA。
Altera的FPGA共有四大系列,分别是顶配的Stra ti x系列、成本与性能平衡的Arria系列、廉价的Cyclone系列、带NVM的MAX系列。
但谷歌Waymo并没有官宣最近的无人驾驶车辆所搭载的计算平台,业界评测可能混搭了FPGA/GPU/DSP。
2020年,Waymo第五代平台,搭载了29颗摄像头,还有众多的激光雷达和其他雷达,也许Waymo的计算平台真的需要探索目前算力的极限了。
参考:
自动驾驶技术系列丛书(清华大学出版社)