JP4405452B2 - Inverse conversion circuit - Google Patents

Inverse conversion circuit Download PDF

Info

Publication number
JP4405452B2
JP4405452B2 JP2005267350A JP2005267350A JP4405452B2 JP 4405452 B2 JP4405452 B2 JP 4405452B2 JP 2005267350 A JP2005267350 A JP 2005267350A JP 2005267350 A JP2005267350 A JP 2005267350A JP 4405452 B2 JP4405452 B2 JP 4405452B2
Authority
JP
Japan
Prior art keywords
product
unit
processing
sum operation
data
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2005267350A
Other languages
Japanese (ja)
Other versions
JP2007079972A (en
Inventor
弘一 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005267350A priority Critical patent/JP4405452B2/en
Publication of JP2007079972A publication Critical patent/JP2007079972A/en
Application granted granted Critical
Publication of JP4405452B2 publication Critical patent/JP4405452B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)

Description

この発明は、例えば、離散コサイン変換(DCT)などの直交変換を用いた画像符号化方式の復号装置において、直交変換符号化された画像データを直交逆変換して復元する逆変換回路に関するものである。   The present invention relates to an inverse transform circuit that restores an orthogonal transform transform of image data that has been subjected to orthogonal transform coding in a decoding device that employs an orthogonal transform such as a discrete cosine transform (DCT), for example. is there.

例えば、下記の非特許文献1に開示されている従来の一次元逆変換回路は、動画像符号化の国際標準であるMPEG−2で採用されている逆DCTアルゴリズムを実装している。
下記の式(1)は、非特許文献1に開示されている逆DCTアルゴリズムを示している。

Figure 0004405452
式(1)において、d0〜d7は、入力データであり、Ca,Cbは変換行列である。 For example, a conventional one-dimensional inverse transform circuit disclosed in Non-Patent Document 1 below implements an inverse DCT algorithm adopted in MPEG-2, which is an international standard for moving picture coding.
Equation (1) below shows the inverse DCT algorithm disclosed in Non-Patent Document 1.
Figure 0004405452
In Expression (1), d 0 to d 7 are input data, and C a and C b are transformation matrices.

従来の一次元逆変換回路では、式(1)の演算結果f0〜f3に対して、例えば、四捨五入のような、全ての行要素に対して均一の丸め方法が採用されている。 In the conventional one-dimensional inverse transformation circuit, a uniform rounding method is adopted for all the row elements, for example, rounding off, for the calculation results f 0 to f 3 of the formula (1).

S.Uramoto et al.,“A 100−MHz 2−D Discrete Cosigne Transform Core Processor,”IEEE Journal of Solid−State Circuits, vol. 27, No.4, April 1992.S. Uramoto et al. "A 100-MHz 2-D Discrete Cosine Transform Core Processor," IEEE Journal of Solid-State Circuits, vol. 27, no. 4, April 1992.

従来の逆変換回路は以上のように構成されているので、逆変換結果に対して丸め処理を実施する場合、その逆変換結果の全ての行要素に対して均一の丸め方法が採用されている。このため、一つの逆変換回路で複数の逆変換アルゴリズムを実行することができないなどの課題があった。   Since the conventional inverse transformation circuit is configured as described above, when a rounding process is performed on the inverse transformation result, a uniform rounding method is adopted for all the row elements of the inverse transformation result. . For this reason, there existed problems, such as being unable to perform a some inverse transformation algorithm with one inverse transformation circuit.

この発明は上記のような課題を解決するためになされたもので、多様な仕様の逆変換アルゴリズムを実行することができる逆変換回路を得ることを目的とする。   The present invention has been made to solve the above-described problems, and an object thereof is to obtain an inverse conversion circuit capable of executing inverse conversion algorithms having various specifications.

この発明に係る逆変換回路は、入力データである列データを順次入力して、各列データに対する1ビット符号拡張付の右シフト処理を実施するとともに、その右シフト処理を実施する前の列データと、その右シフト処理を実施した後の列データとを加算する加算処理を実施し、その右シフト処理を実施する前の列データ、その右シフト処理を実施した後の列データ、または、その加算処理後の列データのいずれかを選択して出力する入力前処理手段と、予め第1及び第2の変換行列を格納し、第1及び第2の変換行列の各行データを出力するテーブル手段と、上記入力前処理手段から出力された列データと上記テーブル手段から出力された第1の変換行列の行データとの積和演算を実施する第1の積和演算手段と、上記入力前処理手段から出力された列データと上記テーブル手段から出力された第2の変換行列の行データとの積和演算を実施する第2の積和演算手段と、上記第1の積和演算手段の演算結果と上記第2の積和演算手段の演算結果との加算処理又は減算処理を実施する後処理手段と、上記後処理手段における加算結果又は減算結果の行要素毎に、別々の丸め処理を実施する丸め処理手段と、上記丸め処理手段による丸め処理後の加算結果又は減算結果を所定のクリッピング範囲内に収めるクリップ処理を実施するクリッピング手段とを備えたものである。 The inverse conversion circuit according to the present invention sequentially inputs column data as input data, performs right shift processing with 1-bit sign extension on each column data, and column data before the right shift processing is performed. And the column data after performing the right shift processing, the column data before performing the right shift processing, the column data after performing the right shift processing, or the Input pre-processing means for selecting and outputting any of column data after addition processing, and table means for storing first and second transformation matrices in advance and outputting each row data of the first and second transformation matrices First product-sum operation means for performing a product-sum operation on the column data output from the input pre-processing means and the row data of the first transformation matrix output from the table means, and the input pre-processing Out of the means Second product-sum operation means for performing the product-sum operation on the column data and the row data of the second transformation matrix output from the table means, the operation result of the first product-sum operation means, and the above Post-processing means for performing addition processing or subtraction processing with the operation result of the second product-sum operation means, and rounding processing for performing separate rounding processing for each row element of the addition result or subtraction result in the post-processing means. And a clipping means for performing a clipping process for keeping the addition result or the subtraction result after the rounding processing by the rounding processing means within a predetermined clipping range.

以上のように、この発明によれば、多様な仕様の逆変換アルゴリズムを実行することができる効果がある。 As described above, according to the present invention, there is an effect capable of performing an inverse transformation algorithm diverse specifications.

実施の形態1.
図1はこの発明の実施の形態1による一次元の逆変換回路を示す構成図であり、図において、入力前処理部1は入力データである列データd0〜d3を順次入力して、その列データd0〜d3を列単位に格納し、その列データd0〜d3を積和演算部3〜6に出力する。なお、入力前処理部1は入力前処理手段を構成している。
係数テーブル2は予め変換行列Cを格納し、その変換行列Cの行データc0〜c3を積和演算部3〜6に出力する(変換行列Cの行データc0〜c3はベクトルであり、下記の式(2)を参照)。なお、係数テーブル2はテーブル手段を構成している。
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a one-dimensional inverse conversion circuit according to Embodiment 1 of the present invention. In FIG. 1, an input preprocessing unit 1 sequentially inputs column data d 0 to d 3 as input data, and stores the column data d 0 to d 3 in units of columns, and outputs the column data d 0 to d 3 in the product-sum operation unit 3-6. The input preprocessing unit 1 constitutes an input preprocessing means.
Coefficient table 2 stores in advance conversion matrix C, row data c 0 to c 3 of (transformation matrix C for outputting row data c 0 to c 3 of the transformation matrix C to the product-sum operation unit 3-6 is a vector Yes, see equation (2) below). The coefficient table 2 constitutes table means.

積和演算部3は入力前処理部1から出力された列データd0〜d3と係数テーブル2から出力された行データc0との積和演算を実施する。
積和演算部4は入力前処理部1から出力された列データd0〜d3と係数テーブル2から出力された行データc1との積和演算を実施する。
積和演算部5は入力前処理部1から出力された列データd0〜d3と係数テーブル2から出力された行データc2との積和演算を実施する。
積和演算部6は入力前処理部1から出力された列データd0〜d3と係数テーブル2から出力された行データc3との積和演算を実施する。
なお、積和演算部3〜6は積和演算手段を構成している。
The product-sum operation unit 3 performs a product-sum operation on the column data d 0 to d 3 output from the input preprocessing unit 1 and the row data c 0 output from the coefficient table 2.
The product-sum operation unit 4 performs a product-sum operation on the column data d 0 to d 3 output from the input preprocessing unit 1 and the row data c 1 output from the coefficient table 2.
The product-sum operation unit 5 performs a product-sum operation on the column data d 0 to d 3 output from the input preprocessing unit 1 and the row data c 2 output from the coefficient table 2.
The product-sum operation unit 6 performs a product-sum operation on the column data d 0 to d 3 output from the input preprocessing unit 1 and the row data c 3 output from the coefficient table 2.
The product-sum operation units 3 to 6 constitute product-sum operation means.

可変丸め部7は積和演算部3〜6が積和演算を実施すると、その演算結果の行要素毎に、別々の丸め処理を実施する。なお、可変丸め部7は丸め処理手段を構成している。
クリッピング処理部8は可変丸め部7による丸め処理後の演算結果f0〜f3を所定のクリッピング範囲内に収めるクリップ処理を実施する。なお、クリッピング処理部8はクリッピング手段を構成している。
出力処理部9はクリッピング処理部8によるクリップ処理後の演算結果f0〜f3を格納し、その演算結果f0〜f3を外部出力する。
When the product-sum operation units 3 to 6 perform the product-sum operation, the variable rounding unit 7 performs a different rounding process for each row element of the operation result. The variable rounding unit 7 constitutes rounding processing means.
The clipping processing unit 8 performs a clipping process in which the calculation results f 0 to f 3 after the rounding process by the variable rounding unit 7 fall within a predetermined clipping range. Note that the clipping processing unit 8 constitutes clipping means.
The output processing unit 9 stores the calculation results f 0 to f 3 after the clipping processing by the clipping processing unit 8 and outputs the calculation results f 0 to f 3 to the outside.

次に動作について説明する。
この実施の形態1による一次元逆変換回路にて実現可能な、4点逆変換アルゴリズムの一例を下記の式(2)に示す。

Figure 0004405452
式(2)において、 0 〜d は、一次元逆変換回路の入力データである列データ、eは行要素毎に別々の丸め処理を実現するための定数項である。
式(2)の例では、第1行目はマイナス方向に丸め処理を実施し、その他の行はプラス方向に丸め処理を実施する。
なお、記号“>>”は、符号拡張付の右シフト処理を表している。 Next, the operation will be described.
An example of a four-point inverse transformation algorithm that can be realized by the one-dimensional inverse transformation circuit according to the first embodiment is shown in the following equation (2).
Figure 0004405452
In the formula (2), d 0 ~d 3 is a constant term for realizing separate rounding column data as input data of one-dimensional inverse transform circuit, for each e row elements.
In the example of Expression (2), the first line is rounded in the negative direction, and the other lines are rounded in the positive direction.
Note that the symbol “>>” represents right shift processing with sign extension.

