CN111399495A - 具有灵活主机和客户端配置的自动驾驶计算与存储扩展装置 - Google Patents

具有灵活主机和客户端配置的自动驾驶计算与存储扩展装置 Download PDF

Info

Publication number
CN111399495A
CN111399495A CN201910859019.4A CN201910859019A CN111399495A CN 111399495 A CN111399495 A CN 111399495A CN 201910859019 A CN201910859019 A CN 201910859019A CN 111399495 A CN111399495 A CN 111399495A
Authority
CN
China
Prior art keywords
processing
host
processing module
host system
expansion device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910859019.4A
Other languages
English (en)
Other versions
CN111399495B (zh
Inventor
黄岱
李季
张满江
张然
邹有龄
周旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu USA LLC
Original Assignee
Baidu USA LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baidu USA LLC filed Critical Baidu USA LLC
Publication of CN111399495A publication Critical patent/CN111399495A/zh
Application granted granted Critical
Publication of CN111399495B publication Critical patent/CN111399495B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • G05D1/0236Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • H04L12/40176Flexible bus arrangements involving redundancy
    • H04L12/40195Flexible bus arrangements involving redundancy by using a plurality of nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)
  • Game Theory and Decision Science (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Transportation (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

数据处理系统包括主机系统和经由总线联接至主机系统的一个或多个扩展装置。主机系统可以包括一个或多个处理器和存储指令的存储器,所述指令在被运行时致使处理器执行自动驾驶操作以驾驶自动驾驶车辆(ADV)。每个扩展装置包括交换机装置和联接至交换机装置的一个或多个处理模块。每个处理模块可配置成执行从主机系统下载的自动驾驶操作中的至少一个。处理模块中的至少一个可配置为客户端节点,以响应于从主机系统接收的指令来执行动作。可替代地,其可配置为主机节点,以将任务分配给位于扩展装置内的另一客户端节点。扩展装置中的该主机节点还可以经由主机到主机连接与主机系统协作。

Description

具有灵活主机和客户端配置的自动驾驶计算与存储扩展装置
技术领域
本公开的实施方式总体涉及数据处理系统。更具体地,本公开的实施方式涉及具有用于自动驾驶车辆的灵活主机和客户端配置的计算与存储扩展装置。
背景技术
以自动驾驶模式运行(例如,无人驾驶)的车辆可以将乘客(尤其是驾驶员)从一些驾驶相关的职责中解放出来。当以自动驾驶模式运行时,车辆可以使用车载传感器导航到各个位置,从而允许车辆在最少人机交互的情况下或在没有任何乘客的一些情况下驾驶。
自动驾驶开发在系统中需要可扩展和动态可配置的硬件计算和存储资源。此外,当目标在于多种功能和性能目标以及架构时,主机和客户端配置以及数据流可以是不同的。传统方法是构建与主系统具有连接并增加计算和/或存储装置的扩展装置。这种方法通常指定主系统为主机,并且扩展装置是所有客户端,或者需要多个不同的硬件装置来构建满足不同需求的系统。
发明内容
根据本申请的一个方面,提供了一种在自动驾驶中使用的数据处理系统。所述系统包括:主机系统,具有一个或多个主机处理器和存储指令的存储器,所述指令在由所述主机处理器运行时,致使所述主机处理器执行自动驾驶操作以驾驶自动驾驶车辆(ADV);以及扩展装置,通过总线联接至所述主机系统,以从所述主机系统下载所述自动驾驶操作中的至少一部分。所述扩展装置包括:交换机装置,以及多个处理模块,多个处理模块联接至所述交换机装置,所述处理模块中的每个均配置成执行从所述主机系统下载的所述自动驾驶操作中的至少一个,其中,所述处理模块中的至少一个能够配置为响应于从所述主机系统或主机处理节点接收的指令而执行动作的客户端处理节点,以将任务分配给位于所述扩展装置内的另一客户端节点。
根据本申请的另一方面,提供了一种在自动驾驶中使用的扩展装置。所述装置包括:主机接口,待联接至主机系统,所述主机系统具有一个或多个主机处理器和存储指令的存储器,所述指令在由所述主机处理器运行时,致使所述主机处理器执行自动驾驶操作以驾驶自动驾驶车辆(ADV);交换机装置,联接至所述主机接口;以及多个处理模块,联接至所述交换机装置,所述处理模块中的每个均配置成执行从所述主机系统下载的自动驾驶操作中的至少一个,其中,所述处理模块中的至少一个能够配置为响应于从所述主机系统或主机处理节点接收的指令而执行动作的客户端处理节点,以将任务分配给位于所述扩展装置内的另一客户端节点。
附图说明
本公开的实施方式在附图的各图中以示例而非限制的方式示出,附图中相似的附图标记指示相似的元件。
图1是示出根据一个实施方式的网络化系统的框图。
图2是示出根据一个实施方式的自动驾驶车辆的示例的框图。
图3A至图3B是示出根据一个实施方式的与自动驾驶车辆一起使用的感知与规划系统的示例的框图。
图4是示出根据一个实施方式的数据处理系统的示例的框图。
图5A是示出根据一个实施方式的数据处理系统的示例的框图。
图5B是示出根据一个实施方式的在主机系统与扩展装置之间处理数据的过程的处理图。
图6是示出根据一个实施方式的数据处理系统的示例的框图。
图7A和图7B是示出根据一个实施方式的数据处理系统的示例的框图。
图8是示出根据一个实施方式的在主机系统与扩展装置之间处理数据的过程的处理图。
具体实施方式
将参考以下所讨论的细节来描述本公开的各种实施方式和方面,附图将示出所述各种实施方式。下列描述和附图是对本公开的说明,而不应当解释为限制本公开。描述了许多特定细节以提供对本公开各种实施方式的全面理解。然而,在某些情况下,并未描述众所周知的或常规的细节以提供对本公开的实施方式的简洁讨论。
本说明书中对“一个实施方式”或“实施方式”的引述意味着结合该实施方式所描述的特定特征、结构或特性可包括在本公开的至少一个实施方式中。短语“在一个实施方式中”在本说明书中各处的记载不必全部指同一实施方式。
根据一些实施方式,利用例如作为自动驾驶系统的一部分的计算与存储扩展装置使得灵活的主机和客户端配置能够用作客户端装置、主机装置或这两者。这样的扩展装置可以作为主系统的客户端装置补充进行工作,或者可以作为包括主机和客户端装置二者的完整系统进行工作,并且能够与另一完整系统执行主机到主机通信。这种改变仅需要固件更新,但在相同的硬件实施上工作,即不必修改硬件。所有计算与存储模块经由诸如PCIe和以太网协议的多种输入和输出(IO)总线协议联接至交换机装置。这种交换机装置能够实现计算模块与存储模块之间的通信,以及与扩展装置外部的主系统或主机系统的通信。
根据本公开的一个方面,可以在自动驾驶车辆(ADV)中使用的数据处理系统包括主机系统和经由总线联接至主机系统的一个或多个扩展装置。主机系统可以是ADV的感知与规划系统的一部分。主机系统可包括一个或多个处理器和存储指令的存储器,所述指令在被运行时致使处理器执行自动驾驶操作以驾驶ADV。每个扩展装置包括交换机装置和联接至交换机装置的一个或多个处理模块。每个处理模块可配置成执行从主机系统下载的自动驾驶操作中的至少一个。处理模块中的至少一个可配置为客户端节点,以响应于从主机系统接收的指令来执行动作。可替代地,其可配置为主机节点,以将任务分配给扩展装置内的另一客户端节点。
在一个实施方式中,在扩展装置的初始化期间,扩展装置的固件配置成扫描并检测主机系统联接至扩展装置。响应于这种检测,固件将扩展装置的处理模块中的至少一个配置为主机系统的客户端装置。在这种情况下,主机系统可以将自动驾驶操作(例如,感知、预测、决策和/或规划过程)中的至少一个下载成已配置为客户端装置的处理模块。在将处理模块配置为主机系统的客户端装置时,固件对从主机系统(例如,通过在PCI配置寄存器中分配适当的总线编号和装置编号)发起的总线枚举过程作出响应,而使得处理模块呈现为主机系统的客户端装置。
如果没有检测到主机系统,则根据一个实施方式,扩展装置的固件选择处理模块中的至少一个并将其配置为主机节点或主机处理模块,而其余处理模块配置为主机节点的客户端装置。在这种情况下,扩展装置相对于外部主机系统作为独立系统或对等系统进行操作。根据另一实施方式,处理模块的第一部分配置为位于扩展装置外部的主机系统的客户端节点。处理模块的第二部分配置为单独的系统,其包括至少一个主机节点和一个或多个客户端节点。外部主机系统(与扩展装置的处理模块的第一部分一起)和扩展装置的处理模块的第二部分作为对等数据处理系统进行操作。
根据另一实施方式,扩展装置的处理模块可配置为外部主机系统的客户端节点,并且其也配置为相对于位于扩展装置内的另一处理模块的主机节点。响应于从主机系统接收的数据,处理模块作为主机系统的客户端节点对数据执行数据处理操作(例如,压缩、加密、数据挖掘)。此后,现在作为主机节点进行操作的处理模块通过使用总线协议经由交换机装置进行路由或通过对等交互(例如,直接的存储器访问或DMA交互)将经处理的数据分配至扩展装置的另一处理模块(例如,存储模块),以对数据执行另一个动作(例如,将数据存储在扩展装置的存储装置中)。
根据本公开的另一方面,可用于从外部主机系统下载数据处理操作的扩展装置包括能够联接至外部主机系统的主机接口、交换机装置和联接至交换机装置的一个或多个处理模块。主机系统可以是用于自动驾驶ADV的感知与规划系统。主机系统可以包括一个或多个主机处理器和存储指令的存储器,所述指令在由主机处理器运行时,致使处理器执行自动驾驶操作。处理模块中的至少一个可配置为客户端装置,以执行从主机系统下载的自动驾驶操作中的至少一个。处理模块中的至少一个可配置为主机装置,以将任务分配给配置为客户端装置的其他处理模块。扩展装置还可包括上述特征或部件。
图1是示出根据本公开的一个实施方式的自动驾驶车辆网络配置的框图。参照图1,网络配置100包括可以通过网络102通信地联接到一个或多个服务器103至104的自动驾驶车辆101。尽管示出一个自动驾驶车辆,但多个自动驾驶车辆可以通过网络102联接到彼此和/或联接到服务器103至104。网络102可以是任何类型的网络,例如,有线或无线的局域网(LAN)、诸如互联网的广域网(WAN)、蜂窝网络、卫星网络或其组合。服务器103至104可以是任何类型的服务器或服务器群集,诸如,网络或云服务器、应用服务器、后端服务器或其组合。服务器103至104可以是数据分析服务器、内容服务器、交通信息服务器、地图和兴趣点(MPOI)服务器或者位置服务器等。
自动驾驶车辆是指可以被配置成处于自动驾驶模式下的车辆,在所述自动驾驶模式下车辆在极少或没有来自驾驶员的输入的情况下导航通过环境。这种自动驾驶车辆可包括传感器系统,所述传感器系统具有被配置成检测与车辆运行环境有关的信息的一个或多个传感器。所述车辆和其相关联的控制器使用所检测的信息来导航通过所述环境。自动驾驶车辆101可以在手动模式下、在全自动驾驶模式下或者在部分自动驾驶模式下运行。
在一个实施方式中,自动驾驶车辆101包括,但不限于,感知与规划系统110、车辆控制系统111、无线通信系统112、用户接口系统113和传感器系统115。自动驾驶车辆101还可包括普通车辆中包括的某些常用部件,诸如:发动机、车轮、方向盘、变速器等,所述部件可以由车辆控制系统111和/或感知与规划系统110使用多种通信信号和/或命令进行控制,该多种通信信号和/或命令例如,加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等。
部件110至115可以经由互连件、总线、网络或其组合通信地联接到彼此。例如,部件110至115可以经由控制器局域网(CAN)总线通信地联接到彼此。CAN总线是被设计成允许微控制器和装置在没有主机的应用中与彼此通信的车辆总线标准。它是最初是为汽车内的复用电气布线设计的基于消息的协议,但也用于许多其它环境。
现在参照图2,在一个实施方式中,传感器系统115包括但不限于一个或多个相机211、全球定位系统(GPS)单元212、惯性测量单元(IMU)213、雷达单元214以及光探测和测距(LIDAR)单元215。GPS系统212可包括收发器,所述收发器可操作以提供关于自动驾驶车辆的位置的信息。IMU单元213可以基于惯性加速度来感测自动驾驶车辆的位置和定向变化。雷达单元214可以表示利用无线电信号来感测自动驾驶车辆的本地环境内的对象的系统。在一些实施方式中,除感测对象之外,雷达单元214可以另外感测对象的速度和/或前进方向。LIDAR单元215可以使用激光来感测自动驾驶车辆所处环境中的对象。除其它系统部件之外,LIDAR单元215还可包括一个或多个激光源、激光扫描器以及一个或多个检测器。相机211可包括用来采集自动驾驶车辆周围环境的图像的一个或多个装置。相机211可以是静物相机和/或视频相机。相机可以是可机械地移动的,例如,通过将相机安装在旋转和/或倾斜平台上。
传感器系统115还可包括其它传感器,诸如:声纳传感器、红外传感器、转向传感器、油门传感器、制动传感器以及音频传感器(例如,麦克风)。音频传感器可以被配置成从自动驾驶车辆周围的环境中采集声音。转向传感器可以被配置成感测方向盘、车辆的车轮或其组合的转向角度。油门传感器和制动传感器分别感测车辆的油门位置和制动位置。在一些情形下,油门传感器和制动传感器可以集成为集成式油门/制动传感器。
在一个实施方式中,车辆控制系统111包括但不限于转向单元201、油门单元202(也被称为加速单元)和制动单元203。转向单元201用来调整车辆的方向或前进方向。油门单元202用来控制电动机或发动机的速度,电动机或发动机的速度进而控制车辆的速度和加速度。制动单元203通过提供摩擦使车辆的车轮或轮胎减速而使车辆减速。应注意,如图2所示的部件可以以硬件、软件或其组合实施。
回到图1,无线通信系统112允许自动驾驶车辆101与诸如装置、传感器、其它车辆等外部系统之间的通信。例如,无线通信系统112可以与一个或多个装置直接无线通信,或者经由通信网络进行无线通信,诸如,通过网络102与服务器103至104通信。无线通信系统112可以使用任何蜂窝通信网络或无线局域网(WLAN),例如,使用WiFi,以与另一部件或系统通信。无线通信系统112可以例如使用红外链路、蓝牙等与装置(例如,乘客的移动装置、显示装置、车辆101内的扬声器)直接通信。用户接口系统113可以是在车辆101内实施的外围装置的部分,包括例如键盘、触摸屏显示装置、麦克风和扬声器等。
自动驾驶车辆101的功能中的一些或全部可以由感知与规划系统110控制或管理,尤其当在自动驾驶模式下操作时。感知与规划系统110包括必要的硬件(例如,处理器、存储器、存储设备)和软件(例如,操作系统、规划和路线安排程序),以从传感器系统115、控制系统111、无线通信系统112和/或用户接口系统113接收信息,处理所接收的信息,规划从起始点到目的地点的路线或路径,随后基于规划和控制信息来驾驶车辆101。替代地,感知与规划系统110可以与车辆控制系统111集成在一起。
例如,作为乘客的用户可以例如经由用户接口来指定行程的起始位置和目的地。感知与规划系统110获得行程相关数据。例如,感知与规划系统110可以从MPOI服务器中获得位置和路线信息,所述MPOI服务器可以是服务器103至104的一部分。位置服务器提供位置服务,并且MPOI服务器提供地图服务和某些位置的POI。替代地,此类位置和MPOI信息可以本地高速缓存在感知与规划系统110的永久性存储装置中。
当自动驾驶车辆101沿着路线移动时,感知与规划系统110也可以从交通信息系统或服务器(TIS)获得实时交通信息。应注意,服务器103至104可以由第三方实体进行操作。替代地,服务器103至104的功能可以与感知与规划系统110集成在一起。基于实时交通信息、MPOI信息和位置信息以及由传感器系统115检测或感测的实时本地环境数据(例如,障碍物、对象、附近车辆),感知与规划系统110可以规划最佳路线并且根据所规划的路线例如经由控制系统111来驾驶车辆101,以安全且高效到达指定目的地。
服务器103可以是为各种客户端执行数据分析服务的数据分析系统。在一个实施方式中,数据分析系统103包括数据收集器121和机器学习引擎122。数据收集器121从各种车辆(自动驾驶车辆或由人类驾驶员所驾驶的常规车辆)收集驾驶统计数据123。驾驶统计数据123包括表示在不同的时间点处发出的驾驶命令(例如,油门命令、制动命令、转向命令)以及车辆的传感器所捕获的车辆的响应(例如速度、加速、减速、方向)的信息。驾驶统计数据123还可包括描述在不同的时间点时的驾驶环境的信息,诸如,例如路线(包括起始位置和目的地位置)、MPOI、道路状况、天气状况等。
基于驾驶统计数据123,机器学习引擎122生成或训练规则、算法和/或预测模型124的集合,以用于各种目的。在一个实施方式中,算法124可以包括用于驾驶ADV的感知与规划算法。然后,算法124可被上传到ADV上以在自动驾驶期间实时使用。
图3A和图3B是示出根据一个实施方式的与自动驾驶车辆一起使用的感知与规划系统的示例的框图。系统300可以被实施为图1的自动驾驶车辆101的一部分,包括但不限于感知与规划系统110、控制系统111和传感器系统115。参照图3A至图3B,感知与规划系统110包括但不限于定位模块301、感知模块302、预测模块303、决策模块304、规划模块305、控制模块306和路线安排模块307。
模块301至307中的一些或全部可以以软件、硬件或其组合实施。例如,这些模块可以安装在永久性存储装置352中、加载到存储器351中,并且由一个或多个处理器(未示出)执行。应注意,这些模块中的一些或全部可以通信地联接到图2的车辆控制系统111的一些或全部模块或者与它们集成在一起。模块301至307中的一些可以一起集成为集成模块。例如,预测模块303、决策模块304、规划模块305和/或控制模块306可以集成为更少的模块或单个模块。
定位模块301(例如,利用GPS单元212)确定自动驾驶车辆300的当前位置,并管理与用户的行程或路线相关的任何数据。定位模块301(也被称为地图与路线模块)管理与用户的行程或路线相关的任何数据。用户可以例如经由用户接口登录并且指定行程的起始位置和目的地。定位模块301与自动驾驶车辆300的诸如地图和路线信息311的其它部件通信,以获得行程相关数据。例如,定位模块301可以从位置服务器和地图与POI(MPOI)服务器获得位置和路线信息。位置服务器提供位置服务,并且MPOI服务器提供地图服务和某些位置的POI,从而可以作为地图和路线信息311的一部分高速缓存。当自动驾驶车辆300沿着路线移动时,定位模块301也可以从交通信息系统或服务器获得实时交通信息。
基于由传感器系统115提供的传感器数据和由定位模块301获得的定位信息,感知模块302确定对周围环境的感知。感知信息可以表示普通驾驶员在驾驶员正驾驶的车辆周围将感知到的东西。感知可包括例如采用对象形式的车道配置、交通灯信号、另一车辆的相对位置、行人、建筑物、人行横道或其它交通相关标志(例如,停止标志、让行标志)等。车道配置包括描述一条车道或多条车道的信息,例如,车道的形状(例如,直线或曲率)、车道的宽度、道路中的车道数目、单向车道或双向车道、合流车道或分流车道、出口车道等。
感知模块302可包括计算机视觉系统或计算机视觉系统的功能,以处理并分析由一个或多个相机采集的图像,从而识别自动驾驶车辆环境中的对象和/或特征。所述对象可包括交通信号、道路边界、其它车辆、行人和/或障碍物等。计算机视觉系统可以使用对象识别算法、视频跟踪以及其它计算机视觉技术。在一些实施方式中,计算机视觉系统可以绘制环境地图,跟踪对象,以及估算对象的速度等。感知模块302也可以基于由诸如雷达和/或LIDAR的其它传感器提供的其它传感器数据来检测对象。
针对每个对象,预测模块303预测所述对象在所述情况下将作出什么行为。基于在某时间点感知的驾驶环境的感知数据根据地图/路线信息311与交通规则312的集合来执行所述预测。例如,如果对象是相反方向处的车辆且当前驾驶环境包括十字路口,预测模块303则将预测该车辆是可能向前直行还是可能转弯。如果感知数据表明十字路口没有交通灯,则预测模块303可预测该车辆可能在进入十字路口之前必须完全停下。如果感知数据表明该车辆当前处于左转专用车道或右转专用车道,则预测模块303可分别预测该车辆更可能进行左转或右转。
针对每个对象,决策模块304作出关于如何处置对象的决定。例如,针对特定对象(例如,交叉路线中的另一车辆)以及描述对象的元数据(例如,速度、方向、转弯角度),决策模块304决定如何与所述对象相遇(例如,超车、让行、停止、超过)。决策模块304可以根据诸如交通规则或驾驶规则312的规则集来作出此类决定,所述规则集可以存储在永久性存储装置352中。
路线安排模块307配置成提供从起始点到终点的一个或多个路线或路径。对于例如从用户处接收到的从起始位置到目的地位置的给定行程,路线安排模块307获取地图和路线信息311,并确定从起始位置到达目的地位置的所有可能的路线或路径。对于确定了从起始位置到达目的地位置的路线中的每一个,路线安排模块307可以以地形图的形式生成参考线路。参考线路表示没有诸如其它车辆、障碍物或交通状况的其它干扰的理想路线或理想路径。即,如果道路上没有其它车辆、行人或障碍物,则ADV应精确地或严密地遵循参考线路。随后可向决策模块304和/或规划模块305提供地形图。根据由其它模块提供的其它数据(诸如,来自定位模块301的交通状况、感知模块302感知的驾驶环境和预测模块303预测的交通状况),决策模块304和/或规划模块305检验所有可能的路线,以选择并修正最佳路线中的一个。取决于在某时间点时的特定的驾驶环境,用于控制ADV的实际路径或路线可接近于或不同于由路线安排模块307提供的参考线路。
基于针对所感知到的对象中的每个的决定,规划模块305使用由路线安排模块307提供的参考线路作为基础,为自动驾驶车辆规划路径或路线以及驾驶参数(例如,距离、速度和/或转弯角度)。针对给定的对象,决策模块304决定对该对象做什么,而规划模块305确定如何去做。例如,针对给定的对象,决策模块304可以决定超过所述对象,而规划模块305可以确定在所述对象的左侧还是右侧超过。规划和控制数据由规划模块305生成,包括描述车辆300在下一移动周期(例如,下一路线/路径段)中将如何移动的信息。例如,规划和控制数据可以指示车辆300以30英里每小时(mph)的速度移动10米,随后以25mph的速度变到右侧车道。
基于规划和控制数据,控制模块306根据由规划和控制数据限定的路线或路径通过将适当的命令或信号发送至车辆控制系统111来控制并驾驶自动驾驶车辆。所述规划和控制数据包括足够的信息,以沿着路径或路线在不同的时间点使用适当的车辆设置或驾驶参数(例如,油门、制动和转向命令)将车辆从路线或路径的第一点驾驶到第二点。
在一个实施方式中,规划阶段在多个规划周期(也称为驾驶周期)中执行,诸如,以例如每100毫秒(ms)的时间间隔执行。针对每个规划周期或驾驶周期,将基于规划和控制数据发出一个或多个控制命令。即,对于每100ms,规划模块305规划下一路线段或路径段,例如,包括目标位置和ADV到达该目标位置所需的时间。替代地,规划模块305还可指定具体速度、方向和/或转向角度等。在一个实施方式中,规划模块305为下一预定的时间段(诸如5秒)规划路线段或路径段。对于每个规划周期,规划模块305基于先前周期中所规划的目标位置为当前周期(例如,下个5秒)规划目标位置。控制模块306随后基于当前周期的规划和控制数据生成一个或多个控制命令(例如,油门控制命令、制动控制命令、转向控制命令)。
应注意,决策模块304和规划模块305可以集成为集成模块。决策模块304/规划模块305可包括导航系统或导航系统的功能,以确定自动驾驶车辆的驾驶路径。例如,导航系统可以确定用于实现自动驾驶车辆沿着以下路径移动的一系列速度和前进方向:所述路径在使自动驾驶车辆沿着通往最终目的地的基于车行道的路径前进的同时,基本上避免感知到的障碍物。目的地可以根据经由用户接口系统113进行的用户输入来设定。导航系统可以在自动驾驶车辆正在运行的同时动态地更新驾驶路径。导航系统可以将来自GPS系统和一个或多个地图的数据合并,以确定用于自动驾驶车辆的驾驶路径。
图4是示出根据一个实施方式的数据处理系统的架构的示例的框图。系统400可以表示图1的感知和规划系统110或图3的系统300。参考图4,系统400包括联接至一个或多个扩展系统或扩展装置402至403的主机系统401。扩展系统402至403的架构可以相同或相似。主机系统401可以是诸如客户端或服务器的任意类型的计算机。主机系统401包括一个或多个处理器和存储可运行的指令的存储器,所述指令在由处理器运行时,致使处理器执行上文针对图1至图3描述的自动驾驶操作的至少一部分。例如,主机系统401可以托管在其中运行的部件301至307。
一个或多个扩展系统402至403可以例如经由总线(诸如,外围部件接口快速(PCIe)总线)联接至主机系统401。在一个实施方式中,扩展系统(也称为扩展装置)402至403中的每个可配置成从主机系统401从模块301至307下载自动驾驶操作的至少一部分。出于说明的目的,将对扩展装置402进行详细描述;然而,相同的描述也可以应用于诸如扩展装置403的其他扩展装置。
在一个实施方式中,扩展装置402包括交换机装置410和联接至交换机装置410的一个或多个处理模块411至413。处理模块411至413中的每个均可包括处理器、存储器和/或本地存储器,其可以运行一个或多个指令以代表主机系统401或扩展装置402内的另一主机节点执行诸如数据处理密集操作的一组专用操作。处理模块也可以是具有存储装置的存储模块以存储数据。处理器可以是中央处理单元(CPU)、通用处理单元(GPU)、现场可编程门阵列(FPGA)、片上系统(SoC)、数字信号处理器(DSP)、微控制器(例如,存储控制器)或专用集成电路(ASIC)。这些模块或处理器可以以多种形式因子(form factor)进行实施,诸如COMExpress(COMe)、PCIe或移动PCIe模块(MXM)形式因子。这些形式因子允许用户将来自定制设计或商业现货制造商的多种产品堆叠在一起来构建扩展装置。存储模块的存储装置可以是具有U.2或M.2形式因子的固态装置(SSD)、多媒体卡(MMC)和安全数字(SD)卡、通用串行总线(USB)闪存驱动器。
在一个实施方式中,如上所述,可被下载或加速的数据处理操作可以包括感知ADV的驾驶环境的感知过程、预测感知到的障碍物的移动的预测过程(例如,图像处理、LIDAR点云处理)、ADV应该做什么的决策过程以及规划轨迹以相应地驾驶ADV的规划过程。这些操作中的任意一个可以可被分配给一个或多个处理模块411至413用于以并行、串行或管线的方式运行。例如,感知过程可以由第一处理模块执行,并且结果可被路由至第二处理模块,所述第二处理模块配置成执行如图3B所示的预测过程、决策过程和/或规划过程。如上所述,取决于特定需要,处理模块411至413中的至少一些可配置为客户端节点、主机节点或其两者。
图5A是示出根据一个实施方式的以客户端装置进行配置的扩展装置的框图。参考图5A,在该示例中,所有处理模块411至415配置为主机系统401的客户端装置。这种配置可以在使扩展装置402初始化期间执行。具体地,当主机系统401通过总线(诸如,PCIe总线)联接至扩展装置402时,扩展装置402的固件对从主机系统401发起的总线枚举(busenumeration)作出响应。然后,固件将处理模块411至415配置为相对于作为根节点或根装置的主机系统401的客户端装置或端点节点,使得处理模块411至415可以对后续存储器和从主机系统401发起的IO周期作出响应。一旦处理模块411至415配置为主机系统401的客户端装置(例如,PCI总线周期),则主机系统401可以将任务(特别是计算密集型任务)分配给处理模块411至415。主机系统401可以通过指定扩展装置402的特定客户端处理模块的总线编号和装配编号来分配任务。作为响应,交换机装置410将任务路由至目标处理模块。然后,操作的结果可被传输回主机系统401。主机系统401还可以例如经由存储模块414至415来利用通过扩展装置402维持的存储装置。
图5B是示出根据一个实施方式的主机系统与作为客户端装置的扩展装置之间的交互的流程图。参考图5B,假设处理模块411已配置为主机系统401的客户端装置。在操作501中,主机系统401向交换机装置410发送用于处理数据的请求。该请求可包括待处理的数据、关于如何处理的指令以及目标装置标识符(ID)(在该示例中,为客户端处理模块411的总线/装置编号)。响应于该请求,交换机装置410经由操作502将该请求路由至目标—处理模块411。然后,在框503处,处理模块411响应于指令对数据执行必要的操作,从而生成操作的结果。该结果可以简单地是返回状态或经处理的数据(例如,压缩数据、加密数据)。在操作504中,处理模块411将该结果发送回交换机装置410,交换机装置410转而经由操作505将相同的结果路由回主机系统401。
根据一个实施方式,扩展装置402还可配置为独立系统并且作为独立系统启动。例如,响应于确定出主机系统401没有联接至扩展装置402,扩展装置402可以作为独立系统启动。在这样的配置中,处理模块411至415中的至少一个配置为主机装置(例如,根联合体(root complex)),而其余处理模块配置为客户端装置(例如,端点)。当扩展装置402作为独立系统启动时,可以执行与扩展装置有关的多种操作,例如内部测试操作。在另一实施方式中,多个处理模块可配置为主机节点,每个主机节点代表扩展装置402内的单独的独立系统。
根据另一实施方式,如图6所示,扩展装置402可以配置为混合模式,其中,处理模块411至415的第一部分可配置为主机系统401的客户端装置,而处理模块411至415的第二部分可作为独立系统配置为相对于主机系统401的对等系统。参考图6,在该示例中,处理模块413已配置为主机节点,而处理模块411至412和414至415配置为客户端装置。在该示例中,处理模块411和414是主机系统401的客户端装置,从而形成系统601。处理模块412和415是作为主机节点的处理模块413的客户端装置,从而形成系统602。系统601和602是并行操作或独立操作的对等系统。主机节点413可以经由主机到主机连接与外部主机系统401通信。
根据另一实施方式,处理模块可配置为主机节点和客户端节点。例如,处理模块可配置为外部主机系统的客户端装置,并且相同的处理模块也配置为已配置为客户端节点的另一处理模块的主机节点。
图7A是示出根据一个实施方式的数据处理系统的系统配置的示例的框图。参考图7A,在该示例中,处理模块412已配置为客户端节点和主机节点。在一个实施方式中,处理模块412配置为外部主机系统401的客户端节点。此外,处理模块412还配置为相对于扩展装置402内的其他客户端节点的主机节点。作为客户端节点,处理模块412可以从主机系统401接收指令和数据,并响应于指令对数据执行数据处理操作。另外,处理模块412可以将任务分配给其客户端节点,例如处理模块415。例如,从主机系统401接收的数据可以是在自动驾驶期间捕获和记录的数据日志的数据,其捕获ADV的驾驶统计数据(例如,在不同时间点时发出的命令和车辆的响应)。数据通过处理模块412(作为主机系统401的客户端节点)进行处理,例如数据压缩和/或加密。然后,将经处理的数据从处理模块412(作为主机节点)传输至作为存储模块的处理模块415(作为客户端节点),以将数据存储在存储装置中。
图7B示出了如图7A所示的系统的具体配置的示例。参考图7B,在一个实施方式中,处理模块412包括联接至交换机装置410的端点端口701和根端口702。当主机系统401将数据发送至其在扩展装置402中的客户端装置(即,处理模块412)时,处理模块412通过路径711从其端点端口701接收数据。然后,处理模块412可以对数据进行处理,诸如数据压缩或数据加密。然后,处理模块412将经处理的数据经由路径712从其根端口702传输至其客户端节点(即,处理节点415),并且将相应的上行链路传输至交换机装置41。然后,交换机装置410经由路径713将经处理的数据路由至处理模块415。可替代地,根据替代性实施方式,处理模块412可以经由对等连接(例如,对等DMA交互)将经处理的数据发送至处理模块415。
图8是示出根据一个实施方式的在主机系统与扩展装置之间路由数据的过程的流程图。参考图8,在操作801中,主机系统401将指令和数据传输至扩展装置402的交换机装置410。交换机装置410经由操作802将数据重新路由至配置为主机/客户端节点的处理模块412。在操作803中,处理模块412对数据执行数据处理操作,诸如数据压缩或数据加密。在操作804中,处理模块412将经处理的数据传输至交换机装置410,交换机装置410转而经由操作805将经处理的数据重新路由至处理模块415,其中处理模块415已配置为处理模块412的客户端装置。在操作806中,处理模块415对数据执行另一数据处理操作(例如,将数据存储在永久存储装置中)。
应注意,如上文示出和描述的部件中的一些或全部可以在软件、硬件或其组合中实施。例如,此类部件可以实施为安装并存储在永久性存储装置中的软件,所述软件可以通过处理器(未示出)加载在存储器中并在存储器中执行以实施本申请全文中所述的过程或操作。替代地,此类部件可以实施为编程或嵌入到专用硬件(诸如,集成电路(例如,专用集成电路或ASIC)、数字信号处理器(DSP)或现场可编程门阵列(FPGA))中的可执行代码,所述可执行代码可以经由来自应用的相应驱动程序和/或操作系统来访问。此外,此类部件可以实施为处理器或处理器内核中的特定硬件逻辑,作为可由软件部件通过一个或多个特定指令访问的指令集的一部分。
前述详细描述中的一些部分已经根据在计算机存储器内对数据位的运算的算法和符号表示而呈现。这些算法描述和表示是数据处理领域中的技术人员所使用的方式,以将他们的工作实质最有效地传达给本领域中的其他技术人员。本文中,算法通常被认为是导致所期望结果的自洽操作序列。这些操作是指需要对物理量进行物理操控的操作。
然而,应当牢记,所有这些和相似的术语均旨在与适当的物理量关联,并且仅仅是应用于这些量的方便标记。除非在以上讨论中以其它方式明确地指出,否则应当了解,在整个说明书中,利用术语(诸如所附权利要求书中所阐述的术语)进行的讨论是指计算机系统或相似电子计算装置的动作和处理,所述计算机系统或电子计算装置操控计算机系统的寄存器和存储器内的表示为物理(电子)量的数据,并将所述数据变换成计算机系统存储器或寄存器或者其它此类信息存储设备、传输或显示装置内相似地表示为物理量的其它数据。
本公开的实施方式还涉及用于执行本文中的操作的设备。这种计算机程序被存储在非暂时性计算机可读介质中。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机构。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪存存储器装置)。
前述附图中所描绘的过程或方法可以由处理逻辑来执行,所述处理逻辑包括硬件(例如,电路、专用逻辑等)、软件(例如,体现在非暂时性计算机可读介质上)或两者的组合。尽管所述过程或方法在上文是依据一些顺序操作来描述的,但是应当了解,所述操作中的一些可以按不同的顺序执行。此外,一些操作可以并行地执行而不是顺序地执行。
本公开的实施方式并未参考任何特定的编程语言进行描述。应认识到,可以使用多种编程语言来实施如本文描述的本公开的实施方式的教导。
在以上的说明书中,已经参考本公开的具体示例性实施方式对本发明的实施方式进行了描述。将显而易见的是,在不脱离所附权利要求书中阐述的本发明的更宽泛精神和范围的情况下,可以对本公开作出各种修改。因此,应当在说明性意义而不是限制性意义上来理解本说明书和附图。

Claims (20)

1.在自动驾驶中使用的数据处理系统,所述系统包括:
主机系统,具有一个或多个主机处理器和存储指令的存储器,所述指令在由所述主机处理器运行时,致使所述主机处理器执行自动驾驶操作以驾驶自动驾驶车辆(ADV);以及
扩展装置,通过总线联接至所述主机系统,以从所述主机系统下载所述自动驾驶操作中的至少一部分,其中,所述扩展装置包括:
交换机装置,以及
多个处理模块,联接至所述交换机装置,所述处理模块中的每个均配置成执行从所述主机系统下载的所述自动驾驶操作中的至少一个,其中,所述处理模块中的至少一个能够配置为响应于从所述主机系统或主机处理节点接收的指令而执行动作的客户端处理节点,以将任务分配给位于所述扩展装置内的另一客户端节点。
2.根据权利要求1所述的系统,其中,在所述扩展装置的初始化期间,所述扩展装置的固件配置为检测所述主机系统联接至所述扩展装置,以及其中,响应于所述检测,所述固件将所述至少一个处理模块配置为所述主机系统的客户端装置,以使得所述主机系统能够将所述自动驾驶操作中的至少一个下载到所述至少一个处理模块。
3.根据权利要求2所述的系统,其中,所述固件配置成在所述主机系统的初始化期间对总线枚举过程作出响应,并且配置成对所述至少一个处理模块的一个或多个控制寄存器进行配置,以使得所述至少一个处理模块呈现为所述主机系统的客户端装置。
4.根据权利要求1所述的系统,其中,在所述扩展装置的初始化期间,所述扩展装置的固件配置成检测所述主机系统没有联接至所述扩展装置,以及其中,响应于所述检测,所述固件将所述处理模块中的第一处理模块配置为位于所述扩展装置内的主机处理节点,并将所述处理模块中的其余的处理模块配置为所述第一处理模块的客户端处理节点。
5.根据权利要求4所述的系统,其中,所述扩展装置配置为独立系统,其中,所述第一处理模块配置为将任务分配给所述其余的处理模块以由所述其余的处理模块执行所述任务。
6.根据权利要求1所述的系统,其中,所述多个处理模块包括配置为主机节点的第一处理模块、配置为所述主机系统的客户端节点的第一组一个或多个处理模块以及配置为所述第一处理模块的客户端节点的第二组一个或多个处理模块。
7.根据权利要求6所述的系统,其中,所述主机系统和所述第一组一个或多个处理模块作为第一处理系统进行操作,以及其中,所述第一处理模块和所述第二组一个或多个处理模块作为与所述第一处理系统并行的第二处理系统进行操作。
8.根据权利要求6所述的系统,其中,所述第一处理模块还配置为所述主机系统的第一客户端节点,其中,响应于经由所述交换机装置从所述主机系统接收的请求,所述第一处理模块执行第一操作,并且,经由所述交换机装置将所述第一操作的结果传输至第二处理模块,以及其中,所述第二处理模块执行第二操作。
9.根据权利要求8所述的系统,其中,所述第二处理模块配置为所述第一处理模块的客户端节点。
10.根据权利要求1所述的系统,其中,所述多个处理模块包括配置为所述主机系统的客户端节点的第一处理模块和第二处理模块,其中,响应于经由所述交换机装置从所述主机系统接收的数据,所述第一处理模块配置成对所述数据执行第一数据处理操作并经由对等传送将所处理的数据传送给所述第二处理模块,以及其中,所述第二处理模块对所处理的数据执行第二数据处理操作。
11.根据权利要求10所述的系统,其中,所述第一处理模块对从所述主机系统接收的数据执行数据压缩或数据加密,以及其中,所述第二处理模块是用于将由所述第一处理模块处理的数据存储在永久性存储装置中的存储模块。
12.根据权利要求1所述的系统,其中,所述总线是外围部件接口快速(PCIe)总线,其中,所述交换机装置是PCIe兼容交换机,以及其中,所述处理模块中的至少一个包括中央处理单元(CPU)、通用处理单元(GPU)、现场可编程门阵列(FPGA)或片上系统(SoC)。
13.在自动驾驶中使用的扩展装置,所述装置包括:
主机接口,待联接至主机系统,所述主机系统具有一个或多个主机处理器和存储指令的存储器,所述指令在由所述主机处理器运行时,致使所述主机处理器执行自动驾驶操作以驾驶自动驾驶车辆(ADV);
交换机装置,联接至所述主机接口;以及
多个处理模块,联接至所述交换机装置,所述处理模块中的每个均配置成执行从所述主机系统下载的自动驾驶操作中的至少一个,其中,所述处理模块中的至少一个能够配置为响应于从所述主机系统或主机处理节点接收的指令而执行动作的客户端处理节点,以将任务分配给位于所述扩展装置内的另一客户端节点。
14.根据权利要求13所述的装置,其中,在所述扩展装置的初始化期间,所述扩展装置的固件配置为检测所述主机系统联接至所述扩展装置,以及其中,响应于所述检测,所述固件将所述至少一个处理模块配置为所述主机系统的客户端装置,以使得所述主机系统能够将所述自动驾驶操作中的至少一个下载到所述至少一个处理模块。
15.根据权利要求14所述的装置,其中,所述固件配置成在所述主机系统的初始化期间对总线枚举过程作出响应,并且对所述至少一个处理模块的一个或多个控制寄存器进行配置,以使得所述至少一个处理模块呈现为所述主机系统的客户端装置。
16.根据权利要求13所述的装置,其中,在所述扩展装置的初始化期间,所述扩展装置的固件配置成检测所述主机系统没有联接至所述扩展装置,以及其中,响应于所述检测,所述固件将所述处理模块中的第一处理模块配置为位于所述扩展装置内的主处理节点,并将所述处理模块中的其余的处理模块配置为所述第一处理模块的客户端处理节点。
17.根据权利要求16所述的装置,其中,所述扩展装置配置为独立系统,其中,所述第一处理模块配置为将任务分配给所述其余的处理模块以由所述其余的处理模块执行所述任务。
18.根据权利要求13所述的装置,其中,所述多个处理模块包括配置为主机节点的第一处理模块、配置为所述主机系统的客户端节点的第一组一个或多个处理模块以及配置为所述第一处理模块的客户端节点的第二组一个或多个处理模块。
19.根据权利要求18所述的装置,其中,所述主机系统和所述一个或多个第一组处理模块作为第一处理系统进行操作,以及其中,所述第一处理模块和所述第二组一个或多个处理模块作为与所述第一处理系统并行的第二处理系统进行操作。
20.根据权利要求18所述的装置,其中,所述第一处理模块还配置为所述主机系统的第一客户端节点,其中,响应于经由所述交换机装置从所述主机系统接收的请求,所述第一处理模块执行第一操作,并且,经由所述交换机装置将所述第一操作的结果传输至第二处理模块,以及其中,所述第二处理模块执行第二操作。
CN201910859019.4A 2018-12-31 2019-09-11 具有灵活主机和客户端配置的自动驾驶计算与存储扩展装置 Active CN111399495B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/237,192 US11353870B2 (en) 2018-12-31 2018-12-31 Autonomous driving computing and storage expansion device with flexible host and client configuration
US16/237,192 2018-12-31

Publications (2)

Publication Number Publication Date
CN111399495A true CN111399495A (zh) 2020-07-10
CN111399495B CN111399495B (zh) 2023-10-10

Family

ID=71121999

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910859019.4A Active CN111399495B (zh) 2018-12-31 2019-09-11 具有灵活主机和客户端配置的自动驾驶计算与存储扩展装置

Country Status (3)

Country Link
US (1) US11353870B2 (zh)
JP (1) JP6928633B2 (zh)
CN (1) CN111399495B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114327645A (zh) * 2020-10-12 2022-04-12 宝能汽车集团有限公司 整车计算能力的扩容方法、装置、车辆和存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11520331B2 (en) * 2018-12-28 2022-12-06 Intel Corporation Methods and apparatus to update autonomous vehicle perspectives
US11353870B2 (en) * 2018-12-31 2022-06-07 Baidu Usa Llc Autonomous driving computing and storage expansion device with flexible host and client configuration
US11416959B1 (en) * 2020-02-10 2022-08-16 Zoox, Inc. Vision architecture

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515178A (zh) * 2009-04-08 2009-08-26 南京航空航天大学 基于can总线的主从负担式余度无人飞机自动驾驶仪
CN103780697A (zh) * 2014-01-23 2014-05-07 广州睿嵌电子技术有限公司 车载电子处理单元公共平台系统及其数据通讯方法
US8849494B1 (en) * 2013-03-15 2014-09-30 Google Inc. Data selection by an autonomous vehicle for trajectory modification
CN104820424A (zh) * 2015-05-15 2015-08-05 山东省计算中心(国家超级计算济南中心) 基于北斗导航的电动汽车自动驾驶系统及其控制方法
US20170060129A1 (en) * 2015-05-13 2017-03-02 Uber Technologies, Inc. Autonomous vehicle operated with guide assistance of human driven vehicles
CN106951180A (zh) * 2016-01-07 2017-07-14 三星电子株式会社 数据存储装置以及包括数据存储装置的数据处理系统
CN107908186A (zh) * 2017-11-07 2018-04-13 驭势科技(北京)有限公司 用于控制无人驾驶车辆运行的方法及系统

Family Cites Families (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4439491B2 (ja) 2006-05-24 2010-03-24 株式会社ソニー・コンピュータエンタテインメント マルチグラフィックスプロセッサシステム、グラフィックスプロセッサおよびデータ転送方法
WO2011079215A2 (en) * 2009-12-23 2011-06-30 Proterra Inc. Charging stations for electric vehicles
EP2261812B1 (en) * 2009-06-09 2015-08-12 Harman Becker Automotive Systems GmbH Vehicle computing module
US10254764B2 (en) * 2016-05-31 2019-04-09 Peloton Technology, Inc. Platoon controller state machine
US9841761B2 (en) * 2012-05-04 2017-12-12 Aeryon Labs Inc. System and method for controlling unmanned aerial vehicles
US9384668B2 (en) * 2012-05-09 2016-07-05 Singularity University Transportation using network of unmanned aerial vehicles
US20140082238A1 (en) * 2012-09-14 2014-03-20 Nvidia Corporation Method and system for implementing a control register access bus
KR101883475B1 (ko) * 2013-02-28 2018-07-31 한화지상방산 주식회사 소형통합제어장치
US10332405B2 (en) * 2013-12-19 2019-06-25 The United States Of America As Represented By The Administrator Of Nasa Unmanned aircraft systems traffic management
US20160012465A1 (en) * 2014-02-08 2016-01-14 Jeffrey A. Sharp System and method for distributing, receiving, and using funds or credits and apparatus thereof
EP3748452B1 (en) * 2014-05-01 2023-06-07 Alakai Technologies Corporation Control method for a clean fuel electric multirotor aircraft for personal air transportation and manned or unmanned operation
WO2016019567A1 (en) * 2014-08-08 2016-02-11 SZ DJI Technology Co., Ltd. Systems and methods for uav battery exchange
JP6395835B2 (ja) * 2014-08-08 2018-09-26 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd Uavのバッテリー電源バックアップシステムおよび方法
US9754496B2 (en) * 2014-09-30 2017-09-05 Elwha Llc System and method for management of airspace for unmanned aircraft
JP6425968B2 (ja) * 2014-10-29 2018-11-21 ヤンマー株式会社 ヘリコプター
US9892296B2 (en) * 2014-11-12 2018-02-13 Joseph E. Kovarik Method and system for autonomous vehicles
US9479337B2 (en) * 2014-11-14 2016-10-25 Motorola Solutions, Inc. Method and apparatus for deriving a certificate for a primary device
CN106103281B (zh) * 2014-11-21 2019-02-26 深圳市大疆创新科技有限公司 管理无人飞行器的系统和方法
US9616773B2 (en) * 2015-05-11 2017-04-11 Uber Technologies, Inc. Detecting objects within a vehicle in connection with a service
US10453348B2 (en) * 2015-06-15 2019-10-22 ImageKeeper LLC Unmanned aerial vehicle management
JP6650242B2 (ja) * 2015-10-16 2020-02-19 日立オートモティブシステムズ株式会社 自動運転システム、自動運転制御方法、データecuおよび自動運転ecu
US9606539B1 (en) * 2015-11-04 2017-03-28 Zoox, Inc. Autonomous vehicle fleet service and system
US9632502B1 (en) * 2015-11-04 2017-04-25 Zoox, Inc. Machine-learning systems and techniques to optimize teleoperation and/or planner decisions
US10712160B2 (en) * 2015-12-10 2020-07-14 Uatc, Llc Vehicle traction map for autonomous vehicles
US9840256B1 (en) * 2015-12-16 2017-12-12 Uber Technologies, Inc. Predictive sensor array configuration system for an autonomous vehicle
US9841763B1 (en) * 2015-12-16 2017-12-12 Uber Technologies, Inc. Predictive sensor array configuration system for an autonomous vehicle
US9764703B2 (en) * 2016-01-22 2017-09-19 International Business Machines Corporation Power source element detection and monitoring
US9714012B1 (en) * 2016-01-22 2017-07-25 International Business Machines Corporation Power source element replacement during vehicle operation
DE102016103042A1 (de) * 2016-02-22 2017-08-24 Ipt Technology Gmbh Spuleneinheit einer Vorrichtung zur induktiven Übertragung elektrischer Energie
US9998854B2 (en) * 2016-04-11 2018-06-12 Qualcomm Incorporated Access point mobility indication
US10023309B2 (en) * 2016-04-15 2018-07-17 James Brown Remote controlled aircraft
US20180003511A1 (en) * 2016-07-01 2018-01-04 Uber Technologies, Inc. Autonomous vehicle localization using submaps
US10640111B1 (en) * 2016-09-07 2020-05-05 Waymo Llc Speed planning for autonomous vehicles
US10678240B2 (en) * 2016-09-08 2020-06-09 Mentor Graphics Corporation Sensor modification based on an annotated environmental model
US9815633B1 (en) * 2016-09-19 2017-11-14 Amazon Technologies, Inc. Automated fulfillment of unmanned aerial vehicles
US10467685B1 (en) * 2016-10-01 2019-11-05 Stuart Brisson System and device for rental dispensing of UAVs
US10614515B1 (en) * 2016-10-01 2020-04-07 Stuart Brisson System for rental dispensing of UAVs
US10452068B2 (en) * 2016-10-17 2019-10-22 Uber Technologies, Inc. Neural network system for autonomous vehicle control
US10620011B2 (en) * 2016-11-10 2020-04-14 International Business Machines Corporation Autonomous vehicle routing
US10635621B2 (en) * 2016-11-16 2020-04-28 Baidu Usa Llc Apparatus for controlling and operating an autonomous vehicle
US10377260B2 (en) * 2017-01-13 2019-08-13 Uber Technologies, Inc. Charge control system for mobile energy storage fleet
US10288439B2 (en) * 2017-02-22 2019-05-14 Robert D. Pedersen Systems and methods using artificial intelligence for routing electric vehicles
US10384692B2 (en) * 2017-03-16 2019-08-20 Amazon Technologies, Inc. Demand-based distribution of items using intermodal carriers and unmanned aerial vehicles
US9718564B1 (en) * 2017-03-16 2017-08-01 Amazon Technologies, Inc. Ground-based mobile maintenance facilities for unmanned aerial vehicles
US10421542B2 (en) * 2017-03-16 2019-09-24 Amazon Technologies, Inc. Mobile fulfillment centers with intermodal carriers and unmanned aerial vehicles
WO2018176435A1 (en) * 2017-04-01 2018-10-04 Intel Corporation Execution unit-shared hybrid technique for accelerated computing on graphics processors
US20180285734A1 (en) * 2017-04-01 2018-10-04 Intel Corporation Neural network calibration mechanism
US10346944B2 (en) * 2017-04-09 2019-07-09 Intel Corporation Machine learning sparse computation mechanism
US11269643B2 (en) * 2017-04-09 2022-03-08 Intel Corporation Data operations and finite state machine for machine learning via bypass of computational tasks based on frequently-used data values
US11360808B2 (en) * 2017-04-09 2022-06-14 Intel Corporation Efficient thread group scheduling
US10719760B2 (en) * 2017-04-09 2020-07-21 Intel Corporation Neural network scheduling mechanism
US10489877B2 (en) * 2017-04-24 2019-11-26 Intel Corporation Compute optimization mechanism
US10108850B1 (en) * 2017-04-24 2018-10-23 Intel Corporation Recognition, reidentification and security enhancements using autonomous machines
US10403003B2 (en) * 2017-04-24 2019-09-03 Intel Corporation Compression mechanism
US10417734B2 (en) * 2017-04-24 2019-09-17 Intel Corporation Compute optimization mechanism for deep neural networks
US10497084B2 (en) * 2017-04-24 2019-12-03 Intel Corporation Efficient sharing and compression expansion of data across processing systems
US10679312B2 (en) * 2017-04-25 2020-06-09 Lyft Inc. Dynamic autonomous vehicle servicing and management
US10346166B2 (en) * 2017-04-28 2019-07-09 Intel Corporation Intelligent thread dispatch and vectorization of atomic operations
US10410115B2 (en) * 2017-04-28 2019-09-10 Intel Corporation Autonomous machines through cloud, error corrections, and predictions
US11307580B2 (en) * 2017-05-18 2022-04-19 Meter Feeder, Inc. Autonomous vehicle parking system
US10600322B2 (en) * 2017-06-21 2020-03-24 International Business Machines Corporation Management of mobile objects
US10489881B2 (en) 2017-06-30 2019-11-26 H3 Platform Inc. Direct memory access for co-processor memory
US10710633B2 (en) * 2017-07-14 2020-07-14 Nio Usa, Inc. Control of complex parking maneuvers and autonomous fuel replenishment of driverless vehicles
US10899473B2 (en) * 2017-07-17 2021-01-26 Christopher Julian Scherz Docking station for unmanned aerial vehicles
US10369893B2 (en) * 2017-08-07 2019-08-06 Cisco Technology, Inc. Intelligent vehicle control for wireless power transfer (WPT)
US10627825B2 (en) * 2017-11-22 2020-04-21 Waymo Llc Using discomfort for speed planning in autonomous vehicles
US10974911B2 (en) * 2017-12-22 2021-04-13 Wing Aviation Llc Replenishment station for aerial vehicle with robotic device and conveyor
US11270201B2 (en) * 2017-12-29 2022-03-08 Intel Corporation Communication optimizations for distributed machine learning
US20190303822A1 (en) * 2018-03-30 2019-10-03 The Ago Companies LLC Multi-User Asset Sharing and Risk Assessment System and Method
US10946866B2 (en) * 2018-03-31 2021-03-16 Intel Corporation Core tightly coupled lockstep for high functional safety
US11928310B2 (en) * 2018-04-24 2024-03-12 Dial House, LLC Vehicle systems and interfaces and related methods
US10780975B2 (en) * 2018-04-27 2020-09-22 Wing Aviation Llc Clip-on propeller mount
US10836366B2 (en) * 2018-05-31 2020-11-17 Ford Global Technologies, Llc Methods and apparatus for automatic calibration of electronic trailer brake gain
US10532815B1 (en) * 2018-06-14 2020-01-14 Kitty Hawk Corporation Two vehicle transportation system
US10703480B1 (en) * 2018-06-14 2020-07-07 Kitty Hawk Corporation Modular personal transportation system
US10493863B1 (en) * 2018-06-14 2019-12-03 Kitty Hawk Corporation Charge related processing for a personal transportation system with removable battery
US10508756B1 (en) * 2018-06-19 2019-12-17 Super Sod, Llc Wire guard device
US10499446B1 (en) * 2018-08-17 2019-12-03 At&T Intellectual Property I, L.P. Instantiating a slice of a 5G or other next generation service network in an underserved area
GB2580147B (en) * 2018-12-21 2021-12-08 Mtd Products Inc Outdoor power equipment machine with presence detection
US11241934B2 (en) * 2018-12-28 2022-02-08 Intel Corporation Techniques to optimize vehicular systems for occupant presence and condition
US11069123B2 (en) * 2018-12-28 2021-07-20 Intel Corporation Cloud-based realtime raytracing
US11353870B2 (en) * 2018-12-31 2022-06-07 Baidu Usa Llc Autonomous driving computing and storage expansion device with flexible host and client configuration
JP7058233B2 (ja) * 2019-02-27 2022-04-21 本田技研工業株式会社 車両制御装置、車両制御方法、およびプログラム
US11287835B2 (en) * 2019-03-21 2022-03-29 Wing Aviation Llc Geo-fiducials for UAV navigation
CN109969013A (zh) * 2019-04-02 2019-07-05 贵州翰凯斯智能技术有限公司 一种智能驾驶电动汽车的自动充电系统及充电方法
KR20190100099A (ko) * 2019-08-08 2019-08-28 엘지전자 주식회사 차량의 충전 서비스 제공 방법
KR102195939B1 (ko) * 2019-08-20 2020-12-30 엘지전자 주식회사 자율주행 차량의 배터리 충전 방법 및 이를 위한 장치
US10953754B1 (en) * 2019-09-05 2021-03-23 Beta Air, Llc Systems and methods for restricting power to a load to prevent engaging circuit protection
US10694331B1 (en) * 2019-09-24 2020-06-23 International Business Machines Corporation Mobile device navigation with counterpart device identification
KR20210052714A (ko) * 2019-10-30 2021-05-11 엘지전자 주식회사 이동형 충전 서비스 제공 시스템, 장치 및 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515178A (zh) * 2009-04-08 2009-08-26 南京航空航天大学 基于can总线的主从负担式余度无人飞机自动驾驶仪
US8849494B1 (en) * 2013-03-15 2014-09-30 Google Inc. Data selection by an autonomous vehicle for trajectory modification
CN103780697A (zh) * 2014-01-23 2014-05-07 广州睿嵌电子技术有限公司 车载电子处理单元公共平台系统及其数据通讯方法
US20170060129A1 (en) * 2015-05-13 2017-03-02 Uber Technologies, Inc. Autonomous vehicle operated with guide assistance of human driven vehicles
CN104820424A (zh) * 2015-05-15 2015-08-05 山东省计算中心(国家超级计算济南中心) 基于北斗导航的电动汽车自动驾驶系统及其控制方法
CN106951180A (zh) * 2016-01-07 2017-07-14 三星电子株式会社 数据存储装置以及包括数据存储装置的数据处理系统
CN107908186A (zh) * 2017-11-07 2018-04-13 驭势科技(北京)有限公司 用于控制无人驾驶车辆运行的方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114327645A (zh) * 2020-10-12 2022-04-12 宝能汽车集团有限公司 整车计算能力的扩容方法、装置、车辆和存储介质

Also Published As

Publication number Publication date
CN111399495B (zh) 2023-10-10
US11353870B2 (en) 2022-06-07
JP2020109619A (ja) 2020-07-16
US20200209856A1 (en) 2020-07-02
JP6928633B2 (ja) 2021-09-01

Similar Documents

Publication Publication Date Title
US11269352B2 (en) System for building a vehicle-to-cloud real-time traffic map for autonomous driving vehicles (ADVS)
US11592570B2 (en) Automated labeling system for autonomous driving vehicle lidar data
CN111399495B (zh) 具有灵活主机和客户端配置的自动驾驶计算与存储扩展装置
CN112540592A (zh) 用于确保安全的具有双自主驾驶系统的自主驾驶车辆
CN113448329B (zh) 减少用于规划自主驾驶车辆的路径的障碍物的方法及系统
JP2022041923A (ja) 接続されたデータ分析プラットフォームを用いた車両経路指定
CN113129624B (zh) 交通堵塞情况下的最快车道确定算法
CN112238862B (zh) 用于自主驾驶平台的开放和安全监视系统
US9964952B1 (en) Adaptive vehicle motion control system
US11260875B2 (en) Systems and methods for road surface dependent motion planning
CN113815640B (zh) 用于具有不同速度限制的车道的车道变更系统
CN113442945B (zh) 用于自动驾驶车辆的使用反馈的增量式侧向控制系统
CN111103876A (zh) 自动驾驶车辆的基于雷达通信的扩展感知
CN113748059B (zh) 离线和在线解决方案相结合的停车轨迹生成方法
KR102359497B1 (ko) 단일 차량 동작용으로 설계된 자율 주행 시스템에 따른 차량 플래툰 구현
US12017681B2 (en) Obstacle prediction system for autonomous driving vehicles
CN113753071B (zh) 预防减速规划
US20240051569A1 (en) Long-term evolution computing platform for autonomous vehicles based on shell and nut architecture
CN113060159B (zh) 修改电动车辆的加速度特性的方法、装置和系统
US20240353521A1 (en) Dynamic signal transfer configuration for driverless vehicle remote monitoring
WO2024152345A1 (en) Peripheral component interconnect express device reset for autonomous driving systems
US20240045027A1 (en) Adaptive lidar data processing for driverless vehicle
WO2024036618A1 (en) Dynamic signal transfer configuration for driverless vehicle remote monitoring
CN113353005A (zh) 用于处理自动驾驶系统与车辆之间的通信延迟的系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant