卡车之家 来卡车之家App
及时获取
最新卡车资讯
你好, 网站地图
卡车之家,商用车互动服务平台 全国
选择地区
全国 北京 河北 江苏 浙江 山东 河南 广东 上海 四川 重庆 山西
扫码下载APP

微信扫一扫下载详情

关注微信

微信扫一扫关注详情

轻卡 重卡 微车 牵引车 载货车 自卸车 皮卡 挂车 专用车 总成/配件 电动车
卡车之家
您的当前位置:首页 > 卡车新闻 > 业界动态

研发自动驾驶,离不开安全的软硬件架构

卡车之家
簡簡單單

做一个帅气的卡友很累,这点我真的深有体会。

自动驾驶的软硬件架构,该如何兼顾功能安全和可扩展性?

7月13日,在由车云、武汉经开投资有限公司、武汉现代制造业创业服务中心联合主办的“智商业·驭未来”第三届中国智能汽车创新发展论坛上,NXP ADAS和自动驾驶技术市场经理武钰发表了名为《符合功能安全的自动驾驶软硬件架构》的演讲。

智能汽车的车身电子架构正在发生变化。传统汽车采用了分布式架构,每个电子单元各自承担计算任务,需要集中处理的数据很少。这种架构可扩展性较强,如果想增加一个新的传感器也非常方便。

但是传统的分布式架构已经无法满足自动驾驶汽车的计算需求。随着自动驾驶需要的传感器越来越多,传感器之间的信息需要更加深度的融合计算,这是就要有一个强大的计算机来完成所有的数据运算。

因此,很多自动驾驶原型车采用了中央式架构——终端电子单元不对数据做修改处理,而是由中央处理器承担所有的计算任务。但是这种架构的缺点在于,假如新功能开发需要增加新传感器,中央处理器的软件就要重新刷写,因此可扩展性非常差。

NXP推荐的是一种混合性拓扑结构的车身电子电气架构,通过在中央处理器和终端电子单元之间设置一个域控制器的方式,把从传感器拿过来的数据放到域控制器里先行处理,再把处理后的有效信息传给中央处理器。这样一方面可以减少数据的传输压力,另一方面也平衡了整个计算平台的计算量。

这种混合性拓扑结构与中央式结构相比,更加便于扩展。例如主机厂已经完成了自动泊车功能,想在此基础上扩展为车辆自己寻找车位的代客泊车。工程师可以不必更改中央处理器的软件,只需要连接上新的传感器,更新域控制器上面的软件就可以实现。

通过增加中间节点的方式,混合性拓扑结构不仅可以根据功能要求灵活的改善硬件结构,而且可以容易地进行软件升级。同时在系统架构上,NXP将硬件配合软件分割成不同的域,来灵活配置不同的安全等级,从而使不同等级的自动驾驶系统整体满足功能安全的要求。

研发自动驾驶,离不开安全的软硬件架构NXP ADAS和自动驾驶技术市场经理 武钰NXP ADAS和自动驾驶技术市场经理
武钰

以下为演讲速记,车云菌在保持原意的基础上做了删减:

大家下午好,我叫武钰,来自NXP技术市场部,主要负责ADAS和自动驾驶。说到自动驾驶安全性是第一位的,现在很多信息向我们铺面而来,但是我们反思一下真正开始做自动驾驶的初衷是什么?是为了安全,保证道路参与者的生命安全。作为车载芯片供应商,NXP一直把功能安全放在第一位。同时我们看到了ADAS自动驾驶软件发展方向,开始做一些硬件上的考量。我们现在要根据自动驾驶的软件结构,来重塑我们的硬件方案。

研发自动驾驶,离不开安全的软硬件架构

这张图在座各位都不会太陌生,是SAE自动驾驶6类分级中的后5类。从L1开始,我们的车辆变得智能化,会从纵向的车身控制中选一样来帮助驾驶员。NXP会重视从L2-L5的自动驾驶,因为L1到L2有个重大的变革,我们汽车可以同时做横纵向的控制,把车身的控制权已经从驾驶员分出一部分给汽车本身。一旦涉及到车身控制,我们功能安全考量一下子就要升级了。

从L2开始,我们提供自动泊车,这种自动泊车是指车已经开到停车位,让车通过操控方向盘和油门、刹车来停车,感知方面仍然由驾驶员来做,车辆只是起到横纵向控制。还有自动刹车时同时包括方向盘转动有规避障碍物的行为。从L2-L3,感知模块也会移到汽车上。对泊车来说,车开到一个位置后要自己去寻找可供停车的位置,然后自己操作方向盘来停在这个位置。至于L4和L5,车身开始有自己的大脑,自己会做行为决策,也会做复杂性场景,自己有思维去寻找解决方案。比如说碰到很复杂的交通情况,会用大脑想出解决方案。

