Coded data generation or conversion – Digital code to digital code converters – To or from variable length codes
Reexamination Certificate
2000-05-31
2002-07-02
Lam, Tuan T. (Department: 2816)
Coded data generation or conversion
Digital code to digital code converters
To or from variable length codes
C341S065000
Reexamination Certificate
active
06414608
ABSTRACT:
This application is based on an application No. H11-162113 filed in Japan, the content of which is hereby incorporated by reference.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a variable length code decoding device, digital broadcast receiving apparatus, and DVD reproducing apparatus for decoding a compressed code stream into original signals.
2. Description of the Prior Art
Technology for efficiently compressing and encoding images, represented by MPEG (Moving Picture Experts Group), has been increasingly explored in recent years.
FIG. 27
is a block diagram showing a conventional variable length code decoding device for decoding variable length codewords. In the figure, a bit stream buffer
1001
acquires a bit stream of an encoded moving image from an outside source and retains it. A bit string extracting unit
1002
extracts a bit string as long as the maximum variable length from the beginning of the bit stream in the bit stream buffer
1001
, and outputs the extracted bit string to a bit length judging unit
1003
. The bit length judging unit
1003
detects a codeword from the received bit string and calculates the bit length of the detected codeword. The bit length judging unit
1003
outputs the calculated bit length to a variable length code decoding unit
1004
and the bit string extracting unit
1002
, and outputs the codeword to the variable length code decoding unit
1004
. The bit string extracting unit
1002
shifts the bit string extract position by the received bit length. The variable length code decoding unit
1004
decodes the codeword in accordance with a variable length code table held therein, and so generates a run (the number of consecutive zero coefficients) and a level (the value of the immediately following non-zero coefficient). The variable length code decoding unit
1004
outputs the generated run and level respectively to an output controlling unit
1005
and an output selecting unit
1007
. The output controlling unit
1005
controls the output selecting unit
1007
. If the run is not 0, the output selecting unit
1007
selects the constant 0 outputted from a constant generating unit
1006
a number of times equivalent to the run, and then selects the level received from the variable length code decoding unit
1004
. If the run is 0, the output selecting unit
1007
selects the level. A buffer
1008
stores values selected by the output selecting unit
1007
. An inverse quantizing unit
1009
reads the values from the buffer
1008
and inverse quantizes them. As a result, a block of DCT (Discrete Cosine Transform) pixel values in a spatial frequency region is generated. Note that detecting one codeword from a bit string by the bit length judging unit
1003
is done according to a well known method described in “ISO/IEC 13818-2” ISO/IEC JTC1, published by ISO/IEC (May 31, 1995), so that its explanation has been omitted.
However, this variable length code decoding device has the following problem. Since variable length codewords are extracted and decoded one at a time, it takes long time to decode all of the codewords, which causes decreases in processing speed of the overall system. Although such decreases in processing speed could be avoided by increasing the system's operating frequency, this will incur increases in cost and power consumption of the system.
SUMMARY OF THE INVENTION
To overcome the above problem, the present invention aims to provide a variable length code decoding device, digital broadcast receiving apparatus, and DVD reproducing apparatus that can decode a greater number of variable length codewords within a fixed time period.
The above object can be fulfilled by a variable length code decoding device including: a code extracting unit for extracting two consecutive codewords from a compressed code stream that is made up of a sequence of variable length codewords; and a parallel decoding unit for decoding the extracted two codewords in parallel.
With the above construction, the variable length code decoding device extracts two codewords from a compressed code stream and decodes them in parallel, with it being possible to increase the number of variable length codewords which can be decoded in a fixed time period.
Here, the compressed code stream may include a plurality of codewords that have each been generated as a result of quantizing and entropy coding at least one signal, hereafter referred to as a signal set, which belongs to a block of signals each generated by applying orthogonal transform to image data, wherein the code extracting unit extracts the two consecutive codewords out of the plurality of codewords included in the compressed code stream, and wherein the parallel decoding unit includes: a code decoding unit for entropy decoding the extracted two codewords in parallel to generate two decoded words; and a signal reconstructing unit for performing inverse quantization with the two decoded words in parallel to reconstruct two original signal sets.
With the above construction, the compressed code stream contains codewords obtained by coding signals generated from image data. The two codewords extracted from this compressed code stream are entropy decoded in parallel to reconstruct original signals. In so doing, a greater number of variable length codewords can be decoded within a fixed time period.
Here, each codeword may have been generated by entropy coding a run-level pair that represents a quantized signal set, the run-level pair being made up of a run which is a number of zero signals in the quantized signal set and a level which is a value of an immediately following nonzero signal in the quantized signal set, wherein the code extracting unit extracts the two consecutive codewords as first and second codewords, and includes: a position storing unit for storing position information which specifies a position of the first codeword in the compressed code stream; a first extracting unit for extracting from the compressed code stream the first codeword located in the position specified by the position information, and calculating a length of the first codeword; and a second extracting unit for extracting from the compressed code stream the second codeword located in a position specified by a sum of the position information and the calculated length, wherein the code decoding unit entropy decodes the extracted first and second codewords to generate first and second run-level pairs as the two decoded words, and includes: a first decoding unit for entropy decoding the first codeword into the first run-level pair; and a second decoding unit for entropy decoding the second codeword into the second run-level pair, and wherein the signal reconstructing unit reconstructs the two original signal sets based on the first and second run-level pairs.
With the above construction, the two codewords are extracted from the compressed code stream in sequence and are entropy decoded in parallel into two run-level pairs.
Here, the first decoding unit may include: a first table having areas which each have an address no greater than a first predetermined length and store a run-level pair, the address being a codeword generated when entropy coding the run-level pair; a second table having areas which each have an address greater than the first predetermined length and store a unique value; a third table having a separate area for each of the areas in the second table, the area in the third table having an address equal to a value stored in the area in the second table and storing a run-level pair, where an address of the area in the second table is a codeword generated when entropy coding the run-level pair stored in the area in the third table; and a first decode controlling unit for when the first codeword is no greater than the first predetermined length, retrieving from the first table a run-level pair stored in an area whose address is the first codeword, and setting the retrieved run-level pair as the first run-level pair, and when the first codeword is greater than the first prede
Kiyohara Tokuzo
Nishida Hideshi
Yoshioka Kosuke
LandOfFree
Variable length code decoding device, digital broadcast... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Variable length code decoding device, digital broadcast..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Variable length code decoding device, digital broadcast... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2899981