2.1.3 系统架构

智能驾驶车辆的物理架构大体上由环境传感器平台、计算平台和智能底盘三个部分组成。

2.1.3.1 环境传感器平台

环境传感器是智能驾驶系统的“眼睛”,其主要任务是对智能驾驶车辆周围环境,例如其他车辆位置、车道线、交通信号和行人等进行感知,并将相关数据传输给计算平台,使智能驾驶系统能有效对周边环境进行实时感知。环境传感器主要包括毫米波雷达、激光雷达和相机等,以及导航定位和惯性导航传感器等。环境传感器的具体参数和比较将在本章后文中进行详细介绍。

2.1.3.2 计算平台

计算平台的主控制芯片是无人驾驶系统的“大脑”,是信息处理中心和决策制定者。计算平台本质上是一台移动的超级计算机,为丰富的智能化应用功能提供了强大的算力支撑和软件运行环境。其组成部分包括基于车载人工智能计算芯片的车载计算平台硬件和车载操作系统,可实现多种类型、多路传感器接入,完成360°环境感知、多传感器融合、三维环境建模、定位、预测及语义地图等功能。车载AI计算芯片是计算平台的核心,下面就车载AI计算芯片展开进一步分析。

1.AI芯片发展趋势分析

当前,算力不足已成为智能汽车发展的核心瓶颈。自动驾驶等级每增加一级,算力需求就有一个数量级的上升,业界已经在讨论车载计算的POPS(每秒1000万亿次运算)时代何时到来,这相当于把“天河一号”超级计算机(2010年建成,算力当时排名全球第一)装进一台汽车。硬件是由多种不同计算构架的芯片组成的异构计算平台,其中最核心的部分是AI计算,其对算力的需求远远超过逻辑计算2个数量级以上。可以说,在智能汽车时代,AI计算芯片就是智能汽车的“数字发动机”。

感知对算力的需求是惊人的,自动驾驶车辆需要对其周边360°范围内的环境进行感知,包括对移动物体的识别、跟踪、预测,以及对驾驶环境的语义分割、建模和定位,感知的范围非常广,还要在不同的天气情况、光照条件下可靠工作,这一切对感知算法的可靠性、准确性提出了极其苛刻的要求。这就要求计算平台提供充沛的算力,来支撑感知算法的需求。

为达到可靠性、准确性的目标,感知需要多种传感器进行融合,并在每一个维度上都进行冗余备份。随着各种传感器的性能持续提升,其需要处理的数据量也会呈几何级增大,例如使用最广的车载摄像头,其像素已经从100万上升到800万,并进一步向1200万发展。激光雷达和毫米波雷达也在向图像化方向发展。对自动驾驶处理器的算力需求也水涨船高。

目前,AI芯片的算力正在迅速提升,从几个TOPS(每秒10000亿次运算)的算力向上百个TOPS的算力发展(表2-2)。芯片制程也在从16nm向7nm演进,以确保功耗在可接受的范围内(图2-2)。

表2-2 主要车载AI芯片公司的芯片算力

2.AI芯片架构发展趋势分析

目前,主流芯片架构主要分为GPU(图形处理单元)、FPGA(现场可编程门阵列)和ASIC(专用集成电路)等流派,国外AI芯片的典型产品主要有英伟达的Xavier、Orin以及Mobileye的EyeQ5H等,如图2-3和表2-3所示。国内企业,例如华为、地平线等也推出了ASIC架构的产品。

图2-2 运算速度和功耗对比

表2-3 ASIC架构的产品

随着深度学习从研究走向产业化,处理器效能正成为自动驾驶落地的关键挑战。目前,英伟达的GPU平台(如Pegasus)是自动驾驶领域最流行的计算平台,通用性极佳。但GPU作为一个通用计算构架,在应对深度学习的计算方面,表现不够高效,且有固有缺陷,包括内存带宽依然是瓶颈,缺乏足够的On-Chip RAM,并行计算模式不够灵活,对串行化算法无法优化,双精度/ ECC对深度学习意义不大。

