(57)【特許請求の範囲】
【請求項１】
初期設定情報に基づいて初期設定されたプログラムとデータに基づいたデータ処理を並列的に行なう複数のプロセッサユニットと、
前記複数のプロセッサユニットを初期設定するための初期設定情報及び前記初期設定情報の設定先である設定先情報が格納される外部記憶装置と、
前記外部記憶装置内の前記初期設定情報及び前記設定先情報の格納場所を含む制御情報が外部から設定される第１回路と、
前記第１回路に設定された前記制御情報を用いて前記初期設定情報と前記設定先情報とを前記外部記憶装置から読み込み、読み込んだ前記設定先情報に従って前記複数のプロセッサユニットへ前記初期設定情報を転送する第２回路とを有する、データ処理装置。
【請求項２】
初期設定情報に基づいて初期設定された内容に従って画像データの符号化及び復号処理が可能にされる複数の画像処理モジュールと、
前記複数の画像処理モジュールを初期設定するための初期設定情報及び前記初期設定情報の設定先である設定先情報が格納される外部記憶装置と、
前記外部記憶装置内の前記初期設定情報及び前記設定先情報の格納場所を含む制御情報が外部から設定される第１回路と、
前記第１回路に設定された前記制御情報を用いて前記初期設定情報と前記設定先情報とを前記外部記憶装置から読み込み、読み込んだ前記設定先情報に従って前記複数の画像処理モジュールへ前記初期設定情報を転送する第２回路とを有する、データ処理装置。
【請求項３】
前記制御情報は前記初期設定情報及び前記設定先情報の格納場所の先頭を示すアドレス情報を有し、前記第２回路は前記先頭を示すアドレス情報を順次インクリメントして前記初期設定情報及び前記設定先情報の読み込み先を順次生成する、請求項２記載の画像符号化復号装置。
【請求項４】
前記設定先情報はどの画像処理モジュールであるかを示す情報、及び画像モジュール内の記憶領域のアドレスを示す情報である、請求項２記載の画像符号化復号装置。
【請求項５】
前記初期設定情報と前記設定先情報は設定先情報毎に固定長のパケットを構成し、それぞれのパケットはフラグを有し、前記フラグの第１状態は当該フラグに前記初期設定情報が後続することを意味し、前記フラグの第２状態は当該パケットが終端パケットであることを意味する、請求項３記載の画像符号化復号装置。
【請求項６】
前記第２の回路は前記終端パケットの前記フラグに応答して、前記初期設定情報と前記設定先情報との読み込みと読み込んだ情報に従った初期設定情報の転送処理を終了する、請求項５記載の画像符号化復号装置。
【請求項７】
前記第２の回路は前記終端パケットの前記フラグに後続するアドレス情報に従ってコード情報を第１の回路に転送し、第１の回路は転送された前記コードに応答して前記複数の画像処理モジュールに画像符号化及び復号処理の開始を指示する、請求項５記載の画像符号化復号装置。
【請求項８】
前記複数の画像処理モジュールとして、符号化処理のための複数の演算処理を並列に行なう複数のプロセッサユニットと、復号処理のための複数の演算処理を並列に行なう複数のプロセッサユニットとを有する、請求項２記載の画像符号化復号装置。
【請求項９】
前記複数のプロセッサユニットの動作プログラムとデータの格納に利用されるＲＡＭが、前記複数のプロセッサユニット各々に設けられ、前記ＲＡＭに前記初期設定情報が初期設定される、請求項８記載の画像符号化復号装置。
【請求項１０】
請求項７記載の画像符号化復号装置と、前記画像符号化復号装置の第１回路に前記制御情報を設定するＣＰＵと、前記画像符号化復号装置の第２回路が読み込む前記初期設定情報と前記設定先情報とが格納される記憶装置とを有するデータ処理システム。
【請求項１１】
前記ＣＰＵは複数の異なる符号化復号処理アルゴリズムのなかから一つを選択するために必要な制御情報を前記画像符号化復号装置の第１回路に設定する、請求項１０記載のデータ処理システム。
【請求項１２】
携帯電話器に搭載された請求項１１記載のデータ処理システム。
【請求項１３】
初期設定情報に基づいて初期設定された内容に従って画像データの符号化または復号処理が可能にされる複数の画像処理モジュールと、
前記複数の画像処理モジュールを初期設定するための初期設定情報及び前記初期設定情報の設定先である設定先情報が格納される外部記憶装置と、
前記外部記憶装置内の前記初期設定情報及び前記設定先情報の格納場所を含む制御情報が外部から設定される第１回路と、
前記第１回路に設定された前記制御情報を用いて前記初期設定情報と前記設定先情報とを前記外部記憶装置から読み込み、読み込んだ前記設定先情報に従って画像処理モジュールへ初期設定情報を転送する第２回路とを有する、画像処理装置。
【請求項１４】
前記制御情報は前記初期設定情報及び前記設定先情報の格納場所の先頭を示すアドレス情報を有し、前記第２回路は前記先頭を示すアドレス情報を順次インクリメントして前記初期設定情報及び前記設定先情報の読み込み先を順次生成する、請求項１３記載の画像処理装置。
【請求項１５】
前記設定先情報はどの画像処理モジュールであるかを示す情報、及び画像モジュール内の記憶領域のアドレスを示す情報である、請求項１３記載の画像処理装置。
【請求項１６】
前記初期設定情報と前記設定先情報は設定先情報毎に固定長のパケットを構成し、それぞれのパケットはフラグを有し、前記フラグの第１状態は当該フラグに前記初期設定情報が後続することを意味し、前記フラグの第２状態は当該パケットが終端パケットであることを意味する、請求項１４記載の画像処理装置。
【請求項１７】
前記第２の回路は前記終端パケットの前記フラグに応答して、前記初期設定情報と前記設定先情報との読み込みと読み込んだ情報に従った初期設定情報の転送処理を終了する、請求項１６記載の画像処理装置。
【請求項１８】
前記第２の回路は前記終端パケットの前記フラグに後続するアドレス情報に従ってコード情報を第１の回路に転送し、第１の回路は転送された前記コードに応答して前記複数の画像処理モジュールに画像符号化または復号処理の開始を指示する、請求項１６記載の画像処理装置。
【請求項１９】
前記複数の画像処理モジュールとして、符号化処理のための複数の演算処理を並列に行なう複数のプロセッサユニットと、復号処理のための複数の演算処理を並列に行なう複数のプロセッサユニットの両方、あるいはそのいずれかを有する、請求項１３記載の画像処理装置。
【請求項２０】
前記複数のプロセッサユニットの動作プログラムとデータの格納に利用されるＲＡＭが前記複数のプロセッサユニット各々に設けられ、前記ＲＡＭに前記初期設定情報が初期設定される、請求項１９記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置、画像符号化復号装置及びそれを適用したデータ処理システムに関し、例えば画像圧縮伸張ハードウェアであるＤＶＤ／ＨＤＤレコーダ、デジタルビデオカメラ、デジタルカメラ、携帯電話、ナビゲーションシステム、デジタルテレビほか動画像再生並びに記録装置全般に適用して有効な技術に関する。
【背景技術】
【０００２】
近年、画像符号化復号装置はＭＰＥＧ２とＭＰＥＧ４のように複数種類の画像符号化復号アルゴリズムに対応可能なマルチコーデック処理に対応するなど、機能が複雑化し、初期設定を行うレジスタ数やプログラムファイルの容量等が増加している。従来技術では、ＣＰＵからバスのスレーブアクセスを利用して画像符号化復号装置内の大量のレジスタを一つずつ設定していたため、初期設定動作に時間がかかる。また、レジスタ等の増加に伴い設定するデータ量が大量になり、ＣＰＵの負荷が増大するといった問題もある。
【０００３】
特許文献１には、レジスタを２面設け、１面を現在の動作に使用して、もう１面を次の動作設定や、レジスタの初期値保持に使用することで、設定時間を隠蔽する技術が記載される。特許文献２には、圧縮したデータを転送し、回路内部で解凍してレジスタに設定することで設定量と時間の短縮を図る技術が記載される。
【０００４】
【特許文献１】特開２００５−５６０３３号公報
【特許文献２】特開２００６−１７８６８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、画像符号化又は復号を行う際には、フレーム毎に符号化と復号処理を切り替えて使用する場合や、フレーム毎にコーデックの種類（アルゴリズムの種類）を切り替えて使用する場合などもあり、そのような場合にはフレーム単位でレジスタ設定やプログラムファイルの入れ替えを行わなければならないという特有の事情がある。これを考慮すると、上記特許文献１及び２に記載の技術では充分に対応できない。また、ＤＭＡ転送を採用すれば確かにＣＰＵの負荷を軽減することはできるが、頻繁に且つ大量のデータを初期設定する場合には、単なるＤＭＡ転送ではＣＰＵの負荷軽減にも限界のあることが本発明者によって見出された。上記事情は、初期設定されたプログラムとデータに基づいたデータ処理を並列的に行なう複数のプロセッサユニットを有するデータ処理装置についても同じである。
【０００６】
本発明の目的は、画像符号化復号装置に代表されるデータ処理装置に頻繁に且つ大量のデータを初期設定する場合に外部のＣＰＵの処理負担を軽減することにある。
【０００７】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【０００９】
すなわち、画像符号化復号装置（データ処理装置）は複数の画像処理モジュール（プロセッサユニット）を初期設定するために第１回路と第２回路を有し、複数の画像処理モジュールに初期設定される情報を直接外部のＣＰＵから受けず、第１回路にＣＰＵから初期設定のための制御情報が設定され、第２回路が第１回路に設定された制御情報を用いて初期設定情報と当該初期設定情報の設定先情報とを外部から読み込み、読み込んだ設定先情報に従って画像処理モジュールへ初期設定情報を転送する。
【００１０】
これにより、ＣＰＵは複数の画像処理モジュールに初期設定される全ての情報を直接画像符号化復号装置にセットすることを要せず、しかも、ＤＭＡ転送を利用する場合のように転送元アドレスと転送先アドレスの双方をＣＰＵが設定することも必要ない。また、ＣＰＵやＤＭＡ転送を用いる場合には初期設定される記憶回路はＣＰＵのアドレス空間にマッピングされることが必要になり、ＣＰＵのアドレス空間の多くを占有することになるが、上記手段ではそれを要さず、個々の画像処理モジュールで初期設定される記憶回路はローカルなアドレスにマッピングされていればよい。
【発明の効果】
【００１１】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１２】
すなわち、画像符号化復号装置に頻繁に且つ大量のデータを初期設定する場合にも外部のＣＰＵの処理負担を軽減することができる。
【発明を実施するための最良の形態】
【００１３】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００１４】
〔１〕本発明に係るデータ処理装置は、初期設定されたプログラムとデータに基づいたデータ処理を並列的に行なう複数のプロセッサユニットと、外部から初期設定のための制御情報が設定される第１回路と、第１回路に設定された制御情報を用いて初期設定情報と当該初期設定情報の設定先情報とを外部から読み込み、読み込んだ設定先情報に従って前記プロセッサユニットへ初期設定情報を転送する第２回路とを有する。
【００１５】
〔２〕本発明に係る画像符号化復号装置は、初期設定された内容に従って画像データの符号化及び復号処理が可能にされる複数の画像処理モジュールと、外部から初期設定のための制御情報が設定される第１回路と、第１回路に設定された制御情報を用いて初期設定情報と当該初期設定情報の設定先情報とを外部から読み込み、読み込んだ設定先情報に従って画像処理モジュールへ初期設定情報を転送する第２回路とを有する。
【００１６】
〔３〕項２の画像符号化復号装置において、前記制御情報は例えば初期設定情報及び設定先情報の格納場所を示すアドレス情報を有する。
【００１７】
〔４〕項３の画像符号化復号装置において、前記制御情報は例えば初期設定情報及び設定先情報の格納場所の先頭を示すアドレス情報を有し、前記第２回路は前記先頭を示すアドレス情報を順次インクリメントして初期設定情報及び設定先情報の読み込み先を順次生成する。
【００１８】
〔５〕項２の画像符号化復号装置において、前記設定先情報は例えば、どの画像処理モジュールであるかを示す情報、及び画像モジュール内の記憶領域のアドレスを示す情報である。
【００１９】
〔６〕項４の画像符号化復号装置において、前記初期設定情報と設定先情報は例えば設定先情報毎に固定長のパケットを構成し、それぞれのパケットはフラグ（Ｅ）を有し、前記フラグの第１状態は当該フラグに初期設定情報が後続することを意味し、前記フラグの第２状態は当該パケットが終端パケットであることを意味する。
【００２０】
〔７〕項６の画像符号化復号装置において、例えば、前記第２の回路は前記終端パケットの前記フラグに応答して、前記初期設定情報と設定先情報との読み込みと読み込んだ情報に従った初期設定情報の転送処理を終了する。
【００２１】
〔８〕項６の画像符号化復号装置において、例えば前記第２の回路は前記終端パケットの前記フラグに後続するアドレス情報に従ってコード情報を第１の回路に転送し、第１の回路は転送された前記コードに応答して前記複数の画像処理モジュールに画像符号化及び復号処理の開始を指示する。
【００２２】
〔９〕項２の画像符号化復号装置において、前記複数の画像処理モジュールとして、符号化処理のための複数の演算処理を並列に行なう複数のプロセッサユニットと、復号処理のための複数の演算処理を並列に行なう複数のプロセッサユニットとを有する。
【００２３】
〔１０〕項９の画像符号化復号装置において、前記プロセッサユニットの動作プログラムとデータの格納に利用されるＲＡＭがそれぞれのデータプロセッサ毎に設けられ、前記ＲＡＭに前記初期設定情報が初期設定される。
【００２４】
〔１１〕本発明に係るデータ処理システムは、項７の画像符号化復号装置と、前記画像符号化復号装置の第１回路に制御情報を設定するＣＰＵと、前記画像符号化復号装置の第２回路が読み込む前記初期設定情報と設定先情報とが格納される記憶装置とを有する。
【００２５】
〔１２〕項１１のデータ処理システムにおいて、前記ＣＰＵは複数の異なる符号化復号処理アルゴリズムのなかから一つを選択するために必要な制御情報を前記画像符号化復号装置の第１回路に設定する。
【００２６】
〔１３〕項１１のデータ処理システムは例えば携帯電話器に搭載される。
【００２７】
２．実施の形態の詳細
実施の形態について更に詳述する。以下、本発明を実施するための形態を図面に基づいて詳細に説明する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
【００２８】
図１には本発明に係る画像符号化復号装置の一例が示される。画像符号化復号装置１０１はバス１０８に共通接続されたＣＰＵ（中央処理装置）１０６及び記憶装置１０７を備えたデータ処理システムに設けられたアクセラレータ若しくは周辺回路モジュールとして位置付けられる。前記バス１０８は、特に制限されないが、スプリットトランザクションバスとルータにより構成され、イニシエータからのリクエストパケットがターゲットに転送され、ターゲットは必要に応じてレスポンスパケットを転送元のイニシエータに返すという、データ転送プロトコルによるバス制御を行う。ここではＣＰＵ１０６と制御装置１０３がイニシエータ、即ちバスマスタとなり得る。
【００２９】
画像符号化複合装置１０１は複数の画像処理モジュール１０４、制御装置１０３および信号処理装置１０２を備え、それらは内部バス１０５に共通接続される。信号処理装置１０２は画像処理モジュール１０４のレジスタや記憶装置にデータやプログラムの初期設定を行う。制御装置１０３はＣＰＵ１０６からの指示に従って画像符号化復号装置を全体的に制御し、例えば、信号処理装置１０２による前記初期設定に必要な情報をＣＰＵ１０６から受取って前記初期設定動作を信号処理装置１０２にさせ、また、初期設定が終った画像処理モジュール１０４に対する起動制御等を行う。
【００３０】
記憶装置１０７は初期設定データ、画像データ及び符号化データ等の格納に利用される。複数の画像処理モジュール１０４は、例えば画像データを符号化するための直交変換処理（ＤＣＴ）、量子化および可変長符号化等の処理をそれぞれ担う複数の回路モジュールと、符号化データを復号するための可変長復号、逆量子化、及び逆ＤＣＴ等の処理をそれぞれ担う複数の回路モジュールとされる。また、それら画像処理モジュールは初期設定されるプログラムや制御データに応じて、ＭＰＥＧ２，ＭＰＥＧ４．Ｈ．２６４等の規格に準拠した処理が選択可能にされる。したがって、デジタルスチルカメラ用処理、ビデオカメラ用処理、及びテレビ電話用画像処理のそれぞれに選択的に対応するという、例えば携帯電話器用途等を想定する場合には、複数の画像処理モジュール１０４に対する比較的設定データ量の多い初期設定を頻繁に行うことが予想される。画像符号化復号装置１０１においては画像処理モジュール１０４に対する初期設定の効率化について考慮されている。以下、その点について詳述する。
【００３１】
図２は画像符号化復号装置１０１を使用して画像符号化、もしくは復号処理を行う際の起動処理（初期設定と初期設定後の画像処理モジュールの起動）のフローチャートである。まずステップＳ２０１において初期設定に必要なデータやプログラム等の所在を特定するための初期設定値起点アドレス、及びエンディアンモードの初期設定値等の初期設定値リードに必要な初期値データがＣＰＵ１０６によって制御装置１０３にセットされ、セット後に、信号処理装置１０２に、セットされた初期値データに従った画像処理モジュール１０４への初期設定データのリード動作が起動される。これによって、ステップＳ２０２では、信号処理装置１０２による記憶装置１０７からの初期値データのリード動作が行われる。例えば初期値データは、図３に例示されるように、内部モジュールＩＤ（画像処理モジュールにＩＤ）、フラグＥ、内部モジュール内アドレス及びデータを有するパケットとして構成される。フラグＥが“０”であればデータは初期設定データで在って、後続のパケットがることを意味する。フラグＥが“１”であれば其れが終端パケットであることを意味し、そのデータ部には制御装置内の終端コード受取りアドレス等が格納されている。ステップＳ２０２のリード動作は終端パケット（Ｅ＝１）が検出されるまで繰り返し行われ、終端パケットを検出するとステップＳ２０４で初期設定値データのリード動作が停止される。リードされた初期設定値データは信号処理装置１０２の制御により、パケットの内部モジュールＩＤとモジュール内アドレスで示される画像処理モジュール１０４のレジスタ及び記憶装置に内部転送されて初期設定される。ステップＳ２０５では更に別の格納アドレスから初期設定値データのリードを行う必要があるかを制御装置１０３が判定し、継続する場合には制御装置１０３は信号処理装置１０２にステップＳ２０１からステップＳ２０５までの処理を繰り返えさせる。すべての初期設定値データのリードが完了した後、ステップＳ２０６で制御装置１０３により画像処理モジュール１０４に対する画像処理の開始が指示される。尚、エンディアンモードとはバス１０８における転送形態がビッグエンディアンであるのかリトルエンディアンであるかを示す。
【００３２】
図４および図５には信号処理装置１０２と制御装置１０３の具体例が示され、特に図４には制御装置１０３の詳細が示され、図５には信号処理装置１０２の詳細が示される。
【００３３】
図４において制御装置１０３はレジスタ回路３１０、外部バスインタフェース（ＥＸＢＩＦ）３１１、終端コード受取りモジュール３１２，制御モジュール３１３、及び内部バスインタフェース（ＩＮＢＩＦ）３１４を有する。レジスタ回路３１０は、起動設定、エンディアンモード、複数の初期設定値基点アドレスの各レジスタ３１０Ａ，３１０Ｂ，３１０Ｃ…を有する。
【００３４】
図４において信号処理装置１０２はリクエスト生成装置３０１、レジスタ回路３０２、レスポンス処理装置３０８、外部バスインタフェース（ＥＸＢＩＦ）３０５、及び内部バスインタフェース（ＩＮＢＩＦ）３０９を備える。レジスタ回路３０２は、起動、エンディアンモード、初期設定値基点アドレスの各レジスタ３０２Ａ，３０２Ｂ，３０２Ｃを有する。リクエスト生成装置３０１はアドレス生成回路３０４とパケット生成回路３０３を有する。
【００３５】
図４を参照しながら、初期設定値データのリード機能について説明する。初期設定値リードを行う信号処理装置１０２は制御装置１０３によりその動作が起動される。初期設定値リードを行う場合、まずＣＰＵ１０６から外部バス１０８、外部バスインタフェース３１１を経由して制御装置１０３内のレジスタ回路３１０にデータ設定が行われる。ＣＰＵ１０６がレジスタ回路３１０に設定するデータは、初期設定値データが格納されている記憶装置１０７上の初期設定値起点アドレス、外部バス１０８のエンディアンモード、および起動設定である。起動設定は、初期設定値起点アドレス及びエンディアンモード等の設定が完了した後に設定される。この起動設定により制御装置１０３に初期設定値リード動作が起動される。初期設定値リード動作の完了後に、制御モジュール３１３が画像処理モジュール１０４を続けて起動する。または初期設定値リードが既に終了している状態で画像処理モジュール１０４のみを起動するというような、起動単位を選択して起動することも可能とされる。
【００３６】
起動設定により初期設定値リード動作の起動が指示されると、制御装置１０３は内部バス１０５を経由して初期設定値データリードの動作を行なう信号処理装置１０２内のレジスタ回路３０２に設定データを転送する。転送される設定データはＣＰＵ１０６によりレジスタ回路３１０にセットされたエンディアンモードと一つの初期設定値基点アドレスを含む。信号処理装置１０２内のレジスタ回路３０２に初期設定値起点アドレス、エンディアンモードなどの初期設定値リードに必要なレジスタデータが転送された後に、制御装置１０３が起動レジスタにイネーブルデータをセットすることにより信号処理装置１０２による初期設定値リード動作が起動される。初期設定値リード動作の起動が指示されると、リクエスト生成装置３０１は初期設定値起点アドレスをレジスタから読み出し、アドレス生成回路３０４でその初期設定値起点アドレスに対応する外部バス１０８上のアドレス計算を行う。パケット生成回路３０３はバスコマンドを生成する。アドレス生成回路３０４で生成されたアドレスと、パケット生成回路３０３で生成したバスコマンドなどは外部バスインタフェース回路３０５で外部バスプロトコルに変換されて外部バス１０８へ出力される。このバスコマンドに従って記憶装置１０７から初期設定値データが読み出され、読み出された初期設定値データがレスポンスとして外部バスインタフェース回路３０５からレスポンス処理装置３０８に供給される。リクエスト生成回路３０１はレスポンス処理装置３０８から停止信号３０６が入力されるまでリクエストパケットを生成し続け、停止信号３０６が入力されるとリクエストの生成を停止して次の起動を待つ。リクエストの生成停止は図２のステップＳ２０４に相当する。リクエストの生成停止は図３の前記Ｅ＝１によって示される終端コードによって検出される。
【００３７】
ここで図３に基づいて外部の記憶装置１０７に格納される初期設定データの例を更に詳述する。外部の記憶装置１０７に格納される初期設定データは、扱うデータ量やデータの種類、内部モジュール数（内部モジュールのＩＤのビット数）や内部モジュールのアドレスのビット数などにより、１パケットを何ビットで構成するかは自由に選択可能である。ここでは、１２８ビットのデータを１パケットとして扱う場合について説明を行う。最初の３２ビットは内部モジュール（画像処理モジュール１０４）のＩＤと終端パケットを示すビットＥを格納する。次の３２ビットは内部モジュール内のアドレスを格納するビット列として使用される。次の６４ビットには内部モジュールへ転送するデータを格納するビット列として使用される。この１２８ビットを１パケットとして扱う。終端パケットについては、終端パケットを示すビットＥはイネーブルにされ（Ｅ＝１）、内部モジュールＩＤは制御装置１０３のＩＤ、内部モジュール内アドレスは制御装置１０３内の終端コードを受け取る専用のアドレス（終端コード受け付けモジュール３１２の内部）を格納する。初期設定データの最初のパケットから終端パケットまでのデータは、初期設定起点アドレスから連続した領域に格納される。
【００３８】
次に、図５を参照しながらレスポンス処理装置による初期設定値データの内部転送機能について説明する。リクエスト生成装置３０１から外部バス１０８に対して出力されたリクエストに対するレスポンスは外部バスインタフェース３０５を経由してレスポンス処理装置３０８に入力される。レスポンス処理装置３０８では、入力されたレスポンスに対し、まずエンディアン変換装置５０１で、レジスタ３０２Ｂに設定されたエンディアンモードによりエンディアン変換を行う。次にレスポンスデータが情報部分（図３の設定データ例の場合は内部モジュールＩＤ、終端パケットを示すビットＥ、内部モジュール内アドレス部分）であるか、データ部分（図３の設定データ例の場合はデータ部分）であるかを判定し、情報部分である場合は情報処理部５０３へ、データ部分である場合はデータ処理部５０４へデータを送る。情報処理部５０３では内部モジュールＩＤ及び内部モジュール内アドレスを解析し、内部バス１０５のアドレス信号やモジュールＩＤ信号等を生成し、各信号を内部バスパケット生成部５０５に送る。データ処理部５０４では内部バスのデータ信号を生成し、内部バスパケット生成部５０５に送る。また、終端コード検出処理部５０２では、情報部分データの終端パケットコードＥを監視し、終端コード（Ｅ＝１）を検出した場合にはリクエスト生成装置３０１へリクエスト停止信号３０６を出力し、リクエストの生成を停止させる。内部バスパケット生成部５０５では、情報処理部５０３及びデータ処理部５０４から入力された信号から内部バスパケットを生成し、内部バスインタフェース３０９を経由して内部バス１０５へパケットを送出する。画像処理モジュール１０４は、自分宛のパケットを受け取ると、内部モジュール内アドレスに従って初期設定データを内部のレジスタや記憶装置に格納する。終端パケットは制御装置１０３の終端コード受け取りモジュール３１２宛に転送される。終端コード受け取りモジュール３１２は内部バスインタフェース３１４を経由して終端パケットを受け取ると、一連のパケット転送で初期設定値が所要の画像処理モジュール１０４に設定されたと判断する。終端コード受け取りモジュール３１２は、終端パケットを受け取ると、画像処理モジュール１０４へ起動信号３１５を送信し、画像処理を開始させる。図２のステップＳ２０５に例示されるように、初期設定値データリードを継続する必要がある場合には、全ての初期設定値データリードを完了してから画像処理を起動する。初期設定値データリードを継続する必要があるか否かは、ＣＰＵ１０６によってレジスタ３１０Ｃに設定された全ての初期設定値基点アドレスに基づく初期設定動作を完了したか否かによって判別することができる。例えばＣＰＵ１０６によるレジスタ３１０Ｃの書き込み個数と、制御装置１０３によるレジスタ３１０Ｃの読み出す個数とが一致するか否かによって判定すればよい。
【００３９】
制御装置の初期設定データリード起動のレジスタ３１０Ａと画像処理起動のレジスタ（終端コード受け付けモジュール３１２内）とを分けることにより、初期設定データリードの開始と画像処理の開始を別々に起動することも可能である。また、初期設定起点アドレスを更新し、再度初期データリードを起動することにより、初期設定データを外部記憶装置の複数箇所に配置することも可能である。
【００４０】
以上説明した信号処理装置１０２と制御装置１０３によれば、ＣＰＵ１０６からは制御装置１０３へ初期設定起点アドレス、エンディアンモード等の最低限の設定だけを行うことによって、その設定に基づいて信号処理装置１０２が自動的に初期設定値データを外部の記憶装置１０７から読み出して、内部の画像処理モジュール１０４にデータやプログラム等の初期設定を行って、画像処理を開始することができる。これにより、ＣＰＵが全ての初期設定値データをセットして初期設定を行う場合に比べて大量のレジスタ設定を行う必要がない。このため、ＣＰＵ負荷を大幅に削減することができる。例えばＣＰＵが全てのレジスタ設定を直接行う場合には図７のように、設定される側の状態やバスの状態に応じてＣＰＵはバスアクセスのリクエストに対してアクノリッジが返されるまで待たなければならず（Ａｃｋのローレベル期間）、設定データが大量の場合には、ＣＰＵの動作時間だけでなく待ち時間も長くなり、ＣＰＵの負荷が大幅に増大する。これに対して本実施の形態のようにＣＰＵ１０６による設定がレジスタ回路３１０Ａだけで良い場合には、図８に例示されるようにアクノリッジが返されるまでの待ち時間（Ａｃｋのローレベル期間）は発生するが、設定データ量が格段に少ないから、図７の場合に比べてＣＰＵ１０６の負荷は大幅に軽減される。
【００４１】
初期設定データのみの起動も可能であるため、バスの負荷が軽い期間に初期設定データを転送しておくこともできるため、バス負荷を低減することができる。
【００４２】
また、制御装置１０３の外部バスインタフェース回路３１１側はスレーブポートであるが、信号処理装置１０２の外部バスインタフェース３０５側はマスタポートとして機能される。従って、このマスタポートを使用して初期設定を行うため、外部バスの仕様によっては、スレーブポートからレジスタ設定する場合よりも高速化を図ることができる。例えば図９に例示されるように、バースト転送等を利用して連続的にデータを読み込むことも可能である。
【００４３】
図６には本発明に係る別の画像符号化復号装置１０１ｍｄｆが例示される。図４，５の画像符号化復号装置１０１とは、信号処理装置１０２ｍｄｆにおけるデータリードの停止制御形態が相違される。例えば、信号処理装置１０２ｍｄｆは終端コードを検出せず、リクエスト生成装置３０１ｍｄｆにデータリード停止制御回路６０１が設けられ、レジスタ回路３０２ｍｄｆには停止設定のレジスタ３０２Ｄが追加される。停止設定レジスタ３０２ＤはＣＰＵ１０６からの指示値が制御装置１０３によってセットされる。停止設定レジスタ３０２Ｄには、例えばリクエスト発行回数、リードデータ量、外部記憶装置のリード終了アドレスなどリクエスト発行を停止するための条件が設定される。リクエスト生成装置３０１ｍｄｆはレジスタ３０２Ｄから停止設定を受け取り、停止する条件に達したらパケット生成回路３０３へリクエスト発行の停止を指示する。
【００４４】
図４，５の画像符号化復号装置１０１では外部バス１０８からのレスポンスを確認し、終端パケットである場合にリクエスト停止処理を行う。このため、終端パケットを読み出すまでに既に発行されたリクエストは無駄読みとなる。図６の例では予め停止条件が設定されるので、無駄読みを無くすことができる。
【００４５】
図１０には画像符号化復号装置を携帯電話システムに適用した例が示される。ベースバンド部６０８には図示を省略するアナログフロントエンドを介して高周波部が接続され、携帯電話の送受信が可能にされる。６１０はアプリケーションプロセッサである。アプリケーションプロセッサ６１０は、本発明に係る画像符号化復号装置６００、書換え可能な不揮発性メモリとしてのフラッシュメモリ（ＦＬＡＳＨ）６１１、ＣＰＵ１０６、メモリコントローラ６０１、画像処理装置６０２、映像出力インタフェース６０３、カメラ入力インタフェース６０４、及びストリームデータ入出力回路６０５を備え、それらはバス１０８に共通接続される。ストリームデータ入出力回路６０５にはベースバンド部６０８とチューナ６０７が接続され、携帯電話ネットワークからダウンロードしたストリームデータやチューナ６０７で受信したストリームデータを入力可能にされる。画像符号化復号装置６００は図４，５又は図６で説明した回路構成を備える。フラッシュメモリ６１１は、特に制限されないが、ＣＰＵ１０６の動作プログラムと共に画像符号化復号装置６００の画像処理モジュール１０４に初期設定されるプログラムやデータが初期的に格納されている。それら初期設定用のプログラムやデータはアプリケーションプロセッサ６１０のパワーオンリセット処理でメモリ１０７の所定の領域に転送され、あるいは適宜ネットワークを介してダウンロードされてメモリ１０７の所定の領域に格納される。そのようにしてメモリ１０７に予め格納される初期設定用のプログラムおよびデータは例えばＭＰＲＧ２、ＭＰＥＧ４、又はＨ．２６４の符号化復号処理アルゴリズムを実現するものである。ＣＰＵ１０６は、動作プログラムに従って、ＭＰＲＧ２、ＭＰＥＧ４、又はＨ．２６４の符号化復号処理アルゴリズムのなかから一つを選択するために必要な制御情報（初期設定値基点アドレス、エンディアンモード）を前記画像符号化復号装置のレジスタ回路３１０に設定する。これによって画像符号化復号装置１０１はＭＰＲＧ２、ＭＰＥＧ４、又はＨ．２６４に準拠した符号化復号処理を選択的に実行することができる。
【００４６】
図１１には画像符号化復号装置６００における動画像に対する符号化エレメント６２０と復号エレメント６３０の基本的な機能ブロックダイヤグラムが例示される。符号化エレメント６２０は、入力画像に対して、動き補償、ＤＣＴ、量子化、可変長符号化、逆量子化、逆ＤＣＴの各機能を備える。復号エレメント６３０は符号化データに対する可変長復号、逆量子化、逆ＤＣＴ、及び動き補償の各機能を備える。前記符号化エレメント６２０及び復号エレメント６３０は複数の画像処理モジュール１０４によって実現される。
【００４７】
図１２には図１１の符号化エレメント６２０と復号エレメント６３０の機能をパイプラインで処理する場合に好適な画像処理モジュールの例が示される。図１２ではマルチプロセッサシステムが採用され、複数のプロセッサユニット７００〜７０９が設けられ、プロセッサユニット７００〜７０３にはＲＡＭ８００〜８０３が接続され、プロセッサユニット７０５〜７０８にはＲＡＭ８０５〜８０８が接続される。プロセッサユニット７００は動き補償、プロセッサユニット７０１はＤＣＴ及び逆ＤＣＴ、プロセッサユニット７０２は量子化及び逆量子化、プロセッサユニット７０３は可変長符号化及び復号に割当てられ、プロセッサユニット７０４はプロセッサユニット７００〜７０３の制御機能を執する。ＲＡＭ８００〜８０３にはそれぞれ対応するプロセッサユニットの機能を実現するためのプログラムやデータの保持に利用される。もう一組のプロセッサユニット７０５〜７０９及びＲＡＭ８０５〜８０８についても同様である。
【００４８】
図１２の画像処理モジュール構成においては複数のプロセッサユニット７００〜７０３、７０５〜７０８で並列処理が行なわれるから、その並列処理数分だけプロセッサユニットのレジスタに対する初期設定やＲＡＭに対するプログラムやデータの初期設定量が増加する。したがって、並列数の多い符号化復号処理を行なう画像処理モジュールが採用される場合に図４，５や図６の構成を採用すれば、ＣＰＵの負担軽減、初期設定動作の高速化という効果が更に顕在化される。
【００４９】
以上説明した画像符号化復号装置によれば、ＣＰＵ１０６が制御装置１０３に設定値や設定先の場所を示す情報を格納した外部の記憶装置１０７の先頭格納アドレス情報を設定し起動をかけると、信号処理装置１０２が自動的に設定されたアドレス位置から設定値と設定先の場所を示す情報を読み出し、設定先の場所を示す情報に従って複数の画像処理モジュール１０４に対する初期設定が行われる。すなわち、ＣＰＵ１０６が外部の記憶装置１０７に初期設定データを格納し、格納場所の先頭位置のアドレス情報を制御装置１０３に設定し起動すると、信号処理装置１０２が初期設定データを自動的に読み出して画像処理モジュール１０４に対する初期設定が行なわれる。
【００５０】
記憶装置１０７が保持する初期設定用情報の中に画像処理モジュールを特定する情報を埋め込むことにより、ＣＰＵ１０６は画像処理モジュールのアドレスを制御装置１０３にセットすることを要しない。
【００５１】
初期設定データの終端を示すデータパケットを初期設定データの最後に配置することにより、自動的に信号処理装置による外部の記憶装置１０７に対するリードリクエストの発行を停止させることができる。信号処理装置にその停止条件を設定する場合には、外部記憶装置から読み出されたレスポンスデータのパケットフラグ（Ｅ）を解析することなく前記リードリクエストの停止を制御することができる。
【００５２】
信号処理装置１０２は１コマンドで複数のデータをリードするバーストアクセス等によって連続アクセスが可能であるから、従来の初期設定などを行っていたスレーブアクセスと比較して、高速に処理を行うことが可能である。
【００５３】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。本発明は画像符号化復号装置だけでなく並列動作される複数のプロセッサユニットを有するデータ処理装置にも広く適用することができる。画像処理モジュールに代えてプロセッサユニットが初期設定の対象にされる。
【図面の簡単な説明】
【００５４】
【図１】図１は本発明に係る画像符号化復号装置の一例を示すブロックダイヤグラムである。
【図２】図２は画像符号化復号装置を使用して画像符号化、もしくは復号処理を行う際の起動処理を示すフローチャートである。
【図３】図３は初期設定に用いられ初期値データのパケット構成を例示するデータフォーマット図である。
【図４】図４は制御装置の詳細と共に信号処理装置の具体例を示すブロックダイヤグラムである。
【図５】図５は信号処理装置の詳細と共に制御装置の具体例を示すブロックダイヤグラムである。
【図６】図６は本発明に係る別の画像符号化復号装置を例示するブロックダイヤグラムである。
【図７】図７はＣＰＵが全てのレジスタ設定を直接行う場合のデータ転送動作を比較例として示すタイミングチャートである。
【図８】図８はＣＰＵが制御装置のスレーブポートを介して内部レジスタを設定する動作を図７との比較用に示したタイミングイチャートである。
【図９】図９は信号処理装置のマスタポートを使用して初期設定値データをリードする動作を例示するタイミングチャートである。
【図１０】図１０は画像符号化復号装置を携帯電話システムに適用した例を示すブロックダイヤグラムである。
【図１１】図１１は画像符号化復号装置における動画像に対する符号化エレメントと復号エレメントの基本的な機能ブロックダイヤグラムである。
【図１２】図１２は図１１の符号化エレメントと復号エレメントの機能をパイプラインで処理する場合に好適な複数の画像処理モジュールのブロックダイヤグラムである。
【符号の説明】
【００５５】
１０１  画像符号化復号装置
１０８  バス
１０６  ＣＰＵ（中央処理装置）
１０７  記憶装置
１０４  画像処理モジュール
１０３  制御装置
１０２  信号処理装置
３１０  レジスタ回路
３１１  外部バスインタフェース（ＥＸＢＩＦ）
３１２  終端コード受取りモジュール
３１３  制御モジュール
３１４  内部バスインタフェース（ＩＮＢＩＦ）
３０１  リクエスト生成装置
３０２  レジスタ回路
３０８  レスポンス処理装置
３０５  外部バスインタフェース（ＥＸＢＩＦ）
３０９  内部バスインタフェース（ＩＮＢＩＦ）
１０１ｍｄｆ  画像符号化復号装置
１０２ｍｆｄ  信号処理装置
３０１ｍｆｄ  リクエスト生成装置
３０２ｍｄｆ  レジスタ回路
６００  画像符号化復号装置
６２０  符号化エレメント
６３０  復号エレメント
７００〜７０９  プロセッサユニット
【図１】
0005111191.tif 000002
【図２】
0005111191.tif 000003
【図３】
0005111191.tif 000004
【図４】
0005111191.tif 000005
【図５】
0005111191.tif 000006
【図６】
0005111191.tif 000007
【図７】
0005111191.tif 000008
【図８】
0005111191.tif 000009
【図９】
0005111191.tif 000010
【図１０】
0005111191.tif 000011
【図１１】
0005111191.tif 000012
【図１２】
0005111191.tif 000013