一种传感器数据访问系统转让专利

申请号 : CN202211460135.7

文献号 : CN115509726B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 冯涛

申请人 : 南京芯驰半导体科技有限公司

摘要 :

一种传感器数据访问系统,包括:多个硬件域,多个硬件域之间为硬隔离;以及传感器硬件域,其与多个硬件域分别连接,具有多个传感器模块,传感器模块接收用于自动驾驶的传感器数据,多个硬件域包括:具有第一传感器接入模块的第一硬件域;和设置于同一系统级芯片上且具有与第一传感器接入模块不同类型的第二传感器接入模块的第二硬件域,第一硬件域从传感器硬件域获取与第一传感器接入模块对应的传感器数据,第二硬件域从传感器硬件域获取与第二传感器接入模块对应的传感器数据,可以在不导入虚拟机的技术上实现传感器的共享,进而降低实现自动驾驶的成本。

权利要求 :

1.一种传感器数据访问系统,其特征在于,包括:多个硬件域,多个所述硬件域之间为硬隔离;以及

传感器硬件域,其与多个所述硬件域分别连接,具有多个传感器模块,所述传感器模块接收用于自动驾驶的传感器数据,多个所述硬件域包括:具有第一传感器接入模块的第一硬件域;和设置于同一系统级芯片上且具有与所述第一传感器接入模块不同类型的第二传感器接入模块的第二硬件域,所述第一硬件域从所述传感器硬件域获取与所述第一传感器接入模块对应的传感器数据,所述第二硬件域从所述传感器硬件域获取与所述第二传感器接入模块对应的传感器数据,所述第一硬件域被配置为能够响应中断事件特征符合预设条件的传感器数据,包括:第一中央处理器;

经由系统总线与所述第一中央处理器连接的第一权限控制模块;以及与所述第一权限控制模块相连的所述第一传感器接入模块,所述第一传感器接入模块用于适配所述传感器数据,所述第二硬件域被配置为包括:

第二中央处理器;

经由系统总线与所述第二中央处理器连接的第二权限控制模块;以及与所述第二权限控制模块相连的所述第二传感器接入模块,所述第一硬件域与所述第二硬件域被配置为执行不同的自动驾驶任务;

所述第一权限控制模块被配置为不响应除所述第一硬件域的访问请求以外的其它所述硬件域的访问请求,所述第二权限控制模块被配置为不响应除所述第二硬件域的访问请求以外的其它所述硬件域的访问请求。

2.根据权利要求1所述的传感器数据访问系统,其特征在于,所述第一硬件域还包括:中断模块,其响应来自所述第一硬件域的中断事件。

3.根据权利要求2所述的传感器数据访问系统,其特征在于,所述中断模块响应通过与第一传感器接入模块对应的接口发送和/或抓取数据的中断事件。

4.根据权利要求1所述的传感器数据访问系统,其特征在于,所述第一中央处理器和所述第二中央处理器经由系统总线分别向所述第一权限控制模块和所述第二权限控制模块发送包括硬件域标识信息、地址空间以及读操作/写操作的访问信息,其中,所述硬件域标识信息是所述第一中央处理器和所述第二中央处理器所属的各自硬件域的标识信息,所述第一权限控制模块和所述第二权限控制模块均预存有验证访问信息的、包含硬件域标识信息和地址空间的验证信息,所述第一权限控制模块和所述第二权限控制模块对所接收到的访问信息进行验证,在所接收到的访问信息与验证信息一致时,仅允许所述第一中央处理器访问所述第一传感器接入模块、或者仅允许所述第二中央处理器访问所述第二传感器接入模块。

5.根据权利要求1至4中任一项所述的传感器数据访问系统,其特征在于,所述传感器模块包括超声波雷达传感器、毫米波雷达传感器和摄像头传感器,所述第一传感器接入模块包括:与超声波雷达传感器和毫米波雷达传感器对应的脉冲宽度调制模块和/或计时器模块,所述第二传感器接入模块包括与摄像头传感器对应的摄像头数据接入模块。

6.根据权利要求5所述的传感器数据访问系统,其特征在于,所述第一硬件域还包括:经由系统总线与所述第一中央处理器连接的CANFD权限控制模块以及与所述CANFD权限控制模块相连的CANFD模块,所述第一硬件域响应与CANFD对应的中断事件。

7.根据权利要求1所述的传感器数据访问系统,其特征在于,所述第一中央处理器为实时性处理器,供实时性要求高的自动驾驶任务运行。

8.根据权利要求1所述的传感器数据访问系统,其特征在于,所述第一硬件域和所述第二硬件域还包括核间通信模块,其用于使所述第一硬件域和所述第二硬件域进行通信,相互进行数据请求。

9.根据权利要求8所述的传感器数据访问系统,其特征在于,所述核间通信模块通过虚拟网卡和/或共享内存执行多个所述硬件域之间的数据传输。

10.根据权利要求1所述的传感器数据访问系统,其特征在于,所述传感器硬件域位于功能安全硬件域。

11.一种车载芯片,其特征在于,包括权利要求1至10中任一项所述的传感器数据访问系统。

12.一种车载设备,其特征在于,包括权利要求11所述的车载芯片。

说明书 :

一种传感器数据访问系统

技术领域

[0001] 本申请涉及自动驾驶技术领域,特别是涉及一种传感器数据访问系统。

背景技术

[0002] 自动驾驶系统(Autonomous Driving System,ADS)以为用户带来便捷的驾驶体验、提高驾驶安全性为目标,目前的自动驾驶系统中使用虚拟机(Hypervisor),通过把不同的自动驾驶任务分配到不同的虚拟机,从而提供任务间的隔离。
[0003] 目前商业版的虚拟机需要昂贵的License(软件版权)费用。

发明内容

[0004] 为了解决现有技术存在的不足,本申请的目的在于提供一种传感器数据访问系统,相对于现有技术,可以在不导入虚拟机的技术上实现传感器的共享,进而降低实现自动驾驶的成本,且以简单的结构实现自动驾驶的传感器共享。
[0005] 为实现上述目的,本申请提供的一种传感器数据访问系统,包括:
[0006] 多个硬件域,多个所述硬件域之间为硬隔离;以及
[0007] 传感器硬件域,其与多个所述硬件域分别连接,具有多个传感器模块,所述传感器模块接收用于自动驾驶的传感器数据,
[0008] 多个所述硬件域包括:具有第一传感器接入模块的第一硬件域;和设置于同一系统级芯片上且具有与所述第一传感器接入模块不同类型的第二传感器接入模块的第二硬件域,
[0009] 所述第一硬件域从所述传感器硬件域获取与所述第一传感器接入模块对应的传感器数据,所述第二硬件域从所述传感器硬件域获取与所述第二传感器接入模块对应的传感器数据。
[0010] 进一步地,所述第一硬件域被配置为能够响应中断事件特征符合预设条件的传感器数据,包括:
[0011] 第一中央处理器;
[0012] 经由系统总线与所述第一中央处理器连接的第一权限控制模块;以及[0013] 与所述第一权限控制模块相连的所述第一传感器接入模块,
[0014] 所述第一传感器接入模块用于适配所述传感器数据,
[0015] 所述第二硬件域被配置为包括:
[0016] 第二中央处理器;
[0017] 经由系统总线与所述第二中央处理器连接的第二权限控制模块;以及[0018] 与所述第二权限控制模块相连的所述第二传感器接入模块,
[0019] 所述第一硬件域与所述第二硬件域被配置为执行不同的自动驾驶任务;
[0020] 所述第一权限控制模块被配置为不响应除所述第一硬件域的访问请求以外的其它所述硬件域的访问请求,所述第二权限控制模块被配置为不响应除所述第二硬件域的访问请求以外的其它所述硬件域的访问请求。
[0021] 进一步地,所述第一硬件域还包括:中断模块,其响应来自所述第一硬件域的中断事件。
[0022] 进一步地,所述中断模块响应通过与第一传感器接入模块对应的接口发送和/或抓取数据的中断事件。
[0023] 进一步地,所述第一中央处理器和所述第二中央处理器经由系统总线分别向所述第一权限控制模块和所述第二权限控制模块发送包括硬件域标识信息、地址空间以及读操作/写操作的访问信息,其中,所述硬件域标识信息是所述第一中央处理器和所述第二中央处理器所属的各自硬件域的标识信息,所述第一权限控制模块和所述第二权限控制模块均预存有验证访问信息的、包含硬件域标识信息和地址空间的验证信息,
[0024] 所述第一权限控制模块和所述第二权限控制模块对所接收到的访问信息进行验证,在所接收到的访问信息与验证信息一致时,仅允许所述第一中央处理器访问所述第一传感器接入模块、或者仅允许所述第二中央处理器访问所述第二传感器接入模块。
[0025] 进一步地,所述传感器模块包括超声波雷达传感器、毫米波雷达传感器和摄像头传感器,
[0026] 所述第一传感器接入模块包括:与超声波雷达传感器和毫米波雷达传感器对应的脉冲宽度调制模块和/或计时器模块,
[0027] 所述第二传感器接入模块包括与摄像头传感器对应的摄像头数据接入模块。
[0028] 进一步地,所述第一硬件域还包括:经由系统总线与所述第一中央处理器连接的CANFD权限控制模块以及与所述CANFD权限控制模块相连的CANFD模块,
[0029] 所述第一硬件域响应与CANFD对应的中断事件。
[0030] 进一步地,所述第一中央处理器为实时性处理器,供实时性要求高的自动驾驶任务运行。
[0031] 进一步地,所述第一硬件域和所述第二硬件域还包括核间通信模块,其用于使所述第一硬件域和所述第二硬件域进行通信,相互进行数据请求。
[0032] 进一步地,所述核间通信模块通过虚拟网卡和/或共享内存执行多个所述硬件域之间的数据传输。
[0033] 更进一步地,所述传感器硬件域位于功能安全硬件域。
[0034] 为实现上述目的,本申请还提供一种车载芯片,包括上述的传感器数据访问系统。
[0035] 为实现上述目的,本申请还提供一种车载设备,包括上述的车载芯片。
[0036] 本申请的传感器数据访问系统及方法,通过多个硬件域分别从具有多个传感器模块的传感器硬件域获取所需的传感器信息,相比于现有技术的虚拟设备共享技术,可以在不导入虚拟机的技术上实现传感器的共享,进而降低实现自动驾驶的成本,且以简单的结构实现自动驾驶的传感器共享。
[0037] 本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。

