Variable length decoder
First Claim
1. A method of decoding a variable length coded bitstream, said bitstream comprising a concatenation of tokens of differing lengths, wherein a look-up table is employed to obtain decoded values from successive portions of the coded bitstream, wherein longer tokens in the coded bitstream are characterised by strings of identical leading characters (‘
- 1’
s or ‘
0’
s), and wherein said portions of the coded bitstream are pre-processed to obtain an index for said look-up table, said pre-processing step effectively replacing said strings with a fixed-length field representing the length of the string of leading characters to define the index using fewer bits than a maximum length of said tokens.
11 Assignments
0 Petitions
Accused Products
Abstract
Variable length decoding of DCT coefficients in MPEG video data is performed using a standard processor (400) and a small look-up table (LUT 530). The processor performs (520) an integer to floating point conversion on a portion the received bitstream (BS). By this step, lengthy codewords with many leading zeros, which are common in the codebook, are represented in a compressed form by the exponent and mantissa fields (EXP, MAN) of the floating point result (FP). The relevant bits are extracted and used as an index (IX) to address the LUT. This avoids cumbersome bit-oriented logic, while also avoiding a very large LUT that would otherwise be required to represent the same codebook. The entire LUT may thus reside in cache memory (410). In a VLIW processor implementation, decoding of one token is pipelined with the inverse scan and inverse quantisation step of the preceding token(s).
-
Citations
21 Claims
-
1. A method of decoding a variable length coded bitstream, said bitstream comprising a concatenation of tokens of differing lengths, wherein a look-up table is employed to obtain decoded values from successive portions of the coded bitstream, wherein longer tokens in the coded bitstream are characterised by strings of identical leading characters (‘
- 1’
s or ‘
0’
s), and wherein said portions of the coded bitstream are pre-processed to obtain an index for said look-up table, said pre-processing step effectively replacing said strings with a fixed-length field representing the length of the string of leading characters to define the index using fewer bits than a maximum length of said tokens. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 21)
- 1’
-
11. An apparatus for decoding a variable length coded bitstream, said bitstream comprising a concatenation of tokens of differing lengths, wherein longer tokens in the coded bitstream are characterised by strings of identical leading characters (‘
- 1’
s or ‘
0’
s), the apparatus comprising;
means for storing a look-up table;
means for receiving successive portions of data representing said coded bitstream;
means for addressing said table in response to the received data so as to obtain decoded values from successive portions of the coded bitstream; and
means for pre-processing said portions of the coded bitstream to obtain an index for said look-up table, said pre-processing step effectively replacing said strings with a fixed-length field representing the length of the string of leading characters to define the index using fewer bits than a maximum length of said tokens. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
- 1’
Specification