(57)【特許請求の範囲】
【請求項１】
コマンド識別情報、モジュール識別情報及びコマンドの内容情報を含むコマンドを処理する複数の処理モジュールが直列に接続された画像処理装置であって、
前記複数の処理モジュールの各々が、
入力されたコマンドのコマンド識別情報がレジスタからのデータの読み出しを示すかどうかと、当該コマンドのモジュール識別情報が複数の処理モジュールを指定しているかどうかと、を判定する判定手段と、
前記判定手段によって前記コマンドがレジスタからのデータの読出しを示し、複数の処理モジュールを指定していると判定されると、前記コマンドをそのまま下流へ転送する転送手段と、
前記判定手段によって前記コマンドがレジスタからのデータの読出しを示し、複数の処理モジュールを指定していると判定されると、前記コマンドのモジュール識別情報を当該処理モジュールの識別情報に置き換え、内容情報に前記レジスタから読み出したデータを記述して新たなコマンドを生成する生成手段と、
前記生成手段で生成された新たなコマンドを下流へ送信する送信手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記判定手段は、前記コマンドのモジュール識別情報が、全ての処理モジュールを指定する特定の値である場合に、当該コマンドが複数の処理モジュールを指定していると判定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定手段は、前記コマンドの内容情報が指定する読み出しアドレスが、所定のアドレス範囲にある場合に、当該コマンドが複数の処理モジュールを指定していると判定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
メモリに格納されたコマンド群を順次に読み出し、前記複数の処理モジュールの最も上流の処理モジュールへ提供する提供手段と、
前記複数の処理モジュールの最も下流の処理モジュールから出力されたコマンドをメモリに順次に格納する格納手段とを更に備えることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記処理モジュールは、前記判定手段によって前記コマンドがレジスタからのデータの読出しを示し複数の処理モジュールを指定していると判定されると、上流の処理モジュールにビジー信号を送信し、次のコマンドを受け取らないようにすることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記処理モジュールは、前記判定手段によって前記コマンドがレジスタからのデータの読出しを示し複数の処理モジュールを指定していると判定され、前記送信手段によって前記新たなコマンドが送信されると、前記上流の処理モジュールに対して送信しているビジー信号を解除することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
コマンド識別情報、モジュール識別情報及びコマンドの内容情報を含むコマンドを処理する複数の処理モジュールが直列に接続された画像処理装置の制御方法であって、
前記処理モジュールの判定手段が、入力されたコマンドのコマンド識別情報がレジスタからのデータの読み出しを示すかどうかと、当該コマンドのモジュール識別情報が複数の処理モジュールを指定しているかどうかと、を判定する判定工程と、
前記判定工程で前記コマンドはレジスタからのデータの読出しを示し複数の処理モジュールを指定していると判定されると、前記コマンドをそのまま下流へ転送する転送工程と、
前記判定工程で前記コマンドはレジスタからのデータの読出しを示し複数の処理モジュールを指定していると判定されると、前記コマンドのモジュール識別情報を当該処理モジュールの識別情報に置き換え、内容情報に前記レジスタから読み出したデータを記述して新たなコマンドを生成する生成工程と、
前記処理モジュールの送信手段が、前記生成工程で生成された新たなコマンドを下流へ送信する送信工程とを備えることを特徴とする画像処理装置の制御方法。
【請求項８】
前記判定工程では、前記コマンドのモジュール識別情報が、全ての処理モジュールを指定する特定の値である場合に、当該コマンドが複数の処理モジュールを指定していると判定することを特徴とする請求項７に記載の画像処理装置の制御方法。
【請求項９】
前記判定工程では、前記コマンドの内容情報が指定する読み出しアドレスが、所定のアドレス範囲にある場合に、当該コマンドが複数の処理モジュールを指定していると判定することを特徴とする請求項７に記載の画像処理装置の制御方法。
【請求項１０】
前記画像処理装置の提供手段が、メモリに格納されたコマンド群を順次に読み出し、前記複数の処理モジュールの最も上流の処理モジュールへ提供する提供工程と、
前記画像処理装置の格納手段が、前記複数の処理モジュールの最も下流の処理モジュールから出力されたコマンドをメモリに順次に格納する格納工程とを更に備えることを特徴とする請求項７乃至９のいずれか１項に記載の画像処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レジスタデータまたは、画像データを、コマンド化して、複数の画像処理モジュールを直列に接続する伝送路により転送する画像処理装置及びその制御方法に関する。
【背景技術】
【０００２】
従来より、複数の画像処理モジュールがデータ伝送路によって直列に接続された構成の画像処理装置が知られている（特許文献１）。この種の画像処理装置は、図６に示されるように、画像処理モジュール６０１〜６０４がデータ伝送路６０５により直列に接続された構成を有する。レジスタデータや画像データは、コマンド化されて、データ伝送路６０５上を流れ、画像処理モジュール６０１〜６０４に順次に提供されることになる。
【０００３】
各画像処理モジュールは、送られてきたコマンドに記述されているモジュールＩＤを参照して、自身が処理すべきコマンドであるか否かを判断する。そして、処理すべきコマンドであると判断した場合のみ当該コマンドについて処理を実行し、画像処理後にそのコマンドを後段の画像処理モジュールへ送信する。また、処理すべきコマンドでない場合には、何もせずに後段の画像処理モジュールへそのコマンドを転送する。
【特許文献１】特開２００１−１６２８９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら上記従来技術では、全ての画像処理モジュールに共通したレジスタの読み書きを行う場合にも、画像処理モジュールの数だけのコマンドが必要であった。特に、レジスタの読み出しの場合は、コマンドに読み出し結果のデータが記述されるため、各画像処モジュールに応じたコマンドを用意し、それらをデータ伝送路６０５へ流す必要がある。
【０００５】
本発明は、上記の課題に鑑みてなされたものであり、ひとつのレジスタコマンドで全ての画像処理モジュールにおけるレジスタの読み出し処理を実行可能にすることを目的とする。
【課題を解決するための手段】
【０００６】
上記の目的を達成するための本発明の一態様による画像処理装置は以下の構成を備える。すなわち、
コマンド識別情報、モジュール識別情報及びコマンドの内容情報を含むコマンドを処理する複数の処理モジュールが直列に接続された画像処理装置であって、
前記複数の処理モジュールの各々が、
入力されたコマンドのコマンド識別情報がレジスタからのデータの読み出しを示すかどうかと、当該コマンドのモジュール識別情報が複数の処理モジュールを指定しているかどうかと、を判定する判定手段と、
前記判定手段によって前記コマンドがレジスタからのデータの読出しを示し、複数の処理モジュールを指定していると判定されると、前記コマンドをそのまま下流へ転送する転送手段と、
前記判定手段によって前記コマンドがレジスタからのデータの読出しを示し、複数の処理モジュールを指定していると判定されると、前記コマンドのモジュール識別情報を当該処理モジュールの識別情報に置き換え、内容情報に前記レジスタから読み出したデータを記述して新たなコマンドを生成する生成手段と、
前記生成手段で生成された新たなコマンドを下流へ送信する送信手段とを備える。
【０００７】
また、上記の目的を達成するための本発明の一態様による画像処理装置の制御方法は、
コマンド識別情報、モジュール識別情報及びコマンドの内容情報を含むコマンドを処理する複数の処理モジュールが直列に接続された画像処理装置の制御方法であって、
前記処理モジュールの判定手段が、入力されたコマンドのコマンド識別情報がレジスタからのデータの読み出しを示すかどうかと、当該コマンドのモジュール識別情報が複数の処理モジュールを指定しているかどうかと、を判定する判定工程と、
前記判定工程で前記コマンドはレジスタからのデータの読出しを示し複数の処理モジュールを指定していると判定されると、前記コマンドをそのまま下流へ転送する転送工程と、
前記判定工程で前記コマンドはレジスタからのデータの読出しを示し複数の処理モジュールを指定していると判定されると、前記コマンドのモジュール識別情報を当該処理モジュールの識別情報に置き換え、内容情報に前記レジスタから読み出したデータを記述して新たなコマンドを生成する生成工程と、
前記処理モジュールの送信手段が、前記生成工程で生成された新たなコマンドを下流へ送信する送信工程とを備える。
【発明の効果】
【０００８】
本発明によれば、ひとつのレジスタコマンドで全ての画像処理モジュールにおけるレジスタの読み出し処理が実行可能になり、コマンドの省力化によるシステムの高速化が期待できる。
【発明を実施するための最良の形態】
【０００９】
以下、添付の図面を参照して、本発明の好適な実施形態を説明する。
【００１０】
図１は本実施形態による画像処理装置の構成例を示すブロック図である。
【００１１】
図１において、１０１はＣＰＵ、１０２はＲＡＭ、１０３はＲＯＭである。また、１０４は第１の画像処理モジュール、１０５は第２の画像処理モジュール、１０６は第３の画像処理モジュール、１０７は第４の画像処理モジュールである。更に、１０８は第１のダイレクトメモリアクセスコントローラ（以下、ＤＭＡＣ１０８）、１０９は第２のダイレクトメモリアクセスコントローラ（以下、ＤＭＡＣ１０８）である。
【００１２】
画像処理モジュール１０４〜１０７及びＤＭＡＣ１０８、１０９は、単一の伝送路１１１で直列に接続され、ＤＭＡＣ１０８，１０９は汎用バス１１２経由でＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３と接続されている。画像処理モジュール１０４〜１０７は、図示の順に上流側から下流側へ接続されている。
【００１３】
画像処理モジュール１０４〜１０７は、例えばシェーディング補正回路、γ補正回路、色変換回路、拡大縮小回路等の画像処理モジュールを示している。また画像処理モジュール１０４〜１０７の各々は、図２に示されるようなレジスタを備えている。レジスタは、画像処理モジュール個別のレジスタアドレス領域（レジスタアドレス領域ａ、ｂ、ｃ、ｄ）と、画像処理モジュール１０４〜１０７に共通したレジスタアドレス領域（ブロードキャストアドレス領域）を有する。画像処理モジュール１０４〜１０７は図１に示すように同一経路（伝送路１１１）によってデータ転送をすることで画像処理を行う回路であり、ＤＭＡＣ１０８，１０９を介して、汎用バス１１２と接続されている。また、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３は上記の汎用バス１１２と接続されている。
【００１４】
次に第１の実施形態の画像処理装置の動作に関して説明する。
【００１５】
ＣＰＵ１０１は画像処理開始前、決められた処理単位毎に、レジスタデータまたは画像データをコマンド化し、そのコマンドをＲＡＭ１０２に書き込む。または、あらかじめレジスタデータや画像データをコマンド化したコマンドをＲＯＭ１０３に書き込んでおいてもよい。そしてＤＭＡＣ１０８は、ＲＡＭ１０２もしくはＲＯＭ１０３に格納された上記のコマンド群を、最も上流にある画像処理モジュール１０４に順次に提供する。
【００１６】
上記コマンドは、大きく分けて２つのコマンドに分けられる。１つ目は、各画像処理モジュールのレジスタの読み書きを行うためのレジスタコマンドである。２つ目は、画像処理を行うための画像データを含んだ画像コマンドである。
【００１７】
レジスタコマンドは図３の（ａ）に示されるように、ヘッダ情報とデータとで構成される。ヘッダ情報はレジスタコマンドであることを示すコマンドＩＤと、レジスタコマンドの送信先の画像処理モジュールを示すモジュール識別情報としてのモジュールＩＤで構成される。例えば図４で示されるように、画像処理モジュール１０４には“００１”、画像処理モジュール１０５には“０１０”、画像処理モジュール１０６には“０１１”、画像処理モジュール１０７には“１００”がモジュールＩＤとして割り振られている。また全ての処理モジュールに対応するモジュールＩＤは“０００”が割り振られており、以下、このモジュールＩＤをブロードキャストＩＤと称する。
【００１８】
データは、画像処理モジュールのレジスタに対して読み出すコマンドか、書き込むコマンドかを識別するためのリード・ライトＩＤと、レジスタデータと、レジスタアドレスで構成される。上述したコマンドＩＤとリード・ライトＩＤの組み合わせにより、当該コマンドがレジスタの読み出し、レジスタの書き込みといったコマンドの種別を特定するコマンド識別情報が構成される。レジスタデータには、ライトコマンドの場合にはレジスタアドレスで特定される位置に書き込まれるべきデータが、リードコマンドの場合にはレジスタアドレスで特定される位置から読み出されたデータが格納される。すなわち、レジスタアドレス、レジスタデータは、レジスタコマンドの読み出しアドレス、書き込み内容を表す内容情報を構成している。
【００１９】
一方、画像コマンドは図３の（ｂ）に示されるようにヘッダ情報とデータとで構成される。ヘッダ情報は画像コマンドを示すコマンドＩＤで構成される。画像コマンドは全ての画像処理モジュールで処理されるため、モジュールＩＤは画像コマンドに存在しない。データは属性データと画像データで構成される。属性データは、当該画像データの位置情報や、画像データの有効ビット、その他の制御信号等を示す。なお、画像コマンドの画像データは、画像処理モジュールにおいて処理されるべき画像データであり、画像処理モジュールで処理された後はその処理結果として得られた画像データで上書きされる。
【００２０】
上述したように、ＤＭＡＣ１０８ははＲＡＭ１０２またはＲＯＭ１０３からコマンドを読み出し、読み出したコマンドを画像処理モジュール１０４へ転送する。画像処理モジュール１０４はコマンドのコマンドＩＤからレジスタコマンドまたは画像コマンドを認識し、コマンドに応じた処理を行う。
【００２１】
まずコマンドがレジスタコマンドである場合の画像処理モジュール１０４の動作について、図５のフローチャートを用いて説明する。図５は本実施形態の画像処理モジュールが受信したコマンドについて実行する処理を説明するフローチャートである。
【００２２】
ステップＳ５０１において、画像処理モジュール１０４は、送られてきたコマンドのモジュールＩＤを参照する。モジュールＩＤがブロードキャストＩＤでも自分自身の画像処理モジュールのモジュールＩＤでもない場合は、そのコマンドは画像処理モジュール１０４には必要ない。従って、ステップＳ５０２において、画像処理モジュール１０４は、当該コマンドについて何もせずに、当該コマンドを後段の画像処理モジュールに転送する。
【００２３】
一方、上記モジュールＩＤが自分自身の画像処理モジュールを示す場合には、ステップＳ５０３において、画像処理モジュール１０４は、当該コマンドのリード・ライトＩＤを参照する。リード・ライトＩＤがレジスタライトを示す場合、処理はステップＳ５０３からステップＳ５０４へ進む。ステップＳ５０４において、画像処理モジュール１０４は、自身のレジスタの、当該コマンドのレジスタアドレスによって指し示されるアドレスに、当該コマンドのレジスタデータを書き込む。そして、ステップＳ５０５において、画像処理モジュール１０４は、当該コマンドを後段の画像処理モジュール１０５へ転送する。
【００２４】
一方、リード・ライトＩＤがレジスタリードを示す場合は、処理はステップＳ５０３からステップＳ５０６へ進む。ステップＳ５０６において、画像処理モジュール１０４は、自身のレジスタの、コマンドのレジスタアドレスが指し示す位置に格納されているデータを読み出す。そして、ステップＳ５０７において、画像処理モジュール１０４は、上記レジスタから読み出された値を当該コマンドのレジスタデータに書き込んでコマンド化し、これを後段の画像処理モジュール１０５に送信する。
【００２５】
モジュールＩＤがブロードキャストＩＤを示す場合は、処理はステップＳ５０１からステップＳ５０８へ進む。ステップＳ５０８において、画像処理モジュール１０４は、リード・ライトＩＤを参照する。そして、リード・ライトＩＤがレジスタライトを示す場合は、処理はステップＳ５０９へ進む。ステップＳ５０９において、画像処理モジュール１０４は、自身のレジスタの、コマンドのレジスタアドレスが指し示す位置に、当該コマンドのレジスタデータを書き込む。そして、ステップＳ５１０において、画像処理モジュール１０４は、当該コマンドを後段の画像処理モジュール１０５に送信する。
【００２６】
一方、ステップＳ５０８においてリード・ライトＩＤがレジスタリードを示すと判定された場合は、処理はステップＳ５１１へ進む。ステップＳ５１１において、画像処理モジュール１０４は、前段（上流）のモジュールにビジー信号を送信し、次のコマンドを受け取らないようにする。なお、画像処理モジュール１０４の場合、前段のモジュールはＤＭＡＣ１０８となる。そして、画像処理モジュール１０４は、既に受け取った当該コマンドをそのまま後段（下流）の画像処理モジュール１０５に転送する。
【００２７】
続いて、ステップＳ５１２において、画像処理モジュール１０４は、当該コマンドに基づいて以下の構成の新規コマンドを発行する。新規コマンドは、当該コマンドのモジュールＩＤを画像処理モジュール１０４のモジュールＩＤに更新し、当該コマンドのレジスタデータを、レジスタデータから読み出したレジスタ値で更新することにより生成することができる。すなわち、新規コマンドにおいて、
・コマンドＩＤには、レジスタコマンドを示すＩＤが、
・モジュールＩＤには、自分自身の画像処理モジュールを示すＩＤ（図４を用いると、モジュールＩＤは“００１”である）が、
・リード・ライトＩＤ及びレジスタアドレスには、入力された当該コマンドの値が、
・レジスタデータには、画像処理モジュール１０４のレジスタの、入力された当該コマンドのレジスタアドレスが指し示す位置のデータが記述される。
【００２８】
そして、ステップＳ５１３において、画像処理モジュール１０４は、後段の画像処理モジュール１０５に上記新規コマンドを送信すると共に、ステップＳ５１１で前段の画像処理モジュールに対して送信したビジー信号を解除する。新規コマンドのモジュールＩＤは後段の画像処理モジュール１０５〜１０７のいずれとも異なるので、新規コマンドは後段の画像処理モジュール１０５〜１０７によって処理されることはない。
【００２９】
以上説明したように、本実施形態によれば、画像処理モジュールが自らコマンドを発行し、送信することによって、１つのレジスタコマンドで、全ての画像処理モジュールに共通したレジスタの値を、お互いが干渉することなく読み出すことができる。
【００３０】
コマンドが画像コマンドである場合、画像処理モジュール１０４はコマンドのデータを受信し画像処理を行う。そして、画像処理モジュール１０４は画像処理の出力データをコマンド化して後段の画像処理モジュール１０５に送信する。
【００３１】
以上、レジスタコマンド、画像コマンドに対する画像処理モジュール１０４の処理について説明したが、他の画像処理モジュール１０５〜１０７でも同様の処理が行われる。そして、最後に、ＤＭＡＣ１０９は、最も下流の画像処理モジュール１０７から出力されたコマンドを受け取り、これを当該ダイレクトメモリアクセスにおいて予め指定されたＲＡＭ１０２のアドレスへ順次に書き込む。なお、本実施形態では、画像処理モジュールでレジスタ読み出しを行うと新たなコマンドが生成されることになるので、ＤＭＡＣ１０８によるコマンドの読み出し数と、ＤＭＡＣ１０９によるコマンドの書き込み数が異なる。例えば、画像処理モジュールが４つであり、ＤＭＡＣ１０８からブロードキャストＩＤを有する１つのリードコマンドが送られると、ＤＭＡＣ１０９では５つのリードコマンドを受け取ることになる。ＤＭＡＣ１０９はＲＡＭ１０２のアドレスカウンタを順次に増やしながら最終段の画像処理モジュール１０７から受け取ったコマンドをＲＡＭ１０２に格納していく。或いは、ブロードキャストのリードレジスタコマンドに続いて４つのコマンドが連続するとわかっているので、それぞれが格納されるアドレスを予め決定しておいて、そのアドレスに格納していくようにＤＭＡＣ１０９を構成することも可能である。なお、ＤＭＡＣ１０９によるリードレジスタコマンドの判断は、受信したコマンドのヘッダを解析することで実現できる。或いは、画像コマンド終了後に必ずブロードキャストのレジスタリードが行われるシーケンスであれば、受信コマンドのカウント値のみでＤＭＡＣ１０９がリードレジスタコマンドの判断を行うことが可能である。但し、この制御には、画像コマンドの間にリードレジスタコマンド等が入らないことが前提となる。
【００３２】
なお、上記説明において、４つの画像処理モジュール（画像処理モジュール１０４〜１０７）を用いて説明したが、画像処理モジュールの数に依存しないことは言うまでもない。
【００３３】
なお、全ての画像処理モジュールにおけるレジスタへの書き込みを行なう場合は、上述したようにレジスタコマンドのリード・ライトＩＤにライトを、モジュールＩＤにブロードキャストＩＤを設定する。各画像処理モジュールは、レジスタコマンドのレジスタアドレスで指定されたアドレスに、当該レジスタコマンドのレジスタデータを書き込み、当該レジスタコマンドをそのまま下流へ転送する（Ｓ５０９，Ｓ５１０）。
【００３４】
以上のように、本実施形態の画像処理装置によれば、一つのレジスタコマンドで全ての画像処理モジュールに共通したレジスタに対する読み書きが可能になる。その結果、コマンドの省力化によるシステムの高速化が期待できる。
【００３５】
尚、複数の画像処理モジュールに共通したレジスタの読み書きを行なう場合に、ブロードキャストＩＤの代わりに、各画像処理モジュールに共通の所定のアドレス範囲を使用してもよい。この場合、各画像処理モジュールにおけるレジスタコマンドの識別は自身のモジュールＩＤまたは上記特別なアドレス範囲の両者で判定する。即ち、自身のモジュール識別ＩＤと一致するかアドレスが上記特別なアドレス範囲であった場合に、レジスタへの読み書きを行う。例えば、ステップＳ５０１において、特定の範囲のアドレスが指定されていた場合にも処理をステップＳ５０８へ分岐させる。このようにアドレス範囲によって複数の処理モジュールを指定する場合は、画像処理モジュール側で特定のアドレス範囲を設定可能にすることにより、全てではなく一部の複数の画像処理モジュールに対してレジスタコマンドを実行させることができる。
【図面の簡単な説明】
【００３６】
【図１】実施形態による画像処理装置の構成例を示すブロック図である。
【図２】実施形態による画像処理モジュールのレジスタアドレスを説明する図である。
【図３】実施形態のコマンドのデータ構成例を示す図である。
【図４】実施形態のモジュールＩＤの例を示す図である。
【図５】実施形態による画像処理モジュールのレジスタコマンド受信時の処理を説明するフローチャートである。
【図６】複数の画像処理モジュールが接続された一般的な画像処理装置を説明する図である。
【図１】
0005111020.tif 000002
【図２】
0005111020.tif 000003
【図３】
0005111020.tif 000004
【図４】
0005111020.tif 000005
【図５】
0005111020.tif 000006
【図６】
0005111020.tif 000007