IP Library Granted Patent US 7,573,406
Granted Patent B2
US 7,573,406 · App. 10/985,501 · Granted Aug 11, 2009

System and method for decoding context adaptive variable length coding

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 7,573,406
App. No.
10/985,501
Granted
Aug 11, 2009
Kind
B2
Abstract

A system and method that process encoded data, wherein the encoded data is an encoded video stream. The encoded data may be buffered and the characteristics of the buffered encoded data may be determined and used to select a decoding table from a plurality of decoding tables. An encoded word may then be decoded using the selected decoding table. The output of the decoding table may be the corresponding decoded word and the size of the encoded word. The size of the encoded word may be utilized to shift the buffered encoded data. The decoded word may be sent to the appropriate portion of the system.

Claims (69)

1. A method that processes encoded data, wherein said encoded data is encoded with content adaptive variable length coding, the method comprising:

selecting decoding information based on characteristics of the encoded data with content adaptive variable length coding;

decoding the encoded data with content adaptive variable length coding using the selected decoding information; and

generating symbols based on the decoded data and the destination of the decoded data; and

wherein the generating the symbols based on the decoded data and the destination of the decoded data further comprises generating the symbols based on a prediction mode associated with the decoded data.

2. The method according to claim 1 wherein the encoded data comprises an encoded video stream.

3. The method according to claim 1 wherein the characteristics of the encoded data comprise the destination of the decoded data.

4. The method according to claim 1 wherein the characteristics of the encoded data comprise the method used for encoding the encoded data.

5. The method according to claim 1 wherein selecting decoding information comprises:

(a) buffering the encoded data;

(b) selecting a number of bits that comprise a code word;

(c) determining the characteristics of the code word;

(d) selecting decoding information based on the characteristics;

(e) shifting the buffered encoded data by the number of bits of the code word; and

(f) repeating (b) through (e) for a next code word.

6. The method according to claim 1 wherein the decoding information comprises lookup tables.

7. A system that processes encoded data, the system comprising:

at least one processor capable of selecting decoding information based on characteristics of the encoded data;

the at least one processor capable of decoding the encoded data using the selected decoding information;

the at least one processor capable of generating symbols based on the decoded data and the destination of the decoded data;

wherein the encoded data is variable length coded; and

wherein the destination is one of a motion compensator and a spatial predictor and wherein generating the symbols based on the decoded data and the destination of the decoded data further comprises generating the symbols based on the decoded data and whether the destination of the decoded data is a spatial predictor or a motion compensator.

8. The system according to claim 7 wherein the encoded data comprises an encoded video stream.

9. The system according to claim 7 wherein the characteristics of the encoded data comprise the destination of the decoded data.

10. The system according to claim 7 wherein the characteristics of the encoded data comprise the method used for encoding the encoded data.

11. The system according to claim 7 for selecting decoding information the system further comprising:

(a) the at least one processor capable of buffering the encoded data;

(b) the at least one processor capable of selecting a number of bits that comprise a code word;

(c) the at least one processor capable of determining the characteristics of the code word;

(d) the at least one processor capable of selecting decoding information based on the characteristics;

(e) the at least one processor capable of shifting the buffered encoded data by the number of bits of the code word; and

(f) the at least one processor capable of repeating (b) through (e) for a next code word.

12. The system according to claim 7 wherein the decoding information comprises lookup tables.

13. The system according to claim 7 further comprising memory.

14. The system according to claim 13 wherein the decoding information is stored in the memory.

15. The system of claim 7 , wherein the generating the symbols based on the decoded data and the destination of the decoded data further comprises generating the symbols based on a prediction mode associated with the decoded data.

16. The system of claim 7 , wherein generating the symbols further comprises generating side information.

17. The system of claim 16 , wherein the side information comprises motion vectors if the destination is a motion compensator.

18. A machine-readable storage having stored thereon, a computer program having at least one code section that processes encoded data, the at least one code section being executable by a machine for causing the machine to perform steps comprising:

selecting decoding information based on characteristics of the encoded data;

decoding the encoded data using the selected decoding information;

generating symbols based on the decoded data and the destination of the decoded data; and

wherein the encoded data is variable length coded; and

wherein generating the symbols further comprises generating side information, wherein the side information comprises motion vectors if the destination is a motion compensator.

19. The machine-readable storage according to claim 18 wherein the encoded data comprises an encoded video stream.

20. The machine-readable storage according to claim 18 wherein the characteristics of the encoded data comprise the destination of the decoded data.

21. The machine-readable storage according to claim 18 wherein the characteristics of the encoded data comprise the method used for encoding the encoded data.

22. The machine-readable storage according to claim 18 wherein the code for selecting decoding information comprises:

(a) code for buffering the encoded data;

(b) code for selecting a number of bits that comprise a code word;

(c) code for determining the characteristics of the code word;

(d) code for selecting decoding information based on the characteristics;

(e) code for shifting the buffered encoded data by the number of bits of the code word; and

(f) code for repeating (b) through (e) for a next code word.

23. The machine-readable storage according to claim 18 wherein the decoding information comprises lookup tables.

24. A system for performing decoding data encoded with lossless encoding and lossy encoding, said system comprising:

a circuit for decoding the lossless encoding;

a plurality of circuits for decoding the lossy encoding;

wherein the circuit for decoding the lossless encoding determines during decoding a portion of the encoded data, a particular one of the plurality of circuits for decoding the lossy encoding of the portion of the data; and

wherein the circuit for decoding the lossless encoding generates additional symbols based on the particular one of the plurality of circuits determined for decoding the lossy encoding of the portion of the data.

25. The system of claim 24 , wherein the circuit for decoding the lossless encoding further comprises:

a variable length decoder.

26. The system of claim 25 , wherein the circuit for decoding the lossless encoding further comprises:

a content adaptive variable length coding decoder.

27. The system of claim 25 , wherein the circuit for decoding the lossless encoding further comprises:

a content adaptive binary arithmetic coding decoder.

28. The system of claim 25 , wherein the plurality of circuits for decoding the lossy encoding further comprises:

a motion compensator for motion compensating; and

a spatial predictor for spatial predicting.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER PREVIOUSLY RECORDED AT REEL: 047195 FRAME: 0827. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Nov 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047924/0571 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047195/0827 →
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 Feb 25, 2009
From: BROADCOM ADVANCED COMPRESSION GROUP, LLC
To: BROADCOM CORPORATION
Reel/Frame 022299/0916 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2005
From: HELLMAN, TIMOTHY M.
To: BROADCOM ADVANCED COMPRESSION GROUP, LLC
Reel/Frame 015900/0635 →