JPH07334347A - 符号化演算器 - Google Patents

符号化演算器

Info

Publication number
JPH07334347A
JPH07334347A JP12938094A JP12938094A JPH07334347A JP H07334347 A JPH07334347 A JP H07334347A JP 12938094 A JP12938094 A JP 12938094A JP 12938094 A JP12938094 A JP 12938094A JP H07334347 A JPH07334347 A JP H07334347A
Authority
JP
Japan
Prior art keywords
input
data
output
adder
selector
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.)
Withdrawn
Application number
JP12938094A
Other languages
English (en)
Inventor
Masato Yamazaki
真人 山崎
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP12938094A priority Critical patent/JPH07334347A/ja
Publication of JPH07334347A publication Critical patent/JPH07334347A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【目的】 画像データの符号化を高速に行う。 【構成】 DCTの場合、データ入力端子10−1、1
0−2からの入力データをセレクタ11−1〜11−4
を介して、加減算器12−1,12−2に入力し、加
算、または減算を実行する。逆DCTの場合、加減算器
12−1,12−2をスルーする。積和演算器13−
1,13−2により、積和演算する。逆DCTの場合、
加減算器15により、加算と減算を順に実行する。量子
化、または逆量子化の場合は、データ入力端子11−1
から入力された入力データをセレクタ11−1、加減算
器12−1を介して,積和演算器13−1に入力し、デ
ータ入力端子10−3より入力される係数とを掛け算し
て、セレクタ11−3、加減算器12−2を介して、積
和演算器13−2に入力し、積和演算器13−1の出力
と係数とを掛け算し、演算結果出力端子16より出力す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、動画像または静止画像
等の画像を伝送または蓄積するために画像データの圧
縮、及び圧縮されたデータの伸長のための画像符号化装
置における符号化演算器に関するものである。
【0002】
【従来の技術】従来、このような分野の技術としては、
例えば、次のような文献に記載されるものがあった。 文献1;オプトロニクス、125[5](1992)、
片山泰男著、「蓄積媒体における符号化」P.86−9
6 文献2;ジャーナル オブ ソリッド ステート サー
キット(JOURNAL OFSOLID-STATE CIRCUIT)、24[6]
(1989−12)、IEEE(米)、"A Single-Chip
16-bit 25-ns Real-Time Video/Image Signal Process
or" P.1662−1667 従来、画像符号化装置では、前記文献1に記載されるよ
うな動画像の蓄積装置等で用いられるISO/IEC
SC29/WG11の下で進行してきた蓄積メディア動
画像符号化の国際標準会議であるMPEGで勧告された
符号化方式が標準として用いられている。この標準化方
式では、動画像の1フレームを8×8画素のブロックに
分割し、そのブロック毎にDCT(Discrete Cosine Tr
ansform :離散的コサイン変換)、量子化、逆量子化、
逆DCTを行う。
【0003】以下、上記に示した標準化方式のDCTと
量子化について述べる。DCTは、次のように定義され
ている。f(x)を入力とし、F(u)をそのDCT変換系とす
るとき、次式(1)〜(3)のようになる。
【数1】 2次元DCTは、以下のようになる。すなわち、フレー
ム間のMC(Motion Compensation:動き補償)または入
力画像自身(以下、イントラ(intra-frame )と呼ぶ)
のマクロブロック内の各ブロック(6個の8×8画素)
について、8×8の2次元DCTを行う。N×Nの2次
元DCTとその逆DCTは、次式(4)、(5)のよう
になる。
【0004】
【数2】 変換するデータの値は差分値でありうるので、その値
は、−255〜255の範囲であり、変換後の係数の値
の範囲は、−2040〜2040となる。2次元DCT
は、1次元DCTの処理に分解でき、しかも計算量も少
なくなる。これは、ブロック内の全ての行でそれぞれx
方向に1次元DCTし、その結果を同じ行に戻し、その
後、y方向に1次元DCTを全ての列でそれぞれ行い、
その結果を同じ列に戻すことである。これを式で表すと
次式(6)、(7)のようになる。
【0005】
【数3】 量子化というのはDCT変換係数全体を小さい値の数値
で表現するものであり、そうすることによって符号量を
減らすことがてきる。標準化では、量子化が規定され
ず、逆量子化だけが規定されている。量子化は(Intra
のDC以外は)、簡単にはスライスまたはマクロブロック
に記述されたquant (量子化特性)の2倍のステップサ
イズと次に述べる量子化マトリックス(QM)の積で(係
数×16)を割り算することと考えてよい。イントラの
DCでは固定の8で丸めつき割り算をする。Intra のDC係
数以外では、輝度、色差とも同じく逆量子化は次式
(8)、(9)で行われる。Intra では、 rec=2*level*quant*intraquant[m][n]/16 ・・・(8) ここで、level は、輝度または色差であり、intraquant
[m][n](m,n=1,2, …,8) は、量子化マトリックスの量子
化係数である。Non-intra(非イントラ)では、 rec=(2*level+sign(level))*quant*nonintraquant[n][m]/16 ・・・(9) ここで、sign(level) は、level の符号を表し、
【数4】 である。nonintraquant[n][m](m,n=1,2, …,8) は、量
子化マトリックスの量子化係数である。
【0006】式(9)で、0の近辺を離した再現をする
ために2*level にsign(level) を加算している。逆量子
化でこうすることは、量子化で単なる割り算が使えるこ
とを意味し、また0の近辺を離すことはNon-intra でノ
イジーな変化を抑える働きがある。さらに、rec が偶数
なら符号を引く。すなわち、次式(10)のようにす
る。 if(rec==even)rec=REC-sing(level) ・・・(10) こうして偶数を避けて奇数のみを再現し逆量子化に与え
るのは逆量子化のミスマッチを避けるためである。量子
化には設定可能な量子化マトリックス(QM)という8
×8のDCT係数のそれぞれの場所に異なる感度を与え
る仕組みが入っていて、このため再現の周波数特性を変
化できる効果を持つ。量子化マトリックスQMには2種
類あり、Intra 用と、Non-intra 用とがある。デフォー
ルトの値が決まっていて、シーケンスの先頭で両方とも
設定できる。逆量子化は、8×8の係数毎に次式(1
1)のようなジクザクスキャンをしながら計算を行う。
【0007】 i=scan[m][n] ・・・(11) Intra では、次式(12)を行い、 rec[m][n] =2*level[i]*quant*intraquant[m][n]/16 ・・・(12) non-intra では、次式(13)を行う。 rec[m][n]=(2*level[i]+sign(level[i]))quant*intraquant[m][n]/16 if((rec[m][n]&1)==0)rec[m][n]=rec[m][n]-sign(rec[m][n]/16 if(rec[m][n]>2047)rec[m][n]=2047 if(rec[m][n]<-2048)rec[m][n]=-2048 ・・・(13) 図2は、前記文献2に記載された上記符号化方式を実現
する従来の符号化演算器を示す構成ブロック図である。
図に示すように、この符号化演算器は、加算、減算、絶
対値減算や各種論理演算を行うALU1、乗算器4、累
算器6、最大値最小値検出器7、セレクタ3−1,3−
2,5,8により構成されている。データ入力端子1−
1,1−2から入力されたデータは、ALU2または乗
算器4で演算を施される。この時、セレクタ3−1,3
−2,5の設定により3種類の演算パスが選択される。
すなわち、入力データがALU2に与えられ、セレクタ
5から出力される場合と、入力データがセレクタ3−
1,3−2を通して乗算器4に与えられ、セレクタ5か
ら出力される場合と、入力データがALU2に与えら
れ、その演算結果がセレクタ3−1、3−2を通して乗
算器4に与えられ、セレクタ5から出力される場合であ
る。
【0008】セレクタ5から出力された演算データはセ
レクタ8の設定により、そのままか、あるいは累算器6
を通してから、あるいは累算器6、及び最大値最小値検
出器7を通して、演算出力端子9に出力される。このよ
うに、図2に示す符号化演算器は3段のパイプライン構
成となっている。DCTを行う場合は、入力端子1−1
(1−2)から与えられる画像データと入力端子1−2
(1−1)から与えられるDCT係数との積和演算を乗
算器4と累算器6で行う。量子化を行う場合は、入力端
子1−1(1−2)から与えられるDCT結果と入力端
子1−2から与えられる量子化係数の逆数との乗算を乗
算器4で行う。逆量子化を行う場合は、入力端子1−1
(1−2)から与えられる量子化結果と、入力端子1−
2(1−1)から与えられる量子化係数との乗算を乗算
器4で行い、乗算結果と量子化係数の1/2との加算を
累算器6で行う。逆DCTを行う場合は、入力端子1−
1(1−2)から与えられる逆量子化結果と、入力端子
1−2(1−1)から与えられる逆DCT係数との積和
演算を乗算器4と累算器6で行う。
【0009】
【発明が解決しようとする課題】しかしながら、従来の
符号化演算器においては、次のような課題があった。上
記構成の符号化演算器では内部に乗算器4を1つしか持
っていないのでDCTを高速に処理することができず、
また高速のアルゴリズムを用いたとしても一度のパイプ
ライン処理では、DCTを行えずこの符号化演算器を2
度、3度とセレクタを切り換えてデータを通す必要があ
った。MPEG方式の量子化も同様に乗算(除算)を2
回行わなければならないため最低2度はデータを演算器
に入れる必要があり、効率良く高速に処理できないとい
う問題点があった。
【0010】
【課題を解決するための手段】第1の発明は、前記課題
を解決するために、画像データの圧縮のための符号化、
及び圧縮されたデータの伸長のための符号化をする符号
化演算器において、以下のものを設けている。データを
入力する第1、第2のデータ入力端子と、前記第1のデ
ータ入力端子から入力される入力データと前記第2のデ
ータ入力端子から入力される入力データとの加算または
減算を行う第1の加減算器と、前記第1の加減算器の出
力に対して積和演算をする第1の積和演算器とを設けて
いる。さらに、前記第1の積和演算器の出力と前記第1
のデータ入力端子から入力される入力データと値零とを
入力し、そのいずれかを出力する第1のセレクタと、前
記第1のセレクタの出力と前記第2のデータ入力端子か
ら入力される入力データとの加算または減算を行う第2
の加減算器と、前記第2の加減算器の出力に対して積和
演算をする第2の積和演算器と、前記第1の積和演算器
の出力と値零とを入力し、そのいずれかを出力する第2
のセレクタと、前記第2のセレクタの出力と前記第2の
積和演算器の出力との加算または減算器を行う第3の加
減算器とを、設けている。第2の発明は、第1の発明の
第1、第2セレクタが以下のように構成されている。す
なわち、DCT、逆DCTの場合のようにマトリックス
演算処理を行う場合、前記第1のセレクタは第2のデー
タ入力端子からの入力データを出力し、前記第2のセレ
クタは前記第1の積和演算器の出力を出力し、量子化演
算処理を行う場合、前記第1のセレクタは第1の積和演
算器の出力を出力し、前記第2のセレクタは通常(例え
ば、Intra DC成分以外の場合)は零を出力する。
【0011】
【作用】第1、または第2の本発明によれば、以上のよ
うに符号化演算器を構成したので、例えば、DCTなど
のマトリックス演算の場合、第1、第2の加減算器によ
り、第1、第2の入力端子から入力された入力データの
加算、あるいは減算をする。この時、第1のセレクタに
より、第1のデータ入力端子より入力された入力データ
を第2の加減算器に出力する。第1、第2の積和演算器
により、マトリックス演算の係数と第1、第2の加減算
器の出力との積をとり、さらにこの積の和をとり、この
積の和が第3の加減算器をスルーして出力される。例え
ば、逆DCTの場合は、第1、第2のデータ入力端子よ
り入力された入力データは、第1、第2の加減算器をス
ルーして、第1、第2積和演算器に入力され、第1、第
2の積和演算器により、マトリックス演算の係数と第
1、第2の加減算器の出力との積をとり、さらに第3の
加減算器により第1、第2の積和演算器の出力結果の加
算または減算を行う。例えば、量子化の場合には、第1
の積和演算器により第1、または第2のデータ入力端子
より入力された入力データと係数を乗算し、第1のセレ
クタにより第1の積和演算器の出力を第2の加減算器に
出力する。第2の加減算器により、この第1の積和演算
器の出力をそのまま第2の積和演算器に出力する。第2
の積和演算器により、第1の積和演算器の出力に係数を
掛け合わせて、その結果を第3の加減算器に出力する。
通常(例えば、Intra DC成分以外の時)では、第2のセ
レクタより零が出力され、第2の積和演算器の出力は、
第3の加減算器をスルーして出力される。このように、
DCT、逆DCTのようなマトリックス演算の場合は、
第1、第2の加減算器、第1、第2の積和演算器を並列
に使用し、量子化、逆量子化の場合には、第1の加減算
器、第1の積和演算器、第2加減算器、第2の積和演算
器を直列に使用する。従って、前記課題を解決できるの
である。
【0012】
【実施例】図1は、本発明の実施例を示す符号化演算器
の回路図である。この符号化演算器は、データ入力端子
10−1,10−2,10−3,10−4を有してい
る。データ入力端子10−1には、セレクタ11−1、
11−3が接続されている。データ入力端子10−2に
は、セレクタ11−2、11−4が接続されている。セ
レクタ11−1、11−2の出力側には、加減算器12
−1が接続されている。データ入力端子10−3、及び
加減算器12−1の出力側には、積和演算器13−1が
接続され、さらに積和演算器13−2の出力側には、セ
レクタ14−1、及びセレクタ11−3が接続されてい
る。セレクタ11−3、11−4の出力側には、加減算
器12−2が接続されている。データ入力端子10−
4、及び加減算器12−2の出力側には、積和演算器1
3−2が接続され、さらに積和演算器13−2の出力側
には、セレクタ14−2が接続されている。セレクタ1
4−1、14−2の出力側には、加減算器15が接続さ
れている。セレクタ11−2には、データ入力端子11
−2からの入力以外に、”1”、及び零を入力される。
セレクタ11−3には、データ入力端子11−1、及び
積和演算器13−1からの入力以外に、零が入力され
る。セレクタ11−4には、データ入力端子10−2か
らの入力以外に零が入力される。セレクタ14−1に
は、積和演算器14−1からの入力以外に”1”、及び
零が入力される。セレクタ14−2には、積和演算器1
4−2からの入力以外に零が入力される。データ入力端
子10−1、10−2は、量子化、逆量子化、DCT、
逆DCT等を行うためのデータを入力する第1、第2の
データ入力端子である。セレクタ11−3には、積和演
算器13−1の出力、第1のデータ入力端子からの入力
データ、及び零が入力され、これらのいずれかを出力す
る第1のセレクタであり、セレクタ14−1は、積和演
算器13−1と値1と零とを入力し、これらのいずれか
を出力する第2のセレクタである。加減算器12−1、
12−2、15は、第1、第2、第3の加減算器であ
り、積和演算器13−1、13−2は、第1、第2の積
和演算器である。
【0013】図3は、図1中の加減算器12−1の回路
図である。図3に示すように加減算器12−1は、加算
器として機能するか、減算器として機能するかを指定す
るための制御信号CNTを入力する入力端子30−1、
図1中のセレクタ11−1からの入力データIN1を入
力する入力端子30−2、及び図1中のセレクタ11−
2からの入力データIN2を入力する入力端子30−3
を有している。入力端子30−1には、排他的論理和を
とる2入力EORゲート31の入力端子、及び加算器3
2の入力端子に接続されている。入力端子30−2に
は、加算器32が接続されている。入力端子30−3に
は、EORゲート31の他方の入力端子に接続されてい
る。EORゲート31の出力側には、加算器32の他方
の入力端子に接続されている。加算器32の出力側に
は、出力信号OUTを出力するための出力端子33が接
続されている。入力端子30−1には、加算器として用
いる場合は、零、減算器として用いる場合は、1が入力
される。EORゲート31は入力端子30−3が複数ビ
ット数存在するのであれば、その数だけEORゲートは
存在して接続される。但し、入力端子30−1からの信
号線は、全てのEORゲートに共通に与えられる。ま
た、図1中の加減算器12−2、15も図3の同様の回
路構成であり、加減算器12−2の場合は、図3中の入
力端子30−2、入力端子30−3に相当する入力端子
にはそれぞれ図1中のセレクタ11−3、11−4の出
力側に接続され、加減算器15の場合は、図3中の入力
端子30−2、入力端子30−3に相当する入力端子に
はそれぞれ図1中のセレクタ14−1、14−2の出力
側に接続される。
【0014】図4は、図1中の積和演算器13−1の回
路図である。図4に示すように、この積和演算器13−
1は、図1中の加減算器12−1かに入力データIN1
を入力する入力端子40−1、及び図1中のデータ入力
端子10−3から入力される係数データを入力する入力
端子40−2を有している。入力端子40−1、40−
2には、乗算器41が接続されている。乗算器41の出
力側には、加算器42の一方の入力端子が接続され、さ
らに加算器42の出力側には、レジスタ43が接続され
ている。レジスタ43には、セレクタ44の一方の入力
端子、及び出力信号OUTを出力する出力端子45が接
続されている。セレクタ44の他方の入力端子には値零
が入力される。セレクタ44の出力側には、加算器42
の他方の入力端子が接続されている。また、図1中の積
和演算器13−2の回路も図4の積和演算器13−1と
同様の構成であり、図4中の入力端子40−1、40−
2に相当する入力端子には、それぞれ図1中の加減算器
12−2、データ入力端子10−4がそれぞれ接続され
る。以下、図1の演算符号化回路の動作(a)〜(d)
を説明する。
【0015】(a) DCT演算の時 前述した1次DCTの式を行列で表すと次式(14)と
なる。
【数5】 ここで、A=COS(1/16)π、B=COS(2/16)π、C=COS(3/1
6)π、D=COS(4/16)π、E=COS(5/16)π、F=COS(6/1
6)π、G=COS(7/16)πである。この式は、係数の対称
性から次式(15)のように変形することができる。
【0016】
【数6】 まず、データ入力端子10−1から、入力データがf0,f
1,f2,f3 の順に入力してセレクタ11−1、11−3に
入力し、同期してデータ入力端子10−2から、入力デ
ータがf7,f6,f5,f4 の順に入力してセレクタ11−2、
11−4に入力する。セレクタ11−1、11−2で
は、データ入力端子10−1、10−2からの入力デー
タをそのまま加減算器12−1に出力する。同様に、セ
レクタ11−3、11−4では、データ入力端子10−
1、10−2からの入力データをそのまま加減算器12
−2に出力する。加減算器12−1では、図3中の入力
端子30−1から加算器として機能させるための制御信
号CNTとして零が入力され、この制御信号CNTはE
ORゲート31、及び加算器32に入力される。図1中
のデータ入力端子10−1から、入力端子30−2に入
力されたデータIN1は、加算器32の入力端子に入力
される。図1中のデータ入力端子10−3から、入力端
子30−3に入力されたデータIN2は、EORゲート
31の他方の入力端子に入力される。EORゲート31
では、入力データIN2と制御信号CNTとの排他論理
をとり、入力データIN2をそのまま加算器32に出力
する。加算器32では、入力データIN1とEORゲー
ト31から入力された入力データIN2とを加算して、
加算結果OUTを出力端子33に出力する。出力端子3
3から出力された加算結果は、図1中の積和演算器13
−1に入力される。
【0017】一方、加減算器12−2には、図3中の入
力端子30−1と同様の入力端子から制御信号CNTと
して”1”が入力される。図3中の入力端子30−3と
同様の入力端子から入力された入力データIN2に対し
て、図3中のEORゲート31と同様のEORゲートに
よって1の補数をとる演算が行われ、図3中の入力端子
30−2と同様の入力端子から入力される図1中のデー
タ入力端子10−1から入力された入力データIN1と
もに図3中の加算器32と同様の加算器に入力される。
一方、加算器には、”1”が入力され、加算器では、”
1”と入力データIN2の1の補数とを加え入力データ
IN2の2の補数をとり、さらにこの2の補数と入力デ
ータIN1との和をとることにより、入力データIN1
とIN2との減算演算が行われ、その減算結果を出力端
子に出力する。出力端子から出力された減算結果は、積
和演算器13−2に入力される。よって、加減算器12
−1では、f0+f7,f1+f6,f2+f5,f3+f4 の計算をそれぞれ
行い、その結果を積和演算器13−1に出力し、加減算
器12−2では、f0-f7,f1-f6,f2-f5,f3-f4 の計算を順
に行い、その結果を積和演算器13−2に出力する。
【0018】図4中の積和演算器13−1では、入力端
子40−1には、図1中の加減算器12−1の演算結果
(f0+f7,f1+f6,f2+f5,f3+f4 )が順に入力され、入力端
子40−2には、図1中のデータ入力端子10−3か
ら、式(15)の係数データがD,D,D,D の順に入力され
る。乗算器41では、入力端子40−1から入力された
データIN1と入力端子40−2から入力されたデータ
IN2との積をとり、加算器42にその積(D(f0+f7),D
(f1+f6),D(f2+f5),D(f3+f4) )を順に出力する。加算器
42では、乗算器41から出力された乗算結果とセレク
タ44から出力されるデータを加算して、レジスタ43
に出力する。レジスタ43では、加算器42から出力さ
れたデータを保持する。セレクタ44では、DCTする
ブロックの最初の画素に対する演算結果を入力端子50
−2から入力するタイミングで積和値をクリアするため
零出力し、該DCT対象のブロック内では、次のタイミ
ングからはレジスタ43に保持されたそれまでの積和値
をスルーで出力するように制御を行い、どちらか一方の
入力を加算器42に出力する。加算器42では、乗算器
41から出力された乗算結果とそれまでの積和結果を加
算して、レジスタ43に出力し、最終的には出力端子4
5より、式(15)に示される積和結果F0が出力され、
この積和結果F0が図1中のセレクタ14−1に入力され
る。
【0019】データ入力端子10−4から、式(15)
に示される係数データがA,C,E,G の順に入力し、図4に
示す積和演算器13−1と同様に構成された積和演算器
13−2では、この係数データと加減算器12−2の出
力であるf0-f7,f1-f6,f2-f5,f3-f4 との間で積和演算を
行い、その式(15)に示す積和結果F1をセレクタ14
−2に出力する。その他のF2,F3 、F4,F5 、F6,F7 につ
いても入力端子10−3、10−4に係数を式(15)
に示される相当する係数データに変更することにより求
めることができる。 (b) 逆DCT演算の時 逆DCTは先に示したDCTの式の逆変換であり、行列
で表すと次式(16)のようになる。
【数7】 ここで、A=COS(1/16)π、B=COS(2/16)π、C=COS(3/1
6)π、D=COS(4/16)π、E=COS(5/16)π、F=COS(6/1
6)π、G=COS(7/16)πである。この式は、係数の対称
性から次式(17)のように変形することができる。
【0020】
【数8】 データ入力端子10−1から、入力データがF0,F2,F4,F
6 の順に入力してセレクタ11−1、11−3に入力
し、同期してデータ入力端子10−2から、入力データ
がF1,F3,F5,F7 の順に入力してセレクタ11−2、11
−4に入力する。セレクタ11−1では、データ入力端
子10−1からの入力データをそのまま加減算器12−
1に出力し、セレクタ11−2では、加減算器12−1
に零を出力し、セレクタ11−3では、加減算器12−
2に零を出力し、セレクタ11−4では、データ入力端
子10−2からのデータをそのまま加減算器12−2に
出力する。
【0021】加減算器12−1では、このモードにおい
て加算器として機能し、セレクタ11−1から入力され
るデータ入力端子10−1からの入力データとセレクタ
11−2から入力される零を加算して、データ入力端子
10−1からの入力データを積和演算器13−1に出力
する。加減算器12−2では、このモードにおいて加算
器として機能し、セレクタ11−4から入力されるデー
タ入力端子10−2からの入力データとセレクタ11−
3から入力される零を加算して、データ入力端子10−
2からの入力データを積和演算器13−2に出力する。
よって、積和演算器13−1には、F0,F2,F4,F6 の順に
データが入力され、積和演算器13−2には、F1,F3,F
5,F7 の順にデータが入力される。また、データ入力端
子10−3からは、式(17)の係数データD,B,D,F の
順に入力され、積和演算器13−1では、f0'=F0*D+F2*
B+F4*D+F6*F を計算し、この計算結果をセレクタ14−
1に出力する。同様に、データ入力端子10−4から
は、係数データA,C,E,G の順に入力され、積和演算器1
3−2では、f0''=F1*A+F3*C+F5*E+F7*G を計算し、こ
の計算結果をセレクタ14−2に出力する。セレクタ1
4−1、14−2では、積和演算器13−1、13−2
から入力されたデータをそれぞれ出力する。加減算器1
5では、まず積和演算器13−1、13−2からそれぞ
れ出力されるデータf0' 、fo''の加算を行って、式(1
7)のf0を出力し、次にf0' とf0''の減算を行って式
(17)のf7を出力する。その他、f1,f2,f3,f4,f5,f6
に関してもデータ入力端子10−3、及び10−4の係
数データを変えることにより同様の手順で演算結果を得
ることができる。
【0022】(c) 量子化演算の時 前述した符号化方式の量子化の手順を式に表すと以下の
ようになる。 (i) Intraモードの時 Intra DC成分の時 dec=dc/8 Intra AC成分の時 dec=(16*ac)/(2*quant*intraquant[m][n]) となる。この場合の図1の符号化演算器の動作を説明す
る。データ入力端子10−1からデータが入力されて、
セレクタ11−1に入力される。セレクタ11−1で
は、入力データをスルーで加減算器12−1に出力す
る。セレクタ11−2では、零を加減算器12−1に出
力する。加減算器12−1では、加算器として機能し、
セレクタ11−1から入力される入力データとセレクタ
11−2から入力される零を加算し、入力データをスル
ーで積和演算器13−1に出力する。データ入力端子1
0−3からは、Intra 時の量子化マトリックスの係数(i
ntraquant[m][n])の逆数が入力され、このIntra 用量子
化マトリックスの逆数が積和演算器13−1に入力され
る。このモードでは、積和演算器13−1では乗算のみ
を行い、入力データとIntra 用量子化マトリックスの逆
数との積をとり、その結果をセレクタ11−3、14−
1に出力する。
【0023】Intra DC成分の時、セレクタ14−1で
は、積和演算器13−1から入力されたデータを加減算
器15に出力する。セレクタ14−2では、零を加減算
器15に出力する。加減算器15では、セレクタ14−
1から入力されたデータとセレクタ14−2から入力さ
れた零を加算して、演算結果出力端子16に積和演算器
13−1から出力されたデータを出力する。このよう
に、DC成分のデータはデータ入力端子10−3から1/8
が入力され、積和演算器13−1で乗算(DC*(1/8))が行
われて、加減算器15をスルーして、演算結果出力端子
16から積和演算器13−1の乗算結果が出力される。
また、Intra AC成分のデータはデータ入力端子10−2
からAC成分に対応したintra 量子化マトリックスの逆数
が入力され、積和演算器13−1で乗算が行われて、セ
レクタ11−3をスルーで通過し、セレクタ11−4の
出力を零とするため加減算器12−2もスルーで通過
し、積和演算器13−2に入力される。一方、データ入
力端子10−4からは、16/(quant*2)の値が入力され、
積和演算器13−2では、乗算((16*ac)/(2*quant*int
raquant[m][n]))のみが行われる。積和演算器13−2
の出力は、セレクタ14−1は零を出力しているので、
加減算器15をスルーで通過し、演算結果出力端子16
より出力される。
【0024】(II) Non-intra モードの時 Non-intra モード時の量子化についてもIntra モード時
の量子化とほぼ同じ手順で処理が行われる。ただ、異な
る所はNon-intra モード時には、入力データにDC成分が
存在しないので、全てのデータが2つの積和演算器13
−1、13−2を通過することと(つまりセレクタ14
−1の出力は常に零でセレクタ14−2の出力は常にス
ルーである)、データ入力端子10−3から入力される
データがnonintra時の量子化マトリックス(nonintraqu
ant[m][n} )の逆数である。 (d) 逆量子化演算の時 (i) Intra モードの時 Intra DC成分の時 rec=level*8 Intra AC成分の時 rec=2*level*quant*intraquant[m][n]/16 データ入力端子10−1からのデータ(level)が入力さ
れ、このデータがセレクタ11−1に入力される。セレ
クタ11−1では、入力データを1ビット上位にシフト
した値(実質入力データの2倍の値)を加減算器12−
1に出力する。セレクタ11−2では、常に零を加減算
器12−1に出力する。加減算器12−1では、セレク
タ11−1から入力されたデータと零とを加算して、積
和演算器13−1に出力する。データ入力端子10−3
からは、Intra 時の量子化マトリックスの係数(intraq
uant[m][n])が入力され、積和演算器13−1では、乗
算のみが行われ、セレクタ14−1に出力される。
【0025】この時、DC成分のデータの場合は、データ
入力端子10−3から値4が入力され、積和演算器13
−1で乗算が行われ、セレクタ14−1をスルーで通過
して、加減算器15に入力される。このDC成分のデータ
の場合のみ、セレクタ41−2では零を出力し、加減算
器15をスルーで通過して演算結果出力端子16より出
力される。他のAC成分のデータはデータ入力端子10−
3からそれぞれAC成分に対応したIntra 量子化マトリッ
クスの係数(intraquant[m][n])が入力され、積和演算
器13−1で乗算が行われ、セレクタ11−3をスルー
で通過し、セレクタ11−4の出力を零とするため加減
算器12−2もスルーで通過し、積和演算器13−2に
入力される。一方、データ入力端子10−4からは、(q
uant*2)/16の値が入力し、積和演算器13−2では、乗
算のみが行われる。積和演算器13−2の出力は、セレ
クタ14−2をスルーで通過する。すでにDC成分の値は
通過しているので、セレクタ14−1では、セレクタ1
4−2を通過する値の偶数/奇数を検出して偶数(eve
n) の時は、”1”、奇数(odd) の時は、零を出力す
る。加減算器15では、セレクタ14−2から入力され
る値の符号(正/負)を検出して正の時と減算器として
機能し、負の時は加算器として機能する。このようにし
て、セレクタ14−1を通過する値が偶数の時、その値
が正の時−1、負の時+1がそれぞれその値に加算され
る。この演算結果は、演算結果出力端子16から出力さ
れる。
【0026】(ii) Non-intra モードの時 逆量子化についても、Intra モード時の逆量子化とほぼ
同じ手順(加減算器12−1、積和演算器13−1、加
減算器12−2、積和演算器13−2の順に直列にデー
タが通過する)で処理が行われる。ただ異なる点は、量
子化時の同様にNon-intra モード時と同様に入力データ
にDC成分は存在しないので全てのデータが2つの積和演
算器13−1、13−2を通過する。つまり、セレクタ
14−1からはスルーではデータは出力されず、逆にセ
レクタ14−2の出力は常にスルーである。また、デー
タ入力端子10−3から入力されるデータがNon-intra
時の量子化マトリックス(nointraquant[m][n]) であ
る。さらに、データ入力端子10−1からデータが入力
し、セレクタ11−1によって値が2倍されて出力され
る。Intra 時はセレクタ11−2は常に零を出力してい
たが、Non-intra モード時には常に値”1”を出力す
る。セレクタ11−1とセレクタ11−2の入力を受け
る加減算器12−1では、セレクタ11−1からの入力
データの正/負を検出し、値が正であれば加算し、負で
あれば減算を行い、結果的にデータ入力端子10−1か
らの入力データは、積和演算器13−1で乗算を行う前
に、入力データが正の時に+1、負の時に−1を加算す
る処理が行われる。
【0027】以上のように、本実施例では、乗算器を含
む2つの積和演算器13−1,13−2をDCTモー
ド,逆DCTモード時は並列に動作させ、量子化モー
ド、真逆量子化モード時に直列に動作させることができ
るので効率良く高速に演算処理を行うことができる。な
お、本実施例に限定されず種々の変形が可能である。そ
の変形例としては、例えば次のようなものがある。勧告
された符号化方式の演算処理であるDCT、逆DCT、
量子化、逆量子化に適用した例を示したが、実施例で示
したDCTなどは行列演算であるのでこの行列の係数デ
ータを変えることによりフィルタ演算等の処理ができる
画像処理演算器にも適用可能である。
【0028】
【発明の効果】以上詳細に説明したように、第1、第2
の発明によれば、画像データの圧縮のための符号化、及
び圧縮されたデータの伸長のための符号化をする符号化
演算器において、データを入力する第1、第2のデータ
入力端子と、第1の加減算器と、第1の積和演算器と、
第1のセレクタと、第2の加減算器と、第2の積和演算
器と、第2のセレクタと、第3の加算器とを設け、これ
らを用いてデータを並列、または直列に処理するので、
処理を高速にできる。
【図面の簡単な説明】
【図1】本発明の実施例を示す符号化演算器の回路図で
ある。
【図2】従来の符号化演算器の回路図である。
【図3】図1中の加減算器の回路図である。
【図4】図1中の積和演算器の回路図である。
【符号の説明】
10−1,10−2,10−3,10−4 データ
入力端子 11−1,11−2,11−3,11−4 セレク
タ 12−1,12−2,15 加減算
器 13−1,13−2 積和演
算器 14−1,14−2 セレク
タ 16 演算結
果出力端子

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 画像データの圧縮のための符号化、及び
    圧縮されたデータの伸長のための符号化をする符号化演
    算器において、 データを入力する第1、第2のデータ入力端子と、 前記第1のデータ入力端子から入力される入力データと
    前記第2のデータ入力端子から入力される入力データと
    の加算または減算を行う第1の加減算器と、 前記第1の加減算器の出力に対して積和演算をする第1
    の積和演算器と、 前記第1の積和演算器の出力と前記第1のデータ入力端
    子から入力される入力データと値零とを入力し、そのい
    ずれかを出力する第1のセレクタと、 前記第1のセレクタの出力と前記第2のデータ入力端子
    から入力される入力データとの加算または減算を行う第
    2の加減算器と、 前記第2の加減算器の出力に対して積和演算をする第2
    の積和演算器と、 前記第1の積和演算器の出力と値零とを入力し、そのい
    ずれかを出力する第2のセレクタと、 前記第2のセレクタの出力と前記第2の積和演算器の出
    力との加算または減算器を行う第3の加減算器とを、 設けたことを特徴とする符号化演算器。
  2. 【請求項2】 マトリックス演算処理を行う場合、前記
    第1のセレクタは第2のデータ入力端子からの入力デー
    タを出力し、前記第2のセレクタは前記第1の積和演算
    器の出力を出力し、 量子化演算処理を行う場合、前記第1のセレクタは第1
    の積和演算器の出力を出力し、前記第2のセレクタは通
    常は零を出力するようにしたことを特徴とする請求項1
    記載の符号化演算器。
