+

WO1996038794A1 - Circuit de transformation en cosinus discrets - Google Patents

Circuit de transformation en cosinus discrets Download PDF

Info

Publication number
WO1996038794A1
WO1996038794A1 PCT/JP1996/000461 JP9600461W WO9638794A1 WO 1996038794 A1 WO1996038794 A1 WO 1996038794A1 JP 9600461 W JP9600461 W JP 9600461W WO 9638794 A1 WO9638794 A1 WO 9638794A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
input
output
result
cumulative addition
Prior art date
Application number
PCT/JP1996/000461
Other languages
English (en)
French (fr)
Inventor
Toyokazu Hori
Nario Sumi
Masaru Hase
Original Assignee
Hitachi, Ltd.
Hitachi Device Engineering, Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi, Ltd., Hitachi Device Engineering, Co., Ltd. filed Critical Hitachi, Ltd.
Priority to US08/952,653 priority Critical patent/US6185595B1/en
Publication of WO1996038794A1 publication Critical patent/WO1996038794A1/ja

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M23/00Transmissions characterised by use of other elements; Other transmissions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M9/00Transmissions characterised by use of an endless chain, belt, or the like
    • B62M9/02Transmissions characterised by use of an endless chain, belt, or the like of unchangeable ratio
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M9/00Transmissions characterised by use of an endless chain, belt, or the like
    • B62M9/16Tensioning or adjusting equipment for chains, belts or the like
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16HGEARING
    • F16H7/00Gearings for conveying rotary motion by endless flexible members
    • F16H7/08Means for varying tension of belts, ropes or chains 
    • F16H7/10Means for varying tension of belts, ropes or chains  by adjusting the axis of a pulley
    • F16H7/12Means for varying tension of belts, ropes or chains  by adjusting the axis of a pulley of an idle pulley
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16HGEARING
    • F16H7/00Gearings for conveying rotary motion by endless flexible members
    • F16H7/08Means for varying tension of belts, ropes or chains 
    • F16H2007/0802Actuators for final output members
    • F16H2007/0806Compression coil springs
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16HGEARING
    • F16H7/00Gearings for conveying rotary motion by endless flexible members
    • F16H7/08Means for varying tension of belts, ropes or chains 
    • F16H2007/0863Finally actuated members, e.g. constructional details thereof
    • F16H2007/087Sprockets
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16HGEARING
    • F16H7/00Gearings for conveying rotary motion by endless flexible members
    • F16H7/08Means for varying tension of belts, ropes or chains 
    • F16H2007/0876Control or adjustment of actuators
    • F16H2007/088Manual adjustment

Definitions

  • the present invention relates to a processing technique for image data and a technique for decompressing compressed image data, for example, a JPEG (Joint Photographic Experts Group) method and an MPEG
  • the present invention relates to a technique useful for a discrete cosine transform operation circuit in a method.
  • a discrete cosine transform (DCT: Discrete Cosine Transform) operation circuit is provided with a plurality of multipliers for multiplying input data and DCT transform coefficients.
  • DCT Discrete Cosine Transform
  • eight multipliers are provided.
  • the operating frequency of the multiplier is the same as the frequency of the output timing of the DCT operation result (equal to the frequency of the input timing of the input data), and its ratio (ie, “1”) and the number of multipliers Is the product of
  • JP-A-4-1280368 discloses a DCT arithmetic circuit configured using two multipliers operating at a frequency four times as high as the input timing of data input to the DCT arithmetic circuit. ing.
  • This DCT operation circuit uses, for example, a DCT conversion coefficient d!
  • Multiplies with d 21 , d 31 , and d 41, and the other multiplier performs multiplication with DCT conversion coefficients d 5 , dei, d 7 I , and d 8 i, and each of the four results xiidii, X 11 d 2 i, ii dai, It is configured to obtain X11d41, X11d51, X11d61, X11d71, and X11d81.
  • the obtained eight multiplication results are stored in eight registers, respectively.
  • X2Id42 and X21d52, X21d62, X21d72, X21d82 are obtained.
  • the result of the addition is stored again in the eight registers.
  • Matrigel box elements y H ⁇ y 81 is obtained by repeating an operation comprising such a multiply and accumulating 8 times. By repeating the above operation eight times, all elements of the matrix are obtained, and the one-dimensional 8 ⁇ 8 DCT matrix operation is completed.
  • the DCT arithmetic circuit described in Japanese Patent Application Laid-Open No. Hei 4-280368 uses two multipliers, so that there is still room for improvement in terms of circuit scale. In other words, it is desirable to reduce the number of multipliers to one in order to reduce the circuit scale as much as possible.
  • the multiplier operates at a frequency that is four times the input timing of the data input to the DCT operation circuit. Therefore, the product of the ratio of the operating frequency of the multiplier to the frequency of the data input timing (hereinafter, this ratio is referred to as the normalized frequency) and the number of multipliers is "8", which is a power consumption factor. Has not been improved at all. To reduce power consumption, it is desirable to minimize the product of the normalized frequency and the number of multipliers.
  • the present invention has been made in view of such circumstances, and enables low power consumption by setting the value of the product of the number of multipliers of the one-dimensional discrete cosine transform operation circuit and the standardized frequency to 4, and furthermore,
  • the main object of the present invention is to provide a discrete cosine transform operation circuit in which the circuit scale can be reduced by reducing the number of multipliers to one.
  • one multiplier operating at a frequency four times as high as the input timing of the data input to the discrete cosine transform operation circuit is provided, and the DCT transform coefficient is calculated by the multiplier.
  • the result of the multiplication is added by a cumulative adder to obtain the sum and difference of a pair of elements of data to be output from the discrete cosine transform operation circuit.
  • the element of the column of the output data matrix is obtained by performing the half of the output data, and the processing is performed several times by the element of the row of the input data matrix to obtain the output data. It was configured as determining all the elements of the matrix.
  • one multiplier operating at a frequency four times as high as the input timing of the data input to the discrete cosine transform operation circuit is provided, and the DCT transform coefficient is calculated by the multiplier.
  • the result of the multiplication is directly added by the first accumulator, and the sign is alternately inverted.
  • the addition operation is performed one half of the number of elements in the matrix of the input data to obtain the elements of the matrix of the output data, and the processing is performed a number of times in the elements of the rows of the input data matrix.
  • a configuration may be adopted in which all elements of the output data matrix are obtained.
  • multipliers that operate at twice the frequency of the input timing of the data input to the discrete cosine transform operation circuit are provided, and the DCT transform coefficients are divided into two sets and stored in ROM.
  • the multiplier of each set of coefficients and each element of the input data may be multiplied simultaneously by two multipliers.
  • a two-dimensional discrete cosine transform operation circuit composed of a transposed RAM that outputs-to a one-dimensional DCT operation circuit on the output side is configured using one or both of the above-described discrete cosine transform operation circuits.
  • FIG. 1 is a block diagram schematically showing a DCT operation circuit according to the first embodiment.
  • FIG. 2 is a time chart showing a part of the operation timing.
  • FIG. 3 is a block diagram schematically showing the DCT operation circuit according to the second embodiment.
  • FIG. 4 is a time chart showing a part of the operation timing.
  • FIG. 5 is a block diagram schematically showing a DCT operation circuit according to a third embodiment.
  • FIG. 6 is a time chart showing a part of the operation timing.
  • FIG. 7 is a block diagram schematically showing a DCT operation circuit according to a fourth embodiment.
  • FIG. 8 is a time chart showing a part of the operation timing.
  • FIG. 9 is a block diagram schematically showing a DCT operation circuit according to a fifth embodiment.
  • FIG. 10 is a time chart showing the operation timing.
  • FIG. 1 is a diagram showing a first embodiment of a discrete cosine transform (DCT) operation circuit according to the present invention.
  • DCT discrete cosine transform
  • the address counter 23 is connected to the multiplexers 12 and the coefficient storage ROM 14, and the DCT conversion coefficient corresponding to the specified address is output from the coefficient storage ROM 14 by incrementing the address counter 23. At the same time, the data corresponding to the address is output from the hold register 11 by the multiplexer 12.
  • the reference clock CLK (frequency is set to 00) input to the timing control unit 22 and the shift register 10, the hold register 11, the multiplexers 12, 21
  • the frequency of each timing signal output to the accumulator 15, the registers 19 A, 19 B, 20 and the address counter 23 is ⁇ ( ⁇ is the frequency of the data input timing to the shift register 10).
  • the DCT operation circuit 1 can obtain two DCT operation results when the data of one column in the input matrix is input to the multiplier 13. I have.
  • an 8 ⁇ 8 one-dimensional inverse DCT operation is represented by the product of a matrix of DCT transform coefficients and an input coefficient matrix as shown in equation (1).
  • Equation (1) the 8 ⁇ 1 matrix on the left side is the result of the one-dimensional inverse DCT operation, and the 8 ⁇ 8 matrix and the 8 ⁇ 1 matrix on the right side are the DCT transform coefficients and input data, respectively.
  • the coefficients a, b, c, d, e, f, and g in the DCT transformation matrix are as follows, respectively.
  • Equation (2) By transforming equation (1), equation (2) is obtained.
  • the DCT operation circuit 1 according to the first embodiment obtains a one-dimensional inverse DCT operation result using the regularity of the equation (2).
  • Equations (1) and (2) show only the first column of the 8 ⁇ 8 matrix for input data and output data, but the second to eighth columns also show Same as the first column.
  • the DCT operation circuit 1 will be described in detail with reference to the timing chart shown in FIG. 2 taking the case of the above equation (2) as an example.
  • X0 ', XI', ⁇ 2 ', ⁇ 3', ⁇ 4 ', ⁇ 5', ⁇ 6 ' are the data XO, XI input to the shift register 10 in the previous cycle.
  • X2, X3, X4, X5, X6, and X7 represent the data newly input to the shift register 10 while performing the arithmetic processing of the DCT conversion (FIGS. 4, 6, and The same applies to Fig. 8).
  • the shift register 10 sequentially receives individual data (elements) X0, XI, X2, X3, X4, X5, X6, and X7 of the input data.
  • eight data are held in the shift register 10
  • the eight data are sent from the shift register 10 to the Hornet register 11.
  • the hold register 11 holds the eight data sent from the shift register 10 until the shift register 10 holds the eight data in the next column.
  • data of one column can be held in the hold register 11.
  • the timing of fetching and shifting data in the shift register 10, the timing of fetching data in the hold register 11, and the like are controlled by a timing signal generated and output by the timing control unit 22.
  • a timing signal generated and output by the timing control unit 22 For example, in the shift register 10, data input and shift occur at the timing of the cycle T (frequency: ⁇ ).
  • Hold register 11 receives data from shift register 10 at a timing of 8 T (frequency: ⁇ / 8).
  • the eight data held in the hold register 11 are sequentially selected by the multiplexer 12 based on the address specified by the address counter 23 and sent to the multiplier 13.
  • the multiplier 13 sequentially reads the DCT conversion coefficients corresponding to the address specified by the address counter 23 from the coefficient storage ROM 14 in synchronization with the input of the eight data, and reads the DCT conversion coefficients b, f, d , d, a, c, e, g and data X2, X6, X0, X4,
  • the input timing of the data input from the multiplexer 12 to the multiplier 13 is controlled by the timing signal generated and output by the timing control unit 22, and the input timing T of the data input to the shift register 10 This is a quarter (T / 4) timing (frequency: 4).
  • the cumulative adder 15 is composed of an adder 15 5 and a register 15B, and performs cumulative addition of the first four multiplication results bX2, fX6, dXO and dX4 input from the multiplier 13 . That is, the first multiplication result bX2 is temporarily stored in the register 15B. Then, when the next multiplication result f X6 is input from the multiplier 13, b X2 is sent from the register 15 B to the adder 15 A in synchronization with the input, and the adder 15 A outputs [b X2 + f X6] is added, and the addition result is again stored in the register 15B.
  • dX0 is added to [b X2 + ⁇ X6] once held in the register 15B to obtain [b X2 + f X6 + d X0].
  • dX4 is further added thereto to obtain [bX2 + fX6 + dX0 + dX4].
  • the cumulative addition result obtained by adding the four multiplication results in this way is sent to the demultiplexer 16 and distributed to the adder 17 and the subtracter 18 for input.
  • the cumulative addition is similarly performed by the cumulative adder 15 for the latter four multiplication results a XI, c X3, e X5, and gX7 input from the multiplier 13.
  • the obtained cumulative addition result [a XI + c X3 + e X5 + g X7] is sent to the demultiplexer 16 and distributed to the adder 17 and the subtractor 18 for input.
  • the output timing from the accumulator 15 to the demultiplexer 16 is controlled by a timing signal generated and output by the timing control unit 22, and is the same as the input period T (frequency: ⁇ ) of input data.
  • the adder 17 and the subtractor 18 respectively add the two accumulated addition results [b X2 + f X6 + d X0 + d X4] and [a XI + c X3 + e X5 + gX7] And decrement. More specifically, the result of the accumulator 15 is input to the adder 17 and the subtractor 18 two by two, and the adder 17 calculates the sum of them, and the subtractor 18 calculates the sum of the first input value. The next input value, that is, the value obtained by subtracting the even-numbered input value from the odd-numbered input value, is sequentially obtained.
  • Such an operation is performed by combining the elements in the second row, columns 1 to 4 and the elements in the sixth row, columns 5 to 8 of the DCT transformation matrix of Equation (2), and the third row Combination of elements from column 1 to column 4 and element from column 5 to column 8 in row 7, element from column 4 to column 1 to column 4 and row 8 from row 5
  • each element ⁇ , ⁇ 7, X1, x6, x2, x5, x3, x4 in the first column of the output data can be obtained.
  • each element A ⁇ , xl, ⁇ 2, x3 of the output data output from the adder 17 is held in the register 19A.
  • each element X7 , x6, # 5, # 4 of the output data output from the subtracter 18 is held in the register 19B.
  • the transmission timing of the data from the adder 17 and the subtractor 18 to the registers 19 ⁇ and 19 ⁇ is controlled by a timing signal generated and output by the timing control unit 22.
  • the timing (frequency: / 2) is twice (2 () the input cycle ⁇ ⁇ ⁇ of the data. Then, data transmission from the registers 19A and 19 ⁇ ⁇ ⁇ ⁇ to the register 20 is performed in a period of 8 ⁇ (frequency: 08).
  • the elements xO, xl, x2, ⁇ 3, x4, x5, x6, and x7 of the output data held in the register 20 are sequentially selected by the multiplexer 21 and output at the timing of the cycle T (frequency: ⁇ ).
  • the elements X0, XI, X2, X3, X4, X5, X6, and X7 of the first column of the input data input at the periodic interval (frequency: ⁇ ) to the zero-thick arithmetic circuit 1 are obtained.
  • each element xO, xl, ⁇ 2, x3, ⁇ 4, ⁇ 5, ⁇ 6, ⁇ 7 of the first column of the DCT operation result has a period ⁇ (frequency Number: 0) is output.
  • FIG. 3 is a diagram showing a second embodiment of the DCT operation circuit according to the present invention.
  • the DCT operation circuit 2 of the second embodiment similarly to the DCT operation circuit 1 of the first embodiment, in the multiplier 13, the shift register 10, the hold register 11, and the multiplexer 12 are used.
  • the input data is multiplied by the DCT transform coefficient read from the coefficient storage ROM 14.
  • the combination of the input data to be multiplied and the DCT transform coefficient is selected by the multiplexer 12 and the address counter 23 connected to the coefficient storage ROM 14.
  • the output data obtained by adding the multiplication results by the two accumulators 30 and 31 respectively is output via the registers 19A, 19B and 20 and the multiplexer 21. I have.
  • first accumulator 30 the multiplication results sequentially input from the multiplier 13 are added as they are, and the other accumulator (second accumulator) 3 1 In the multiplication result, the sign of every other input from the multiplier 13 is inverted by the sign inverter 32 and added.
  • FIG. 3 shows a reference clock CLK (frequency is ⁇ 0) input to the timing control unit 22 and a shift register 10, a hold register 11, a multiplexer 12 and a shift register 10 from the timing control unit 22. 21, the accumulators 30, 31, the sign inverter 32, the registers 19A, 19B, 20, and the address counter 23, the frequency of each timing signal output to ⁇ ( ⁇ is the data to the shift register 10) This is the frequency of the input timing.
  • the DCT operation circuit 2 focuses on the regularity of the DCT transform coefficient expressed by the above equation (1), and when the data of one column in the input matrix is input to the multiplier 13, two DCT operation results can be obtained.
  • the DCT operation circuit 2 will be described in detail with reference to the timing chart shown in FIG. 4, taking the case of the above equation (1) as an example.
  • the multiplier 13 receives the individual data (elements) X0, XI, X2, X3, X4, X5, X6, and X7 of the input data via the shift register 10, the hold register 11, and the multiplexer 12. Input sequentially at T / 4 timing (frequency: 4 ⁇ ).
  • the multiplier 13 receives the coefficient ROM0, XI, ⁇ 2, ⁇ 3, ⁇ 4, ⁇ 5, X6, ⁇ 7 from the coefficient storage ROM 14 in the first line of the equation (1) in synchronization with the input timing of the data.
  • the DC ⁇ conversion coefficients d, a, b, c, d, e, f, and g are sequentially input.
  • Each of the multiplication results d XO, a XI, b X2, c X 3, d X4, e X5, f X6, and g X7 obtained by the multiplication in the multiplier 13 are sequentially converted to the TZ4 timing (frequency: 4 ⁇ ),
  • the signal is sent to the adder 30 of the first accumulator 30, and the sign is inverted by the sign inverter 32 every other second so that the adder 3 1 of the second accumulator 31 Also sent to A.
  • the addition of the eight multiplication results is performed by the adders 30 A and 31 A and the registers 30 B and 31 B of the accumulators 30 and 31, respectively.
  • the adder 30 gives [d XO + a XI + b X2 + c X3 + d X4 + e X5 + f X6 + g X7], and the second accumulator 31 has [d XO — a XI + b X2 — c X3 + d X4-e X5 + f X6 — g X7].
  • the cumulative addition processing is the same as the processing in the cumulative adder 15 of the first embodiment except that the number of cumulative additions is seven.
  • the first cumulative addition result [d XO + a XI + b X2 + c X3 + d X4 + e X5 + f X6 + g X7] and the second cumulative addition result [d X0 — a XI + b X2-c X3 + d X4 _ e X5 + f X6 — g X7] are equal to ⁇ and x7, which are the elements of the output data (result of inverse DCT operation), respectively. Therefore, ⁇ is obtained from the first accumulator 30 and x7 is obtained from the second accumulator at the same time.
  • These two operation results ⁇ , x7 are stored in registers 19A, 19 Stored in B.
  • each of the first columns of the output data is obtained.
  • the elements ⁇ , xl, x2, ⁇ 3, ⁇ 4, ⁇ 5, ⁇ 6, ⁇ 7 are obtained.
  • each element ⁇ , xl, x2, x3, x4, x5, x6, and x7 of the first column of the one-dimensional inverse DCT operation result is output at period T (frequency: ⁇ ).
  • timing control section 22 generates a sign inversion signal at the timing of ⁇ / 2 (frequency: 2 ⁇ ) and outputs the signal to the sign inverter 32.
  • the sign of the multiplication result input to the accumulator 31 is inverted every other ⁇ / 4 (frequency: 40).
  • FIG. 5 is a diagram showing a third embodiment of the DCT operation circuit according to the present invention.
  • a pair of multiplexers 40 and 41 are connected to a hold register 11 that holds, for example, eight pieces of data input via a shift register 10.
  • One multiplexer 42, 45 is connected to each multiplexer 40, 41, and one coefficient storage ROM 43, 46 is connected to each multiplier 42, 45. .
  • the number is not particularly limited, for example For example, the 32 DCT transform coefficients (excluding "0") in the above equation (2) are divided into two sets and stored in the coefficient storage ROMs 43 and 46, respectively.
  • the multiplier 42 the data input via the shift register 10, the hold register 11 and the multiplexer 40 and the coefficient storage ROM 43 are read.
  • Multiplication with the found DCT transform coefficient is performed. Further, the multiplier 45 multiplies the data input via the shift register 10, the hold register 11, and the multiplexer 41 by the DCT transform coefficient read from the coefficient storage ROM 46. Each operation in the multipliers 42 and 45 is processed in parallel. The combination of the input data to be multiplied in each of the multipliers 42 and 45 and the DCT transform coefficient is selected by the 10 multiplexers 40 and 41 and the address counter 23 commonly connected to the coefficient storage ROMs 43 and 46. .
  • An adder 47 is connected to the multipliers 42 and 45, and the multiplication results output from the multipliers 42 and 45 are added by the adder 47.
  • a cumulative adder 15 is connected to the adder 47, and the two addition results continuously output from the adder 47 are further added by the cumulative adder 15.
  • the addition result output from the accumulator 15 is output to the adder 17 and the subtractor 18 via the demultiplexer 16 in the same manner as the DCT operation circuit 1 of the first embodiment.
  • the output data obtained as a result of the division is output via registers 19A, 19B, 20 and multiplexer 21.
  • Data input / output timing of the accumulator 21 and the accumulator 15 and timing of increment of the address counter 23 are controlled based on a timing signal issued from the timing control unit 22.
  • the reference clock CLK (frequency is ⁇ 0) input to the timing control section 22 and the shift register 10, the hold register 11, the multiplexer 4 from the timing-25 control section 22 are shown.
  • each timing signal output to the counter 23 is ⁇ ( ⁇ is the data input to the shift register 10 This is the timing frequency.
  • This DCT operation circuit 3 is based on the regularity of the DCT conversion coefficient expressed by the above equation (2). By paying attention, half of the data of one column in the input matrix is input to the multiplier 42, and the other half of the data of one column in the input matrix is input to the multiplier 45. DCT operation results can be obtained.
  • Half (four) of the eight data X2, X0, XI, and X5 of the eight data input through the shift register 10 and held in the hold register 11 are the address specified by the counter 23. , And are sequentially selected by the multiplexer 40 and sent to the multiplier 42. In synchronization with the transfer timing of each of the data X2, X0, XI, X5, based on the remaining four data X6, X4, X3, X7 of the hold register 11 and the address setting of the address counter 23, , And are sequentially selected by the multiplexer 41 and sent to the multiplier 45.
  • the multiplier 42 sequentially reads the DCT conversion coefficients corresponding to the address specified by the address counter 23 from the coefficient storage ROM 43 in synchronization with the input of the four data, and the DCT conversion coefficients b, d, a , e (b and d are the DCT coefficients of the first and third columns of the first row of equation (2), and a and e are the fifth column of the fifth row of equation (2) And the DCT transform coefficients in the seventh column.) And the data X2, X0, XI, and X5 sequentially transmitted from the multiplexer 40.
  • the multiplier 45 sequentially reads the DCT conversion coefficients corresponding to the address specified by the address counter 23 from the coefficient storage ROM 46 in synchronization with the input of the remaining four data, and outputs the DCT conversion coefficients f and d. , C, g (where f and d are the DCT transform coefficients in the second and fourth columns of the first row of equation (2), and c and g are the fifth rows of equation (2).
  • the DCT transform coefficients in the sixth and eighth columns are multiplied by the data X6, X4, X3, and X7 sequentially transmitted from the multiplexer 41.
  • the adder 47 To the adder 47, the multiplication results bX2 and fX6, dXO and dX4, aXI and cX3, eX5 and gX7 are input from the multipliers 42 and 45 in synchronization. Then, the adder 47 performs an addition process, and sequentially outputs [b X2 + f X6], [dXO + d X4], [a X 1 + c X3], and [e X5 + g X7] to the cumulative adder 15. Output.
  • the data input / output timing of the adder 47 is controlled by a timing signal generated and output by the timing control unit 22, and is at the timing of TZ2 (frequency: 2 °).
  • the accumulator 15 accumulates the first two multiplication results [bX2 + fX6] and [dXO + dX4] input from the adder 47.
  • the operation result [bX2 + fX6 + dXO + dX4] is sent to the demultiplexer 16 and distributed to the adder 17 and the multiplier 18 and input.
  • the latter two multiplication results [a Xl + c X3] and [eX5 + gX7] input from the adder 47 are also added by the accumulator 15 and the operation result [a XI + c X3 + e X5 + gX7] is sent to the demultiplexer 16 and distributed to the adder 17 and the subtracter 18 for input.
  • the output timing from the accumulator 15 to the demultiplexer 16 is controlled by a timing signal generated and output by the timing control unit 22, and is the timing of TZ2 (frequency: 20).
  • the two accumulative addition results respectively input to the adder 17 and the subtractor 18 are thereafter transferred through the adder 17, the adder 18 and the registers 19A, 19B, 20 in the same manner as in the first embodiment.
  • the data is processed and output from the multiplexer 21 as output data (inverse DCT operation result).
  • Such an operation is performed by combining the elements in the second row, columns 1 to 4 and the elements in the sixth row, columns 5 to 8 of the DCT transformation matrix of Equation (2), and the third row Combination of the elements in columns 1 to 4 and the elements in columns 5 to 8 in row 7,
  • each element in the first column of the output data ⁇ , x7, X1, x6, ⁇ 2, 5, ⁇ 3, ⁇ 4 are obtained.
  • FIG. 7 is a diagram showing a fourth embodiment of the DCT operation circuit according to the present invention.
  • a pair of multiplexers 40 and 41 are connected to a hold register 11 for holding, for example, eight data input via a shift register 10.
  • Each of the multiplexers 40 and 41 is connected to one of the multipliers 42 and 45, and each of the multipliers 42 and 45 is connected to one of the coefficient storage ROMs 43 and 46.
  • the number is not particularly limited, for example, the 64 DCT conversion coefficients of the above equation (1) are divided into two sets and stored in the coefficient storage ROMs 43 and 46, each of which has 32 pieces.
  • the multiplier 42 multiplies the data input via the shift register 10, the hold register 11 and the multiplexer 40 by the DCT transform coefficient read from the coefficient storage OM43.
  • the multiplier 45 multiplies the data input via the shift register 10, the hold register 11, and the multiplexer 41 by the DCT transform coefficient read from the coefficient storage ROM 46.
  • Each operation in the multipliers 42 and 45 is processed in parallel.
  • the combination of the input data to be multiplied in each of the multipliers 42 and 45 and the DCT conversion coefficient is selected by the multiplexers 40 and 41 and the address counter 23 commonly connected to the coefficient storage ROMs 43 and 46.
  • An adder 47 is connected to the multipliers 42 and 45, and the multiplication results output from the multipliers 42 and 45 are added by the adder 47.
  • the adder 47 is connected to a cumulative adder 30 and a cumulative adder 31 via a sign inverter 32.
  • the four addition results successively output from the adder 47 are added as they are in the accumulator 30, and the sign is inverted by the sign inverter 32 for every other and added in the accumulator 31.
  • the output data obtained by the two accumulators 30, 31 is supplied to registers 19A, 19B, 20 and multiplexer 21. Output via
  • the DCT operation circuit 4 inputs half the data of one column in the input matrix to the multiplier 42, When the other half of the data of one column in the input matrix is input to 45, two DCT operation results are obtained.
  • the shift register 10, the hold register 11, the registers 19A, 19B, 20, the multiplexer 21, and the timing control unit 22 have the same configuration as in the first embodiment. Since the sign inverter 32 and the address counter 23 have the same configuration as in the second embodiment, the same reference numerals are assigned to them, and the description thereof will be omitted.
  • Half (four) of the eight data X0, XI, X4, and X5 of the eight data input through the shift register 10 and held in the hold register 11 are based on the address specified by the address counter 23.
  • the signals are sequentially selected by the multiplexer 40 and sent to the multiplier 42.
  • the remaining four data X2, X3, X6, and X7 of the hold register 11 are output based on the address designation of the address counter 23.
  • And are sequentially selected by the multiplexer 41 and sent to the multiplier 45.
  • the multiplier 42 sequentially reads the DCT conversion coefficients corresponding to the address specified by the address counter 23 from the coefficient storage ROM 43 in synchronization with the input of the four data, and outputs the DCT conversion coefficients d, a, d, e (DCT transform coefficients in the first row, first column, second column, fifth column, and sixth column of the first row of equation (1)) and the multiplexer 40 sequentially transmit The multiplication with the obtained data X0, XI, X4, X5 is performed respectively.
  • the multiplier 45 sequentially reads the DCT conversion coefficients corresponding to the address specified by the address counter 23 from the coefficient storage ROM 46 in synchronization with the input of the remaining four data, and the DCT conversion coefficients b, c, f and g (DCT transform coefficients in the third column, fourth column, seventh column, and eighth column of the first row of equation (1) in sequence) and the multiplexer 41 sequentially transmit.
  • the multiplication with the obtained data X2, X3, X6, X7 is performed, respectively.
  • the input timing of the data input from the multiplexers 40 and 41 to the multipliers 42 and 45 is controlled by the timing signal generated and output by the timing control unit 22, and the input timing of the data input to the shift register 10 is controlled.
  • the multiplication results dXO and bX2, aXI and cX3, dX4 and fX6, eX5 and gX7 from the multipliers 42 and 45 are input to the adder 47 in synchronization. Then, the adder 47 performs an addition process and sequentially outputs [dXO + bX2], [aXl + cX3], [dX4 + fX6], and [eX5 + gX7].
  • the data input / output timing of the adder 47 is controlled by a timing signal generated and output by the timing control unit 22, and is set to a half (T / 2) of an input period T of data input to the shift register 10. ) (Frequency: 20).
  • the addition result output from the adder 47 is divided into one of the accumulator 30 and the sign inverter.
  • the cumulative adder 30 cumulatively adds the four addition results sequentially sent from the adder 47, and calculates the result [dXO + bX2 + aXI + cX3 + dX4 + fX6 + eX5 + g X7] to register 19A.
  • the accumulator 31 is sequentially sent from the adder 47, and the sign inverter 3 Cumulatively adds the four addition results whose signs are inverted every other by 2 and calculates the result [dXO + b X2-a XI-c X3 + d X4 + f X6 one e X5-g X7] Output to register 19B.
  • the two accumulative addition results respectively input to the registers 19A and 19B are processed in the same manner as in the second embodiment, and output from the multiplexer 21 via the register 20 to become output data (inverse DCT operation result). Is output.
  • each of the first columns of the output data is obtained.
  • the elements ⁇ , xl, x2, ⁇ 3, ⁇ 4, ⁇ 5, ⁇ 6, ⁇ 7 are obtained.
  • the eight data (elements) in the first column of the output data are held in the registers 19A and 19B, the eight data are sent from the registers 19A and 19B to the register 20. , Are sequentially selected by the multiplexer 21 and output.
  • each element X0, X1, X2, X3, X4, X5, X6, and X7 in the first column of the input data input to the DCT operation circuit 1 at the period T (frequency: ⁇ ) are sequentially processed.
  • each element ⁇ , xl, x2, ⁇ 3, ⁇ 4, ⁇ 5, ' ⁇ 6, ⁇ 7 of the first column of the one-dimensional inverse DCT operation result is output with period ⁇ (frequency:.
  • the cumulative addition results are output from accumulators 30 and 31 to registers 19A and 19B at 2 ⁇ timing (frequency: ⁇ 2). Further, the timing control section 22 generates a sign inversion signal at the timing of ⁇ (frequency: ⁇ ) and outputs it to the sign inverter 32. Accordingly, the sign of the addition result input from the adder 47 to the accumulator 31 is inverted every other ⁇ 2 (frequency: 2 ⁇ ).
  • the DCT calculation circuit in each embodiment performs an inverse DCT calculation. Execute.
  • FIG. 9 is a diagram showing a DCT operation circuit according to a fifth embodiment of the present invention.
  • the DCT operation circuit 5 of the fifth embodiment executes a two-dimensional DCT operation using the one-dimensional DCT operation circuits 1, 2, 3, and 4 of the first, second, third, or fourth embodiment. Do Circuit. As shown in FIG. 9, the two-dimensional DCT operation circuit 5 receives the data of the input matrix into one of the one-dimensional DC ⁇ operation circuits 1 (2, 3, 4).
  • the one-dimensional DCT operation described in the third or fourth embodiment is performed, the output is input to the transposition RAM 6, and the output of the transposition RAM 6 is used as the other one-dimensional DCT operation circuit 1 (2 , 3 and 4), and the one-dimensional DCT operation described in the first, second, third or fourth embodiment is performed to obtain a two-dimensional DCT operation result.
  • FIG. 10 is a diagram showing an example of operation timing of the two-dimensional DCT operation circuit 5 of the fifth embodiment.
  • the one-dimensional DCT operation circuit 1 (2, 3, 4) on the input side of the two-dimensional DCT operation circuit 5 shown in FIG. 9 has 64 input data X00, X01, X02,.
  • the one-dimensional DCT operation Upon receiving the one-dimensional DCT operation, it performs a one-dimensional DCT operation and outputs the operation result x00, x01, x02,.
  • the transposition RAM 6 receives 64 operation results ⁇ , ⁇ , x02, ⁇ from the input-side one-dimensional DCT operation circuit 1 (2, 3, 4), the transpose RAM6 generates a matrix consisting of the received operation results.
  • each one-dimensional DCT operation circuit 1 (2, 3, 4) executes an inverse DCT operation.
  • the matrix data input to the two-dimensional DCT arithmetic circuit 5 of the present embodiment is not particularly shown, but the input image data is converted into DCT coefficients by another two-dimensional DCT arithmetic circuit for encoding.
  • the data is transformed, quantized by a quantizer, compressed, and further decompressed by an inverse quantizer.
  • the data output from the two-dimensional DCT operation circuit 5 is a motion compensation prediction unit (not shown). ).
  • the one-dimensional DCT operation circuits 1 and 2 operate at the normalized frequency 4.
  • the multiplier 13 sequentially multiplies each element of the DCT transform coefficient by each element of the input data, and adds the multiplication result by the accumulator 15.
  • a pair of cumulative addition results corresponding to the sum and difference of the pair of elements of the data to be output from the DCT operation circuit 1 are obtained, and these are added by the adder 17 and the subtractor 18 respectively.
  • performing the operation of subtracting to obtain the pair of elements of the output data by a half of the number of elements of the matrix of the input data, thereby obtaining the elements of the columns of the matrix of the output data.
  • a configuration in which all the elements of the matrix of output data are obtained by performing several times in the elements of the rows of the matrix, or a first cumulative addition of the multiplication result obtained by the multiplier 13 operating at the normalized frequency 4 Container 30 The addition is performed as it is, the sign is alternately inverted, and the operation of adding by the second accumulator 31 is performed one half of the number of elements of the matrix of the input data, thereby obtaining the matrix of the output data.
  • the element is obtained, and the processing is performed several times in the element of the matrix of the input data to obtain all the elements of the matrix of the output data. Therefore, only one multiplier is required, and the DCT operation circuit 1, As the size of 2 becomes smaller, the power consumption is reduced because the value of the product of the number of multipliers and the normalized frequency is 4.
  • a pair of multipliers 42, 45 operating at the standardized frequency 2 are provided for the one-dimensional DC-T arithmetic circuits 3, 4, and the DCT conversion is performed in parallel by the multipliers 42, 45, respectively.
  • the multiplication of the half element of the coefficient and the half element of the input data is sequentially performed, and the result of the multiplication is added by the adder 47 and further added by the accumulative adder 15.
  • a pair of accumulative addition results corresponding to the sum and difference of a pair of elements of data to be output are respectively obtained, added and subtracted by an adder 17 and a subtracter 18 respectively, and the output data is calculated.
  • the elements of the matrix of the output data are determined, and the process is performed several times in the elements of the rows of the input data matrix. This means that all elements of the output data matrix are Or a multiplication result obtained by a pair of multipliers 42, 45 operating at the normalized frequency 2 is added by an adder 47, and the result is added to a first accumulator 3 In addition to adding the input data as it is with 0, the operation of alternately inverting the sign and adding it by the second accumulator 31
  • the matrix elements of the output data are obtained by performing half the number of elements of the matrix of the matrix, and the processing is performed a number of times of the elements of the rows of the input data matrix, whereby the entire matrix of the output data is obtained. Since the value of the product of the number of multipliers and the normalized frequency is 4, the power consumption can be reduced.
  • the two-dimensional DCT arithmetic circuit 5 is connected to one or two of the above four configurations.
  • the total number of multipliers in the two one-dimensional DCT operation circuits 1 (2, 3, 4) is 2 to Only four are required, and the scale of the two-dimensional DCT operation circuit 5 is reduced, and power consumption is small because the product of the number of multipliers and the normalized frequency in the two-dimensional DCT operation circuit 5 is 8. .
  • the shift register 10, the hold register 11, the multiplexers 12, 21, the registers 19A, 19B, 20, the timing control unit 22, the address counter 23, etc. are not limited to the above embodiment, and can be variously changed. It is.
  • the present invention is not limited to the 8 ⁇ 8 DCT conversion, and is also applicable to a circuit that performs a 4 ⁇ 4 or 16 ⁇ 16 DCT conversion.
  • the invention made mainly by the inventor has been described assuming that the invention is applied to a decoding technique based on an inverse DCT operation of coded image data, which is a field of use as a background.
  • the invention is not limited thereto, and can be used for a data processing device that performs a DCT transform operation or an inverse DCT transform operation.
  • the scale of the discrete cosine transform operation circuit is reduced, and the multiplier and the normalized frequency Since the value of the product of this and 4 is 4, the power consumption is low.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Mathematical Optimization (AREA)
  • Theoretical Computer Science (AREA)
  • Transportation (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Automatic Cycles, And Cycles In General (AREA)

Description

明 細 書 離散コサイン変換演算回路 技術分野
本発明は、 画像データの処理技術さらには圧縮された画像データの伸張技術に 関し、 例えば J PEG (Joint Photographic Experts Group) 方式や MP EG
(Motion Picture Experts Group) 方式における離散コサイン変換演算回路に利 用して有用な技術に関する。 背景技術
従来、 離散コサイン変換(DCT: Discrete Cosine Transform)演算回路には、 入力データと D C T変換係数との乗算を行う乗算器が複数個設けられている。 例えば、 J PEG方式や MPEG方式で一般的に用いられている 8行 8列 (8 X 8) の DCTマトリクス演算の場合には、 8個の乗算器が設げられている。 しかし、 乗算器は多数のゲートを有しているため、 演算回路全体のゲート規模 が大きくなつてしまうという欠点がある。 また、 乗算器の動作周波数は DC T演 算結果の出力タイミングの周波数 (前記入力データの入力タイミングの周波数に 等しい。 ) と同じであり、 その比 (すなわち、 "1" ) と乗算器数との積は
"8" と大きく、 消費電力が大きくなつてしまうという欠点もある。 すなわち、 乗算器は高い動作周波数で駆動されるので、 その駆動の際に大きな電力を消費す る。 従来の技術では、 その乗算器の数が 8個と多いので、 より一層消費電力が大 きくなってしまう。
その改善策として、 特開平 4一 280368号公報に、 DCT演算回路に入力 されるデータの入力タイミングの 4倍の周波数で動作する 2個の乗算器を用いて 構成された DCT演算回路が開示されている。 この DCT演算回路は、 例えば入 力データの X uに対して、 一方の乗算器で DC T変換係数 d! d21, d31, d41との乗算を行い、 もう一方の乗算器で DC T変換係数 d 5い dei, d7 I, d 8iとの乗算を行い、 それぞれ 4個の乗算結果 x i i d i i, X 11 d2i, i i dai, X 1 1 d 41及び X 1 1 d 51, X 1 1 d 61, X 1 1 d 71, X 1 1 d 81を得るよう-に構成されて いる。 得られた 8個の乗算結果は 8個のレジスタにそれぞれ格納される。
次の χ 2 1に対しても同様に、 一方の乗算器で DCT変換係数 d 12, d22, d32, d42との乗算が行われ、 もう一方の乗算器で DCT変換係数 d52, d62, d72, d82との乗算が行われ、 それぞれ 4個の乗算結果 x21 d 12, X 2 i d22, X 2 i d32,
X 2 I d 42及ひ X 21 d 52, X 21 d 62, X 21 d 72, X 21 d 82力得られる。 そして、 得 られた 8個の乗算結果 X 21 d 12, X 21 d 22, X 2 I d 32, X 21 d 42, X 21 d 52, X 21 d62, X 21 d72, X 21 d82と、 前記 8個のレジスタから読み出された前回の 8個の来算結果 X! I d 1 1, X 11 d 21, X 1 1 d 31, 1 1 d 1, X 1 1 d 51, 1 1 d 61 , x .. d71, X l l d81と力 それぞれ加算器により加算され、 その加算結果が再び 前記 8個のレジスタに格納される。
このような乗算及び累積加算からなる演算を 8回繰り返すことによってマトリ クスの要素 y H〜y 81が求められる。 さらに上述した演算を 8回繰り返すことに よってマトリクスのすベての要素が求められ、 1次元の 8 X 8の DCTマトリク ス演算が完了する。
しかしながら、 上記特開平 4一 280368号公報に記載された DCT演算回 路では、 乗算器を 2個使用しているため、 回路規模の点でなお改善の余地が残さ れている。 すなわち、 できるだけ回路規模を縮小するためには、 乗算器の数を 1 個にするのが望ましい。
また、 上記公報の DC T演算回路では、 該 DC T演算回路に入力されるデータ の入力タイミングの 4倍の周波数で乗算器が動作する。 従って、 データの入カタ イミングの周波数に対する乗算器の動作周波数の比 (以下、 その比を規格化周波 数と称する。 ) と乗算器の数との積は "8" であり、 消費電力の点については何 ら改善されていない。 消費電力を小さくするには、 規格化周波数と乗算器の数と の積をできるだけ小さくすることが望ましい。
本発明はかかる事情に鑑みてなされたもので、 1次元離散コサイン変換演算回 路の乗算器の数と規格化周波数との積の値を 4とすることによって低消費電力化 を可能とし、 さらには乗算器の数を 1個にすることによつて回路規模を縮小可能 な離散コサイン変換演算回路を提供することを主たる目的としている。 この発明の前記ならびにそのほかの目的と新規な特徴については、 本明細書の 記述及び添附図面から明らかになるであろう。 発明の開示
本願において開示される発明のうち代表的なものの概要を説明すれば、 下記の 通りである。
すなわち、 本発明の離散コサイン変換演算回路においては、 該離散コサイン変 換演算回路に入力されるデータの入力タイミングの 4倍の周波数で動作する乗算 器を 1つ設け、 該乗算器により D C T変換係数の各要素と入力データの各要素と の乗算を順次行い、 その乗算結果を累積加算器により加算することにより、 この 離散コサイン変換演算回路から出力されるべきデータの一対の要素のそれぞれ和 と差に相当する一対の累積加算結果を求め、 それらを加算器及び減算器によりそ れぞれ加算及び減算して出力データの前記一対の要素を求める演算を入力デ一タ のマトリクスの列の要素数の 2分の 1回行うことにより出力データのマトリクス の列の要素を求め、 該処理を入力データのマトリクスの行の要素数回行うことに より出力データのマトリクスの全ての要素を求めるような構成とした。
また、 本発明の離散コサイン変換演算回路においては、 該離散コサイン変換演 算回路に入力されるデータの入力タイミングの 4倍の周波数で動作する乗算器を 1つ設け、 該乗算器により D C T変換係数の各要素と入力データの各要素との乗 算を順次行い、 その乗算結果を、 第 1の累積加算器によりそのまま加算するとと もに、 符号を交互に反転させて第 2の累積加算器により加算する演算を入力デ一 タのマトリクスの列の要素数の 2分の 1回行うことにより出力データのマトリク スの列の要素を求め、 該処理を入力データのマトリクスの行の要素数回行うこと により出力データのマトリクスの全ての要素を求めるような構成としてもよい。 さらに、 離散コサイン変換演算回路に入力されるデータの入力タイミングの 2 倍の周波数で動作する乗算器を 2つ設けるとともに、 D C T変換係数を 2組に分 けて R O Mに格納しておき、 D C T変換係数の各組の要素と入力データの各要素 との乗算を 2つの乗算器で同時に行うようにしてもよレ、。
さらにまた、 一対の 1次元離散コサイン変換演算回路と、 入力側の 1次元 D C T演算回路から受け取った演算結果 X Q。, X 01, Χ 02, ····よりなる行列の行の 要素と列の要素とを入れ替える行列演算を行ってその結果 Χ 00, X 10, Χ 20, · ·
-·を出力側の 1次元 DCT演算回路に出力する転置 RAMとからなる 2次元の離 散コサイン変換演算回路を、 上記構成の一方または両方の離散コサイン変換演算 回路を用いて構成した。
上記した手段によれば、 1次元の離散コサイン変換演算回路において、 乗算器 の数と規格化周波数との積の値が 4であるため、 消費電力が少なくて済む。 さら には、 乗算器を 1つとすることにより、 離散コサイン変換演算回路の規模が小さ くなる。 図面の簡単な説明
第 1図は、 第 1実施形態の DC T演算回路の概略を示すプロック図である。 第 2図は、 その動作タイミングの一部を示すタイムチヤ一トである。
第 3図は、 第 2実施形態の DCT演算回路の概略を示すプロック図である。 第 4図は、 その動作タイミングの一部を示すタイムチヤ一ト ある。
第 5図は、 第 3実施形態の DC T演算回路の概略を示すプロック図である。 第 6図は、 その動作タイミングの一部を示すタイムチヤ一トである。
第 7図は、 第 4実施形態の DC T演算回路の概略を示すプロック図である。 第 8図は、 その動作タイミングの一部を示すタイムチヤ一トである。
第 9図は、 第 5実施形態の DC T演算回路の概略を示すプロック図である。 第 1 0図は、 その動作タイミングを示すタイムチヤ一トである。 発明を実施するための最良の形態
第 1図は、 本発明に係る離散コサイン変換 (DCT) 演算回路の第 1実施形態 を示す図である。 この DC T演算回路 1においては、 シフトレジスタ 1 0、 ホー ルドレジスタ 1 1及びマルチプレクサ 1 2を介して入力データが乗算器 1 3に入 力されるとともに、 係数格納 ROM1 4から読み出された DCT変換係数が乗算 器 1 3に入力されてそれら入力データ及ぴ D C T変換係数の乗算が行なわれる。 そして、 その乗算結果が累積加算器 1 5で加算された後にデマルチプレクサ 1 6を介して加算器 1 7及び減算器 1 8に出力され、 加算及び減算の結果求められ た出力データがレジスタ 1 9 A, 1 9 B, 20及びマルチプレクサ 2 1を介して 出力されるようになっている。
マルチプレクサ 1 2と係数格納 ROM 1 4にはァドレスカウンタ 23が接続さ れており、 該ア ドレスカウンタ 23がインクリメントすることにより指定された ァドレスに対応する DC T変換係数が係数格納 ROM 1 4から出力されるととも に、 そのァ ドレスに該当するデータがマルチプレクサ 1 2によりホールドレジス タ 1 1から出力される。
各レジスタ 1 0, 1 1, 1 9 A, 1 9 B, 20やマルチプレクサ 1 2, 2 1及 び累積加算器 1 5におけるデータの入出力タイミング並びにァ ドレスカウンタ 2 3のインク リメントのタイミングは、 タイミング制御部 22から発せられるタイ ミング信号に基づいて制御される。 なお、 第 1図には、 タイミング制御部 22に 入力される基準クロック CLK (周波数を 00 とする。 ) と、 タイミング制御部 22からシフ トレジスタ 1 0、 ホールドレジスタ 1 1、 マルチプレクサ 1 2, 2 1、 累積加算器 1 5、 レジスタ 1 9 A, 1 9 B, 20及びア ドレスカウンタ 23 へそれぞれ出力される各タイミング信号の周波数を Φ (øはシフトレジスタ 10 へのデータの入力タイ ミングの周波数である。 ) を用いて表した。
この DCT演算回路 1は、 DCT変換係数の規則性に着目することによって、 乗算器 1 3に入力行列中の 1列のデータが入力されると 2つの DC T演算結果が 得られるようになっている。
まず、 DCT変換係数の規則性について説明する。
例えば、 8 X 8の 1次元逆 DC T演算は、 式 (1) のように DC T変換係数の 行列と入力係数行列の積で表される。
式 (1)
Figure imgf000007_0001
同式において、 左辺の 8 X 1行列が 1次元逆 DCT演算結果であり、 右辺の 8 X 8行列及び 8 X 1行列がそれぞれ DCT変換係数及び入力データである。 ここ で、 DCT変換マ トリ クス中の係数 a、 b、 c、 d、 e、 f 及び gは、 それぞれ、 以下の通りである。
a = cos ( π / 1 6 ) / i~ 2
b = cos ( 2 π / 1 6 ) / ~ 2
c = cos 3 π , 1 6) / 2
d = cos \4 π 1 6) /i2
e = cos ( 5 π 1 6) /12
f ― cos ( 6 π 1 6) / 2
g = cos ( 7 π 1 6) /12
式 (1 ) を変形すると、 式 (2) のようになる。 実施形態 1の DCT演算回路 1は、 この式 (2) の規則性を利用して 1次元逆 DC T演算結果を得るように なっている。 なお、 式 (1) 及び式 (2) には、 入力データ及び出力データにつ いて 8 X 8行列の第 1列目のみが示されているが、 第 2列目から第 8列目までも 第 1列目と同様である。
式 (2)
Figure imgf000008_0001
以下、 上記式 (2) の場合を例として DCT演算回路 1について、 第 2図に示 したタイミングチヤ一トを参照しながら、 詳述する。 なお、 シフトレジスタ 1 0 の入力タイミングにおいて、 X0', XI' , Χ2', Χ3', Χ4' , Χ5', Χ6'は、 シ フトレジスタ 1 0に直前のサイクルで入力されたデータ XO, XI , X2, X3 , X4 , X5 , X6 , X7 に対して DC T変換の演算処理を行っている間に新た にシフ トレジスタ 1 0に入力されるデータを表す (第 4図、 第 6図及び第 8図に おいても同じである) 。 シフトレジスタ 10には、 入力データの個々のデータ (要素) X0 , XI , X 2 , X3 , X4 , X5 , X6 , X7 が順次入力される。 シフトレジスタ 10に 8 個のデータが保持されると、 その 8個のデータは、 シフ トレジスタ 10からホー ノレドレジスタ 1 1に送られる。 シフトレジスタ 10に次の列の 8個のデータが保 持されるまで、 ホールドレジスタ 1 1はシフ トレジスタ 10から送られてきた 8 個のデータを保持する。 これによつて、 シフトレジスタ 10に連続的にデータが 入力しても、 一列分のデータをホールドレジスタ 1 1に保持することができるよ うになっている。
シフトレジスタ 10のデータの取込み及びシフトのタイミング、 ホールドレジ スタ 1 1のデータの取込みタイミング等は、 タイミング制御部 22で生成され出 力されるタイミング信号によって制御される。 例えば、 シフ トレジスタ 10では、 周期 Tのタイミング (周波数: φ) でデータの入力及びシフトが起こる。 ホール ドレジスタ 1 1は、 周期 8 Tのタイ ミング (周波数: φ/8) でシフ トレジスタ 10からデータを受け取る。
ホールドレジスタ 1 1に保持された 8個のデータは、 アドレ^カウンタ 23に より指定されるァドレスに基づいてマルチプレクサ 1 2により順次選択されて乗 算器 1 3に送られる。 乗算器 1 3は、 8個のデータの入力に同期して、 アドレス カウンタ 23により指定されるァドレスに対応する DC T変換係数を係数格納 R OM14から順次読み込み、 その DCT変換係数 b, f , d, d, a, c, e, gとマルチプレクサ 1 2から順次送られてきたデータ X2 , X6 , X0 , X4 ,
XI , X3 , X5 , X7 との乗算をそれぞれ行う。 各乗算結果 bX2 , f X6 , dXO , dX4 , a XI , c X3 , e X5 , g X7 は、 順次累積加算器 1 5の加 算器 1 5Aに送られる。 なお、 読み出された DCT変換係数は、 前半の 4つが式 (2) の第 1行目の第 1列〜第 4列までの要素であり、 後半の 4つが式 (2) の 第 5行目の第 5列〜第 8列までの要素である。
マルチプレクサ 1 2から乗算器 1 3に入力されるデータの入力タイミングは、 タイミング制御部 22で生成され出力されるタイミング信号によって制御されて おり、 シフ トレジスタ 10に入力されるデータの前記入力周期 Tの 4分の 1 (T /4) のタイミング (周波数: 4 ) である。 また、 乗算器 1 3から累積加算器 1 5へは 4分の T (Τ/4) のタイミング (周波数: 4 φ) で乗算結果が順次送 られる。 従って、 この第 1実施形態における乗算器の数と規格化周波数との積の 値は [1 X 4 = 4] である。
累積加算器 1 5は、 加算器 1 5 Αとレジスタ 1 5 Bとからなり、 乗算器 1 3か ら入力される前半の 4つの乗算結果 b X2 , f X6 , dXO , dX4 の累積加算 を行う。 すなわち、 最初の乗算結果である bX2 はレジスタ 1 5 Bに一旦保持さ れる。 そして、 乗算器 1 3から次の乗算結果 f X6 が入力されると、 それと同期 して b X2 がレジスタ 1 5 Bから加算器 1 5 Aに送られて加算器 1 5 Aにて [b X2 + f X6 ] の加算が行われ、 その加算結果は再びレジスタ 1 5 Bにー且保持 される。 dXO , dX4 の各乗算結果についても同様に、 レジスタ 1 5 Bに一旦 保持された [b X2 + ί X6 ] に d X0 が加算されて [b X2 + f X6 + d X0 ] が得られ、 それがー且レジスタ 1 5 Bに保持された後、 それにさらに dX4 が 加算されて [bX2 + f X6 + d X0 + dX4 ] が得られる。 このように 4つの 乗算結果を加算して得られた累積加算結果は、 デマルチプレクサ 16に送られ、 加算器 1 7及び滅算器 1 8に分配されて入力される。
一方、 乗算器 1 3から入力される後半の 4つの乗算結果 a XI , c X3 , e X 5 , gX7 についても同様に累積加算器 1 5により累積加算を行う.。 得られた累 積加算結果 [a XI + c X3 + e X5 + g X7 ] は、 デマルチプレクサ 1 6に送 られ、 加算器 1 7及び滅算器 18に分配されて入力される。
累積加算器 1 5からデマルチプレクサ 16への出力タイミングは、 タイミング 制御部 22で生成され出力されるタイミング信号によって制御されており、 入力 データの前記入力周期 T (周波数: Φ) と同じである。
加算器 1 7及び滅算器 1 8は、 それぞれ、 入力された 2つの累積加算結果 [b X2 + f X6 + d X0 + d X4 ] , [a XI + c X3 + e X5 + gX7 ] の加算 及び滅算を行う。 より具体的には、 累積加算器 1 5の結果が 2つずつ加算器 17 及び減算器 18に各々入力され、 加算器 1 7はそれらの和を、 また滅算器 18は 最初の入力値から次の入力値つまり奇数番目の入力値から偶数番目の入力値を引 いた値を逐次求める。 ここで、 式 (2) から明らかなように、 前記 1番目の累積 加算結果 [b X2 + f X6 + dXO + dX4 ] の 2倍及び前記 2番目の累積加算 結果 [a XI + c X3 + e X5 + g X7 ] の 2倍は、 それぞれ、 出力デーダ (逆 DCT演算結果) の要素である χθ と x7 の和 [xO + x7 ] 及び差 [χθ - x 7 ] に等しい。 従って、 加算器 1 7からは χθ が得られ、 同時に減算器 1 8から は x7 が得られる。 これら 2つの演算結果 χθ, x7 は入力データの前記入力周 期 Tの 2倍周期 (2T) でレジスタ 1 9 A, 1 9 Bに同時に格納される。
このような演算を、 式 (2) の DCT変換マトリクスの第 2行目第 1列〜第 4 列までの要素と第 6行目第 5列〜第 8列までの要素の組み合わせ、 第 3行目第 1 列〜第 4列までの要素と第 7行目第 5列〜第 8列までの要素の組み合わせ、 第 4 行目第 1列〜第 4列までの要素と第 8行目第 5列〜第 8列までの要素の組み合わ せについても行うことによって、 出力データの第 1列目の各要素 χθ, χ7 , X 1, x6, x2, x5, x3, x4 が得られる。
その結果、 レジスタ 1 9 Aには、 加算器 1 7から出力される出力データの各要 素 χθ, xl , χ2 , x3 が保持される。 一方、 レジスタ 1 9 Bには、 減算器 1 8から出力される出力データの各要素 X7, x6, χ5 , χ4 が保持される。 レ ジスタ 1 9A, 1 9 Βに出力データの第 1列目の 8個のデータ ' (要素) が保持さ れると、 その 8個のデータは、 レジスタ 1 9Α, 1 9 Βからレジスタ 20に送ら れる。 レジスタ 20に次の列の 8個のデータが保持されるまで、 レジスタ 20は レジスタ 1 9 Α, 1 9 Βから送られてきた 8個のデータを保持する。 なお、 加算 器 1 7及ぴ滅算器 1 8からレジスタ 1 9 Α, 1 9 Βへのデータの送信タイミング は、 タイミング制御部 22で生成され出力されるタイミング信号によって制御さ れており、 入力データの前記入力周期 Τの 2倍 (2Τ) のタイミング (周波数: /2) である。 そして、 レジスタ 1 9 A, 1 9 Βからレジスタ 20へのデータ 送信は 8 Τの周期 (周波数: 0 8) で行われる。
レジスタ 20に保持された出力データの各要素 xO, xl , x2, χ3 , x4 , x5, x6, x7 はマルチプレクサ 21により順次選択されて周期 Tのタイミ ング (周波数: Φ) で出力される。 これにより、 0じ丁演算回路1に周期丁 (周 波数: Φ) で入力された入力データの第 1列目の各要素 X0, XI, X2, X3 , X4, X5, X6, X7 に対して、 順番に 1次元 (逆) DCT演算結果の第 1 列目の各要素 xO, xl , χ2 , x3, χ4 , χ5 , χ6 , χ7 が周期 Τ (周波 数: 0) で出力される。
以上のような演算を、 入力データの第 2列目から第 8列目まで繰り返し行うこ とによって、 8 8の1次元 (逆) DCT演算結果が得られる。
第 3図は、 本発明に係る DCT演算回路の第 2実施形態を示す図である。 この 第 2実施形態の DC T演算回路 2においては、 上記第 1実施形態の DC T演算回 路 1と同様に乗算器 1 3において、 シフトレジスタ 10、 ホールドレジスタ 1 1 及びマルチプレクサ 1 2を介して入力されたデータと、 係数格納 ROM 14から 読み出された D C T変換係数との乗算が行われる。 乗算を行う対象となる入力 データと DCT変換係数との組合わせは、 マルチプレクサ 1 2及び係数格納 RO Ml 4に接続されたアドレスカウンタ 23により選択される。 そして、 その乗算 結果を 2つの累積加算器 30, 3 1によりそれぞれ加算することにより求められ た出力データがレジスタ 1 9 A, 1 9 B, 20及びマルチプレクサ 21を介して 出力されるようになっている。 ここで、 一方の累積加算器 (第 1の累積加算器) 30では乗算器 1 3から順次入力される乗算結果はそのまま加算され、 もう一方 の累積加算器 (第 2の累積加算器) 3 1では乗算器 1 3から順^入力ざれる乗算 結果は符号反転器 32により一つおきに符号が反転されて加算される。
各レジスタ 10, 11, 1 9A, 1 9 B, 20やマルチプレクサ 12, 21及 び累積加算器 30, 3 1におけるデータの入出力タイミング、 符号反転器 32の 符号反転タイミング並びにァドレスカウンタ 23のインクリメントのタイミング は、 タイミング制御部 22から発せられるタイミング信号に基づいて制御される。 なお、 第 3図には、 タイミング制御部 22に入力される基準クロック CLK (周 波数を Φ0 とする。 ) と、 タイミング制御部 22からシフ トレジスタ 10、 ホ一 ルドレジスタ 1 1、 マルチプレクサ 1 2, 21、 累積加算器 30, 31、 符号反 転器 32、 レジスタ 1 9 A, 1 9 B, 20及びアドレスカウンタ 23へそれぞれ 出力される各タイミング信号の周波数を ø (Φはシフ トレジスタ 10へのデータ の入力タイミングの周波数である。 ) を用いて表した。
この DC T演算回路 2は、 上記式 (1) で表された DC T変換係数の規則性に 着目することによって、 乗算器 1 3に入力行列中の 1列のデータが入力されると 2つの DC T演算結果が得られるようになつている。 以下、 上記式 (1 ) の場合を例として D CT演算回路 2について、 第 4図に示 したタイミングチヤ一トを参照しながら、 詳述する。
シフ トレジスタ 1 0、 ホーノレ ドレジスタ 1 1、 マノレチプレクサ 1 2, 2 1、 係 数格納 ROM 1 4、 乗算器 1 3、 レジスタ 1 9 A, 1 9 B, 2 0、 タイミング制 御部 2 2及びア ドレスカウンタ 2 3は、 上記第 1実施形態と同様の構成であるた め、 同一の符号を付してその説明を省略する。
乗算器 1 3には、 シフトレジスタ 1 0、 ホールドレジスタ 1 1及びマルチプレ クサ 1 2を介して、 入力データの個々のデータ (要素) X0, XI , X2, X3 , X4, X5, X6, X7 が T/4のタイミング (周波数: 4 φ) で順次入力さ れる。 また、 乗算器 1 3には、 データ Χ0, XI , Χ2, Χ3, Χ4, Χ5, X 6, Χ7 の入力タイミングに同期して、 係数格納 ROM 1 4から式 (1 ) の第 1 行目の D C Τ変換係数 d, a, b, c, d, e, f, gが順次入力される。
乗算器 1 3での乗算により得られた各乗算結果 d XO, a XI , b X2, c X 3, d X4 , e X5, f X6 , g X7 は、 順次、 TZ4のタイミング (周波数: 4 φ) で、 第 1の累積加算器 3 0の加算器 3 0 Αに送られるとともに、 符号反転 器 3 2により一つおきに符号が反転されて第 2の累積加算器 3 1の加算器 3 1 A にも送られる。 そして、 各累積加算器 3 0, 3 1の加算器 3 0 A, . 3 1 A及びレ ジスタ 3 0 B, 3 1 Bにより、 8個の乗算結果の加算が行われて、 第 1の累積加 算器 3 0では [d XO + a XI + b X2 + c X3 + d X4 + e X5 + f X6 + g X7 ] が得られ、 第 2の累積加算器 3 1では [d XO — a XI + b X2 — c X3 + d X4 - e X5 + f X6 — g X7 ] が得られる。 なお、 累積加算処理について は、 累積加算回数が 7回である以外は上記第 1実施形態の累積加算器 1 5におけ る処理と同様である。
式 (1 ) から明らかなように、 前記 1番目の累積加算結果 [d XO + a XI + b X2 + c X3 + d X4 + e X5 + f X6 + g X7 ] 及び前記 2番目の累積加算 結果 [d X0 — a XI + b X2 - c X3 + d X4 _ e X5 + f X6 — g X7 ] は、 それぞれ、 出力データ (逆 D CT演算結果) の要素である χθ 及び x7 に等しい。 従って、 第 1の累積加算器 3 0からは χθ が得られ、 同時に第 2の累積加算器か らは x7 が得られる。 これら 2つの演算結果 χθ, x7 はレジスタ 1 9 A, 1 9 Bに格納される。
このような演算を、 式 (1 ) の DCT変換マトリクスの第 2行目〜第 4行目 (第 7行目〜第 5行目) についても行うことによって、 出力データの第 1列目の 各要素 χθ , xl , x2 , χ3 , χ4 , χ5 , χ6 , χ7 が得られる。 レジスタ 1 9 A, 1 9 Bに出力データの第 1列目の 8個のデータ (要素) が保持されると、 その 8個のデータは、 レジスタ 1 9 A, 1 9 Bからレジスタ 20に送られ、 マル チプレクサ 2 1により順次選択されて出力される。 これにより、 DCT演算回路 1に周期 T (周波数: φ) で入力された入力データの第 1列目の各要素 X0 , X 1 , X2 , X3 , X4 , X5 , X6 , X7 に対して、 順番に 1次元逆 DCT演算 結果の第 1列目の各要素 χθ , xl , x2 , x3 , x4 , x5 , x6 , x7 が周 期 T (周波数: φ) で出力される。
以上のような演算を、 入力データの第 2列目力 ら第 8列目まで繰り返し行うこ とによって、 8 X 8の 1次元 DCT演算結果が得られる。
なお、 乗算器 1 3には、 シフトレジスタ 1 0に入力されるデータの入力周期 Τ の 4分の 1 (ΤΖ4) のタイミング (周波数: 4 Φ) でデ一タ及び DCT変換係 数が入力される。 そして、 乗算器 1 3から累積加算器 30, 3 1へは 4分の Τ (Τ/4) のタイミング (周波数: 4 0) で乗算結果が順次送られる。 従って、 この第 2実施形態における乗算器の数と規格化周波数との積の値は [1 X 4 = 4] である。 累積加算器 30, 3 1からレジスタ 1 9 A, 1 9 Bへは 2 Τのタイ ミング (周波数: φ/2) で累積加算結果が出力される。 また、 タイミング制御 部 22は、 Τ/ 2のタイミング (周波数: 2 Φ) で符号反転信号を生成して符号 反転器 3 2に出力する。 それによつて、 Τ/4 (周波数: 4 0) ごとに累積加算 器 3 1に入力される乗算結果の符号が一つおきに反転される。
第 5図は、 本発明に係る DCT演算回路の第 3実施形態を示す図である。 この 第 3実施形態の DC Τ演算回路 3においては、 シフトレジスタ 1 0を介して入力 された例えば 8個のデータを保持するホールドレジスタ 1 1に一対のマルチプレ クサ 40, 4 1が接続されており、 各マルチプレクサ 40, 4 1にそれぞれ 1個 ずつ乗算器 4 2, 4 5が接続され、 さらに各乗算器 4 2, 4 5にそれぞれ 1個ず つ係数格納 ROM4 3, 4 6が接続されている。 特にその数を限定しないが、 例 えば上記式 (2) の 32個の DCT変換係数 ( "0" を除く。 ) は、 2組に分け られてそれぞれ係数格納 ROM43, 46に 1 6個ずつ格納されている。 そして、 乗算器 42において、 シフトレジスタ 10、 ホールドレジスタ 1 1及 . びマルチプレクサ 40を介して入力されたデータと、 係数格納 ROM43から読
5 み出された DCT変換係数との乗算が行われる。 また、 乗算器 45において、 シ フトレジスタ 1 0、 ホールドレジスタ 1 1及びマルチプレクサ 41を介して入力 されたデータと、 係数格納 ROM46から読み出された DCT変換係数との乗算 が行われる。 乗算器 42, 45における各演算は並列処理される。 各乗算器 42, 45において乗算を行う対象となる入力データと D C T変換係数との組合わせは、 10 マルチプレクサ 40, 41及び係数格納 ROM43, 46に共通に接続されたァ ドレスカウンタ 23により選択される。
乗算器 42, 45には加算器 47が接続されており、 乗算器 42, 45からそ れぞれ出力された各乗算結果は、 加算器 47により加算される。 加算器 47には 累積加算器 1 5が接続されており、 加算器 47から連続して出力された 2つの加 15 算結果は累積加算器 1 5によりさらに加算される。
累積加算器 1 5から出力された加算結果は、 上記第 1実施形態の DC T演算回 路 1と同様に、 デマルチプレクサ 16を介して加算器 1 7及び滅算器 1 8に出力 され、 加算及び滅算の結果求められた出力データがレジスタ 1 9 A, 1 9 B, 2 0及びマルチプレクサ 21を介して出力される。
20 各レジスタ 10, 1 1, 1 9 A, 1 9 B, 20やマルチプレクサ 40, 41,
21及び累積加算器 1 5におけるデータの入出力タイミング並びにァドレスカウ ンタ 23のインクリメントのタイミングは、 タイミング制御部 22から発せられ るタイミング信号に基づいて制御される。 なお、 第 5図には、 タイミング制御部 22に入力される基準クロック CLK (周波数を Φ0 とする。 ) と、 タイミング - 25 制御部 22からシフトレジスタ 10、 ホールドレジスタ 1 1、 マルチプレクサ 4
0, 41, 21、 累積加算器 1 5、 レジスタ 1 9 A, 1 9 B, 20及びアドレス ' カウンタ 23へそれぞれ出力される各タイミング信号の周波数を Φ (Φはシフト レジスタ 10へのデータの入力タイミングの周波数である。 ) を用いて表した。 この DCT演算回路 3は、 上記式 (2) で表された DC T変換係数の規則性に 着目することによって、 乗算器 42に入力行列中の 1列の半分のデータが入力さ れるとともに、 乗算器 45に入力行列中の 1列の残りの半分のデ一タが入力され ると 2つの DC T演算結果が得られるようになつている。
以下、 上記式 (2) の場合を例として DCT演算回路 3について、 第 6図に示 したタイミングチャートを参照しながら、 詳述する。
シフ トレジスタ 10、 ホールドレジスタ 1 1、 累積加算器 1 5、 デマルチプレ クサ 1 6、 加算器 1 7、 滅算器 1 8、 レジスタ 1 9 A, 1 9 B, 20、 マルチプ レクサ 21、 タイミング制御部 22及びア ドレスカウンタ 23は、 上記第 1実施 形態と同様の構成であるため、 同一の符号を付してその説明を省略する。
シフトレジスタ 1 0を介して入力されホールドレジスタ 1 1に保持された 8個 のデータのうちの半分 (4個) のデータ X2, X0, XI , X5 は、 了ドレス力 ゥンタ 23により指定されるァドレスに基づいて、 マルチプレクサ 40により順 次選択されて乗算器 42に送られる。 その各データ X2, X0, XI , X5 の転 送タイミングにそれぞれ同期して、 ホールドレジスタ 1 1の残りの 4個のデータ X6, X4 , X3, X7 カ、 アドレスカウンタ 23のアドレス痏定に基づいて、 マルチプレクサ 41により順次選択されて乗算器 45に送られる。
乗算器 42は、 4個のデータの入力に同期して、 係数格納 ROM43からアド レスカウンタ 23により指定されるァドレスに対応する DCT変換係数を順次読 み込み、 その DCT変換係数 b, d, a , e ( bと dは式 (2) の第 1行目の第 1列目と第 3列目の DCT変化係数であり、 aと eは式 (2) の第 5行目の第 5 列目と第 7列目の DCT変換係数である。 ) とマルチプレクサ 40から順次送ら れてきたデータ X2, X0, XI , X5 との乗算をそれぞれ行う。 乗算器 45は、 残りの 4個のデータの入力に同期して、 係数格納 ROM 46からアドレスカウン タ 23により指定されるァドレスに対応する DCT変換係数を順次読み込み、 そ の DCT変換係数 f , d, c, g ( f と dは式 (2) の第 1行目の第 2列目と第 4列目の DC T変換係数であり、 cと gは式 (2) の第 5行目の第 6列目と第 8 列目の DCT変換係数である。 ) とマルチプレクサ 41から順次送られてきた データ X6 , X4 , X3 , X7 との乗算をそれぞれ行う。
マルチプレクサ 40, 41から乗算器 42, 45にそれぞれ入力されるデータ の入力タイミングは、 タイミング制御部 22で生成され出力されるタイミング信 号によって制御されており、 シフトレジスタ 10に入力されるデータの入力周期 Tの 2分の 1 (T/2) のタイミング (周波数: 2 φ) である。 すなわち、 乗算 器 42, 45の動作周波数は 2 øである。 従って、 この第 3実施形態における乗 算器の数と規格化周波数との積の値は [2 X 2 = 4] である。
加算器 47には、 乗算器 42及び乗算器 45からそれぞれの乗算結果 b X2 と f X6 、 dXO と dX4 、 a XI と c X3 、 e X5 と gX7 が同期して入力され る。 そして、 加算器 47は、 加算処理を行って [b X2 + f X6 ] 、 [dXO + d X4 ] 、 [ a X 1 + c X3 ] 及び [ e X5 + g X7 ] を累積加算器 15に順次 出力する。 加算器 47のデータの入出力タイミングは、 タイミング制御部 22で 生成され出力されるタイミング信号によって制御されており、 TZ2のタイミン グ (周波数: 2 ø) である。
累積加算器 15は、 加算器 47から入力される前半の 2つの乗算結果 [bX2 + f X6 ] と [dXO +dX4 ] の累積加算を行う。 その演算結果 [bX2 + f X6 + dXO + dX4 ] は、 デマルチプレクサ 16に送られ、 加算器 17及び滅 算器 18に分配されて入力される。 加算器 47から入力される後半の 2つの乗算 結果 [a Xl + c X3 ] と [eX5 + gX7 ] についても、 累積加算器 15によ り加算され、 その演算結果 [a XI + c X3 + e X5 +gX7 ] は、 デマルチプ レクサ 16に送られ、 加算器 17及び減算器 18に分配されて入力される。
累積加算器 15からデマルチプレクサ 16への出力タイミングは、 タイミング 制御部 22で生成され出力されるタイミング信号によって制御されており、 TZ 2のタイミング (周波数: 20) である。
加算器 17及び滅算器 18にそれぞれ入力された 2つの累積加算結果は、 これ 以降、 加算器 17、 减算器 18及びレジスタ 19 A, 19B, 20を介して上記 第 1実施形態と同様に処理され、 マルチプレクサ 21より出力データ (逆 DCT 演算結果) となって出力される。
このような演算を、 式 (2) の DCT変換マトリクスの第 2行目第 1列〜第 4 列までの要素と第 6行目第 5列〜第 8列までの要素の組み合わせ、 第 3行目第 1 列〜第 4列までの要素と第 7行目第 5列〜第 8列までの要素の組み合わせ、 第 4 行目第 1列〜第 4列までの要素と第 8行目第 5列〜第 8列までの要素の組み合わ せについても行うことによって、 出力データの第 1列目の各要素 χθ, x7, X 1 , x6, χ2 , χ5 , χ3 , χ4 が得られる。
以上のような演算を、 入力データの第 2列目力、ら第 8列目まで繰り返し行うこ とによって、 8 X 8の 1次元 DCT演算結果が得られる。
第 7図は、 本発明に係る DCT演算回路の第 4実施形態を示す図である。 この 第 4実施形態の DC Τ演算回路 4においては、 シフトレジスタ 1 0を介して入力 された例えば 8個のデータを保持するホールドレジスタ 1 1に一対のマルチプレ クサ 40, 4 1が接続されており、 各マルチプレクサ 40, 41にそれぞれ 1個 ずつ乗算器 42, 45が接続され、 さらに各乗算器 42, 45にそれぞれ 1個ず つ係数格納 ROM43, 46が接続されている。 特にその数を限定しないが、 例 えば上記式 (1) の 64個の DC T変換係数は、 2組に分けられてそれぞれ係数 格納 ROM43, 46に 32個ずつ格納されている。
そして、 乗算器 42において、 シフトレジスタ 10、 ホールドレジスタ 1 1及 ぴマルチプレクサ 40を介して入力されたデータと、 係数格納 OM43から読 み出された DCT変換係数との乗算が行われる。 また、 乗算器 45において、 シ フ トレジスタ 10、 ホールドレジスタ 1 1及びマルチプレクサ 41を介して入力 されたデータと、 係数格納 ROM46から読み出された DCT変換係数との乗算 が行われる。 乗算器 42, 45における各演算は並列処理される。 各乗算器 42, 45において乗算を行う対象となる入力データと D C T変換係数との組合わせは、 マルチプレクサ 40, 41及び係数格納 ROM43, 46に共通に接続されたァ ドレスカウンタ 23により選択される。
乗算器 42, 45には加算器 47が接続されており、 乗算器 42, 45からそ れぞれ出力された各乗算結果は、 加算器 47により加算される。 加算器 47には、 累積加算器 30と、 符号反転器 32を介して累積加算器 31が接続されている。 加算器 47から連続して出力された 4つの加算結果は、 累積加算器 30におい てそのまま加算されるとともに、 符号反転器 32により 1つおきに符号が反転さ れて累積加算器 31において加算される。 2つの累積加算器 30, 31により求 められた出力データはレジスタ 19 A, 1 9 B, 20及びマルチプレクサ 21を 介して出力される。
各レジスタ 10, 1 1, 1 9A, 1 9 B, 20やマルチプレクサ 40, 4 1, 21及び累積加算器 30, 3 1におけるデータの入出力タイミング、 符号反転器 32の符号反転タイ ミング並びにァドレスカウンタ 23のインクリメントのタイ ミングは、 タイミング制御部 22から発せられるタイミング信号に基づいて制御 される。 なお、 第 7図には、 タイミング制御部 22に入力される基準クロック C LK (周波数を Φ0 とする。 ) と、 タイミング制御部 22からシフ トレジスタ 1 0、 ホールドレジスタ 1 1、 マルチプレクサ 40, 41, 21、 累積加算器 30, 3 1、 符号反転器 32、 レジスタ 1 9A, 1 9 B, 20及びア ドレスカウンタ 2 3へそれぞれ出力される各タイミング信号の周波数を φ (φはシフトレジスタ 1
0へのデータの入力タイミングの周波数である。 ) を用いて表した。
この DCT演算回路 4は、 上記式 (1) で表された DCT変換係数の規則性に 着目することによって、 乗算器 42に入力行列中の 1列の半分のデータが入力さ れるとともに、 乗算器 45に入力行列中の 1列の残りの半分のデータが入力され ると 2つの DCT演算結果が得られるようになつている。
以下、 上記式 (1) の場合を例として DCT演算回路 4について、 第 8図に示 したタイミングチャートを参照しながら、 詳述する。
シフ トレジスタ 10、 ホールドレジスタ 1 1、 レジスタ 1 9 A, 1 9 B, 20、 マルチプレクサ 21及びタイミング制御部 22は、 上記第 1実施形態と同様の構 成であり、 また累積加算器 30, 3 1、 符号反転器 32及びアドレスカウンタ 2 3は、 上記第 2実施形態と同様の構成であるので、 それぞれ同一の符号を付して その説明を省略する。
シフトレジスタ 10を介して入力されホールドレジスタ 1 1に保持された 8個 のデータのうちの半分 (4個) のデータ X0, XI, X4, X5 は、 アドレス力 ゥンタ 23により指定されるアドレスに基づいて、 マルチプレクサ 40により順 次選択されて乗算器 42に送られる。 その各データ X0, XI, X4, X5 の転 送タイミングにそれぞれ同期して、 ホールドレジスタ 1 1の残りの 4個のデータ X2, X3, X6, X7 力;、 ァドレスカウンタ 23のァドレス指定に基づいて、 マルチプレクサ 41により順次選択されて乗算器 45に送られる。 乗算器 42は、 4個のデータの入力に同期して、 係数格納 ROM43からアド レスカウンタ 23により指定されるァドレスに対応する DC T変換係数を順次読 み込み、 その DCT変換係数 d, a, d, e (順番に式 (1) の第 1行目の第 1 列目、 第 2列目、 第 5列目、 第 6列目の DCT変換係数である。 ) とマルチプレ クサ 40から順次送られてきたデータ X0 , XI , X4 , X5 との乗算をそれぞ れ行う。 乗算器 45は、 残りの 4個のデータの入力に同期して、 係数格納 ROM 46からアドレスカウンタ 23により指定されるァドレスに対応する DC T変換 係数を順次読み込み、 その DCT変換係数 b, c, f , g (順番に式 (1) の第 1行目の第 3列目、 第 4列目、 第 7列目、 第 8列目の DCT変換係数である。 ) とマルチプレクサ 4 1から順次送られてきたデータ X2 , X3 , X6 , X7 との 乗算をそれぞれ行う。
マルチプレクサ 40, 4 1から乗算器 42, 45にそれぞれ入力されるデータ の入力タイミングは、 タイミング制御部 22で生成され出力されるタイミング信 号によって制御されており、 シフトレジスタ 10に入力されるデータの入力周期 Tの 2分の 1 (T/2) のタイミング (周波数: 2 Φ) である。'すなわち、 乗算 器 42, 45の動作周波数は 2 «ί»である。 従って、 この第 4実施形態における乗 算器の数と規格化周波数との積の値は [2 X 2 = 4] である。
加算器 47には、 乗算器 42及び乗算器 45からそれぞれの乗算結果 dXO と bX2 、 a XI と c X3 、 dX4 と f X6 、 e X5 と gX7 が同期して入力され る。 そして、 加算器 47は、 加算処理を行って [dXO +bX2 ] 、 [a Xl + c X3 ] 、 [dX4 + f X6 ] 及び [ e X5 + g X7 ] を順次出力する。 加算器 47のデータの入出力タイミングは、 タイミング制御部 22で生成され出力され るタイミング信号によって制御されており、 シフトレジスタ 10に入力される データの入力周期 Tの 2分の 1 (T/2) のタイミング (周波数: 20) である。 加算器 47から出力された加算結果は、 一方の累積加算器 30及び符号反転器
32を介して他方の累積加算器 31へ送られる。 累積加算器 30は、 加算器 47 から順次送られてくる 4つの加算結果を累積的に加算し、 その結果 [dXO +b X2 + a XI + c X3 + d X4 + f X6 + e X5 + g X7 ] をレジスタ 1 9 Aへ 出力する。 累積加算器 3 1は、 加算器 47から順次送られてきて、 符号反転器 3 2により一つおきに符号を反転された 4つの加算結果を累積的に加算し、 その結 果 [dXO + b X2 - a XI - c X3 + d X4 + f X6 一 e X5 - g X7 ] をレ ジスタ 1 9 Bへ出力する。
レジスタ 1 9A, 1 9 Bにそれぞれ入力された 2つの累積加算結果は、 上記第 2実施形態と同様に処理され、 レジスタ 20を介してマルチプレクサ 21より出 力データ (逆 DCT演算結果) となって出力される。
このような演算を、 式 (1) の DCT変換マトリクスの第 2行目〜第 4行目 (第 7行目〜第 5行目) についても行うことによって、 出力データの第 1列目の 各要素 χθ, xl , x2, χ3 , χ4 , χ5, χ6 , χ7 が得られる。 レジスタ 1 9 A, 1 9 Bに出力データの第 1列目の 8個のデータ (要素) が保持されると、 その 8個のデータは、 レジスタ 1 9A, 1 9 Bからレジスタ 20に送られ、 マル チプレクサ 21により順次選択されて出力される。 これにより、 DCT演算回路 1に周期 T (周波数: φ) で入力された入力データの第 1列目の各要素 X0, X 1 , X2, X3, X4, X5, X6 , X7 に対して、 順番に 1次元逆 DCT演算 結果の第 1列目の各要素 χθ, xl , x2, χ3 , χ4 , χ5,' χ6, χ 7 が周 期 Τ (周波数: で出力される。
以上のような演算を、 入力データの第 2列目から第 8列目まで繰り返し行うこ とによって、 8 X 8の 1次元 DCT演算結果が得られる。
なお、 累積加算器 30, 31からレジスタ 1 9A, 1 9 Bへは 2Τのタイミン グ (周波数: ø 2) で累積加算結果が出力される。 また、 タイミング制御部 2 2は、 Τのタイミング (周波数: φ) で符号反転信号を生成して符号反転器 32 に出力する。 それによつて、 ΤΖ2 (周波数: 2 φ) ごとに加算器 47から累積 加算器 3 1に入力される加算結果の符号が一つおきに反転される。
なお、 例えば MP EGまたはそれに準ずる規格における画像データ復号化処理 に上述した第 1、 第 2、 第 3及び第 4実施形態を適用する場合には、 各実施形態 の D C T演算回路は逆 D C T演算を実行する。
第 9図は、 本発明に係る DC T演算回路の第 5実施形態を示す図である。 この 第 5実施形態の DC T演算回路 5は、 上記第 1、 第 2、 第 3または第 4実施形態 の 1次元 DCT演算回路 1, 2, 3, 4を用いて 2次元の DCT演算を実行する 回路である。 この 2次元 DC T演算回路 5は、 第 9図に示すように、 一方の 1次 元 DC Τ演算回路 1 (2, 3, 4) に入力行列のデータが入力されて上記第 1、 第 2、 第 3または第 4実施形館で説明した 1次元 DC T演算が行われ、 その出力 が転置 RAM 6に入力され、 その転置 RAM 6の出力がもう一方の 1次元 DC T 演算回路 1 (2, 3, 4) に入力され、 さらに上記第 1、 第 2、 第 3または第 4 実施形態で説明した 1次元 D C T演算が行われて 2次元 D C T演算結果が得られ るようになっている。
第 10図は、 第 5実施形態の 2次元 DC T演算回路 5の動作タイミングの一例 を示す図である。 第 9図に示した 2次元 D C T演算回路 5の入力側の 1次元 D C T演算回路 1 (2, 3, 4) は、 8 X 8行列の 64個の入力データ X00, X01, X02, ····を受け取ると、 1次元 DCT演算を行い、 その演算結果 x00, x01, x02, ·· ··を固定遅延 D 1の後に転置 RAM6に出力する。 転置 RAM6は、 入 力側の 1次元 DC T演算回路 1 (2, 3, 4) から 64個の演算結果 χΟΟ, χθΐ, x02, ·'· 'を受け取ると、 その受け取った演算結果よりなる行列の行の要素と列 の要素とを入れ替える行列演算を行い、 その結果 x00, xlO, x20, ····を出力 側の 1次元 DCT演算回路 1 (2, 3, 4) に出力する。 出力側の 1次元 DC T 演算回路 1 (2, 3, 4) は、 転置 RAM6から 64個の演算結果 x00, x 10, x20, ····を受け取ると、 その受け取った演算結果に対してさらに 1次元 DC T 演算を行い、 その演算結果 y 00, y 10, y20, · ' ' ·を固定遅延 D 2の後に出力す る。 このような演算を行うことによって、 2次元の DCT演算結果が得られる。 なお、 例えば M P E Gまたはそれに準ずる規格における画像データ復号化処理 に本実施形態を適用する場合には、 各 1次元 DCT演算回路 1 (2, 3, 4) は 逆 DC T演算を実行する。 その場合には、 本実施形態の 2次元 DC T演算回路 5 に入力される行列のデータは、 特に図示しないが、 入力画像のデータを別の符号 化用の 2次元 DCT演算回路により DCT係数に変換し、 それを量子化器により 量子化して圧縮し、 さらにそれを逆量子化器により伸張したデータであり、 また 2次元 DCT演算回路 5から出力されるデータは、 動き補償予測部 (図示せ ず。 ) に送られる。
以上詳述したように、 1次元の DCT演算回路 1, 2を、 規格化周波数 4で動 作する乗算器 1 3を 1つ設け、 該乗算器 1 3により D C T変換係数の各要素と入 力データの各要素との乗算を順次行い、 その乗算結果を累積加算器 1 5により加 算することにより、 この D C T演算回路 1から出力されるべきデータの一対の要 素のそれぞれ和と差に相当する一対の累積加算結果を求め、 それらを加算器 1 7 及び滅算器 1 8によりそれぞれ加算及び減算して出力データの前記一対の要素を 求める演算を入力データのマトリタスの列の要素数の 2分の 1回行うことにより 出力データのマトリクスの列の要素を求め、 該処理を入力データのマトリクスの 行の要素数回行うことにより出力データのマトリクスの全ての要素を求めるよう な構成、 或は、 規格化周波数 4で動作する乗算器 1 3により得られる乗算結果を、 第 1の累積加算器 3 0によりそのまま加算するとともに、 符号を交互に反転させ て第 2の累積加算器 3 1により加算する演算を入力データのマトリタスの列の要 素数の 2分の 1回行うことにより出力データのマトリクスの列の要素を求め、 該 処理を入力データのマトリタスの行の要素数回行うことにより出力データのマト リクスの全ての要素を求めるような構成どしたため、 乗算器が 1つで済み、 D C T演算回路 1, 2の規模が小さくなるとともに、 乗算器数と規格化周波数との積 の値が 4であるので消費電力が少なくて済む。
また、 1次元の D C -T演算回路 3, 4を、 規格化周波数 2で動作する一対の乗 算器 4 2, 4 5を設け、 該乗算器 4 2, 4 5で並行してそれぞれ D C T変換係数 の半分の要素と入力データの半分の要素との乗算を順次行い、 その乗算結果を加 算器 4 7で加算してからさらに累積加算器 1 5により加算することにより、 この D C T演算回路から出力されるべきデータの一対の要素のそれぞれ和と差に相当 する一対の累積加算結果を求め、 それらを加算器 1 7及び減算器 1 8によりそれ ぞれ加算及び滅算して出力データの前記一対の要素を求める演算を入力データの マトリタスの列の要素数の 2分の 1回行うことにより出力データのマトリタスの 列の要素を求め、 該処理を入力データのマトリクスの行の要素数回行うことによ り出力データのマトリクスの全ての要素を求めるような構成、 或は、 規格化周波 数 2で動作する一対の乗算器 4 2 , 4 5により得られる乗算結果を加算器 4 7で 加算し、 その結果を第 1の累積加算器 3 0によりそのまま加算するとともに、 符 号を交互に反転させて第 2の累積加算器 3 1により加算する演算を入力データの マトリタスの列の要素数の 2分の 1回行うことにより出力データのマトリクスの 列の要素を求め、 該処理を入力データのマトリクスの行の要素数回行うことによ り出力データのマトリクスの全ての要素を求めるような構成としたため、 乗算器 数と規格化周波数との積の値が 4であるので消費電力が少なくて済む。
さらに、 2次元の DCT演算回路 5を、 上記 4つの構成のうちの 1または 2の
1次元 DCT演算回路 1 (2, 3, 4) を 2つと転置 RAM6とからなる構成と したため、 2つの 1次元 DC T演算回路 1 (2, 3, 4) における乗算器の合計 数が 2〜 4個で済み、 2次元 DC T演算回路 5の規模が小さくなるとともに、 2 次元 D C T演算回路 5における乗算器数と規格化周波数との積の値が 8であるの で消費電力が少なくて済む。
以上本発明者によってなされた発明を実施形態に基づき具体的に説明したが、 本発明は上記実施形飽に限定されるものではなく、 その要旨を逸脱しない範囲で 種々変更可能であることはいうまでもない。
例えば、 シフ トレジスタ 10、 ホールドレジスタ 1 1、 マルチプレクサ 1 2, 21、 レジスタ 1 9 A, 1 9 B, 20、 タイミング制御部 22、' アドレスカウン タ 23などは上記実施形態に限らず、 種々変更可能である。
また、 本発明は、 8 X 8の DCT変換に限らず 4 X 4や 16 X 1 6の DCT変 換を行う回路にも適用可能である。
以上の説明では主として本発明者によってなされた発明をその背景となった利 用分野である符号化された画像データの逆 DCT演算によるデコード技術に適用 されることを想定して説明したが、 この発明はそれに限定されるものではなく、 D C T変換演算あるいは逆 D C T変換演算を行うデータ処理装置に利用すること ができる。 産業上の利用可能性
以上説明したように、 本発明によれば、 1次元離散コサイン変換演算回路にお いて、 乗算器が 1つであるため、 離散コサイン変換演算回路の規模が小さくなる とともに、 乗算器と規格化周波数との積の値が 4であるため、 消費電力が少なく て済む。

Claims

請 求 の 範 囲
1 . 所定の変換係数を格納した係数格納部と、
該係数格納部から読み出された前記変換係数と外部から入力される入力データ との乗算を行う乗算部とを備え、
該乗算部から順次出力される乗算結果に対して所定の演算を行なうことにより 離散コサイン変換演算結果を出力する回路であって、
外部から入力される前記データの入力タイミングの周波数に対する前記乗算部 の動作周波数の比の値と、 前記乗算器の数との積の値が 4であることを特徴とす る離散コサイン変換演算回路。
2 . D C T変換係数を格納した係数格納部と、
該係数格納部から読み出された前記 D C T変換係数と外部から入力される入力 データとの乗算を行う乗算部と、
該乗算結果を前回までの乗算結果の和に加算する累積加算部と、
累積加算結果同士の加算を行う加算部と、
累積加算結果同士の滅算を行う減算部と、
該加算結果及ぴ該減算結果を保持する複数のレジスタと、
該複数のレジスタの出力を選択するマルチプレクサと、
前記累積加算部からの累積加算結果の出力タイミングを制御するタイミング制 御部とを備え、
前記乗算部及び前記累積加算部により、 順次入力される入力データの各要素と 前記係数格納部から順次読み出された D C T変換係数の各要素との乗算及び累積 加算を行って、 前記マルチプレクサから出力されるべき出力データの複数の要素 のうちの一対の要素の和及ぴ差にそれぞれ相当する第 1の累積加算結果及び第 2 の累積加算結果を求め、 それら第 1の累積加算結果及び第 2の累積加算結果をと もに前記加算部及び前記減算部の両方に入力させ、 前記加算部により、 前記第 1 の累積加算結果と前記第 2の累積加算結果との加算を行って出力データの前記一 対の要素のうちの一方の要素を求めるとともに、 前記減算部により、 前記第 1の 累積加算結果と前記第 2の累積加算結果との減算を行って出力データの前記一対 の要素のうちのもう一方の要素を求める演算を入力データのマトリタスの列の要 素数の 2分の 1回行うことにより出力データのマトリクスの列の要素を求め、 該 処理を入力データのマトリクスの行の要素数回行うことにより出力データのマト リクスの全ての要素を求めるように構成されていることを特徴とする請求の範囲 第 1項記載の離散コサイン変換演算回路。
3 . D C T変換係数を格納した係数格納部と、
該係数格納部から読み出された前記 D C T変換係数と外部から入力される入力 デ一タとの乗算を行う乗算部と、
該乗算結果をそのまま前回までの乗算結果の和に加算する第 1の累積加算部と、 同乗算結果をそのまま或は符号を反転させて前回までの乗算結果の和に加算す る第 2の累積加算部と、
該第 2の累積加算部に入力する前記乗算結果に対してその符号を反転させる符 号反転部と、
前記第 1の累積加算部及び前記第 2の累積加算部の各累積加算結果を保持する 複数のレジスタと、
該複数のレジスタの出力を選択するマルチプレクサと、
前記第 1の累積加算部及び前記第 2の累積加算部からの各累積加算結果の出力 タイミング並びに前記符号反転部による符号反転タイミングを制御するタイミン グ制御部とを備え、
前記乗算部により、 順次入力される入力データの各要素と前記係数格納部から 順次読み出された D C T変換係数の各要素との乗算を行い、 該乗算結果を前記第 1の累積加算部によりそのまま累積加算するとともに、 同乗算結果を前記第 2の 累積加算部及び前記符号反転部により 1つおきに符号を反転させて累積加算する 演算を入力データのマトリクスの列の要素数の 2分の 1回行うことにより出力 データのマトリタスの列の要素を求め、 該処理を入力データのマトリタスの行の 要素数回行うことにより出力データのマトリタスの全ての要素を求めるように構 成されていることを特徴とする請求の範囲第 1項記載の離散コサイン変換演算回 路。
4 . 二組に分けられた D C T変換係数のそれぞれの組の係数を格納した一対の係 数格納部と、
該一対の係数格納部からそれぞれ一つずつ読み出された前記 D C T変換係数と、 外部から入力され該 D C T変換係数に対応した入力データとの乗算を同時に行う 一対の乗算部と、
該一対の乗算部から出力される各乗算結果を加算する第 1の加算部と、 該第 1の加算部からの出力結果を前回までの出力結果の和に加算する累積加算 部と、
累積加算結果同士の加算を行う第 2の加算部と、
累積加算結果同士の滅算を行う減算部と、
前記第 2の加算部から出力される加算結果及び前記減算部から出力される減算 結果を保持する複数のレジスタと、
該複数のレジスタの出力を選択するマルチプレクサと、
前記累積加算部からの累積加算結果の出力タイミングを制御するタイミング制 御部とを備え、
順次入力される入力データの各要素と前記一対の係数格納部からそれぞれ順次 読み出された D C T変換係数の各要素との乗算を前記一対の乗算部により行い、 得られた一対の乗算結果を前記第 1の加算部により加算し、 その加算結果を前記 累積加算部により累積加算して、 前記マルチプレクサから出力されるべき出力 データの複数の要素のうちの一対の要素の和及び差にそれぞれ相当する第 1の累 積加算結果及び第 2の累積加算結果を求め、 それら第 1の累積加算結果及び第 2 の累積加算結果をともに前記第 2の加算部及び前記減算部の両方に入力させ、 前 記第 2の加算部により、 前記第 1の累積加算結果と前記第 2の累積加算結果との 加算を行って出力デ一タの前記一対の要素のうちの一方の要素を求めるとともに、 前記減算部により、 前記第 1の累積加算結果と前記第 2の累積加算結果との減算 を行って出力データの前記一対の要素のうちのもう一方の要素を求める演算を入 力データのマトリタスの列の要素数の 2分の 1回行うことにより出力データのマ トリクスの列の要素を求め、 該処理を入力データのマトリクスの行の要素数回行 うことにより出力データのマトリクスの全ての要素を求めるように構成されてい ることを特徴とする請求の範囲第 1項記載の離散コサイン変換演算回路。
5 . 二組に分けられた D C T変換係数のそれぞれの組の係数を格納した一対の係 数格納部と、
該一対の係数格納部からそれぞれ一つずつ読み出された前記 D C T変換係数と、 外部から入力され該 D C T変換係数に対応した入力データとの乗算を同時に行う 一対の乗算部と、
該一対の乗算部から出力される各乗算結果を加算する加算部と、
該加算部からの出力結果をそのまま前回までの出力結果の和に加算する第 1の 累積加算部と、
前記加算部からの出力結果をそのまま或は符号を反転させて前回までの出力結 果の和に加算する第 2の累積加算部と、
該第 2の累積加算部に入力する前記加算部からの出力結果に してその符号を 反転させる符号反転部と、
前記第 1の累積加算部及び前記第 2の累積加算部の各累積加算結果を保持する 複数のレジスタと、
該複数のレジスタの出力を選択するマルチプレクサと、
前記第 1の累積加算部及び前記第 2の累積加算部からの各累積加算結果の出力 タイミング並びに前記符号反転部による符号反転タイミングを制御するタイミン グ制御部とを備え、
順次入力される入力データの各要素と前記一対の係数格納部からそれぞれ順次 読み出された D C T変換係数の各要素との乗算を前記一対の乗算部により行い、 得られた一対の乗算結果を前記加算部により加算し、 その加算結果を前記第 1の 累積加算部によりそのまま累積加算するとともに、 前記加算部から出力される加 算結果を前記符号反転部により 1つおきに符号を反転させて前記第 2の累積加算 部により累積加算する演算を入力データのマトリクスの列の要素数の 2分の 1回 行うことにより出力データのマトリタスの列の要素を求め、 該処理を入力データ のマトリクスの行の要素数回行うことにより出力データのマトリクスの全ての要 素を求めるように構成されていることを特徴とする請求の範囲第 1項記載の離散 コサイン変換演算回路。
6 . 請求の範囲第 1項、 第 2項、 第 3項、 第 4項または第 5項のいずれかに記載 の離散コサイン変換演算回路からなり、 入力データのマトリタスに対して離散コ サイン変換の演算を行う第 1の演算回路と、
該第 1の離散コサイン変換演算回路の出力するマトリクスを入力とし、 かつ該 入力マトリクスの行の要素と列の要素とを入れ替えたマトリクスを生成する転置 R AMと、
請求の範囲第 1項、 第 2項、 第 3項、 第 4項または第 5項のいずれかに記載の 離散コサイン変換演算回路からなり、 前記転置 R AMの出力するマトリクスを入 力とし、 かつ該入力マトリクスに対して離散コサイン変換の演算を行う第 2の演 算回路とを備えた 2次元離散コサイン変換演算回路。
PCT/JP1996/000461 1995-06-01 1996-02-28 Circuit de transformation en cosinus discrets WO1996038794A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US08/952,653 US6185595B1 (en) 1995-06-01 1996-02-28 Discrete cosine transformation operation circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP13543895 1995-06-01
JP7/135438 1995-06-01

