IP Library › Granted Patent US 11,353,870
Granted Patent B2
US 11,353,870 · App. 16/237,192 · Granted Jun 7, 2022

Autonomous driving computing and storage expansion device with flexible host and client configuration

Inventors: Davy Huang (Sunnyvale, CA); Ji Li (Sunnyvale, CA); Manjiang Zhang (Sunnyvale, CA); Ran Zhang (Sunnyvale, CA); Youling Zou (Sunnyvale, CA); Xu Zhou (Sunnyvale, CA)
Assignee: BAIDU USA LLC
G05D1/0088B60R16/0231H04L12/40195G05D2201/0213H04L2012/40273
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,353,870
App. No.
16/237,192
Granted
Jun 7, 2022
Kind
B2
Abstract

A data processing system includes a host system and one or more expansion devices coupled to the host system over a bus. The host system may include one or more processors and a memory storing instructions, which when executed, cause the processors to perform autonomous driving operations to drive an autonomous driving vehicle (ADV). Each expansion device includes a switch device and one or more processing modules coupled to the switch device. Each processing module can be configured to perform at least one of the autonomous driving operations offloaded from the host system. At least one of the processing modules can be configured as a client node to perform an action in response to an instruction received from the host system. Alternatively, it can be configured as a host node to distribute a task to another client node within the expansion device. This host node in the expansion device can further cooperate with the host system via a host-to-host connection.

Claims (29)

1. A data processing system utilized in autonomous driving, the system comprising:

a host system having one or more host processors and a memory storing instructions, which when executed by the host processors, cause to host processors to perform autonomous driving operationsto drive an autonomous driving vehicle (ADV); and

an expansion device that comprises

a peripheral component express (PCIe) compatible switch device, and

a plurality of processing modules coupled to the switch device, wherein in response to firmware of the expansion device detecting that the host system is coupled to the expansion device over a PCIe bus, the firmware of the expansion device configures at least one of the plurality of processing modules as a client device to the host system, such that the host system can offload at least one of the autonomous driving operations to the at least one of the plurality of processing modules; and

wherein in response to the firmware of the expansion device detecting that the host system is not coupled to the host system over the PCIe bus, the firmware of the expansion device configures a first of the processing modules as a host node within the expansion device and configures remaining ones of the processing modules as client nodes to the first processing module such that the expansion device operates as a standalone system ora peer to the host system.

2. The system of claim 1 , wherein detection that the host system is coupled to the expansion device is performed during an initialization of the expansion device.

3. The system of claim 2 , wherein the firmware is configured to respond to a bus enumeration process during an initialization of the host system and to configure one or more control registers of the at least one processing module, such that the at least one processing module appears as a client device to the host system.

4. The system of claim 1 , wherein detection that the host system is not coupled to the expansion device is performed during an initialization of the expansion device.

5. The system of claim 4 , wherein the expansion device is configured as the standalone system such that the first processing module is configured to distribute tasks to the remaining processing modules to be performed by the remaining processing modules.

6. The system of claim 1 , wherein a first set of one or more processing modules configured as client nodes to the host system, and wherein a second set of one or more processing modules configured as client nodes to the first processing module.

7. The system of claim 6 , wherein the host system and the first set of processing modules operate as a first processing system, and wherein the first processing module and the second set of processing modules operate as a second processing system in parallel to the first processing system.

8. The system of claim 6 , wherein the first processing module is further configured as a first client node to the host system, wherein in response to a request received from the host system via the switch device, the first processing module performs a first operation and transmits a result of the first operation to a second processing module via the switch device, and wherein the second processing module performs a second operation.

9. The system of claim 8 , wherein the second processing module is configured as a client node to the first processing module.

10. The system of claim 1 , wherein the plurality of processing modules comprises the first processing module and a second processing module configured as client nodes to the host system, wherein in response to data received from the host system via the switch device, the first processing module is configured to perform a first data processing operation on the data and to transfer the processed data to the second processing module via a peer-to-peer transfer, and wherein the second processing module performs a second data processing operation on the processed data.

11. The system of claim 10 , wherein the first processing module performs a data compression or encryption on data received from the host system, and wherein the second processing module is a storage module to store the data processed by the first processing module in a persistent storage device.

12. The system of claim 1 , wherein at least one of the processing modules comprises a central processing unit (CPU), a general processing unit (GPU), a field programmable gate array (FPGA), or a system on a chip (SoC).

13. An expansion device utilized in autonomous driving, the device comprising:

a host interface to be coupled to a host system, the host system having one or more host processors and a memory storing instructions, which when executed by the host processors, cause to the host processors to perform autonomous driving operations to drive an autonomous driving vehicle (ADV)

a switch device coupled to the host interface, and

a plurality of processing modules coupled to the switch device, wherein in response to firmware of the expansion device detecting that the host system is coupled to the expansion device, the firmware of the expansion device configures at least one of the plurality of processing modules as a client device to the host system, such that the host system can offload at least one of the autonomous driving operations to the at least one of the processing modules, and

wherein in response to the firmware of the expansion device detecting that the host system is not coupled to the host system, the firmware of the expansion device configures a first of the processing modules as a host node within the expansion device and configures remaining ones of the processing modules as client nodes to the first processing module such that the expansion device operates as a standalone system or a peer to the host system.

14. The device of claim 13 , wherein detection that the host system is coupled to the expansion device is performed during an initialization of the expansion device.

15. The device of claim 14 , wherein the firmware is configured to respond to a bus enumeration process during an initialization of the host system and to configure one or more control registers of the at least one processing module, such that the at least one processing module appears as a client device to the host system.

16. The device of claim 13 , wherein detection that the host system is not coupled to the expansion device is performed during an initialization of the expansion device.

17. The device of claim 16 , wherein the expansion device is configured as the standalone system such that the first processing module is configured to distribute tasks to the remaining processing modules to be performed by the remaining processing modules.

18. The device of claim 13 , wherein a first set of one or more processing modules configured as client nodes to the host system, and wherein a second set of one or more processing modules configured as client nodes to the first processing module.

19. The device of claim 18 , wherein the host system and the first set of processing modules operate as a first processing system, and wherein the first processing module and the second set of processing modules operate as a second processing system in parallel to the first processing system.

20. The device of claim 18 , wherein the first processing module is further configured as a first client node to the host system, wherein in response to a request received from the host system via the switch device, the first processing module performs a first operation and transmits a result of the first operation to a second processing module via the switch device, and wherein the second processing module performs a second operation.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE TITLE OF THE APPLICATION LISTED IN THE ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON REEL 059392 FRAME 0854. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 8, 2022
From: ZOU, YOULING
To: BAIDU USA LLC
Reel/Frame 060329/0904 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TITLE OF THE APPLICATION LISTED IN THE ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON REEL 049650 FRAME 0468. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 25, 2022
From: HUANG, DAVY; LI, JI; ZHANG, MANJIANG; ZHOU, XU; ZHANG, RAN
To: BAIDU USA LLC
Reel/Frame 059510/0150 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2022
From: ZOU, YOULING
To: BAIDU USA LLC
Reel/Frame 059392/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2019
From: HUANG, DAVY; LI, JI; ZHANG, MANJIANG; ZHOU, XU; ZHANG, RAN
To: BAIDU USA LLC
Reel/Frame 049650/0468 →
Continuity (1)
Related Publication 20200209856A1 · Jul 2, 2020
Cited By (1)
US 12,617,563