这些问题直接导致基于GPU的解决方案计算单元利用率较低,功耗较大,成本较高,难以满足自动驾驶系统量产的要求。另一方面,CNN的卷积操作以及CNN的算法演进都要求有专用的处理器来提供高效的解决方案,如图2-4所示。

业界也在探索基于FPGA的解决方案,但FPGA成本依然偏高,且受限于内部资源及较低的运行主频,难以实现更高性能。相同工艺下,ASIC加速器的速度通常比FPGA加速器快5~10倍,而且量产后ASIC的成本远低于FPGA,因此ASIC是未来自动驾驶车载平台量产芯片的主流架构。

图2-3 不同架构芯片对比图

图2-4 不同架构的处理器在卷积神经网络CNN计算方面的效率对比

例如,CNN的卷积操作都需要大量中间结果的输入和输出,需要受操控的内部RAM来进行结果暂存,减少对外部DDR的带宽占用。GPU的缓存太少,而且透明(不受控制),专用DL构架所使用的IRAM要比GPU的密度高很多。

现在的CNN都是一张大网络,而未来CNN会更加精致、异构化,例如使用二值网络与高精度浮点网络的组合。从并发计算走向序列化计算,先进行一次预计算,然后选择更合适的模型进一步计算。

ASIC是定制的专用AI芯片,可以满足特定的应用需求。它可以在硬件级别进行优化,具有体积小、功耗低、高性能和低成本的特点。随着人工智能算法和应用技术的发展,定制的人工智能芯片ASIC逐渐展现出优势,非常适合人工智能应用场景。

正如CPU改变了大型计算机一样,ASIC芯片也将极大地改变AI硬件设备的面貌。AlphaGo使用约170个图形处理单元和1200个中央处理单元(CPU)。这些设备需要计算机室、大功率空调和多个系统维护专家。如果使用专用芯片,则仅需一个普通存储盒的空间,且功耗也会大幅降低。

例如,英伟达的Tesla V100可以为深度学习相关的模型训练和推理应用提供高达125 teraflops的张量计算,其数据处理速度是2014年推出的GPU系列的12倍。谷歌的TPU3.0使用8位低精度计算可节省晶体管,速度最高可达100 PFlops,并将硬件性能提高到按摩尔定律开发七年后的芯片水平。

由于AI算法的复杂性持续提升,且多种不同算法的融合成为发展趋势,单纯的GPU或ASIC都较难满足车载AI计算的需求,目前的车载AI芯片发展趋势是SoC化,集成异构计算IP组合来满足不同AI算法的需求,典型的异构计算组合是CPU+NPU+GPU/DSP。其中,CPU完成逻辑计算,NPU完成CNN计算的加速,GPU/DSP提供通用算力,可用于实现NPU无法实现的计算操作,例如特定的算子。

图2-5对比了特斯拉FSD芯片与英伟达Xavier芯片的架构。

图2-5 特斯拉FSD芯片与英伟达Xavier芯片的架构对比

图2-6展示了主流芯片的性能对比,反映出AI时代的一个重大趋势:AI芯片设计不再由硬件公司主导,算法定义芯片的范式转移将带来更高的计算效率,引领视觉处理器向高性能、低功耗、低成本的方向发展。

图2-6 主流车载AI芯片关键性能对比

3.AI芯片典型架构分析

随着汽车智能化的迅速发展,国内芯片供应商,例如华为、地平线和芯驰等,抓住车企智能化转型的时代机遇,发挥自己的核心优势,在芯片算力、功耗等核心指标方面迎头赶上,不断推出新的芯片产品。其中,地平线于2019年8月成功推出国内首款车规级AI芯片征程2,并在2020年6月长安汽车发布的新车型UNI-T上实现前装量产,迈出了国产车规级AI芯片产业化的第一步。

征程2能高效、灵活地实现多类AI任务处理,对多类目标进行实时检测和精准识别,可全面满足自动驾驶视觉感知、视觉建图定位和视觉ADAS等智能驾驶场景需求,以及语音识别、眼球跟踪和手势识别等智能人机交互功能需求,充分体现BPU架构强大的灵活性,全方位赋能汽车智能化。征程2芯片具备极高的算力利用率,每TOPS AI能力输出可达同等算力GPU的10倍以上。征程2还可提供高精度且低延迟的感知输出,满足典型场景对语义分割、目标检测和目标识别的类别和数量需求。该芯片总体架构如图2-7所示。

AI处理器的核心是CNN计算处理单元,地平线的CNN计算处理单元称为BPU,征程2属于该公司的伯努利架构BPU,是一种异构多指令多数据(Heterogeneous Multiple Instruction Multiple Data)计算架构,如图2-8所示。

伯努利架构下的征程2处理器,在28nm工艺下可达4 TOPS的算力和2W的典型功耗。需要指出的是,BPU是针对深度学习算法预测过程的数据流进行优化的,包括弹性张量核及异构多指令多数据架构设计。这使BPU在实际运行过程中,平均乘法器利用率(Utilization)超过90%,明显优于目前已知的各类AI处理器。

图2-7 地平线征程2芯片的架构及性能

图2-8 伯努利架构BPU架构示意图

伯努利架构BPU核心的运算器件之一是弹性张量核(Elastic Tensor Core),可根据所需处理的数据类型相应调整计算的模式,以最大化乘法器的利用效率。借助特殊设计的数据路由桥(Data Routing Bridge),BPU可以将多种运算器件(ALU)同时与多个静态存储仓库(SRAM Bank)灵活地连接在一起,辅以编译器(Compiler)和运行时(Runtime)策略的优化,做到DDR数据的读取或写入和运算,以及不同类型运算之间的同时运行。BPU需要设计一套指令集来支持各种深度学习算法。指令集是软硬件之间的接口,AI算法经编译器翻译成可执行的指令,供AI处理器执行。

伯努利架构BPU的指令集支持AI运算中不同运算单元,包括卷积(Convolution)、池化(Pooling)、上采样(Upscale)和Load/Store等,这些运算单元可异步并行执行,以提高运算效率,减少计算时间和延时,并通过同步指令(Sync)解决数据依赖和计算资源(包括运算单元和存储器)依赖的问题。这套指令集不仅支持主流深度学习网络,还支持最新的神经网络结构,例如Resnet、MobileNet和Faster-RCNN,支持稀疏化网络结构、可变位宽数据和权重计算以及数据压缩存储等功能。该指令集的定义使AI处理器各运算单元之间并行度进一步提高,从而进一步提高了运算效率,并可高效地实现更加复杂和灵活的AI运算。

面向自动驾驶落地应用的实际需求,地平线将在算法领域的前沿探索转化为赋能产业的落地实践,深度融合具有创新性和前瞻性的高效感知算法和极致效能的车规级AI芯片,打造高效的智能驾驶感知解决方案,赋能客户,加速智能驾驶的应用落地。

地平线在CES 2020推出新一代自动驾驶计算平台——Matrix 2,如图2-9所示。该平台面向多层次、多场景的未来自动驾驶,搭载地平线征程二代车规级芯片,具备极致性能与高可靠性,可满足L2~L4级自动驾驶需求,为自动驾驶客户提供感知层的深度赋能。

图2-9 地平线自动驾驶计算平台Matrix 2

主要参数:

· 基于地平线征程二代处理器架构

· 支持8大类像素级语义分割,支持多类物体检测识别

· 视频输入:单路1080P@60fps,4路1080P@15fps

· 等效算力:40 TOPS

· 低延时,系统级别每帧60ms延时

· 无需主动散热,功耗20W

迭代后的Matrix 2具备更高性能、更低功耗,可满足不同场景下高级别自动驾驶运营车队以及无人低速小车的感知计算需求。Matrix 2在性能方面有16TOPS的等效算力,而功耗仅为上一代的2/3。

在感知层面,Matrix 2可支持包括摄像头、激光雷达在内的多传感器感知和融合,实现高达23类语义分割以及6大类目标检测。值得一提的是,地平线在Matrix 2上实现的感知算法还能应对复杂环境,支持在特殊场景或极端天气情况下输出稳定的感知结果。

2.1.3.3 智能底盘

智能底盘平台主要包括智能汽车的执行器平台和车载总线。执行器主要指执行计算平台发出的控制指令的机械结构,由于现在的无人驾驶汽车大多由成熟的汽车平台改造而来,执行器的主要控制对象是加速踏板(速度控制)、制动踏板(制动控制)和转向盘(转向控制)。

1.转向线控技术

线控转向系统取消了转向盘与转向器之间的机械联接,直接通过电信号控制转向电机驱动车轮转向,主要由转向盘总成、转向执行器和主控制器组成,如图2-10所示。

图2-10 线控转向系统简图

转向盘总成由转向盘、转角传感器、转矩传感器和路感电机组成。转向盘转动时带动转角传感器的大齿轮转动,大齿轮带动装有磁体的两个小齿轮转动,产生变化的磁场,通过敏感电路检测磁场变化产生的转角信号,通过CAN总线将数据发送出去。转矩传感器的检测原理与之类似。路感电机用于将主控制器传来的回正信号转化为回正力矩,向驾驶人传递路感。转向执行器负责快速响应主控制器传来的转角信号,完成车辆的转向。主控制器的作用是采集各传感器发来的信息和数据,计算出合理的决策数据后发给各执行器。

2.速度线控技术

线控加速踏板的工作原理是当驾驶人踩下加速踏板时,其操作意图被加速踏板位置传感器感知,转化为相应的电信号,输送给电子控制单元。电子控制单元得到信号后,结合当前发动机的状态,控制节气门的开度和位置,然后节气门位置传感器又把当前的节气门开度信息反馈给电子控制单元,进行闭环控制,这样就使发动机可以工作在最优状态。线控加速踏板系统除控制精度高、结构简单外,还可根据汽车的工况以及发动机的工作状态,结合加速踏板的位置,实时调节节气门的位置,减少不必要的喷油,提高发动机的工作效率。

3.制动线控技术

线控制动将原有的制动踏板用一个模拟发生器替代,用以接收驾驶人的制动意图,产生、传递制动信号给控制和执行机构,并根据一定的算法模拟反馈给驾驶人(图2-11)。显而易见,这需要非常安全可靠的结构,以正常工作。

图2-11 线控制动原理

电子液压制动系统(Electro Hydraulic Braking, EHB)是在传统液压制动系统基础上发展而来的,两者的最大的区别在于:EHB用电子元件替代传统液压制动系统中的部分机械元件,即用综合制动模块取代助力器、压力调节器和ABS模块。典型EHB由踏板位移传感器、电子控制单元(Electronic Control Unit,ECU)、执行器机构等组成。正常工作时,制动踏板与制动器之间的液压连接断开,备用阀处于关闭状态。电子踏板配有踏板感觉模拟器和电子传感器,ECU可通过传感器信号判断驾驶人的制动意图,并通过电机驱动液压泵进行制动。电子系统发生故障时,备用阀打开,EHB变为传统液压系统。EHB具有冗余系统,安全性更具优势,且产品成熟度高,目前各大供应商都在推广相关产品。

4.车载CAN总线

CAN总线又称汽车总线,全称为“控制器局域网”(Controller Area Network),意为区域网络控制器,它将各单一控制单元以某种形式(多为星形)连接起来,形成一个完整系统。在该系统中,各控制单元都以相同的规则进行数据传输、交换和共享,这称为数据传输协议。CAN总线最早是德国博世公司为解决现代汽车中众多ECU之间的数据交换问题而开发的一种串行通信协议。CAN作为一种多主总线,支持分布式实时控制的通信网络,采用了许多新技术及独特设计,具有可靠性、实时性和灵活性。其特点如下:

1)CAN为多主方式工作,网络上任一节点均可在任意时刻主动向网络上其他节点发送信息,不分主从,通信方式灵活。

2)CAN网络上的节点信息分成不同优先级,可满足不同实时要求,高优先级的数据可在134μs内得到传输。

3)CAN只需通过帧滤波即可实现通过点对点、一点对多点及全局广播等方式传送/接收数据,无须专门“调度”。

4)CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵活。

5)CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响。