IP Library Patent Application 14923996
Patent Application
App. No. 14/923,996

Hardware-Accelerated Protocol Conversion in an Automotive Gateway Controller

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 None
App. No.
14/923,996
Abstract

A network gateway in a vehicle connects heterogeneous networks and buses within the vehicle. The gateway implements hardware acceleration to accomplish protocol translation, e.g., between CAN, LIN, Flexray, and Ethernet buses and networks. In particular, the gateway provides hardware accelerated packet filtering, header lookup, and packet aggregation features.

Claims (74)

1 . A gateway comprising:

multiple different communication interfaces comprising:

a protocol A interface;

a protocol B interface;

buffer circuitry coupled to the protocol A interface and configured to receive a message on the protocol A interface, the message comprising:

a message identifier; and

a message payload;

a translation table for a destination network interface, the translation table comprising a mapping from the message identifier to a pre-defined protocol B header for that message identifier; and

control circuitry configured to:

receive the pre-defined protocol B header;

receive the message payload;

prepare a protocol B message comprising the pre-defined protocol B header and the message payload; and

transmit the protocol B message through the protocol B interface.

2 . The gateway of claim 1 , further comprising:

a message filter configured to pass the message for processing to the control circuitry, when the message meets a filtering criterion.

3 . The gateway of claim 1 , further comprising:

routing circuitry configured to determine the destination network interface for the message.

4 . The gateway of claim 1 , where:

the translation table comprises a pointer to the pre-defined protocol B header.

5 . The gateway of claim 1 , where:

the translation table comprises an index input configured to receive the message identifier for locating the pre-defined protocol B header.

6 . The gateway of claim 1 , further comprising:

hash circuitry configured to generate an index into the translation table from the message identifier.

7 . The gateway of claim 6 , where:

the translation table is configured to identify the pre-defined protocol B header in response to the index obtained from the message identifier.

8 . The gateway of claim 1 , where:

the control circuitry is configured to aggregate the message payload with additional subsequently received message payloads into the protocol B message.

9 . The gateway of claim 8 , where:

the control circuitry is further configured to aggregate until a transmission criterion is satisfied.

10 . The gateway of claim 1 , where the control circuitry is further configured to read a configuration setting and selectively bypass a hardware acceleration option as specified by the configuration setting.

11 . A method comprising:

in a network gateway:

receiving a message on a protocol A interface, the message comprising a message identifier and a message payload;

determining to perform a translation of the message for transmission through a protocol B interface, where protocol A and protocol B are different communication protocols;

determining whether to apply hardware acceleration to the translation, and when applying the hardware acceleration:

routing the message to determine the protocol B interface for sending the message payload;

performing a lookup in a translation table for the protocol B interface based on the message identifier to identify a pre-defined protocol B header for that message identifier; and

receiving the pre-defined protocol B header;

receiving the message payload;

preparing a protocol B message comprising the pre-defined protocol B header and the message payload; and

transmitting the protocol B message through the protocol B interface.

12 . The method of claim 11 where determining to perform a translation comprises:

applying a filter to the message, the filter configured to pass only those messages that meet a filtering criterion.

13 . The method of claim 11 , further comprising:

when it is determined to not apply the hardware acceleration, submitting the message to a software protocol stack for processing.

14 . The method of claim 11 , further comprising:

defining a mapping in the translation table from an index to pre-defined protocol B headers.

15 . The method of claim 14 , where the index comprises the message identifier obtained from the message.

16 . The method of claim 14 , where the mapping points to a protocol B header pre-defined for the message identifier.

17 . The method of claim 11 , further comprising:

aggregating the message payload with additional subsequently received message payloads into the protocol B message for increased utilization of the protocol B interface compared to sending individual messages.

18 . The method of claim 17 , further comprising:

continuing the aggregating until an aggregation timer expires.

19 . A system comprising:

multiple different communication interfaces comprising:

a protocol A bus interface;

an Ethernet protocol network interface;

buffer circuitry coupled to the protocol A bus interface and configured to receive messages on the protocol A bus interface, the messages each comprising:

a message identifier; and

a message payload;

a message filter configured to determine:

which of the messages to pass for hardware-accelerated protocol translation;

which of the messages to discard; and

which of the messages to submit to a software protocol stack for handling;

a translation table comprising:

an index input configured to receive an a table index value; and

for each value of the index input, a pointer to a pre-defined Ethernet header;

control circuitry configured to:

receive a particular message passed by the message filter;

obtain a particular Ethernet header for the particular message through the translation table;

generate an Ethernet packet comprising the particular Ethernet header and data payload of the particular message; and

transmit the Ethernet packet through the Ethernet protocol network interface.

20 . The system of claim 19 , where:

the control circuitry is further configured to aggregate the message payload with additional subsequently received message payloads into the Ethernet packet until an aggregation criterion is reached.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF THE MERGER AND APPLICATION NOS. 13/237,550 AND 16/103,107 FROM THE MERGER PREVIOUSLY RECORDED ON REEL 047231 FRAME 0369. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 8, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048549/0113 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047231/0369 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2015
From: RAJAN, RAJESH PADINZHARA; CHOUDHURY, ABHIJIT KUMAR; PADHI, KABI PRAKASH; RAWAT, ANUJ; LOUKIANOV, DMITRII
To: BROADCOM CORPORATION
Reel/Frame 036903/0586 →