一种分布式多核异构系统的制作方法

文档序号:18177780发布日期:2019-07-13 10:25阅读:322来源:国知局
一种分布式多核异构系统的制作方法

本发明涉及有关车辆自动驾驶技术,具体地涉及用于车辆自动驾驶的分布式多核异构系统。



背景技术:

根据美国交通部下属的nhsta(国家高速路安全管理局)和saeinternational(国际汽车工程师协会)对自动驾驶级别的定义,l4是指在车辆的odd(operationaldesigndomain,即设计适用范围)下,能实现全自动驾驶,l5,是指车辆必须可以应对所有工况,包括在激烈驾驶(即极限情况)下,也能够实现全自动驾驶。

l4-l5的自动驾驶对感知融合规划系统提出了更高的要求,特别是对感知融合,要求感知融合系统具有更强的处理能力,更好的安全性能,能支持更多传感器的接入。而目前如果使用单核的集中式方案,往往无法满足性能,功能,安全,车规等多方面的要求,比如用工控机平台会比较便于开发,但是无法满足量产要求,用mobileeye等基于视觉的asic在视觉感知上性能较好,但无法支持其他传感器,nvidia的px2平台性能上较好,但在整体功耗和可扩展性上一般。

公开于本发明背景部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。



技术实现要素:

鉴于上述问题,本发明旨在提供一种能够满足l4级自动驾驶感知融合精度的分布式多核异构系统。

本发明的一方面的分布式多核异构系统,其特征在于,

所述分布式多核异构系统由不同种类的多个平台构成,其中,所述多个平台之间通过通信网络连接,

在所述多个平台上分别部署实现不同功能的车辆处理模块。

可选地,所述多个平台的每一个包括一个处理器,或者包括多个相同或不相同的处理器。

可选地,该分布式多核异构系统包括:

第一平台,由一个或多个fpga构成;

第二平台,由一个或多个gpu构成;以及

第三平台,由一个或多个mcu构成。

可选地,所述第一平台接收摄像头数据并且用于实现深度学习视觉处理算法,

所述第二平台接收雷达信号并且用于实现目标融合处理,

所述第三平台接收车辆控制信号以及用于实现车辆控制。

可选地,所述第一平台包括:

多个由fpga构成的视觉处理器。

可选地,所述第二平台包括:

第一gpu,作为激光雷达感知定位主处理器,用于实现激光雷达感知和定位;

第二gpu,作为融合主处理器,用于处理多个车辆传感器的感知结果的融合;

第三gpu,作为定位主处理器,用于接入地图信息并处理车辆位置和目标位置信息;

第四gpu,作为决策规划和轨迹跟踪处理器,计算车辆运行轨迹,并转化成对车辆的控制指令。

可选地,采用一个mcu或者gpu作为安全冗余处理器。

可选地,采用一个mcu或者gpu作为决策规划和轨迹跟踪处理器,用于计算车辆运行轨迹并生成车辆的控制命令。

可选地,在所述mcu和所述gpu上搭建ros系统并且在所述mcu和所述gpu中以ros消息方式传递消息。

可选地,所述第二平台也能够接收摄像头数据并且也用于实现深度学习视觉处理算法。

可选地,所述多个gpu部署在第一板级处理器上,所述fpga和所述mcu部署在第二板级处理器上,

所述第一板级处理器和所述第二板级处理器之间通过通信网络实现通信。

根据本发明的分布式多核异构系统能够解决单核平台无法满足l4及以上自动驾驶感知融合处理能力需求的问题,而且能够解决集中式系统冗余安全程度不足的问题,也可以解决集中式系统可扩展性不足的问题,也能够解决上层应用开发与分布式异构系统的隔离和解耦的问题。

通过纳入本文的附图以及随后与附图一起用于说明本发明的某些原理的具体实施方式,本发明的方法和装置所具有的其它特征和优点将更为具体地变得清楚或得以阐明。

附图说明

图1是表示本发明一实施方式的分布式多核异构系统的构造框图。