入力前処理部1は、入力データである列データd0〜d3を順次入力すると、その列データd0〜d3を列単位に格納する。
そして、入力前処理部1は、列データd0〜d3をそれぞれ積和演算部3〜6に出力する。
Input preprocessing unit 1, when sequentially inputting the column data d 0 to d 3 is the input data, stores the column data d 0 to d 3 in the column unit.
Then, the input pre-processing unit 1 outputs the column data d 0 to d 3 to the product-sum operation unit 3-6, respectively.

係数テーブル2は、予め変換行列Cを格納し、その変換行列Cの第1行である行データc0={2,2,2,1}を積和演算部3に出力し、その変換行列Cの第2行である行データc1={2,1,−2,−2}を積和演算部4に出力する。
また、その変換行列Cの第3行である行データc2={2,−1,−2,2}を積和演算部5に出力し、その変換行列Cの第4行である行データc3={2,−2,2,−1}を積和演算部6に出力する。
The coefficient table 2 stores a transformation matrix C in advance, and outputs the row data c 0 = {2, 2, 2, 1}, which is the first row of the transformation matrix C, to the product-sum operation unit 3, and the transformation matrix C The row data c 1 = {2,1, −2, −2} which is the second row of C is output to the product-sum operation unit 4.
Also, the row data c 2 = {2, −1, −2, 2} which is the third row of the transformation matrix C is output to the product-sum operation unit 5, and the row data which is the fourth row of the transformation matrix C. Output c 3 = {2, −2,2, −1} to the product-sum operation unit 6.

積和演算部3は、入力前処理部1から列データd0〜d3を受け、係数テーブル2から行データc0を受けると、下記の式(3)に示すように、その列データd0〜d3と行データc0との積和演算を実施し、その演算結果S0を可変丸め部7に出力する。

Figure 0004405452
When the product-sum operation unit 3 receives the column data d 0 to d 3 from the input preprocessing unit 1 and the row data c 0 from the coefficient table 2, the column data d as shown in the following equation (3). A product-sum operation is performed on 0 to d 3 and row data c 0, and the operation result S 0 is output to the variable rounding unit 7.
Figure 0004405452

積和演算部4は、入力前処理部1から列データd0〜d3を受け、係数テーブル2から行データc1を受けると、積和演算部3と同様に、その列データd0〜d3と行データc1との積和演算を実施し、その演算結果S1を可変丸め部7に出力する。
また、積和演算部5は、入力前処理部1から列データd0〜d3を受け、係数テーブル2から行データc2を受けると、積和演算部3と同様に、その列データd0〜d3と行データc2との積和演算を実施し、その演算結果S2を可変丸め部7に出力する。
積和演算部6は、入力前処理部1から列データd0〜d3を受け、係数テーブル2から行データc3を受けると、積和演算部3と同様に、その列データd0〜d3と行データc3との積和演算を実施し、その演算結果S3を可変丸め部7に出力する。
When the product-sum operation unit 4 receives the column data d 0 to d 3 from the input preprocessing unit 1 and the row data c 1 from the coefficient table 2, the product-sum operation unit 4 receives the column data d 0 to A product-sum operation is performed on d 3 and row data c 1, and the operation result S 1 is output to the variable rounding unit 7.
When the product-sum operation unit 5 receives the column data d 0 to d 3 from the input preprocessing unit 1 and the row data c 2 from the coefficient table 2, the column-data d as well as the product-sum operation unit 3. A product-sum operation is performed on 0 to d 3 and row data c 2, and the operation result S 2 is output to the variable rounding unit 7.
When the product-sum operation unit 6 receives the column data d 0 to d 3 from the input preprocessing unit 1 and the row data c 3 from the coefficient table 2, the product-sum operation unit 6 receives the column data d 0 to A product-sum operation is performed on d 3 and the row data c 3, and the operation result S 3 is output to the variable rounding unit 7.

可変丸め部7は、積和演算部3〜6から積和演算の演算結果S0,S1,S2,S3を受けると、積和演算部3の演算結果S0に対する1ビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f0をクリッピング処理部8に出力する。
一方、積和演算部4〜6の演算結果S1,S2,S3については、各演算結果S1,S2,S3に“1”をそれぞれ加算してから、1ビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f1〜f3をクリッピング処理部8に出力する。
Variable rounding unit 7 receives the operation result of multiply-add operation from product-sum operation unit 3 to 6 S 0, S 1, S 2, S 3, of 1 bit for the operation result S 0 of the product-sum operation unit 3 right Shift processing (rounding processing) is performed, and the operation result f 0 after rounding processing is output to the clipping processing unit 8.
On the other hand, for the calculation results S 1 , S 2 , S 3 of the product-sum calculation units 4 to 6, “1” is added to each of the calculation results S 1 , S 2 , S 3 , and then right-shifted by 1 bit. Processing (rounding processing) is performed, and the calculation results f 1 to f 3 after the rounding processing are output to the clipping processing unit 8.

クリッピング処理部8は、可変丸め部7から丸め処理後の演算結果f0〜f3を受けると、その演算結果f0〜f3が符号付き16ビット整数の範囲(クリッピング範囲)を外れる場合には、その演算結果f0〜f3をクリッピング範囲内に収めるため、その演算結果f0〜f3がクリッピング範囲の最大値より大きければ、その演算結果f0〜f3をクリッピング範囲の最大値に置換するクリップ処理を実施する。また、可変丸め部7による丸め処理後の演算結果f0〜f3がクリッピング範囲の最小値より小さければ、その演算結果f0〜f3をクリッピング範囲の最小値に置換するクリップ処理を実施する。 When the clipping processing unit 8 receives the calculation results f 0 to f 3 after the rounding process from the variable rounding unit 7, the clipping processing unit 8 determines that the calculation results f 0 to f 3 are out of the signed 16-bit integer range (clipping range). Since the calculation results f 0 to f 3 fall within the clipping range, if the calculation results f 0 to f 3 are larger than the maximum value of the clipping range, the calculation results f 0 to f 3 are converted to the maximum value of the clipping range. The clip processing to be replaced with is performed. If the calculation results f 0 to f 3 after the rounding process by the variable rounding unit 7 are smaller than the minimum value of the clipping range, clip processing for replacing the calculation results f 0 to f 3 with the minimum value of the clipping range is performed. .

出力処理部9は、クリッピング処理部8によるクリップ処理後の演算結果f0〜f3を格納し、クリップ処理後の演算結果をf0〜f3の順番で外部出力する。
これにより、式(2)に示す4点逆変換アルゴリズムが実行されることになる。
The output processing unit 9 stores the calculation results f 0 to f 3 after the clip processing by the clipping processing unit 8 and outputs the calculation results after the clip processing to the outside in the order of f 0 to f 3 .
As a result, the four-point inverse transformation algorithm shown in Expression (2) is executed.

以上で明らかなように、この実施の形態1によれば、入力前処理部1から出力された列データd0〜d3と係数テーブル2から出力された行データc0〜c3との積和演算を実施する積和演算部3〜6を設け、可変丸め部7が積和演算部3〜6における演算結果の行要素毎に、別々の丸め処理を実施するように構成したので、定数項eを適宜設定することで、多様な仕様の逆変換アルゴリズムを実行することができる効果を奏する。 As apparent from the above, according to the first embodiment, the product of the column data d 0 to d 3 output from the input preprocessing unit 1 and the row data c 0 to c 3 output from the coefficient table 2 is obtained. Since the product-sum operation units 3 to 6 for performing the sum operation are provided and the variable rounding unit 7 is configured to perform separate rounding processing for each row element of the operation result in the product-sum operation units 3 to 6, the constant By appropriately setting the term e, it is possible to execute inverse transformation algorithms with various specifications.

実施の形態2.
図2はこの発明の実施の形態2による一次元の逆変換回路を示す構成図であり、図において、入力前処理部31は入力データである列データd0〜d7を順次入力して、その列データd0〜d7を列単位に格納し、その列データd0,d2,d4,d6を積和演算部14〜17に出力するとともに、その列データd1,d3,d5,d7を積和演算部18〜21に出力する。なお、入力前処理部11は入力前処理手段を構成している。
係数テーブル12は予め第1の変換行列Caを格納し、第1の変換行列Caの行データca0〜ca3を積和演算部14〜17に出力する処理を実施する(変換行列Caの行データca0〜ca3はベクトルであり、下記の式(4)を参照)。
係数テーブル13は予め第2の変換行列Cbを格納し、第2の変換行列Cbの行データcb0〜cb3を積和演算部18〜21に出力する処理を実施する(変換行列Cbの行データcb0〜cb3はベクトルであり、下記の式(4)を参照)。
なお、係数テーブル12,13はテーブル手段を構成している。
Embodiment 2. FIG.
FIG. 2 is a block diagram showing a one-dimensional inverse conversion circuit according to Embodiment 2 of the present invention. In FIG. 2, an input preprocessing unit 31 sequentially inputs column data d 0 to d 7 as input data, The column data d 0 to d 7 are stored in units of columns, and the column data d 0 , d 2 , d 4 , d 6 are output to the product-sum operation units 14 to 17 and the column data d 1 , d 3 are output. , D 5 , d 7 are output to the product-sum operation units 18 to 21. Note that the input preprocessing unit 11 constitutes an input preprocessing means.
The coefficient table 12 stores in advance the first transformation matrix C a, the row data c a0 to c a3 of the first transformation matrix C a and carries out a process of outputting to the product-sum operation unit 14 to 17 (conversion matrix C row data c a0 to c a3 of a is a vector, see equation (4) below).
The coefficient table 13 stores the second conversion matrix C b in advance, and performs processing for outputting the row data c b0 to c b3 of the second conversion matrix C b to the product-sum operation units 18 to 21 (conversion matrix C row data c b0 to c b3 of b is a vector, see equation (4) below).
The coefficient tables 12 and 13 constitute table means.

積和演算部14は入力前処理部11から出力された列データd0,d2,d4,d6と係数テーブル12から出力された第1の変換行列Caの行データca0との積和演算を実施する。
積和演算部15は入力前処理部11から出力された列データd0,d2,d4,d6と係数テーブル12から出力された第1の変換行列Caの行データca1との積和演算を実施する。
積和演算部16は入力前処理部11から出力された列データd0,d2,d4,d6と係数テーブル12から出力された第1の変換行列Caの行データca2との積和演算を実施する。
積和演算部17は入力前処理部11から出力された列データd0,d2,d4,d6と係数テーブル12から出力された第1の変換行列Caの行データca3との積和演算を実施する。
なお、積和演算部14〜17は第1の積和演算手段を構成している。
The product-sum operation unit 14 calculates the column data d 0 , d 2 , d 4 , d 6 output from the input preprocessing unit 11 and the row data c a0 of the first transformation matrix C a output from the coefficient table 12. Perform product-sum operation.
The product-sum operation unit 15 calculates the column data d 0 , d 2 , d 4 , d 6 output from the input preprocessing unit 11 and the row data c a1 of the first transformation matrix C a output from the coefficient table 12. Perform product-sum operation.
The product-sum operation unit 16 calculates the column data d 0 , d 2 , d 4 , d 6 output from the input preprocessing unit 11 and the row data c a2 of the first transformation matrix C a output from the coefficient table 12. Perform product-sum operation.
The product-sum operation unit 17 calculates the column data d 0 , d 2 , d 4 , d 6 output from the input preprocessing unit 11 and the row data c a3 of the first transformation matrix C a output from the coefficient table 12. Perform product-sum operation.
The product-sum operation units 14 to 17 constitute first product-sum operation means.