Publications (1)

Publication Number Publication Date
WO1996038794A1 true WO1996038794A1 (fr) 1996-12-05

Family

ID=15151731

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1996/000461 WO1996038794A1 (fr) 1995-06-01 1996-02-28 Circuit de transformation en cosinus discrets

Country Status (3)

Country Link
US (1) US6185595B1 (ja)
KR (2) KR19990022657A (ja)
WO (1) WO1996038794A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007010694A1 (ja) * 2005-07-15 2007-01-25 Matsushita Electric Industrial Co., Ltd. 画像符号化装置及び画像符号化方法
CN115587621A (zh) * 2022-09-26 2023-01-10 南京大学 一种实现快速二维dct变换的装置及其方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3547972B2 (ja) 1998-01-30 2004-07-28 三洋電機株式会社 離散コサイン変換回路
JP3524747B2 (ja) 1998-01-30 2004-05-10 三洋電機株式会社 離散コサイン変換回路
JP3547971B2 (ja) * 1998-01-30 2004-07-28 三洋電機株式会社 離散コサイン変換回路及びその動作方法
KR100275933B1 (ko) * 1998-07-14 2000-12-15 구자홍 엠펙디코더의 역이산여현변환장치
US6343304B1 (en) * 1999-03-09 2002-01-29 National Science Council Apparatus with selective fixed-coefficient filter for performing recursive discrete cosine transforms
AU2578001A (en) * 1999-12-10 2001-06-18 Broadcom Corporation Apparatus and method for reducing precision of data
US6895421B1 (en) * 2000-10-06 2005-05-17 Intel Corporation Method and apparatus for effectively performing linear transformations
US7066943B2 (en) * 2001-03-30 2006-06-27 Zirkle Jr Lewis G Method and apparatus for locating and stabilizing an orthopedic implant
KR20030061739A (ko) * 2003-06-18 2003-07-22 문흥만 벨트 자전거
US7756351B2 (en) * 2003-12-19 2010-07-13 Stmicroelectronics, Inc. Low power, high performance transform coprocessor for video compression
US20060277041A1 (en) * 2005-06-06 2006-12-07 Stig Stuns Sparse convolution of multiple vectors in a digital signal processor
DE102006025713B9 (de) * 2005-10-28 2013-10-17 Infineon Technologies Ag Kryptographie-Vorrichtung und Kryptographie-Verfahren zum Berechnen eines Ergebnisses einer modularen Multiplikation
KR100853023B1 (ko) 2007-02-16 2008-08-20 임춘남 접이식 자전거
KR20110017303A (ko) * 2009-08-13 2011-02-21 삼성전자주식회사 회전변환을 이용한 영상 부호화, 복호화 방법 및 장치
US20110137969A1 (en) * 2009-12-09 2011-06-09 Mangesh Sadafale Apparatus and circuits for shared flow graph based discrete cosine transform
KR200481031Y1 (ko) * 2014-04-11 2016-08-05 백영구 자전거용 무단변속기

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03211604A (ja) * 1990-01-17 1991-09-17 Nec Corp ディジタル信号処理装置
JPH04277932A (ja) * 1991-03-06 1992-10-02 Nec Corp 画像データ圧縮装置
JPH04280368A (ja) * 1991-03-08 1992-10-06 Fujitsu Ltd Dctマトリクス演算回路
JPH05181896A (ja) * 1991-12-27 1993-07-23 Nec Corp 離散コサイン変換処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0150350B1 (ko) * 1994-05-10 1998-10-15 모리시다 요이치 직교변환 프로세서

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03211604A (ja) * 1990-01-17 1991-09-17 Nec Corp ディジタル信号処理装置
JPH04277932A (ja) * 1991-03-06 1992-10-02 Nec Corp 画像データ圧縮装置
JPH04280368A (ja) * 1991-03-08 1992-10-06 Fujitsu Ltd Dctマトリクス演算回路
JPH05181896A (ja) * 1991-12-27 1993-07-23 Nec Corp 離散コサイン変換処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007010694A1 (ja) * 2005-07-15 2007-01-25 Matsushita Electric Industrial Co., Ltd. 画像符号化装置及び画像符号化方法
JPWO2007010694A1 (ja) * 2005-07-15 2009-01-29 パナソニック株式会社 画像符号化装置及び画像符号化方法
CN115587621A (zh) * 2022-09-26 2023-01-10 南京大学 一种实现快速二维dct变换的装置及其方法