JP12938094A 1994-06-13 1994-06-13 符号化演算器 Withdrawn JPH07334347A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12938094A JPH07334347A (ja) 1994-06-13 1994-06-13 符号化演算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12938094A JPH07334347A (ja) 1994-06-13 1994-06-13 符号化演算器

Publications (1)

Publication Number Publication Date
JPH07334347A true JPH07334347A (ja) 1995-12-22

Family

ID=15008155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12938094A Withdrawn JPH07334347A (ja) 1994-06-13 1994-06-13 符号化演算器

Country Status (1)

Country Link
JP (1) JPH07334347A (ja)

Similar Documents

Publication Publication Date Title
RU2413983C2 (ru) Обратимое преобразование для сжатия двумерных данных с потерями и без потерь
CA2653692C (en) Reduction of errors during computation of inverse discrete cosine transform
JP4006047B2 (ja) 画像縮小サンプリング方法
US5825680A (en) Method and apparatus for performing fast division
US8756482B2 (en) Efficient encoding/decoding of a sequence of data frames
JPH07262175A (ja) 関数変換演算装置
US11163852B2 (en) Unified forward and inverse transform architecture
EP0917362A1 (en) Macroblock variance estimator for MPEG-2 video encoder
JP2002500455A (ja) 高速idct/ダウンサンプリング複合演算方法および装置
JP3796432B2 (ja) フィルタ処理装置およびフィルタ処理方法
US6181831B1 (en) Spatial frequency-domain video signal processing
WO2000010320A2 (en) Performing transform during processing of an image
KR100377084B1 (ko) 이산코사인변환회로,이산코사인역변환회로,mpeg비디오인코더및mpeg비디오디코더
JP3306276B2 (ja) 画像処理装置
JPH07334347A (ja) 符号化演算器
CN116847082A (zh) 视频编码方法和装置
JP2003283840A (ja) フィルタ処理装置およびフィルタ処理方法
JP3136785B2 (ja) データ圧縮装置
JP3225614B2 (ja) データ圧縮装置
KR100994908B1 (ko) 디지털 데이터 필터링 회로, 비디오 디코더, 휴대형 장치및 텔레비전 수신기
JP2003283841A (ja) フィルタ処理装置およびフィルタ処理方法
Ringnyu et al. Implementation Of Forward 8x8 Integer DCT For H. 264/AVC Frext
JP2698835B2 (ja) バタフライ演算装置
Lee et al. Design of transform and quantization circuit for multi-standard integrated video decoder
KR970003805B1 (ko) 개선된 1차원 이산 및 역이산 코사인 변환장치

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010904