積和演算部18は入力前処理部11から出力された列データd1,d3,d5,d7と係数テーブル13から出力された第2の変換行列Cbの行データcb0との積和演算を実施する。
積和演算部19は入力前処理部11から出力された列データd1,d3,d5,d7と係数テーブル13から出力された第2の変換行列Cbの行データcb1との積和演算を実施する。
積和演算部20は入力前処理部11から出力された列データd1,d3,d5,d7と係数テーブル13から出力された第2の変換行列Cbの行データcb2との積和演算を実施する。
積和演算部21は入力前処理部11から出力された列データd1,d3,d5,d7と係数テーブル13から出力された第2の変換行列Cbの行データcb3との積和演算を実施する。
なお、積和演算部18〜21は第2の積和演算手段を構成している。
The product-sum operation unit 18 calculates the column data d 1 , d 3 , d 5 , d 7 output from the input preprocessing unit 11 and the row data c b0 of the second transformation matrix C b output from the coefficient table 13. Perform product-sum operation.
The product-sum operation unit 19 calculates the column data d 1 , d 3 , d 5 , d 7 output from the input preprocessing unit 11 and the row data c b1 of the second transformation matrix C b output from the coefficient table 13. Perform product-sum operation.
The product-sum operation unit 20 calculates the column data d 1 , d 3 , d 5 , d 7 output from the input preprocessing unit 11 and the row data c b2 of the second transformation matrix C b output from the coefficient table 13. Perform product-sum operation.
The product-sum operation unit 21 calculates the column data d 1 , d 3 , d 5 , d 7 output from the input preprocessing unit 11 and the row data c b3 of the second transformation matrix C b output from the coefficient table 13. Perform product-sum operation.
The product-sum calculation units 18 to 21 constitute second product-sum calculation means.

後処理部22は積和演算部14〜17の演算結果と積和演算部18〜21との加算処理又は減算処理を実施する。なお、後処理部22は後処理手段を構成している。
可変丸め部23は後処理部22が加算処理又は減算処理を実施すると、その加算結果又は減算結果の行要素毎に、別々の丸め処理を実施する。なお、可変丸め部23は丸め処理手段を構成している。
クリッピング処理部24は可変丸め部23による丸め処理後の演算結果f0〜f7を所定のクリッピング範囲内に収めるクリップ処理を実施する。なお、クリッピング処理部24はクリッピング手段を構成している。
出力処理部25はクリッピング処理部24によるクリップ処理後の演算結果f0〜f7を格納し、その演算結果f0〜f7を外部出力する。
The post-processing unit 22 performs addition processing or subtraction processing between the calculation results of the product-sum calculation units 14 to 17 and the product-sum calculation units 18 to 21. The post-processing unit 22 constitutes post-processing means.
When the post-processing unit 22 performs addition processing or subtraction processing, the variable rounding unit 23 performs separate rounding processing for each row element of the addition result or subtraction result. The variable rounding unit 23 constitutes rounding processing means.
The clipping processing unit 24 performs a clipping process in which the calculation results f 0 to f 7 after the rounding process by the variable rounding unit 23 fall within a predetermined clipping range. The clipping processing unit 24 constitutes clipping means.
The output processing unit 25 stores the calculation results f 0 to f 7 after the clipping processing by the clipping processing unit 24, and outputs the calculation results f 0 to f 7 to the outside.

次に動作について説明する。
この実施の形態2による一次元逆変換回路にて実現可能な、8点逆変換アルゴリズムの一例を下記の式(4)に示す。

Figure 0004405452
Next, the operation will be described.
An example of an 8-point inverse transformation algorithm that can be realized by the one-dimensional inverse transformation circuit according to the second embodiment is shown in the following equation (4).
Figure 0004405452

入力前処理部11は、入力データである列データd0〜d7を順次入力すると、その列データd0〜d7を列単位に格納する。
そして、入力前処理部11は、列データd0,d2,d4,d6を積和演算部14〜17に出力し、列データd1,d3,d5,d7を積和演算部18〜21に出力する。
Input pre-processing unit 11, when sequentially inputting the column data d 0 to d 7 is an input data, stores the column data d 0 to d 7 column by column.
Then, the input preprocessing unit 11 outputs the column data d 0 , d 2 , d 4 , d 6 to the product-sum operation units 14 to 17, and multiplies the column data d 1 , d 3 , d 5 , d 7 . It outputs to the calculation parts 18-21.

係数テーブル12は、予め第1の変換行列Caを格納し、第1の変換行列Caの第1行である行データca0を積和演算部14に出力し、第1の変換行列Caの第2行である行データca1を積和演算部15に出力する。
また、第1の変換行列Caの第3行である行データca2を積和演算部16に出力し、第1の変換行列Caの第4行である行データca3を積和演算部17に出力する。
The coefficient table 12 stores the first transformation matrix C a in advance, outputs the row data c a0 that is the first row of the first transformation matrix C a to the product-sum operation unit 14, and the first transformation matrix C a The row data c a1 which is the second row of a is output to the product-sum operation unit 15.
Further, the line data c a2 is the third row of the first transformation matrix C a and outputs the product-sum operation unit 16, product-sum operation row data c a3 is the fourth row of the first transformation matrix C a To the unit 17.

係数テーブル13は、予め第2の変換行列Cbを格納し、第2の変換行列Cbの第1行である行データcb0を積和演算部18に出力し、第2の変換行列Cbの第2行である行データcb1を積和演算部19に出力する。
また、第2の変換行列Cbの第3行である行データcb2を積和演算部20に出力し、第2の変換行列Cbの第4行である行データcb3を積和演算部21に出力する。
The coefficient table 13 stores the second transformation matrix C b in advance, outputs the row data c b0 that is the first row of the second transformation matrix C b to the product-sum operation unit 18, and outputs the second transformation matrix C b . The row data c b1 that is the second row of b is output to the product-sum operation unit 19.
Further, the line data c b2 a third row of the second transformation matrix C b and outputs the product-sum operation unit 20, product-sum operation row data c b3 is the fourth row of the second transformation matrix C b To the unit 21.

積和演算部14〜17は、入力前処理部11から列データd0,d2,d4,d6を受け、係数テーブル12から第1の変換行列Caの行データcai(i=0,2,4,6)を受けると、その列データd0,d2,d4,d6と行データcaiとの積和演算を実施し、その演算結果Saiを後処理部22に出力する。
ai=cai・{d0,d2,d4,d6T (5)
ただし、i=0,1,2,3
The product-sum calculation units 14 to 17 receive the column data d 0 , d 2 , d 4 , and d 6 from the input preprocessing unit 11 and the row data c ai (i = i = 1) of the first transformation matrix C a from the coefficient table 12. 0 , 2 , 4 , 6) , a product-sum operation is performed on the column data d 0 , d 2 , d 4 , d 6 and the row data c ai, and the operation result S ai is converted into the post-processing unit 22. Output to.
S ai = c ai · {d 0 , d 2 , d 4 , d 6 } T (5)
However, i = 0, 1, 2, 3

積和演算部18〜21は、入力前処理部11から列データd1,d3,d5,d7を受け、係数テーブル13から第2の変換行列Cbの行データcbi(i=1,3,5,7)を受けると、その列データd1,d3,d5,d7と行データcbiとの積和演算を実施し、その演算結果Sbiを後処理部22に出力する。
bi=cbi・{d1,d3,d5,d7T (6)
ただし、i=0,1,2,3
Product-sum operation unit 18 to 21, column data d 1 from the input preprocessing unit 11, d 3, d 5, receives the d 7, from the coefficient table 13 of the second transformation matrix C b row data c bi (i = 1 , 3 , 5 , 7) , the product-sum operation is performed on the column data d 1 , d 3 , d 5 , d 7 and the row data c bi, and the operation result S bi is processed by the post-processing unit 22. Output to.
S bi = c bi · {d 1 , d 3 , d 5 , d 7 } T (6)
However, i = 0, 1, 2, 3

後処理部22は、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとを入力すると、下記に示すように、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの加算処理を実施するとともに、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの減算処理を実施する。
ai+Sbi (7)
ai−Sbi (8)
ただし、i=0,1,2,3
When the post-processing unit 22 inputs the calculation result S ai of the product-sum calculation units 14 to 17 and the calculation result S bi of the product-sum calculation units 18 to 21, as shown below, The addition processing of the calculation result S ai and the calculation result S bi of the product-sum calculation units 18 to 21 is performed, and the calculation result S ai of the product-sum calculation units 14 to 17 and the calculation result S of the product-sum calculation units 18 to 21 are performed. Perform subtraction with bi .
S ai + S bi (7)
S ai -S bi (8)
However, i = 0, 1, 2, 3

可変丸め部23は後処理部22から加算結果Sai+Sbiと減算結果Sai−Sbiを受けると、下記の式(9)に示すように、その加算結果Sai+Sbiと減算結果Sai−Sbiに、行要素毎に異なる定数項e0〜e3,e7〜e4をそれぞれ加算してから、vビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f0〜f3,f7〜f4をクリッピング処理部24に出力する。

Figure 0004405452
When the variable rounding unit 23 receives the addition result S ai + S bi and the subtraction result S ai −S bi from the post-processing unit 22, as shown in the following equation (9), the addition result S ai + S bi and the subtraction result S The constant terms e 0 to e 3 and e 7 to e 4 that are different for each row element are added to a i −S bi , and then a right shift process (rounding process) of v bits is performed, and an operation after the rounding process is performed. The results f 0 to f 3 and f 7 to f 4 are output to the clipping processing unit 24.
Figure 0004405452

クリッピング処理部24は、可変丸め部23から丸め処理後の演算結果f0〜f3,f7〜f4を受けると、その演算結果f0〜f3,f7〜f4が符号付き16ビット整数の範囲(クリッピング範囲)を外れる場合には、その演算結果f0〜f3,f7〜f4をクリッピング範囲内に収めるため、その演算結果f0〜f3,f7〜f4がクリッピング範囲の最大値より大きければ、その演算結果f0〜f3,f7〜f4をクリッピング範囲の最大値に置換するクリップ処理を実施する。また、可変丸め部23による丸め処理後の演算結果f0〜f3,f7〜f4がクリッピング範囲の最小値より小さければ、その演算結果f0〜f3,f7〜f4をクリッピング範囲の最小値に置換するクリップ処理を実施する。 When the clipping processing unit 24 receives the calculation results f 0 to f 3 and f 7 to f 4 after the rounding process from the variable rounding unit 23, the calculation results f 0 to f 3 and f 7 to f 4 are signed 16. If the bit integer range (clipping range) is not satisfied, the calculation results f 0 to f 3 and f 7 to f 4 fall within the clipping range, so that the calculation results f 0 to f 3 and f 7 to f 4 Is larger than the maximum value of the clipping range, clip processing for replacing the calculation results f 0 to f 3 and f 7 to f 4 with the maximum value of the clipping range is performed. If the calculation results f 0 to f 3 and f 7 to f 4 after rounding by the variable rounding unit 23 are smaller than the minimum value in the clipping range, the calculation results f 0 to f 3 and f 7 to f 4 are clipped. Perform clip processing to replace with the minimum value of the range.

出力処理部25は、クリッピング処理部8によるクリップ処理後の演算結果f0〜f3,f7〜f4を格納し、クリップ処理後の演算結果をf0〜f7の順番に並び替えて外部に出力する。
これにより、式(4)に示す8点逆変換アルゴリズムが実行されることになる。
The output processing unit 25 stores the calculation results f 0 to f 3 and f 7 to f 4 after the clip processing by the clipping processing unit 8, and rearranges the calculation results after the clip processing in the order of f 0 to f 7. Output to the outside.
Thereby, the 8-point inverse transformation algorithm shown in Expression (4) is executed.

以上で明らかなように、この実施の形態2によれば、入力前処理部11から出力された列データd0,d2,d4,d6と係数テーブル12から出力された第1の変換行列Caの行データcaiとの積和演算を実施する積和演算部14〜17と、入力前処理部11から出力された列データd1,d3,d5,d7と係数テーブル13から出力された第2の変換行列Cbの行データcbiとの積和演算を実施する積和演算部18〜21と、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの加算処理又は減算処理を実施する後処理部22とを設け、可変丸め部23が後処理部22における加算結果又は減算結果の行要素毎に、別々の丸め処理を実施するように構成したので、定数項eを適宜設定することで、多様な仕様の逆変換アルゴリズムを実行することができる効果を奏する。 As apparent from the above, according to the second embodiment, the column data d 0 , d 2 , d 4 , d 6 output from the input preprocessing unit 11 and the first conversion output from the coefficient table 12 are displayed. Product-sum operation units 14 to 17 that perform product-sum operation with row data c ai of matrix C a , column data d 1 , d 3 , d 5 , d 7 output from input preprocessing unit 11 and coefficient table The product-sum operation units 18 to 21 that perform the product-sum operation on the row data c bi of the second transformation matrix C b output from 13, the operation results S ai of the product-sum operation units 14 to 17, and the product-sum operation A post-processing unit 22 that performs an addition process or a subtraction process on the calculation result S bi of the units 18 to 21, and the variable rounding unit 23 is provided separately for each row element of the addition result or the subtraction result in the post-processing unit 22. Since it is configured to perform rounding processing, various specifications can be set by appropriately setting the constant term e. An effect that can perform an inverse transform algorithm.

なお、この実施の形態2では、後処理部22が、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの加算処理を実施するとともに、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの減算処理を実施するものについて示したが、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの加算処理、または、減算処理のいずれか一方を実施するようにしてもよい。 In the second embodiment, the post-processing unit 22 performs addition processing of the calculation result S ai of the product-sum calculation units 14 to 17 and the calculation result S bi of the product-sum calculation units 18 to 21, and product has been described as carrying out the subtraction processing between the operation result S ai and the operation result S bi accumulate operations 18 through 21 of the sum calculation unit 14 to 17, and the operation result S ai of product-sum operation unit 14 to 17 and the computation result S bi of product-sum operation unit 18 - 21, or may be carried out either in the subtraction processing.

なお、この実施の形態2では、8点の一次元逆変換を実施するものについて示したが、例えば、下記の式(20)に示すように、上記実施の形態1で示したような4点の一次元逆変換を2並列で同時に処理するようにしてもよい。
この場合は、係数テーブル12と係数テーブル13に同じ変換行列Ca(=Cb)を格納し、入力前処理部31では、入力データd0〜d7のうち、d0〜d3を積和演算部14〜17に出力し、d4〜d7を積和演算部18〜21に出力する。後処理部22では、積和演算部14〜21の演算結果をそのまま可変丸め部23へ出力し、可変丸め部23では、{e0,e1,e2,e3}={e4,e5,e6,e7}として丸め処理を実施することで、4点の一次元逆変換を2並列で実現することができる。

Figure 0004405452
In the second embodiment, the eight-point one-dimensional inverse transformation is shown. For example, as shown in the following equation (20), four points as shown in the first embodiment are used. The one-dimensional inverse transformation may be simultaneously processed in two parallels.
In this case, the same conversion matrix C a (= C b ) is stored in the coefficient table 12 and the coefficient table 13, and the input preprocessing unit 31 multiplies d 0 to d 3 out of the input data d 0 to d 7. It outputs to the sum calculation units 14 to 17 and outputs d 4 to d 7 to the product-sum calculation units 18 to 21. The post-processing unit 22 outputs the calculation results of the product-sum calculation units 14 to 21 to the variable rounding unit 23 as they are, and the variable rounding unit 23 outputs {e 0 , e 1 , e 2 , e 3 } = {e 4 , By performing the rounding process as e 5 , e 6 , e 7 }, four-point one-dimensional inverse transformation can be realized in two parallel.
Figure 0004405452

実施の形態3.
図3はこの発明の実施の形態3による一次元の逆変換回路を示す構成図であり、図において、図2と同一符号は同一または相当部分を示すので説明を省略する。
入力前処理部31は入力データである列データd0〜d7を順次入力して、その列データd0〜d7を列単位に格納する一方、所定の列データdに対する1ビット符号拡張付の右シフト処理(d>>1)を実施するとともに、その右シフト処理を実施する前の列データdと、その右シフト処理を実施した後の列データd’とを加算する加算処理を実施し、その右シフト処理を実施する前の列データd、その右シフト処理を実施した後の列データd’、または、その加算処理後の列データd+d’のいずれかを選択して積和演算部14〜21に出力する。なお、入力前処理部31は入力前処理手段を構成している。
Embodiment 3 FIG.
3 is a block diagram showing a one-dimensional inverse conversion circuit according to Embodiment 3 of the present invention. In the figure, the same reference numerals as those in FIG.
The input preprocessing unit 31 sequentially inputs column data d 0 to d 7 as input data and stores the column data d 0 to d 7 in units of columns, while adding 1-bit sign extension to predetermined column data d. The right shift process (d >> 1) is performed, and the addition process for adding the column data d before the right shift process and the column data d ′ after the right shift process is performed. The product-sum operation is performed by selecting any one of the column data d before the right shift processing, the column data d ′ after the right shift processing, or the column data d + d ′ after the addition processing. Output to the units 14-21. Note that the input preprocessing unit 31 constitutes an input preprocessing means.

次に動作について説明する。
この実施の形態3による一次元逆変換回路にて実現可能な、8点逆変換アルゴリズムの一例を下記の式(10)に示す。

Figure 0004405452
Next, the operation will be described.
An example of an 8-point inverse transformation algorithm that can be realized by the one-dimensional inverse transformation circuit according to the third embodiment is shown in the following equation (10).
Figure 0004405452

入力前処理部31は、入力データである列データd0〜d7を順次入力すると、その列データd0〜d7を列単位に格納する。
そして、入力前処理部31は、所定の列データdに対する1ビット符号拡張付の右シフト処理(d>>1)を実施するとともに、その右シフト処理を実施する前の列データdと、その右シフト処理を実施した後の列データd’とを加算する加算処理を実施し、その右シフト処理を実施する前の列データd、その右シフト処理を実施した後の列データd’、または、その加算処理後の列データd+d’のいずれかを選択して積和演算部14〜21に出力する。
Input pre-processing unit 31, when sequentially inputting the column data d 0 to d 7 is an input data, stores the column data d 0 to d 7 column by column.
The input preprocessing unit 31 performs a right shift process (d >> 1) with 1-bit sign extension on the predetermined column data d, the column data d before the right shift process, Addition processing for adding the column data d ′ after the right shift processing is performed, the column data d before the right shift processing is performed, the column data d ′ after the right shift processing is performed, or The column data d + d ′ after the addition processing is selected and output to the product-sum operation units 14 to 21.

ここでは、説明の便宜上、入力前処理部31がda0={d0,d2,d4,(d6>>1)}を積和演算部14に出力し、da1={d0,(d2>>1),d4,d6}を積和演算部15に出力し、da2={d0,(d2>>1),d4,d6}を積和演算部16に出力し、da3={d0,d2,d4,(d6>>1)}を積和演算部17に出力するものとする。
また、入力前処理部31がdb0={d1,d3,d5,(d7+(d7>>1))}を積和演算部18に出力し、db1={d1,(d3+(d3>>1)),d5,d7}を積和演算部19に出力し、db2={d1,(d3+(d3>>1)),d5,d7}を積和演算部20に出力し、db3={d1,d3,d5,(d7+(d7>>1))}を積和演算部21に出力するものとする。
Here, for convenience of explanation, the input preprocessing unit 31 outputs d a0 = {d 0 , d 2 , d 4 , (d 6 >> 1)} to the product-sum operation unit 14, and d a1 = {d 0 , (D 2 >> 1), d 4 , d 6 } are output to the product-sum operation unit 15, and d a2 = {d 0 , (d 2 >> 1), d 4 , d 6 } are sum-of-products operations It is assumed that d a3 = {d 0 , d 2 , d 4 , (d 6 >> 1)} is output to the product-sum operation unit 17.
Also, the input preprocessing unit 31 outputs d b0 = {d 1 , d 3 , d 5 , (d 7 + (d 7 >> 1))} to the product-sum operation unit 18, and d b1 = {d 1 , (D 3 + (d 3 >> 1)), d 5 , d 7 } are output to the product-sum operation unit 19 and d b2 = {d 1 , (d 3 + (d 3 >> 1)), d 5 , d 7 } is output to the product-sum operation unit 20, and d b3 = {d 1 , d 3 , d 5 , (d 7 + (d 7 >> 1))} is output to the product-sum operation unit 21. It shall be.

係数テーブル12は、予め第1の変換行列Caを格納し、第1の変換行列Caの第1行である行データca0を積和演算部14に出力し、第1の変換行列Caの第2行である行データca1を積和演算部15に出力する。
また、第1の変換行列Caの第3行である行データca2を積和演算部16に出力し、第1の変換行列Caの第4行である行データca3を積和演算部17に出力する。
The coefficient table 12 stores the first transformation matrix C a in advance, outputs the row data c a0 that is the first row of the first transformation matrix C a to the product-sum operation unit 14, and the first transformation matrix C a The row data c a1 which is the second row of a is output to the product-sum operation unit 15.
Further, the line data c a2 is the third row of the first transformation matrix C a and outputs the product-sum operation unit 16, product-sum operation row data c a3 is the fourth row of the first transformation matrix C a To the unit 17.

係数テーブル13は、予め第2の変換行列Cbを格納し、第2の変換行列Cbの第1行である行データcb0を積和演算部18に出力し、第2の変換行列Cbの第2行である行データcb1を積和演算部19に出力する。
また、第2の変換行列Cbの第3行である行データcb2を積和演算部20に出力し、第2の変換行列Cbの第4行である行データcb3を積和演算部21に出力する。
The coefficient table 13 stores the second transformation matrix C b in advance, outputs the row data c b0 that is the first row of the second transformation matrix C b to the product-sum operation unit 18, and outputs the second transformation matrix C b . The row data c b1 that is the second row of b is output to the product-sum operation unit 19.
Further, the line data c b2 a third row of the second transformation matrix C b and outputs the product-sum operation unit 20, product-sum operation row data c b3 is the fourth row of the second transformation matrix C b To the unit 21.

積和演算部14〜17は、入力前処理部31から列データdai(i=0,1,2,3)を受け、係数テーブル12から第1の変換行列Caの行データcai(i=0,1,2,3)を受けると、その列データdaiと行データcaiとの積和演算を実施し、その演算結果Saiを後処理部22に出力する。
ai=cai・dai T (11)
ただし、i=0,1,2,3
The product-sum operation units 14 to 17 receive the column data d ai (i = 0, 1, 2, 3) from the input preprocessing unit 31, and the row data c ai (first transformation matrix C a ( When i = 0, 1, 2, 3), the product-sum operation is performed on the column data d ai and the row data c ai, and the operation result S ai is output to the post-processing unit 22.
S ai = c ai · d ai T (11)
However, i = 0, 1, 2, 3

積和演算部18〜21は、入力前処理部31から列データdbi(i=0,1,2,3)を受け、係数テーブル13から第2の変換行列Cbの行データcbi(i=0,1,2,3)を受けると、その列データdbiと行データcbiとの積和演算を実施し、その演算結果Sbiを後処理部22に出力する。
bi=cbi・dbi T (12)
ただし、i=0,1,2,3
Product-sum operation unit 18-21 receives the column data d bi (i = 0,1,2,3) from the input preprocessing unit 31, from the coefficient table 13 and the second transformation matrix C b of the row data c bi ( When i = 0, 1, 2, 3), the product-sum operation is performed on the column data d bi and the row data c bi, and the operation result S bi is output to the post-processing unit 22.
S bi = c bi · d bi T (12)
However, i = 0, 1, 2, 3

後処理部22は、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとを入力すると、下記に示すように、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの加算処理を実施するとともに、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの減算処理を実施する。
ai+Sbi (13)
ai−Sbi (14)
ただし、i=0,1,2,3
When the post-processing unit 22 inputs the calculation result S ai of the product-sum calculation units 14 to 17 and the calculation result S bi of the product-sum calculation units 18 to 21, as shown below, The addition processing of the calculation result S ai and the calculation result S bi of the product-sum calculation units 18 to 21 is performed, and the calculation result S ai of the product-sum calculation units 14 to 17 and the calculation result S of the product-sum calculation units 18 to 21 are performed. Perform subtraction with bi .
S ai + S bi (13)
S ai -S bi (14)
However, i = 0, 1, 2, 3

可変丸め部23は後処理部22から加算結果Sai+Sbiと減算結果Sai−Sbiを受けると、下記の式(15)に示すように、その加算結果Sai+Sbiと減算結果Sai−Sbiに、行要素毎に異なる定数項e0〜e3,e7〜e4をそれぞれ加算してから、vビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f0〜f3,f7〜f4をクリッピング処理部24に出力する。

Figure 0004405452
When the variable rounding unit 23 receives the addition result S ai + S bi and the subtraction result S ai −S bi from the post-processing unit 22, as shown in the following equation (15), the addition result S ai + S bi and the subtraction result S The constant terms e 0 to e 3 and e 7 to e 4 that are different for each row element are added to a i −S bi , and then a right shift process (rounding process) of v bits is performed, and an operation after the rounding process is performed. The results f 0 to f 3 and f 7 to f 4 are output to the clipping processing unit 24.
Figure 0004405452

クリッピング処理部24は、可変丸め部23から丸め処理後の演算結果f0〜f3,f7〜f4を受けると、上記実施の形態2と同様に、その演算結果f0〜f3,f7〜f4が符号付き16ビット整数の範囲(クリッピング範囲)を外れる場合には、その演算結果f0〜f3,f7〜f4をクリッピング範囲内に収めるため、その演算結果f0〜f3,f7〜f4がクリッピング範囲の最大値より大きければ、その演算結果f0〜f3,f7〜f4をクリッピング範囲の最大値に置換するクリップ処理を実施する。また、可変丸め部23による丸め処理後の演算結果f0〜f3,f7〜f4がクリッピング範囲の最小値より小さければ、その演算結果f0〜f3,f7〜f4をクリッピング範囲の最小値に置換するクリップ処理を実施する。 When the clipping processing unit 24 receives the calculation results f 0 to f 3 and f 7 to f 4 after the rounding processing from the variable rounding unit 23, the calculation results f 0 to f 3 , If the f 7 ~f 4 is out of signed 16-bit integer in the range (the clipping range), to accommodate the operation result f 0 ~f 3, f 7 ~f 4 in the clipping range, the operation result f 0 if ~f 3, f 7 ~f 4 it is larger than the maximum value of the clipping range, carrying out the clip processing for replacing the operation result f 0 ~f 3, f 7 ~f 4 to the maximum value of the clipping range. If the calculation results f 0 to f 3 and f 7 to f 4 after rounding by the variable rounding unit 23 are smaller than the minimum value in the clipping range, the calculation results f 0 to f 3 and f 7 to f 4 are clipped. Perform clip processing to replace with the minimum value of the range.

出力処理部25は、上記実施の形態2と同様に、クリッピング処理部24によるクリップ処理後の演算結果f0〜f3,f7〜f4を格納し、クリップ処理後の演算結果をf0〜f7の順番に並び替えて外部に出力する。
これにより、式(10)に示す8点逆変換アルゴリズムが実行されることになる。
Similarly to the second embodiment, the output processing unit 25 stores the calculation results f 0 to f 3 and f 7 to f 4 after the clip processing by the clipping processing unit 24, and the calculation result after the clip processing is f 0. and outputs to the outside sorted in the order of ~f 7.
Thereby, the 8-point inverse transformation algorithm shown in Expression (10) is executed.

以上で明らかなように、この実施の形態3によれば、入力前処理部31が入力データである列データd0〜d7を順次入力して、その列データd0〜d7を列単位に格納すると、所定の列データdに対する1ビット符号拡張付の右シフト処理(d>>1)を実施するとともに、その右シフト処理を実施する前の列データdと、その右シフト処理を実施した後の列データd’とを加算する加算処理を実施し、その右シフト処理を実施する前の列データd、その右シフト処理を実施した後の列データd’、または、その加算処理後の列データd+d’のいずれかを選択して積和演算部14〜21に出力するように構成したので、上記実施の形態2よりも更に、多様な仕様の逆変換アルゴリズムを実行することができる効果を奏する。 As is apparent from the above, according to the third embodiment, the input preprocessing unit 31 sequentially inputs the column data d 0 to d 7 as input data, and the column data d 0 to d 7 is converted into column units. Is stored, the right shift process (d >> 1) with 1-bit sign extension is performed on the predetermined column data d, the column data d before the right shift process is performed, and the right shift process is performed. The column data d ′ before the right shift processing is performed, the column data d ′ after the right shift processing is performed, or after the addition processing is performed. Since the column data d + d ′ is selected and output to the product-sum operation units 14 to 21, it is possible to execute inverse conversion algorithms with various specifications further than in the second embodiment. There is an effect.

実施の形態4.
図4はこの発明の実施の形態4による一次元の逆変換回路を示す構成図であり、図において、図3と同一符号は同一または相当部分を示すので説明を省略する。
制御部32は例えば逆変換演算の種別を示す動作種別情報を受信すると、その動作種別情報に応じて入力前処理部31が選択する列データの種類、積和演算部14〜21が使用する変換行列の種別、後処理部22における演算の種類及び有無、可変丸め部23における丸め方法、クリッピング処理部24におけるクリッピング範囲及び出力処理部25における演算結果の出力順序などを制御する。なお、制御部32は制御手段を構成している。
Embodiment 4 FIG.
4 is a block diagram showing a one-dimensional inverse conversion circuit according to Embodiment 4 of the present invention. In the figure, the same reference numerals as those in FIG.
For example, when the control unit 32 receives the operation type information indicating the type of the inverse conversion operation, the type of column data selected by the input preprocessing unit 31 according to the operation type information, the conversion used by the product-sum operation units 14 to 21. It controls the type of matrix, the type and presence of computation in the post-processing unit 22, the rounding method in the variable rounding unit 23, the clipping range in the clipping processing unit 24, the output order of the computation results in the output processing unit 25, and the like. The control unit 32 constitutes a control means.

次に動作について説明する。
制御部32は、例えば、式(2)の逆変換演算の実施を示唆する動作種別情報、または、式(10)の逆変換演算の実施を示唆する動作種別情報を受信する。
制御部32は、外部から動作種別情報を受信すると、その動作種別情報に応じて入力前処理部31が選択する列データの種類、積和演算部14〜21が使用する変換行列の種別、後処理部22における演算の種類及び有無、可変丸め部23における丸め方法、クリッピング処理部24におけるクリッピング範囲及び出力処理部25における演算結果の出力順序などを制御する。
Next, the operation will be described.
The control unit 32 receives, for example, operation type information that suggests the execution of the inverse transformation operation of Expression (2) or operation type information that suggests the execution of the inverse conversion operation of Expression (10).
When the control unit 32 receives the operation type information from the outside, the control unit 32 selects the type of column data selected by the input preprocessing unit 31 according to the operation type information, the type of conversion matrix used by the product-sum calculation units 14 to 21, The type and presence / absence of calculation in the processing unit 22, the rounding method in the variable rounding unit 23, the clipping range in the clipping processing unit 24, the output order of calculation results in the output processing unit 25, and the like are controlled.

入力前処理部31は、入力データである列データd0〜d7を順次入力すると、その列データd0〜d7を列単位に格納する。
入力前処理部31は、制御部32から式(2)の逆変換演算の実施を示唆された場合、図1の入力前処理部1と同様に、列データd0〜d3をそれぞれ積和演算部14〜17に出力する。
入力前処理部31は、制御部32から式(10)の逆変換演算の実施を示唆された場合、図3の入力前処理部31と同様に、所定の列データdに対する1ビット符号拡張付の右シフト処理(d>>1)を実施するとともに、その右シフト処理を実施する前の列データdと、その右シフト処理を実施した後の列データd’とを加算する加算処理を実施し、その右シフト処理を実施する前の列データd、その右シフト処理を実施した後の列データd’、または、その加算処理後の列データd+d’のいずれかを選択して積和演算部14〜21に出力する。
Input pre-processing unit 31, when sequentially inputting the column data d 0 to d 7 is an input data, stores the column data d 0 to d 7 column by column.
When the input preprocessing unit 31 is instructed by the control unit 32 to perform the inverse transformation operation of the equation (2), the input preprocessing unit 31 calculates the column data d 0 to d 3 respectively as in the input preprocessing unit 1 of FIG. It outputs to the calculation parts 14-17.
When the input preprocessing unit 31 is instructed by the control unit 32 to perform the inverse transformation operation of the equation (10), the input preprocessing unit 31 adds 1-bit sign extension to the predetermined column data d as in the case of the input preprocessing unit 31 in FIG. The right shift process (d >> 1) is performed, and the addition process for adding the column data d before the right shift process and the column data d ′ after the right shift process is performed. The product-sum operation is performed by selecting one of the column data d before the right shift processing, the column data d ′ after the right shift processing, or the column data d + d ′ after the addition processing. Output to the units 14-21.

ここでは、説明の便宜上、入力前処理部31がda0={d0,d2,d4,(d6>>1)}を積和演算部14に出力し、da1={d0,(d2>>1),d4,d6}を積和演算部15に出力し、da2={d0,(d2>>1),d4,d6}を積和演算部16に出力し、da3={d0,d2,d4,(d6>>1)}を積和演算部17に出力するものとする。
また、入力前処理部31がdb0={d1,d3,d5,(d7+(d7>>1))}を積和演算部18に出力し、db1={d1,(d3+(d3>>1)),d5,d7}を積和演算部19に出力し、db2={d1,(d3+(d3>>1)),d5,d7}を積和演算部20に出力し、db3={d1,d3,d5,(d7+(d7>>1))}を積和演算部21に出力するものとする。
Here, for convenience of explanation, the input preprocessing unit 31 outputs d a0 = {d 0 , d 2 , d 4 , (d 6 >> 1)} to the product-sum operation unit 14, and d a1 = {d 0 , (D 2 >> 1), d 4 , d 6 } are output to the product-sum operation unit 15, and d a2 = {d 0 , (d 2 >> 1), d 4 , d 6 } are sum-of-products operations It is assumed that d a3 = {d 0 , d 2 , d 4 , (d 6 >> 1)} is output to the product-sum operation unit 17.
Also, the input preprocessing unit 31 outputs d b0 = {d 1 , d 3 , d 5 , (d 7 + (d 7 >> 1))} to the product-sum operation unit 18, and d b1 = {d 1 , (D 3 + (d 3 >> 1)), d 5 , d 7 } are output to the product-sum operation unit 19 and d b2 = {d 1 , (d 3 + (d 3 >> 1)), d 5 , d 7 } is output to the product-sum operation unit 20, and d b3 = {d 1 , d 3 , d 5 , (d 7 + (d 7 >> 1))} is output to the product-sum operation unit 21. It shall be.

係数テーブル12は、制御部32から式(2)の逆変換演算の実施を示唆された場合、第1の変換行列Caの第1行である行データca0を積和演算部14に出力し、第1の変換行列Caの第2行である行データca1を積和演算部15に出力する。
また、第1の変換行列Caの第3行である行データca2を積和演算部16に出力し、第1の変換行列Caの第4行である行データca3を積和演算部17に出力する。
係数テーブル13は、制御部32から式(2)の逆変換演算の実施を示唆された場合、第2の変換行列Cbの行データcb0〜cb3を積和演算部18〜21に出力しない。
ここでは、説明の便宜上、係数テーブル12が格納している第1の変換行列Caが、図1の係数テーブル2が格納している変換行列Cと同じであるものとする。
The coefficient table 12 outputs the row data c a0 , which is the first row of the first conversion matrix C a , to the product-sum operation unit 14 when the control unit 32 suggests that the inverse conversion operation of the expression (2) is performed. Then, the row data c a1 that is the second row of the first transformation matrix C a is output to the product-sum operation unit 15.
Further, the line data c a2 is the third row of the first transformation matrix C a and outputs the product-sum operation unit 16, product-sum operation row data c a3 is the fourth row of the first transformation matrix C a To the unit 17.
The coefficient table 13 outputs the row data c b0 to c b3 of the second transformation matrix C b to the product-sum calculation units 18 to 21 when the control unit 32 suggests that the inverse conversion calculation of the expression (2) is performed. do not do.
Here, for convenience of explanation, the first transformation matrix C a coefficient table 12 stores is assumed to be the same as the transformation matrix C coefficient table 2 in FIG. 1 are stored.

係数テーブル12は、制御部32から式(10)の逆変換演算の実施を示唆された場合にも、第1の変換行列Caの第1行である行データca0を積和演算部14に出力し、第1の変換行列Caの第2行である行データca1を積和演算部15に出力する。
また、第1の変換行列Caの第3行である行データca2を積和演算部16に出力し、第1の変換行列Caの第4行である行データca3を積和演算部17に出力する。
係数テーブル13は、制御部32から式(10)の逆変換演算の実施を示唆された場合、第2の変換行列Cbの第1行である行データcb0を積和演算部18に出力し、第2の変換行列Cbの第2行である行データcb1を積和演算部19に出力する。
また、第2の変換行列Cbの第3行である行データcb2を積和演算部20に出力し、第2の変換行列Cbの第4行である行データcb3を積和演算部21に出力する。
The coefficient table 12 also uses the product-sum operation unit 14 to store the row data c a0 that is the first row of the first transformation matrix C a even when the control unit 32 suggests the execution of the inverse transformation operation of Expression (10). And the row data c a1 that is the second row of the first transformation matrix C a is output to the product-sum operation unit 15.
Further, the line data c a2 is the third row of the first transformation matrix C a and outputs the product-sum operation unit 16, product-sum operation row data c a3 is the fourth row of the first transformation matrix C a To the unit 17.
The coefficient table 13 outputs the row data c b0 , which is the first row of the second transformation matrix C b , to the product-sum operation unit 18 when the control unit 32 suggests that the inverse conversion operation of the equation (10) is performed. Then, the row data c b1 that is the second row of the second transformation matrix C b is output to the product-sum operation unit 19.
Further, the line data c b2 a third row of the second transformation matrix C b and outputs the product-sum operation unit 20, product-sum operation row data c b3 is the fourth row of the second transformation matrix C b To the unit 21.

積和演算部14〜17は、入力前処理部31から列データdai(i=0,1,2,3)を受け、係数テーブル12から第1の変換行列Caの行データcai(i=0,1,2,3)を受けると、上記の式(11)に示すように、その列データdaiと行データcaiとの積和演算を実施し、その演算結果Saiを後処理部22に出力する。
積和演算部18〜21は、入力前処理部31から列データdbi(i=0,1,2,3)を受け、係数テーブル13から第2の変換行列Cbの行データcbi(i=0,1,2,3)を受けると、上記の式(12)に示すように、その列データdbiと行データcbiとの積和演算を実施し、その演算結果Sbiを後処理部22に出力する。なお、積和演算部18〜21は、式(2)の逆変換演算を実施する場合、列データdbiと行データcbiを受けず、式(10)の逆変換演算を実施する場合に限り、列データdbiと行データcbiを受ける。
The product-sum operation units 14 to 17 receive the column data d ai (i = 0, 1, 2, 3) from the input preprocessing unit 31, and the row data c ai (first transformation matrix C a ( When i = 0, 1, 2, 3), the product-sum operation of the column data d ai and the row data c ai is performed as shown in the above equation (11), and the operation result S ai is obtained. Output to the post-processing unit 22.
Product-sum operation unit 18-21 receives the column data d bi (i = 0,1,2,3) from the input preprocessing unit 31, from the coefficient table 13 and the second transformation matrix C b of the row data c bi ( i = 0, 1, 2, 3), the product-sum operation of the column data d bi and the row data c bi is performed as shown in the above equation (12), and the operation result S bi is obtained. Output to the post-processing unit 22. The product-sum operation units 18 to 21 do not receive the column data d bi and the row data c bi when performing the inverse conversion operation of the equation (2), and perform the inverse conversion operation of the equation (10). As long as it receives column data d bi and row data c bi .

後処理部22は、制御部32から式(2)の逆変換演算の実施を示唆された場合、積和演算部14〜17から積和演算の演算結果Saiを受けると、その演算結果Saiをそのまま可変丸め部23に出力する。
後処理部22は、制御部32から式(10)の逆変換演算の実施を示唆された場合、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとを入力すると、上記の式(13)及び式(14)に示すように、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの加算処理を実施するとともに、積和演算部14〜17の演算結果Saiと積和演算部18〜21の演算結果Sbiとの減算処理を実施する。
When the post-processing unit 22 receives an operation result S ai of the product-sum operation from the product-sum operation units 14 to 17 when the control unit 32 is instructed to perform the inverse conversion operation of the expression (2), the operation result S ai is output to the variable rounding unit 23 as it is.
When the post-processing unit 22 is instructed by the control unit 32 to perform the inverse transformation operation of the equation (10), the post-processing unit 22 calculates the calculation result S ai of the product-sum calculation units 14 to 17 and the calculation result S of the product-sum calculation units 18 to 21. When bi is input, as shown in the above equations (13) and (14), the addition of the operation result S ai of the product-sum operation units 14 to 17 and the operation result S bi of the product-sum operation units 18 to 21 In addition to performing the process, a subtraction process is performed between the operation result S ai of the product-sum operation units 14 to 17 and the operation result S bi of the product-sum operation units 18 to 21.

可変丸め部23は、制御部32から式(2)の逆変換演算の実施を示唆され、かつ、制御部32から定数項e={0,1,1,1}を受けると、図1の可変丸め部7と同様に、積和演算部14の演算結果Sa0に対する1ビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f0をクリッピング処理部24に出力する。
一方、積和演算部15〜18の演算結果Sa1,Sa2,Sa3については、各演算結果Sa1,Sa2,Sa3に“1”をそれぞれ加算してから、1ビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f1〜f3をクリッピング処理部24に出力する。
When the variable rounding unit 23 is instructed by the control unit 32 to perform the inverse transformation operation of the equation (2) and receives the constant term e = {0, 1, 1, 1} from the control unit 32, the variable rounding unit 23 of FIG. Similarly to the variable rounding unit 7, a 1-bit right shift process (rounding process) is performed on the calculation result S a0 of the product-sum calculation unit 14, and the calculation result f 0 after the rounding process is output to the clipping processing unit 24.
On the other hand, for the calculation results S a1 , S a2 , S a3 of the product-sum calculation units 15 to 18, “1” is added to each calculation result S a1 , S a2 , S a3 , and then right-shifted by 1 bit. Processing (rounding processing) is performed, and the calculation results f 1 to f 3 after the rounding processing are output to the clipping processing unit 24.

可変丸め部23は、制御部32から式(10)の逆変換演算の実施を示唆され、かつ、制御部32から定数項e0〜f7とシフト値vを受けると、図3の可変丸め部23と同様に、上記の式(15)に示すように、後処理部22から出力された加算結果Sai+Sbiと減算結果Sai−Sbiに、行要素毎に異なる定数項e0〜e3,e7〜e4をそれぞれ加算してから、vビットの右シフト処理(丸め処理)を実施し、丸め処理後の演算結果f0〜f3,f7〜f4をクリッピング処理部24に出力する。
なお、可変丸め部23は、制御部32から従来の一般的な四捨五入の丸め方法の実施の示唆を受けた場合には、その丸め方法を実施する。
When the variable rounding unit 23 is instructed by the control unit 32 to perform the inverse transformation operation of Expression (10) and receives the constant terms e 0 to f 7 and the shift value v from the control unit 32, the variable rounding unit 23 in FIG. Similarly to the unit 23, as shown in the above equation (15), the addition result S ai + S bi and the subtraction result S ai −S bi output from the post-processing unit 22 are different constant terms e 0 for each row element. ˜e 3 , e 7 ˜e 4 are added, then v-bit right shift processing (rounding processing) is performed, and the operation results f 0 to f 3 and f 7 to f 4 after the rounding processing are clipped. To the unit 24.
In addition, the variable rounding part 23 implements the rounding method, when the control part 32 receives the suggestion of implementation of the conventional general rounding-off rounding method.

クリッピング処理部24は、制御部32から式(2)の逆変換演算の実施に対応する符号付き16ビット整数の範囲(クリッピング範囲)を受けた場合、図1のクリッピング処理部8と同様に、可変丸め部23から出力された丸め処理後の演算結果f0〜f3を当該クリッピング範囲内に収めるため、その演算結果f0〜f3がクリッピング範囲の最大値より大きければ、その演算結果f0〜f3をクリッピング範囲の最大値に置換するクリップ処理を実施する。また、可変丸め部23から出力された丸め処理後の演算結果f0〜f3がクリッピング範囲の最小値より小さければ、その演算結果f0〜f3をクリッピング範囲の最小値に置換するクリップ処理を実施する。 When the clipping processing unit 24 receives a signed 16-bit integer range (clipping range) corresponding to the execution of the inverse transformation operation of the expression (2) from the control unit 32, as in the clipping processing unit 8 of FIG. Since the rounded computation results f 0 to f 3 output from the variable rounding unit 23 fall within the clipping range, if the computation results f 0 to f 3 are larger than the maximum value of the clipping range, the computation result f the 0 ~f 3 implementing clipping processing for replacing the maximum value of the clipping range. If the calculation results f 0 to f 3 after rounding output from the variable rounding unit 23 are smaller than the minimum value of the clipping range, the clip processing for replacing the calculation results f 0 to f 3 with the minimum value of the clipping range. To implement.

クリッピング処理部24は、制御部32から式(10)の逆変換演算の実施に対応する符号付き16ビット整数の範囲(クリッピング範囲)を受けた場合、図3のクリッピング処理部24と同様に、可変丸め部23から出力された丸め処理後の演算結果f0〜f3,f7〜f4を当該クリッピング範囲内に収めるため、その演算結果f0〜f3,f7〜f4がクリッピング範囲の最大値より大きければ、その演算結果f0〜f3,f7〜f4をクリッピング範囲の最大値に置換するクリップ処理を実施する。また、可変丸め部23から出力された丸め処理後の演算結果f0〜f3,f7〜f4がクリッピング範囲の最小値より小さければ、その演算結果f0〜f3,f7〜f4をクリッピング範囲の最小値に置換するクリップ処理を実施する。 When the clipping processing unit 24 receives a signed 16-bit integer range (clipping range) corresponding to the execution of the inverse transformation operation of Expression (10) from the control unit 32, as in the clipping processing unit 24 of FIG. Since the rounded computation results f 0 to f 3 and f 7 to f 4 output from the variable rounding unit 23 fall within the clipping range, the computation results f 0 to f 3 and f 7 to f 4 are clipped. If it is larger than the maximum value of the range, clip processing for replacing the calculation results f 0 to f 3 and f 7 to f 4 with the maximum value of the clipping range is performed. Also, if the rounded computation results f 0 to f 3 and f 7 to f 4 output from the variable rounding unit 23 are smaller than the minimum value of the clipping range, the computation results f 0 to f 3 and f 7 to f. Perform clip processing to replace 4 with the minimum value of the clipping range.

出力処理部25は、制御部32から式(2)の逆変換演算の実施を示唆された場合、図1の出力処理部9と同様に、クリッピング処理部24によるクリップ処理後の演算結果f0〜f3を格納し、クリップ処理後の演算結果をf0〜f3の順番で外部出力する。
これにより、式(2)に示す4点逆変換アルゴリズムが実行されることになる。
When the output processing unit 25 is instructed by the control unit 32 to perform the inverse transformation operation of the equation (2), the calculation result f 0 after the clip processing by the clipping processing unit 24 is performed in the same manner as the output processing unit 9 in FIG. stores ~f 3, externally outputs the calculation result after clipping in the order of f 0 ~f 3.
As a result, the four-point inverse transformation algorithm shown in Expression (2) is executed.

出力処理部25は、制御部32から式(10)の逆変換演算の実施を示唆された場合、図3の出力処理部25と同様に、クリッピング処理部24によるクリップ処理後の演算結果f0〜f3,f7〜f4を格納し、クリップ処理後の演算結果をf0〜f7の順番に並び替えて外部に出力する。
これにより、式(10)に示す8点逆変換アルゴリズムが実行されることになる。
When the output processing unit 25 is instructed by the control unit 32 to perform the inverse transformation operation of Expression (10), the calculation result f 0 after the clipping processing by the clipping processing unit 24 is performed, similarly to the output processing unit 25 of FIG. stores ~f 3, f 7 ~f 4, and outputs the calculation result after clipping to the outside rearranged in the order of f 0 ~f 7.
Thereby, the 8-point inverse transformation algorithm shown in Expression (10) is executed.

以上で明らかなように、この実施の形態4によれば、入力前処理部31が選択する列データの種類、積和演算部14〜21が使用する変換行列の種別、後処理部22における演算の種類及び有無、可変丸め部23における丸め方法、クリッピング処理部24におけるクリッピング範囲及び出力処理部25における演算結果の出力順序などを制御するように構成したので、一つの一次元逆変換回路で、複数種別の一次元の逆変換演算を実現することができる効果を奏する。   As apparent from the above, according to the fourth embodiment, the type of column data selected by the input preprocessing unit 31, the type of transformation matrix used by the product-sum calculation units 14 to 21, and the calculation in the post-processing unit 22 And the presence / absence, the rounding method in the variable rounding unit 23, the clipping range in the clipping processing unit 24, the output order of the calculation results in the output processing unit 25, and the like. There is an effect that a plurality of types of one-dimensional inverse transformation operations can be realized.

なお、この実施の形態4では、式(2)の逆変換演算を実施する場合、積和演算部18〜21が列データdbiと行データcbiを受けず、式(10)の逆変換演算を実施する場合に限り、列データdbiと行データcbiを受けるものについて示したが、上記実施の形態2で示したように、式(2)の逆変換演算を実施する場合でも、積和演算部18〜21が列データdbiと行データcbiを受けて動作することにより、積和演算部14〜17と積和演算部18〜21が並列して式(2)の逆変換演算を実施するようにしてもよい。 In the fourth embodiment, when performing the inverse transformation operation of the equation (2), the product-sum operation units 18 to 21 do not receive the column data d bi and the row data c bi, and the inverse transformation of the equation (10). Only when performing the calculation, the column data d bi and the row data c bi are shown. However, as shown in the second embodiment, even when the inverse conversion operation of the expression (2) is performed, The product-sum operation units 18 to 21 operate by receiving the column data d bi and the row data c bi , so that the product-sum operation units 14 to 17 and the product-sum operation units 18 to 21 operate in parallel. You may make it implement conversion operation.

実施の形態5.
上記実施の形態1〜4では、一次元の逆変換を実施する逆変換回路について示したが、例えば、非特許文献1に記載されているように、上記実施の形態1〜4における一次元逆変換回路を2つ用意し、2つの一次元逆変換回路と、行列転置を行うためのメモリーとを結合することにより、二次元の逆変換回路を構成するようにしてもよい。
なお、二次元の逆変換回路においては、一方の一次元逆変換回路が受信する動作種別情報と、他方の一次元逆変換回路が受信する動作種別情報とは異なっていてもよい。
また、上記実施の形態1〜4では、クリッピング範囲の例として16ビット整数の範囲を示したが、クリッピング範囲の最大値と最小値は任意の値を設定できるものとする。
Embodiment 5 FIG.
In the first to fourth embodiments, the inverse conversion circuit that performs the one-dimensional inverse conversion has been described. For example, as described in Non-Patent Document 1, the one-dimensional inverse circuit in the first to fourth embodiments is described. Two conversion circuits may be prepared, and a two-dimensional inverse conversion circuit may be configured by combining two one-dimensional inverse conversion circuits and a memory for performing matrix transposition.
In the two-dimensional inverse conversion circuit, the operation type information received by one one-dimensional inverse conversion circuit may be different from the operation type information received by the other one-dimensional inverse conversion circuit.
In the first to fourth embodiments, a 16-bit integer range is shown as an example of the clipping range. However, any value can be set as the maximum value and the minimum value of the clipping range.

実施の形態6.
上記実施の形態1〜4における一次元逆変換回路の積和演算部3等は、単純に乗算器と累算器を用いて構成することが可能であるが、別の構成方法として、非特許文献1に示されている“distributed arithmeticアルゴリズム”に従った構成方法も可能である。
この場合、予め部分和を係数テーブル2等に格納しておき、入力前処理部1等から出力される列データをビット分解して積和演算部3等に供給し、積和演算部3等では、ビット分解された列データに対応する部分和を係数テーブル2等から取得し、ビット位置に対応するシフトを部分和に施して累算することにより、積和演算結果を取得する。
Embodiment 6 FIG.
The product-sum operation unit 3 and the like of the one-dimensional inverse transformation circuit in the first to fourth embodiments can be simply configured by using a multiplier and an accumulator. However, as another configuration method, non-patent A configuration method according to the “distributed algorithmic algorithm” shown in Document 1 is also possible.
In this case, the partial sum is stored in advance in the coefficient table 2 or the like, the column data output from the input preprocessing unit 1 or the like is bit-decomposed and supplied to the product-sum operation unit 3 or the like, and the product-sum operation unit 3 or the like. Then, a partial sum corresponding to the bit-decomposed column data is obtained from the coefficient table 2 or the like, and a shift corresponding to the bit position is applied to the partial sum for accumulation, thereby obtaining a product-sum operation result.

以下、図1の一次元逆変換回路の積和演算部3〜6が“distributed arithmeticアルゴリズム”を実行する場合の演算方法と動作を説明する。
入力前処理部1は、入力データである列データd0〜d3を順次入力すると、上記実施の形態1と同様に、その列データd0〜d3を列単位に格納するが、その列データdk(k=0,1,2,3)のビット幅をNビット、その列データdkを2の補数で表現すると、下記の式(16)のようになる。

Figure 0004405452
入力前処理部1は、4つの列データdkを1ビットずつまとめた4ビットの値bnをLSB(n=N−1)から順番にMSB(n=0)まで出力する。
n={b0n,b1n,b2n,b3n} Hereinafter, a calculation method and operation when the product-sum calculation units 3 to 6 of the one-dimensional inverse transformation circuit in FIG. 1 execute the “distributed algorithmic algorithm” will be described.
Input preprocessing unit 1, when sequentially inputting the column data d 0 to d 3 is the input data, as in the first embodiment, but stores the string data d 0 to d 3 in each column, the column When the bit width of the data d k (k = 0, 1, 2, 3) is expressed by N bits and the column data d k is expressed by 2's complement, the following equation (16) is obtained.
Figure 0004405452
The input preprocessing unit 1 outputs a 4-bit value b n obtained by collecting the four column data d k bit by bit from the LSB (n = N−1) to the MSB (n = 0) in order.
b n = {b 0n , b 1n , b 2n , b 3n }

一方、係数テーブル2には、下記の式(17)に示すように、予め、係数{c0,c1,c2,c3}についての部分和P(i0,i1,i2,i3,n)が格納されている。

Figure 0004405452
On the other hand, in the coefficient table 2, as shown in the following equation (17), partial sums P (i 0 , i 1 , i 2 , i 2 ) for the coefficients {c 0 , c 1 , c 2 , c 3 } are stored in advance. i 3 , n) are stored.
Figure 0004405452

積和演算部3〜6は、入力前処理部1から4ビットの値bnを受けると、係数テーブル2から4ビットの値bnに対応する部分和P(b0n,b1n,b2n,b3n,n)を取得する。
積和演算部3〜6は、部分和P(b0n,b1n,b2n,b3n,n)を取得すると、ビット位置nに対応するシフトを実施し、下記の式(18)に示すように、全ビット位置(N−1〜)について累算して演算結果sを取得する。

Figure 0004405452
Upon receiving the 4-bit value b n from the input preprocessing unit 1, the product-sum operation units 3 to 6 receive the partial sums P (b 0n , b 1n , b 2n corresponding to the 4-bit value b n from the coefficient table 2. , B 3n , n).
When the product-sum operation units 3 to 6 obtain the partial sums P (b 0n , b 1n , b 2n , b 3n , n), the product-sum operation units 3 to 6 perform a shift corresponding to the bit position n, as shown in the following formula (18). As described above, the operation result s is obtained by accumulating all the bit positions (N-1 to N-1).
Figure 0004405452

なお、積和演算部3〜6の演算結果sは、入力データである列データ{d0,d1,d2,d3}と、係数テーブル2から出力される行データ{c0,c1,c2,c3}との積和演算の演算結果s’に等しいことは明らかである。

Figure 0004405452
The calculation result s of the product-sum calculation units 3 to 6 includes the column data {d 0 , d 1 , d 2 , d 3 } as input data and the row data {c 0 , c output from the coefficient table 2. It is clear that it is equal to the operation result s ′ of the product-sum operation with 1 , c 2 , c 3 }.
Figure 0004405452

この発明の実施の形態1による一次元の逆変換回路を示す構成図である。It is a block diagram which shows the one-dimensional inverse transformation circuit by Embodiment 1 of this invention. この発明の実施の形態2による一次元の逆変換回路を示す構成図である。It is a block diagram which shows the one-dimensional inverse transformation circuit by Embodiment 2 of this invention. この発明の実施の形態3による一次元の逆変換回路を示す構成図である。It is a block diagram which shows the one-dimensional inverse transformation circuit by Embodiment 3 of this invention. この発明の実施の形態4による一次元の逆変換回路を示す構成図である。It is a block diagram which shows the one-dimensional inverse transformation circuit by Embodiment 4 of this invention.

符号の説明Explanation of symbols

1 入力前処理部(入力前処理手段)、2 係数テーブル(テーブル手段)、3〜6 積和演算部(積和演算手段)、7 可変丸め部(丸め処理手段)、8 クリッピング処理部(クリッピング手段)、9 出力処理部、11 入力前処理部(入力前処理手段)、12,13 係数テーブル(テーブル手段)、 14〜17 積和演算部(第1の積和演算手段)、18〜21 積和演算部(第2の積和演算手段)、22 後処理部(後処理手段)、23 可変丸め部(丸め処理手段)、24 クリッピング処理部(クリッピング手段)、25 出力処理部、31 入力前処理部(入力前処理手段)、32 制御部(制御手段)。
DESCRIPTION OF SYMBOLS 1 Input pre-processing part (input pre-processing means), 2 Coefficient table (table means), 3-6 Multiply-accumulate operation part (product-sum operation means), 7 Variable rounding part (rounding process means), 8 Clipping process part (clipping) Means), 9 output processing section, 11 input preprocessing section (input preprocessing means), 12, 13 coefficient table (table means), 14-17 product-sum operation section (first product-sum operation means), 18-21 Product-sum operation unit (second product-sum operation unit), 22 post-processing unit (post-processing unit), 23 variable rounding unit (rounding processing unit), 24 clipping processing unit (clipping unit), 25 output processing unit, 31 input Pre-processing unit (input pre-processing unit), 32 control unit (control unit).

Claims (2)

入力データである列データを順次入力して、各列データに対する1ビット符号拡張付の右シフト処理を実施するとともに、その右シフト処理を実施する前の列データと、その右シフト処理を実施した後の列データとを加算する加算処理を実施し、その右シフト処理を実施する前の列データ、その右シフト処理を実施した後の列データ、または、その加算処理後の列データのいずれかを選択して出力する入力前処理手段と、予め第1及び第2の変換行列を格納し、第1及び第2の変換行列の各行データを出力するテーブル手段と、上記入力前処理手段から出力された列データと上記テーブル手段から出力された第1の変換行列の行データとの積和演算を実施する第1の積和演算手段と、上記入力前処理手段から出力された列データと上記テーブル手段から出力された第2の変換行列の行データとの積和演算を実施する第2の積和演算手段と、上記第1の積和演算手段の演算結果と上記第2の積和演算手段の演算結果との加算処理又は減算処理を実施する後処理手段と、上記後処理手段における加算結果又は減算結果の行要素毎に、別々の丸め処理を実施する丸め処理手段と、上記丸め処理手段による丸め処理後の加算結果又は減算結果を所定のクリッピング範囲内に収めるクリップ処理を実施するクリッピング手段とを備えた逆変換回路。 The column data as input data is sequentially input, and right shift processing with 1-bit sign extension is performed on each column data, and the column data before the right shift processing is performed and the right shift processing is performed. Performs an addition process that adds the subsequent column data and either the column data before the right shift process, the column data after the right shift process, or the column data after the addition process Input preprocessing means for selecting and outputting, first and second transformation matrices stored in advance, table means for outputting each row data of the first and second transformation matrices, and output from the input preprocessing means First product-sum operation means for performing a product-sum operation on the column data and the row data of the first transformation matrix output from the table means; the column data output from the input pre-processing means; Table Second product-sum operation means for performing product-sum operation on the row data of the second transformation matrix output from the means, the operation result of the first product-sum operation means, and the second product-sum operation means Post-processing means for performing addition processing or subtraction processing with the operation result of the above, rounding processing means for performing separate rounding processing for each row element of the addition result or subtraction result in the post-processing means, and the rounding processing means An inverse conversion circuit comprising: clipping means for performing a clipping process that fits an addition result or a subtraction result after the rounding process in accordance with {circle over (1)} within a predetermined clipping range. 入力前処理手段が選択する列データの種類、第1及び第2の積和演算手段が使用する変換行列の種類、後処理手段における演算の種類及び有無、丸め処理手段における丸め方法、及びクリッピング手段におけるクリッピング範囲を制御する制御手段を設けたことを特徴とする請求項1記載の逆変換回路。 Type of column data selected by input preprocessing means, type of transformation matrix used by first and second sum-of-products calculation means, type and presence of calculation in post-processing means, rounding method in rounding processing means, and clipping means 2. The inverse conversion circuit according to claim 1, further comprising control means for controlling a clipping range in the first to fourth circuits.
JP2005267350A 2005-09-14 2005-09-14 Inverse conversion circuit Expired - Fee Related JP4405452B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005267350A JP4405452B2 (en) 2005-09-14 2005-09-14 Inverse conversion circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005267350A JP4405452B2 (en) 2005-09-14 2005-09-14 Inverse conversion circuit

Publications (2)

Publication Number Publication Date
JP2007079972A JP2007079972A (en) 2007-03-29
JP4405452B2 true JP4405452B2 (en) 2010-01-27

Family

ID=37940210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005267350A Expired - Fee Related JP4405452B2 (en) 2005-09-14 2005-09-14 Inverse conversion circuit

Country Status (1)

Country Link
JP (1) JP4405452B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9807395B2 (en) 2011-01-18 2017-10-31 Dolby International Ab Video decoder with reduced dynamic range transform with inverse transform shifting memory
GB2514099B (en) * 2013-05-07 2020-09-09 Advanced Risc Mach Ltd A data processing apparatus and method for performing a transform between spatial and frequency domains when processing video data

Also Published As

Publication number Publication date
JP2007079972A (en) 2007-03-29

Similar Documents

Publication Publication Date Title
JPH0526229B2 (en)
JPH07236143A (en) High-speed digital signal decoding method
CN110109646B (en) Data processing method, data processing device, multiplier-adder and storage medium
JP6357345B2 (en) Data processing apparatus and method for performing conversion between spatial domain and frequency domain when processing video data
WO2000036842A1 (en) Dct arithmetic device
JP4405452B2 (en) Inverse conversion circuit
JP2006060703A (en) Data converter and data converting method
JP3129392B2 (en) Two-dimensional IDCT circuit
US11604852B2 (en) Signal processing apparatus, method, program, and recording medium
US12019700B2 (en) Signal processing apparatus, method, program, and recording medium
JP4933405B2 (en) Data conversion apparatus and control method thereof
JP5589628B2 (en) Inner product calculation device and inner product calculation method
JP7023149B2 (en) Semiconductor device
CN110990776A (en) Code distributed computing method, device, computer equipment and storage medium
JP3970442B2 (en) Discrete cosine transform device and inverse discrete cosine transform device
JPH05153402A (en) Discrete cosine transformation device
JP3977003B2 (en) Discrete cosine transform / inverse discrete cosine transform method and apparatus
JP6687700B2 (en) Information processing device, information processing method, and program
JP3575991B2 (en) Orthogonal transform circuit
JP3895031B2 (en) Matrix vector multiplier
JP3697716B2 (en) Matrix data multiplier
JPH0540776A (en) Two-dimensional dct matrix operation circuit
JP4954019B2 (en) Arithmetic unit
JP3565494B2 (en) Enlarged field arithmetic device and program recording medium therefor
CN116820391A (en) Multiplier operation method, multiplier operation device, electronic equipment and storage medium

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071004

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080625

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090715

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091027

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091104

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4405452

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees