JP2783710B2 - 直交変換器 - Google Patents

直交変換器

Info

Publication number
JP2783710B2
JP2783710B2 JP3279781A JP27978191A JP2783710B2 JP 2783710 B2 JP2783710 B2 JP 2783710B2 JP 3279781 A JP3279781 A JP 3279781A JP 27978191 A JP27978191 A JP 27978191A JP 2783710 B2 JP2783710 B2 JP 2783710B2
Authority
JP
Japan
Prior art keywords
rounding
data
digit
orthogonal
value
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
JP3279781A
Other languages
English (en)
Other versions
JPH05120320A (ja
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.)
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 JP3279781A priority Critical patent/JP2783710B2/ja
Publication of JPH05120320A publication Critical patent/JPH05120320A/ja
Application granted granted Critical
Publication of JP2783710B2 publication Critical patent/JP2783710B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、入力データを直交変換
する直交変換器に関し、例えば、画像符号化器や画像復
号化器に適用し得るものである。
【0002】
【従来の技術】テレビ電話システムやテレビ会議システ
ムにおける映像信号の符号化・復号化装置(コーデッ
ク)は、CCITT勧告H.261で規定された符号
化、復号化方式に即して構成されると考えられる(勧告
の詳細については、『「テレビジョン学会誌」、Vol.45
No.7 1991 pp16-18』を参照)。
【0003】この勧告H.261で採用された符号化方
式では、直交変換の1種である離散コサイン変換(DC
T)を採用している。また、フレーム間符号化方式がメ
インの予測符号化方式として採用されている。従って、
符号化器には、離散コサイン変換を行なう直交変換器
と、局部復号のために逆離散コサイン変換(IDCT)
を行なう直交変換器が設けられ、また、復号化器には逆
離散コサイン変換を行なう直交変換器が設けられる。
【0004】ところで、フレーム間予測方式を用いた符
号化・復号化装置(コーデック)が正常に動作するため
には、送信側に局部復号化器と受信側に復号化器が、精
度を含めて全く同じ動作をする必要があり、そのため、
ループ内フィルタの演算方法を勧告H.261も規定し
ている。しかしながら、直交変換器が行なう離散コサイ
ン変換演算や逆離散コサイン変換演算の場合、チップ化
を前提とした種々の高速アルゴルズムが存在するため、
演算方法を一意に規定することが困難である。そのた
め、勧告H.261では、基準となる演算方法と、これ
以外の演算方法を採用した場合に許容できる誤差とを規
定している。また、これでも避けれない予想される送信
側と受信側とのミスマッチに対しては、一定の間隔でフ
レーム内符号化を行なうことにより、ミスマッチの累積
を防いでいる。
【0005】符号化・復号化装置で用いられる直交変換
器は、例えば特開平2−227770号公報にも開示さ
れているように、直交変換演算(離散コサイン変換演算
又は逆離散コサイン変換演算)を行なう直交変換演算部
と、その演算結果を丸める丸め処理部とから構成されて
いる。離散コサイン変換演算又は逆離散コサイン変換演
算は、周知のように、無理数(コサイン)を含むので、
入力画素値が整数であっても得られる周波数を表す値は
小数となる。このような演算における演算誤差を抑える
ために、有効桁数分だけ演算を行ない、その演算結果を
少ないビット数に丸めて出力するようにしており、その
ため、上述した丸め処理部が設けられている。
【0006】丸め方法としては、四捨五入に相当する処
理を行なう単純な丸め方法がある。すなわち、丸められ
るビットの中で最上位のビットに1を加算した後、それ
より上位のビットを切り出す丸め方法がある。しかし、
この方法は0レベルに対して対称な丸めではなく、すな
わち正負で対称な丸めではなく、演算誤差の平均値が0
とはならない。そこで、上述した特開平2−22777
0号公報は、厳密な意味での0レベルに対して対称な丸
めを行なう方法を提供し、直交変換器の演算誤差を小さ
く抑えることを計っている。なお、特開平2−2277
70号公報は、厳密な意味での0レベルに対して対称な
丸め方法を4種類開示している。
【0007】
【発明が解決しようとする課題】上述したように、勧告
H.261は、直交変換演算について、基準となる演算
方法と、これ以外の演算方法を採用した場合に許容でき
る演算誤差とを規定し、できるだけ符号化器及び復号化
器での直交変換器でのミスマッチを防止するようにして
いる。すなわち、丸めについては、有効ビット数を固定
し、丸め桁位置(ビット位置)を定めている。
【0008】しかし、丸め方法自体は定めていない。従
って、上述した規格に従うテレビ電話システムやテレビ
会議システムの端末を製造するメーカーによって異なる
丸め方法を採用する恐れがある。たとえ、直交変換演算
方法が送信側及び受信側の直交変換器において同一であ
っても、丸め方法が異なればそこで誤差が生じる。ま
た、直交変換演算方法が送信側及び受信側の直交変換器
で異なっていて丸め方法も異なれば、演算方法の違いに
よる誤差にさらに丸め方法の違いによる誤差が生じる。
すなわち、丸め方法自体の精度は上記公報に開示された
厳密な意味での0レベルに対称な丸め方法が最良である
が、システムに組み込まれた場合、その丸め方法が最良
とは言いにくい。
【0009】上述したように、フレーム間符号化方式の
場合、予測値をつくる送信側の直交変換後の値と受信側
の直交変換後の値との誤差量が累積していき画質が劣化
する。そこで、上述したように、直交変換についても勧
告H.261である程度の規定を行なっているが、画質
をより向上させようと場合、丸めに伴う誤差が大きな問
題となる。そこで、勧告で丸め方法を規定することも考
えられるが、直交演算方法をも定めていない現時点で
は、かかる対処方法は実際的ではない。
【0010】本発明は、以上の点を考慮してなされたも
のであり、直交演算結果に対する丸め方法として、各種
の丸め方法を柔軟に採用できる直交変換器を提供しよう
としたものである。
【0011】
【課題を解決するための手段】かかる課題を解決するた
め、本発明においては、所定個の入力データと所定個の
直交変換係数との積和演算により直交変換データを得る
直交変換演算手段と、この直交変換演算手段から出力さ
れた直交変換データを丸め桁以下の値に基づいて丸める
丸め処理手段とを備えた直交変換器において、直交変換
演算手段が、所定個の入力データと直交変換係数の各桁
毎の積和演算を行い、その桁毎の積和演算結果を桁位置
を合わせて累積加算して直交変換データを得ると共に、
その累積加算処理中の累積加算結果データに基づいて、
直交変換データの丸め桁より小さい桁のデータパターン
が丸め方法によって、丸め方が異なるデータパターンに
なっているか否かを表すフラグを得、得られた直交変換
データの丸め桁以上のデータ部分とフラグとを丸め処理
手段に出力するものであり、丸め処理手段が、丸め処理
後の値が異なるようになる境界値の直交変換データの取
り扱いだけが異なる複数種類の丸め方法のうち、外部か
ら指示された丸め方法に従って丸め処理を実行するもの
あって、基準種類の丸め方法を実行する基準丸め処理
実行部と、直交変換演算手段から出力された直交変換デ
ータが、基準種類の丸め方法と現在外部から指令されて
いる種類の丸め方法とで丸め後の値が異なるようになる
境界値である場合を、直交変換データの丸め桁の値と直
交変換演算手段からのフラグとに基づいて、検出する境
界値検出部と、この境界値検出部が検出したときに、基
準丸め処理実行部による丸め処理を、現在外部から指令
されている種類の丸め方法に従う処理に可変させる丸め
方法切替部とを有するものであることを特徴とする。
【0012】
【0013】ここで、直交変換演算手段が、入力データ
が入力される縦続接続された複数の第1のレジスタと、
複数の第1のレジスタのそれぞれの出力を入力として直
交変換演算を行う複数の演算ユニットとからなり、各演
算ユニットはそれぞれ、第1のレジスタの出力が入力さ
れる縦続接続された複数の第2のレジスタと、複数の第
2のレジスタの出力と、複数の直交変換係数の自己に割
り当てられた桁の値との積和演算を行う複数の所定桁積
和演算部と、複数の所定桁積和演算部から出力された桁
毎の積和演算結果を、下位の桁のものから桁合わせを行
いながら順に累積加算する累積加算部と、累積加算部に
おいて累積加算を行う際に、桁合わせによって、次の累
積加算では加算が実行されない桁の値を監視し、累積加
算の繰り返し処理の終了時において、それら監視桁の値
が全て0であるときにセットしたフラグを出力するフラ
グ発生部とを有するものであることが好ましい。
【0014】
【作用】本発明の直交変換器における丸め処理手段は、
複数種類の丸め方法を実行でき、処理時点で外部から指
示された丸め方法に従って丸め処理を実行する。
【0015】丸め処理手段の最初に考えられる具体的構
成としては、各丸め方法を実現する処理部を別個に設け
てそのいずれかを有効に動作させて出力させるものがあ
る。しかし、これでは構成が複雑になる。そこで、丸め
後の値が方法によって異なるようになる直交変換データ
(境界値)に対する処理だけを切り替えて行ない、他の
直交変換データに対しては丸め方法に関係なく同一の構
成で処理させることが好ましい。また、直交変換を行う
際にも、複数種類の丸め方法に対応した丸め処理をも考
慮して行うことが好ましい。請求項1はこのような考え
に基づいたものである。
【0016】すなわち、直交変換演算手段が、所定個の
入力データと直交変換係数の各桁毎の積和演算を行い、
その桁毎の積和演算結果を桁位置を合わせて累積加算し
て直交変換データを得ると共に、その累積加算処理中の
累積加算結果データに基づいて、直交変換データの丸め
桁より小さい桁のデータパターンが丸め方法によって、
丸め方が異なるデータパターンになっているか否かを表
すフラグを得、得られた直交変換データの丸め桁以上の
データ部分とフラグとを丸め処理手段に出力するものと
した。また、丸め処理手段を、基準種類の丸め方法を実
行する基準丸め処理実行部と、直交変換演算手段から出
力された直交変換データが、基準種類の丸め方法と現在
外部から指令されている種類の丸め方法とで丸め後の値
が異なるようになる境界値である場合を、直交変換デー
タの丸め桁の値と直交変換演算手段からのフラグとに基
づいて、検出する境界値検出部と、この境界値検出部が
検出したときに、基準丸め処理実行部による丸め処理
を、現在外部から指令されている種類の丸め方法に従う
処理に可変させる丸め方法切替部とで構成した。
【0017】この場合において、直交変換演算手段を、
入力データが入力される縦続接続された複数の第1のレ
ジスタと、複数の第1のレジスタのそれぞれの出力を入
力として直交変換演算を行う複数の演算ユニットとで構
成し、各演算ユニットをそれぞれ、第1のレジスタの出
力が入力される縦続接続された複数の第2のレジスタ
と、複数の第2のレジスタの出力と、複数の直交変換係
数の自己に割り当てられた桁の値との積和演算を行う複
数の所定桁積和演算部と、複数の所定桁積和演算部から
出力された桁毎の積和演算結果を、下位の桁のものから
桁合わせを行いながら順に累積加算する累積加算部と、
累積加算部において累積加算を行う際に、桁合わせによ
って、次の累積加算では加算が実行されない桁の値を監
視し、累積加算の繰り返し処理の終了時において、それ
ら監視桁の値が全て0であるときにセットしたフラグを
出力するフラグ発生部とを有するように構成することに
より、境界値であることの検出構成が簡単になる。
【0018】
【実施例】
(A)第1実施例 まず、本発明の第1実施例の構成及び動作を図面を参照
しながら詳述する。ここで、図1がこの実施例の全体構
成を示すブロック図、図2〜図4がこの実施例で採用可
能な丸め方法の種類を示す説明図である。
【0019】図1において、この実施例の直交変換器1
0も大きくみれば、直交変換演算回路11と、丸め処理
回路15とからなる。直交変換演算回路11は、従来と
同様なものであり、入力端子から入力されたN1 ビット
でなる複数の入力データに対して、所定の直交変換演算
(離散コサイン変換又は逆離散コサイン変換)を実行し
てN2 ビットでなる複数の直交変換データを順次丸め処
理回路15に与える。丸め処理回路15は、N2 ビット
でなる直交変換データの下位L−1ビットを丸めてN2
−L+1ビットでなる直交変換データを形成して出力端
子より出力する。
【0020】丸め処理回路15は、パターン検出回路1
2、加算値選択回路13及び加算器14から構成されて
いる。
【0021】パターン検出回路12には、直交変換演算
回路11が出力した直交変換データ及び丸め方法指令信
号SELが与えられる。丸め方法指令信号SELは、例
えばハードウェア的なディップスイッチやソフトウェア
的なディップスイッチが発生するものであり、ユーザの
操作に応じたものである。
【0022】この実施例の場合、丸め方法指令信号SE
Lは、図2〜図4に示す丸め方法のいずれかを指令する
ものである。以下では、図2に示す丸め方法を単純丸め
方法と呼び、図3に示す丸め方法を第1の対称丸め方法
と呼び、図4に示す丸め方法を第2の対称丸め方法と呼
ぶこととする。
【0023】これらの丸め方法はいずれも、丸め処理回
路15に入力されるN2 ビットの直交変換データが取り
得る範囲を、丸められた後で最下位ビットとなる第Lビ
ットの1単位分の大きさ(2L )毎に、しかも0を中心
として正負対称に分割し、与えられた直交変換データが
属する分割範囲の中心値に丸めるものである。しかし、
これらの丸め方法は、分割された範囲の境界値(2K+
1)2L-1 (K=…,−3,−2,−1,0,1,2,
3,…)をどのように丸めるかの点で異なっている。図
2〜図4において、黒丸は境界値を含む入力の範囲側を
示し、白丸は境界値を含まない入力の範囲側を示してい
る。ここで、下位L−1ビットを丸め処理する場合、境
界値の下位L−1ビットはその中の上位側から「100
…00」となる。
【0024】なお、図2〜図4において、入力軸及び出
力軸の括弧内の値は小数点以下を丸める場合の例を、参
考のために10進数を用いて示している。
【0025】上述したパターン検出回路12は、丸め方
法指令信号SELが単純丸め方法(図2)を指令してい
る場合には、特定パターンの検出処理を行なうことな
く、すなわち、直交変換演算回路11からの直交変換デ
ータの値に関係なく、常に、未検出データを加算値選択
回路13に与える。
【0026】また、パターン検出回路12は、丸め方法
指令信号SELが第1の対称丸め方法(図3)を指令し
ている場合には、直交変換演算回路11の出力直交変換
データの値が正のときに特定パターンとの検出処理を行
なう。この検出処理は、直交変換演算回路11の出力直
交変換データの下位L−1ビットのパターンが「100
…00」であるか否かを検出するものである。すなわ
ち、丸められた値が単純丸め方法と異なる値になる境界
値であることを検出するものである。そして、この場合
にのみ検出データを加算値選択回路13に与える。
【0027】さらに、パターン検出回路12は、丸め方
法指令信号SELが第2の対称丸め方法(図4)を指令
している場合には、直交変換演算回路11の出力直交変
換データの値が負のときに特定パターンとの検出処理を
行なう。この検出処理も、直交変換演算回路11の出力
直交変換データの下位L−1ビットのパターンが「10
0…00」であるか否かを検出するものである。すなわ
ち、この場合も、丸められた値が単純丸め方法と異なる
値になる境界値であることを検出するものである。そし
て、この場合にのみ検出データを加算値選択回路13に
与える。
【0028】加算値選択回路13には、パターン検出回
路12から検出又は未検出データが与えられるだけでな
く、直交変換演算回路11の出力直交変換データも与え
られる。加算値選択回路13は、パターン検出回路12
から未検出データが与えられたときには、出力直交変換
データの第L−1番目のビット(丸められるビットの中
の最上位ビット)の値「0」又は「1」を、加算器14
に第L番目のビットへの加算値(丸め用加算値)として
出力する。他方、加算値選択回路13は、パターン検出
回路12から検出データが与えられたときには、出力直
交変換データの値に関係なく、加算器14に第L番目の
ビットへの加算値(丸め用加算値)として「0」を出力
する。
【0029】加算器14は、直交変換演算回路11の出
力直交変換データの第L番目のビットに、加算値選択回
路13からの値を加算し、第L番目のビットを最下位ビ
ットとするN2 −L+1ビットでなる直交変換データを
形成して出力端子より次段に出力する。
【0030】なお、このような加算処理によって丸めが
行なわれていることについては後述する。
【0031】次に、図2に示す単純丸め方法が指令され
た場合の丸め処理回路15の動作を説明する。
【0032】この場合には、パターン検出回路12は常
に未検出データを発生して加算値選択回路13に与え
る。従って、加算値選択回路13は、常に加算器14
に、直交変換演算回路11の出力直交変換データの丸め
桁位置(第L−1番目)のビット情報を与える。加算器
14は、そのビット情報の値を直交変換回路11の出力
直交変換データにおける加算器出力の最下位ビット(第
L番目)に相当するビットに加算し、この最下位ビット
以上のデータを出力する。
【0033】このような加算処理によって丸め処理が行
われていることを説明する。10進数における単純丸め
は四捨五入で行なわれ、丸められる桁の中の最上位桁が
「0」〜「4」か「5」〜「9」かを判断し、前者の場
合には切り捨てを行ない、後者の場合には切り上げ(桁
上げ)を行なう。これに相当する2進数についての単純
丸めは『零捨壱入』であり、丸められる桁の中の最上位
桁が「0」か「1」かを判断し、「0」の場合には切り
捨てを行ない、「1」の場合には切り上げ(桁上げ)を
行なう。ここで、丸め桁(第L−1番目のビット)が
「0」の場合に行なう切り捨ては、丸められた値で最下
位となる桁(第L番目のビット)に「0」を加算するこ
とに等しい。従って、丸められた値で最下位となる桁
(第L番目のビット)に丸め桁(第L−1番目のビッ
ト)の値「0」を加算することに等しい。また、丸め桁
(第L−1番目のビット)が「1」の場合に行なう切り
上げは、丸められた値で最下位となる桁(第L番目のビ
ット)に「1」を加算することに等しい。従って、丸め
られた値で最下位となる桁(第L番目のビット)に丸め
桁(第L−1番目のビット)の値「1」を加算すること
に等しい。
【0034】以上のように、加算器14による加算処理
によって単純な丸めを実現できている。
【0035】次に、図3に示す第1の対称丸め方法が指
令された場合の丸め処理回路15の動作を説明する。
【0036】図3及び図2の比較から明らかなように、
第1の対称丸め方法と単純丸め方法とで丸め後の値が異
なるようになるのは、直交変換演算回路11からの出力
直交変換データの値が(2K+1)2L-1 (K=0,
1,2,3,…)である正の値のときである。上述した
ように、このときの下位L−1ビットは「100…0
0」となっている。従って、直交変換演算回路11から
の出力直交変換データの値がこのようなときだけ、単純
丸め方法と異なる加算処理を実行すれば良い。
【0037】そこで、パターン検出回路12は、直交変
換演算回路11からの出力直交変換データの値が(2K
+1)2L-1 (K=0,1,2,3,…)のときに検出
データを加算値選択回路13に与え、これ以外の値のと
きに未検出データを加算値選択回路13に与える。加算
値選択回路13は、未検出データが与えられた場合には
単純丸め方法と同様に処理し、他方、検出データが与え
られた場合には、丸め桁位置のビット情報「1」に関係
なく、加算器14に「0」を出力して桁上げを禁止す
る。
【0038】次に、図4に示す第2の対称丸め方法が指
令された場合の丸め処理回路15の動作を説明する。
【0039】図4及び図2の比較から明らかなように、
第2の対称丸め方法と単純丸め方法とで丸め後の値が異
なるようになるのは、直交変換演算回路11からの出力
直交変換データの値が−(2K+1)2L-1 (K=0,
1,2,3,…)である負の値のときである。上述した
ように、このときの下位L−1ビットは「100…0
0」となっている。従って、直交変換演算回路11から
の出力直交変換データの値がこのようなときだけ、単純
丸め方法と異なる加算処理を実行すれば良い。
【0040】そこで、パターン検出回路12は、直交変
換演算回路11からの出力直交変換データの値が−(2
K+1)2L-1 (K=0,1,2,3,…)のときに検
出データを加算値選択回路13に与え、これ以外の値の
ときに未検出データを加算値選択回路13に与える。加
算値選択回路13は、未検出データが与えられた場合に
は単純丸め方法と同様に処理し、他方、検出データが与
えられた場合には、丸め桁位置のビット情報「1」に関
係なく、加算器14に「0」を出力して桁上げを禁止す
る。
【0041】従って、上述した第1実施例の直交変換器
によれば、外部からの選択指令に応じた丸め方法で、直
交変換演算回路11から出力された直交変換データを丸
めることができ、丸めに対する自由度を高くすることが
できる。
【0042】ここで、画像信号の符号化・復号化装置に
適用した場合、両装置間で丸め方法を揃えることがで
き、両装置間でのミスマッチを丸めの点で小さくするこ
とができる。実際上、テレビ電話システムやテレビ会議
システムの場合、送信側装置及び受信側装置で別個のメ
ーカーによるものを適用していることが多いが、少なく
ともいずれか一方の装置において上記実施例の直交変換
器が適用されている場合には、丸め方法を揃えることが
できる。
【0043】また、第1実施例によれば、複数の丸め方
法に応じることができるにも拘らず、その構成は簡単で
ある。すなわち、複数の丸め方法に応じようとする最も
簡単な方法は、各丸め方法毎の丸め処理回路を設け、そ
れを切り替えて用いることである(これも本発明の一実
施例である)が、上記実施例の場合、加算器14や加算
値選択回路13等は各丸め方法に共通であって構成は簡
単である。
【0044】(B)第2実施例 次に、本発明の第2実施例を図面を参照しながら詳述す
る。この第2実施例も、大きくみれば、図1に示すよう
に、直交変換演算回路11と丸め処理回路15とからな
り、丸め処理回路15もパターン検出回路12と加算値
選択回路13と加算回路14とからなっており、この点
は第1実施例と同様である。しかし、直交変換演算回路
11が、パターン検出回路12で処理し易い形で直交変
換データを出力する点、パターン検出回路12がそのよ
うな形の直交変換データを処理する点で第1実施例とは
異なっている。この意味では符号を代えるべきである
が、以下でも第1実施例と同様な符号を用いることにす
る。
【0045】そこでまず、この第2実施例における直交
変換演算回路11の構成及び動作を説明する。なお、画
像符号化器・復号化器に用いられる直交変換器は、2次
元の直交変換を実行するものが多いが、ここでは理解を
容易にするため、1次元の直交変換を行なうとして説明
する。また、8個の入力データから8個の直交変換デー
タを得るものとして説明する。
【0046】図5は、この第2実施例による直交変換演
算回路11の全体構成を示すものである。図5におい
て、入力端子からシリアルに入力された入力データは、
縦続接続された8個のレジスタ群21〜28に入力さ
れ、ある時点をとらえると、1クロック周期ずつ異なる
各入力データが各レジスタ21〜28にラッチされる。
各レジスタ21、22、…、28の出力端子は、対応す
る演算ユニット31、32、…、38に接続されてお
り、各演算ユニット31、32、…、38はそれぞれ、
8個の入力データを用いて自己に割り当てられた直交変
換データを演算して求め、出力端子を介して上述した丸
め処理回路15に出力する。各演算ユニット31、3
2、…、38にはレジスタ21、22、…、28を介し
て入力データが与えられるので、処理に供する8個の入
力データが揃うタイミングが異なり、そのため、各演算
ユニット31、32、…、38は1クロック周期ずつ異
なるタイミングで直交変換データを出力する。
【0047】ここで、直交変換演算回路11への8個の
入力データをIN1〜IN8とし、その出力である直交
変換データをOT1〜OT8とすると、直交変換演算回
路11による直交変換は、8×8の直交変換行列を用い
て、次の(1)式で表すことができる。
【0048】
【数1】
【0049】従って、i番目(iは1〜8)の直交変換
データOTiは、次の(2) 式によって求めることができ
る。
【0050】 OTi= Σ Dij×INj (Σはj=1〜8について) …(2) 上述した各演算ユニット3iはそれぞれ、自己に係るこ
の(2) 式の演算を行なって直交変換データOTiを出力
する。
【0051】図6は、第1の演算ユニット31の詳細構
成を示すものである。なお、各演算ユニット3iは同様
な詳細構成を有する。
【0052】図6において、入力端子を介してレジスタ
31(図5)から与えられた入力データは、縦続接続さ
れた8個のレジスタ群41〜48に入力され、1クロッ
ク周期ずつ異なる各入力データが各レジスタ41〜48
にラッチされる。各レジスタ41、42、…、48の出
力端子は、対応する演算エレメント(後述するように桁
毎の積和演算構成になっている)51、52、…、58
に接続されており、各演算エレメント51、52、…、
58はそれぞれ、8個の入力データを用いて自己に割り
当てられた所定演算を行ない、演算結果データを累積加
算器40に与える。各演算エレメント51、52、…5
8にはレジスタ41、42、…、48を介して入力デー
タが与えられるので、処理に供する8個の入力データが
揃うタイミングが異なり、そのため、各演算エレメント
51、52、…、58は1クロック周期ずつ異なるタイ
ミングで演算結果データを出力する。累積加算器40
は、各演算エレメント51、52、…、58からの演算
結果データを桁合わせを行ないながら累積加算し、その
累積加算データを当該演算ユニット31に割り当てられ
た直交変換データOT1として、丸め処理回路15に出
力する。
【0053】上述した共通的に示した(2) 式を、演算ユ
ニット31が行なう演算に書き直すと、次の(3) 式で表
すことができる。
【0054】 OT1=D11×IN1+D12×IN2+…+D18×IN8 …(3) この式に係る直交変換係数行列の係数D11、D12、…、
D18をそれぞれ8ビットとすると、この(3) 式は次の
(4) 式で表すことができる。
【0055】
【数2】
【0056】この(4) 式は、直交変換行列の係数D11、
D12、…、D18の同一ビット位置の値D11m 、D12m 、
…、D18m (mはビット位置を示すパラメータであり、
0〜7)について整理すると、次の(5) 式で表すことが
できる。
【0057】
【数3】
【0058】各演算エレメント51、52、…、58は
それぞれ、この(5)式におけるビット位置毎の演算を行
なうものである。例えば、演算エレメント51は下記の
(6)式に示す演算を行ない、演算結果データOT10 を
出力する。このようにして得られたビット位置毎の演算
結果データOT10、OT11 、…、OT17 を、累積
加算器40が桁合わせを行ないながら加算して、当該演
算ユニット31についての直交変換データOT1を得
る。
【0059】 OT10 =IN1×D110 +IN2×D120 +…+IN8×D180 …(6) 図7は、第1の演算エレメント51の詳細構成を示すも
のである。なお、各演算エレメント51、52、…、5
8は同様な詳細構成を有する。
【0060】図7において、レジスタ41(図6)に順
次ラッチされた入力データIN1、IN2、…、IN8
は2入力セレクタ61の一方の入力端子に与えられる。
このセレクタ61の他方の入力端子には各ビット共に0
の固定データ(以下、0データと呼ぶ)が与えられてい
る。
【0061】このセレクタ61には、ROM構成の直交
変換係数メモリ62から選択制御データが与えられる。
第1の演算エレメント51の直交変換係数メモリ62に
は、各直交変換行列係数D11、D12、…、D18の最下位
ビットの値D110 、D120 、…、D180 (「1」か
「0」)が格納されている。このメモリ62からの読出
しはセレクタ61に対する入力データの入力に同期して
行なわれる。例えば、入力データIN1がセレクタ61
に与えられているときには直交変換係数D110 が出力さ
れ、入力データIN2がセレクタ61に与えられている
ときには直交変換係数D120が出力される。
【0062】セレクタ61は、直交変換係数メモリ62
から与えられたデータが「1」であれば入力データを選
択し、「0」であれば0データを選択する。従って、セ
レクタ61は(6) 式の右辺の各項の演算をしていること
になる。
【0063】このセレクタ61の出力データは加算器6
3に与えられる。加算器63は、それまでの累積加算値
データに今回セレクタ61から与えられたデータを加算
して出力レジスタ64に与えてラッチさせる。出力レジ
スタ64にラッチされたデータは、それまでの累積加算
値データとしてセレクタ65を介して上述した加算器6
3に与えられる。なお、セレクタ65の一方の入力端子
には0データが入力されており、新たな8個の入力デー
タが当該演算エレメント51に入力される前に与えられ
るクリア信号に基づいてこの0データを選択して加算器
63に与え、累積加算の初期値として0データを設定す
るようになされている。
【0064】このような処理を繰返すことにより、レジ
スタ64には、セレクタ61が演算した(6) 式の右辺各
項の値を順次累積加算した値がラッチされ、(6) 式の右
辺についての演算が終了したときの値のデータOT10
がこのレジスタ64から累積加算器40(図6)に与え
られる。
【0065】他の演算エレメント52、53、…、58
も同様な動作によって演算結果データOT11 、OT1
2 、…、OT17 を得て累積加算器40に与える。累積
加算器40は、上述したように、各演算エレメント5
1、52、…、58からの演算結果データOT10 、O
T11 、…、OT17 を桁合わせを行ないながら累積加
算し、その累積加算データを当該演算ユニット31に割
り当てられた直交変換データOT1として、丸め処理回
路15に出力する。
【0066】図8は、上述した演算を実行する演算ユニ
ット31の各部タイミングチャートを示すものである。
この図8から明らかなように、各演算エレメント51、
52、…、58は1クロック周期ずつ異なるタイミング
で演算結果データOT10 、OT11 、…、OT17 を
出力する。
【0067】図9は、上述した累積加算器40の詳細構
成を示すものである。累積加算器40は、加算器71、
レジスタ72、セレクタ73、シフトレジスタ74及び
フラグジェネレータ75から構成されている。
【0068】当該累積加算器40には、各演算エレメン
ト51、52、…、58からの演算結果データOT10
、OT11 、…、OT17 が、図8に示すように、1
クロック周期ずつずれて入力される。
【0069】ここで、演算結果データOT10 、OT1
1 、…、OT17 は、同一構成の演算エレメント51、
52、…、58から出力されるものであるので、同一ビ
ット数でなる。しかし、各演算エレメント51、52、
…、58は、直交変換係数についての異なるビット位置
の演算を担当しているので、各演算結果データOT10
、OT11 、…、OT17 の最下位ビットは、本来の
データにおける異なるビット位置に対応している。すな
わち、演算結果データOT17 の最下位ビットは演算結
果データOT16 の第2ビットに対応し、演算結果デー
タOT16 の最下位ビットは演算結果データOT15 の
第2ビットに対応し、以下、同様に1ビットずつ異な
る。
【0070】演算エレメント51からの演算結果データ
OT10 が入力されたタイミングにおいては、セレクタ
73はクリア信号に基づいてそれまでの累積加算データ
として0データを選択する。かくして、加算器71は入
力された演算結果データOT10 をそれまでの累積加算
データとして求め、これをレジスタ72に格納する。こ
の累積加算データOT10 はセレクタ73に与えられ
る。このときの累積加算データOT10 の最下位ビット
の値はシフトレジスタ74に入力される。
【0071】次に、演算エレメント52からの演算結果
データOT11 が入力されたときには、セレクタ73は
そのときの累積加算データOT10 を下位に1ビットだ
けシフトさせて加算器71に入力する。すなわち、それ
までの累積加算データOT10 と今回入力された演算結
果データOT11 の桁合わせを行なう。かくして、加算
器71からは、累積加算データとしてOT10 +OT1
1 (正確には入力されたOT10 とOT11 とを加算し
た値の最下位ビットのデータを除いた部分)が出力さ
れ、これがレジスタ72に格納される。なお、この時点
におけるOT10+OT11 の最下位ビットはシフトレ
ジスタ74が保持している。レジスタ72にラッチされ
た累積加算データOT10 +OT11 はセレクタ73に
与えられる。また、レジスタ72にラッチされた累積加
算データOT10 +OT11 の最下位ビットの値はシフ
トレジスタ74に入力される。
【0072】以下、同様な累積加算処理が繰返し実行さ
れ、累積加算データOT18 に対する処理が終わったと
きには、レジスタ72には、OT10 +OT11 +…+
OT17 、従って、当該演算ユニット31に割り当てら
れている直交変換データOT1の上位側ビットが格納さ
れ、シフトレジスタ74には直交変換データOT1の下
位側ビットが格納される。
【0073】ここで、シフトレジスタ74の段数を、直
交変換データOT10+OT11 +…+OT17 (=O
T1)の丸め桁(丸め位置ビット)のビット値までを保
持するようにしておく。このようにすると、丸め桁位置
より下位の桁のビットデータは、上述した累積加算処理
を繰返しているときに、最も下位のビットデータから順
にシフトレジスタ74から出力されてフラグジェネレー
タ75に入力されることになる。フラグジェネレータ7
5は、最初の演算結果データOT10 が入力される前に
0クリアされており、与えられたビットデータが「1」
のときにフラグFLGを「1」とし、与えられたビット
データが「0」のときにはその直前のフラグ状態を維持
する。従って、累積加算によって得られた直交変換デー
タOT10 +OT11 +…+OT17の丸め桁より小さ
い桁が全て「0」のときのみ出力時点におけるフラグF
LGが0となり、丸め桁より小さい桁のいずれか1桁以
上で「1」があればフラグFLGも「1」となる。すな
わち、フラグFLGは、丸め桁より小さい桁がオール0
か否かを示している。
【0074】かくして、累積加算器40は、レジスタ7
2及びシフトレジスタ74に格納されている丸め桁以上
の直交変換データOT1Uと、丸め桁より小さい桁がオ
ール0か否かを示すフラグFLGとをまとめた直交変換
データOT1を丸め処理回路15に出力する。
【0075】この第2実施例の場合、直交変換演算回路
11を以上のように構成したので、丸め処理回路15に
おける構成及び処理も多少第1実施例とは異なる。
【0076】第1実施例と異なる部分は、パターン検出
回路12だけである。すなわち、パターン検出回路12
は、第1実施例の場合、第1の対称丸め方法又は第2の
対称丸め方法が指令されている場合に、符号を除けば、
丸め桁以下がパターン「100…00」になっているか
を検出する構成であったが、この実施例の場合、丸め桁
が「1」でかつフラグが「0」であることを検出する構
成であれば良い。なお、構成は異なるが、検出している
内容は等価であり、検出データ又は未検出データを加算
値選択回路13に出力する。
【0077】加算値選択回路13及び加算器14の構成
及び処理は、第1実施例と同様であるのでその説明は省
略する。
【0078】従って、この第2実施例によっても第1実
施例と同様な効果を得ることができる。すなわち、簡単
な構成によって複数の丸め方法に応じることができる。
【0079】この第2実施例の場合、フラグジェネレー
タ75が必要となってはいるが、パターン検出回路12
の構成が簡単になっている分だけ、第1実施例よりさら
に構成が簡単なものとなる。
【0080】(C)他の実施例 上記各実施例は、3種類の丸め方法に対応できるものを
示したが、本発明は2種類以上の丸め方法に対応できる
ものであれば良い。
【0081】また、本発明が対象とする直交変換は、離
散コサイン変換及び逆離散コサイン変換に限定されるも
のではなく、変換式に無理数等を含んで丸めが必要とな
る直交変換に広く適用することができる。
【0082】上記各実施例においては、2の補数形式の
データを直交変換するものを示したが、データ形式はこ
れに限定されるものではない。
【0083】
【発明の効果】以上のように、本発明によれば、丸め処
理手段が複数種類の丸め方法による処理を可能とすると
共に、外部から指令された丸め方法で処理するようにし
たので、複数の丸め方法に応じることができる汎用性が
高い直交変換器を実現することができる。
【図面の簡単な説明】
【図1】第1実施例の構成を示すブロック図である。
【図2】単純丸め方法を示す説明図である。
【図3】第1の対象丸め方法を示す説明図である。
【図4】第2の対象丸め方法を示す説明図である。
【図5】第2実施例の直交変換演算回路の全体構成を示
すブロック図である。
【図6】その演算ユニット31の詳細構成を示すブロッ
ク図である。
【図7】その演算エレメント51の詳細構成を示すブロ
ック図である。
【図8】演算ユニット31の各部タイミングチャートで
ある。
【図9】演算ユニット31内の累積加算器の詳細構成を
示すブロック図である。
【符号の説明】
11…直交変換演算回路、12…パターン検出回路(特
異データ検出部)、13…加算値選択回路(丸め方法切
替部)、14…加算器(基準丸め処理実行部)、15…
丸め処理回路。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 17/10 JOIS

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 所定個の入力データと所定個の直交変換
    係数との積和演算により直交変換データを得る直交変換
    演算手段と、この直交変換演算手段から出力された直交
    変換データを丸め桁以下の値に基づいて丸める丸め処理
    手段とを備えた直交変換器において、上記直交変換演算手段が、所定個の入力データと直交変
    換係数の各桁毎の積和演算を行い、その桁毎の積和演算
    結果を桁位置を合わせて累積加算して直交変換データを
    得ると共に、その累積加算処理中の累積加算結果データ
    に基づいて、直交変換データの丸め桁より小さい桁のデ
    ータパターンが丸め方法によって、丸め方が異なるデー
    タパターンになっているか否かを表すフラグを得、得ら
    れた直交変換データの丸め桁以上のデータ部分とフラグ
    とを上記丸め処理手段に出力するものであり、 上記丸め処理手段が、丸め処理後の値が異なるようにな
    る境界値の直交変換データの取り扱いだけが異なる複数
    種類の丸め方法のうち、外部から指示された丸め方法に
    従って丸め処理を実行するものであって、 基準種類の丸め方法を実行する基準丸め処理実行部と、 上記直交変換演算手段から出力された直交変換データ
    が、基準種類の丸め方法と現在外部から指令されている
    種類の丸め方法とで丸め後の値が異なるようになる境界
    値である場合を、直交変換データの丸め桁の値と上記直
    交変換演算手段からのフラグとに基づいて、検出する境
    界値検出部と、 この境界値検出部が検出したときに、上記基準丸め処理
    実行部による丸め処理を、現在外部から指令されている
    種類の丸め方法に従う処理に可変させる丸め方法切替部
    とを有するものであることを特徴とした直交変換器。
  2. 【請求項2】 上記直交変換演算手段が、入力データが入力される縦続接続された複数の第1のレ
    ジスタと、 上記複数の第1のレジスタのそれぞれの出力を入力とし
    て直交変換演算を行う複数の演算ユニットとからなり、 上記各演算ユニットはそれぞれ、 上記第1のレジスタの出力が入力される縦続接続された
    複数の第2のレジスタと、 上記複数の第2のレジスタの出力と、複数の直交変換係
    数の自己に割り当てられた桁の値との積和演算を行う複
    数の所定桁積和演算部と、 上記複数の所定桁積和演算部から出力された桁毎の積和
    演算結果を、下位の桁のものから桁合わせを行いながら
    順に累積加算する累積加算部と、 上記累積加算部において累積加算を行う際に、桁合わせ
    によって、次の累積加算では加算が実行されない桁の値
    を監視し、累積加算の繰り返し処理の終了時において、
    それら監視桁の値が全て0であるときにセットしたフラ
    グを出力するフラグ発生部とを有する ことを特徴とする
    請求項1に記載の直交変換器。
