(57)【特許請求の範囲】
【請求項１】
ＤＣＴ（離散コサイン変換）係数が順次量子化される位置を指示する値とＤＣＴ係数が順次符号化される位置を指示する値の対応関係を示し、ジグザグ順序走査及びオルタネート走査順序のうちいずれか一つが選択されるＤＣＴ係数走査順序を規定するメモリを備えるルックアップテーブルと、
前記ルックアップテーブルの前記メモリに対するアドレスとして適用される第１アドレス信号から前記メモリからのデータ出力信号である第２アドレス信号を発生するためのアドレス発生手段と、
第１制御信号に応じて前記第２アドレス信号とＤＣＴ係数を量子化または逆量子化するとき使用される順序に従い量子化される過程で発生される第３アドレス信号のうちいずれか一つを選択するための第１選択手段と、
第２制御信号に応じて符号化のための量子化されたＤＣＴ係数を表す第１データ信号と逆量子化のための復号化されたＤＣＴ係数を表す第２データ信号のうちいずれか一つを選択するための第２選択手段と、
前記第２選択手段により選択された第１または第２データ信号を書込み制御信号が要求されたとき前記第１選択手段により選ばれたアドレス信号により選択された蓄積位置に蓄積し、読み出し制御信号が要求されたとき前記第１選択手段により選ばれたアドレス信号により選択された蓄積位置から第１または第２データ信号を読み出すためのバッファメモリと、
を備えることを特徴とするランレングス・レベル符号化／復号化システム。
【請求項２】
前記第１アドレス信号及び第１データ信号はランレングス及びレベルの符号化／復号化動作によって発生されることを特徴とする請求項１記載のランレングス・レベル符号化／復号化システム。
【請求項３】
前記第３アドレス信号及び第２データ信号は量子化／逆量子化動作により発生されることを特徴とする請求項２記載のランレングス・レベル符号化／復号化システム。
【請求項４】
前記ルックアップテーブルはゲートアレイ、プログラム可能アレイ論理または組み合わせ論理のうちいずれか一つを備え、一列ずつ順次に読み出すことまたは書き込むことを可能とするよう配列されることを特徴とする請求項１記載のランレングス・レベル符号化／復号化システム。
【請求項５】
ＤＣＴ（離散コサイン変換）係数が順次量子化される位置を指示する値とＤＣＴ係数が順次符号化される位置を指示する値の対応関係を示し、ジグザグ順序走査及びオルタネート走査順序のうちいずれか一つが選択されるＤＣＴ係数走査順序を規定するメモリを備えるルックアップテーブルと、符号化／復号化部で使用される前記ルックアップテーブルの前記メモリに対するアドレスとして適用される符号化／復号化部の第１アドレス信号から前記メモリからのデータ出力信号である第２アドレス信号に変換する段階と、符号化／復号化部のＤＣＴ係数をバッファメモリに書き込む段階と、ＤＣＴ係数をバッファメモリから出力する段階とを備えてなり、
前記書込段階においては符号化の動作中に量子化部からのＤＣＴ係数が量子化部の前記ＤＣＴ係数を量子化または逆量子化するとき使用される順序に従い量子化される過程で発生される第３アドレス信号により識別されるバッファメモリの蓄積位置に書き込まれ、復号化の動作中に書込み制御信号が要求されたとき符号化／復号化部からのＤＣＴ係数が前記第２アドレス信号により識別されるバッファメモリの蓄積位置に書き込まれ、
前記出力段階においては符号化の動作中に前記ＤＣＴ係数が前記第２アドレス信号により識別される蓄積位置から読み出されて符号化／復号化部へ伝送され、復号化の動作中に読み出し制御信号が要求されたとき前記ＤＣＴ係数が前記第３アドレス信号により識別される蓄積位置から読み出されて量子化部へ伝送されることを特徴とするランレングス・レベル符号化／復号化方法。
【請求項６】
前記第１アドレス信号は順次に増加される第１アドレスを指示し、前記第２アドレス信号は前記走査順序に従って変わる第２アドレス信号を指示することを特徴とする請求項５記載のランレングス・レベル符号化／復号化方法。
【請求項７】
前記第３アドレス信号は順次に増加される第３アドレスを指示することを特徴とする請求項６記載のランレングス・レベル符号化／復号化方法。
【請求項８】
前記第２アドレス信号はルックアップメモリを用いて第１アドレス信号から発生されることを特徴とする請求項５記載のランレングス・レベル符号化／復号化方法。
【請求項９】
前記符号化／復号化部は符号化の動作中に前記ＤＣＴ係数が読み出される順序で前記ＤＣＴ係数に対してランレングス符号化を実行することを特徴とする請求項５記載のランレングス・レベル符号化／復号化方法。
【請求項１０】
前記符号化／復号化部は復号化の動作中にバッファメモリに書き込まれるＤＣＴ係数を発生するためにビットストリームに対してランレングス復号化を実行することを特徴とする請求項９記載のランレングス・レベル符号化／復号化方法。
【請求項１１】
前記量子化部は符号化の動作中に前記ＤＣＴ係数を量子化して復号化の動作中に前記ＤＣＴ係数を逆量子化することを特徴とする請求項１０記載のランレングス・レベル符号化／復号化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は多重処理順序を使用するシステムにおいて、２次元データの両方向走査に係り、特にマルチ標準ビデオコーデックにおける離散コサイン変換（ＤＣＴ）係数の走査のための装置に関する。
【０００２】
【従来の技術】
ＪＰＥＧ、ＭＰＥＧ−１、ＭＰＥＧ−２、Ｈ．２６１及びＨ．２６３のようなビデオ標準はジグザグ順に離散コサイン変換（ＤＣＴ）係数を処理する。たとえば、符号化（ｃｏｄｉｎｇ）はラスター走査順序でＤＣＴ係数の２次元配列を発生し量子化できるが、ランレングス及びレベル符号化（ＲＬＣ：Run-length and Level Coding）に対してはジグザグ順序でＤＣＴ係数を取る。ジグザグ順序は効率的に圧縮され得る長いランを提供する傾向があるためランレングス符号化はジグザグ順序を用いる。
【０００３】
従って、符号化及び復号化の動作中にＤＣＴ係数を再配列するための走査処理がＤＣＴ係数の量子化または逆量子化とランレングスの符号化または復号化との間によく遂行される。
【０００４】
また、ジグザグ順序の代わりに、ＭＰＥＧ−２標準は選択的にオルタネート走査順序を採用する。オルタネート走査順序は特にインタレースビデオ信号を処理するのに強い。なぜならオルタネート走査順序はビデオ信号の飛び越し成分を効率よく選択できるためである。
【０００５】
上記のように、前記ビデオ標準によるデータ圧縮と伸張のためのビデオコーデック（ｃｏｄｅｃ：COding and DECoding）において、順方向としての符号化と逆方向としての復号化（ｄｅｃｏｄｉｎｇ）の両方向に係数配列を遂行するためのロジックが必要であり、その開発が急がれている。
【０００６】
【発明が解決しようとする課題】
本発明はかかる従来の問題点を解決するために創出されたもので、マルチ標準ビデオ符号化における両方向ＤＣＴ係数走査のための装置及び方法を提供し、及び凡てのビデオ圧縮と伸張に採択されるＤＣＴ係数の走査変換のためのロジックを効率よく遂行することを目的とする。
【０００７】
【課題を解決するための手段】
前述の目的を達成するための本発明の一面において、両方向ＤＣＴ係数走査装置は、バッファメモリと、順次に増加される第１アドレスを受信しルックアップテーブルからＤＣＴ係数に対して望ましい走査順序による第２アドレス信号を発生するアドレス発生器と、典型的にはラスター走査順序による第２アドレス信号又は第３アドレス信号を前記バッファメモリのためのアドレス信号として選択する第１選択手段とを含む。符号化の動作中、量子化部によって量子化されたＤＣＴ係数は前記第３アドレス信号によって識別されるバッファメモリの相当位置に書き込まれ、前記第２アドレス信号によって識別されるバッファメモリの相当位置からランレングス及びレベル符号化部へ読み出す。復号化の動作中、ランレングス及びレベル復号化部から復号化されたＤＣＴ係数が前記第２アドレス信号により識別されるバッファメモリの相当位置に書き込まれ、前記第３アドレス信号により識別される前記バッファメモリの位置から逆量子化部へ読み出される。第２選択手段は符号化の動作中に量子化部から書き込まれる量子化データまたは復号化の動作中に復号化部から書き込まれる復号化データを選択するために提供できる。
【０００８】
本発明の他の一面により両方向ＤＣＴ係数走査方法は、符号化／復号化部によりアドレス信号を順次に増加させる段階と、前記符号化／復号化部によりＤＣＴ係数走査順序に従って前記アドレス信号を変換する段階とを含む。
【０００９】
前記方法は両方向走査を実現可能とする。符号化方向に関しては、前記方法はラスター走査順序で量子化されたＤＣＴ係数をバッファメモリに書き込む方法と、前記変換されたアドレス信号により規定された走査順序で前記バッファメモリから前記ＤＣＴ係数を読み出して前記復号化部に書き込む段階を含む。復号化に関しては、前記方法は前記変換されたアドレス信号により規定された位置に復号化されたＤＣＴ係数を前記復号化部からバッファメモリへ書き込み、逆量子化のためにＤＣＴ係数をバッファメモリから読み出す段階とを含む。
【００１０】
コーデックの量子化及び逆量子化部は、順次的なアドレスまたは交互的なアドレスを識別するために、ＤＣＴ係数の２次元配列の行及び列を示すような任意の順序によりアドレス信号を発生することができる。
【００１１】
【発明の実施の形態】
以下、添付の図面に基づき本発明の望ましい実施例を更に詳しく説明する。また、図面全体を通して同じ部分には同一の符号を付けてある。
【００１２】
図１は本発明の一実施例によるマルチ−標準ビデオコーデックに対する両方向ＤＣＴ係数走査装置１００を示す。
【００１３】
走査装置１００はアドレス発生器１０、第１選択部２０、第２選択部３０、バッファメモリ４０を含む。
【００１４】
アドレス発生器１０は第１アドレス信号ＲＬＣ−ａｄｒを受信し、アドレス信号ＲＬＣ−ａｄｒとＤＣＴ係数走査順序を示すルックアップテーブルとから第２アドレス信号ＺＺ−ａｄｒを発生する。
【００１５】
第１選択部２０は第１制御信号ｍｕｘ−ｓｅｌ０に応答してアドレス信号ＺＺ−ａｄｒまたは第３アドレス信号ＱＮＴ−ａｄｒを選択する。第３アドレス信号ＱＮＴ−ａｄｒはＤＣＴ係数を量子化または逆量子化するとき使用される順序（典型的にはラスター走査順序）に従う。
【００１６】
読み出し制御信号ｂｕｆ−ｏｅが要求される時、バッファメモリ４０は第１選択部２０によって選択された前記アドレス信号により識別される位置にありＤＣＴ係数を象徴するデータ信号ＲＬＣ−ｄｉまたはデータ信号ＱＮＴ−ｄｉを発生する。
【００１７】
第２選択部３０は第２制御信号ｍｕｘ−ｓｅｌ１に応答して符号化のための量子化されたＤＣＴ係数を表すデータ信号ＱＮＴ−ｄｏまたは逆量子化のための復号化されたＤＣＴ係数を表すデータ信号ＲＬＣ−ｄｏを選択する。  書込制御信号ｂｕｆ−ｗｅが要求されるとき、第２選択部３０は第１選択部２０からアドレス信号によって指示されたバッファメモリ４０の位置に書き込まれるべきデータ信号を選択する。
【００１８】
符号化モードにおいては、量子化部からのデータ信号ＱＮＴ−ｄｏがアドレス信号ＱＮＴ−ａｄｒにより指示される位置に書き込まれるために選択され、さらに符号化部に入力されるデータ信号ＲＬＣ−ｄｉがアドレス信号ＺＺ−ａｄｒにより指示されるアドレスから読み出される。
【００１９】
復号化モードにおいては、復号化部からのデータ信号ＲＬＣ−ｄｏがアドレス信号ＺＺ−ａｄｒにより指示される位置に書き込まれるために選択され、さらに量子化部に入力されるデータ信号ＱＮＴ−ｄｉがアドレス信号ＱＮＴ−ａｄｒにより指示されるアドレスから読み出される。
【００２０】
アドレス発生器１０はアドレス信号ＲＬＣ−ａｄｒから信号ＺＺ−ａｄｒを発生するときに使用される一つ以上のルックアップテーブルを含む。各ルックアップテーブルは、ＤＣＴ係数が順次量子化される位置を指示する値とＤＣＴ係数が順次符号化される位置を指示する値の対応関係を示す。
【００２１】
ＭＰＥＧ−２のようないくつかの標準に対して異なる走査順序が可能であるので制御信号ＡＬＴ−ｓｃａｎは特定の走査のために適切なルックアップテーブルを選択する。もし、走査制御信号ＡＬＴ−ｓｃａｎが“０”状態にあれば前記ルックアップテーブルは図２に示されたようにジグザグ走査順序に相当する変換を提供し、一方制御信号ＡＬＴ−ｓｃａｎが“１”状態にあれば前記ルックアップテーブルは図３に示されたようにオルタネート走査順序に相当する変換を提供する。
【００２２】
図４はアドレス発生器１０が６ビットアドレス信号ＲＬＣ−ａｄｒと信号ＡＬＴ−ｓｃａｎから発生される典型的な信号ＺＺ−ａｄｒの６ビットの値を示す。
【００２３】
図４に示したように入力信号ＲＬＣ−ａｄｒ及びＡＬＴ−ｓｃａｎに関連した出力信号ＺＺ−ａｄｒを与えるルックアップテーブルは例えば、読み取り専用メモリ（ＲＯＭ : Read Only Memory）、ランダムアクセスメモリ（ＲＡＭ: Random Access Memory）、フィールドプログラマブルゲートアレイ(ＦＰＧＡ : Field Programmable Gate Array)、ゲートアレイまたは入出力信号間の要求される応答関係を有する組み合わせ論理（Combination Logic）を用いて遂行できる。メモリが使用されるところでは信号ＲＬＣ−ａｄｒおよびＡＬＴ−ｓｃａｎは対応する信号ＺＺ−ａｄｒの相当値を含む蓄積位置のアドレスを指示する。また、ルックアップテーブルは従来の技術により周知された技術を用いたロジックによっても遂行できる。
【００２４】
前記実施例において、第１選択部２０は６ビット制御信号ｍｕｘ−ｓｅｌ０に応答する６ビットマルチプレクサを含み、アドレス発生器１０からの６ビット走査アドレス信号ＺＺ−ａｄｒもしくは量子化過程で発生される６ビットアドレス信号ＱＮＴ−ａｄｒを選択する。第２選択部３０は制御信号ｍｕｘ−ｓｅｌ１に応答するｎビットマルチプレクサを含み、量子化される過程で発生されるｎビットデータ信号ＱＮＴ−ｄｏまたはＲＬＣ処理過程で発生されるｎビットデータ信号ＲＬＣ−ｄｏを選択する。
【００２５】
参照数字ｎは、ビデオコーデックで実行される圧縮標準と同様に、量子化されたＤＣＴ係数を表すために使用される最大ビット数を示す。
【００２６】
ここで、量子化部または逆量子化部はアドレス信号ＱＮＴ−ａｄｒにより識別されたＤＣＴ係数の量子化または逆量子化を実行する。そして、ランレングス及びレベル符号化部或いは復号化部はアドレス信号ＲＬＣ−ａｄｒに従い符号化または復号化を実行する。
【００２７】
前記実施例において、バッファメモリ４０は８×８配列に配置されるｎビットＤＣＴ係数を蓄積する６４×ｎビットバッファメモリを備える。８×８配列の各ＤＣＴ係数はＤＣＴ係数のラスター走査順序に対応するバッファメモリ４０内の位置に蓄積される。書き込まれたｎビットデータの読み出しは、読み出し制御信号ｂｕｆ−ｏｅに従って量子化処理のためのデータ入力信号ＱＮＴ−ｄｉまたはＲＬＣ処理データ入力信号ＲＬＣ−ｄｉの提供を目的とする。
【００２８】
本発明の一実施例のマルチ標準ビデオコーデックにおいて、順方向・逆方向走査はより具体的には以下のように動作する。
【００２９】
符号化モードにおいては、量子化部は８×８配列のＤＣＴ係数を量子化し前記ＤＣＴ係数をｎビットデータ信号ＱＮＴ−ｄｏとして走査装置１００に伝送する。前記ＤＣＴ係数は典型的にはラスター走査順序、すなわち８×８配列の上端行の第１行、次に第２、第３、第４、第５、第６、第７、第８行の順番で量子化されて伝送されるが交互的に任意の順序が使用されることができる。
【００３０】
アドレス信号ＱＮＴ−ａｄｒは、その３つの最上位ビットが信号ＱＮＴ−ｄｏにより表されるＤＣＴ係数を含む８×８配列の１つの行を示し、その３つの最下位ビットがデータ信号ＱＮＴ−ｄｏによって表されるＤＣＴ係数を含む列を示すようなフォーマットを有する。ラスター走査順序の伝送においてはアドレス信号ＱＮＴ−ａｄｒは００００００Ｂから１１１１１１Ｂまで順次に増加される。ＤＣＴ係数が一列ずつ順次に伝送される場合には、アドレス信号ＱＮＴ−ａｄｒの３つの最上位ビットは３つの最下位ビットが増加される度にその増加に先んじて０００Ｂから１１１Ｂまで増加される。またＤＣＴ係数が他の順序で伝送される場合には、それに合わせてアドレス信号ＱＮＴ−ａｄｒが変化すべきである。
【００３１】
第１選択部２０はアドレス信号ＱＮＴ−ａｄｒを選択し、第２選択部３０はデータ信号ＱＮＴ−ｄｏを選択する。量子化されたデータ信号ＱＮＴ−ｄｏがバッファメモリ４０においてアドレス信号ＱＮＴ−ａｄｒにより指示される蓄積位置に書き込まれるように、書込制御信号ｂｕｆ−ｗｅがバッファメモリ４０に要求される。かかる方式によりバッファメモリ４０は８×８配列に該当する６４個のＤＣＴ係数により満たされる。
【００３２】
その後、ＲＬＣ部はアドレス信号ＲＬＣ−ａｄｒをアドレス発生器１０に出力する。信号ＲＬＣ−ａｄｒによって表されるアドレスは、バッファメモリ４０から量子化された値が読み出される度に順次増加される。アドレス発生器１０は、制御信号ＡＬＴ−ｓｃａｎにより選択された走査方式に応じて信号ＲＬＣ−ａｄｒを信号ＺＺ−ａｄｒに変換する。もし、制御信号ＡＬＴ−ｓｃａｎが“０”であれば、図２のジグザグ走査順序に相当する図４のルックアップテーブル“（ａ）”が選択され、これに対し、信号ＡＬＴ−ｓｃａｎが“１”であれば図３のオルタネート走査順序に相当する図４のルックアップテーブル“（ｂ）”が選択される。
【００３３】
アドレス発生器１０はアドレス信号ＲＬＣ−ａｄｒを選択されたルックアップテーブルからのアドレス信号に置換することによりアドレス信号ＺＺ−ａｄｒを発生させる。そして第１選択部２０はバッファメモリ４０に伝送されるようにアドレス信号ＺＺ−ａｄｒを選択する。従って、読み出し制御信号ｂｕｆ−ｏｅが要求されるとき、バッファメモリ４０においてアドレス信号ＺＺ−ａｄｒによって識別される蓄積位置にあるＤＣＴ係数がデータ信号ＲＬＣ−ｄｉとして符号化部に読み出される。図２または図３により規定されるジグザグ走査順序はデータが読み出され符号化される順序を制御する。
【００３４】
結果的に、符号化モードにおいて、データはラスター走査順序でバッファメモリ４０に書き込まれ、決められた走査順序、たとえばランレングス及びレベル符号化部に対してジグザグ走査順序あるいはオルタネート走査順序で読み出される。
【００３５】
復号化モードにおいては、ランレングス及びレベル符号化部は入力ビットストリームから入力したＤＣＴ係数をデコードし、そのデコードされた値を表示するためにデータ信号ＲＬＣ−ｄｏを設定する。バッファメモリ４０においては、さらに別の量子化されたＤＣＴ係数を書き込むために信号ＲＬＣ−ｄｏが変わる度に、それに対応する信号ＲＬＣ−ａｄｒが増加される。ＤＣＴ係数はジグザグ走査順序またはオルタネート走査順序でデコードされる。アドレス発生器１０は信号ＲＬＣ−ａｄｒを、デコードされたＤＣＴ係数を蓄積するためのバッファメモリ４０内の位置を表す信号ＺＺ−ａｄｒに変換する。交互走査制御信号ＡＬＴ−ｓｃａｎはランレングス及びレベル符号化に使用された走査順序に従って設定される。図４のルックアップテーブル“（ａ）”は図２のジグザグ走査順序に相当し交互走査制御信号ＡＬＴ−ｓｃａｎが“０”状態にあるとき選択される。図４のルックアップテーブル“（ｂ）”は図３のオルタネート走査順序に相当し、交互走査制御信号ＡＬＴ−ｓｃａｎが“１”状態にあるとき選択される。アドレス発生器１０は、復号化部からの信号ＲＬＣ−ａｄｒにより指示されるアドレスを、選択されたルックアップテーブルと関連したアドレスと置換することによって、第２アドレス信号ＺＺ−ａｄｒを発生する。第１選択部２０は書込動作の間アドレス信号ＺＺ−ａｄｒを選択してバッファメモリ４０へ伝送する。これと同時に第２選択部３０はデータ信号ＲＬＣ−ｄｏを選択してバッファメモリ４０に伝送する。書込制御信号ｂｕｆ−ｗｅが要求されると、復号化部からのデータ信号ＲＬＣ−ｄｏはバッファメモリ４０に書き込まれる。したがって、デコードされたＤＣＴ係数は図２または図３の走査順序で書き込まれるが、その蓄積位置についてはＤＣＴ係数の二次元配列における位置に相応した位置に蓄積される。その後、バッファメモリ４０からデコードされたＤＣＴ係数を読み出すために、第１選択部２０は信号ｂｕｆ−ｏｅが要求されるときにアドレス信号ＱＮＴ−ａｄｒを選択する。そしてバッファメモリ４０に蓄積されたＤＣＴ係数が読み出されデータ信号ＱＮＴ−ｄｉとしてラスター走査順序で逆量子化部に出力される。
【００３６】
結果的に復号化モードにおいて、ジグザグ走査順序やオルタネート走査順序でデコードされたデータはバッファメモリ４０に書き込まれてからラスター走査順序で読み出され逆量子化される。
【００３７】
本発明を特定の望ましい実施例に関連して図示しかつ説明したが、本発明の精神や分野を離脱しない限り、本発明が多様に改造及び変化されうることは通常の知識を有する当業者なら容易に分かることができよう。
【００３８】
【発明の効果】
以上述べたように、本発明の順方向及び逆方向走査装置１００は、アドレス発生器１０においてルックアップテーブルが適切な走査順序を採択できることにより、走査装置１００がＪＰＥＧ、ＭＰＥＧ−１、ＭＰＥＧ−２、Ｈ．２６１、Ｈ．２６３を含める凡てのデータ圧縮及び伸張標準に採択できることを特徴とする。加えて、走査装置１００は符号化及び復号化の両者のための同一のアドレス変換を用いて符号化及び復号化両方向走査を許容する。
【図面の簡単な説明】
【図１】本発明の実施例に係る両方向ＤＣＴ係数走査装置のブロック図。
【図２】ＭＰＥＧ−２方式におけるＤＣＴ係数走査時ジグザグ走査順序を説明する図。
【図３】ＭＰＥＧ−２方式におけるＤＣＴ係数走査時オルタネート走査順序を説明する図。
【図４】本発明による一実施例のルックアップテーブルを説明する図。
【符号の説明】
１００  走査装置
１０    アドレス発生器
２０    第１選択部
３０    第２選択部
４０    バッファメモリ
【図１】
0003816204.tif 000002
【図２】
0003816204.tif 000003
【図３】
0003816204.tif 000004
【図４】
0003816204.tif 000005