具体实施方式

下面介绍的是本发明的多个实施例中的一些,旨在提供对本发明的基本了解。并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。

图1是表示本发明一实施方式的分布式多核异构系统的构造框图。

在图1中表示了将本发明的分布式多核异构系统应用于车辆自动驾驶感知融合规划系统的一个实施方式。

如图1所示,本发明一实施方式的分布式多核异构系统包括:

由第一fpga11和第二fpga12构成的第一平台;

由第一gpu21、第二gpu22、第三gpu23以及第四gpu24构成的第二平台;以及

由一个mcu13构成的第三平台。

其中,fpga是指field-programmablegatearray,即现场可编程门阵列,它是在pal、gal、cpld(不用读系列)等可编程器件的基础上进一步发展的产物。可以将fpga理解为大量的逻辑门阵列,用户可以自由组合以实现不同的电路功能,即fpga的可编程特性。作为一个示例,fpga可选用xlinxzynq芯片或者altera公司的a10芯片。

gpu是指graphicsprocessingunit,缩写:gpu),图形处理器,又称显示核心、视觉处理器等,是一种进行图像运算工作的微处理器。

在本发明中,优选地,第一gpu21、第二gpu22、第三gpu23以及第四gpu24各自分别带有mcu。作为一个示例,例如gpu可以采用nvidia的tegrax2芯片。

mcu是指微控制单元(microcontrollerunit;mcu),又称单片微型计算机(singlechipmicrocomputer)或者单片机,是把中央处理器(centralprocessunit;cpu)的频率与规格做适当缩减,并将内存、计数器、usb、a/d转换、uart、plc、dma等周边接口,甚至lcd驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。作为一个示例,mcu可选用nxp公司的s32v芯片或者瑞萨公司的r-carh3芯片。

在本发明的分布式多核异构系统中,这里的“异构”主要指硬件和驱动层的异构,硬件指fpga,gpu和mcu,运行系统一般在fpga上直接用fpga厂商提供的开发工具进行rtl级的代码生成与开发,在gpu上一般会搭建linux操作系统,在操作系统上用gpu专用加速库进行算法开发,在mcu中可以搭建较底层的us-os系统开发,如果处理能力支持,也可以搭建linux操作系统。采用分布式多核异构的好处在于:可以发挥不同硬件平台的优势,部署不同功能;可扩展性良好;安全性好,设计有冗余。

另外,虽然在本实施方式中示例了采用两个fpga、四个gpu以及一个mcu的情形,但是本发明并不限定于此,fpga、gpu以及mcu的个数可以根据实际情况进行设置。

作为一个示例,如图1所示,第一平台和第三平台可以布置在视觉处理板a上,由第一gpu21、第二gpu22、第三gpu23以及第四gpu24构成的第二平台作为感知融合定位处理器b与视觉处理板a分离布置。其中,在视觉处理板a和在融合定位处理器b相互之间通过通信线路40进行通信,这里作为通信线路40可以例举can、以太网以及和pcie等。

另一方面,第一gpu21、第二gpu22、第三gpu23以及第四gpu24相互之间也可以通过例如以太网实现通信。

优选地,各处理器之间以pci-e总线传输大容量数据,以车载以太网或者can传输命令或者目标识别结果、定位结果等小容量数据。

接着,对于第一平台、第二平台以及第三平台分别进行具体说明。

如图1所示,对于由第一fpga11和第二fpga12构成的第一平台,其接收来自摄像头的数据,这里,以第一fpga11和第二fpga12作为视觉感知主处理器,并且在第一平台上部署深度学习视觉感知算法,由此能够输出目标级视觉感知结果,例如对人、车辆、车道线、交通信号灯、标识牌等典型目标,输出目标类型以及车辆坐标系/世界坐标系中的位置。

另外,在该示例中,在第一fpga11和第二fpga12上部署深度学习视觉处理算法的原因在于:有可实现性,工具链支持,深度学习算法可以在fpga上用rtl级代码实现,效率高;最多需支持8路摄像头,采用一个fpga不够,需要至少2个。