JP3279781A 1991-10-25 1991-10-25 直交変換器 Expired - Fee Related JP2783710B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3279781A JP2783710B2 (ja) 1991-10-25 1991-10-25 直交変換器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3279781A JP2783710B2 (ja) 1991-10-25 1991-10-25 直交変換器

Publications (2)

Publication Number Publication Date
JPH05120320A JPH05120320A (ja) 1993-05-18
JP2783710B2 true JP2783710B2 (ja) 1998-08-06

Family

ID=17615834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3279781A Expired - Fee Related JP2783710B2 (ja) 1991-10-25 1991-10-25 直交変換器

Country Status (1)

Country Link
JP (1) JP2783710B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2570794B2 (ja) * 1988-02-26 1997-01-16 ソニー株式会社 テレビジョン信号の高能率符号化装置
US5212661A (en) * 1989-10-16 1993-05-18 Matsushita Electric Industrial Co., Ltd. Apparatus for performing floating point arithmetic operation and rounding the result thereof

Also Published As

Publication number Publication date
JPH05120320A (ja) 1993-05-18

Similar Documents

Publication Publication Date Title
US5054103A (en) Picture encoding system
US7133454B2 (en) Video coding method and apparatus for calculating motion vectors of the vertices of a patch of an image and transmitting information of horizontal and vertical components of the motion vectors
JP2003507804A (ja) 動き補償されたブロックベースの圧縮デジタルビデオの可変複雑性デコーディングの方法と装置
US6072909A (en) Image coding devise and image decoding devise using with image disassembly
US5291429A (en) Circuit for matrix calculation of discrete cosine transformation
US5555321A (en) Image data binary coding method and apparatus
US5668748A (en) Apparatus for two-dimensional discrete cosine transform
JP2783710B2 (ja) 直交変換器
KR100377084B1 (ko) 이산코사인변환회로,이산코사인역변환회로,mpeg비디오인코더및mpeg비디오디코더
US6859562B2 (en) Coded data length detection apparatus, method of the same, and image coding apparatus
EP1368748A2 (en) Method and system to encode a set of input values into a set of coefficients using a given algorithm
US5671169A (en) Apparatus for two-dimensional inverse discrete cosine transform
KR950009679B1 (ko) 블럭의 형태로 전송되는 이산값 보정방법
US6732131B1 (en) Discrete cosine transformation apparatus, inverse discrete cosine transformation apparatus, and orthogonal transformation apparatus
KR0178746B1 (ko) 매크로블럭의 반픽셀처리장치
US6091855A (en) method and apparatus for encoding signal method and apparatus for decoding signal and recording medium
JP2532588B2 (ja) 直交逆変換装置
KR100236972B1 (ko) 저전송율 압축/복원을 위한 이차원 이산여현 변환기
KR970003805B1 (ko) 개선된 1차원 이산 및 역이산 코사인 변환장치
KR970002479B1 (ko) 이차원 역이산 코사인 변환 장치
JP3366033B2 (ja) アドレス変換回路及びこれを備えた直交変換回路
JPH0936749A (ja) 符号化復号化装置およびこれに用いられる符号化方法
KR100465156B1 (ko) 분산산술처리방식의 dct/idct 연산기에 있어서연산오차 및 연산시간 감소방법
JP2698835B2 (ja) バタフライ演算装置
JP2532607B2 (ja) 可変レンジを用いた直交変換演算装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080522

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090522

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100522

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees