IP Library Granted Patent US 9,578,139
Granted Patent B2
US 9,578,139 · App. 14/035,293 · Granted Feb 21, 2017

Method and system for architecture of a fast programmable transport demultiplexer using a double buffered approach

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 9,578,139
App. No.
14/035,293
Granted
Feb 21, 2017
Kind
B2
Abstract

A method and system are provided for architecture of a very fast programmable transport demultiplexer using a double-buffered approach. The method may involve utilizing a hardware assist block to process incoming packets, retrieve information about the packets, and write the retrieved information to a memory block. A firmware block may then utilize the information in memory to perform further processing on the packet data. The firmware and hardware assist blocks may work simultaneously so as to speed up the processing of the packet, which can comprise record data and/or audio/video data. The system may comprise the hardware assist block, the firmware assist block, and a memory block.

Claims (34)

1. A system for processing a plurality of packets comprising:

a first circuit configured to:

process at least a portion of a first packet to generate a first partially processed packet by determining at least a first format associated with the first packet;

extract information regarding the first packet based on the first format;

a memory configured to store the extracted information in a second format different from the first format; and

a second circuit configured to process the first partially processed packet based at least in part on the extracted information to generate a first processed packet while the first circuit is processing at least a portion of a second packet to generate a second partially processed packet.

2. The system according to claim 1 , wherein the second circuit is further configured to:

output the first processed packet via an output connection coupled to the system.

3. The system according to claim 1 , wherein the first format comprises a video data format.

4. The system according to claim 1 , wherein the second format comprises an intermediate data processing format.

5. The system according to claim 1 , wherein the second circuit is configured to process the first partially processed packet in accordance with a multimedia codec.

6. The system according to claim 1 , wherein the first and second packets comprise at least one of: a transport packet, a packet comprising audio or video data, a fixed length portion of raw PES or ES data, or an arbitrarily formatted data packet.

7. The system according to claim 1 , wherein the extracted information comprises at least one of: an address of a compare pattern, a compare pattern, a start of a PES header, an end of the PES header, a number of ES bytes in the packet, a number of payload bytes in the packet, a presence of packet errors, and a type of packet.

8. A computer-implemented method for processing a plurality of packets, comprising:

processing, by a first circuit, at least a portion of a first packet to generate a first partially processed packet by determining at least a first format associated with the first packet;

extracting, by the first circuit, information regarding the first packet based on the first format;

storing the extracted information in a second format different from the first format; and

processing, by a second circuit, the first partially processed packet based at least in part on the extracted information to generate a first processed packet while the first circuit is processing at least a portion of a second packet to generate a second partially processed packet.

9. The computer-implemented method of claim 8 , further comprising outputting the processed packet.

10. The computer-implemented method of claim 8 , wherein the first format comprises at least one of a video data format or an audio data format.

11. The computer-implemented method of claim 8 , wherein the second format comprises an intermediate data processing format.

12. The computer-implemented method of claim 8 , wherein processing the first partially processed packet is conducted according to a multimedia codec.

13. The computer-implemented method of claim 8 , wherein the extracted information comprises at least one of: an address of a compare pattern, a compare pattern, a start of a PES header, an end of the PES header, a number of ES bytes in the packet, a number of payload bytes in the packet, a presence of packet errors, and a type of packet.

14. The computer-implemented method of claim 8 , wherein the first and second packets comprise at least one of: a transport packet, a packet comprising audio or video data, a fixed length portion of raw PES or ES data, or an arbitrarily formatted data packet.

15. A non-transitory computer-readable medium having a program for processing a plurality of packets that, when executed by processing circuitry, causes the processing circuitry to:

process at least a portion of a first packet to generate a first partially processed packet by determining at least a first format associated with the first packet;

extract information regarding the first packet based on the first format;

store the extracted information in a second format different from the first format; and

process the first partially processed packet based at least in part on the extracted information to generate a first processed packet while processing at least a portion of a second packet to generate a second partially processed packet.

16. The non-transitory computer-readable medium of claim 15 , wherein the program further causes the processing circuitry to output the processed packet.

17. The non-transitory computer-readable medium of claim 15 , wherein the first format comprises at least one of a video data format or an audio data format.

18. The non-transitory computer-readable medium of claim 15 , wherein the second format comprises an intermediate data processing format.

19. The non-transitory computer-readable medium of claim 15 , wherein the extracted information comprises at least one of: an address of a compare pattern, a compare pattern, a start of a PES header, an end of the PES header, a number of ES bytes in the packet, a number of payload bytes in the packet, a presence of packet errors, and a type of packet.

20. The non-transitory computer-readable medium of claim 15 , wherein the first and second packets comprise at least one of: a transport packet, a packet comprising audio or video data, a fixed length portion of raw PES or ES data, or an arbitrarily formatted data packet.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
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 29, 2013
From: RODGERS, STEPHANE W.
To: BROADCOM CORPORATION
Reel/Frame 031497/0320 →