对于由第一gpu21、第二gpu22、第三gpu23以及第四gpu24构成的第二平台,例如输入来自激光雷达的数据、来自毫米波雷达等的超声波传感器的数据、来自rtk(real-timekinematic,实时动态载波相位差分技术,一种新的常用的卫星定位测量方法)、gps等的数据。

具体地,以第一gpu21作为激光雷达感知定位主处理器,在第二平台上实现激光雷达感知和定位;以第二gpu22作为融合主处理器,主要处理毫米波雷达、图像、激光雷达等多个传感器感知结果的融合;以第三gpu23作为定位主处理器,主要接入高精地图,并处理由gps/rtk和激光、视觉等得到信息计算出的车辆位置和目标位置信息;以第四gpu24或者mcu23中的一个作为决策规划和轨迹跟踪处理器,计算车辆运行轨迹,并转化成对车辆的控制指令。

另外,gpu也可以作为视觉感知的备份处理设备,例如可以再设置一个gpu作为视觉感知的备份处理设备,或者也可以在第一gpu21~第四gpu24中选择任意一个作为视觉感知的备份处理设备。例如,在图1中,作为一个示例,选择第四gpu24作为视觉感知的备份处理设备,即对该第四gpu24也输入摄像头数据。这样,在用fpga做视觉感知处理的同时,也将摄像头数据输入到gpu中,由此,关于视觉感知的算法可以同时在fpga和gpu上实现,这样,能够提高适应性,且方便更新。

作为一个示例(未图示),将车辆的前视摄像头和环视摄像头均通过lvds解串器,接入第一平台(即由第一fpga和第二fpga构成的感知模块),该第一平台完成基于视觉的目标感知,输出车辆、行人、车道线等目标信息,通过以太网网关传送给负责决策规划的gpu的处理器。同时在两个fpga中的一个fpga通过pcie接口,将原始视频信号直接传送到一块gpu处理器,使gpu的处理器也可以对原始视频做处理。在该gpu上可以预留了摄像头接口,以便这摄像头能同时也接入gpu。

对于mcu31,它与车辆控制系统50进行通信连接,mcu31接收来自车辆控制系统50的车辆控制信息并向车辆该控制系统50反馈该分布式多核异构系统输出的控制命令。这里作为车辆控制系统50所包含的构造单元,例如可以列举vcu(整车控制器)、eps(电动转向系统)、hmi(人机接口)等等。

另外,作为一个示例,这里可以将以一个mcu或者gpu作为安全冗余处理器,当各fpga和gpu等处理器处理失败的情况下,则启动该安全冗余处理器,做降级控制。其中,例如是采用第一平台上的mcu31,因为该mcu直接和ecu控制总线通信。

作为一个变化例,在gpu和mcu上搭建ros系统,通过各处理器的固件(firmware)和ros系统,使上层应用软件开发与分布式异构系统隔离。这里所谓的隔离是指,开发独立,即代码开发不用依赖硬件平台,如果都在ros下开发,mcu和gpu上都架设了ros系统,那同一个软件可以即运行在mcu上,也运行在gpu上。而且,由于在ros环境下开发,以rosmessage方式传送消息,由此能够基本保障软件与算法可以在异构的硬件平台上进行移植。

如上所述,本发明提出了一种分布式异构的自动驾驶感知融合规划系统,通过将多个fpga,gpu和mcu等不同种类的平台通过网络连接到一起,将自动驾驶感知融合的各模块在不同平台上部署实现,并通过规定的通信协议完成数据和指令交互,利用多平台计算能力的叠加提升感知精度,并优化系统计算资源利用效率,增加系统稳定性。利用本发明的分布式多核异构系统,能够实现l4级自动驾驶感知融合精度,而单核平台计算能力无法满足l4级自动驾驶感知融合精度。

以上例子主要说明了本发明的分布式多核异构系统。尽管只对其中一些本发明的具体实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1