(57)【特許請求の範囲】
【請求項１】
周波数領域の画像データを複数のタイルに分割し、
該タイル毎に符号化を行う符号化装置を有する画像処理装置おいて、
前記符号化装置は、最初の１タイル分の画像データの入力が終わり、最初の１タイル分の符号データを準備した時点で、画像処理装置に対して割り込みを行うことを特徴とする符号化装置を有する画像処理装置。
【請求項２】
周波数領域の画像データを複数のタイルに分割し、
該タイル毎に符号化が行われた信号の復号装置を有する画像処理装置おいて、
前記復号装置は、最初の１タイル分の符号データを入力して復号し、最初の１タイル分の画像データを準備した時点で、画像処理装置に対して割り込みを行うことを特徴とする復号装置を有する画像処理装置。
【請求項３】
符号化装置又は復号装置を有する画像処理装置おいて、
１画面の符号化又は復号を終了した時点で、割り込みを行うことを特徴とする符号化装置又は復号装置を有する画像処理装置。
【請求項４】
請求項１ないし３いずれか一項記載の画像処理装置において、
符号化装置又は復号装置はエラーを検出した時点で、画像処理装置に割り込みを行うことを特徴とする画像処理装置。
【請求項５】
データの授受を行う装置がデータの入出力できる状態であることを示す信号であるレディー信号の授受を行う同期バスを用いて、画像データの授受先との間で、画像データを授受する符号化装置を有する画像処理装置において、
前記符号化装置は、入出力する画像データの有効期間となった後で、かつ、画像データの出力の準備ができた段階で、前記レディー信号をアクティブとすることにより、前記画像データの授受先に対する入出力できる状態であることの確認信号とし、
前記符号化装置は、入出力する画像データの有効期間となった後、前記画像データの授受先からアクティブな前記レディー信号を受信した状態であり、かつ、画像データの取り込みの準備ができた段階で、前記レディー信号をアクティブとして、前記画像データを取り込むことを特徴とする画像処理装置。
【請求項６】
請求項５記載の画像処理装置において、
当該画像処理装置は、複数の符号化装置を有し、
複数の符号化装置が、画像データの授受先である一つのメモリコントローラと信号の授受を行うことを特徴とする画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置に関する。
【０００２】
【従来の技術】
図１にＪＰＥＧ２０００の符号化の流れを示す。ＪＰＥＧ２０００の符号化においては、画像データ１は、２次元離散ウエーブレット変換部（ＤＷＴ）１０、量子化器１１、係数モデリング部１２、算術符号器１３、符号形成部１４のステップを経て、符号データ１５が得られる。図２〜４にこれらの処理を模式的に描いた図を示す。なお、係数モデリング部１２及び算術符号器１３により、エントロピー符号化が行われる。
【０００３】
まず、入力される画像に対して複数レベルの２次元離散ウエーブレット変換を行う。この時、処理する画像をタイルと呼ばれる複数の矩形ブロックに分ける場合が多い。画像を複数のタイルに分割する場合は、後に続く２次元離散ウエーブレット変換、量子化、エントロピー符号化はこのタイルの単位で処理する。図２は画像データ１を１２８×１２８の大きさのタイルに分割し、レベル２の２次元離散ウエーブレット変換を行った場合の例を示す。１２８×１２８の画像データ（１タイル）は、レベル２の２次元離散ウエーブレット変換１０により、大きさが３２×３２の４つのサブバンド２ＬＬ、２ＨＬ、２ＬＨ、２ＨＨと大きさが６４×６４の３つのサブバンド１ＨＬ、１ＬＨ、１ＨＨのウエーブレット係数データ２１に変換される。ＪＰＥＧ２０００では、ウエーブレット変換のフィルタ係数としては、可逆、非化逆の２通りの係数が規定されている。可逆・非化逆を統一的に扱う場合は、可逆のフィルタ係数が用いられ、より高いレート又は良いひずみ特性を実現する場合は非化逆のフィルタ係数を用いる。
【０００４】
次に、ウエーブレット係数データに対して図３で示されるような式によりスカラー量子化が行われる。ここで、sign(a)はウエーブレット係数データａの符号、｜a｜はａの絶対値、Δｂはサブバンド毎に決められた量子化ステップ、└  ┘はフロア関数を示す。ただし、可逆ウエーブレット係数を用いた場合は、このスカラー量子化のステップは実施されない。
【０００５】
次にウエーブレット変換後、あるいは量子化後の係数データを各サブバンド毎、あるいはサブバンドを複数の矩形領域に分割したコードブロック毎にエントロピー符号化していく。このエントロピー符号化は、後段の２値算術符号器１３に与えるコンテキストを生成する係数モデリング部１２での処理と、実際に符号化を行う算術符号器１３での処理により構成される。
【０００６】
図４は、各サブバンド毎にエントロピー符号化した場合におけるサブバンド２ＬＬとその算術符号化器１３の処理を示す。サブバンド２ＬＬは、３２×３２画素を有し、各画素は、（Ｎ+３）ビットで量子化されている。上面が量子化ビットのＭＳＢで、下面が量子化ビットのＬＳＢである。図４では、上から二つのプレーンには、量子化ビットが存在しない。このプレーンをゼロビットプレーンという。
【０００７】
次に、算術符号器１３での処理手順を示す。
（１）一つのサブバンド(コードブロック毎にエントロピー符号化する場合は、コードブロック)の係数データを符号＋絶対値に変換し、係数絶対値は、ビットプレーンに分割してＭＳＢ側からビットプレーン毎にエントロピー符号化を行う。図４(Ａ)では、２ＬＬのサブバンドの係数絶対値をビットプレーンに分割した様子を示す。
（２）上位から数えて初めて有効なビット（０で無いビット）が出現するビットプレーンまでは、ゼロビットプレーンであるのでエントロピー符号化は行わず、初めて０で無いビットが出現したビットプレーンから、エントロピー符号化を開始する。図４(Ａ)の例では、上位２プレーンがゼロビットプレーンであり、３プレーン目に初めて０で無いビットが出現し、このビットプレーンＮからビットプレーン０までのＮ+1枚のビットプレーンについてエントロピー符号化を行う。
（３）エントロピー符号化を行うビットプレーンに関しては、基本的に１つのビットプレーンを３回スキャンして、符号化する。この符号化のためスキャンする過程をコーディングパスとして、各パスは以下のように呼ばれている。
【０００８】
▲１▼  significance  propagation  pass
▲２▼  magnitude  refinement  pass
▲３▼  cleanup  pass
ビットプレーン上の各ビットは、特定の規則に従って分類され、そのビットの周辺ビットの状態から生成されたコンテキストを用いていずれかひとつのパスで符号化される。
【０００９】
図４(Ｂ)に示すように、最初に符号化するビットプレーンＮは、cleanup  passのみで符号化されるが、それ以降のビットプレーンは、それぞれ上に記した３つのパスで符号化される。すなわち、Ｎ+1個のビットプレーンが存在する場合、合計３Ｎ＋１回のコーディングパスにより符号化が行われる。
（４）次に、算術符号器１３で、上記の各パスで発生する符号化ビットとそれに対応するコンテキストにより、エントロピー符号を生成する。
こうして生成されたエントロピー符号（ＭＱ符号）は、図１に示す符号形成１４のステップで、最終のＪＰＥＧ２０００のビットストリームとしてまとめられる。
符号形成部１４では、まず、先の算術符号器１３で生成された各パス単位で発生した符号を、複数パス毎にまとめる。このまとめられた単位をレイヤと呼ぶ。図５では、３Ｎ＋１個のパス毎に算術符号器で生成された符号をレイヤ０からレイアＬまでのＬ＋１個のレイヤにまとめている様子を示す。例えば、ビットプレーン２ＬＬＮ，ｃ、ビットプレーン２ＬＬＮ−１、ｓ、ビットプレーン２ＬＬＮ−１，ｍをレイヤ０とし、・・・ビットプレーン２ＬＬ０，ｓ、ビットプレーン２ＬＬ０、ｍ、プレーン２ＬＬ０，ｃをレイヤＬとしている。なお、レイヤの選定は、これに限らず実施することができる。
【００１０】
さらに、図６に示すように、サブバンド、レイア毎にまとめられた符号を並べて最終のビットストリームとなる。図６では、２ＬＬのレイヤ０、２ＬＬのレイヤ１、・・・２ＬＬのレイヤＬ、２ＨＬ、２ＬＨ、２ＨＨのレイヤ０、・・・２ＨＬ、２ＬＨ、２ＨＨのレイヤＬ、１ＨＬ、１ＬＨ、１ＨＨのレイヤ０、・・・１ＨＬ、１ＬＨ、１ＨＨのレイヤＬのビットストリームとなる。ビットストリームは、重要なデータ(優先順位の高いデータ)を先に送信するように構成される。
【００１１】
ここで、サブバンド、レイア毎のまとまりをパケットと呼び、各パケットは、それぞれのパケットの情報を示すパケットヘッダーと先ほどの算術符号部で生成されたエントロピー符号より成る。例えば、２ＨＬ、２ＬＨ、２ＨＨのレイヤＬ３４は、２ＨＬ、２ＬＨ、２ＨＨのレイヤＬのパケットヘッダー３７と２ＨＬ、２ＬＨ、２ＨＨのレイヤＬのエントロピー符号３８から構成される。
【００１２】
ここでは、入力画像データが単色である場合を示したが、複数色（コンポーネント）よりなる画像の場合、同様に各色（コンポーネント）毎にサブバンド毎、レイア毎のパケットを生成して規定された順番に並べることでＪＰＥＧ２０００のビットストリームを得ることができる。図7には、3色（コンポーネント０、１，２）より成る画像をＪＰＥＧ２０００で符号化した場合のビットストリームの例を示す。
【００１３】
ＪＰＥＧ２０００の符号化方式は、いったん符号化されたビットストリームを復号することなく符号状態のままで再度圧縮して、必要な圧縮率を得られるという特徴がある。これはこれまでに説明したようにＪＰＥＧ２０００の符号は、パケットと呼ばれるコンポーネント（色成分）、サブバンド（解像度）、レイヤー毎の符号を組み合わせて構成されているため、一旦、符号化を行った後で、その符号の圧縮率が所望の圧縮率より悪ければ、復号した際の画質面からみて優先順位の低いパケットの符号データを順次破棄していくことで、圧縮率を上げる操作が可能であることによる。図７で示される符号は可逆（ロスレス）であるが、例えば図８に示すように、図７の符号の各コンポーネントの１ＨＬ、１ＬＨ、１ＨＨのレイアＬのパケットを破棄することで、ロッシー（非可逆）ではあるが、図７の符号をさらに圧縮した（圧縮率を上げた）符号を得ることができる。
【００１４】
【発明が解決しようとする課題】
ところで、ＪＰＥＧ２０００の符号は、例えば、ＪＰＥＧ符号と比較して、圧縮率は高いものの、非可逆符号で可変長符号であり、しかも、多くの画素を纏めて符号化するので、符号化処理及び復号処理に関する処理が複雑となり、多くの時間を要するという問題がある。
【００１５】
本発明は、上記問題に鑑みなされたものであり、符号化処理及び復号処理に関する処理を効率的に行うことを目的とするものである。
【００１６】
【課題を解決するための手段】
上記課題を解決するために、本件発明は、以下の特徴を有する課題を解決するための手段を採用している。
【００１７】
請求項１に記載された発明は、周波数領域の画像データを複数のタイルに分割し、該タイル毎に符号化を行う符号化装置を有する画像処理装置おいて、前記符号化装置は、最初の１タイル分の画像データの入力が終わり、最初の１タイル分の符号データを準備した時点で、画像処理装置に対して割り込みを行うことを特徴とする。
【００１８】
請求項１に記載された発明によれば、１部分画像データ分のデータを準備した時点で、画像処理装置に対して割り込みを行うことにより、効率的な符号化を行うことができる。特に、ＪＰＥＧ２０００の符号化の場合における１部分画像データを１タイルとし１２８×１２８の画素にした場合では、画像データの授受に時間を要するものの、請求項１に記載された発明によれば、画像処理装置においてその間の時間を有効に活用することができる。
【００１９】
請求項２に記載された発明は、周波数領域の画像データを複数のタイルに分割し、該タイル毎に符号化が行われた信号の復号装置を有する画像処理装置おいて、前記復号装置は、最初の１タイル分の符号データを入力して復号し、最初の１タイル分の画像データを準備した時点で、画像処理装置に対して割り込みを行うことを特徴とする。
【００２０】
請求項２に記載された発明によれば、１部分画像データ分のデータを復号した時点で、画像処理装置に対して割り込みを行うことにより、効率的に復号を行うことができる。特に、１部分画像データを１タイルとしたＪＰＥＧ２０００の復号の場合では、復号に時間を要するものの、請求項２に記載された発明によれば、画像処理装置においてその間の時間を有効に活用することができる。
【００２１】
請求項３に記載された発明は、符号化装置又は復号装置を有する画像処理装置おいて、１画面の符号化又は復号を終了した時点で、割り込みを行うことを特徴とする。
【００２２】
請求項３に記載された発明によれば、１画面の符号化又は復号を終了した時点で、割り込みを行うことにより、画像処理装置は、符号化装置又は復号装置における処理が終わるのを待つことなく、その後の処理を遅滞なく実施することが可能となる。
【００２３】
請求項４に記載された発明は、請求項１ないし３いずれか一項記載の画像処理装置において、符号化装置又は復号装置はエラーを検出した時点で、画像処理装置に割り込みを行うことを特徴とする。
【００２４】
請求項４に記載された発明によれば、符号化装置又は復号装置はエラーを検出した時点で、画像処理装置に割り込みを行うことにより、効率的に符号化又は復号を行うことができる。特に、ＪＰＥＧ２０００の符号化において、例えば、タイル毎に符号化し、各タイル毎に誤りの検出ができるので、タイル単位で、誤り制御ができ、その結果、効率的に符号化又は復号を行うことが可能となる。例えば、各タイル毎に、次の誤りの検出が可能である。
（１）扱う１タイルの情報よりも大きいとき
（２）解釈不可能なマーカーコードが入力された場合
（３）タイルパートヘッダーの内容が不適切な場合
（４）ヘッダーの内容と実際の信号が不一致のとき（例えば、信号の長さ）
請求項５に記載された発明は、データの授受を行う装置がデータの入出力できる状態であることを示す信号であるレディー信号の授受を行う同期バスを用いて、画像データの授受先との間で、画像データを授受する符号化装置を有する画像処理装置において、前記符号化装置は、入出力する画像データの有効期間となった後で、かつ、画像データの出力の準備ができた段階で、前記レディー信号をアクティブとすることにより、前記画像データの授受先に対する入出力できる状態であることの確認信号とし、前記符号化装置は、入出力する画像データの有効期間となった後、前記画像データの授受先からアクティブな前記レディー信号を受信した状態であり、かつ、画像データの取り込みの準備ができた段階で、前記レディー信号をアクティブとして、前記画像データを取り込むことを特徴とする。
【００２５】
請求項５に記載された発明によれば、前記符号化装置は、入出力する画像データの有効期間となった後で、かつ、画像データの出力の準備ができた段階で、前記レディー信号をアクティブとすることにより、前記画像データの授受先に対する入出力できる状態であることの確認信号とし、前記符号化装置は、入出力する画像データの有効期間となった後、前記画像データの授受先からアクティブな前記レディー信号を受信した状態であり、かつ、画像データの取り込みの準備ができた段階で、前記レディー信号をアクティブとして、前記画像データを取り込むようにしたので、画像データの授受先は、符号装置のレディー信号のアクティブ信号に基づいて、符号装置が画像データを取り込んだと判断して、次の画像データの出力する用意を行うことがきる。
このように、請求項５に記載された発明は、レディー信号を有効活用することにより、確実なデータ伝送を行うことができる。また、これにより、一つのメモリコントローラが、複数の符号化・復号化器を扱うことができる。
【００２６】
請求項６に記載された発明は、当該画像処理装置は、複数の符号化装置を有し、
複数の符号化装置が、画像データの授受先である一つのメモリコントローラと信号の授受を行うことを特徴とする。
【００２７】
請求項６に記載された発明によれば、一つのメモリコントローラが、複数の符号化を扱うことができる。
【００２８】
【発明の実施の形態】
次に、本発明の実施の形態について図面と共に説明する。
【００２９】
図９に本発明が実施される１チップの符号化・復号器４０の例を示す。図９の符号化・復号器４０は、前・後処理部４１、２次元離散ウエーブレット変換部（ＤＷＴ）４２、エントロピー符号・復号部４３、符号形成部４４、ＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路４５、ＣＰＵＩ／Ｆ部４６、エントロピー符号化部４３のワークメモリ４７及びヘッダー処理部４８から構成されている。前・後処理部４１は、符号化時は画像データを画像データバスＩＭＤ１９−０から得て、レベルシフトを行い、ＲＧＢ（赤・緑・青）データをＹＣｂＣｒ（輝度成分・色差成分）データに変換する。また、復号時はその逆変換を行う。２次元離散ウエーブレット変換部（ＤＷＴ）４２は、２次元離散ウエーブレット変換及びその逆変換を行う。エントロピー符号・復号部４３は、エントロピー符号化及びその逆変換を行う。符号形成部４４は、符号化時は、符号形成を行い、生成した符号にヘッダー処理部４８で生成したヘッダーを付加して符号データバスＣＯＤ７−０によりビットストリームを出力する。なお、ヘッダー処理部４８は後述するメインヘッダー以外のタイルパートヘッダーを自動的に生成する。なお、ヘッダー処理部４８で、メインヘッダーを生成するようにしてもよい。復号時は、符号データバスＣＯＤ７−０からビットストリームを得て、符号化時と逆の処理を行う。ＰＬＬ回路４５は、符号化・復号器４０のクロックを生成する。ＣＰＵＩ／Ｆ部４６は、符号化・復号器４０と外部に設けられたＣＰＵとのインタフェースをとる。
【００３０】
この符号化・復号器４０により、符号化時は、画像データバスＩＭＤ１９−０から得た画像データを符号化して、符号データバスＣＯＤ７−０から、ビットストリームを出力する。また、復号時は、符号データバスＣＯＤ７−０からビットストリームを得て、復号して画像データバスＩＭＤ１９−０へ画像データを出力する。
【００３１】
なお、図９において、ＩＭＤ１９−０は、画像データの入出力バスである。ＩＭＦＲＭは、入出力する画像データの有効期間を示す（アクティブ「Ｌ」）。ＩＭＭＲＤＹは、クロック同期入出力モードのときは、外部が画像データを入出力できる状態にあることを示すレディー信号を示し、ＤＭＡ転送モードのときは、外部からの画像データのアック信号としても機能する（アクティブ「Ｌ」）。ＩＭＪＲＤＹは、クロック同期入出力モードのときは、符号化・復号器４０が画像データを入出力できる状態にあることを示すレディー信号を示し、ＤＭＡ転送モードのときは、符号化・復号器４０が出力する画像データのリクエスト信号として機能する（アクティブ「Ｌ」）。ＣＯＤ７−０は、クロック同期符号データの入出力バスである。ＣＯＦＲＭは、入出力する符号データの有効期間を示す（アクティブ「Ｌ」）。ＣＯＭＭＲＤＹは、外部が符号データを入出力するできる状態にあることを示すレディー信号を示す（アクティブ「Ｌ」）。ＣＯＪＲＤＹは、符号化・復号器４０が画像データを入出力できる状態にあることを示す（アクティブ「Ｌ」）。ＣＰＯＵＴは、ＰＬＬのマスタクロックとの位相差分の信号であり、ＶＣＯＩＮは、ＬＰＦ（Ｌｏｗ  Ｐａｓｓ  Ｆｉｌｔｅｒ）４９を経た信号で、ＰＬＬ４５からの位相差分の信号でＶＣＯを制御する信号である。ＭＣＬＫは、ＰＬＬへのマスタクロックを入力する端子である。ＲＥＳＴは、符号化・復号器４０のリセット端子を示す。ＩＮＴは、設定に従って、割り込み信号を発生する（アクティブ「Ｌ」）。ＤＡＣＫは、画像データ、符号データをＣＰＵバスを使用してＤＭＡ転送により入出力する際の符号化・復号器４０へのデータアクノリッジ信号を示す（アクティブ「Ｌ」）。ＤＲＥＱは、画像データ、符号データをＣＰＵバスを使用してＤＭＡ転送により入出力する際の符号化・復号器４０からのデータリクエスト信号を示す（アクティブ「Ｌ」）。ＲＤは、符号データの読み出し信号を示す（アクティブ「Ｌ」）。ＷＥは、符号データの書き込み信号を示す（アクティブ「Ｌ」）。ＣＳは、ＣＰＵＩ／Ｆのチップセレクト信号を示す（アクティブ「Ｌ」）。ＡＤ９−０は、ＣＰＵＩ／Ｆのアドバイスを示す。ＤＡＴＡ３１−０は、ＣＰＵＩ／Ｆのデータバスを示す。
【００３２】
図１０に、符号化・復号器４０から符号データバスＣＯＤ７−０に出力される符号データフォーマットの例を示す。符号データは必ずメインヘッダーから始まる。メインヘッダーの始まりを示すコードはＳＯＣ（Ｓｔａｒｔ  ｏｆ  Ｃｏｄｅｓｔｒｅａｍ）５１である。この後にメインヘッダー内の情報が示されるｍａｉｎ（ｍａｉｎ  ｈｅａｄｅｒ  ｍａｋｅｒ  ｓｅｇｍｅｎｔ）５２が、標準にしたがって記述される。また、図１０に示すように、メインヘッダーに続いて、タイルの数分のタイルパーツヘッダーとビットストリームの組み合わせが続き、符号データフォーマットの最後を表すＥＯＣ（Ｅｎｄ  ｏｆ  Ｃｏｄｅｓｔｒｅａｍ）で終わる。なお、ビットストリームは、図６で説明したように、パケット形式の信号である。
【００３３】
また、タイル毎にタイルパーツヘッダーが生成される。ビットストリーム５６０のタイルパーツヘッダーは、タイルパーツの開始を表すＳＯＴ５３、タイルパーツヘッダーの内容を表すＴ０、ＴＰ０（Ｔｉｌｅ０  ｈｅａｄｅｒ  ｍａｋｅｒ  ｓｅｇｍｅｎｔ）５４０及びデータの開始を表すＳＯＤ（Ｓｔａｒｔ  ｏｆＤａｔａ）５５から構成されている。同様に、ビットストリーム５６１のタイルパーツヘッダーは、ＳＯＴ５３、Ｔ１、ＴＰ１５４１、ＳＯＤ５５から構成されている。
【００３４】
図１１にメインヘッダーの構成を示す。メインヘッダーは、ＳＯＣ５１に続いて、サイズを示すマーカーであるＳＩＺ(Ｉｍａｇｅ  ａｎｄ  ｔｉｌｅ  ｓｉｚｅ：必須)６１から始まり、ＣＯＤ(Ｃｏｄｉｎｇ  ｓｔｙｌｅ  ｄｅｆａｕｌｔ：必須)６２、ＣＯＣ(Ｃｏｄｉｎｇ  ｓｔｙｌｅ  Ｃｏｍｐｏｎｔ：任意)６３、ＱＣＤ（Ｑｕａｎｔｉｚａｉｏｎ  ｄｅｆａｕｌｔ：必須）６４、ＱＣＣ（Ｑｕａｎｔｉｚａｉｏｎ  ｃｏｍｐｏｎｔ：任意）６５、ＲＧＮ（Ｒｅｇｉｏｎｏｆ  ｉｎｔｅｒｅｓｔ：任意）６６、ＰＯＣ（Ｐｒｏｇｒｅｓｓｉｏｎ  ｏｒｄｅｒ  ｃｈａｎｇｅ：任意）６７、ＰＰＭ(Ｐａｃｋｅｄ  Ｐａｃｋｅｔ  ｈｅａｄｅｒｓ  、ｍａｉｎ  ｈｅａｄｅｒ：任意)６８、ＴＬＭ（Ｔｉｌｅ−ｐａｒｔ  ｌｅｎｇｔｈｓ：任意）６９、ＰＬＭ(Ｐａｃｋｅｔ  ｌｅｎｇｔｈｓ  、ｍａｉｎ  ｈｅａｄｅｒ：任意)７０、ＣＲＧ(Ｃｏｍｐｏｎｔ  ｒｅｇｉｓｔｒａｔｉｏｎ：任意)７１及びＣＯＭ(Ｃｏｍｐｏｎｔ；任意)７２から構成されている。
ＳＩＺ６１のマーカーは、取り扱う画像サイズ(イメージエリアの大きさ、タイルのサイズ(縦・横)、コンポーネントの数等)を規定する。その後は、順番は任意であるが符号化、復号に必要な情報が入っているＣＯＤ６２のマーカーと量子化制御に必要な情報が入っているＱＣＤ６４のマーカーが必須であり、残りのマーカーは任意である。このＣＯＤ６２のマーカー内に元イメージの画像データビットの精度等が入っている。
【００３５】
メインヘッダーの記述が完了すると、タイルパートヘッダーが始まる。タイルパートヘッダーの構成を図１２に示す。タイルパートヘッダーは、ＳＯＴ５１から始まり、ＳＯＤ５５で終了する。ＳＯＴ５１とＳＯＤ５５の間に、図１２に示されているように、ＣＯＤ(任意)６２、ＣＯＣ(任意)６３、ＱＣＤ（必須）６４、ＱＣＣ（任意）６５、ＲＧＮ（任意）６６、ＰＯＣ（任意）６７、ＰＰＴ(Ｐａｃｋｅｄ  Ｐａｃｋｅｔ  ｈｅａｄｅｒｓ  、Ｔｉｌｅ−ｐａｒｔ  ｈｅａｄｅｒ：任意)７３、ＰＬＴ(Ｐａｃｋｅｔ  ｌｅｎｇｔｈｓ  、Ｔｉｌｅ−ｐａｒｔ  ｈｅａｄｅｒ：任意)７４及びＣＯＭ(任意)７２から構成されている。
【００３６】
ＳＯＴ５１のマーカー中には、タイル符号データのデータ長などが格納されている。タイルデータはＳＯＤ５５のマーカの次のバイトから出力される。タイルデータはひとつのコードストリームの中に複数存在することがある。すべての符号データの最後にはＥＯＣ５７のマーカーがつけられていて、このマーカーですべてのコードの終了を示す。
【００３７】
これらの符号データの取り扱い処理において、図１３に示すように、例えば、次の要因による割り込み信号を発生させる。なお、割り込み信号がアクティブになるのは、1つ以上の割り込み要因が発生した場合とする。
(１)符号化時、符号データを出力する準備ができた時点で割り込みをかける。その割り込みタイミングは、１タイル分の画像データ入力が終わり、最初の符号データが用意できた時点である。
【００３８】
例えば、図１４に示されているように、ＩＭＦＲＭが‘Ｌ’となり、アクティブになって、１タイル分の画像データを、ＩＭＤ１９−０から入力し、１タイル分の符号データを準備した時点で、割り込み「Ａ」をかける。
(２)復号時、画像データを出力する準備ができた時点で割り込みをかける。その割り込みタイミングは、１タイル分の符号データを入力して復号し、最初の画像データが用意できた時点である。
【００３９】
例えば、図１５に示されているように、ＣＯＦＲＭが‘Ｌ’となり、アクティブになって、１タイル分の符号データを、ＣＯＤ７−０から入力し、１タイル分の画像データを準備した時点で、割り込み「Ｃ」をかける。
(３)1画面の符号化を終了した時点で割り込みをかける。その割り込みタイミングは、符号化終了時である。
【００４０】
例えば、図１４に示されているように、1画面のすべてのタイル分の画像データ符号化した時点で、割り込み「Ｂ」をかける。
(４)1画面の復号を終了した時点で割り込みをかける。その割り込みタイミングは、復号終了時である。
【００４１】
例えば、図１５に示されているように、1画面のすべてのタイル分の符号データを復号した時点で、割り込み「Ｄ」をかける。
(５)エラーが発生した時点で割り込みをかける。その割り込み発生タイミングは、エラー検出時である。
【００４２】
なお、例えば、エラーが発生したと判断するのは次の場合である。
(１)圧縮時は、扱う１タイルの情報よりも大きいとき、例えば、１２８×１２８のタイル分割における符号化を行う場合であれば、１２８×１２８の画像データより大きくなった場合である。
(２)伸張時は、次の場合である。
▲１▼ＳＯＴ、ＳＯＤ、ＥＯＣのマーカーコードとして、これ以外のマーカーコードが入力された場合。
▲２▼ＳＯＴからＳＯＤまでのタイルパートヘッダーの内容が不適切な場合
▲３▼タイルパートヘッダー内で規定されているバイト長の後の次の２バイトがＳＯＴあるいはＥＯＣでない場合
なお、指定されたタイル数より入力される符号が多い（所定の位置にＥＯＣがみつからない）場合、指定されたタイル数を復号して動作を終了する。逆に、指定されたタイル数より入力される符号が少ない（所定の位置より早くＥＯＣが入力された）場合、そこまでのタイルを復号して終了する。（動作終了時点で割り込み信号を発生させる）
また、符号化および復号の処理中に、上記割り込みが発生した場合には、符号化／復号の処理をやめ、エラーステータスを出力する。
次に、符号化処理及び復号処理において、効率的に行うための入出力タイミングについて説明する。
【００４３】
図１６は、符号化・復号器４０とメモリコントローラ８２間の信号の授受を示す。図９における外部装置がメモリコントローラ８２に相当する場合である。メモリコントローラ８２は、フレームメモリ８１からの画像データを符号化・復号器４０で符号化してフレームメモリ８１に記憶し、フレームメモリ８１からの符号化データを符号化・復号器４０で復号してフレームメモリ８１に記憶する。
【００４４】
図１６において、メモリコントローラ８２から符号化・復号化器４０に対する信号としては、画像データ関連では画像のフレーム信号（ＩＭＦＲＭ）、画像データレディ信号（ＩＭＭＲＤＹ）、コーダーレディ信号（ＩＭＪＲＤＹ）、データ信号（ＩＭＤ３１−０）がある。コード化された信号では、コードのフレーム信号（ＣＯＦＲＭ）、コードデータレディ信号（ＣＯＭＲＤＹ）、コーダーレディ信号（ＣＯＪＲＤＹ）、データ信号（ＣＯＤ７−０）がある。
【００４５】
図１７を用いて、１画面の画像データの符号化、復号動作を行う際の、タイミング概要を説明する。
【００４６】
図１７(Ａ)を用いて符号化のタイミングを説明する。符号化処理スタート後、外部より入力する画像データが用意できると、ＩＭＦＲＭを‘Ｌ’にし、ＩＭＭＲＤＹ、ＩＭＪＲＤＹを使って画像データを入力する。符号化・復号器４０では、出力する符号が用意できるとＣＯＦＲＭを‘Ｌ’に落とし、ＣＯＭＲＤＹ、ＣＯＪＲＤＹを使って符号を出力する。メモリコントローラ８２では最後の画像データを入力後ＩＭＦＲＭを‘Ｈ’に戻し、符号化・復号器４０ではそれに対応して最終の符号データを出力した後ＣＯＦＲＭを‘Ｈ’にする。
【００４７】
図１７(Ｂ)を用いて復号のタイミングを説明する。復号処理スタート後、外部より入力する符号データが用意できると、ＣＯＦＲＭを‘Ｌ’にし、ＣＯＭＲＤＹ、ＣＯＪＲＤＹを使って符号データを入力する。符号化・復号化器４０は、出力する画像データが用意できるとＩＭＦＲＭを‘Ｌ’にし、ＩＭＭＲＤＹ、ＩＭＪＲＤＹを使って画像データを出力する。符号化・復号化器４０では最後の符号データを入力した後ＣＯＦＲＭを‘Ｈ’に戻する。コーダーでは、それに対応する最終の画像データを出力した後、ＩＭＦＲＭを‘Ｈ’にする。
【００４８】
図１８は、二つの符号化・復号器４０１、４０２とメモリコントローラ８２間の信号の授受を示す。この場合は、符号化の場合であれば、順次符号化すべき画像データの符号化を二つの符号化・復号器４０１、４０２が交互に、符号化する。例えば、偶数番目の画像データは、符号化・復号器４０１で符号化し、奇数番目の画像データは、符号化・復号器４０２で符号化する。このようにして、効率良く符号化することができる。
【００４９】
図１９に、確実に動作する符号化におけるタイミングを説明する。ＭＣＬＫの立ち上がりに同期させてＩＭＦＲＭ、ＩＭＭＲＤＹ、ＩＭＪＲＤＹを制御し、画像バスＩＭＤ３１−０で画像データを入出力する。
(１)メモリコントローラ８２では、符号化処理が始まると、ＩＭＦＲＭを‘Ｌ’とする(Ｔ０)。
(２)符号化・復号化器４０では、ＩＭＦＲＭの‘Ｌ’を検出した後、１クロック分ＩＭＪＲＤＹを‘Ｌ’にする。このとき、符号化・復号化器４０は、画像データは取り込まない(Ｔ１)。
(３)メモリコントローラ８２では、符号化・復号化器４０のＩＭＪＲＤＹが‘Ｌ’になったことを確認した後、画像データが準備できた時点で、画像データをデータバスＩＭＤ３１−０に入力し、ＩＭＭＲＤＹを‘Ｌ’にする(Ｔ２)。
(４)符号化・復号化器４０では、内部で画像データを受け取れる状態になると、ＩＭＪＲＤＹを‘Ｌ’にする。このとき、ＩＭＭＲＤＹが‘Ｌ’であれば、ＭＣＬＫの立ち上がりに同期して、データバスＩＭＤ３１−０から画像データを取り込み(Ｔ３、Ｔ５)、ＩＭＭＲＤＹが‘Ｈ’であれば、‘Ｌ’になるのを待つ(Ｔ４)。
(５)メモリコントローラ８２では、ＩＭＭＲＤＹが‘Ｌ’のとき、ＩＭＪＲＤＹが‘Ｌ’になると、符号化・復号化器４０が画像データを取り込んだと判断して、次の画像データを出力する用意を行う。
(６)符号化・復号化器４０が最後の画像データを取り込むと、メモリコントローラ８２では、それと同時、又は、それ以降にＩＭＦＲＭを‘Ｈ’に戻す。
【００５０】
図２０に、確実に動作する符号化におけるタイミングを説明する。ＭＣＬＫの立ち上がりに同期させてＩＭＦＲＭ、ＩＭＭＲＤＹ、ＩＭＪＲＤＹを制御し、画像バスＩＭＤ３１−０で画像データを入出力する。
(１)符号化・復号化器４０では、復号処理が始まると、ＩＭＦＲＭを‘Ｌ’とする。この時点では、画像データ出力は不定値となっている(Ｔ０)。
(２)メモリコントローラ８２では、ＩＭＦＲＭの‘Ｌ’を検出した後、１クロック分ＩＭＭＲＤＹを‘Ｌ’にする（Ｔ１）。
(３)符号化・復号化器４０では、メモリコントローラ８２のＩＭＭＲＤＹが‘Ｌ’になったことを確認した後、画像データが準備できた時点で、画像データをデータバスＩＭＤ３１−０に出力し、ＩＭＪＲＤＹを‘Ｌ’にする(Ｔ２)。
(４)メモリコントローラ８２では、内部で画像データを受け取れる状態になると、ＩＭＭＲＤＹを‘Ｌ’にする。このとき、ＩＭＪＲＤＹが‘Ｌ’であれば、ＭＣＬＫの立ち上がりに同期して、データバスＩＭＤ３１−０から画像データを取り込み(Ｔ３、Ｔ５)、ＩＭＪＲＤＹが‘Ｈ’であれば、‘Ｌ’になるのを待つ(Ｔ４)。
(５)符号化・復号化器４０では、ＩＭＪＲＤＹが‘Ｌ’のとき、ＩＭＭＲＤＹが‘Ｌ’になると、メモリコントローラ８２が画像データを取り込んだと判断して、次の画像データを出力する用意を行う。
(６)メモリコントローラ８２が最後の画像データを取り込むと、符号化・復号化器４０では、それと同時、又は、それ以降にＩＭＦＲＭを‘Ｈ’に戻す(Ｔ１０)。
図１９及び図２０では、画像データの入出力タイミングについて説明したが、同様にして、符号データの入出力タイミングを実施することができる。
【００５１】
また、図１９及び図２０では、画像データの入出力におけるレディー信号をアクティブとすることにより、符号化データの授受先に対する確認信号とした場合について説明したが、画像データの入出力におけるレディー信号をアクティブとすることにより、符号化データの授受先に対する要求信号とすることもできる。また、メモリコントローラ８２と符号化・復号化器４０とが、ＤＭＡ転送モードにより転送するようにしてもよい。
【００５２】
【発明の効果】
上述の如く本発明によれば、符号化処理及び復号処理において、処理を効率的に行うことができる。
【図面の簡単な説明】
【図１】ＪＰＥＧ２０００の符号化の流れを説明するための図である。
【図２】画像データ１を１２８×１２８の大きさのタイルに分割し、レベル２の２次元離散ウエーブレット変換を行った場合の例を説明するための図である。
【図３】スカラー量子化の式である。
【図４】各サブバンド毎にエントロピー符号化した場合におけるサブバンド２ＬＬとその算術符号化器の処理を説明するための図である。
【図５】３Ｎ＋１個のパス毎に算術符号器で生成された符号をレイヤ０からレイアＬまでのＬ＋１個のレイヤにまとめている様子を示す図である。
【図６】ビットストリームを説明するための図である。
【図７】    3色（コンポーネント０、１，２）より成る画像をＪＰＥＧ２０００で符号化した場合のビットストリームの図である。
【図８】  図７の符号の各コンポーネントの１ＨＬ、１ＬＨ、１ＨＨのレイアＬのパケットを破棄したビットストリームの図である。
【図９】符号化・復号化器の構成例を説明するための図である。
【図１０】符号化・復号器から出力される符号データフォーマットの例を説明するための図である。
【図１１】メインヘッダーの構成例を説明するための図である。
【図１２】タイルパートヘッダーの構成例を説明するための図である。
【図１３】割り込みの例を説明するための図である。
【図１４】割り込みのタイミングの例を説明するための図（その１）である。
【図１５】割り込みのタイミングの例を説明するための図（その２）である。
【図１６】符号化・復号器とメモリコントローラ間の信号の授受を説明するための図である。
【図１７】１画面の画像データの符号化、復号動作を行う際の、タイミング概要を説明するための図である。
【図１８】  二つの符号化・復号器とメモリコントローラ間の信号の授受を説明するための図である。
【図１９】同期バスにおいて、レディー信号を確認信号として動作させるタイミングを説明するための図（その１）である。
【図２０】同期バスにおいて、レディー信号を確認信号として動作させるタイミングを説明するための図（その２）である。
【符号の説明】
１    画像データ
１０    ＤＷＴ部
１１    量子化器
１２    係数モデリング部
１３    算術符号器
１４    符号形成部
１５    符号データ
２０    １タイルの画像データ
３７    パケットヘッダー
３８    エントロピー符号
４０    符号化・復号化器
４１    前・後処理部
４２    ＤＷＴ／ＩＤＷＴ
４３    エントロピー符号・復号化部
４４    符号形成部
４５    ＰＬＬ
４６    ＣＰＵＩ／Ｆ
４７    ワークメモリ
４８    ヘッダー処理部
４９    ＬＰＦ
８２    メモリコントローラ
【図１】
0004703921.tif 000002
【図２】
0004703921.tif 000003
【図３】
0004703921.tif 000004
【図４】
0004703921.tif 000005
【図５】
0004703921.tif 000006
【図６】
0004703921.tif 000007
【図７】
0004703921.tif 000008
【図８】
0004703921.tif 000009
【図９】
0004703921.tif 000010
【図１０】
0004703921.tif 000011
【図１１】
0004703921.tif 000012
【図１２】
0004703921.tif 000013
【図１３】
0004703921.tif 000014
【図１４】
0004703921.tif 000015
【図１５】
0004703921.tif 000016
【図１６】
0004703921.tif 000017
【図１７】
0004703921.tif 000018
【図１８】
0004703921.tif 000019
【図１９】
0004703921.tif 000020
【図２０】
0004703921.tif 000021