← Back to Patent Explorer
US5867601A Expired / Lapsed US ⏱️ 0.0 years remaining

Inverse discrete cosine transform processor using parallel processing

Assignee: Panasonic Corp of North America
•
Filing: 1995-10-20
•
Granted: 1999-02-02
•
Expires: 2015-10-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An inverse discrete cosine transform processor for transforming a video signal from frequency domain signals into spatial domain signals. A bus converter receives DCT coefficient data from parallel processing paths and converts the DCT coefficient data to even and odd processing paths. Partial IDCT processors convert, in parallel, the coefficient data from the even and off processing paths to produce intermediate coefficient values by performing a one dimensional transform. The intermediate coefficient values are transposed in a transpose RAM to produce transposed intermediate coefficient values which are subsequently separated into even and odd processing paths and converted in parallel to produce pixel values by performing a one dimensional transform.

Inventors

  • 👤 Larry Phillips

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 13:29
CPC Classifications
G; G06; G06F; G06F17/00; G06F17/10; G06F17/14; G06F17/147; H; H04; H04N; H04N19/00; H04N19/10; H04N19/169; H04N19/17; H04N19/176; H04N19/42; H04N19/436; H04N19/44; H04N19/60; H04N19/61

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 284 words
An inverse discrete cosine transform processor for transforming a video signal represented by a plurality of coefficient values, the inverse discrete cosine transform processor comprising: separating means for separating the plurality of coefficient values into even coefficient values and odd coefficient values; first converting means comprising: (a) means for converting the even coefficient values to produce even converted values by performing a first partial one-dimensional transform operation on the even coefficient values using z-bit-at-a-time distributed arithmetic processing where z is an integer and greater than one, (b) means for converting, in parallel with the means for converting the even coefficient values, the odd coefficient values to produce odd converted values by performing the first partial one dimensional transform operation on the odd coefficient values using z-bit-at-a-time distributed arithmetic processing, and (c) means for combining the even converted values and the odd converted values to produce a plurality of intermediate coefficient values; transpose means for transposing the plurality of intermediate coefficient values to produce transposed intermediate coefficient values and for dividing the transposed intermediate coefficient values into respective even and odd intermediate coefficient values; and second converting means comprising: (a) means for converting the even intermediate coefficient values to produce even converted intermediate values by performing a second partial one dimensional transform operation on the even intermediate coefficient values, (b) means for converting, in parallel with the means for converting the even intermediate coefficient values, the odd intermediate coefficient values to produce odd converted intermediate values by performing the second partial one dimensional transform operation on the odd intermediate coefficient values, and (c) means for combining the even converted intermediate values and the odd converted intermediate values to produce a plurality of image pixel values.
Claim 2
Dependent Claim 284 words
An inverse discrete cosine transform processor for transforming a video signal represented by a plurality of coefficient values, the inverse discrete cosine transform processor comprising: separating means for separating the plurality of coefficient values into even coefficient values and odd coefficient values; first converting means comprising: (a) means for converting the even coefficient values to produce even converted values by performing a first partial one-dimensional transform operation on the even coefficient values using z-bit-at-a-time distributed arithmetic processing where z is an integer and greater than one, (b) means for converting, in parallel with the means for converting the even coefficient values, the odd coefficient values to produce odd converted values by performing the first partial one dimensional transform operation on the odd coefficient values using z-bit-at-a-time distributed arithmetic processing, and (c) means for combining the even converted values and the odd converted values to produce a plurality of intermediate coefficient values; transpose means for transposing the plurality of intermediate coefficient values to produce transposed intermediate coefficient values and for dividing the transposed intermediate coefficient values into respective even and odd intermediate coefficient values; and second converting means comprising: (a) means for converting the even intermediate coefficient values to produce even converted intermediate values by performing a second partial one dimensional transform operation on the even intermediate coefficient values, (b) means for converting, in parallel with the means for converting the even intermediate coefficient values, the odd intermediate coefficient values to produce odd converted intermediate values by performing the second partial one dimensional transform operation on the odd intermediate coefficient values, and (c) means for combining the even converted intermediate values and the odd converted intermediate values to produce a plurality of image pixel values.
Claim 3
Dependent Claim 30 words
The inverse discrete cosine transform processor according to claim 1, wherein the first separating means is provided with the plurality of coefficient values from a plurality of parallel processing paths.
Claim 4
Dependent Claim 37 words
The inverse discrete cosine transform processor according to claim 1, wherein the first converting means has only two partial one-dimensional inverse discrete cosine transform processors for concurrently converting the even coefficient values and the odd coefficient values.
Claim 5
Dependent Claim 293 words
An inverse discrete cosine transform (IDCT) processor for transforming a video signal represented by a plurality of coefficient values, the video signal separated into two parallel processing paths each containing ones of the plurality of coefficient values, the IDCT processor comprising: a bus converter coupled to the two parallel processing paths; a first partial one-dimensional IDCT processor coupled to the bus converter to receive a first subset of the plurality of coefficient values from each of the two parallel processing paths from the bus converter, the first partial one-dimensional IDCT processor using z-bit-at-a-time distributed arithmetic processing to transform the first subset of the plurality of coefficient values, z is an integer and greater than one; a second partial one-dimensional IDCT processor coupled, in parallel to the first one-dimensional IDCT processor, to the bus converter to receive a second subset of the plurality of coefficient values from each of the two parallel processing paths from the bus converter, where the first subset and the second subset of the plurality of coefficient values are different, the second partial one-dimensional IDCT processor using z-bit-at-a-time distributed arithmetic processing to transform the second subset of the plurality of coefficient values; a transpose apparatus coupled to the first partial one-dimensional IDCT processor and the second partial one-dimensional IDCT processor; a third partial one-dimensional IDCT processor coupled to the transpose apparatus to receive a first subset of a plurality of transformed coefficient values from the transpose apparatus; and a fourth one-dimensional IDCT processor coupled, in parallel to the third partial one-dimensional IDCT processor, to the transpose apparatus to receive a second subset of the plurality of transformed coefficient values from the transpose apparatus, where the first subset and the second subset of the plurality of transformed coefficient values are different.
Claim 6
Dependent Claim 293 words
An inverse discrete cosine transform (IDCT) processor for transforming a video signal represented by a plurality of coefficient values, the video signal separated into two parallel processing paths each containing ones of the plurality of coefficient values, the IDCT processor comprising: a bus converter coupled to the two parallel processing paths; a first partial one-dimensional IDCT processor coupled to the bus converter to receive a first subset of the plurality of coefficient values from each of the two parallel processing paths from the bus converter, the first partial one-dimensional IDCT processor using z-bit-at-a-time distributed arithmetic processing to transform the first subset of the plurality of coefficient values, z is an integer and greater than one; a second partial one-dimensional IDCT processor coupled, in parallel to the first one-dimensional IDCT processor, to the bus converter to receive a second subset of the plurality of coefficient values from each of the two parallel processing paths from the bus converter, where the first subset and the second subset of the plurality of coefficient values are different, the second partial one-dimensional IDCT processor using z-bit-at-a-time distributed arithmetic processing to transform the second subset of the plurality of coefficient values; a transpose apparatus coupled to the first partial one-dimensional IDCT processor and the second partial one-dimensional IDCT processor; a third partial one-dimensional IDCT processor coupled to the transpose apparatus to receive a first subset of a plurality of transformed coefficient values from the transpose apparatus; and a fourth one-dimensional IDCT processor coupled, in parallel to the third partial one-dimensional IDCT processor, to the transpose apparatus to receive a second subset of the plurality of transformed coefficient values from the transpose apparatus, where the first subset and the second subset of the plurality of transformed coefficient values are different.
Claim 7
Dependent Claim 62 words
The IDCT processor according to claim 4, wherein the coefficient values are 12-bit values, the first and second partial one-dimensional IDCT processors are each three-bit-at-a-time processors, the intermediate coefficient values are 16-bit values, and the third and fourth partial one-dimensional IDCT processors are each 4-bit-at-a-time processors, such that each section of the IDCT processor processes its input values in four clock periods.
Claim 8
Dependent Claim 203 words
An inverse discrete cosine transform processor for transforming a video signal represented by n-bit coefficient values into a plurality of pixel values, the n-bit coefficient values provided from q data streams where n and q are integers, the inverse discrete cosine transform processor comprising: z-bit-at-a-time parallel means for converting the plurality of n-bit coefficient values into a plurality of intermediate coefficient values by performing respective first partial one-dimensional transforms in parallel using z-bit-at-a-time distributed arithmetic processing, where z is an integer; means for transposing the plurality of intermediate coefficient values to produce s-bit transposed intermediate coefficient values, where s is an integer; r-bit-at-a-time parallel means for converting the s-bit intermediate coefficient values into a plurality of pixel values by performing respective second partial one-dimensional transforms in parallel using r-bit-at-a-time distributed arithmetic processing, where r is an integer; wherein the inverse discrete cosine transform processor has a data rate of p bits per t clock cycles where p is equal to an divided by z and p is equal to s divided by r and where p and t are integers, and wherein data arriving by the q data streams arrives at a rate of p times q bits per the t clock cycles.
Claim 9
Dependent Claim 203 words
An inverse discrete cosine transform processor for transforming a video signal represented by n-bit coefficient values into a plurality of pixel values, the n-bit coefficient values provided from q data streams where n and q are integers, the inverse discrete cosine transform processor comprising: z-bit-at-a-time parallel means for converting the plurality of n-bit coefficient values into a plurality of intermediate coefficient values by performing respective first partial one-dimensional transforms in parallel using z-bit-at-a-time distributed arithmetic processing, where z is an integer; means for transposing the plurality of intermediate coefficient values to produce s-bit transposed intermediate coefficient values, where s is an integer; r-bit-at-a-time parallel means for converting the s-bit intermediate coefficient values into a plurality of pixel values by performing respective second partial one-dimensional transforms in parallel using r-bit-at-a-time distributed arithmetic processing, where r is an integer; wherein the inverse discrete cosine transform processor has a data rate of p bits per t clock cycles where p is equal to an divided by z and p is equal to s divided by r and where p and t are integers, and wherein data arriving by the q data streams arrives at a rate of p times q bits per the t clock cycles.
Claim 10
Dependent Claim 9 words
The IDCT processor according to claim 6, wherein q=2.
Claim 11
Dependent Claim 9 words
The IDCT processor according to claim 7, wherein p=4.
Claim 12
Dependent Claim 13 words
The IDCT processor according to claim 8, wherein z=3, n=12, r=4, and s=16.
Claim 13
Dependent Claim 49 words
The IDCT processor according to claim 6, further including a separating means for separating the plurality of coefficient values into even coefficient values and odd coefficient values and wherein the z-bit-at-a-time parallel means converts the even coefficient values and odd coefficient values into the plurality of intermediate coefficient values.
Claim 14
Dependent Claim 199 words
The inverse discrete cosine transform processor according to claim 6, wherein the z-bit-at-a-time parallel means further includes an input section means for converting n x-bit parallel data words to n digit-serial data words where each digit has z bits, where x, n, and z are integers, the input section means comprising: array means having a plurality of storage elements arranged as an array having n rows and n columns, each storage element including means for storing a one bit digital value; means for storing a first one of the n x-bit parallel data words in a first row or a first column of the array; means for storing a next one of the n x-bit parallel data words in the first row or the first column of the array and for concurrently shifting the first one of the n x-bit parallel data words to a respective next subsequent row or a next subsequent column of the array; and means for retrieving a first bit of the n digit-serial data words from a respective column or row of the array and a next bit of the n digit-serial data words from a next successive column or row of the array.
Claim 15
Dependent Claim 45 words
The apparatus according to claim 11, wherein the first one of the n x-bit parallel data words is stored in the first row of the array and the first bit of the n digit-serial data words is retrieved from a last row of the array.
Claim 16
Dependent Claim 45 words
The apparatus according to claim 11, wherein the first one of the n x-bit parallel data words is stored in the first column of the array and the first bit of the n digit-serial data words is retrieved from a last column of the array.
Claim 17
Dependent Claim 91 words
An MPEG decoder for decoding a bit stream containg DCT coefficients, the MPEG decoder comprising: parallel proccssing means for processing the bit stream in two parallel processing paths to acquire the DCT coefficients from the bit stream, the parallel processing means having a first data rate; and a single IDCT processor including means for transforming the DCT coefficients fron the parallel processing paths using z-bit-at-a-time distributed arithmetic at a second data rate which is twice the first data rate to produce pixel values, where z is an integer greater than 1.
Claim 18
Dependent Claim 91 words
An MPEG decoder for decoding a bit stream containg DCT coefficients, the MPEG decoder comprising: parallel proccssing means for processing the bit stream in two parallel processing paths to acquire the DCT coefficients from the bit stream, the parallel processing means having a first data rate; and a single IDCT processor including means for transforming the DCT coefficients fron the parallel processing paths using z-bit-at-a-time distributed arithmetic at a second data rate which is twice the first data rate to produce pixel values, where z is an integer greater than 1.
Claim 19
Dependent Claim 131 words
A one-dimensional inverse discrete cosine transform processor for transforming a signal represented by even coefficient values and odd coefficient values, the apparatus comprising; means for converting the even coefficient values to produce even converted values by performing a first partial one-dimensional transform operation on the even coefficient values using z-bit-at-a-time distributed arithmetic processing where z is an integer and greater than one; means for converting, in parallel with the means for converting the even coefficient values, the odd coefficient values to produce odd converted values by performing the first partial one dimensional transform operation on the odd coefficient values using z-bit-at-a-time distributed arithmetic processing where z is an integer and greater than one; and means for combining the even converted values and the odd converted values to produce a transformed signal.
Claim 20
Dependent Claim 131 words
A one-dimensional inverse discrete cosine transform processor for transforming a signal represented by even coefficient values and odd coefficient values, the apparatus comprising; means for converting the even coefficient values to produce even converted values by performing a first partial one-dimensional transform operation on the even coefficient values using z-bit-at-a-time distributed arithmetic processing where z is an integer and greater than one; means for converting, in parallel with the means for converting the even coefficient values, the odd coefficient values to produce odd converted values by performing the first partial one dimensional transform operation on the odd coefficient values using z-bit-at-a-time distributed arithmetic processing where z is an integer and greater than one; and means for combining the even converted values and the odd converted values to produce a transformed signal.
Claim 21
Dependent Claim 18 words
The apparatus according to claim 15, wherein the transformed signal is represented by a plurality of pixel values.
Claim 22
Dependent Claim 19 words
The apparatus according to claim 15, wherein the transformed signal is represented by a plurality of intermediate coefficient values.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-02-01 2002-08-03 2003-02-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-02-01 2006-08-03 2007-02-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-02-01 2010-08-03 2011-02-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag