(57)【要約】  コンテキストベース適応型２値算術復号化システム及び装置であって、前記システムが、復号化ユニットへビットストリームを充填し、インターフェースユニットを介して復号化ユニットを配置、制御する制御ユニットと、マクロブロック層でビットストリームに対してすべてのシンタックス要素を復号化し、シンタックス要素を組み立ててから制御ユニットを送信する復号化ユニットと、復号化ユニットと制御ユニットとの間のやりとり情報を伝送するインターフェースユニットと、を含む。本発明ではＣＡＢＡＣ復号化のシンタックス要素をすべてハードウェアで実現することによって、復号化効率が大幅に向上され、ビデオ処理の速度及びデータ処理能力がリアルタイムとハイビジョンの応用シーンの要求を満足できる。
2009504039.tif 000002
【特許請求の範囲】
【請求項１】
コンテキストベース適応型２値算術復号化システムであって、
復号化ユニットにビットストリームを充填し、インターフェースユニットを介して前記復号化ユニットを配置、制御する制御ユニットと、
マクロブロック層で前記ビットストリームに対してすべてのシンタックス要素を復号化し、前記シンタックス要素を組立してから制御ユニットに送信する復号化ユニットと、
前記復号化ユニットと制御ユニットとの間のやりとり情報を伝送するインターフェースユニットと、
を含むことを特徴とするシステム。
【請求項２】
前記復号化ユニットが、
復号化管理ユニットと復号化情報管理ユニットを接続し、制御ユニットの復号化制御信号を受信し、前記復号化管理ユニットと復号化情報管理ユニットへ前記ビットストリームのすべてのシンタックス要素を復号化する復号化制御信号を出力する復号化制御ユニットと、
復号化制御ユニットの復号化制御信号を受信し、前記復号化ユニットに充填するビットストリームのすべてのシンタックス要素をマクロブロック層で復号化する復号化管理ユニットと、
コンテキスト確率モデルを記憶し、周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の各ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、復号化管理ユニットに出力して復号化を行う復号化情報管理ユニットと、
を含むことを特徴とする請求項１に記載のシステム。
【請求項３】
前記復号化管理ユニットが、
ビットストリームを受信し、前記ビットストリームを単ｂｉｎ復号化モジュールに入力するビットストリーム管理モジュールと、
ビットストリーム管理モジュールによって入力されたビットストリームに対して復号化を行い、復号化結果を再組立ｂｉｎモジュールに出力する単ｂｉｎ復号化モジュールと、
単ｂｉｎ復号化モジュールによって入力された単ｂｉｎ復号化結果をシンタックス要素に組立て、インターフェースユニットを介して前記シンタックス要素を制御ユニットに入力すると同時に、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を後続のシンタックス要素の復号化の参照情報とする再組立ｂｉｎモジュールと、
を含むことを特徴とする請求項２に記載のシステム。
【請求項４】
前記復号化情報管理ユニットが、
シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶するコンテキスト確率モデルメモリと、
復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、
周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の各ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、
を含むことを特徴とする請求項３に記載のシステム。
【請求項５】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルをキャッシュし、コンテキスト確率モデル選択モジュールによって出力されたコンテキスト確率モデル指示信号に従って対応のコンテキスト確率モデルを単ｂｉｎ復号化モジュールに送信し、同時に、単ｂｉｎ復号化モジュールの更新後のコンテキスト確率モデルを受信し、更新後のコンテキスト確率モデルをコンテキスト確率モデルメモリに書き戻すコンテキスト確率モデルキャッシュ、をさらに含むことを特徴とする請求項４に記載のシステム。
【請求項６】
前記ビットストリーム管理モジュールが、ビットストリームを記憶し、単ｂｉｎ復号化モジュールに提供するビットストリームメモリ、をさらに含むことを特徴とする請求項３に記載のシステム。
【請求項７】
前記周辺マクロブロック情報メンテナンスモジュールが、
左隣接ブロック情報を記憶する第１グループのレジスタと、
上隣接ブロック情報を記憶する第２グループのレジスタと、をさらに含むことを特徴とする請求項４に記載のシステム。
【請求項８】
コンテキスト確率モデルキャッシュが、単ｂｉｎ復号化モジュールに必要なコンテキスト確率モデルをキャッシュする、複数のレジスタを備えるレジスタ組、をさらに含むことを特徴とする請求項５に記載のシステム。
【請求項９】
前記インターフェースユニットが、
前記制御ユニットから前記インターフェースユニットへのデータ読み書きに対してアドレスデコードを行うデコード回路と、
前記制御ユニットがデコード回路を介して書き込んだ復号化配置情報を記憶する配置レジスタ組と、
前記単ｂｉｎ復号化モジュールによって入力された復号化結果を記憶する出力結果メモリ及び出力結果レジスタ組と、を含むことを特徴とする請求項３〜８のいずれか１項に記載のシステム。
【請求項１０】
前記やりとり情報が、ビットストリームと、周辺マクロブロック情報と、復号化制御信号とを含み、前記復号化制御信号が、ｓｋｉｐの復号化の開始信号と、ｆｉｅｌｄの復号化の開始信号と、ｍｂ＿ｌａｙｅｒの復号化の開始信号と、を含むことを特徴とする請求項１〜８のいずれか１項に記載のシステム。
【請求項１１】
コンテキストベース適応型２値算術復号化装置であって、前記復号化装置がハードウェアによって実現され、復号化の必要があるビットストリームに対してマクロブロック層ですべてのシンタックス要素を復号化し、前記シンタックス要素を送信することを特徴とする装置。
【請求項１２】
前記復号化装置が、
復号化管理ユニットと復号化情報管理ユニットを接続し、復号化制御信号を受信し、前記復号化管理ユニットと復号化情報管理ユニットへ前記ビットストリームのすべてのシンタックス要素を復号化する前記復号化制御信号を出力する復号化制御ユニットと、
復号化制御ユニットからの復号化制御信号を受信し、前記復号化装置に充填するビットストリームのすべてのシンタックス要素をマクロブロック層で復号化する復号化管理ユニットと、
コンテキスト確率モデルを記憶し、周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、復号化管理ユニットに出力して復号化を行う復号化情報管理ユニットと、
を含むことを特徴とする請求項１１に記載の装置。
【請求項１３】
前記復号化管理ユニットが、
ビットストリームを受信し、前記ビットストリームを単ｂｉｎ復号化モジュールに入力するビットストリーム管理モジュールと、
ビットストリーム管理モジュールからのビットストリームを受信し、前記ビットストリームに対して復号化を行い、復号化結果を再組立ｂｉｎモジュールに出力する単ｂｉｎ復号化モジュールと、
単ｂｉｎ復号化モジュールからの単ｂｉｎ復号化結果を受信し、前記単ｂｉｎ復号化結果をシンタックス要素に組立て、前記シンタックス要素を出力し、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を後続のシンタックス要素の復号化の参照情報とする再組立ｂｉｎモジュールと、
を含むことを特徴とする請求項１２に記載の装置。
【請求項１４】
前記復号化情報管理ユニットが、
シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶するコンテキスト確率モデルメモリと、
復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、
周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の前記ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、を含むことを特徴とする請求項１３に記載の装置。
【請求項１５】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルをキャッシュし、コンテキスト確率モデル選択モジュールによって出力されたコンテキスト確率モデル指示信号に従って対応のコンテキスト確率モデルを単ｂｉｎ復号化モジュールに送信し、同時に、単ｂｉｎ復号化モジュールの更新後のコンテキスト確率モデルを受信し、更新後のコンテキスト確率モデルをコンテキスト確率モデルメモリに書き戻すコンテキスト確率モデルキャッシュ、をさらに含むことを特徴とする請求項１４に記載の装置。
【請求項１６】
前記ビットストリーム管理モジュールが、ビットストリームを記憶し、単ｂｉｎ復号化モジュールに提供するビットストリームメモリ、をさらに含むことを特徴とする請求項１３に記載の装置。
【請求項１７】
前記周辺マクロブロック情報メンテナンスモジュールが、
左隣接マクロブロック情報を記憶する第１グループのレジスタと、
上隣接マクロブロック情報を記憶する第２グループのレジスタと、をさらに含むことを特徴とする請求項１４に記載の装置。
【請求項１８】
前記コンテキスト確率モデルキャッシュが、単ｂｉｎ復号化モジュールに必要なコンテキスト確率モデルをキャッシュする、複数のレジスタを備えるレジスタ組、をさらに含むことを特徴とする請求項１５に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はビデオ通信分野に関し、特に、コンテキストベース適応型２値算術復号化システム及び装置に関する。
【背景技術】
【０００２】
コンテキストベース適応型２値算術符号化（ＣＡＢＡＣ：Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）はエントロピー符号化方式の一つである。もう一つのエントロピー符号化方式であるコンテキストベース適応型可変長符号化（ＣＡＶＬＣ：Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）と比べて、ＣＡＢＡＣはより高い圧縮効率を提供するが、実現の複雑さも増大させる。
【０００３】
エントロピーエンコーダーの機能はマクロブロック（ＭＢ：ｍａｃｒｏ−ｂｌｏｃｋｓ）の走査順序に従って、各マクロブロックのすべてのシンタックス要素の値を固定順序で順にビットストリーム（ＢｉｔＳｔｒｅａｍ）に符号化することである。マクロブロックはビデオ符号化の基本単位ブロックであり、ビデオでの各画像はマクロブロックに分割されてから符号化される。
【０００４】
ＣＡＢＡＣ２値算術復号化は再帰的空間分割（ｒｅｃｕｒｓｉｖｅ  ｉｎｔｅｒｖａｌ  ｓｕｂｄｉｖｉｓｉｏｎ）の原則に基づき動作し、現在のｂｉｎを復号化するとき、現在のｂｉｎの０または１の出現確率値（ｐで表す）を知る必要があり、この確率は現在のｂｉｎに対応するコンテキスト確率モデルによって決定される。まず、優勢シンボル（ＭＰＳ：  Ｍｏｓｔ  Ｐｒｏｂａｂｌｅ  Ｓｙｍｂｏｌ）と劣勢シンボル（ＬＰＳ  ：Ｌｅａｓｔ  Ｐｒｏｂａｂｌｅ  Ｓｙｍｂｏｌ）を区別し、それぞれは０または１に対応される。劣勢シンボルの値（ｖａｌＬＰＳ）と優勢シンボルの値（ｖａｌＭＰＳ）は０または１で表され、復号化する現在のｂｉｎに対応するコンテキスト確率モデルで体現される。現在のｂｉｎに対応する優勢シンボルの値をｐ（０）で表すと、劣勢シンボルの値はｐ（１）＝１−  ｐ（０）である。
【０００５】
２次元の確率の空間範囲は（０，１）であり、空間全体はｃｏｄＩＲａｎｇｅの値によって決定される。復号化する現在のｂｉｎに対応する確率値ｐによってサブ区間の大きさを計算し、計算方法は以下の通りで、優勢シンボル空間の範囲はｐ（０）＊ｃｏｄＩＲａｎｇｅに対応し、劣勢シンボル空間の範囲はｃｏｄＩＲａｎｇｅ  −  ｐ（０）＊ｃｏｄＩＲａｎｇｅに対応する。確率空間を決定した後、ｃｏｄＩＯｆｆｓｅｔの値によって復号化する現在のｂｉｎの確率がどのサブ区間にあるかを選定でき、劣勢シンボル空間にある場合、復号化する現在のｂｉｎの値は劣勢シンボルの値（ｖａｌＬＰＳ）に対応され、優勢シンボル空間にある場合、復号化する現在のｂｉｎの値は優勢シンボルの値（ｖａｌＭＰＳ）に対応される。優勢シンボル空間にある場合、次のｂｉｎを復号化するとき優勢シンボル空間ｐ（０）＊ｃｏｄＩＲａｎｇｅの値を確率空間全体のｃｏｄＩＲａｎｇｅとして、引き続き空間分割と復号化に参加させる。上記はＣＡＢＡＣ復号化の原理的な説明で、ＣＡＢＡＣ復号化の具体的な、詳しく説明についてはＨ．２６４を参照し、本発明で全て引用し、ここでは説明を省略する。
【０００６】
例えば、コンテキスト確率モデルのメンテナンスにおいて、確率評価が一組の有限状態機械によって完成され、当該一組の有限状態機械は６４個異なる確率事象を含む確率の状態表に基づくものである。
【０００７】
｛ｐＬＰＳ（ｐＳｔａｔｅＩｄｘ）  ｜  ０＜＝ｐＳｔａｔｅＩｄｘ
【０００８】
表中の各値はそれぞれ劣勢シンボルの一つの値ｐＬＰＳに対応する。状態表の構成はｐＳｔａｔｅＩｄｘ値の増加に伴ってＬＰＳの値が次第に小さくなり、ｐＳｔａｔｅＩｄｘ＝０の場合、対応の劣勢シンボル値は０．５である。
【０００９】
ＣＡＢＡＣアルゴリズムは２００３年に合同映像チーム（ＪＶＴ：Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ）（ＩＴＵ−ＴとＩＳＯのＭＰＥＧからなる）会議で正式に策定されてきたものであり、今まで発展の期間がまだ浅く、提出された完全な復号化実現の構成、特に高速、高スループットのリアルタイム復号化プロセッサーも少ない。
【００１０】
開示された従来のＣＡＢＡＣハードウェア復号化ユニットは、主にソフトウェア復号化、及びソフトウェア復号化とハードウェア復号化を結合する構成である。
【００１１】
ＣＡＢＡＣソフトウェアハードウェア復号化ユニットについては、ＪＶＴに提供されたｊｍ９５ソフトウェアを参照できる。ソフトウェア復号化は、アルゴリズムフローに従ってＰＣで復号化過程を実行し、ソフトウェアがすべてのＣＡＢＡＣ復号化を担当して、復号化の速度が極めて遅く、リアルタイムの応用シーンの要求を満足できない。
【００１２】
Ｏｓｏｒｉｏ，  Ｒ．Ｒ．；  Ｂｒｕｇｕｅｒａ，  Ｊ．Ｄ．  “Ａｒｉｔｈｍｅｔｉｃ  ｃｏｄｉｎｇ  ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｈ．２６４／ＡＶＣ  ＣＡＢＡＣ  ｃｏｍｐｒｅｓｓｉｏｎ  ｓｙｓｔｅｍ”，  Ｄｉｇｉｔａｌ  Ｓｙｓｔｅｍ  Ｄｅｓｉｇｎ，  ２００４．  ＤＳＤ  ２００４．  Ｅｕｒｏｍｉｃｒｏ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  ，  ３１  Ａｕｇ．−３  Ｓｅｐｔ．  ２００４  Ｐａｇｅ６２−６９ではソフトウェアとハードウェアを結合するハードウェア復号化ユニット構成が提出され、ハードウェア加速の実現方式を採用して、復号化過程中に主な作業量を占める係数シンタックス要素の復号化はハードウェア加速の構成で実現し、ｍｂ＿ｔｙｐｅ、ｓｕｂ＿ｍｂ＿ｔｙｐｅ、ＣＢＰ（Ｃｏｄｅｄ  Ｂｌｏｃｋ  Ｐａｔｔｅｒｎｓ）、ｄｑｕａｎｔ、ルマ予測モード、クロマ予測モード、動きベクトルデータ（ＭＶＤ：Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｄａｔａ）などのような他のシンタックス要素、及び参照フレームインデックスなどシンタックス要素はすべてソフトウェアで実現する。このような復号化構成はソフトウェアハードウェア復号化ユニットと比べて復号化効率が大きく向上するが、次のような問題がある。
【００１３】
（１）実際に、この方案ではマクロブロック層の一種のシンタックス要素である係数ｃｏｅｆｆｉｃｉｅｎｔのみをハードウェアで復号化し、他のシンタックス要素の復号化はすべてソフトウェアで完成し、ソフトウェアとハードウェアのやりとりが、周辺マクロブロック情報をやりとりするだけでなく、ＣＡＢＡＣの復号化過程中に生成されるＲａｎｇｅとＯｆｆｓｅｔ変数もソフトウェアとハードウェア復号化過程中で絶えずにやりとりするため、ソフトウェアとハードウェアとの機能区分が不明確になり、やりとり過程が比較的に複雑で、効率が低下することを招く。
（２）ソフトウェアが係数以外のすべてのシンタックス要素の復号化に参加し、ハードウェアは係数部分の復号化だけを担当して、ある程度でリソースの浪費をもたらし、システム性能をさらに向上させることができない。
【００１４】
上記のように、従来技術では、ソフトウェアがマクロブロック層の全部または大部分のシンタックス要素の復号化を担当するため、ＣＡＢＡＣ復号化の低効率、実現の複雑を招き、ビデオ処理の速度及びデータ処理能力がリアルタイムとハイビジョンの応用シーンの要求を満足できない。
【発明の開示】
【発明が解決しようとする課題】
【００１５】
本発明は、従来技術でソフトウェアがマクロブロック層の全部または大部分のシンタックス要素の復号化作業を担当して、ビデオ処理の速度及びデータ処理能力がリアルタイムとハイビジョンの応用シーンの要求を満足するのが難しいという課題を解決することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明は下記の解決手段によって実現される。
【００１７】
コンテキストベース適応型２値算術復号化システムであって、復号化ユニットにビットストリームを充填し、インターフェースユニットを介して前記復号化ユニットを配置、制御する制御ユニットと、マクロブロック層で前記ビットストリームに対してすべてのシンタックス要素を復号化し、前記シンタックス要素を組立してから制御ユニットに送信する復号化ユニットと、前記復号化ユニットと制御ユニットとの間のやりとり情報を伝送するインターフェースユニットと、を含む。
【００１８】
前記復号化ユニットが、復号化管理ユニットと復号化情報管理ユニットを接続し、制御ユニットの復号化制御信号を受信し、前記復号化管理ユニットと復号化情報管理ユニットへ前記ビットストリームのすべてのシンタックス要素を復号化する復号化制御信号を出力する復号化制御ユニットと、復号化制御ユニットの復号化制御信号を受信し、前記復号化ユニットに充填するビットストリームのすべてのシンタックス要素をマクロブロック層で復号化する復号化管理ユニットと、コンテキスト確率モデルを記憶し、周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の各ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、復号化管理ユニットに出力して復号化を行う復号化情報管理ユニットと、を含む。
【００１９】
前記復号化管理ユニットが、ビットストリームを受信し、前記ビットストリームを単ｂｉｎ復号化モジュールに入力するビットストリーム管理モジュールと、ビットストリーム管理モジュールによって入力されたビットストリームに対して復号化を行い、復号化結果を再組立ｂｉｎモジュールに出力する単ｂｉｎ復号化モジュールと、単ｂｉｎ復号化モジュールによって入力された単ｂｉｎ復号化結果をシンタックス要素に組立て、インターフェースユニットを介して前記シンタックス要素を制御ユニットに入力すると同時に、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を後続のシンタックス要素の復号化の参照情報とする再組立ｂｉｎモジュールと、を含む。
【００２０】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶するコンテキスト確率モデルメモリと、復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の各ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、を含む。
【００２１】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルをキャッシュし、コンテキスト確率モデル選択モジュールによって出力されたコンテキスト確率モデル指示信号に従って対応のコンテキスト確率モデルを単ｂｉｎ復号化モジュールに送信し、同時に、単ｂｉｎ復号化モジュールの更新後のコンテキスト確率モデルを受信し、更新後のコンテキスト確率モデルをコンテキスト確率モデルメモリに書き戻すコンテキスト確率モデルキャッシュ、をさらに含む。
【００２２】
前記ビットストリーム管理モジュールが、ビットストリームを記憶し、単ｂｉｎ復号化モジュールに提供するビットストリームメモリ、をさらに含む。
【００２３】
前記周辺マクロブロック情報メンテナンスモジュールが、左隣接ブロック情報を記憶する第１グループのレジスタと、上隣接ブロック情報を記憶する第２グループのレジスタと、をさらに含む。コンテキスト確率モデルキャッシュが、単ｂｉｎ復号化モジュールに必要なコンテキスト確率モデルをキャッシュする、複数のレジスタを備えるレジスタ組、をさらに含む。
【００２４】
前記インターフェースユニットが、前記制御ユニットから前記インターフェースユニットへのデータ読み書きに対してアドレスデコードを行うデコード回路と、前記制御ユニットがデコード回路を介して書き込んだ復号化配置情報を記憶する配置レジスタ組と、前記単ｂｉｎ復号化モジュールによって入力された復号化結果を記憶する出力結果メモリ及び出力結果レジスタ組と、を含む。
【００２５】
前記やりとり情報が、ビットストリームと、周辺マクロブロック情報と、復号化制御信号とを含み、前記復号化制御信号が、ｓｋｉｐの復号化の開始信号と、ｆｉｅｌｄの復号化の開始信号と、ｍｂ＿ｌａｙｅｒの復号化の開始信号と、を含む。
【００２６】
コンテキストベース適応型２値算術復号化装置であって、前記復号化装置がハードウェアによって実現され、復号化の必要があるビットストリームに対してマクロブロック層ですべてのシンタックス要素を復号化し、前記シンタックス要素を送信する。
【００２７】
前記復号化装置が、復号化管理ユニットと復号化情報管理ユニットを接続し、復号化制御信号を受信し、前記復号化管理ユニットと復号化情報管理ユニットへ前記ビットストリームのすべてのシンタックス要素を復号化する前記復号化制御信号を出力する復号化制御ユニットと、復号化制御ユニットからの復号化制御信号を受信し、前記復号化装置に充填するビットストリームのすべてのシンタックス要素をマクロブロック層で復号化する復号化管理ユニットと、コンテキスト確率モデルを記憶し、周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、復号化管理ユニットに出力して復号化を行う復号化情報管理ユニットと、を含む。
【００２８】
前記復号化管理ユニットが、ビットストリームを受信し、前記ビットストリームを単ｂｉｎ復号化モジュールに入力するビットストリーム管理モジュールと、ビットストリーム管理モジュールからのビットストリームを受信し、前記ビットストリームに対して復号化を行い、復号化結果を再組立ｂｉｎモジュールに出力する単ｂｉｎ復号化モジュールと、単ｂｉｎ復号化モジュールからの単ｂｉｎ復号化結果を受信し、前記単ｂｉｎ復号化結果をシンタックス要素に組立て、前記シンタックス要素を出力し、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を後続のシンタックス要素の復号化の参照情報とする再組立ｂｉｎモジュールと、を含む。
【００２９】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶するコンテキスト確率モデルメモリと、復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の前記ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、を含む。
【００３０】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルをキャッシュし、コンテキスト確率モデル選択モジュールによって出力されたコンテキスト確率モデル指示信号に従って対応のコンテキスト確率モデルを単ｂｉｎ復号化モジュールに送信し、同時に、単ｂｉｎ復号化モジュールの更新後のコンテキスト確率モデルを受信し、更新後のコンテキスト確率モデルをコンテキスト確率モデルメモリに書き戻すコンテキスト確率モデルキャッシュ、をさらに含む。
【００３１】
前記ビットストリーム管理モジュールが、ビットストリームを記憶し、単ｂｉｎ復号化モジュールに提供するビットストリームメモリ、をさらに含む。
【００３２】
前記周辺マクロブロック情報メンテナンスモジュールが、左隣接マクロブロック情報を記憶する第１グループのレジスタと、上隣接マクロブロック情報を記憶する第２グループのレジスタと、をさらに含む。
【００３３】
前記コンテキスト確率モデルキャッシュが、単ｂｉｎ復号化モジュールに必要なコンテキスト確率モデルをキャッシュする、複数のレジスタを備えるレジスタ組、をさらに含む。
【発明の効果】
【００３４】
本発明ではＣＡＢＡＣ復号化のシンタックス要素をすべてハードウェアで実現することによって、ソフトウェアハードウェアの機能が明確に区分され、インターフェースがはっきりされ、復号化過程が制御しやすくて実現が簡単であり、復号化効率が大幅に向上され、ビデオ処理の速度及びデータ処理能力がリアルタイムとハイビジョンの応用シーンの要求を満足できる。
【発明を実施するための最良の形態】
【００３５】
本発明の目的、解決手段およびメリットをさらに明確にするため、以下、図面と実施例を参照して本発明をさらに詳しく説明する。ここで述べた具体的な実施例は本発明を解釈するのみに用いられ、本発明を限定するものではないと解されるべきである。
【００３６】
本発明では、復号化する現在のｂｉｎのコンテキスト確率モデルの値を計算するとき、隣接マクロブロックまたは隣接マクロブロックのｂｉｎの値を用いて、コンテキスト確率モデルを記憶するランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ−Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）から一定の演算規則によって対応のコンテキスト確率モデルの値を選出し、また上記の演算規則を利用して現在のｂｉｎの値を得た後、現在のｂｉｎの０または１の出現確率を更新し、即ち現在のｂｉｎに対応するコンテキスト確率モデルの値を更新して、対応のＲＡＭ空間に書き戻す。この過程は、ＣＡＢＡＣ復号化がコンテキストベース算術復号化であることを表し、実質的にこの「コンテキストベース」は既に復号化して得られたシンタックス要素の値に基づいて、次に復号化しようとするシンタックス要素の可能値を判断することであり、判断が正しい場合、少ないｂｉｔで、またはｂｉｔを全く消耗せずに、現在のシンタックス要素を復号化することを可能とし、且つビットストリームの圧縮比を向上させる目的を達する。
【００３７】
上記の解決手段によれば、本発明はＣＡＢＡＣのすべてのシンタックス要素の復号化に用いられる、ハードウェア方式で実現されるＣＡＢＡＣ復号化装置を提供し、復号化の過程中に必要な相互関連のＣＡＢＡＣ復号化特性のパラメータｒａｎｇｅ、ｏｆｆｓｅｔ、及び各ｂｉｎの復号化過程中に絶えず更新、メンテナンスを必要とするコンテキスト確率モデルなどの変数は、すべて復号化装置自身によってメンテナンスされる。
【００３８】
本発明に係るＣＡＢＡＣ復号化システムにおいて、相応のソフトウェアによって復号化装置の復号化過程を制御する。しかし、ソフトウェアは、いかなるＣＡＢＡＣ復号化自身のデータメンテナンスと復号化過程にも参加せずに、周辺マクロブロック情報、ビットストリーム及び制御信号だけを提供する。ソフトウェアとハードウェアのやりとりはマクロブロック層に基づくビットストリームのやりとりと、配置情報のやりとりと、復号化後の結果データの取得とを含む。
【００３９】
図１は本発明に係るＣＡＢＡＣ復号化システムの構成を示し、システム全体が三つの部分を含み、それぞれはＣＡＢＡＣ復号化をする復号化ユニット１００、復号化ユニット１００に対して配置と制御を行う制御ユニット２００、及びインターフェースユニット３００である。制御ユニット２００は、バスをアクセスすることによってインターフェースユニット３００とデータを交換して、復号化ユニット１００の復号化を制御する。復号化ユニット１００は、ＣＡＢＡＣ復号化システムの主体部分であって、マクロブロック層のすべてのシンタックス要素の復号化を実現する。制御ユニット２００は、インターフェースユニット３００を介して復号化ユニット１００へ復号化制御信号と復号化が必要なビットストリームとを送信し、復号化ユニット１００は、インターフェースユニット３００を介して復号化済みのデータを制御ユニット２００に伝送する。
【００４０】
図２は、本発明に係る復号化ユニット１００の構成を示す。
【００４１】
復号化ユニット１００は、復号化管理ユニットと復号化情報管理ユニットを接続し、制御ユニット２００の復号化制御信号を受信し、且つ前記ビットストリームのすべてのシンタックス要素を復号化する復号化制御信号を前記復号化管理ユニットと復号化情報管理ユニットへ出力する復号化制御ユニット１０１と、制御ユニット２００の復号化制御信号を受信し、且つ前記復号化ユニット１００に充填するビットストリームのすべてのシンタックス要素をマクロブロックで復号化する復号化管理ユニットと、コンテキスト確率モデルを記憶し、且つ現在のシンタックス要素の各ｂｉｎを復号化するのに必要なコンテキスト確率モデルを周辺マクロブロック及び現在のマクロブロック情報によって選択して、復号化管理ユニットに出力して復号化を行う復号化情報管理ユニットと、を含んでよい。
【００４２】
復号化管理ユニットは、ビットストリーム管理モジュール１０２と、単ｂｉｎ復号化モジュール１０６と、再組立ｂｉｎモジュール１０７と、を含む。
【００４３】
復号化情報管理ユニットは、コンテキスト確率モデル選択モジュール１０５と、コンテキスト確率モデルメモリ１０４と、周辺マクロブロック情報メンテナンスモジュール１０３と、を含む。
【００４４】
具体的な実現について、単ｂｉｎ復号化モジュール１０６とコンテキスト確率モデル選択モジュール１０５は組み合わせ回路で実現され、他のモジュールユニットは、順序回路で実現され、復号化ユニット１００全体は一つの集積回路チップに集積されたデジタル回路で実現される。
【００４５】
復号化制御ユニット１０１は、復号化ユニット１００での他の各構成モジュールの復号化過程を制御し、各モジュールへ復号化制御信号を送信することによって、各モジュールの動作を調整する。復号化制御ユニット１０１の内部には制御の状態機械が含まれ、各復号化状態に対する制御によってマクロブロック（ｍｂ）層全体のシンタックス要素を復号化する目的を実現する。
【００４６】
図３は、復号化制御ユニット１０１での制御の状態機械の三つの復号化制御過程を示し、それぞれはｓｋｉｐ状態の復号化制御過程、ｆｉｅｌｄ状態の復号化制御過程、及びｍｂ＿ｌａｙｅｒ状態の復号化制御過程である。図３には、Ｈ．２６４（ｍａｉｎ  ｐｒｏｆｉｌｅ）でＣＡＢＡＣ符号化／復号化を採用するすべてのシンタックス要素が含まれ、ここで、
（１）Ｓｋｉｐは、Ｐフレームでマクロブロックがスキップされるかどうかの復号化信号を表す。
（２）Ｅｎｄ＿ｓｌｉｃｅは、現在のマクロブロックがｓｌｉｃｅ層の最後のマクロブロックであるかどうかの識別信号を表す。
（３）ｍｂ＿ｔｙｐｅは、現在のマクロブロックのタイプ信号を表し、ｓｕｂ＿ｍｂ＿ｔｙｐｅはマクロブロックに含まれた四つの８×８ブロックのタイプ信号を表す。
（４）Ｉｎｔｒａ＿ｐｒｅ＿ｍｏｄｅは、現在のマクロブロックがｉｎｔｒａブロックである場合、４×４タイプを復号化するときのルマ予測モード信号及びクロマ予測モード信号を表す。
（５）Ｃｂｐは、現在のマクロブロックの係数存在フラグを表す。
（６）Ｄｑｕａｎｔは、現在のマクロブロックのｑｕａｎｔ差分フラグを表す。
（７）Ｍｖｄは、現在のマクロブロックの動きベクトル差分フラグを表す。
（８）Ｒｅｆｆｒａｍｅは、現在のマクロブロックの参照フレームフラグを表す。
（９）Ｃｏｅｆｆは、現在のマクロブロックの係数フラグを表す。
（１０）Ｆｉｅｌｄは、現在のマクロブロックのフィールドパターンフラグを表す。
【００４７】
本発明は、ｓｋｉｐの復号化、ｆｉｅｌｄの復号化という二つの部分をｍｂ＿ｌａｙｅｒ層の復号化から分離して、復号化効率の向上、ソフトウェアハードウェアのやりとりのコストを最小限に抑えることに役立つ。ｓｋｉｐの復号化、ｆｉｅｌｄの復号化、及びｍｂ＿ｌａｙｅｒの復号化の三つの部分は、独立に制御ユニット２００の制御を受けて、対応のシンタックス要素の復号化を完成することができる。
【００４８】
ｍｂ＿ｌａｙｅｒの復号化は、９種類のシンタックス要素の復号化を含み、それはＣＡＢＡＣ復号化の主体である。ｍｂ＿ｌａｙｅｒ層において、９種類のシンタックス要素が一定の順序によって復号化され、この順序がＨ．２６４と関連し、ＪＶＴ−Ｇ０５０，  “Ｄｒａｆｔ  ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｈ．２６４  ａｎｄ  Ｄｒａｆｔ  ＩＳＯ／ＩＥＣ  １４４９６−１０  ＡＶＣ”  ｉｎ  ＪＶＴ  ｏｆ  ＩＳＯ／ＩＥＣ  ｄｏｃ，  Ｔ．Ｗｉｇ，Ｅｄ．，Ｐａｔｔａｙａ，  Ｔｈａｉｌａｎｄ，  Ｍａｒ．２００３を参照し、本発明では全て引用し、ここでは説明を省略する。ｓｋｉｐの復号化過程において、得られたｓｋｉｐ値が１である場合、ｅｎｄ＿ｓｌｉｃｅシンタックス要素を復号化し、その後プロセスを終了する。得られたｓｋｉｐ値が０である場合、直接にプロセスを終了し、復号化ユニット１００は次の復号化操作に進む。
【００４９】
本発明で、ｓｋｉｐの復号化過程を単独にしてｍｂ＿ｌａｙｅｒ層全体の復号化過程に入らない理由としては、ｓｋｉｐの復号化過程への配置情報は少ないが、ｍｂ＿ｌａｙｅｒ層の復号化に必要な配置情報が多く、マクロブロックがｓｋｉｐ  ｍｂである場合、ｍｂ＿ｌａｙｅｒ層の復号化過程を開始する必要がなくなり、それで、少ない配置情報でマクロブロック全体の復号化過程を完成できて経済的であるためである。
【００５０】
Ｆｉｅｌｄの復号化は選択可能であり、このシンタックス要素を取り出して単独の復号化操作過程とする理由としては、ある場合に、このシンタックス要素の隣接マクロブロックの選択方式がｍｂ  ｓｋｉｐシンタックス要素及びｍｂ＿ｌａｙｅｒ層でのシンタックス要素の隣接マクロブロックの選択方式と異なるため、単独に取り出して独立のソフトウェアハードウェアやりとりモードを採用して操作する必要があるだめである。
【００５１】
本発明の別の実施例として、ｓｋｉｐの復号化とｆｉｅｌｄの復号化をｍｂ＿ｌａｙｅｒの復号化過程に合併することもでき、ｍｂ＿ｌａｙｅｒ層でのあるシンタックス要素の復号化をｍｂ＿ｌａｙｅｒの復号化から分離し、単独に制御ユニット２００の制御を受けるようにすることもできる。
【００５２】
図４は、復号化制御ユニット１０１が復号化ユニット１００を制御してｍｂ＿ｌａｙｅｒ層のシンタックス要素を復号化する詳細な状態制御過程を示す。ｍｂ＿ｌａｙｅｒ層のシンタックス要素を復号化する過程中において、復号化ユニット１００の初期状態はアイドル状態にあり、有効なｍｂ＿ｌａｙｅｒ復号化の開始信号を受信（Ｃ１）した後、復号化ユニット１００がｍｂ＿ｔｙｐｅ復号化を実行する。
【００５３】
復号化ユニット１００がｍｂ＿ｔｙｐｅを復号化した後、ＰマクロブロックまたはＢマクロブロック復号化であり、且つマクロブロック分割が四つの８×８ブロックの形式でない場合（Ｃ２）、引き続きｒｅｆｆｒａｍｅの復号化、ｍｖｄの復号化、ｃｂｐの復号化とｄｑｐの復号化、ｃｏｅｆｆの復号化を順次に行う。Ｉマクロブロック復号化であり、且つＩ＿ＰＣＭモード復号化でない場合（Ｃ３）、ｃｂｐとｄｑｐの復号化、ｃｏｅｆｆの復号化を順次に行う。Ｉマクロブロック復号化であり、且つＩ＿ＰＣＭモード復号化である場合（Ｃ４）、アイドル状態に戻る。ＰマクロブロックまたはＢマクロブロック復号化であり、且つマクロブロック分割が四つの８×８ブロックの形式である場合（Ｃ７）、ｓｕｂ＿ｍｂ＿ｔｙｐｅの復号化、ｒｅｆｆｒａｍｅの復号化、ｍｖｂの復号化、ｃｂｐとｄｑｐの復号化、ｃｏｅｆｆの復号化を順次に実行する。
【００５４】
Ｃｏｅｆｆの復号化が完了した後、ｍｂａｆｆの復号化モードにあり、且つ現在復号化のマクロブロック番号が偶数である場合（Ｃ５）、アイドル状態に戻る。非ｍｂａｆｆの復号化モードにあり、またはｍｂａｆｆの復号化モードにあるが、現在復号化のマクロブロック番号が奇数である場合（Ｃ６）、ｓｅｎｄ＿ｓｌｉｃｅ復号化を実行し、復号化が完了した後、アイドル状態に戻る。
【００５５】
ビットストリーム管理モジュール１０２は、ビットストリームを受信し、且つビットストリームを単ｂｉｎ復号化モジュール１０６に入力する。ビットストリーム管理モジュール１０２には、単ｂｉｎ復号化モジュール１０６にビットストリームを提供するビットストリームメモリ１０２１が含まれる。ビットストリームメモリ１０２１内のビットストリームが消耗し尽きると、ビットストリーム管理モジュール１０２は、制御ユニット２００にビットストリームのロード要求を提出する。
【００５６】
マクロブロックの復号化過程中に、ビットストリームメモリ１０２１内のビットストリームが消耗し尽きると、ビットストリーム管理モジュール１０２が制御ユニット２００にビットストリーム充填要求を送信することができ、この時、ビットストリーム管理モジュール１０２が復号化過程を中断し、必要なビットストリームを制御ユニット２００が充填し終えてから復号化を再開する。
【００５７】
周辺マクロブロック情報メンテナンスモジュール１０３は、周辺マクロブロック情報をメンテナンスする。周辺マクロブロック情報は、上隣接マクロブロック及び左隣接マクロブロックの関連情報を含み、周辺マクロブロック情報メンテナンスモジュール１０３は２組のレジスタ１０３１、１０３２を含み、それぞれは左隣接マクロブロック情報及び上隣接マクロブロック情報を記憶する。周辺マクロブロック情報は、隣接マクロブロックが有効であるかどうかの情報、隣接マクロブロックがｓｋｉｐであるかどうかの情報、隣接マクロブロックのフレーム／フィールドモード情報、及び隣接の復号化済みのシンタックス要素などを含む。現在のマクロブロックのシンタックス要素を復号化するとき、確率モデルを如何に選択するかを判断するためには常にシンタックス要素の一番目のｂｉｎが周辺マクロブロックの復号化済みのシンタックス要素を利用する必要になり、この時、確率モデルを選択するのに必要な周辺マクロブロック情報を周辺マクロブロック情報メンテナンスモジュール１０３がコンテキスト確率モデル選択モジュール１０５に提供する必要がある。
【００５８】
本発明の一つの実施例として、現在のマクロブロックの周辺マクロブロック情報に対して、完全に制御ユニット２００によりメンテナンスし、現在のマクロブロックを復号化するとき、制御ユニット２００により周辺マクロブロック情報をインターフェースユニット３００を介して周辺マクロブロック情報メンテナンスモジュール１０３に伝送するが、この解決手段ではソフトウェアハードウェア復号化のやりとり過程が比較的に複雑である。
【００５９】
本発明の別の実施例では、周辺マクロブロックのシンタックス要素情報を完全に復号化ユニット１００の周辺マクロブロック情報メンテナンスモジュール１０３によりメンテナンスすることができ、このようにしてはソフトウェアハードウェアのやりとり過程が簡単であるが、周辺マクロブロック情報メンテナンスモジュール１０３が左隣接マクロブロックの情報及び上の一行のマクロブロック情報をメンテナンスする必要で、リソースの消耗が多すぎる。
【００６０】
本発明の好ましい実施例として、制御ユニット２００が上隣接マクロブロックのシンタックス要素の情報をメンテナンスし、周辺マクロブロック情報メンテナンスモジュール１０３が左隣接マクロブロックのシンタックス要素の情報をメンテナンスし、このようにしてソフトウェアハードウェアのやりとり過程が簡単になり、リソースはただ左の一個または二個（ｍｂａｆｆモードにある）マクロブロックのシンタックス要素の情報をメンテナンスするために消耗される。
【００６１】
コンテキスト確率モデルメモリ１０４は、すべてのシンタックス要素の必要な確率モデルを記憶するＲＡＭである。コンテキスト確率モデルメモリ１０４に記憶される確率モデルは、合計３９９個であり、これはマクロブロック（ｍｂ）層全体のすべてのシンタックス要素を復号化するのに必要な全ての確率モデル情報である。
【００６２】
コンテキスト確率モデル選択モジュール１０５は、すべてのシンタックス要素のすべてのｂｉｎの確率モデル選択ポリシーを含み、現在のシンタックス要素の各ｂｉｎを復号化するのに必要な確率モデルを決定する。コンテキスト確率モデル選択モジュール１０５の出力結果は指針に類似し、単ｂｉｎ復号化モジュール１０６が現在のシンタックス要素の各ｂｉｎを復号化するとき、コンテキスト確率モデルメモリ１０４によって提供された確率モデルからどの確率モデルを選択すべきかを指示する。確率モデルの選択原則としては、一、現在どのシンタックス要素を復号化しているか、二、当該シンタックス要素のどのｂｉｎを復号化しているか、三、周辺マクロブロックに対応する当該シンタックス要素の値などである。確率モデルの選択規則は、Ｈ．２６４で説明され、ＪＶＴ−Ｇ０５０，  “Ｄｒａｆｔ  ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｈ．２６４  ａｎｄ  Ｄｒａｆｔ  ＩＳＯ／ＩＥＣ  １４４９６−１０  ＡＶＣ”  ｉｎ  ＪＶＴ  ｏｆ  ＩＳＯ／ＩＥＣ  ｄｏｃ，  Ｔ．Ｗｉｇ，Ｅｄ．，Ｐａｔｔａｙａ，  Ｔｈａｉｌａｎｄ，  Ｍａｒ．２００３を参照し、本発明では全て引用し、ここでは説明を省略する。
【００６３】
単ｂｉｎ復号化モジュール１０６は、各シンタックス要素のｂｉｎを復号化することに用いられ、復号化方式はＨ．２６４で規定された標準ＣＡＢＡＣ算術復号化方式を採用し、ＪＶＴ−Ｇ０５０，  “Ｄｒａｆｔ  ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｈ．２６４  ａｎｄ  Ｄｒａｆｔ  ＩＳＯ／ＩＥＣ  １４４９６−１０  ＡＶＣ”  ｉｎ  ＪＶＴ  ｏｆ  ＩＳＯ／ＩＥＣ  ｄｏｃ，  Ｔ．Ｗｉｇ，Ｅｄ．，Ｐａｔｔａｙａ，  Ｔｈａｉｌａｎｄ，  Ｍａｒ．２００３を参照し、本発明では全て引用し、ここでは説明を省略する。復号化過程中に必要なビットストリームは、ビットストリーム管理モジュール１０２から取得し、復号化過程中に必要な確率モデルはコンテキスト確率モデルキャッシュ１０８から取得する。単ｂｉｎ復号化モジュール１０６の復号化後の結果は、再組立ｂｉｎモジュール１０７に送信され、シンタックス要素の再確立に用いられる。
【００６４】
単ｂｉｎ復号化モジュール１０６があるシンタックス要素の一個のｂｉｎのみを復号化するため、復号化ｂｉｎの結果から復号化最終のシンタックス要素を回復するには、またｂｉｎの再組立過程が必要であり、再組立ｂｉｎモジュール１０７は、シンタックス要素の組立を完成する。各シンタックス要素の組立方式が異なり、組立の根拠は復号化する現在のシンタックス要素のタイプであり、Ｈ．２６４の規定による組立規則によって組立を完成する。シンタックス要素の組立を完成した後、再組立ｂｉｎモジュール１０７は、復号化して得られたシンタックス要素を制御ユニット２００に送信すると同時に、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を周辺マクロブロック情報メンテナンスモジュール１０３に入力して、後続のシンタックス要素の復号化の参照情報とする。
【００６５】
上記の実施例で、単ｂｉｎ復号化モジュール１０６は、コンテキスト確率モデルメモリ１０４から直接に必要な確率モデルを選択するが、ＲＡＭ読取の制限を受けるため、確率モデルの選択、更新が復号化の効率に大きな影響を及ぼす。本発明の好ましい実施例として、図５に示すように、ある種類のシンタックスを復号化するのに必要な確率モデルをコンテキスト確率モデルキャッシュ１０８に読み入れる。コンテキスト確率モデルキャッシュ１０８は、高速なキャッシュであって、単ｂｉｎ復号化モジュール１０６がコンテキスト確率モデルをコールするのにキャッシュを提供して、コンテキスト確率モデルの選択、更新の効率を向上させる。コンテキスト確率モデル選択モジュール１０５によって提供された指示信号を受信した後、コンテキスト確率モデルキャッシュ１０８は、対応の確率モデルを単ｂｉｎ復号化モジュール１０６に送信する。
【００６６】
各Ｂｉｎの復号化には相応のコンテキスト確率モデルを更新することが必要で、コンテキスト確率モデルメモリ１０４からモデルを繰り返してロードし、且つ更新後のコンテキスト確率モデルを書き戻すことを避けるため、コンテキスト確率モデルキャッシュ１０８に４４個７ｂｉｔｓレジスタを設ける。すべてのコンテキスト確率モデルは可能なコール順序によってグルーピングされる。一つのマクロブロックを復号化する過程中に、１組のコンテキスト確率モデルはレジスタ組に一回のみロードされ、全部使用され更新された後、一回書き戻され、１組のコンテキスト確率モデルの総個数は４４個コンテキスト確率モデルを越えない。
【００６７】
本発明の実施例として、シンタックス要素のコール順序に従って、すべてのコンテキスト確率モデルが以下の１８グループに分けられる。
【００６８】
第１グループ：ｍｂ＿ｓｋｉｐ＿ｆｌａｇ；
第２グループ：ｍｂ＿ｆｉｅｌｄ＿ｄｅｃｏｄｉｎｇ＿ｆｌａｇ；
第３グループ：ｍｂ＿ｔｙｐｅ  ｆｏｒ  ＳＩ  ｓｌｉｃｅ；
第４グループ：ｍｂ＿ｔｙｐｅ  ｆｏｒ  Ｉ  ｓｌｉｃｅ；
第５グループ：ｍｂ＿ｔｙｐｅ  ｆｏｒ  Ｐ  ｓｌｉｃｅ；
第６グループ：ｍｂ＿ｔｙｐｅ  ｆｏｒ  Ｂ  ｓｌｉｃｅ；
第７グループ：ｓｕｂ＿ｍｂ＿ｔｙｐｅ  ｆｏｒ  Ｐ  ｓｌｉｃｅ；
第８グループ：ｓｕｂ＿ｍｂ＿ｔｙｐｅ  ｆｏｒ  Ｂ  ｓｌｉｃｅ；
第９グループ：ｓｙｎｔａｘ  ｅｌｅｍｅｎｔｓ  ｆｏｒ  ｉｎｔｒａ  ｐｒｅｄｉｃｔｉｏｎ  ｍｏｄｅ，  ｉｎｃｌｕｄｉｎｇ  ｐｒｅｖ＿ｉｎｒｔａ４ｘ４＿ｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ，ｒｅｍ＿ｉｎｔｒａ４ｘ４＿ｐｒｅｄ＿ｍｏｄｅ，  ｉｎｔｒａ＿ｃｈｒｏｍａ＿ｐｒｅｄ＿ｍｏｄｅ；
第１０グループ：ｒｅｆ＿ｉｄｘ；
第１１グループ：ａｂｓ＿ｍｖｄ；
第１２グループ：ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ；
第１３グループ：ｍｂ＿ｄｑ＿ｄｅｌｔａ；
第１４グループ：復号化ＤＣ係数ｉｎｔｒａ１６＊１６モードｃｏｄｅｄ＿ｂｌｏｃｋ＿ｆｌａｇ，  ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１；
第１５グループ：復号化ＡＣ係数ｉｎｔｒａ１６＊１６モードｃｏｄｅｄ＿ｂｌｏｃｋ＿ｆｌａｇ，  ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１；
第１６グループ：復号化係数非ｉｎｔｒａ１６＊１６モードｃｏｄｅｄ＿ｂｌｏｃｋ＿ｆｌａｇ，  ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１；
第１７グループ：復号化ＤＣ係数クロマモードｃｏｄｅｄ＿ｂｌｏｃｋ＿ｆｌａｇ，  ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１；
第１８グループ：復号化ＡＣ係数クロマモードｃｏｄｅｄ＿ｂｌｏｃｋ＿ｆｌａｇ，  ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，  ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１。
【００６９】
説明すべきは、上記のコンテキスト確率モデルのグルーピング方式が柔軟で、現在のある種類のシンタックス要素を復号化するのに必要なコンテキスト確率モデルがコンテキスト確率モデルキャッシュ１０８を介してアクセスされることを確保すればよい。
【００７０】
制御ユニット２００は、復号化ユニット１００のＣＡＢＡＣ復号化過程に対して配置と制御を行うコンピュータープログラムであって、中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）またはディジタルシグナルプロセッサ（ＤＳＰ：Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）などにインストールされて動作し、インターフェースユニット３００を介して復号化ユニット１００に対する復号化配置と制御を実現し、具体的に以下のことを含む。
【００７１】
（１）復号化ユニット１００に対してシステム初期化を行う。
（２）ＣＡＢＡＣの復号化過程中に必要な周辺マクロブロック情報及びビットストリームを配置する。
（３）復号化ユニット１００から復号化して得られた結果データを読み出す。
（４）制御信号を送信し、復号化ユニット１００のＣＡＢＡＣ復号化過程の実行を制御する。
本発明の実施例では、マクロブロックを復号化する前に、復号化ユニット１００がビットストリームを充填する必要があるかどうかを制御ユニット２００により検出し、必要がある場合、まずビットストリームを充填してから、またマクロブロックの復号化フローを開始する。
【００７２】
図６、図７はそれぞれ復号化ユニット１００がＰ、Ｂフレーム及びＩフレームを復号化することを制御ユニット２００により制御する実現フローを示す。
【００７３】
フロー全体は以下の二つの部分に分けられる。一つは、制御ユニット２００が復号化ユニット１００に対する配置であり、即ち制御ユニット２００が復号化ユニット１００へ配置データ、ビットストリーム及び制御データを書き込む。もう一つは、制御ユニット２００が復号化ユニット１００からデータを読み出すことであり、この読み出すデータは復号化ユニット１００が制御ユニット２００の配置と制御によって復号化し得られる相応のシンタックス要素である。
【００７４】
制御ユニット２００が復号化ユニット１００に対する配置過程は、復号化ｓｋｉｐ情報の配置、復号化ｆｉｅｌｄ情報の配置、復号化ｍｂ＿ｌａｙｅｒ情報の配置、及びビットストリームのロード（ｌｏａｄ）を含む。制御ユニット２００が復号化ユニット１００からデータを読み出す過程は、ｓｋｉｐ情報の読取、ｆｉｅｌｄ情報の読取、ｍｂ＿ｌａｙｅｒ層復号化情報の読取、およびｅｎｄ＿ｓｌｉｃｅ情報の読取を含む。
【００７５】
図６、図７からわかるように、Ｐ、Ｂフレームの復号化とＩフレームの復号化の区別として、制御ユニット２００の復号化ユニット１００に対する配置にｓｋｉｐ復号化に対する制御過程が追加され、復号化して得られるｓｋｉｐの値が１である場合、マクロブロック層全体の復号化が完成され、そうでない場合、引き続きマクロブロック層のシンタックス要素が復号化され、この過程はＩフレームの復号化の制御過程と同じである。
【００７６】
以下、ＰフレームとＢフレームの復号化過程を説明する。
【００７７】
ステップＳ６０１で、制御ユニット２００が復号化ユニット１００に対してｓｋｉｐシンタックス要素の復号化に必要な周辺マクロブロック情報を配置し、その後ｓｋｉｐ復号化の開始信号を送信する。
ステップＳ６０２で、開始信号を受信した復号化ユニット１００がシンタックス要素ｓｋｉｐの復号化を開始する。
ステップＳ６０３で、制御ユニット２００が復号化ユニット１００が復号化して得られたｓｋｉｐの結果値を読み出す。
ステップＳ６０４で、制御ユニット２００がｓｋｉｐの値が１であるかどうかを判断し、そうである場合、マクロブロック全体に対する復号化を終了し、そうでない場合、ステップＳ６０５に進む。
ステップＳ６０５で、制御ユニット２００がシンタックス要素ｆｉｅｌｄを復号化する必要があるかどうか、即ちｄｅｃ＿ｆｉｅｌｄ＿ｆｌａｇが１であるかどうかを判断し、そうである場合、ステップＳ６０６に進み、そうでない場合、ステップＳ６０９に進む。
ステップＳ６０６で、制御ユニット２００が復号化ユニット１００に対してシンタックス要素ｆｉｅｌｄの復号化に必要な周辺マクロブロック情報を配置し、且つｆｉｅｌｄ復号化の開始信号を送信する。ここで、ｍｂａｆｆモードにおいて、復号化する現在のマクロブロックがマクロブロック対での上のマクロブロックである場合、または、復号化する現在のマクロブロックがマクロブロック対での下のマクロブロックであるが上のマクロブロックがｓｋｉｐマクロブロックである場合に、シンタックス要素Ｆｉｅｌｄを復号化する。
【００７８】
ステップＳ６０７で、ｆｉｅｌｄ復号化の開始信号を受信した復号化ユニット１００がシンタックス要素ｆｉｅｌｄの復号化を開始する。
ステップＳ６０８で、復号化ユニット１００がシンタックス要素ｆｉｅｌｄを復号化した後、制御ユニット２００がシンタックス要素ｆｉｅｌｄの復号化して得られた結果データを読み出す。
ステップＳ６０９で、制御ユニット２００が復号化ユニット１００に対してｍｂ＿ｌａｙｅｒの復号化に必要な周辺マクロブロック情報を配置し、且つｍｂ＿ｌａｙｅｒ復号化の開始信号を送信する。
ステップＳ６１０で、ｍｂ＿ｌａｙｅｒ復号化の開始信号を受信した復号化ユニット１００がｍｂ＿ｌａｙｅｒ層のシンタックス要素の復号化を開始する。
ステップＳ６１１で、復号化ユニット１００が復号化を完了した後、制御ユニット２００がｍｂ＿ｌａｙｅｒ層の復号化して得られた結果データを読み出す。
ステップＳ６１２で、ｌｏａｄ＿ｂｉｔｓ＿ｆｌａｇが１であるかどうかを復号化ユニット１００が判断し、即ち復号化ユニット１００にビットストリームを充填する必要があるかどうかを判断し、ｆｌａｇが１である場合、Ｓ６１３に進み、そうでない場合、プロセスを終了する。
ステップＳ６１３で、復号化ユニット１００が内部割り込みに入り、復号化ユニット１００へのビットストリームの充填を制御ユニット２００に要求し、ビットストリームの充填が完了した後、復号化ユニット１００が自動的に内部割り込みを取り消し、復号化を回復する。説明すべきは、ｍｂ＿ｌａｙｅｒの復号化が完了した後、復号化ユニット１００の内部のビットストリームメモリ１０２１が空であるかどうかを制御ユニット２００が検査し、空である場合、制御ユニット２００が復号化ユニット１００へビットストリームを充填するが、これは、多すぎの割り込み回数によって複合化ユニット１００の復号化効率が低下されることを勘案して、復号化ユニット１００の内部のビットストリームメモリ１０２１のビットストリームを満にして、ｍｂ＿ｌａｙｅｒの復号化過程中にビットストリームの消耗による多すぎの割り込み回数を減少させるためである。
【００７９】
ステップＳ６１４で、制御ユニット２００がｍｂ＿ｌａｙｅｒの復号化して得られた現在のマクロブロックがＩ＿ＰＣＭタイプであると判断し、制御ユニット２００が復号化ユニット１００からビットストリームが消耗された情報を得た場合、復号化ユニット１００の外部のＩ＿ＰＣＭに対応するビットストリーム部分を直接にマクロブロックに還元し、また剰余のビットストリームを改めて復号化ユニット１００に充填する。このビットストリームの充填過程では復号化ユニット１００のビットストリームメモリ１０２１がすべて空であるとデフォルトする。
ステップＳ６１５で、制御ユニット２００が改めて充填したビットストリームのｍｂ＿ｌａｙｅｒのシンタックス要素を復号化ユニット１００が復号化する。
ステップＳ６１６で、復号化ユニット１００がシンタックス要素ｅｎｄ＿ｓｌｉｃｅを復号化する。ここで、シンタックス要素ｅｎｄ＿ｓｌｉｃｅは、普通、ｍｂ＿ｌａｙｅｒ層で既に復号化され、且つ制御ユニット２００によって読み出されるが、マクロブロックがＩ＿ＰＣＭタイプである場合は特例で、この場合、制御ユニット２００でＩ＿ＰＣＭデータを還元し、ビットストリームを改めて復号化ユニット１００に充填した後、復号化ユニット１００によりｅｎｄ＿ｓｌｉｃｅの復号化を完了する必要があり、復号化ユニット１００が復号化を完了した後、制御ユニット２００によりシンタックス要素ｅｎｄ＿ｓｌｉｃｅを読み出す。
【００８０】
図７は、Ｉフレームに対する復号化の過程を示し、ステップＳ７０１〜７１２と上記ステップＳ６０５〜６１６が同じであるため、説明を省略する。
【００８１】
インターフェースユニット３００は、復号化ユニット１００と制御ユニット２００のやりとり情報の転送を行い、復号化ユニット１００が復号化過程中に配置必要なビットストリーム、周辺マクロブロック情報及び制御信号を転送し、ここで周辺マクロブロック情報には以下を含む。
【００８２】
（１）隣接マクロブロックが存在するかの信号ａｖａｉｂｌｅ＿ｆｌａｇ、
（２）隣接マクロブロックがｓｋｉｐブロックであるかの信号ｓｋｉｐ＿ｆｌａｇ、
（３）隣接マクロブロックのフレームフィールドモード信号ｆｉｅｌｄ＿ｆｌａｇ、
（４）隣接マクロブロックのマクロブロックｔｙｐｅ信号及びｓｕｂ＿ｍｂ＿ｔｙｐｅ信号、
（５）隣接マクロブロックのＣＢＰ信号及びＣＢＦ信号、
（６）隣接マクロブロックがイントラマクロブロックであるか、またはインターマクロブロックであるかの信号、
（７）隣接マクロブロックのクロマ予測モード信号、
（８）隣接マクロブロックｄｑｕａｎｔの信号、
（９）隣接マクロブロックのｍｖｄと参照フレームｒｅｆｆｒａｍｅの情報、
（１０）現在のｓｌｉｃｅがｍｂａｆｆモードにあるかの信号、
（１１）現在のｓｌｉｃｅタイプ信号、即ち現在のフレームがＩフレームか、Ｐフレームか、それともＢフレームかの信号、
（１２）現在のｓｌｉｃｅベッダーを復号化して得られるｎｕｍ＿ｒｅｆｉｄｘ０＿ｍｉｎｕｓ１、ｎｕｍ＿ｒｅｆｉｄｘ１＿ｍｉｎｕｓ１、ｓｌｉｃｅ＿ｄａｔａ＿ｐａｒｔｉｔｉｏｎ及びｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄｆｌａｇの情報。
【００８３】
インターフェースユニット３００には一連のレジスタと1組のメモリＲＡＭが含まれる。インターフェースユニット３００は、各レジスタとＲＡＭでの各データセグメントのためにアドレスを設定し、制御ユニット２００はこれらのアドレスをアクセスし、且つアドレスセグメントに対応するデータの読み書きを行うことによって、インターフェースユニット３００とのやりとりを完成する。
【００８４】
図８に示すように、インターフェースユニット３００は、デコード回路３０１と、配置レジスタ組３０２と、出力結果レジスタ組３０３と、出力結果メモリ３０４とを含む。
【００８５】
デコード回路３０１は、制御ユニット２００からインターフェースユニット３００へのアドレスデコードをすることで、制御ユニット２００のインターフェースユニット３００に対するデータ読み書きを実現する。
【００８６】
配置レジスタ組３０２は、制御ユニット２００がデコード回路３０１を介して書き込んだ、復号化ユニット１００に対して復号化制御を行う配置情報を記憶する。
【００８７】
復号化ユニット１００は、復号化して得られた結果をインターフェースユニット３００に書き込み、得られたＭＶＤデータとｃｏｅｆｆデータを出力結果メモリ３０４に書き込み、他のシンタックス要素を直接に出力結果レジスタ組３０３に書き込む。制御ユニット２００は、対応のアドレス空間のデータを読み取ることによって、復号化ユニット１００が復号化して得られた結果データを読み出すことができる。
【００８８】
説明すべきは、本発明では、インターフェースユニット３００の隣接マクロブロックに対する配置方法が複数あって、完全の上隣接マクロブロック情報と左隣接マクロブロック情報を配置してもよく、上隣接マクロブロック情報のみを配置し、左隣接マクロブロック情報を配置しなく、左隣接マクロブロック情報を復号化ユニット１００自身によりメンテナンスしてもよく、制御信号のみを配置し、他の参照のシンタックス要素情報をすべて復号化ユニット１００によりメンテナンスしてもよい。
【００８９】
上記は、本発明の好ましい実施例にすぎず、本発明の保護範囲を限定するものではない。本発明の精神と原則内で行われる種々の修正、均等切替、改善などは全て本発明の保護範囲内に含まれるべきである。
【図面の簡単な説明】
【００９０】
【図１】本発明に係る復号化システムの構成図である。
【図２】本発明に係る復号化システムの復号化ユニットの構成図である。
【図３】本発明の復号化ユニットが復号化したシンタックス要素の構成図である。
【図４】本発明の復号化ユニットがｍｂ＿ｌａｙｅｒ層シンタックス要素を復号化する状態を示す図である。
【図５】本発明に係る好ましい実施例の復号化ユニットの構成図である。
【図６】本発明がＰ、Ｂフレームのマクロブロックの復号化を実現するフローチャートである。
【図７】本発明がＩフレームのマクロブロックの復号化を実現するフローチャートである。
【図８】本発明に係る復号化システムのインターフェースユニットの構成図である。
【符号の説明】
【００９１】
１００  制御ユニット
２００  複合化ユニット
３００  インターフェースユニット
【図１】
2009504039.tif 000003
【図２】
2009504039.tif 000004
【図３】
2009504039.tif 000005
【図４】
2009504039.tif 000006
【図５】
2009504039.tif 000007
【図６】
2009504039.tif 000008
【図７】
2009504039.tif 000009
【図８】
2009504039.tif 000010
【手続補正書】
【提出日】平成20年2月1日(2008.2.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンテキストベース適応型２値算術復号化装置であって、復号化の必要があるビットストリームに対してマクロブロック層ですべてのシンタックス要素を復号化し、前記シンタックス要素を送信することを特徴とする装置。
【請求項２】
前記復号化装置が、
復号化制御信号を受信し、前記復号化制御信号を出力する復号化制御ユニットと、
復号化制御ユニットからの復号化制御信号を受信し、すべてのシンタックス要素をマクロブロック層で復号化し、前記シンタックス要素を送信する復号化管理ユニットと、
コンテキスト確率モデルを記憶し、周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、復号化管理ユニットに出力して復号化を行い、前記復号化管理ユニットから前記シンタックス要素を受信し、前記シンタックス要素情報を復号化の必要がある後続のマクロブロックの周辺マクロブロック情報として記憶する復号化情報管理ユニットと、
を含むことを特徴とする請求項１に記載の装置。
【請求項３】
前記復号化管理ユニットが、
ビットストリームを受信し、前記ビットストリームを送信するビットストリーム管理モジュールと、
ビットストリーム管理モジュールからのビットストリームを受信し、前記ビットストリームに対して復号化を行う単ｂｉｎ復号化モジュールと、
単ｂｉｎ復号化モジュールからの単ｂｉｎ復号化結果を受信し、前記単ｂｉｎ復号化結果をシンタックス要素に組立て、前記シンタックス要素を出力し、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を後続のシンタックス要素の復号化の参照情報とする再組立ｂｉｎモジュールと、
を含むことを特徴とする請求項２に記載の装置。
【請求項４】
前記復号化情報管理ユニットが、
シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶し、コンテキスト確率モデル指示信号を受信し、現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを前記コンテキスト確率モデル指示信号によって復号化管理ユニットに提供するコンテキスト確率モデルメモリと、
復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、
周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の前記ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、
を含むことを特徴とする請求項２に記載の装置。
【請求項５】
前記復号化情報管理ユニットが、
シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶し、コンテキスト確率モデル指示信号を受信し、現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを前記コンテキスト確率モデル指示信号によって復号化管理ユニットに提供するコンテキスト確率モデルメモリと、
復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、
周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の前記ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、
を含むことを特徴とする請求項３に記載の装置。
【請求項６】
前記復号化情報管理ユニットが、シンタックス要素を復号化するのに必要なコンテキスト確率モデルをキャッシュし、コンテキスト確率モデル選択モジュールによって出力されたコンテキスト確率モデル指示信号に従って対応のコンテキスト確率モデルを単ｂｉｎ復号化モジュールに送信し、同時に、単ｂｉｎ復号化モジュールの更新後のコンテキスト確率モデルを受信し、更新後のコンテキスト確率モデルをコンテキスト確率モデルメモリに書き戻すコンテキスト確率モデルキャッシュ、をさらに含むことを特徴とする請求項５に記載の装置。
【請求項７】
前記ビットストリーム管理モジュールが、ビットストリームを記憶し、単ｂｉｎ復号化モジュールに提供するビットストリームメモリ、をさらに含むことを特徴とする請求項３に記載の装置。
【請求項８】
前記周辺マクロブロック情報メンテナンスモジュールが、
左隣接マクロブロック情報を記憶する第１グループのレジスタと、
上隣接マクロブロック情報を記憶する第２グループのレジスタと、をさらに含むことを特徴とする請求項４又は請求項５に記載の装置。
【請求項９】
前記コンテキスト確率モデルキャッシュが、単ｂｉｎ復号化モジュールに必要なコンテキスト確率モデルをキャッシュする、複数のレジスタを備えるレジスタ組、をさらに含むことを特徴とする請求項６に記載の装置。
【請求項１０】
コンテキストベース適応型２値算術復号化システムであって、
インターフェースユニットと、
請求項１〜９のいずれか１項に記載のコンテキストベース適応型２値算術復号化装置と、
前記インターフェースユニットを介して前記コンテキストベース適応型２値算術復号化装置にビットストリームを充填し、前記インターフェースユニットを介して前記コンテキストベース適応型２値算術復号化装置に復号化配置信号及び復号化制御信号を送信し、前記インターフェースユニットを介して前記コンテキストベース適応型２値算術復号化装置からシンタックス要素を受信する制御ユニットと、
を含むことを特徴とするシステム。
【請求項１１】
前記インターフェースユニットが、
前記制御ユニットから前記インターフェースユニットへのデータ読み書きに対してアドレスデコードを行うデコード回路と、
前記制御ユニットがデコード回路を介して書き込んだ復号化配置情報を記憶する配置レジスタ組と、
前記コンテキストベース適応型２値算術復号化装置からの前記復号化結果を記憶する出力結果メモリ及び出力結果レジスタ組と、を含むことを特徴とする請求項１０項に記載のシステム。
【請求項１２】
前記復号化制御信号が、ｓｋｉｐの復号化の開始信号と、ｆｉｅｌｄの復号化の開始信号と、ｍｂ＿ｌａｙｅｒの復号化の開始信号と、を含むことを特徴とする請求項１０項に記載のシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
ＣＡＢＡＣ２値算術復号化は再帰的空間分割（ｒｅｃｕｒｓｉｖｅ  ｉｎｔｅｒｖａｌ  ｓｕｂｄｉｖｉｓｉｏｎ）の原則に基づき動作し、現在のｂｉｎを復号化するとき、現在のｂｉｎの０または１の出現確率値（ｐで表す）を知る必要があり、この確率は現在のｂｉｎに対応するコンテキスト確率モデルによって決定される。まず、優勢シンボル（ＭＰＳ：  Ｍｏｓｔ  Ｐｒｏｂａｂｌｅ  Ｓｙｍｂｏｌ）と劣勢シンボル（ＬＰＳ  ：Ｌｅａｓｔ  Ｐｒｏｂａｂｌｅ  Ｓｙｍｂｏｌ）を区別し、それぞれは０または１に対応される。劣勢シンボルの値（ｖａｌＬＰＳ）と優勢シンボルの値（ｖａｌＭＰＳ）は１または０で表され、復号化する現在のｂｉｎに対応するコンテキスト確率モデルで体現される。現在のｂｉｎに対応する優勢シンボルの値をｐ（０）で表すと、劣勢シンボルの値はｐ（１）＝１−  ｐ（０）である。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
表中の各値はそれぞれ劣勢シンボルの一つの値ｐＬＰＳに対応する。状態表の構成はｐＳｔａｔｅＩｄｘ値の増加に伴ってｐＬＰＳの値が次第に小さくなり、ｐＳｔａｔｅＩｄｘ＝０の場合、対応の劣勢シンボル値は０．５である。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】削除
【補正の内容】
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】削除
【補正の内容】
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】削除
【補正の内容】
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】削除
【補正の内容】
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】削除
【補正の内容】
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】削除
【補正の内容】
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
コンテキストベース適応型２値算術復号化装置であって、復号化の必要があるビットストリームに対してマクロブロック層ですべてのシンタックス要素を復号化し、前記シンタックス要素を送信する。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
前記復号化装置が、復号化制御信号を受信し、前記復号化制御信号を出力する復号化制御ユニットと、復号化制御ユニットからの復号化制御信号を受信し、すべてのシンタックス要素をマクロブロック層で復号化し、前記シンタックス要素を送信する復号化管理ユニットと、コンテキスト確率モデルを記憶し、周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、復号化管理ユニットに出力して復号化を行い、前記復号化管理ユニットから前記シンタックス要素を受信し、前記シンタックス要素情報を復号化の必要がある後続のマクロブロックの周辺マクロブロック情報として記憶する復号化情報管理ユニットと、を含む。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００２８
【補正方法】変更
【補正の内容】
【００２８】
前記復号化管理ユニットが、
ビットストリームを受信し、前記ビットストリームを送信するビットストリーム管理モジュールと、ビットストリーム管理モジュールからのビットストリームを受信し、前記ビットストリームに対して復号化を行う単ｂｉｎ復号化モジュールと、単ｂｉｎ復号化モジュールからの単ｂｉｎ復号化結果を受信し、前記単ｂｉｎ復号化結果をシンタックス要素に組立て、前記シンタックス要素を出力し、後続の復号化に必要な周辺マクロブロック情報のシンタックス要素を後続のシンタックス要素の復号化の参照情報とする再組立ｂｉｎモジュールと、を含む。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
前記復号化情報管理ユニットが、
シンタックス要素を復号化するのに必要なコンテキスト確率モデルを記憶し、コンテキスト確率モデル指示信号を受信し、現在のシンタックス要素のｂｉｎを復号化するのに必要なコンテキスト確率モデルを前記コンテキスト確率モデル指示信号によって復号化管理ユニットに提供するコンテキスト確率モデルメモリと、復号化する現在のマクロブロックの周辺マクロブロック情報をメンテナンスする周辺マクロブロック情報メンテナンスモジュールと、周辺マクロブロック情報メンテナンスモジュールによって提供された周辺マクロブロック及び現在のマクロブロック情報に従って現在のシンタックス要素の前記ｂｉｎを復号化するのに必要なコンテキスト確率モデルを選択し、コンテキスト確率モデルメモリへコンテキスト確率モデル指示信号を出力するコンテキスト確率モデル選択モジュールと、を含む。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
前記コンテキスト確率モデルキャッシュが、単ｂｉｎ復号化モジュールに必要なコンテキスト確率モデルをキャッシュする、複数のレジスタを備えるレジスタ組、をさらに含む。
コンテキストベース適応型２値算術復号化システムであって、インターフェースユニットと、請求項１〜９のいずれか１項に記載のコンテキストベース適応型２値算術復号化装置と、前記インターフェースユニットを介して前記コンテキストベース適応型２値算術復号化装置にビットストリームを充填し、前記インターフェースユニットを介して前記コンテキストベース適応型２値算術復号化装置に復号化配置信号及び復号化制御信号を送信し、前記インターフェースユニットを介して前記コンテキストベース適応型２値算術復号化装置からシンタックス要素を受信する制御ユニットと、を含む。
前記インターフェースユニットが、前記制御ユニットから前記インターフェースユニットへのデータ読み書きに対してアドレスデコードを行うデコード回路と、前記制御ユニットがデコード回路を介して書き込んだ復号化配置情報を記憶する配置レジスタ組と、前記コンテキストベース適応型２値算術復号化装置からの前記復号化結果を記憶する出力結果メモリ及び出力結果レジスタ組と、を含む。
前記復号化制御信号が、ｓｋｉｐの復号化の開始信号と、ｆｉｅｌｄの復号化の開始信号と、ｍｂ＿ｌａｙｅｒの復号化の開始信号と、を含む。
【国際調査報告】
2009504039.tif 000011
2009504039.tif 000012
2009504039.tif 000013
2009504039.tif 000014