研发自动驾驶,离不开安全的软硬件架构

对应不同的驾驶等级,传感器选择和数量都会有所不同。随着自动驾驶等级的升级,传感器的数量会越来越多。这样会带来一个问题,传感器是不是越多越好呢?答案是不一定。因为传感器越多,数据量会越大,对于海量数据,车身具体怎么从海量数据进行分析提取有效信息,并且根据这些有效信息形成符合安全驾驶原则的行为,这点也是我们需要考虑的。

研发自动驾驶,离不开安全的软硬件架构

比如激光雷达给到的是点云数据,一秒可以达到几个G的数量级。大家想一下,如果一秒是几个G,整个车一天可以达到多大的数据。还有摄像头是几十到几百兆每秒数据,这些海量数据放在面前,车上的芯片怎么办,这样就会带来新的问题。

NXP在分析车上的拓扑结构的时候,结合了行业的发展趋势。

传统分散式结构中,每个传感器的数据都在终端处理,好处在于对车上通信带宽要求不高,真正有效的目标数据才放到车上处理。但是问题在于每个传感器需要同步,无论激光雷达或者毫米波雷达或者摄像头,一旦涉及到同步性,分散式的拓扑结构就没有办法做得很好。

现在自动驾驶的原型车更多是采用右边中心式的结构,它的数据全部是从传感器部分传到中央处理器,中央处理器面对高频海量的数据来进行计算,现在中央处理器一般选用的是IPC或者GPU。但劣势很明显,第一是中央处理器运算量特别大,而且带宽要求很高,第二功耗也是汽车行业需要考量的。

NXP提出来的方案是中间的混合性拓扑结构,我们会在一部分的节点上设置一个域控制器,这个域控制器会把从传感器拿过来的数据作为先行处理,再把有效信息传给中央处理器。一方面平衡了数据传输的要求,另一方面平衡了整个计算平台,在终端处理器和中央处理器中间加了预处理器,这样可以实现更好更平衡。

研发自动驾驶,离不开安全的软硬件架构

我们现在要反过来想自动驾驶软件模块,软件层面是怎么搭建的。我列了行业比较标准的结构,从传感器部分拿到原始数据(Raw Data),到感知模块做特征提取和信息提取,再加上车身周围信息建模,再根据高精地图定位,加上高精度地图和GPS信息做自定位,然后生成本地路径。从本地的路径中,我们通过车辆的分析和决策模块,真正达到车辆控制。

作为NXP,我们想的是既然软件可以分成不同模块,那么硬件也应该可以配合软件的要求进行区别对待。

研发自动驾驶,离不开安全的软硬件架构

上图是我们硬件的考量,从头开始看的话,从感知到建模的部分,对计算的算力要求特别高,因为要做矩阵运算,而且涉及到计算机视觉。在一个车上传感器不会只有一种,所以激光雷达、毫米波雷达和摄像头其实是互为补充的形态,在这方面我们认为安全等级可以稍微牺牲一点,更多是满足算力要求。

研发自动驾驶,离不开安全的软硬件架构

而后面因为涉及到车身控制,我们认为安全等级的要求就完全不能降低,一定要达到ASIL-D的水平。从上面这张图上可以看到,对于前区的感知模块,更多是从人工智能到数据流,以及软件安全的发展方向。在后面的行为决策部分,我们更多想的是软件层面优化,再到底盘的控制,以及硬件安全考量。这两方面,我们要根据软件应用特性来做不同的发展方向规划。

回到芯片上面的框架,我们认为一般来说如果车载芯片很重要的是要做冗余设计,如果出现失效或者错误的时候切换到安全模式,能够有最安全的退出。

针对自动驾驶系统,感知和行为决策部分是分开的话,NXP把感知放在S32V或S32R上面,这边更多是传感器处理器芯片,安全等级会稍微低一点。但是等到涉及到车身控制,会放在S32A,这个是专门的中央计算处理芯片,我们会加上冗余设计和备份。

研发自动驾驶,离不开安全的软硬件架构

正常运行的时候,这ECU Primary和ECU Backup都是同时接收各种信号。一旦出现失效或者错误,车身控制连接会完全放弃从Primary拿数据,直接从Backup的芯片拿数据运算,保证了安全退出的模式。

S32是NXP研发的汽车计算平台,也是全球首个可扩展的计算机平台,简而言之做到了四个字——求同存异。这套系统计算平台会有各种各样的芯片,根据车身不同应用会有对应的不同芯片,但整个内核设计部分是一样的,保证我们的软件开发是同一个平台,但是根据芯片具体在车身哪个位置起作用,我们会加上不同的硬件加速器。比如对于S32V专门对视觉做的,我们会加上视觉的硬件处理器,S32R是针对毫米波雷达的,我们会根据毫米波雷达应用做不同的改变。S32A的特色是算力和安全性非常高,所以作为中央处理器的运算。

我们采用这个设计,一方面在感知和规划方面的错误都可以跟踪到,但同时降低了系统功耗和成本,整个系统可以降低100美元。其他芯片和S32相比,如果想做功能安全冗余设计,需要把整个芯片做备份。NXP在车载芯片设计方面有很多年的经验,而且有自己专属的自动驾驶考量,所以基于这个原则我们设计出来的芯片,一方面平衡了高性能低功耗,同时达到了安全等级ASIL-D的水平。

研发自动驾驶,离不开安全的软硬件架构

上图是我们给出的低于L2自动驾驶模块的整车模型,跟现在市面上大多数ADAS系统比较相似。在传感器部分,我们采用终端处理器,比如现在的S32R或者S32V,直接在本地做传感器数据处理,处理后通过CAN传给网关,然后网关会发信号到底盘不同区域做控制。

研发自动驾驶,离不开安全的软硬件架构

如果升级到L3和L4,就像我刚才说的,我们需要一个域控制器的概念,除了在传感器的终端加上S32R、S32V这种终端处理器,还会有S32A专门做行为决策。

研发自动驾驶,离不开安全的软硬件架构

但除了这个,如果你想整个系统达到ASIL-D水平,最后希望的是S32A做冗余设计,对自动驾驶系统起到功能安全的考量。大家想一下,把芯片放在自动驾驶系统里面,本身这个系统很复杂,而且车在自动驾驶模式的话,周围环境也是多元化的,各个方面都会对芯片的功能安全要求变高。我们非常注重这方面,但是也会给客户提供功耗低和低成本的方案。

除了S32A做冗余设计,我们还有一个关注点,即便你拿到了车身控制信息,但是传到底盘的EPS的时候,是通过网关传输的。如果网关不能保证安全的话,对系统来说风险是很大的。所以我们也会在Gateway做冗余设计,出了任何问题也会有预备方案,起码可以保证车身控制是在我们可接受范围内。

研发自动驾驶,离不开安全的软硬件架构

这是NXP提供整套安全系统解决方案,绿色模块是硬件功能安全特征,除了MCU硬件方面会加入很多新硬件的功能安全特性。同时,我们还有SVC,这本来是做时钟的东西,但是我们也加入了功能安全的模块。

除了硬件方面,大家可以往上看蓝色的部分,这是NXP给客户提供软件层面的解决方案。如果你的软件设计需要用到自检或者安全退出或者复原的特性,我们会有现成的方案供客户使用。

研发自动驾驶,离不开安全的软硬件架构

目前,NXP在ADAS和自动驾驶方面,在上海和重庆有一百多人工程师团队,专门负责软件层面给客户的支持。所以可以看出来,我们芯片业务技术支持在中国本地投入量最大,有任何困难或者软件上需要什么帮助,我们都可以提供。

NXP的硬件系统可以支持多个操作系统,可以根据软件应用的方向,可以自己选择想跑实时的操作系统还是跑Linux系统,Linux系统可能会更加适合计算量比较大的软件硬件,实时操作系统比较适合功能安全的软件应用,可以跑QNX和Autosar,所有传统汽车行业需要的一连串的软件设计,NXP已经有非常成熟的方案了。这两个操作系统跟硬件中间有一个Hypervisor,就是抽象层面,会根据运行系统的设置做调度,然后在硬件上面达到一致。NXP提供功能安全方案,我们是从硬件上面做升级,同时在软件的支持上也做了很多的东西,我们可以根据客户的需求来灵活调用软件和硬件。

S32推出以后,欧洲比较大的整车厂都会偏向S32计算平台,因为非常节省软件开发成本。根据一些调查,整车上面采用统一S32计算平台,软件工作量可以减少80%,跨应用软件研发也会减少40%以上。国内的话,NXP跟百度合作,百度已经把NXP的芯片用到了他们的车上。还有欧洲的大巴公司,他们的L3自动驾驶系统可以放到我们的板上做测试。

注:本文内容转载自其它媒体,转载请尊重版权保留出处,一切法律责任自负。卡车之家登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。您若对该稿件内容有任何疑问或质疑,请即与卡车之家联系,本网将迅速给您回应并做处理。

文章标签:
条网友评论
我要评论 意见反馈