Nova Patents
EP0878055A2

Variable length decoding

Abstract

This record has no abstract on file.

Term

Term ended

Projected expiry passed 13 November 2017, 8.9 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

15 claims: 6 independent, 9 dependent

  1. 1
    Claims of equivalent WO 9821831 A2 CLAIMS 1. A method for pair-match Huffman transcoding a Huffman-encoded bit stream which includes a plurality of qualifying and non-qualifying types of variable length original code words to be processed by a variable length decoder (VLD) with two- word bit stream segmentation, wherein the VLD has a decoding window N bits wide, and the method includes the steps of:pair-match Huffman transcoding at least selected ones of the qualifying types of code words to produce corresponding transcoded code words;and, wherein the combined length of any pair of said transcoded code words is < N, and N is less than the combined length of two maximum length qualifying code words.
  2. 2
    The method as set forth in Claim 1 , wherein:the Huffman-encoded bit stream is an MPEG video bit stream which includes motion vectors, DCT coefficients, including DCT Huffman symbols and DCT coefficient escape sequences having runs of 0, 1, and 2 or more, and setup data;and, the qualifying code words include the motion vectors and DCT coefficients.
  3. 3
    The method as set forth in Claim 2, wherein said at least selected ones of the qualifying types of code words include all DCT coefficient escape sequences having runs of 0 and 1.
  4. 4
    The method as set forth in Claim 3, wherein said at least selected ones of the qualifying types of code words further includes all DCT coefficients having a bit length > 11.
  5. 5
    The method as set forth in Claim 4, wherein all of said transcoded code words which represent original DCT coefficients having a bit length > 11 have the same bit length.
  6. 6
    The method as set forth in Claim 4, wherein the step of determining the combined length is carried out by using a prefix combination table which contains entries corresponding to all possible two-word combinations of the prefixes of the transcoded and non-transcoded code words of the qualifying type.
  7. 7
    The method as set forth in Claim 1, wherein:the step of pair-match Huffman transcoding is carried out by adding one bit to the end of each of a plurality of the original code words in order to thereby produce respective transcoded code words, and, for each of said transcoded code words, a first logic level of the added bit indicates that the transcoded code word has the same meaning as the respective original code word, and a second logic level of the added bit indicates that the transcoded code word has a different meaning from that of the respective original code word.
  8. 8
    The method as set forth in Claim 1 , wherein the combined length of any pair of the qualifying types of code words which are not transcoded is < N, except for qualifying types of code words which can be processed singularly by the VLD in such a manner as to ensure that at least four DCT coefficients are processed during two sequential clock cycles of the VLD.
  9. 9
    The method as set forth in Claim 8, wherein the qualifying types of code words which can be processed singularly by the VLD in such a manner as to ensure that at least four DCT coefficients are processed during two sequential clock cycles of the VLD comprise the DCT coefficient escape sequences having runs of 2 or more.
  10. 10
    The method as set forth in Claim 1 , wherein:the Huffman-encoded bit stream is an MPEG video bit stream which includes payload data and setup data;the qualifying types of code words comprise code word types corresponding to the payload data;and, the non-qualifying types of code words comprise code word types corresponding to the setup data.
  11. 11
    A method for processing a Huffman-encoded bit stream which includes a plurality of qualifying and non-qualifying types of variable length original code words, by two- word bit stream segmentation, including the steps of:pair-match Huffman transcoding at least selected ones of the qualifying types of code words to produce corresponding transcoded code words;buffering all of the transcoded code words and all of the non-transcoded ones of the variable length original code words, and outputting an input bit stream comprised of both the transcoded and non-transcoded ones of the variable length original code words;registering the input bit stream and producing a sequence of available input bits;providing a decoding window N bits wide that includes one or more code words contained in the sequence of available input bits;determining whether or not the decoding window contains a pair of qualifying code words;if it is determined that the decoding window contains a pair of qualifying code words, then determining the combined length of the pair of qualifying code words, producing a combined length signal representative of the combined length, and shifting the decoding window across the sequence of available input bits in response to the combined length signal;determining the length of a leading code word contained in the decoding window, and producing a leading word length signal representative of the determined length of the leading code word;if it is determined that the decoding window does not contain a pair of qualifying code words, then shifting the decoding window across the sequence of available input bits in response to the leading word length signal;and, wherein the combined length of any pair of the transcoded code words is < N, and N is less than the combined length of two maximum length qualifying code words.
  12. 12
    A variable length decoder for processing a Huffman-encoded bit stream which includes a plurality of qualifying and non-qualifying types of variable length original code words, by two-word bit stream segmentation, comprising:means for pair-match Huffman transcoding at least selected ones of the qualifying types of code words to produce corresponding transcoded code words;means for buffering all of the transcoded code words and all of the non-transcoded ones of the variable length original code words, and outputting an input bit stream comprised of both the transcoded and non-transcoded ones of the variable length original code words;means for registering the input bit stream and producing a sequence of available input bits;shifter means for providing a decoding window N bits wide that includes one or more code words contained in the sequence of available input bits;code word length decoding means for determining whether or not the decoding window contains a pair of qualifying code words, and for determining the combined length of the pair of qualifying code words and producing a combined length signal representative of the determined combined length, if it is determined that the decoding window contains a pair of qualifying code words, and further, for determining the length of a leading code word contained in the decoding window and producing a leading word length signal representative of the determined length of the leading code word;computation loop means for generating a word pointer signal, in response to either the combined length signal, if it is determined that the decoding window contains a pair of the qualifying code words, or otherwise, in response to the leading word length signal, the shifter means being responsive to the word pointer signal for shifting the decoding window across the sequence of available input bits;and, wherein the combined length of any pair of the transcoded code words is < N, and N is less than the combined length of two maximum length qualifying code words.
  13. 13
    A device for pair-match Huffman transcoding a Huffman-encoded bit stream which includes a plurality of qualifying and non-qualifying types of variable length original code words to be processed by a variable length decoder (VLD) with two-word bit stream segmentation, wherein the VLD has a decoding window N bits wide, and the device comprises:a transcoding circuit for pair-match Huffman transcoding at least selected ones of the qualifying types of code words to produce corresponding transcoded code words;and, wherein the combined length of any pair of said transcoded code words is < N, and N is less than the combined length of two maximum length qualifying code words.
  14. 14
    A device for Huffman transcoding a Huffman-encoded bit stream which includes a plurality of qualifying and non-qualifying types of variable length original code words to be processed by a variable length decoder (VLD) with M-word bit stream segmentation, wherein the VLD has a decoding window N bits wide, and the device comprises:a transcoding circuit for pair-match Huffman transcoding at least selected ones of the qualifying types of code words to produce corresponding transcoded code words;and, wherein the combined length of any M of said transcoded code words is 2.
  15. 15
    A variable length decoder for processing a Huffman-encoded bit stream which includes a plurality of qualifying and non-qualifying types of variable length original code words, by M-word bit stream segmentation, comprising:means for Huffman transcoding at least selected ones of the qualifying types of code words to produce corresponding transcoded code words;means for buffering all of the transcoded code words and all of the non-transcoded ones of the variable length original code words, and outputting an input bit stream comprised of both the transcoded and non-transcoded ones of the variable length original code words;means for registering the input bit stream and producing a sequence of available input bits;shifter means for providing a decoding window N bits wide that includes one or more code words contained in the sequence of available input bits;code word length decoding means for determining whether or not the decoding window contains M ones of the qualifying code words, and for determining the combined length of the M ones of the qualifying code words and producing a combined length signal representative of the determined combined length, if it is determined that the decoding window contains M ones of the qualifying code words, and further, for determining the length of M-1 leading code words contained in the decoding window and producing a leading word length signal representative of the determined length of the M-1 leading code words;computation loop means for generating a word pointer signal, in response to either the combined length signal, if it is determined that the decoding window contains M ones of the qualifying code words, or otherwise, in response to the leading word length signal, the shifter means being responsive to the word pointer signal for shifting the decoding window across the sequence of available input bits;and, wherein the combined length of any M ones of the transcoded code words is <N, where M 2.