(57)【要約】【課題】算術符号化回路の回路規模、バス帯域、及びバッファ量の適切な低減を図る。【解決手段】算術符号化回路は、バスと、シンタックス要素を２値化して２値データ列を生成して、バスを介してバッファに出力する２値化部と、前記バッファからの２値データ列をバスを介して取得して、コンテキスト生成処理によってコンテキスト番号を設定するコンテキスト生成部と、を含む算術符号化回路が得られる。【選択図】図１
2018082268.tif 000002
【特許請求の範囲】
【請求項１】
シンタックス要素を受け、当該シンタックス要素を２値化して２値データ列を生成する２値化部と、
前記２値データ列をコンテキスト生成処理してコンテキスト番号を生成するコンテキスト生成部と、
前記２値化部及び前記コンテキスト生成部に接続されたバスと、を備え、
前記バスには前記２値データ列を格納するバッファを接続できる算術符号化回路。
【請求項２】
前記バスを介して前記バッファから取得した前記２値データ列から前記コンテキスト生成処理によって得られたコンテキスト番号を参照して所要のコンテキストを選択するコンテキスト選択部と、
前記２値化部で生成された２値データ列と、前記コンテキスト選択部の選択した所要のコンテキストとを参照して前記２値データ列を符号化する符号化部と、
を更に含む請求項１に記載の算術符号化回路。
【請求項３】
前記バッファは、前記算術符号化回路以外にも接続され、
前記バスは、前記バッファと該算術符号化回路以外のエンコーダ装置内の回路との共通バスとしても使用される、
請求項１又は２記載の算術符号化回路。
【請求項４】
前記バッファに対して前記バスを介して接続された前記２値化部は、前記２値データ列を復号化する回路のうち、前記２値データ列からコンテキスト番号を表わすビット数よりも少ないビット数を有するコンテキスト番号生成補助情報を生成する回路を少なくとも含み、
前記バッファに対して前記バスを介して接続された前記コンテキスト生成部は、前記コンテキスト番号生成補助情報を前記バスを介して受け、当該コンテキスト番号生成補助情報に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を生成し、前記コンテキスト選択部に出力する
請求項２又は３に記載の算術符号化回路。
【請求項５】
前記コンテキスト番号生成補助情報は、ライスパラメータであり、
前記２値化部は、前記２値データ列として 前記シンタックス要素を 量子化係数を示すビット列に２値化すると共に、２値化した量子化係数を示すビット列に対応するライスパラメータ列を出力し、
前記コンテキスト生成部は、前記バッファに記憶された量子化係数を示すビット列と該ビット列に対応するライスパラメータとを取得して、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、前記コンテキスト選択部に出力する
請求項１〜４の何れか一項に記載の算術符号化回路。
【請求項６】
前記バッファに対して前記バスを介して接続された前記コンテキスト生成部は、前記２値データ列を復号化する回路のうち、前記２値データ列からライスパラメータを生成する回路を少なくとも含まず、
前記バッファに記憶された２値データ列からライスパラメータを生成せずに、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、前記コンテキスト選択部に出力する
請求項５に記載の算術符号化回路。
【請求項７】
前記バッファに前記バスを介して接続された前記２値化部は、
前記２値データ列を復号化する回路のうち、前記２値データ列からライスパラメータを生成する回路を少なくとも含み、
シンタックス要素を２値化して２値データ列を生成すると共に、コンテキスト番号の生成を補助するライスパラメータを前記シンタックス要素から生成して、バッファに出力し、
前記バッファの後段にある前記コンテキスト生成部は、前記バッファに記憶された２値データ列からライスパラメータを生成せずに、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、前記コンテキスト選択部に出力する
請求項６記載の算術符号化回路。
【請求項８】
請求項１から７の何れか一項に記載の算術符号化回路を具備したエンコーダ装置。
【請求項９】
シンタックス要素を２値化して２値データ列を生成して、バスを介してバッファに格納する第１の工程と、
前記外部記憶部にバッファされた前記２値データ列を参照し、コンテキスト生成処理によってコンテキスト番号を設定する第２の工程と、
設定したコンテキスト番号を参照して所要のコンテキストを選択する第３の工程と、
生成された２値データ列と、選択された所要のコンテキストとを参照して前記２値データ列を符号化して出力する第４の工程とを、
を含む算術符号化回路の算術符号化方法。
【請求項１０】
該算術符号化回路は、Ｈ．２６５ＨＥＶＣ方式でシンタックス要素を符号化するＣＡＢＡＣ回路であり、
前記第１の工程では、前記２値データ列として シンタックス要素を 量子化係数を示すビット列に２値化すると共に、２値化した量子化係数を示すビット列に対応するライスパラメータ列を前記外部記憶部に出力し、
前記第２の工程では、前記外部記憶部にバッファされた量子化係数を示すビット列と該ビット列に対応するライスパラメータとを取得して、前記２値データ列からライスパラメータを生成せずに、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、
前記第３の工程では、設定されたコンテキスト番号を参照して所要のコンテキストを選択し、
前記第４の工程では、生成された２値データ列と、選択された所要のコンテキストとを参照して前記２値データ列を符号化する、
請求項９記載の算術符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、可変長符号化を実行する算術符号化回路、エンコーダ装置、及び算術符号化方法に関する。
【背景技術】
【０００２】
昨今、可変長符号化を実行する算術符号化方式は、画像や映像を符号化する際によく用いられている。関連する技術は、例えば、非特許文献１や、特許文献１、２、及び３に開示されている。非特許文献１は、Ｈ．２６５ ＨＥＶＣ（High Efficiency Video Coding）に関連する技術を開示しており、特許文献１、２及び３は、Ｈ．２６４ ＡＶＣ（Advanced Video Coding）（ＭＰＥＧ−４ ＡＶＣ）に関連する技術を開示している。Ｈ．２６５ ＨＥＶＣ及びＨ．２６４ ＡＶＣは、いずれもＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding）を採用している。以下詳説する。
【０００３】
非特許文献１には、ＩＴＵ―Ｔ 勧告Ｈ．２６５ 規格に基づく映像符号化方式であるＨＥＶＣが記載されている。このＨＥＶＣ方式は、算術符号化回路（専用回路）によって映像等を次のように符号化する。デジタル化された映像の各フレームは符号化ツリーユニット（CTU：Coding Tree Unit）に分割され、ラスタスキャン順に各符号化ツリーユニットが符号化される。次に、各符号化ツリーユニットは、クアッドツリー構造を形成するように、符号化ユニット（CU：Coding Unit）に分割されて符号化される。各符号化ユニットは、予測ユニット（PU：Prediction Unit）に分割されて予測される。また、各符号化ユニットの予測誤差は、クアッドツリー構造で、変換ユニット（TU：Transform Unit）に分割されて周波数変換される。周波数変換後の予測誤差は、変換ユニット単位で量子化された後に、算術符号化回路で符号化される。
【０００４】
次に、特許文献１、２及び３を説明する。特許文献１、２、及び３には、Ｈ．２６４ ＡＶＣ規格に基づく映像符号化方式に関連する技術が記載されている。
【０００５】
特許文献１に記載されている符号化回路は、２値データ列を生成する２値化部と、２値化部が生成した２値データ列を一時保持するバッファ部と、バッファ部が一時保持した２値データ列を２値算術符号化する２値算術符号化部を具備する。また、この符号化回路は、バッファされた２値データ列を参照して、２値化部の入力データ列（シンタックス要素）を復号すると共にコンテキスト計算に用いる復号信号を生成する２値復号部を具備する。この２値復号部は、バッファ部の後段に設けられて、復号したシンタックス要素と復号信号をコンテキスト計算部に供給する。コンテキスト計算部は、２値復号化部から供給された各種情報を用いて、２値データに対応したコンテキスト番号（コンテキストインデックス）を計算し、計算したコンテキスト番号をコンテキストメモリーに供給する。コンテキストメモリーは、コンテキスト計算部から指定されたコンテキスト番号に基づいてコンテキストを２値算術符号化部に供給する。このように、特許文献１は２値化部によって生成された２値データ列を直接バッファ部に格納している。
【０００６】
特許文献２に記載されている符号化回路は、２値化部と、コンテキスト計算部と、２値化部及びコンテキスト計算部に接続されたバッファ部と、バッファ部に一時保持された２値データ列を二値算術符号化する符号化部を具備する。また、コンテキスト計算部は、バッファされる前の２値データ列を使用して、２値データに対応したコンテキスト番号を計算し、計算したコンテキスト番号をバッファ部に供給する。また、コンテキストメモリーは、バッファ部を介してコンテキスト番号を得る。特許文献２は、２値化部で生成された２値データ列とコンテキスト計算部で計算されたコンテキストインデックスとを直接バッファ部に格納している。
【０００７】
特許文献３に記載されている符号化回路は、２値化部と、記憶部（バッファ）と、コンテキスト計算部と、コンテキストメモリー部と、２値符号化部を具備する。この符号化回路は、２値データを記憶する記憶部の他に、コンテキストインデックスを格納するコンテキストメモリー部と、初期化パラメータからコンテキスト情報の初期値を生成する初期値生成部を備えている。この初期値生成部は、記憶部に記憶された２値データに対応したスライスの初期パラメータから、その２値データに対応するコンテキスト情報の初期値を生成して、コンテキストメモリーに供給する。なお、特許文献３では、２値復号化部の記載が省略されており、コンテキスト計算部が２値復号化部の処理動作も受け持っている。特許文献３においても、２値化部は直接記憶部に接続され、且つ、コンテキスト計算部及び初期値生成部は直接コンテキストメモリー部に接続されている。なお、特許文献１、２及び３では、コンテキスト番号を得るため演算回路をコンテキスト計算部と呼んでいるが、本明細書では、コンテキスト番号を得るため演算回路をコンテキスト生成部と呼ぶ。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−１４１５３０号公報
【特許文献２】特開２００８−１４１５３１号公報
【特許文献３】特開２００９−０８９１７９号公報
【非特許文献】
【０００９】
【非特許文献１】Dajiang Zhou, Jinjia Zhou, Wei Fei, and Satoshi Goto 共著，   “Ultra-high-throughput VLSI architecture of H.265/HEVC CABAC encoder for UHDTV applications”, IEEE Transactions on Circuits and Systems for Video Technology (TCSVT), Vol. 25, No. 3, pp. 497-507, March 2015.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
一方、図７（ａ）はＨ．２６５ ＨＥＶＣに準拠した算術符号化回路を概略的に示している。図７（ａ）に示された算術符号化回路で符号化を行う手順を説明する。多値信号で入力されたCU、PU、TUの構成情報（それぞれのサイズ等）及び量子化後の量子化係数は、２値化部で２値データ列（“0”又は“1”のデータ列）に変換される。２値データ列への変換は、その数値が表す情報（シンタックス要素）毎に定められた変換方法に従って変換される。
【００１１】
算術符号化回路では、入力されるシンタックス要素毎の２値データと シンタックス要素毎に定められたコンテキストと を用いて符号化を行うＣＡＢＡＣが実行される。この方式では、あるシンタックス要素のシンボル列が多値である場合、その何番目のシンボルかによっても 異なるコンテキストをとる場合もある。なお、コンテキストは、多く出現する方のシンボル（優勢シンボル：MPS：Most Probability Symbol）と、その発生確率の組からなる。ＨＥＶＣ方式において、コンテキストは発生確率とその変化は６１通りの状態数とその状態遷移によって表現される。
【００１２】
また、Ｈ．２６５ＨＥＶＣにおいては、コンテキストによる発生確率を用いない、コンテキスト非依存な特殊なシンボルが存在する。このようなシンボルはバイパスシンボルと呼ばれ、優勢シンボルの発生確率が常に５０％だと固定して処理する。一方、通常のコンテキストを用いるシンボルは、コンテキストシンボルと呼ばれる。バイパスシンボルは、発生確率を固定することにより、コンテキストを更新する必要がなくなるため、コンテキストシンボルよりも符号化の演算量が削減できる。
【００１３】
この算術符号化回路は、シンタックス要素（シンタックスエレメント）列を入力として受け付けて ２値化とコンテキスト生成を行い、２値データ列とコンテキスト番号とをそれぞれ出力する ２値化及びコンテキスト生成部 と、コンテキスト番号を参照して該当コンテキストを選択して符号化部に送信するコンテキスト選択部と、２値データ列とコンテキスト選択部から得たコンテキストを用いて符号化する符号化部と、から構成されている。なお、この図７（ａ）の算術符号化回路には、２値データをバッファする記憶部が設けられていない。
【００１４】
また、図７（ｂ）に示すように、２値データ列及びコンテキスト番号をバッファする記憶部を２値化及びコンテキスト生成部に直接接続した構成の算術符号化回路も検討されている。この記憶部を設けることで、算術符号化回路は、符号化ツリーユニット（CTU）毎の画像の複雑度等によって生じる２値データ列の変動量を吸収できる。一方、仮に記憶部で２値データ列の変動量を吸収しきれずに２値データ列が欠落すると、正しく復号できなくなる。このため、記憶部は適切な容量の有する必要がある。
【００１５】
この図７（ｂ）に示す算術符号化回路は概略つぎのように動作する。 
まず、２値化及びコンテキスト生成部は、入力されたシンタックス要素から、２値データ列を生成すると同時に、各１bitのシンボル毎のコンテキスト番号を生成する。生成された２値データ列とコンテキスト番号は、接続されている記憶部に一時蓄積される。
【００１６】
次に、適切なタイミングで２値データとコンテキスト番号が記憶部から読み出され、コンテキスト番号はコンテキスト選択部に、２値データは符号化部に入力される。
【００１７】
コンテキスト選択部では、入力されたコンテキスト番号から、その番号に該当するコンテキストが読み出されて、読み出されたコンテキストが符号化部に入力される。符号化部では、入力された２値データとコンテキストを用いて２値データを符号化し、符号化データが出力される。
【００１８】
図７（ａ）及び（ｂ）に例示したＨ．２６５ ＨＥＶＣに準拠した符号化回路は多くの場合、Ｈ．２６４ ＡＶＣよりも多大なシンタックス要素の符号化を求められている。仮に図７（ｂ）に示す算術符号化回路によってＨ．２６５ ＨＥＶＣにしたがってリアルタイムエンコードを実施する場合、バッファに蓄積される２値データとコンテキスト番号のデータ量が大きく、記憶部容量が多量に必要になる。
【００１９】
よりこの方式の問題点を具体的に説明すれば、１bitの２値データの信号列のそれぞれに対して、コンテキスト番号が付属する点がある。Ｈ.２６５ ＨＥＶＣには、コンテキスト番号の種類が４７６種類ある。このコンテキスト番号を表現するには９bitのデータが必要になる。このため、１bitの２値データにつき９bitのコンテキスト番号を付随させることになる。この結果、このコンテキスト番号を記録するためのデータ量が記憶部の容量の肥大化を招くことになる。
【００２０】
特許文献２に記載された算術符号化回路は、上記図７（ｂ）に示した算術符号化回路と同様の問題点を有する。
【００２１】
これに対して、特許文献１や特許文献３に記載されている算術符号化回路は、バッファの後段にコンテキスト計算部を具備した構成を採る。この構成の場合、コンテキスト番号をバッファすることが無い。一方で、バッファの後段でコンテキスト計算を行うためには、二値化部でシンタックスエレメントを２値化処理して得た２値データから、再度シンタックスエレメント（若しくは同等の信号）を得る２値化復号処理が必要になる。この構成では、２値化復号処理用の回路構成が必要となる。
【００２２】
また、今後多く利用されるＨ．２６５ ＨＥＶＣでは、Ｈ．２６４ ＡＶＣに対して単位時間当たりの符号化データの量が多く 且つ コンテキスト番号の種類が多くなり、その結果 バッファ容量が Ｈ．２６４ ＡＶＣ方式よりもより多量に確保する必要がある。
【００２３】
Ｈ．２６５ＨＥＶＣに適用可能な構成を備えた図７（ｂ）においても、２値化及びコンテキスト生成部と記憶部（バッファ）を、バスを介して接続することは考慮されていない。このことは、Ｈ．２６４ＡＶＣに準拠した符号化回路を開示した特許文献１〜３も同様である。
【００２４】
例えば、図７（ｂ）において、２値化及びコンテキスト生成部をバスを介して記憶部に接続した場合、バスを介してバッファに蓄積される２値データとコンテキスト番号のデータ量が大きくなり、バスの帯域が不足してしまうおそれがある。即ち、１bitの２値データにつき、９bitのコンテキスト番号が付随することになり、このデータ量がバスの帯域を逼迫させ、また、バッファ容量の肥大化を招いてしまう。
【００２５】
このことは、特許文献１〜３に記載されたＨ．２６４ＡＶＣに準拠した符号化回路の場合に比較してより深刻になる。
【００２６】
本発明は、算術符号化回路の規模を考慮しつつ、バッファとして使用する記憶部および記憶部周辺回路の有効利用を考慮してなされたものである。
【００２７】
本発明は、上記課題の少なくとも何れかを解決し、回路規模、及び記憶部容量の適切な低減を図れる算術符号化回路、及び 該算術符号化回路を有するエンコーダの提供を目的とする。
【００２８】
また、本発明は、上記課題の少なくとも何れかを解決し、算術符号化回路の回路規模、及び記憶部容量を適切に低減可能な算術符号化方法の提供を目的とする。
【００２９】
本発明は、記憶部に接続されたバス上のデータ量を低減できる算術符号化回路及び／又は方法を提供することを目的とする。
【課題を解決するための手段】
【００３０】
本発明によれば、２値化部とコンテキスト生成部を個別にバスに接続すると共に、当該バスに、記憶部を接続した構成を有する算術符号化回路が得られる。
【００３１】
本発明の一実施形態に係る算術符号化回路は、シンタックス要素を受け、当該シンタックス要素を２値化して２値データ列を生成する２値化部と、前記２値データ列をコンテキスト生成処理してコンテキスト番号を生成するコンテキスト生成部と、前記２値化部及び前記コンテキスト生成部に接続されたバスと、を備え、前記バスには前記２値データ列を格納するバッファを接続できる。
【００３２】
本発明の一実施形態に係るエンコーダ装置は、上記算術符号化回路を具備する。
【００３３】
本発明の一実施形態に係る算術符号化回路の算術符号化方法は、シンタックス要素を２値化して２値データ列を生成して、バスを介してバッファに格納する第１の工程と、前記外部記憶部にバッファされた前記２値データ列を参照し、コンテキスト生成処理によってコンテキスト番号を設定する第２の工程と、設定したコンテキスト番号を参照して所要のコンテキストを選択する第３の工程と、生成された２値データ列と、選択された所要のコンテキストとを参照して前記２値データ列を符号化して出力する第４の工程とを、を含む。
【発明の効果】
【００３４】
本発明によれば、バス上のデータ量を減少できると共に、回路規模、及び記憶部容量の適切な低減を図れる算術符号化回路、及び 該算術符号化回路を有するエンコーダを提供できる。
【００３５】
また、本発明によれば、バス上のデータ量を減少できると共に、算術符号化回路の回路規模、及び記憶部容量を適切に低減可能な算術符号化方法を提供できる。
【図面の簡単な説明】
【００３６】
【図１】本発明の第１の実施形態の算術符号化回路１０を示すブロック図である。
【図２】本発明の第２の実施形態の算術符号化回路１１を示すブロック図である。
【図３】第２の実施形態に係る算術符号化回路１１の動作を示したフローチャートである。
【図４】コンテキスト番号生成補助情報に用いるライスパラメータを示す説明図である。
【図５】２値化部の外部記憶部への出力を示す説明図である。
【図６】本発明の第３の実施形態のエンコーダ装置を示す機能ブロック図である。
【図７】Ｈ．２６５ ＨＥＶＣに対応した算術符号化回路例を示したブロック図である。
【発明を実施するための形態】
【００３７】
図面を参照して、本発明の実施形態を説明する。
【００３８】
［第１の実施形態］ 
図１は、第１の実施形態の算術符号化回路１０を示すブロック図であり、ここでは、主に、Ｈ．２６５ ＨＥＶＣにしたがって動作する場合について説明するが、Ｈ．２６４ＡＶＣに従って動作する場合にも同様に適用可能である。第１の実施形態の算術符号化回路１０は、ＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding）を採用して、エントロピー符号化を実行する回路である。図１に示す外部記憶部２０は、算術符号化回路１０にバス３０を介して接続されている。図１では、外部記憶部２０及びバス３０は算術符号化回路１０の外部に設けられているが、これらは算術符号化回路１０の内部に設けられても良い。この場合、外部記憶部２０はバッファとして使用される。
【００３９】
算術符号化回路１０は、２値化部１０１と、コンテキスト番号生成部１０２と、コンテキスト選択部１０３と、符号化部１０４によって構成されている。このうち、２値化部１０１は、外部記憶部２０にバス３０を介して接続され、他方、コンテキスト番号生成部１０４も外部記憶部２０にバス３０を介して接続されている。
【００４０】
２値化部１０１は、シンタックス要素（シンタックスエレメント：ＳＥ）を受け付けて、当該シンタックス要素を２値化して２値データ列を生成して、外部記憶部２０にバス３０を介して２値データ列を出力する。
【００４１】
コンテキスト生成部１０２は、２値データ列を、バス３０を介して外部記憶部２０から取得して、２値データを復号した後にコンテキスト生成処理によってコンテキスト番号を生成する。
【００４２】
コンテキスト選択部１０３は、コンテキスト生成部１０２によって生成されたコンテキスト番号を参照して、コンテキスト番号で指定された所要のコンテキストを選択する。個々のコンテキストは、優勢シンボル（MPS：most probable symbol）とその発生確率の組からなる。コンテキスト選択部１０３は、例えばコンテキストをテーブルデータ（コンテキストテーブル）として保持して、受け付けたコンテキスト番号を索引として該当するコンテキストを出力する構成にすればよい。
【００４３】
符号化部１０４は、コンテキスト選択部１０３の選択した所要のコンテキストを参照して２値データ列を符号化処理する。この符号化部１０４で使用される２値データ列は、外部記憶部２０によってバッファされた２値データ列である。なお、図１では、２値データ列はコンテキスト生成部１０２から取得されるように示しているが、符号化部１０４はコンテキスト生成部１０２を介さずに２値データ列を外部記憶部２０から直接取得することも可能である。符号化された符号化データは算術符号化回路１０から出力され、後段の回路に引き渡される。
【００４４】
このように、算術符号化回路１０は、バス３０を介して接続した外部記憶部２０を使用して、入力されたシンタックス要素を逐次的にエントロピー符号化して、符号化データ列を出力する。尚、コンテキスト選択部１０３及び符号化部１０４は単一の回路、例えば、ＣＰＵ（Central Processing Unit）によって構成されても良い。
【００４５】
この回路構成によれば、外部記憶部２０は、算術符号化回路１０の符号化処理以外にも使用することが可能になる。また、バス３０は、外部記憶部２０と該算術符号化回路１０以外のエンコーダ装置内の回路との共通バスとして使用される構成を採用しても良い。
【００４６】
このように、バス３０の前段に２値化部１０１を備え、バス３０から２値データを読み出した後にコンテキスト番号生成部１０２を設けることで、コンテキスト番号をバス３０を介することなく得られる回路構成を得られる。このため、外部記憶部２０やバス３０の帯域を適切に有効利用可能になり、従前の算術符号化回路による同量のエントロピー符号化の実行に対して、符号化処理に掛かる外部記憶部２０の容量やバス３０の使用帯域を実質的に低減できる。
【００４７】
［第２の実施形態］ 
図２は、本発明の第２の実施形態に係る算術符号化回路１１を示すブロック図である。図示された算術符号化回路１１の回路構成のうち、第１の実施形態の算術符号化回路１０と同様の回路要素については、同じ符号を付けて説明を省略若しくは簡略化する。
【００４８】
図２に示す算術符号化回路１１の外部記憶部２０は、第１の実施形態と同様に、算術符号化回路１１に接続された外部記憶部でありバッファとして使用され、バス３０を介して算術符号化回路１１に接続されている。
【００４９】
図示された算術符号化回路１１は、２値データ列に加えて、コンテキスト番号生成補助情報を生成する２値化部２０１を備えている点で、図１に示された算術符号化回路１０と相違している。具体的に言えば、図２に示された算術符号化回路１１は、前述した２値化部２０１と共に、コンテキスト番号生成部２０２と、コンテキスト選択部１０３と、符号化部１０４を含んでいる。このうち、２値化部２０１とコンテキスト番号生成部２０２は、バス３０を介して外部記憶部２０に接続されている。この結果、外部記憶回路２０には、２値データとコンテキスト生成補助情報が蓄積される。
【００５０】
外部記憶部２０及びバス３０は、第１の実施形態と同様に、算術符号化回路１１の符号化処理以外にも使用される構成を採用しても良い。
【００５１】
図２に示された２値化部２０１は、シンタックス要素を２値化して２値データ列を生成すると共に、コンテキスト番号の生成を補助するコンテキスト番号生成補助情報(即ち、付加情報)をシンタックス要素から生成して、外部記憶部２０にバス３０を介して出力する。
【００５２】
コンテキスト番号生成補助情報は、コンテキスト番号を表わすビット数よりも少ないビット数を有する情報である。また、コンテキスト番号生成補助情報は、２値データのビット列に対応して逐次的に変化する情報である。なお、コンテキスト番号生成補助情報については、後述する。
【００５３】
コンテキスト生成部２０２は、２値データ列とコンテキスト番号生成補助情報とを外部記憶部２０からバス３０を介して取得して、コンテキスト番号生成補助情報の内容を参照して該コンテキスト番号生成補助情報の内容に基づいたコンテキスト生成処理によってコンテキスト番号を生成する。
【００５４】
コンテキスト選択部１０３及び符号化部１０４は、第１の実施形態と同様な構成を備えている。なお、図２では、２値データ列をコンテキスト生成部２０２から取得するように回路構成を示しているが、第１の実施形態と同様に、符号化部１０４はコンテキスト生成部２０２を介さずに２値データ列を外部記憶部２０から直接取得することも可能である。
【００５５】
以下、図３を参照して、本発明の第２の実施形態に係る算術符号化回路１１の動作を説明する。まず、算術符号化回路１１に入力されたシンタックス値は２値化部２０１で２値データ列に変換される。同時に２値化処理中に取得した、コンテキスト番号生成処理を補助するコンテキスト番号生成補助情報(即ち付加情報)を生成する（ステップＢ１）。
【００５６】
２値データとコンテキスト番号生成補助情報(付加情報)はバス３０を介して記憶部２０に保存される（ステップＢ２）。
【００５７】
続いて、コンテキスト番号生成部２０２はバス３０を介して記憶部２０から２値データとコンテキスト番号生成補助情報(付加情報)を記憶部２０から読み出す（ステップＢ３）。
【００５８】
次に、コンテキスト番号生成部２０２は２値データを解析し、その際に必要があればコンテキスト番号生成補助情報（付加情報）を参照してコンテキスト番号を生成し、生成したコンテキスト番号をコンテキスト番号選択部１０３ へ出力する。他方、コンテキスト番号生成部２０２は、バス３０を介して入力された２値データはそのまま符号化部１０４へ出力する（ステップＢ４）。
【００５９】
コンテキスト選択部１０３は入力されたコンテキスト番号に対応したコンテキスト情報を出力し（ステップＢ５）、符号化部１０４はコンテキスト情報にしたがってコンテキスト番号生成部２０２からの２値データを符号化する。
【００６０】
コンテキスト番号生成部２０２は、Ｈ．２６４ＡＶＣで用いられている回路を適用することによって構成できるから、ここでは詳述しない。
【００６１】
このように、算術符号化回路１１は、バス３０を介して接続した外部記憶部２０を使用して、入力されたシンタックス要素を逐次的にエントロピー符号化して、符号化データ列を出力する。この回路構成によれば、外部記憶部２０は、算術符号化回路１１の符号化処理以外にも使用することが可能になる。また、バス３０は、外部記憶部２０と該算術符号化回路１１以外のエンコーダ装置内の回路との共通バスとして使用できる。このため、外部記憶部２０やバス３０の帯域を適切に有効利用可能になり、従前の算術符号化回路による同量のエントロピー符号化の実行に対して、符号化処理に掛かる外部記憶部２０の容量やバス３０の使用帯域を実質的に低減できる。
【００６２】
また、コンテキスト番号生成補助情報(付加情報)を用いることで、コンテキスト番号をそのままバッファする構成に対して外部記憶部２０の容量及びバス３０の使用帯域を低減できる。特に、エンコードに必要とされるバス帯域は、バッファ用記憶素子のように増強が難しい。このため、このバス帯域の削減によって実質的にエンコード能力にキャップが加わることを予防できる。
【００６３】
換言すれば、算術符号化処理に係るバスの必要帯域がコンテキスト番号生成補助情報を用いることで削減されるため、バス帯域幅に制限の加わるエンコーダ装置のアーキテクチャを採用する際に、上記仕組みがより有効に働く。特に、映像符号化処理等の符号化前のデータ量が非常に大きく、他の処理のためにもバスの帯域を十分に確保する必要があるエンコーダ装置の算術符号化回路に好適である。
【００６４】
次に、図４及び図５を参照してコンテキスト番号生成補助情報の例を説明する。図４は、コンテキスト番号生成補助情報に用いるライスパラメータを示す説明図である。図５（ａ）は、コンテキスト番号生成補助情報を不使用のバッファ状態を示す説明図である。一方、図５（ｂ）は、ライスパラメータをコンテキスト番号生成補助情報に用いる際のバッファ状態を示す説明図である。
【００６５】
標準化された映像符号化の規格の１つであるＨ．２６５ ＨＥＶＣの規格によれば、画像を構成する各画素値を直交変換し、量子化されたあとの量子化係数は、それぞれがトランケーテッド・ライス符号とk次ゴロム符号によって表現される。トランケーテッド・ライス符号は符号化においてライスパラメータと呼ばれるパラメータを持つ。このＨＥＶＣで定義されているライスパラメータをコンテキスト番号生成補助情報として使用できる。
【００６６】
すなわち、ライスパラメータをコンテキスト番号生成補助情報として２値化部２０１で生成し、外部記憶部２０及びバス３０を介してコンテキスト番号生成回路２０２で使用する。なお、ライスパラメータは一例であり、例えばブロックサイズやブロックの分割形状の情報をコンテキスト番号生成補助情報とすることも可能である。
【００６７】
ライスパラメータ及びk次ゴロム符号の次数kは、１６個の量子化係数を順次読み込み、ある定められた量子化計数値を読んだ時点で更新される。図４（ａ）を参照すると、ライスパラメータ、及び次数kが更新される量子化係数値の対応例が示されている。ライスパラメータは初期値“0”から始まり“3”から“5”までの量子化係数値を読み込んだときに“1”に更新される。また“6”から“11”までの量子化係数値を読み込んだときに“2”に更新される。次数kに関しても同様である。
【００６８】
図４（ｂ）を参照すると、量子化係数値を２値化する際の、ライスパラメータの違いに起因する２値データ列の違いが示されている。同じ量子化係数値「5」であってもライスパラメータが“0”のときの２値データ列は“111101”となり、ライスパラメータが“1”のときは“1101”となる。すなわち、ライスパラメータを正しく把握していなければ１つの量子化係数の長さが正しく取得できずに正しいコンテキスト番号が容易に得られないことが分かる。
【００６９】
図５を参照すると、コンテキスト生成補助情報をバッファしない例（すなわち第１の実施形態）におけるバッファされた２値データ列と、コンテキスト生成補助情報をバッファする例（すなわち第２の実施形態）におけるバッファされた２値データ列が示されている。
【００７０】
図５上段に示したコンテキスト生成補助情報をバッファしない例では、コンテキスト番号生成部１０２には２値データのみが入力されることになる。よって、それぞれの量子化係数の長さを取得するためには、トランケーテッド・ライス符号とk次ゴロムの組み合わせによる２値データ列を、一度元の量子化係数に復元して係数値を取得し、ライスパラメータを時々刻々と適切に更新していく処理が必要となる。すなわち、バッファの後段に２値復号化回路が必要となる。
【００７１】
一方、図５下段に示したコンテキスト生成補助情報をバッファする例では、２値化部２０１で２値データ列に付随してコンテキスト番号生成補助情報であるライスパラメータを２値データがバスを介してバッファされる。コンテキスト番号生成部２０２は、２値データ列だけでなくライスパラメータをバスを介して外部記憶部２０から取得することによって、現在のライスパラメータを参照でき、内部でライスパラメータを２値データ列に従って更新する処理が不要となる。これによりコンテキスト番号生成部２０２内でライスパラメータを取得更新するために設けられていた回路が不要となり、回路面積の低減が図れる。また、コンテキスト番号生成処理にかかる処理負担が軽減されて、コンテキスト番号を得る処理の高速化や、コンテキスト番号を得る処理によって局所的に発生する熱や消費電力を低減する。
【００７２】
このように、算術符号化回路に必要となる、少なくとも、バッファの後段に設けられたコンテキスト番号を得るための回路規模を適切に低減可能になる。このため、算術符号化回路もしくはエンコーダ装置として、回路規模及び記憶部容量の適切な低減を図ることが可能になる。
【００７３】
［第３の実施形態］ 
次に、本発明の第３の実施形態に係るエンコーダを説明する。図６は、第３の実施形態のエンコーダを示す機能ブロック図である。図６（ａ）に示されたエンコーダ１は、第１の実施形態に係る算術符号化回路１０を含むエンコーダであり、図６（ｂ）に示されたエンコーダ２は、第２の実施形態に係る算術符号化回路１１を具備したエンコーダである。
【００７４】
エンコーダ１若しくはエンコーダ２は、算術符号化回路１０若しくは算術符号化回路１１と、外部記憶部２０と、エンコーダの他の回路群４０とがバス３０を介して接続され、エンコーダ内の制御を司るコントローラ５０の管理下でエントロピー符号化を実行する。
【００７５】
このエンコーダ１は、例えば８Ｋ放送のリアルタイムエンコーダとして動作する。エンコーダ１の対応符号化方式はＨ．２６５ ＨＥＶＣ及びＨ．２６４ ＡＶＣに対応する。なお、他の回路群４０には、各規格に係る構成要素（例えばブロック分割部、イントラ予測部、動き補償回路など）が含まれ得る。この他の回路群４０には、バス３０を介して外部記憶部２０を使用する演算回路が含まれる。
【００７６】
図６（ａ）及び（ｂ）に示したエンコーダ１又は２は、第１又は第２の実施形態を用いて説明した算術符号化回路１０又は算術符号化回路１１を具備しており、第１又は第２の実施形態を用いて説明した効果と同様な効果を奏する。
【００７７】
以上説明したように、上記回路構成を採用することで、回路規模、及び記憶部容量の適切な低減を図れる算術符号化回路、及び 該算術符号化回路を有するエンコーダを得られる。
【００７８】
同様に、算術符号化回路の回路規模、及び記憶部容量を適切に低減可能な算術符号化方法を得られる。
【００７９】
また、図６（ｂ）に示した上記回路構成を採用することで、算術符号化回路１１は、少なくとも、バッファの後段に設けられたコンテキスト番号を得るための回路規模を、同等バッファ容量を用いて同等の符号化速度を発揮する既存回路に対して 低減して算術符号化回路を構築できる。
【００８０】
また、上記算術符号化回路１１によれば、算術符号化に必要となるバッファ容量を、同等のコンテキスト番号を得るための回路規模を用いて同等の符号化速度を発揮する既存回路に対して、低減した算術符号化回路及びエンコーダ装置を実現できる。
【００８１】
本発明は、４Ｋ映像や８Ｋ映像のように、リアルタイム映像符号化処理の符号化前のデータ量が大きい算術符号化に好適である。なお、外部記憶部２０は、ＳＲＡＭ（Static Random Access Memory）やＤＲＡＭ（Dynamic Random Access Memory）といった揮発性記憶素子で実現される事を想定され得る。また外部記憶部２０はフラッシュメモリやハードディスクのような不揮発性の記憶素子でも実現されうる。上記は一例であり、その他のデータを記憶可能な記録媒体によっても実現され得る。
【００８２】
なお、実施形態を例示して本発明を説明した。しかし、本発明の具体的な構成は前述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の変更があってもこの発明に含まれる。例えば、上述した実施形態のブロック構成の分離併合、手順の入れ替えなどの変更は本発明の趣旨および説明される機能を満たせば自由であり、上記説明が本発明を限定するものではない。
【００８３】
また、上記の実施形態の一部又は全部は、以下のようにも記載されうる。尚、以下の付記は本発明をなんら限定するものではない。  
［付記１］
シンタックス要素を受け、当該シンタックス要素を２値化して２値データ列を生成する２値化部と、
前記２値データ列をコンテキスト生成処理してコンテキスト番号を生成するコンテキスト生成部と、
前記２値化部及び前記コンテキスト生成部に接続されたバスと、を備え、
前記バスには前記２値データ列を格納するバッファを接続できる算術符号化回路。
【００８４】
［付記２］
前記バス及び前記バッファのうち、少なくともバスを内部に含む付記１記載の算術符号化回路。
【００８５】
［付記３］
前記バス及び前記バッファを内部に含む付記２記載の算術符号化回路。
【００８６】
［付記４］
前記バスを介して前記バッファから取得した前記２値データ列から前記コンテキスト生成処理によって得られたコンテキスト番号を参照して所要のコンテキストを選択するコンテキスト選択部と、
前記２値化部で生成された２値データ列と、前記コンテキスト選択部の選択した所要のコンテキストとを参照して前記２値データ列を符号化する符号化部と、
を更に含む付記１〜３の何れか一項に記載の算術符号化回路。
【００８７】
［付記５］
前記バッファは、前記算術符号化回路以外にも接続され、
前記バスは、前記バッファと該算術符号化回路以外のエンコーダ装置内の回路との共通バスとしても使用される、
付記１又は２記載の算術符号化回路。
【００８８】
［付記６］
前記バッファに対して前記バスを介して接続された前記２値化部は、前記２値データ列を復号化する回路のうち、前記２値データ列からコンテキスト番号を表わすビット数よりも少ないビット数を有するコンテキスト番号生成補助情報を生成する回路を少なくとも含み、
前記バッファに対して前記バスを介して接続された前記コンテキスト生成部は、前記コンテキスト番号生成補助情報を前記バスを介して受け、当該コンテキスト番号生成補助情報に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を生成し、前記コンテキスト選択部に出力する
付記２〜５の何れか一項に記載の算術符号化回路。
【００８９】
［付記７］
該算術符号化回路は、Ｈ．２６５ＨＥＶＣに準拠した符号化するＣＡＢＡＣ回路である付記１〜６の何れか一項に記載の算術符号化回路。
【００９０】
［付記８］
前記コンテキスト番号生成補助情報は、ライスパラメータであり、
前記２値化部は、前記２値データ列として 前記シンタックス要素を 量子化係数を示すビット列に２値化すると共に、２値化した量子化係数を示すビット列に対応するライスパラメータ列を出力し、
前記コンテキスト生成部は、前記バッファに記憶された量子化係数を示すビット列と該ビット列に対応するライスパラメータとを取得して、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、前記コンテキスト選択部に出力する
付記７に記載の算術符号化回路。
【００９１】
［付記９］
前記バッファに対して前記バスを介して接続された前記コンテキスト生成部は、前記２値データ列を復号化する回路のうち、前記２値データ列からライスパラメータを生成する回路を少なくとも含まず、
前記バッファに記憶された２値データ列からライスパラメータを生成せずに、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、前記コンテキスト選択部に出力する
付記８に記載の算術符号化回路。
【００９２】
［付記１０］
前記バッファに前記バスを介して接続された前記２値化部は、
前記２値データ列を復号化する回路のうち、前記２値データ列からライスパラメータを生成する回路を少なくとも含み、
シンタックス要素を２値化して２値データ列を生成すると共に、コンテキスト番号の生成を補助するライスパラメータを前記シンタックス要素から生成して、バッファに出力し、
前記バッファの後段にある前記コンテキスト生成部は、前記バッファに記憶された２値データ列からライスパラメータを生成せずに、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、前記コンテキスト選択部に出力する
付記８記載の算術符号化回路。
【００９３】
［付記１１］
付記１から９の何れか一項に記載の算術符号化回路を具備したエンコーダ装置。
【００９４】
［付記１２］
シンタックス要素を２値化して２値データ列を生成して、バスを介してバッファに格納する第１の工程と、
前記外部記憶部にバッファされた前記２値データ列を参照し、コンテキスト生成処理によってコンテキスト番号を設定する第２の工程と、
設定したコンテキスト番号を参照して所要のコンテキストを選択する第３の工程と、
生成された２値データ列と、選択された所要のコンテキストとを参照して前記２値データ列を符号化して出力する第４の工程とを、
を含む算術符号化回路の算術符号化方法。
【００９５】
［付記１３］
前記外部記憶部は、前記算術符号化回路以外が実行する符号化処理以外の演算処理にも使用され、
前記バスは、前記外部記憶部と該算術符号化回路以外のエンコーダ装置内の回路との共通バスとしても使用される、
付記１２記載の算術符号化方法。
【００９６】
［付記１４］
該算術符号化回路は、Ｈ．２６５ＨＥＶＣ方式でシンタックス要素を符号化するＣＡＢＡＣ回路であり、
前記第１の工程では、前記２値データ列として シンタックス要素を 量子化係数を示すビット列に２値化すると共に、２値化した量子化係数を示すビット列に対応するライスパラメータ列を前記外部記憶部に出力し、
前記第２の工程では、前記外部記憶部にバッファされた量子化係数を示すビット列と該ビット列に対応するライスパラメータとを取得して、前記２値データ列からライスパラメータを生成せずに、前記バッファに記憶されていた前記ライスパラメータを参照して該ライスパラメータの値に基づいた処理によって、２値データ列の個々のビットに対応したコンテキスト番号を設定し、
前記第３の工程では、設定されたコンテキスト番号を参照して所要のコンテキストを選択し、
前記第４の工程では、生成された２値データ列と、選択された所要のコンテキストとを参照して前記２値データ列を符号化する、
付記１２又は１３記載の算術符号化方法。
【符号の説明】
【００９７】
１，２            エンコーダ
１０，１１        算術符号化回路
１０１，２０１    ２値化部
１０２，２０２    コンテキスト番号生成部
１０３            コンテキスト選択部
１０４            符号化部
２０              外部記憶部（外部メモリー）
３０              バス
４０              他の回路群
５０              コントローラ
【図１】
2018082268.tif 000003
【図２】
2018082268.tif 000004
【図３】
2018082268.tif 000005
【図４】
2018082268.tif 000006
【図５】
2018082268.tif 000007
【図６】
2018082268.tif 000008
【図７】
2018082268.tif 000009