下一代自动驾驶系统在设计上的迭代更新呈现出巨大的变化,主要体现在功能上不断迭代更多的新功能,如由于最初的L2.5或准L3自动驾驶只能在高速公路或快速道路上实现免提驾驶(这里一般指高速公路自动驾驶HWP或堵车自动驾驶TJP功能),逐渐向更广泛的领域转变免提驾驶范围(这里我们称之为点对点自动驾驶NGP或基于导航的点对点自动驾驶NOP),后者可以更适用于通过匝道的自动驾驶过程。此外,下一代自动驾驶在性能上也有了质的飞跃。例如,L2.5或准L3无法实现的离眼驾驶,将在下一代自动驾驶系统中得到完美解决。它将实现紧急转向和自动避撞、恶劣天气下的长时间自动驾驶、紧急情况下的紧急自动制动等功能。为实现上述功能,除了在自动驾驶传感器中增加更多的盲区覆盖感知单元(如增加多个侧视摄像头、后视摄像头、前向或侧向激光雷达等)外,还需要在控制器端添加更多传感器。增加满足性能要求的域控制器单元,用于处理上述传感器增量增加带来的海量数据。上述数据处理过程包括几个主要方面。总的来说,下一代自动驾驶域控制器的设计主要围绕以下基本要求进行。感知数据输入及处理策略1.摄像头视频/图像数据输入及处理策略“车载摄像头”硬件要求一般MIPI摄像头常用于对视频分辨率输入要求较高的场景,可支持5分辨率高清百万像素以上,对于下一代的自动驾驶,往往要求摄像头的分辨率至少在200w以上,这对于MIPI接口来说是完全够用的。它的全称是“MobileIndustryProcessorInterface”,分为MIPIDSI和MIPICSI,分别对应视频显示和视频输入标准。“车载摄像头”接口协议要求一般采用FPDLink或GMSL两种形式。其中,FPDLink是建立在LVDS基础上的通信标准,也是LVDS规范的首次应用。FPDLink包括SERIALIZER和DESERIALIZER终端。由于FPDLink更适用于高速数字视频接口,因此在下一代自动驾驶领域控制芯片的外围接口中得到更广泛的应用。GMSL是Maxim推出的一种高速串行接口,适用于视频、音频和控制信号的传输,使用50Ω同轴电缆或100Ω屏蔽双绞线(STP)电缆时距离可达15m或更长。FPDLink和GMSL在视频传输上其实没有明显区别。关键是看定点相机供应商是否支持这个接口协议。此外,面向下一代自动驾驶系统的图像处理技术,还需要在以下相应方面进行重大改进。①差异化应用:即图像处理将面临不同的应用场景,如目标物体的实际检测、可行驶区域检测、场景语义分割、驾驶员监控、视觉SLAM等。②高计算能力和高计算性能:在过程中在图像处理方面,系统需要有足够的计算能力来运行数万亿次的深度学习算法数据,同时需要保证原酸的效率能够得到优化。③神经网络加速能力:网络加速包括相关处理单元(如CPU、GPU、TPU、FPGA、DSP等)的最大性能、灵活性、功耗和嵌入式成本的实际处理能力。这里需要重点关注网络阵列优化处理能力。这个过程主要是通过将变换张量划分为3-D切片来实现的。对于具有数百甚至数十亿参数的深度网络,传统的CPU对如此庞大的网络束手无策,只有具有高计算能力的GPU才能允许相对快速地训练网络。在自动驾驶感知数据处理过程中,降低具有更多层和节点的更大神经网络的存储和计算成本变得至关重要。模型在域控制器上的高效运行也是模型压缩加速的重要目标。网络模型压缩和加速的最终实现需要多学科联合解决。除了压缩算法之外,数据结构、计算机体系结构和硬件设计也起着重要作用。除了上述视频数据信息处理策略外,在输入输出视频接口时还需要考虑自动驾驶视频图像的串/并数据转换端。在一般场景下,自动驾驶系统的设计者会使用串行器/解决方案串行设备的高速串行接口(SERDES)技术取代传统的并行总线架构。串/并数据转换接口一般使用SERIalizer/DESerializer对其输入(信号)进行串并(反序列化)转换。基于SERDES的设计增加了带宽并减少了信号数量,同时带来了许多好处,例如减少布线冲突、降低开关噪声、降低功耗和封装成本。SERDES技术的主要缺点是需要非常精确、超低抖动的组件来提供控制高数据速率串行信号所需的参考时钟。即使严格控制组件布局,使用较短的信号长度并遵循信号走线约束,这些接口中的抖动余量仍然非常小。2.雷达数据输入及处理策略在自动驾驶域控制器的设计过程中,雷达数据的连接端口通常采用CANFD或以太网方式连接。对于毫米波雷达,即便是下一代自动驾驶系统的集中控制方案,仍然是根据检测结果对数据进行处理,所以仍然采用CANFD来访问数据。对于激光雷达,它直接处理原始点云数据,通常使用以太网进行数据访问。这里需要注意几个重要的设计策略。一是CAN唤醒次数需要根据实际功能需求来确定。二是CAN接口分配要求需要充分考虑MCU的计算能力承载能力,是否能保证包含传感器数据融合算法,这部分算法融合的数据量相对于传统车控MCU的计算能力。MCU无法承受算力需求。因此,在很多情况下,传感器数据融合算法通常放在SOC的中间。对于激光雷达,以太网传输方式需要充分考虑原始数据源的数据量。目前主流的100M激光雷达可以承载的数据量相对较小,而高线激光雷达则需要千兆以太网进行数据输入。以太网接口通常采用Broad-R-Reach达到整车规格等级,也可预留RJ45接口作为量产开发中的调试接口。此外,多通道毫米波雷达通常用于自动驾驶,以干预相关感知数据。一般至少使用五组毫米波雷达进行感应输入,正常情况下至少需要五个CANFD连接端子。在一般的SOC芯片设计中,不会设置这么多的CAN通道,一般情况下设置4个通道的CANFD是比较常见的。因此,在量产毫米波雷达时,可以通过CANID号来区分雷达的不同位置。因此,只要带宽足够,多台雷达可以同时连接到一条CAN总线上,可以节省大量的CAN接口。3.高精度定位输入及处理策略对于高精度定位输入接口的设计,下一代自动驾驶系统的输入接口通常遵循当前状态,使用以太网进行输入,而原始地图众包或点云数据通常数据量较大,需要以太网至少升级到1000M/s以太网,才能保证数据量的无缝实时传输。同时,高精度定位源会实时连接到外围感知定位数据终端,包括IMU、RTK甚至轮速信息,因此在设计过程中需要预留更多的以太网接口。在高精度定位处理策略中,将原来的分布式数据处理方式改为集中式数据处理方式。即原有地图定位终端仅提供地图众包数据,上层ADS域控制器处理的信息需要融合IMU、轮速、RTK等更多数据信息。这使得整个定位融合算法占用了MCU芯片更多的算力。一般这种数据融合会放在SOC中,在确认定位信息没有遗漏的同时,可以大大减轻MCU的计算能力负担。.车载SOC芯片数据存储首先,??我们需要说明一下SOC的数据存储和交换。以上问题涉及到AI芯片的外设接口或外存可以执行什么样的任务。外设存储器一般应具有以下功能项,计算数据暂存单元、算法程序暂存单元和大容量暂存单元。一般主流的SOC存储和交换单元主要有LDDR、Flash和eMMC;内存是SOC中数据与CPU之间的桥梁,SOC中的所有程序都在内存中运行,因此内存的性能非常重要。计算机产生了巨大的影响。LPDDR作为低功耗规范的通信标准,以低功耗、小体积着称,可专门用于移动车载芯片控制终端。用于车载移动平台的LPDDR4可以带来同等的性能(速度),同时兼顾更少的能耗。因此,从成熟度和应用范围来看,LPDDR4是目前主流SOC芯片的主要内存平台,但LPDDR5的崛起将逐步全面取代LPDDR4。除了LDDR这种存储器形式外,为了允许在运行过程中多次擦除或写入相关数据,以及SOC与其他数据输入输出端交换临时传输数据,还可以加入一定容量的闪存。NANDFlash的擦除时间更快,每个存储单元的面积也更小,这使得NANDFlash比NORFlash具有更高的存储密度和更低的成本,其可擦写次数也更高。比NORFlash高十倍。因此,NANDFlash闪存一般用在SOC芯片的外围。此外,SOC芯片通常会设计外围接口存储器eMMC(嵌入式多媒体卡),将NANDFlash芯片(闪存阵列)和DeviceController芯片封装成一体。Flash控制器负责管理内存,提供标准接口,使eMMC可以自动调整master和slave的工作模式,不受位数的限制,也不需要处理其他复杂的NANDFlash兼容性和管理问题。从而大大降低了多芯片的空间占用和布线难度等问题。对于自动驾驶芯片来说,使用eMMC存储处理程序是一种很常见的方式。多芯片数据交互对于下一代自动驾驶系统架构设计,往往不是一两个SOC芯片就能解决数据交互问题。通常情况下,2-4个SOC用于AI数据处理。对于双芯片的设计,可以直接通过连接中介进行信息交换,当设计超过2个芯片时,通过这些芯片发送的数据信息至少要有几十个信息交互通道。因此,需要在数据交换单元Switch中加入多芯片交互信息进行数据交互。一般大数据传输使用PCIe进行数据传输,一般数据传输使用以太网和GPIO。因此,对于数据交换单元Switch来说,数据传输单元主要包括以太网Switch和PCIeSwitch,作为数据交换和数据管理的中介。以太网交换机的工作基础是以太网包结构。以太网信息包格式固定,但长度可变,信息包头中有目的MAC地址、源MAC地址、信息长度等几项内容。以太网交换机根据以太网报文中的源MAC地址更新“MAC地址-端口号表”。每台电脑开机后,其上的网卡会周期性地发送空闲数据包或信号,以太网交换机就可以知道它的存在和MAC地址。如果在一定时间内,已有MAC地址没有发送数据包,则该MAC地址将从“MAC-端口号表”中清除,当该MAC地址再次出现时,将被视为新地址。SOC的外围存储控制器之间需要进行各种数据交换和同步,一般采用PCI-E,这会增加其连接通道数的消耗。对于一般的车载域控制器,一般采用多路存储配置。去除一些用于管理和内部嵌入式PCI-E设备的通道后,所需的PCIe通道数量也相当可观。两个独立的控制芯片连接在同一个Switch上,进行有效的信息交换。并且可以覆盖几乎所有的应用场景。当然,还需要对PCI-ESwitchforPartition内部对应的数据包进行地址映射和翻译,以保证数据交互的有效性。以上两种数据连接交换机的作用主要有三个方面。一是确保自动驾驶系统架构有效实现双冗余控制。另外就是通过Switch的以上两行更好的实现时钟同步。线路可以保证数据传输的带宽足以支撑整个自动驾驶数据的传输。综上所述,自动驾驶高端域控制器的设计过程需要涉及到很多方面,包括芯片、外设存储器、MCU整车逻辑控制、数据传输控制中介等方面。软件部分更多的是如何在每个芯片内部放置不同的软件算法模块,以满足预期的功能设置,提高软件性能要求(这部分主要是指软件功能安全要求)。这两方面的设计都需要系统工程师、软件工程师、硬件工程师相互配合,才能保证在设计之初就尽可能满足后期的开发需求。
