(57)【要約】【課題】従来の画像処理装置の処理ブロックは、特定の画像処理に限定され、他の画像処理に対応できず、負荷が偏っても、他処理ブロックでは処理できない。また、メモリをアクセスするバスは一つで、複数処理ブロックからのアクセスによるデータ転送負荷増に対処できない。【解決手段】動作開始前に読み取った処理動作が定義されたプログラムに従いマルチメディア符復号処理を並列に行う複数の並列処理プロセッサと、複数の並列処理プロセッサからのデータの記録と読み出しの同時アクセスを可能とするマルチポートメモリと、各並列処理プロセッサからの演算結果を格納し、かつ処理プロセッサからの相互アクセスが可能なレジスタブロックと、動作開始前に読み取った処理動作が定義されたプログラムに従い、レジスタブロックを介して並列処理プロセッサとやり取りするデータの可変長符復号処理を行う可変長符復号処理プロセッサを備える。【選択図】図１
2006040054.tif 000002
【特許請求の範囲】
【請求項１】
動作開始前に異なる処理動作が定義されたプログラムを夫々読み取り、保存し、保存されたプログラム定義のマルチメディア符復号処理を並列に行う複数の並列処理プロセッサと、複数の並列処理プロセッサからのデータの記録と読み出しの同時アクセスを可能とするマルチポートメモリと、各並列処理プロセッサからの演算結果を格納し、各並列処理プロセッサから相互にアクセスが可能なレジスタブロックと、動作開始前に処理動作が定義されたプログラムを読み取り、レジスタブロックを介して並列処理プロセッサとやり取りするデータの可変長符号化処理または可変長復号処理をプログラム定義に従い行う可変長符復号処理プロセッサとを備えたことを特徴とする画像処理装置。
【請求項２】
複数の並列処理プロセッサは装置全体の処理負荷量に応じて動作可能な並列処理プロセッサ数を可変にする構成されたことを特徴とする請求項１記載の画像処理装置。
【請求項３】
各並列処理プロセッサは並列処理が可能な複数の演算器を内蔵し、当該並列処理プロセッサの処理負荷に応じて動作可能な演算器数を可変にする構成されたことを特徴とする請求項１記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はマルチメディア信号処理のため画像信号を符号化及び復号する画像処理装置に関する。
【背景技術】
【０００２】
従来の画像処理装置は、例えば特開2003-204556号公報に開示されるように単一バスによるデータ転送負荷が大きくなることを回避するため、RISC（Reduced Instruction Set Computer；縮小命令セットコンピュータ)コアと、映像デコーダと、ポストプロセッサを接続するために独立したバスを備えていた。
【０００３】
【特許文献１】特開2003-204556号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
RISCコアと、映像デコーダと、ポストプロセッサを接続する独立バスを備えた従来の画像処理装置は、以下のような問題があった。
１．ISO(International Organization for Standardization)のMPEG-4規格(Moving Pictures Expert Group)のデコード処理に限定したものであり、同等の処理を行うMPEG-2やITU（International Telecommunication Union)のH.261の画像処理や、エンコード処理には対応できない。
２．映像デコーダ内の各ブロックで行う処理は、VLD(Variable Length Decoder；可変長デコーダ)、DCT／IDCT(discrete Cosine Transform／Inverse discrete Cosine Transform；離散コサイン変換／逆離散コサイン変換)、MC(Motion Compensation；動き補償)などに特定されており、それぞれの処理負荷が偏ったとしても、他のブロックに処理を行わせることはできない。例えば、MCの処理時間が長い場合、次のマクロブロックの処理をVLDやDCT／IDCT処理ブロックに行わせることはできない。
３．メモリをアクセスするバスは一つであり、RISCコア、映像デコーダ、ポストプロセッサがメモリアクセスすることによるデータ転送負荷の増大には対処できない。
この発明は、上記のような問題点を解決するためになされたもので、MPEG-2、MPEG- 4など複数の画像処理規格に準拠した画像処理装置を、最適なハードウェア規模と動作周波数で実現することを目的とする。
【課題を解決するための手段】
【０００５】
この発明の画像処理装置は、動作開始前に異なる処理動作が定義されたプログラムを夫々読み取り、保存し、保存されたプログラム定義のマルチメディア符復号処理を並列に行う複数の並列処理プロセッサと、複数の並列処理プロセッサからのデータの記録と読み出しの同時アクセスを可能とするマルチポートメモリと、各並列処理プロセッサからの演算結果を格納し、各並列処理プロセッサから相互にアクセスが可能なレジスタブロックと、動作開始前に処理動作が定義されたプログラムを読み取り、レジスタブロックを介して並列処理プロセッサとやり取りするデータの可変長符号化処理または可変長復号処理をプログラム定義に従い行う可変長符復号処理プロセッサとを備える。
【発明の効果】
【０００６】
この発明の画像処理装置では、プログラム可能なプロセッサで画像処理を行うことで複数の画像処理規格に対応でき、かつ、プロセッサにロードするプログラムを変更することで同一のH／Wを複数の処理［IDCT、 IQ(Inverse Quantization；逆量子化)、動き補償など］に割り当てることができる。
また、マルチポートメモリを用いることにより、各プロセッサの独立したメモリアクセスに対応でき、各プロセッサは滞ることなくデータアクセスが可能である。
【発明を実施するための最良の形態】
【０００７】
実施の形態１．
図１はこの発明の画像処理装置を示す構成図である。
図1において、11〜14は夫々複数の演算器を持ち、その演算器が並列に動作し、その動作がプログラムにより定義されることで、DCT、IDCT、動き探索、動き補償、フィルタ処理などのマルチメディア符号化・復号処理を行う並列処理プロセッサ、2は可変長符号化処理、可変長復号処理をプログラムによる動作定義で処理する可変長符復号処理プロセッサ、3は複数の演算器からの同時データアクセスを可能とするマルチポートメモリ、4は並列処理プロセッサ11〜14に備えられた各演算器からの中間的な演算結果を格納し、各演算器から相互にアクセスが可能なレジスタブロックで、有意な値を書き込むことにより、並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2をリセットするリセットレジスタと、並列処理プロセッサ11〜14、可変長符復号処理プロセッサ2の動作の停止またはエンコード動作若しくはデコード動作を開始する動作制御レジスタをも備えている。
5は全体を制御する制御プロセッサ、6は画像データを入出力するための画像インターフェース信号入出力端子、7はビットストリームを一時的に蓄えておくビットストリームバッファ、8はビットストリームインターフェース信号入出力端子である。
【０００８】
次に動作について説明する。
この発明の画像処理装置は、まず初期化動作が行われる。
制御プロセッサ5が、レジスタブロック4に割り当てられているリセットレジスタに有意な値を書き込み、これを並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2が読み込むことで、並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2はリセットされる。並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2は、リセットされることで、それぞれのプログラムカウンタを0にする。また、レジスタブロック4には、並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2の動作制御を行うレジスタが存在している。このレジスタ設定により、初期化動作時には、並列処理プロセッサ11〜14、可変長符復号処理プロセッサ2の動作を停止させておく。
【０００９】
次に、制御プロセッサ5の制御により並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2は画像処理のためのプログラムを外部の記憶装置より読み込みダウンロードする。即ち、制御プロセッサ5の制御により、レジスタブロック4経由で、並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2内部にあるプログラムメモリにプログラムを書き込む。最後にレジスタブロック4の動作制御レジスタの設定により、並列処理プロセッサ11〜14および可変長符復号処理プロセッサ2を起動し、エンコード動作、または、デコード動作を開始する。
【００１０】
次にエンコード動作について、MPEG-4の場合を例に取って説明する。
エンコード動作では、例えば、並列処理プロセッサ11には動き予測処理が、並列処理プロセッサ12にはDCT／Q(Quantization；量子化)／AC-DC予測処理が、並列処理プロセッサ13には画像フォーマット変換フィルタ処理が、並列処理プロセッサ14にはAC-DC差分（AC-DC予測復号処理）／IQ／IDCT処理と動き補償処理が、初期化動作によりプログラミングされているものとする。
【００１１】
画像インターフェース信号入出力端子6よりエンコードのための画像信号が入力されると、並列処理プロセッサ13は画像フォーマット変換フィルタ処理を行う。例えば、入力画像が720x480の画像であり、符号化画像が352x288の場合、縦、横を圧縮する処理を行う。並列処理プロセッサ13で符号化画像サイズに圧縮された画像データは、マルチポートメモリ3に格納される。次に並列処理プロセッサ11によって、動き予測処理が行われる。マルチポートメモリ3より並列処理プロセッサ13により画像フォーマット変換フィルタ処理された符号化対象画像と以前に符号化された復号画像である参照画像を転送し、参照画像の中からもっとも差分の少ない画像の位置を、動き成分としてレジスタブロック4に出力する。また、同時に参照画像と符号化対象画像の差分をマルチポートメモリ3に出力する。
【００１２】
次に、並列処理プロセッサ12で符号化処理の続きが行われる。マルチポートメモリ3から参照画像と符号化対象画像の差分値を入力し、DCT／Q／AC-DC予測処理を行う。結果はレジスタブロック4に格納する。
可変長符復号処理プロセッサ2は、レジスタブロック4に格納された符号化パラメータ、即ち並列処理プロセッサ12の処理結果および並列処理プロセッサ11の処理結果である動き成分を用いて、ハフマン符号化を行い、ビットストリームをビットストリームバッファ7に一旦保存し、ビットストリームインターフェース信号入出力端子8より出力する。
【００１３】
一方、並列処理プロセッサ14では次のフレームの予測のために局部復号処理が行われる。レジスタブロック4に格納された各種パラメータから、AC-DC予測復号、IQ、IDCT処理が行われ、同じくレジスタブロック4に格納されている動き成分を元にマルチポートメモリ3から転送した予測画像との加算を行う。加算された結果の局部復号画像は参照画像としてマルチポートメモリ3に転送される。
以上のエンコード処理全体は、制御プロセッサ5によって制御される。
【００１４】
次にデコード動作について説明する。
デコード動作では、例えば、並列処理プロセッサ11にはデブロッキングフィルタ処理が、並列処理プロセッサ12にはAC-DC予測復号、IQ処理が、並列処理プロセッサ13には画像フォーマット変換フィルタ処理が、並列処理プロセッサ14にはIDCT処理と動き補償処理が、初期化動作によりプログラミングされているものとする。
【００１５】
ビットストリームバッファ7を介してビットストリームインターフェース信号入出力端子8よりビットストリームが、可変長符復号処理プロセッサ2に入力される。可変長符復号処理プロセッサ2はハフマン復号を行い、デコードに必要なパラメータをレジスタブロック4に格納する。
並列処理プロセッサ12は、必要なパラメータをレジスタブロック4から入力し、AC-DC予測復号、IQ処理を行う。結果はマルチポートメモリ3に格納される。並列処理プロセッサ14は、IQ処理の結果をマルチポートメモリ3から入力し、IDCT処理を行う。その後、参照画像をマルチポートメモリ3から入力し、IDCT結果との加算を行う。こうしてできた復号画像はマルチポートメモリ3に格納される。
【００１６】
並列処理プロセッサ11は作成された復号画像に対するデブロッキング処理を行う。このとき必要な符号化パラメータはレジスタブロック4から入力される。
デブロッキング処理のあと、符号化サイズの画像を映像出力サイズに拡大する処理を、並列処理プロセッサ13で行う。エンコード動作で説明した画像フォーマット処理の逆を行うことになる。
映像出力フォーマットに変換された画像データは、画像インターフェース信号入出力端子6より、図示しない表示機器に出力される。
【００１７】
デコード処理ではエンコード処理に比べて処理負荷が小さいことが分かる。エンコード処理では、動き補償、AC-DC予測復号、IQ、IDCT処理を一つの並列処理プロセッサ14でやっていたのに対し、デコード処理では並列処理プロセッサ12と14の2つの並列処理プロセッサで分割して行っている。このような場合、並列処理プロセッサ12および14の動作周波数を低くすることで、低消費電力化が可能になる。
また、画像処理装置がデコード処理に限ったものであれば、並列処理プロセッサ14に動き補償、AC-DC予測復号、IQ、IDCT処理を行わせ、並列処理プロセッサ12を削除しても良い。このことで回路規模を小さくすることができる。
周波数の低減、および、回路規模の縮小は、エンコード／デコード処理の違いだけでなく、符号化を行う画像サイズ(CIF(352x288), QCIF(176x144)など)の違いでも同等の調整が可能である。
【００１８】
また、動作説明はMPEG-4を例に取って行ったが、初期化の際にロードするプログラムを変えることで、MPEG-2, H.261などにも適用可能である。
【００１９】
以上のように、この実施の形態の画像処理装置では、プログラム可能なプロセッサで画像処理を行うことで複数の画像処理規格に対応でき、かつ、プロセッサにロードするプログラムを変更することで同一のH/Wを複数の処理(IDCT, IQ, 動き補償など)に割り当てることができる。
また、各プロセッサは独立にメモリをアクセスするが、マルチポートメモリにより滞ることなくデータアクセスが可能である。
【００２０】
さらに、処理負荷に応じてプロセッサの数を可変にできるため、ハードウェア量、消費電力を最適にすることができる。
さらにまた、各並列処理プロセッサはその処理負荷量に応じて内蔵する複数の演算器の動作可能な数を可変にしてもよい。このように構成することで、処理負荷に応じてハードウェア量、消費電力を最適にすることができる。
【産業上の利用可能性】
【００２１】
デジタルカメラなどのデジタルオーディオ・ビデオ（デジタルＡＶ）製品用のチップに適用されることで、Ｈ／Ｗ回路規模、消費電力の最適化が図れる。
【図面の簡単な説明】
【００２２】
【図１】この発明の画像処理装置を示す構成図である。
【符号の説明】
【００２３】
11〜14：並列処理プロセッサ、2：可変長符復号処理プロセッサ、3：マルチポートメモリ、4：レジスタブロック、5：制御プロセッサ、6：画像インターフェース信号入出力端子、7：ビットストリームバッファ、8：ビットストリームインターフェース信号入出力端子。
【図１】
2006040054.tif 000003