Also Published As

Publication number Publication date
KR19990022657A (ko) 1999-03-25
KR19990046837A (ko) 1999-07-05
KR100257026B1 (ko) 2000-05-15
US6185595B1 (en) 2001-02-06

Similar Documents

Publication Publication Date Title
WO1996038794A1 (fr) Circuit de transformation en cosinus discrets
EP0506111A2 (en) DCT/IDCT processor and data processing method
JP2750438B2 (ja) 2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法
US5550765A (en) Method and apparatus for transforming a multi-dimensional matrix of coefficents representative of a signal
US5260897A (en) Signal processing circuit
JPH03501539A (ja) ビデオ信号処理システム
JPH09198373A (ja) 逆離散コサイン変換プロセッサおよびmpegデコーダ
JP3852895B2 (ja) 乗法演算節減可能な二次元離散コサイン変換及びその逆変換の実行方法
JPH04242861A (ja) 内積演算回路
US6052703A (en) Method and apparatus for determining discrete cosine transforms using matrix multiplication and modified booth encoding
US4853887A (en) Binary adder having a fixed operand and parallel-serial binary multiplier incorporating such an adder
JPH09198371A (ja) パラレルデータワード・シリアルワード変換装置および分配演算装置
EP0831404A2 (en) Two-dimensional inverse discrete cosine transform circuit
JPH07200539A (ja) 二次元dct演算装置
JP2002007112A (ja) 剰余演算計算方法および剰余演算計算装置
US20050004962A1 (en) Scalable system for inverse discrete cosine transform and method thereof
JPH05174046A (ja) 演算回路
JP2657903B2 (ja) パイプライン式及び心収縮式の単命令多重データストリームのアレイプロセッサ及びその方法
KR910008454B1 (ko) 변환 회로
US7738713B2 (en) Method for processing digital image with discrete wavelet transform and apparatus for the same
JP3575991B2 (ja) 直交変換回路
JP2526287B2 (ja) 演算回路
JP2646844B2 (ja) 離散コサイン変換装置
KR960028549A (ko) 프랙탈 영상 부호화를 위한 고속 아핀 변환장치
JPH09198372A (ja) キャリー値発生装置および加減算mビット値発生装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP KR SG US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1019970709234

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 08952653

Country of ref document: US

122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 1019970709234

Country of ref document: KR

WWW Wipo information: withdrawn in national office

Ref document number: 1019970709234

Country of ref document: KR

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载