附图说明

[0038] 附图用来提供对本申请的进一步理解,并且构成说明书的一部分,并与本申请的实施例一起,用于解释本申请,并不构成对本申请的限制。在附图中:
[0039] 图1为根据本申请一个实施例的传感器数据访问系统结构示意图;
[0040] 图2为根据本申请一个实施例的多个硬件域的结构示意图;
[0041] 图3为根据本申请一个实施例的基于硬件域的权限控制示意图;
[0042] 图4为根据本申请又一个实施例的传感器数据访问系统结构示意图;
[0043] 图5为根据本申请的传感器数据访问系统配置示意图;
[0044] 图6为根据本申请的传感器数据访问系统硬件域核间通信示意图。

具体实施方式

[0045] 下面将参照附图更详细地描述本申请的实施例。虽然附图中显示了本申请的某些实施例,然而应当理解的是,本申请可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本申请。应当理解的是,本申请的附图及实施例仅用于示例性作用,并非用于限制本申请的保护范围。
[0046] 应当理解,本申请的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本申请的范围在此方面不受限制。
[0047] 本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0048] 需要注意,本申请中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。“多个”应理解为两个或以上。
[0049] 下面,将参考附图详细地说明本申请的实施例。
[0050] 实施例1
[0051] 图1为根据本申请一个实施例的传感器数据访问系统结构示意图,如图1所示,本实施例的传感器数据访问系统,包括:多个硬件域100(硬件域I、硬件域II 硬件域n),配置~于同一系统级芯片(System on Chip;SoC)上,分别运行不同的自动驾驶任务;传感器硬件域200,与多个硬件域100分别连接,且包括多个传感器模块210,多个传感器模块210分别采集安装于车身的对应的传感器的传感器信息,例如,传感器信息包括雷达信息,包括车速、油门开度等的车辆控制信息、摄像头信息、距离信息等。在本实施例中,传感器硬件域200与多个硬件域100配置于同一系统级芯片上,传感器硬件域200采集多个传感器信息后对其进行算法运算,之后将传感器信息和/或运算结果通过后述的核间通信模块(核间通信机制)提供给多个硬件域100。另外,传感器硬件域200位于系统级芯片内的功能安全硬件域,可以为系统提供更高的数据安全冗余。
[0052] 在本实施例中,多个硬件域100和传感器硬件域200分别包括虚拟网卡。多个硬件域100与传感器硬件域200之间通过虚拟网卡进行通信。另外,在本实施例中,多个硬件域100与传感器硬件域200之间通过其它方式进行通信,在此不进行特别限定。
[0053] 接着说明本实施例的每个硬件域100的具体结构。图2为根据本申请一个实施例的多个硬件域的结构示意图,如图2所示,本实施例的传感器数据访问系统的多个硬件域100(硬件域I、硬件域II 硬件域n)分别包括:主设备10、硬件权限控制模块20和从设备30。~
[0054] 主设备10是发起地址空间访问的设备,用于发起地址空间访问,例如是:CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)、DSP(Digital Signal Processing,数字信号处理)、DMA(Direct Memory Access,直接存储器访问)等。
[0055] 本申请实施例中,主设备10在发起地址空间访问时,会在总线上带上Domain ID(硬件域标识)信息。
[0056] 硬件权限控制模块20,用于对地址单元(从设备30)的访问进行权限控制,使得主设备10只能访问同一个硬件域100的从设备30。硬件权限控制模块20配置在从设备30前。
[0057] 从设备30是地址空间,用于供本硬件域主设备10访问,例如是:内存地址、IP(Interrupt Priority)寄存器地址(例如,I2C(Inter‑Integrated Circuit,双向二线制同步串行)寄存器。从设备30只能由同一个硬件域100的主设备10进行访问。
[0058] 本申请实施例中,主设备10通过硬件权限控制模块20访问从设备30时,向硬件权限控制模块20发送包括硬件域标识信息、访问空间以及读操作/写操作等信息;硬件权限控制模块20对主设备10发送的硬件域标识信息、访问空间以及读操作/写操作等信息进行验证,使得从设备30只允许同一硬件域内的主设备10访问。
[0059] 图3为根据本申请一个实施例的基于硬件域的权限控制示意图,如图3所示,例如,一个硬件域100(硬件域I)包括:包含中央处理器I和直接存储器访问I的主设备10(主设备I)、两个从设备30(从设备II)(具体地,包括脉冲宽度调制(Pulse Width Modulation,PWM)模块31和计时器(Timer)模块32)、和与这两个从设别30分别对应的两个硬件权限控制模块20(硬件权限控制模块I)(具体地,包括脉冲宽度调制权限控制模块21和计时器权限控制模块22),另一个硬件域100(硬件域II)包括:包含中央处理器II和直接存储器访问II的主设备10(主设备II)、一个从设备30(从设备II)(具体地,是双倍速率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR)模块33,地址空间为100M 4GB)、和与这一个从设别30对应的一个硬件权限控制模块20(硬件权限控制模块~
II)(具体地,是双倍速率同步动态随机存储器权限控制模块23)。
[0060] 主设备10在发起地址空间访问时,会在总线上带上硬件域标识信息。从设备I和从设备II归属于哪个硬件域,是通过配置硬件权限控制寄存器,来以使从设备I只能被所属于同一硬件域I的主设备I访问,且使从设备II只能被所属于同一硬件域II的主设备II访问。例如,如图3所示,脉冲宽度调制权限控制模块21和计时器权限控制模块22的寄存器被设置成硬件域标识为1;双倍速率同步动态随机存储器权限控制模块23的寄存器被设置成硬件域标识为2,其结果中央处理器I可以访问所属于同一硬件域I的脉冲宽度调制模块31和计时器模块32,而无法访问所属于硬件域II的双倍速率同步动态随机存储器模块33;反之,中央处理器II可以访问所属于同一硬件域II的双倍速率同步动态随机存储器模块33,而无法访问所属于硬件域I的脉冲宽度调制模块31和计时器模块32。
[0061] 本申请实施例中,传感器数据访问系统还可以包括资源配置单元(未图示),用于在启动阶段跟据需要将系统级芯片内的主设备10分配到不同硬件域(加上Domain ID),同时配置与从设备30相连的硬件权限控制模块,使得其只允许带有特定Domain ID的访问能通过,以此达到把从设备30分配到特定硬件域的目的。
[0062] 本申请实施例中,资源配置单元配置主设备10使其在总线上传输数据时带上硬件域标识信息;配置从设备30前的硬件权限控制模块20,使其只能被带有特定硬件域标识的主设备10所访问。
[0063] 在本实施例中,举例说明了包括两个硬件域的示例,但本申请不限于此,可以包括两个以上的硬件域。
[0064] 实施例2
[0065] 图4为根据本申请又一个实施例的传感器数据访问系统结构示意图,如图4所示,本实施例的传感器数据访问系统,包括:配置于同一系统级芯片的多个硬件域100’(硬件域I、硬件域II 硬件域V)。每一个硬件域100’分别包括独立的中央处理器11’,具体地,硬件域~I包括实时性处理器I;硬件域II包括实时性处理器II;硬件域III包括应用处理器III;硬件域IV包括应用处理器IV;硬件域V包括应用处理器V。因此,每一个硬件域100’可以进行独立的任务调度,互不影响。包括实时性处理器I、II的硬件域I、II可以把实时性要求高的任务放入硬件域I、II,例如控车需要实时性中央处理器,例如Cotex‑R5,同时也需要实时性操作系统,例如AutoSAR((Automotive Open System Architecture,汽车开放系统架构)。包括应用处理器III、IV、V的硬件域III、IV、V可以把需要较大算力的感知以及规划任务放入硬件域III、IV、V。
[0066] 在本实施例中,实时性处理器I、II为ARM Cotex‑R系列处理器,例如Cotex‑R5,但不限于此,只要可以供实时性要求高的自动驾驶任务运行即可。
[0067] 在本实施例中,应用处理器III、IV、V为ARM Cotex‑A系列处理器,例如Cotex‑A55,但不限于此,只要可以供需要较大算力的感知以及规划任务运行即可。
[0068] 自动驾驶根据驾驶辅助可以分为五级。具体是,L1级(驾驶员辅助),主要以驾驶员操作为主,驾驶系统会在适当的情况下自动辅助,但是在特定的情况下,系统会介入,这项驾驶技术主要是为了提高行车安全性;L2级(部分自动驾驶),这个级别的驾驶技术主要是为了增强对方向的控制,汽车在行驶过程中出现偏离的现象时,会提示驾驶员修正方向,将车辆拉回到所行驶的车道中;L3级(受条件制约的自动驾驶),可以自己根据信息做出决定,例如加速经过缓慢行驶的车辆。但是这个级别仍然需要人类操控。驾驶员必须保持警觉,并且在系统无法执行任务时进行操控;L4级(高度自动驾驶),呈现出高度自动化,汽车在启动之后可以根据设定的路线全面驾驶,不需要驾驶员操作;L5级(完全自动驾驶),在驾驶汽车的过程中,完全不需要人工操作,通过车载电脑的感知和运算来驾驶车辆。
[0069] 此外,每一个硬件域(硬件域I 硬件域V)100’分别包括中断模块(中断模块I 中断~ ~模块V)40’和核间通信模块(核间通信模块I 核间通信模块V)50’。中断模块40’用于响应来~
自其所述的硬件域100’的中断事件。核间通信模块50’用于使多个硬件域100’之间进行通信,相互进行数据请求。
[0070] 具体地,硬件域I还包括:车身接入控制模块I(对应图4中的31’)、中断模块I和核间通信模块I;硬件域II(第一硬件域)还包括:传感器接入模块II(第一传感器接入模块)(对应图4中的32’)、中断模块II和核间通信模块II;硬件域III(第二硬件域)还包括:传感器接入模块III(第二传感器接入模块)(对应图4中的33’)、中断模块III和核间通信模块III;硬件域IV还包括:AI(Artificial Intelligence,人工智能)模块IV(对应图4中的34’)、中断模块IV和核间通信模块IV;硬件域V还包括:中断模块V和核间通信模块V。
[0071] 在本实施例中,车身接入控制模块I可以为CANFD(Controller Area Network Flexible Data rate,可变速率控制器局域网络接口);传感器接入模块II可以为超声波雷达和/或毫米波雷达所需接口;传感器接入模块II可以为Camera(摄像头接入所需接口);人工智能模块IV可以为NPU(Neural‑network Processing Units,网络处理器)、图形处理器、Vision(视觉) DSP(Digital Signal Processor,数字信号处理器)等。
[0072] 另外,在本实施例中,中断模块可以为GIC(Generic Interrupt Controller,通用中断控制器);核间通信模块可以为Mailbox,但并不限于此。此外,在本实施例中,以每一个硬件域100’包括中断模块40’的示例进行了说明,但并不限于此,根据功能安全需要,适当的配置中断模块40’。
[0073] 硬件域II、III分别包括独立的传感器数据采集模块。例如,传感器接入模块II可以包括超声波雷达数据需要的脉冲宽度调制模块以及计时器模块、和/或毫米波雷达数据采集需要的CANFD;传感器接入模块III可以包括摄像头数据采集需要的MIPI(Mobile Industry Processor Interface,移动产业处理器接口)_CSI(Camera Serial Interface,相机串行接口)接口,但不限于此。其结果,可以把对应传感器数据采集任务放到这些硬件域II、III,来减少传感器数据采集过程频繁的中断对其他自动驾驶任务,例如感知算法模块、规划模块等的打断。另外,通常驾驶方案会接入多路超声波雷达,通过脉冲宽度调制的硬件接口发送数据采集波形,同时通过计时器的接口抓取数据,这个过程会有大量中断事件产生。通过使硬件域II、III具有独立的中断控制器II、III,可以只响应来自硬件域II、III的中断事件,减少中断对其他自动驾驶算法任务的打断,进而增强自动驾驶任务的实时性。例如,中断模块II仅响应通过与脉冲宽度调制模块对应的接口发送数据采集波形和通过与所述计时器模块对应的接口抓取数据的中断事件,中断模块III仅响应与CANFD对应的中断事件。在本实施例中,CANFD对应的中断事件是在传感器硬件域中发生的,但不限于此。
[0074] 另外,在本实施例中以每一个硬件域均具有中断模块的示例进行了说明。但是,也可以是按照功能安全要求,至少一部分的功能安全要求高的硬件域包括中断模块,但不限于此。
[0075] 图5为根据本申请的传感器数据访问系统配置示意图。如图5所示,硬件域I包括控制模块311’,其通过后述的硬件域V的规划模块351’的输出控制车辆。因此,硬件域I可以包括实时性中央处理器(例如,ARM Cortex‑R5)且采用实时性内核(例如,AutoSAR)。硬件域II包括超声波雷达数据采集模块321’和毫米波雷达数据采集模块322’,超声波雷达数据采集模块321’和毫米波雷达数据采集模块322’用于雷达数据采集,硬件域II还包括实时性中央处理器(例如,ARM Cortex‑R5)且采用实时性内核(例如,AutoSAR),以确保超声波雷达以及毫米波雷达数据采集的硬实时性。硬件域III包括用于摄像头数据采集的摄像头数据采集模块331’、用于定位数据采集的GNSS(Global Navigation Satellite System,全球导航卫星系统)数据采集模块332’以及用于前处理的IMU(Inertial Measurement Unit,惯性测量单元)数据采集模块333’,硬件域III还包含高性能处理器(例如,ARM Cortex‑A55)且采用软实时性内核(例如,LINUX(操作系统内核))。硬件域IV包括用于对收集到的传感器数据运行各种AI推理运算的感知/融合模块341’,硬件域IV主要包括人工智能硬件(例如,NPU、GPU、Vision DSP等)和高性能处理器(例如,ARM Cortex‑A55)。硬件域V包括规划模块351’,其根据硬件域IV的感知/融合模块341’输出的周边环境感知信息以及硬件域I和/或硬件域III输出的车辆状态信息,做出相应的规划决策,规划决策包括路径规划、行为决策、运行规划等。硬件域V还包括高性能处理器(例如,ARM Cortex‑A55)且采用软实时性内核(例如,LINUX)。
[0076] 上述自动驾驶任务位于不同的硬件域,消除了不同自动驾驶任务间的相互干扰:
[0077] (1)多路摄像头数据在采集过程中频繁的中断对感知/融合模块的影响。
[0078] (2)感知/融合模块和规划模块位于不同的硬件域,感知/融合算法任务的调度不会影响规划模块任务的执行。
[0079] (3)高实时性要求的控制模块以及雷达数据采集模块位于不同的实时性中央处理器,运行在实时性内核上,充分满足上述模块的实时性要求,屏蔽自动驾驶实时性要求较低模块对高实时性模块运行的干扰。
[0080] 在本实施例中,对基于功能安全要求将传感器模块分别配置于不同硬件域的示例进行了说明,但也可以将所有的传感器模块配置在同一硬件域,例如图5中的硬件域II。
[0081] 图6为根据本申请的传感器数据访问系统硬件域核间通信示意图。如图6所示,各个自动驾驶任务在各自的硬件域100’独立运行,相互之间通过核间通信模块50’传递必要的数据。各硬件域100’(硬件域I 硬件域V),应用程序可以调用数据分发服务(例如,DDS~(Direct Digital Frequency Synthesis,直接数字控制器))直接调用网络Socket(套接字)接口完成多硬件域的数据交互。另外,数据分发服务基于网络服务以及共享内存,其中网络服务底层通过虚拟网卡,虚拟网卡基于硬件域间通信硬件Mailbox以及共享内存。
[0082] 根据上述实施例的传感器数据访问系统,通过多个硬件域分别从具有多个传感器模块的传感器硬件域获取所需的传感器信息,相比于现有技术的虚拟设备共享技术,可以在不导入虚拟机的技术上实现传感器的共享,进而降低实现自动驾驶的成本,且以简单的结构实现自动驾驶的传感器共享。
[0083] 根据上述实施例的传感器数据访问系统,通过多个硬件域分别从具有多个传感器模块的传感器硬件域获取所需的传感器信息,可以在多个硬件域中的一个硬件域出现异常时,不会影响其他硬件域获取传感器信息,进而使自动驾驶更稳定且安全。
[0084] 根据上述实施例的传感器数据访问系统,通过硬隔离方式把自动驾驶任务分配到不同的硬件域,并使每一个硬件域仅响应本硬件域的中断事件,相较于软件方式(例如,虚拟机或者增强操作系统实时性)有更好的实时性和鲁棒性,并且无需导入复杂的虚拟机环境或者处理自动驾驶任务间的相互干扰,进而同时软件开发成本较小。
[0085] 根据上述实施例的传感器数据访问系统,通过至少在对用于高级别的自动驾驶的数据进行采集的部分所属的硬件域配置实时性中央处理器和中断模块,可以避免其他硬件域的中断事件对功能安全需要高的自动驾驶任务产生干扰,提高实时性和鲁棒性,进而提高自动驾驶安全。
[0086] 根据上述实施例的传感器数据访问系统,通过把单个SoC分割成不同的硬件域,在硬件域中根据自动驾驶任务需求分配不同的硬件,把自动驾驶任务分配到不同的硬件域运行,通过域间通信系统在各个域间交互数据,从而减小自动驾驶任务的相互干扰,进而增强自动驾驶任务的实时性和鲁棒性。
[0087] 实施例3
[0088] 本申请实施例中,还提供一种车载芯片,包括,上述实施例的传感器数据访问系统。
[0089] 实施例4
[0090] 本申请的实施例中,还提供了还提供了一种电子设备,包括,上述实施例的车载芯片。
[0091] 本领域普通技术人员可以理解:以上所述仅为本申请的优选实施例而已,并不用于限制本申请,尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。