(57)【特許請求の範囲】
【請求項１】
読み取った画像信号をディジタル変換された画像信号に変換し、もしくはディジタル的に生成された画像情報を画像信号に変換し、ディジタル変換された画像信号を顕像として出力可能な画像信号になるように処理し、前記ディジタル変換された画像信号に対し画像処理をおこなうプログラマブルな画像処理手段と、前記画像処理手段へのクロック信号の停止を制御するクロック停止制御手段とを有する画像処理装置であって、
前記画像処理手段は、複数画素データに対して同時に同じ演算をおこなうＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ｄａｔａ  ｓｔｒｅａｍ）型演算処理手段と、１画素単位で演算をおこなう逐次型演算処理手段であり、
前記クロック停止制御手段は前記画像信号の１ライン期間が開始される毎に前記ＳＩＭＤ型演算処理手段に対する前記クロック信号と前記逐次型演算処理手段に対する前記クロック信号を出力し、あらかじめ決められた第１の時間後に前記ＳＩＭＤ型演算手段に対する前記クロックを停止し、あらかじめ決められた第２の時間後に逐次型演算処理手段に対する前記クロックを停止することを特徴とする画像処理装置。
【請求項２】
前記クロック停止制御手段は前記演算処理手段へのクロック信号の停止と前記演算処理手段以外の部分へのクロック信号の停止とを別個に制御することを特徴とする請求項１に記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、画像処理装置にかかり、ディジタル画像信号により転写紙に画像を再生する装置、特にスキャナーから画像を読み込んで転写紙に画像を再生する装置に適用されるディジタル画像信号に対して画像処理をおこなう画像処理装置に関するものである。
【０００２】
【従来の技術】
従来、アナログ複写機からディジタル化された画像データの処理をおこなうディジタル複写機が登場し、さらに、ディジタル複写機が複写機としての機能だけでなく、複写機の機能に加えて、ファクシミリの機能、プリンターの機能、スキャナーの機能等の各機能を複合したディジタル複合機が存在する。
【０００３】
上述のようなディジタル複合機で使用する画像処理装置として、読み取り信号の画像処理、メモリーへの画像蓄積、複数機能の並行動作およびそれぞれの画像処理の順序、回数を任意に設定できる制御手段を備えた『画像処理装置』（たとえば、特開平８−２７４９８６号公報）が既に提案されており、この画像処理装置では、各種の画像処理を一つの画像処理構成で実行することができる。
【０００４】
【発明が解決しようとする課題】
上述の画像処理装置は、画像処理の順序、回数を任意に設定できるため、入力された画像データに対して最適な画像処理をおこなうことができ、各種の画像処理を一つの画像処理構成で実行することができるが、並列処理型等の一つのアーキテクチャの画像処理ハードウエア（演算処理手段）しか備えておらず、画像処理の内容に応じて好ましいアーキテクチャの演算処理手段を選択することはできない。
【０００５】
たとえば、ＦＩＲフィルター（有限インパルス応答フィルター）のような画像処理アルゴリズムによる画像処理は、並列処理型の演算処理手段による演算処理が向いているが、ＩＩＲフィルター（無限インパルス応答フィルター）のような画像処理アルゴリズムによる画像処理は、並列処理型の演算処理手段による演算処理には向いておらず、パイプライン処理をおこなうような逐次処理型の演算処理手段による演算処理が向いている。
【０００６】
上述のように異なる種類の画像処理アルゴリズムによる画像処理を選択的におこなうことがあるディジタル複合機では、一つのアーキテクチャの画像処理ハードウエアしか備えていないと、リソースを十分に活用した高効率の画像処理をおこなうことができないという問題点があった。
【０００７】
また、画像処理の複雑化は、画像処理装置にインプリメントするＬＳＩの大規模化を招き、さらに、画像処理部全体に常にクロック信号が入力され、常にオン状態となるため、消費電力の増大、発熱等の問題点があった。特に近年、地球温暖化防止、環境保全が注目され、電気、電子機器の省エネルギー化が必須となっているにもかかわらず、省エネルギー化ができていないという問題点があった。
【０００８】
この発明は、上述した従来技術の問題点を解消するためになされたもので、異なる種類の画像処理アルゴリズムによる画像処理を各々の画像処理アルゴリズムに適したアーキテクチャの画像処理手段によっておこない、リソースを十分に活用した高効率の画像処理をおこない、また、消費電力を低減することができる画像処理装置を提供することを目的としている。
【０００９】
【課題を解決するための手段】
上述した課題を解決し、上記目的を達成するために、本発明にかかる画像処理装置は、読み取った画像信号をディジタル変換された画像信号に変換し、もしくはディジタル的に生成された画像情報を画像信号に変換し、ディジタル変換された画像信号を顕像として出力可能な画像信号になるように処理し、前記ディジタル変換された画像信号に対し画像処理をおこなうプログラマブルな画像処理手段を有する画像処理装置において、前記画像処理手段へのクロック信号の停止を制御するクロック停止制御手段を具備し、前記画像処理手段は２種類以上の異なったアーキテクチャによる演算処理手段によって構成されていることを特徴とする。
【００１０】
この発明によれば、実行する画像処理アルゴリズムに応じて異なるアーキテクチャによる演算処理手段を使い分けることができ、また、必要のない（使用しない）ときは画像処理手段へのクロック信号を停止することができる。
【００１１】
また、本発明にかかる画像処理装置は、上記発明において、前記クロック停止制御手段が前記演算処理手段へのクロック信号の停止と前記演算処理手段以外の部分へのクロック信号の停止とを別個に制御することを特徴とする。
【００１２】
この発明によれば、必要に応じて演算処理手段へのクロック信号の停止と演算処理手段以外の部分へのクロック信号の停止とを別個に制御することができる。
【００１３】
また、本発明にかかる画像処理装置は、上記記載の発明において、前記クロック停止制御手段が前記各演算処理手段ごと別個にクロック信号の停止を制御することを特徴とする。
【００１４】
この発明によれば、必要に応じて各演算処理手段ごと別個にクロック信号の停止を制御することができる。
【００１５】
また、本発明にかかる画像処理装置は、上記発明において、前記クロック停止制御手段はあらかじめ設定したタイミングでクロック信号を停止または発振させることを特徴とする。
【００１６】
この発明によれば、処理（１ライン処理等）の途中でもあらかじめ設定したタイミングでクロック信号を停止または発振させることができる。
【００１７】
また、本発明にかかる画像処理装置は、上記発明において、前記クロック停止制御手段はあらかじめ設定したタイミングで前記各演算処理手段ごと別個にクロック信号を停止または発振させることを特徴とする。
【００１８】
この発明によれば、処理（１ライン処理等）の途中でもあらかじめ設定したタイミングで各演算処理手段ごと別個にクロック信号を停止または発振させることができる。
【００１９】
また、本発明にかかる画像処理装置は、上記発明において、前記演算処理手段が、複数画素データに対して同時に同じ演算をおこなうＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ｄａｔａ  ｓｔｒｅａｍ）型演算処理手段と、１画素単位で演算をおこなう逐次型演算処理手段とを有していることを特徴とする。
【００２０】
この発明によれば、実行する画像処理アルゴリズムに応じてＳＩＭＤ型演算処理手段と逐次型演算処理手段とを使い分けることができる。
【００２１】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像処理装置の好適な実施の形態を詳細に説明する。
【００２２】
まず、本実施の形態にかかる画像処理装置の原理について説明する。図１はこの発明の本実施の形態にかかる画像処理装置の構成を機能的に示すブロック図である。図１において、画像処理装置は、以下に示す５つのユニットを含む構成である。
【００２３】
上記５つのユニットとは、画像データ制御ユニット１００と、画像データを読み取る画像読取ユニット１０１と、画像を蓄積する画像メモリーを制御して画像データの書き込み／読み出しをおこなう画像メモリー制御ユニット１０２と、画像データに対し加工編集等の画像処理を施す画像処理ユニット１０３と、画像データを転写紙等に書き込む画像書込ユニット１０４と、である。
【００２４】
上記各ユニットは、画像データ制御ユニット１００を中心に、画像読取ユニット１０１と、画像メモリー制御ユニット１０２と、画像処理ユニット１０３と、画像書込ユニット１０４とがそれぞれ画像データ制御ユニット１００に接続されている。
【００２５】
（画像データ制御ユニット１００）
画像データ制御ユニット１００によりおこなわれる処理としては以下のようなものがある。
【００２６】
たとえば、
（１）データのバス転送効率を向上させるためのデータ圧縮処理（一次圧縮）、
（２）一次圧縮データの画像データへの転送処理、
（３）画像合成処理（複数ユニットからの画像データを合成することが可能である。また、データバス上での合成も含む。）、
（４）画像シフト処理（主走査および副走査方向の画像のシフト）、
（５）画像領域拡張処理（画像領域を周辺へ任意量だけ拡大することが可能）、
（６）画像変倍処理（たとえば、５０％または２００％の固定変倍）、
（７）パラレルバス・インターフェース処理、
（８）シリアルバス・インターフェース処理（後述するプロセス・コントローラー２１１とのインターフェース）、
（９）パラレルデータとシリアルデータのフォーマット変換処理、
（１０）画像読取ユニット１０１とのインターフェース処理、
（１１）画像処理ユニット１０３とのインターフェース処理、
等である。
【００２７】
（画像読取ユニット１０１）
画像読取ユニット１０１によりおこなわれる処理としては以下のようなものがある。
【００２８】
たとえば、
（１）光学系による原稿反射光の読み取り処理、
（２）ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ：電荷結合素子）での電気信号への変換処理、
（３）Ａ／Ｄ変換器でのディジタル化処理、
（４）シェーディング補正処理（光源の照度分布ムラを補正する処理）、
（５）スキャナーγ補正処理（読み取り系の濃度特性を補正する処理）、
等である。
【００２９】
（画像メモリー制御ユニット１０２）
画像メモリー制御ユニット１０２によりおこなわれる処理としては以下のようなものがある。
【００３０】
たとえば、
（１）システム・コントローラーとのインターフェース制御処理、
（２）パラレルバス制御処理（パラレルバスとのインターフェース制御処理）、
（３）ネットワーク制御処理、
（４）シリアルバス制御処理（複数の外部シリアルポートの制御処理）、
（５）内部バスインターフェース制御処理（操作部とのコマンド制御処理）、
（６）ローカルバス制御処理（システム・コントローラーを起動させるためのＲＯＭ、ＲＡＭ、フォントデータのアクセス制御処理）、
（７）メモリー・モジュールの動作制御処理（メモリー・モジュールの書き込み／読み出し制御処理等）、
（８）メモリー・モジュールへのアクセス制御処理（複数のユニットからのメモリー・アクセス要求の調停をおこなう処理）、
（９）データの圧縮／伸張処理（メモリー有効活用のためのデータ量の削減するための処理）、
（１０）画像編集処理（メモリー領域のデータクリア、画像データの回転処理、メモリー上での画像合成処理等）、
等である。
【００３１】
（画像処理ユニット１０３）
画像処理ユニット１０３によりおこなわれる処理としては以下のようなものがある。
【００３２】
たとえば、
（１）シェーディング補正処理（光源の照度分布ムラを補正する処理）、
（２）スキャナーγ補正処理（読み取り系の濃度特性を補正する処理）、
（３）ＭＴＦ補正処理、
（４）平滑処理、
（５）主走査方向の任意変倍処理、
（６）濃度変換（γ変換処理：濃度ノッチに対応）、
（７）単純多値化処理、
（８）単純二値化処理、
（９）誤差拡散処理、
（１０）ディザ処理、
（１１）ドット配置位相制御処理（右寄りドット、左寄りドット）、
（１２）孤立点除去処理、
（１３）像域分離処理（色判定、属性判定、適応処理）、
（１４）密度変換処理、
等である。
【００３３】
（画像書込ユニット１０４）
画像書込ユニット１０４によりおこなわれる処理としては以下のようなものがある。
【００３４】
たとえば、
（１）エッジ平滑処理（ジャギー補正処理）、
（２）ドット再配置のための補正処理、
（３）画像信号のパルス制御処理、
（４）パラレルデータとシリアルデータのフォーマット変換処理、
等である。
【００３５】
（ディジタル複合機のハードウエア構成）
つぎに、本実施の形態にかかる画像処理装置がディジタル複合機を構成する場合のハードウエア構成について説明する。図２は本実施の形態にかかる画像処理装置のハードウエア構成の一例を示すブロック図である。
【００３６】
図２のブロック図において、本実施の形態にかかる画像処理装置は、読取ユニット２０１と、センサー・ボード・ユニット２０２と、画像データ制御部２０３と、画像処理プロセッサー（画像処理手段）２０４と、ビデオ・データ制御部２０５と、作像ユニット（エンジン）２０６とを備える。また、本実施の形態にかかる画像処理装置は、シリアルバス２１０を介して、プロセス・コントローラー２１１と、ＲＡＭ２１２と、ＲＯＭ２１３とを備える。
【００３７】
また、本実施の形態にかかる画像処理装置は、パラレルバス２２０を介して、画像メモリー・アクセス制御部２２１と、ファクシミリ制御ユニット２２４とを備え、さらに、画像メモリー・アクセス制御部２２１に接続されるメモリー・モジュール２２２と、システム・コントローラー２３１と、ＲＡＭ２３２と、ＲＯＭ２３３と、操作パネル２３４とを備える。
【００３８】
ここで、上記各構成部と、図１に示した各ユニット１００〜１０４との関係について説明する。すなわち、読取ユニット２０１およびセンサー・ボード・ユニット２０２により、図１に示した画像読取ユニット１０１の機能を実現する。また同様に、画像データ制御部２０３により、画像データ制御ユニット１００の機能を実現する。また同様に、画像処理プロセッサー２０４により画像処理ユニット１０３の機能を実現する。
【００３９】
また同様に、ビデオ・データ制御部２０５および作像ユニット（エンジン）２０６により画像書込ユニット１０４を実現する。また同様に、画像メモリー・アクセス制御部２２１およびメモリー・モジュール２２２により画像メモリー制御ユニット１０２を実現する。
【００４０】
つぎに、各構成部の内容について説明する。原稿を光学的に読み取る読取ユニット２０１は、ランプとミラーとレンズから構成され、原稿に対するランプ照射の反射光をミラーおよびレンズにより受光素子に集光する。
【００４１】
受光素子、たとえばＣＣＤは、センサー・ボード・ユニット２０２に搭載され、ＣＣＤにおいて電気信号に変換された画像データはディジタル信号に変換された後、センサー・ボード・ユニット２０２から出力（送信）される。
【００４２】
センサー・ボード・ユニット２０２から出力（送信）された画像データは画像データ制御部２０３に入力（受信）される。機能デバイス（処理ユニット）およびデータバス間における画像データの伝送は画像データ制御部２０３がすべて制御する。
【００４３】
画像データ制御部（画像データ・インターフェース制御部）２０３は、画像データに関し、センサー・ボード・ユニット２０２、パラレルバス２２０、画像処理プロセッサー２０４間のデータ転送、プロセス・コントローラー２１１と画像処理装置の全体制御を司るシステム・コントローラー２３１との間の通信をおこなう。また、ＲＡＭ２１２はプロセス・コントローラー２１１のワークエリアとして使用され、ＲＯＭ２１３はプロセス・コントローラー２１１のブートプログラム等を記憶している。
【００４４】
画像処理プロセッサー２０４は画像処理をおこなうプログラマブルな演算処理手段である。センサー・ボード・ユニット２０２から出力（送信）された画像データは、画像データ制御部２０３を経由して画像処理プロセッサー２０４に転送（送信）され、画像処理プロセッサー２０４にて光学系およびディジタル信号への量子化に伴う信号劣化（スキャナー系の信号劣化とする）を補正され、再度、画像データ制御部２０３へ出力（送信）される。
【００４５】
画像メモリー・アクセス制御部２２１は、メモリー・モジュール２２２に対する画像データの書き込み／読み出しを制御する。システム・コントローラー２３１は、パラレルバス２２０に接続される各構成部の動作を制御する。また、ＲＡＭ２３２はシステム・コントローラー２３１のワークエリアとして使用され、ＲＯＭ２３３はシステム・コントローラー２３１のブートプログラム等を記憶している。
【００４６】
操作パネル２３４は、画像処理装置がおこなうべき処理を入力する。たとえば、処理の種類（複写、ファクシミリ送信、画像読込、プリント等）および処理の枚数等を入力する。これにより、画像データ制御情報の入力をおこなうことができる。なお、ファクシミリ制御ユニット２２４の内容についての詳細は後述する。
【００４７】
読取ユニット２０１より読み取った画像データの処理には、読み取り画像データをメモリー・モジュール２２２に蓄積して再利用するジョブと、メモリー・モジュール２２２に蓄積しないジョブとがあり、それぞれの場合について説明する。
【００４８】
読み取り画像データをメモリー・モジュール２２２に蓄積する例としては、１枚の原稿について複数枚を複写する場合があり、この場合には、読取ユニット２０１を１回だけ動作させ、読取ユニット２０１により読み取った画像データをメモリー・モジュール２２２に蓄積し、メモリー・モジュール２２２に蓄積された画像データを複数回読み出す。
【００４９】
メモリー・モジュール２２２を使わない例としては、１枚の原稿を１枚だけ複写する場合があり、この場合には、読み取り画像データをそのまま再生すればよいので、画像メモリー・アクセス制御部２２１によるメモリー・モジュール２２２へのアクセスをおこなう必要はない。
【００５０】
メモリー・モジュール２２２を使わない場合には、画像処理プロセッサー２０４から画像データ制御部２０３へ転送されたデータは、再度、画像データ制御部２０３から画像処理プロセッサー２０４へ戻される。画像処理プロセッサー２０４においては、センサー・ボード・ユニット２０２におけるＣＣＤによる輝度データを面積階調に変換するための画質処理をおこなう。
【００５１】
画質処理後の画像データは画像処理プロセッサー２０４からビデオ・データ制御部２０５に転送される。ビデオ・データ制御部２０５は、面積階調に変化された信号に対し、ドット配置に関する後処理およびドットを再現するためのパルス制御をおこなう。その後、画像データは作像ユニット２０６へ送られ、作像ユニット２０６が転写紙上に再生画像を形成する。
【００５２】
つぎに、メモリー・モジュール２２２に蓄積し、画像読み出し時に付加的な処理、たとえば画像方向の回転、画像の合成等をおこなう場合の画像データの流れについて説明する。画像処理プロセッサー２０４から画像データ制御部２０３へ転送された画像データは、画像データ制御部２０３からパラレルバス２２０を経由して画像メモリー・アクセス制御部２２１に送られる。
【００５３】
ここでは、システム・コントローラー２３１の制御に基づいて、画像データとメモリー・モジュール２２２のアクセス制御、外部ＰＣ（パーソナル・コンピューター）２２３のプリント用データの展開、メモリー・モジュール２２２の有効活用のための画像データの圧縮／伸張をおこなう。
【００５４】
画像メモリー・アクセス制御部２２１へ送られた画像データは、データ圧縮後、メモリー・モジュール２２２に蓄積され、蓄積された画像データは必要に応じて読み出される。読み出された画像データは、伸張され、本来の画像データに戻し画像メモリー・アクセス制御部２２１からパラレルバス２２０を経由して画像データ制御部２０３へ戻される。
【００５５】
画像データ制御部２０３から画像処理プロセッサー２０４への転送後は画質処理、およびビデオ・データ制御部２０５でのパルス制御をおこない、作像ユニット２０６において転写紙上に再生画像を形成する。画像データの流れにおいて、パラレルバス２２０および画像データ制御部２０３でのバス制御により、ディジタル複合機の機能を実現する。
【００５６】
ファクシミリ送信は、読み取られた画像データを画像処理プロセッサー２０４にて画像処理し、画像データ制御部２０３およびパラレルバス２２０を経由してファクシミリ制御ユニット２２４へ転送することによりおこなわれる。ファクシミリ制御ユニット２２４は、通信網へのデータ変換をおこない、それを公衆回線（ＰＮ）２２５へファクシミリデータとして送信する。
【００５７】
ファクシミリ受信は、公衆回線（ＰＮ）２２５からの回線データをファクシミリ制御ユニット２２４にて画像データへ変換し、パラレルバス２２０および画像データ制御部２０３を経由して画像処理プロセッサー２０４へ転送することによりおこなわれる。この場合、特別な画質処理はおこなわず、ビデオ・データ制御部２０５においてドット再配置およびパルス制御をおこない、作像ユニット２０６において転写紙上に再生画像を形成する。
【００５８】
複数ジョブ、たとえば、コピー機能、ファクシミリ送受信機能、プリンター出力機能が並行に動作する状況において、読取ユニット２０１、作像ユニット２０６およびパラレルバス２２０の使用権のジョブへの割り振りは、システム・コントローラー２３１およびプロセス・コントローラー２１１において制御する。
【００５９】
プロセス・コントローラー２１１は画像データの流れを制御し、システム・コントローラー２３１はシステム全体を制御し、各リソースの起動を管理する。また、ディジタル複合機の機能選択は、操作パネル（操作部）２３４においておこなわれ、操作パネル（操作部）２３４の選択入力によって、コピー機能、ファクシミリ機能等の処理内容を設定する。
【００６０】
システム・コントローラー２３１とプロセス・コントローラー２１１は、パラレルバス２２０、画像データ制御部２０３およびシリアルバス２１０を介して相互に通信をおこなう。具体的には、画像データ制御部２０３内においてパラレルバス２２０とシリアルバス２１０とのデータ・インターフェースのためのデータフォーマット変換をおこなうことにより、システム・コントローラー２３１とプロセス・コントローラー２１１間の通信をおこなう。
【００６１】
（画像処理プロセッサー２０４）
つぎに、画像処理プロセッサー２０４を構成する演算処理手段について説明する。画像処理プロセッサー２０４は、図３に示されているようなＳＩＭＤ型演算処理手段（ＳＩＭＤ型プロセッサー）３０１と、図４に示されているような逐次処理型演算処理手段４０１、図５に示されているようなパイプライン構成の逐次処理型演算処理手段５０１を有している。
【００６２】
図３はＳＩＭＤ型演算処理手段３０１の基本構成を示しており、ＳＩＭＤ型演算処理手段３０１はレジスター・ファイル３０３に対して並列にｎ個接続されたＡＬＵ（算術論理演算ユニット）３０２を有している。ＡＬＵ３０２は、２画素データを入力し、加算、減算、乗算、除算、論理演算等をおこなうユニットであり、１命令で同時にｎ個のＡＬＵ３０２が同じ演算をおこなう。演算結果はレジスター・ファイル３０３に書き戻される。レジスター・ファイル３０３はｎ個のレジスターを１セットとしてｍ組で構成される。
【００６３】
図４は逐次処理型演算処理手段４０１の基本構成を示しており、逐次処理型演算処理手段４０１は、一つのＡＬＵ４０２と、ｐ個のレジスターによるレジスター・ファイル４０３とにより構成されている。パイプライン構成の逐次処理型演算処理手段５０１は、図５に示されているように、データ入力部５０４とデータ出力部５０５との間に、一つのＡＬＵ５０２とｐ個のレジスターによるレジスター・ファイル５０３との対を複数対、互いに並列に有している。
【００６４】
つぎに、ディジタルフィルターを例に、ＳＩＭＤ型演算処理手段３０１について説明する。図６はＦＩＲフィルターの特性を示している。主走査方向３タップ、副走査方向１タップのＦＩＲフィルターの場合、式（１）による演算をおこなう。
【００６５】
ＯＤn＝Ｋ１・ＩＤn＋Ｋ２・ＩＤn-1＋Ｋ３・ＩＤn-2 …（１）
ＯＤn：主走査方向ｎ画素目の演算後濃度
ＩＤn：主走査方向ｎ画素目の入力画像濃度
Ｋ１〜Ｋ３：係数（Ｋ１＋Ｋ２＋Ｋ３＝１）
【００６６】
図７は上述のＦＩＲフィルターの演算式（１）を図式化して示している。ＦＩＲフィルターでは、入力データＩＤｎがＫ１倍され、１画素遅延したデータＩＤn-1がＫ２倍され、２画素遅延したデータＩＤn-2がＫ３倍され、それらの合計がＯＤnとなる。通常、これらの演算は１画素ごとにおこなわれるため、画素数分の演算時間がかかる。また、ハードウエアで構成した場合、Ｋ１，Ｋ２，Ｋ３などのパラメータは固定となる。
【００６７】
ＳＩＭＤ型演算処理手段３０１によるＦＩＲフィルターの演算手順を説明する。なお、ここでは、演算手順を示し、ＳＩＭＤ型プロセッサー３０１の動作説明をおこなうのが目的であるため、浮動小数点の扱い等については深く言及しない。ここでは、ＡＬＵ３０２を７つ並列に持ち、レジスター・ファイル３０３は７つの並列なレジスターを３セット持つＳＩＭＤ型演算処理手段３０１の動作を説明する。
【００６８】
（手順１）
Ｄｉ・Ｋ１を演算し、演算結果をレジスターＲＥＧ１ｉにストアする。すなわち、手順１では、入力データＤ１〜Ｄ７すべてにおいてＤｉ・Ｋ１をおこない、各演算結果をレジスターＲＥＧ１にストアする。
【００６９】
（手順２）
Ｄｉ・Ｋ２を演算し、演算結果をレジスターＲＥＧ２ｉにストアする。すなわち、入力データＤ１〜Ｄ７すべてにおいてＤｉ×Ｋ２をおこない、各演算結果をレジスターＲＥＧ２へストアする。
【００７０】
（手順３）
ＲＥＧ１ｉ＋ＲＥＧ２（ｉ＋１）を演算し、演算結果をレジスターＲＲＥＧ３ｉにストアする。すなわち、ＲＥＧ１とＲＥＧ２を加算する。注目画素ｉ番目に対してＲＥＧ２はｉ＋１番目を加算する。
【００７１】
（手順４）
Ｄｉ・Ｋ３を演算し、演算結果をレジスターＲＥＧ１ｉへストアする。すなわち、入力データＤ１〜Ｄ７すべてにおいてＤｉ・Ｋ３をおこない、各演算結果をレジスターＲＥＧ１にストアする。
【００７２】
（手順５）
ＲＥＧ３ｉ＋ＲＥＧ１（ｉ＋２）を演算し、演算結果をＲＥＧ２ｉへストアする。すなわち、ＲＥＧ３とＲＥＧ１を加算する。注目画素ｉ番目に対してＲＥＧ１はｉ＋２番目を加算する。以上で、ＲＥＧ２ｉに７画素の演算結果がストアされる。
【００７３】
（手順６）
ＲＥＧ２ｉの演算結果を小数点以下、四捨五入して出力データを生成する。
【００７４】
Ｋ１＝０．２５、Ｋ２＝０．５０、Ｋ３＝０．２５とした場合のＦＩＲフィルターの計算例を図８に示している。なお、ＯＤ６、ＯＤ７が不定なのは、ＯＤ８、ＯＤ９が存在しないためで、通常は０にクランプする。
【００７５】
上述のように、ＳＩＭＤ型演算処理手段３０１を用いると、５ステップで、ｎ画素の演算が可能となる。なお、Ｋ１〜Ｋ３の値はレジスター・ファイル３０３へデータをロードすることによりプログラマブルであり、係数を自由に選択できる。
【００７６】
ＳＩＭＤ型演算処理手段３０１は、上述したように、非常に高速な処理が可能であるが、アルゴリズムによってはその能力が発揮されない場合がある。ＩＩＲフィルターがその１例であり、それについて説明する。
【００７７】
図９はＩＩＲフィルターの特性を示している。ＩＩＲフィルターは、式（２）の演算をおこなう。
【００７８】
ＯＤn＝（１−Ｋ）・ＯＤn-1＋Ｋ・ＩＤn …（２）
ＯＤn：主走査方向ｎ画素目の演算後濃度
ＩＤn：主走査方向ｎ画素目の入力画像濃度
Ｋ   ：係数（０＜Ｋ≦１）
【００７９】
図１０は上述のようにＩＩＲフィルターの演算式（２）を図式化して示している。ＩＩＲフィルターの場合、演算後濃度ＯＤｎは主走査方向の一つ前の演算結果ＯＤn-1と現データＩＤnから求まる。このようなアルゴリズムの場合、主走査方向に一気に演算をおこなうＳＩＭＤ型演算処理手段はそのメリットが活かせない。これは、１画素ごとに演算し、それをつぎの演算に使うためである。従来、この部分はハードワイヤーロジックで作るしかなかった。
【００８０】
この発明による画像処理装置では、ＩＩＲフィルターの演算は図４に示されているような一つのＡＬＵ構成を基本とした逐次型演算処理手段４０１によりおこない、係数変更などを可能にした。この場合、以下の手順により演算が可能である。
【００８１】
１．レジスター１にＤｉ、レジスター２にＫをロードする。
２．Ｄｉ・Ｋを演算してレジスター３にストアする。
３．レジスター１に（１−Ｋ）をロードする。
４．レジスター０・レジスター１を演算して結果をレジスター２にストアする。
５．レジスター２＋レジスター３を演算して結果をレジスター０にストアする。
６．レジスター０の値を結果をＯｉに出力する。
７．新しいデータＤi+1を入力する。
【００８２】
ここで、Ｋの値は、レジスター・ファイル４０３にロードする値を変更することにより容易に変更ができ、いろいろな特性のＩＩＲフィルターが実現可能である。
【００８３】
以上の２つのアーキテクチャの演算処理手段を用いることにより、画像処理アルゴリズムに適した処理がプログラマブルにおこなわれる。
【００８４】
逐次型演算処理手段４０１において上述のＩＩＲフィルターの例では、演算に５ステップ必要であり、これは１画素の演算結果を得るのに５ステップかかることを意味する。これでは、ｎ画素の演算をおこなうとき５・ｎステップ必要になってしまうことになる。
【００８５】
これに対し、図５に示されているように、逐次型演算処理手段５０１が、ＡＬＵ５０２を複数個有し、パイプライン処理をおこなうことにより、ＩＩＲフィルター演算を高速化することができる。
【００８６】
パイプライン処理とは、図１１に示されているように、一定画素ごとに処理手順を並列化して高速化する手段であり、この例では、５画素ごとに一つの処理をおこなうようにしている。ＩＩＲフィルターの演算例で、演算器を使う処理は、２．、４．、５．であるため演算器は３つ必要になる。パイプライン処理の採用により１画素の処理に５ステップ必要であったＩＩＲフィルター処理が１画素ごとに出力され高速化が実現できる。以上、プログラマブルな演算処理手段の基本機能と基本高速化手段を説明した。
【００８７】
つぎに、画像処理プロセッサー２０４の構成および動作について説明する。ここで、説明の前提として、ＦＩＲフィルターのようにＳＩＭＤ型演算処理手段３０１で演算可能な画像処理アルゴリズムをＳＩＭＤ向きアルゴリズム（ＳＩＭＤ向き画像処理）、ＩＩＲフィルターのように逐次型演算処理手段４０１、５０１で演算可能な画像処理アルゴリズムを逐次型向きアルゴリズム（逐次型向き画像処理）と呼ぶ。
【００８８】
たとえば、画像処理を直列に接続し、画像処理プロセッサー２０４がＳＩＭＤ型演算処理手段３０１と逐次処理型演算処理手段５０１とを直列に有するようにしてもよい。この構成は、特に高速処理を必要としない場合や画像処理を逐次で処理したいときに有効である。各画像処理間はデータを渡すだけなので、特別な処理は不要である。
【００８９】
また、画像処理をＳＩＭＤ演算向きと逐次型向きとで並行に処理するようにし、画像処理プロセッサー２０４がＳＩＭＤ型演算処理手段３０１と逐次処理型演算処理手段５０１とを互いに並列に有し、ＳＩＭＤ型演算処理手段３０１と逐次処理型演算処理手段５０１の出力側にセレクターを設けるようにしてもよい。この構成は、逐次演算向き画像処理が常時必要でない場合に有効となる。
【００９０】
また、画像処理プロセッサー２０４がＳＩＭＤ型演算処理手段３０１と逐次処理型演算処理手段５０１とを互いに並列に有し、逐次処理型演算処理手段５０１の結果をＳＩＭＤ型演算処理手段３０１が使用するようにしてもよい。この構成は、たとえば、地肌除去などの画像処理をおこなう場合に有効である。ＩＩＲフィルターはＦＩＲフィルターにくらべ少ない演算数で強い平滑化が可能なため、地肌除去などに向いている。よって逐次型演算処理手段が必要となる。
【００９１】
また、画像処理プロセッサー２０４がＳＩＭＤ型演算処理手段３０１と逐次処理型演算処理手段５０１の並列構成を前後複数組有するようにしてもよい。この構成は、地肌除去機能と誤差拡散処理など、ＩＩＲフィルターを２箇所以上に使用する場合に有効となる。
【００９２】
図１２は、本実施の形態にかかる画像処理装置の画像処理プロセッサー２０４の一構成例を示すブロック図である。画像処理プロセッサー２０４は、たとえば、ＳＩＭＤ型演算処理手段３０１と、逐次型演算処理手段５０１と、複数のデータ入出力用バス（ＤＩ１、ＤＩ２）１２０７，１２０８の接続制御をおこなうバス・スイッチ１２０１と、メモリー・コントローラー、メモリーおよびメモリー・スイッチを有するメモリー部１２０２と、画像処理プロセッサー２０４外部の基準クロック発生部１２０５からのクロック信号を入力し、画像処理プロセッサー２０４内部で用いるクロック信号を生成する内部クロック生成部１２０３と、画像処理プロセッサー２０４外部のＣＰＵ１２０６の制御により画像処理プロセッサー２０４の各部に制御信号を出力するＣＰＵインターフェース１２０４と、を備えている。
【００９３】
メモリー部１２０２は、ＳＩＭＤ型演算処理手段３０１のための複数個のメモリー（ＲＡＭ）と、このメモリーとバス・スイッチ１２０１とＳＩＭＤ型演算処理手段３０１との間にあって、メモリーの制御をおこなう複数個のメモリー・コントローラーと、複数個のメモリーの接続制御をおこなうメモリー・スイッチとを有している。
【００９４】
データ入出力用バス１２０７，１２０８は、別々に動作することが可能である。データはバス・スイッチ１２０１を介して入力され、メモリー部１２０２のメモリー・コントローラーの制御によりメモリー部１２０２内のメモリーにストアされる。このメモリー内のデータはメモリー・コントローラーの制御でＳＩＭＤ型演算処理手段３０１のレジスター・ファイル３０３に転送され、ＳＩＭＤ型演算処理手段３０１にて処理される。
【００９５】
この例では、逐次型演算処理手段５０１はＳＩＭＤ型演算処理手段３０１が処理したデータを処理し、ＳＩＭＤ型演算処理手段３０１のレジスター・ファイル３０３に書き戻す。メモリー部１２０２のメモリー・コントローラーは、逐次型演算処理手段５０１によりレジスター・ファイル３０３に書き戻されたデータを取り出し、メモリー部１２０２内部のメモリーにストアし、メモリーからバス・スイッチ１２０１を介してデータ入出力用バス１２０７または１２０８へ出力する。以上の処理を画像データ分、通常は１ページ分おこない、その後、つぎのページまでは待機状態となる。
【００９６】
ここで、画像処理プロセッサー２０４は一定のクロックを基準にして動作している。この例では、クロック信号を発生させる基準クロック発生部１２０５が画像処理プロセッサー２０４の外部に設けられており、画像処理プロセッサー２０４は、基準クロック発生部１２０５からのクロック信号を入力して基準クロック１２１１としている。
【００９７】
内部クロック生成部１２０３は、この基準クロック１２１１をもとに画像処理プロセッサー２０４内部で使用するクロック信号１２１２を生成している。画像処理プロセッサー２０４の各部は、このクロック信号１２１２をもとに各機能を動作させる。
【００９８】
一般に画像処理装置においては、動作時間よりも待機時間が長い。この待機時間の間においても、クロック信号１２１２が入力されると、メモリー部１２０２やＳＩＭＤ型演算処理手段３０１や逐次型演算処理手段５０１などは無駄に電力を消費してしまう。これを防ぐため、待機時間中はＣＰＵ１２０６からの制御によりＣＰＵインターフェースからクロック停止信号１２１３を出力する。
【００９９】
内部クロック生成部１２０３は、ＣＰＵインターフェース１２０４からのクロック停止信号１２１３を入力し、また、メモリー部１２０２やＳＩＭＤ型演算処理手段３０１や逐次型演算処理手段５０１などへのクロック信号１２１２を停止する。
【０１００】
図１３は、図１２に示した内部クロック生成部１２０３の一構成例を示すブロック図である。内部クロック生成部１２０３は、たとえば、基準クロック１２１１を分周して出力する分周回路１３０１と、ＣＰＵインターフェース１２０４からのクロック停止信号１２１３を入力し、入力したクロック停止信号１２１３に応じてクロック信号１２１２の停止を制御する停止制御回路１３０２と、を備えている。
【０１０１】
分周回路１３０１は基準クロック１２１１を分周し、停止制御回路１３０２に出力する。停止制御回路１３０２は、分周回路１３０１からの分周回路出力１３０３およびＣＰＵインターフェース１２０４からのクロック停止信号１２１３を入力し、クロック停止信号１２１３に応じてクロック信号１２１２の停止を制御する。
【０１０２】
図１４は、図１３に示した停止制御回路１３０２の一構成例を示すブロック図である。停止制御回路１３０２は、たとえば、分周回路出力１３０３とクロック停止信号１２１３とを入力し、クロック信号１２１２を出力するＡＮＤゲート１４０１により構成される。ＡＮＤゲート１４０１は、入力したクロック停止信号１２１３が「０（ローレベル）」のときは「０（ローレベル）」を出力する。一方、入力したクロック停止信号１２１３が「１（ハイレベル）」のときは分周回路１３０１からの分周回路出力１３０３をクロック信号１２１２として出力する。
【０１０３】
以上の構成において、画像処理プロセッサー２０４の動作についてタイミングチャートを参照して説明する。図１５は、本実施の形態にかかる画像処理装置の分周回路１３０１の動作を示すタイミングチャートである。分周回路１３０１は、基準クロック１２１１を入力し、入力した基準クロックを分周して出力する。図では、分周回路１３０１が１／２分周をおこなう例を示している。
【０１０４】
図１６は、本実施の形態にかかる画像処理装置の画像処理プロセッサー２０４の動作を示すタイミングチャートである。画像処理プロセッサー２０４は、クロック停止信号１２１３が「０」でクロック信号１２１２が停止されている間、処理を停止する。クロック停止信号１２１３が「１」となりクロック信号１２１２の発振が開始された後、１ライン処理を開始する。このように待機時に画像処理プロセッサー２０４各部へのクロック信号を停止するので、待機時の消費電力を低減することができる。
【０１０５】
つぎに、クロック信号の停止制御を各部ごとに別個におこなう例について説明する。すなわち、ＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１および演算処理手段以外（メモリー部１２０２およびバス・スイッチ１２０１）に対して別個にクロック信号の停止制御をおこなう。たとえば、データ入出力動作のみのときは演算手段（ＳＩＭＤ型演算処理手段３０１および逐次型演算処理手段５０１）に対するクロック信号のみを、画像処理にＩＩＲフィルター処理がないときなどは逐次型演算処理手段５０１に対するクロック信号のみを、それぞれ停止する。
【０１０６】
図１７は、本実施の形態にかかる画像処理装置の画像処理プロセッサー２０４の他の構成例を示すブロック図である。なお、図１２と同一の部分については同一の符号を付してその説明を省略する。この画像処理プロセッサー２０４は、図１２に示した構成に加え、ＣＰＵインターフェース１２０４からＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１用のクロックコントロール信号１７０５，１７０６を入力し、入力したクロックコントロール信号１７０５，１７０６に応じてＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１へのクロック信号１７０３，１７０４の停止制御を別個におこなうクロック停止制御部１７０２を備えている。
【０１０７】
また、内部クロック生成部１７０１は、ＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１へのクロック信号１７０３，１７０４の停止制御はおこなわず、分周回路出力１３０３をそのままクロック停止制御部１７０２に出力する。内部クロック生成部１７０１は、たとえば、図１８に示すように、分周回路１３０１と停止制御回路１３０２との間から分周回路出力１３０３を取り出してクロック停止制御部１７０２に出力する構成となっている。
【０１０８】
停止制御回路１３０２からのクロック信号１２１２は、バス・スイッチ１２０１、メモリー部１２０２に出力されるが、ＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１には出力されない。すなわち、バス・スイッチ１２０１、メモリー部１２０２へのクロック信号１２１２は、演算処理手段へのクロック信号１７０３，１７０４とは独立して停止することができる。なお、バス・スイッチ１２０１へのクロック信号とメモリー部１２０２へのクロック信号とを分けて独立に停止制御するようにしてもよい。
【０１０９】
図１９は、図１７に示したクロック停止制御部１７０２の一構成例を示すブロック図である。クロック停止制御部１７０２は、たとえば、ＳＩＭＤ型演算処理手段３０１用のクロックコントロール信号１７０５と分周回路出力１３０３とを入力し、クロックコントロール信号１７０５に応じてＳＩＭＤ型演算処理手段３０１用のクロック信号１７０３を出力するＡＮＤゲート１９０１と、逐次型演算処理手段５０１用のクロックコントロール信号１７０６と分周回路出力１３０３とを入力し、クロックコントロール信号１７０６に応じて逐次型演算処理手段５０１用のクロック信号１７０４を出力するＡＮＤゲート１９０１と、を備えている。
【０１１０】
ＡＮＤゲート１９０１，１９０２は、クロックコントロール信号１７０５，１７０６が「０」のときは「０」を出力し、「１」のときは分周回路出力１３０３をクロック信号１７０３，１７０４として出力する。このようにして、クロック信号の停止制御が、各部ごとに別個におこなわれる。
【０１１１】
以上の構成において、この画像処理プロセッサー２０４の動作についてタイミングチャートを参照して説明する。図２０は、この画像処理プロセッサー２０４の動作を示すタイミングチャートである。ＣＰＵ１２０６は、画像処理プロセッサー２０４でおこなわれる処理に応じてクロック停止信号１２１３およびクロックコントロール信号１７０５，１７０６を制御する。図では、ＳＩＭＤ型演算処理手段３０１用のクロックコントロール信号１７０５が「１」で、逐次型演算処理手段５０１用のクロックコントロール信号１７０６が「０」の場合を示している。
【０１１２】
この場合、ＳＩＭＤ型演算処理手段３０１用のクロック信号１７０３は出力されるが逐次型演算処理手段５０１用のクロック用のクロック信号１７０４は停止される。これにより、ＳＩＭＤ型演算処理手段３０１において画像処理がおこなわれ、逐次型演算処理手段５０１の動作は停止する。このように必要に応じて各部ごとにきめこまかくクロック信号の停止制御をおこなうので、消費電力をより一層低減することができる。
【０１１３】
つぎに、あらかじめ設定した所定のタイミングで演算処理手段を停止させる例について説明する。これにより、画像処理において１ページ内で演算手段がすべて使用される場合、画像処理の途中でも、必要のない演算処理手段を停止させることができる。図２１は、本実施の形態にかかる画像処理装置の画像処理プロセッサー２０４の他の構成例を示すブロック図である。なお、図１７と同一の部分については同一の符号を付してその説明を省略する。
【０１１４】
この画像処理プロセッサー２０４では、メモリー部２１０１が、画像データのラインの先頭を知らせるクロックコントロール信号２１０５を出力する。また、ＣＰＵインターフェース１２０４は、ＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１での処理が終了するタイミングにあわせてあらかじめ設定された値を表すクロックコントロール信号２１０３，２１０４を出力する。
【０１１５】
クロック停止制御部２１０２は、これらのクロックコントロール信号２１０３，２１０４，２１０５および内部クロック生成部１７０１からの分周回路出力１３０３を入力し、クロックコントロール信号２１０３，２１０４，２１０５に応じてＳＩＭＤ型演算処理手段３０１、逐次型演算処理手段５０１へのクロック信号１７０３，１７０４の停止制御を別個におこなう。クロック信号１７０３，１７０４の停止、発振は１ライン処理の途中においてもおこなわれる。
【０１１６】
図２２は、図２１に示したクロック停止制御部２１０２の一構成例を示すブロック図である。クロック停止制御部２１０２は、たとえば、分周回路出力１３０３をカウントし、メモリー部２１０１からのクロックコントロール信号（パルス）２１０５により画像データのラインの先頭でリセットされるカウンター２２０１を備えている。
【０１１７】
また、カウンター２２０１からの出力信号（カウンター出力）２２１１およびＣＰＵインターフェース１２０４からのＳＩＭＤ型演算処理手段３０１用のクロックコントロール信号２１０３を入力し、これらの信号が一致したときにクロック停止トリガー信号（パルス）２２１２を出力するコンパレーター２２０２と、カウンター２２０１からの出力信号（カウンター出力）２２１１およびＣＰＵインターフェース１２０４からの逐次型演算処理手段５０１用のクロックコントロール信号２１０４を入力し、これらの信号が一致したときにクロック停止トリガー信号（パルス）２２１３を出力するコンパレーター２２０３と、を備えている。
【０１１８】
また、メモリー部２１０１からのクロックコントロール信号２１０５により画像データのラインの先頭でセットされ、コンパレーター２２０２からのクロック停止トリガー信号２２１２によりリセットされるフリップフロップ（ＦＦ）２２０４と、メモリー部２１０１からのクロックコントロール信号２１０５により画像データのラインの先頭でセットされ、コンパレーター２２０３からのクロック停止トリガー信号２２１３によりリセットされるフリップフロップ（ＦＦ）２２０５と、を備えている。
【０１１９】
また、フリップフロップ２２０４の出力信号（クロック出力イネーブル信号）２２１４および分周回路出力１３０３を入力し、クロック出力イネーブル信号２２１４が「１」のときはＳＩＭＤ型演算処理手段用クロック信号１７０３を発振させ、クロック出力イネーブル信号２２１４が「０」のときはＳＩＭＤ型演算処理手段用クロック信号１７０３を停止させるＡＮＤゲート２２０６を備えている。
【０１２０】
また、フリップフロップ２２０５の出力信号（クロック出力イネーブル信号）２２１５および分周回路出力１３０３を入力し、クロック出力イネーブル信号２２１５が「１」のときは逐次型演算処理手段用クロック信号１７０４を発振させ、クロック出力イネーブル信号２２１５が「０」のときは逐次型演算処理手段用クロック信号１７０４を停止させるＡＮＤゲート２２０７を備えている。
【０１２１】
カウンター２２０１は、１ライン処理のクロック数以上の数を表現することができるビット数を持ち（２３クロックの場合は５ビット）、１ライン処理の先頭からのクロック数をカウントする。ＣＰＵインターフェース１２０４からのクロックコントロール信号２１０３，２１０４は、カウンター２２０１のビット数と同一のビット数の信号であって、ＣＰＵインターフェース１２０４にあらかじめ設定されたクロック数を表す。コンパレーター２２０２，２２０３は、カウンター出力２２１１の値とクロックコントロール信号２１０３，２１０４の値とを比較し、一致した場合に出力を「１」にする（パルスを発生させる）。
【０１２２】
フリップフロップ２２０４，２２０５は、１ライン処理の先頭でセットされ、コンパレーター出力２２１２，２２１３が立ち上がった（「１」になった）ときリセットされる。ＡＮＤゲート２２０６，２２０７は、フリップフロップ出力２２１４，２２１５が「１」のとき（セットされているとき）クロック信号１７０３，１７０４を発振させ、フリップフロップ出力２２１４，２２１５が「０」のとき（リセットされているとき）クロック信号１７０３，１７０４を停止させる。このように、クロック停止制御部２１０２は、１ライン処理の途中において画像処理が終了した演算処理手段へのクロック信号を停止し、つぎの１ライン処理の先頭でこれら画像処理手段へのクロック信号を発振させる。
【０１２３】
以上の構成において、この画像処理プロセッサー２０４の動作についてタイミングチャートを参照して説明する。図２３は、この画像処理プロセッサー２０４の動作を示すタイミングチャートである。たとえば、１ライン処理の処理時間を２３クロックとし、ＳＩＭＤ型演算処理手段３０１が６クロック（画像処理１）＋４クロック（画像処理２）＋９クロック（画像処理３）＝１９クロックで１ライン分の処理を終えるとする。また、逐次型演算処理手段５０１は２１クロックで処理を終えるとする。各演算処理手段には動作時のみクロック信号が供給される。
【０１２４】
この画像処理プロセッサー２０４の動作においては、まず、画像データの１ラインの先頭のタイミングでメモリー部２１０１からクロックコントロール信号２１０５が立ち上がる。クロックコントロール信号２１０５が立ち上がることにより、カウンター２２０１がリセットされ、１からカウントを開始する。また、フリップフロップ２２０４，２２０５がセットされ、クロック出力イネーブル信号２２１４，２２１５が「１」となり、クロック信号１７０３，１７０４が出力される。
【０１２５】
クロックコントロール信号２１０３，２１０４は、それぞれＳＩＭＤ型演算処理手段３０１が処理を終了するタイミング（画像データのラインの先頭から１９クロック目）、逐次型演算処理手段５０１が処理を終了するタイミング（画像データのラインの先頭から２１クロック目）の情報を有している。
【０１２６】
クロックコントロール信号２１０３，２１０４の値とカウンター出力２２１１の値とが一致したとき、すなわち、画像データのラインの先頭から１９クロック目、２１クロック目のタイミングのとき、クロック停止トリガー２２１２，２２１３が立ち上がり、クロックイネーブル信号２２１４，２２１５が立ち下がる。これにより、クロック信号１７０３，１７０４が停止する。
【０１２７】
その後、つぎのラインの先頭を示すクロックコントロール信号２１０５が再び立ち上がり、上記の動作が繰り返される。このように、１ライン処理の途中においてもきめこまかく各演算処理手段への不要なクロック信号を停止するので、さらに消費電力を低減することができる。
【０１２８】
（ＳＩＭＤ型演算処理手段３０１の具体的構成例）
図２４はＳＩＭＤ型演算処理手段３０１の具体的構成を示している。ＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ｄａｔａ  ｓｔｒｅａｍ）は複数のデータに対し、単一の命令を並列に実行させるもので、複数のＰＥ（プロセッサー・エレメント）より構成される。
【０１２９】
それぞれのＰＥはデータを格納するレジスター（Ｒｅｇ）２４０１、他のＰＥのレジスターをアクセスするためのマルチプレクサー（ＭＵＸ）２４０２、バレルシフター（Ｓｈｉｆｔ  Ｅｘｐａｎｄ）２４０３、論理演算器（ＡＬＵ）２４０４、論理結果を格納するアキュムレーター（Ａ）２４０５、アキュムレーター２４０５の内容を一時的に退避させるテンポラリー・レジスター（Ｆ）２４０６から構成される。
【０１３０】
各レジスター２４０１は、アドレスバスおよびデータバス（リード線およびワード線）に接続されており、処理を規定する命令コード、処理の対象となるデータを格納する。レジスター２４０１の内容は論理演算器２４０４に入力され、演算処理結果はアキュムレーター２４０５に格納される。結果をＰＥ外部に取り出すために、テンポラリー・レジスター２４０６に一旦退避させる。テンポラリー・レジスター２４０６の内容を取り出すことにより、対象データに対する処理結果が得られる。
【０１３１】
命令コードは、各ＰＥに同一内容で与え、処理の対象データをＰＥごとに異なる状態で与え、隣接ＰＥのレジスター２４０１の内容をマルチプレクサー２４０２において参照することで、演算結果は並列処理され、各アキュムレーター２４０５に出力される。
【０１３２】
たとえば、画像データ１ラインの内容を各画素ごとにＰＥに配置し、同一の命令コードで演算処理させれば、１画素ずつ逐次処理するよりも短時間で１ライン分の処理結果が得られる。特に、空間フィルター処理、シェーディング補正処理はＰＥごとの命令コードは演算式そのもので、ＰＥすべてに共通に処理を実施することができる。
【０１３３】
以上説明したように本実施の形態によれば、実行する画像処理アルゴリズムに応じて異なるアーキテクチャによる演算処理手段をＳＩＭＤ演算処理手段３０１と逐次型演算処理手段４０１とで使い分けることができる。
【０１３４】
また、パイプライン処理をおこなう逐次型演算処理手段５０１を使うことにより、逐次型演算処理も高速演算でおこなうことができる。また、演算処理手段をＳＩＭＤ演算処理手段３０１と逐次型演算処理手段４０１，５０１とが並行動作するから、画像処理アルゴリズムに応じて最適なアーキテクチャを選択して高速に演算をおこなうことができる。
【０１３５】
また、ＳＩＭＤ型演算処理手段３０１による画像処理の際に、ＳＩＭＤ型演算処理手段３０１と逐次型演算処理手段４０１，５０１との間で処理結果の授受がおこなわれ、複雑な画像処理演算を高速でおこなうことができる。このように、画像処理アルゴリズムを選ばずリソースを十分に活用した高効率の画像処理をおこなうことができる。
【０１３６】
また、待機時等、必要のない場合は画像処理プロセッサー２０４の各部へのクロック信号を停止するため、消費電力を低減することができる。さらに、クロック信号の停止制御を画像処理プロセッサー２０４の各部それぞれ独立におこなうことにより、さらに消費電力を低減することができる。また、１ライン処理の途中においても、処理を終えた演算処理手段へのクロック信号を停止することにより、さらに消費電力を低減することができる。
【０１３７】
【発明の効果】
以上の説明から理解されるごとく、本発明によれば、実行する画像処理アルゴリズムに応じて異なるアーキテクチャによる演算処理手段を使い分けることができ、また、必要のない（使用しない）ときは画像処理手段へのクロック信号を停止することができ、これにより、画像処理アルゴリズムを選ばずリソースを十分に活用した高効率の画像処理をおこなうことができ、また、消費電力を低減することができる画像処理装置が得られるという効果を奏する。
【０１３８】
また、本発明によれば、必要に応じて演算処理手段へのクロック信号の停止と演算処理手段以外の部分へのクロック信号の停止とを別個に制御することができ、これにより、データ入出力時などに必要な機能のみを動作させ、さらに消費電力を低減することができる画像処理装置が得られるという効果を奏する。
【０１３９】
また、本発明によれば、必要に応じて各演算処理手段ごと別個にクロック信号の停止を制御することができ、これにより、処理によって使用しない演算処理手段へのクロック信号のみを停止し、さらに消費電力を低減することができる画像処理装置が得られるという効果を奏する。
【０１４０】
また、本発明によれば、処理（１ライン処理等）の途中でもあらかじめ設定したタイミングでクロック信号を停止または発振させることができ、これにより、画像処理時にもクロック信号の停止制御をおこなうことができ、さらに消費電力を低減することができる画像処理装置が得られるという効果を奏する。
【０１４１】
また、本発明によれば、処理（１ライン処理等）の途中でもあらかじめ設定したタイミングで各演算処理手段ごと別個にクロック信号を停止または発振させることができ、これにより、画像処理時にもクロック信号の停止制御をおこなうことができ、さらに消費電力を低減することができる画像処理装置が得られるという効果を奏する。
【０１４２】
また、本発明によれば、実行する画像処理アルゴリズムに応じてＳＩＭＤ型演算処理手段と逐次型演算処理手段とを使い分けることができ、画像処理アルゴリズムを選ばずリソースを十分に活用した高効率の画像処理を高速演算のもとにおこなうことができる画像処理装置が得られるという効果を奏する。
【図面の簡単な説明】
【図１】  この発明の本実施の形態にかかる画像処理装置の構成を機能的に示すブロック図である。
【図２】  本実施の形態にかかる画像処理装置のハードウエア構成の一例を示すブロック図である。
【図３】  本実施の形態にかかる画像処理装置で使用されるＳＩＭＤ型演算処理手段の一例を示すブロック図である。
【図４】  本実施の形態にかかる画像処理装置で使用される逐次処理型演算処理手段の一例を示すブロック図である。
【図５】  本実施の形態にかかる画像処理装置で使用されるパイプライン構成の逐次処理型演算処理手段の一例を示すブロック図である。
【図６】  ＦＩＲフィルターの特性を示すグラフである。
【図７】  ＦＩＲフィルターの構成を示すブロック線図である。
【図８】  ＦＩＲフィルターの計算例を示す説明図である。
【図９】  ＩＩＲフィルターの特性を示すグラフである。
【図１０】  ＩＩＲフィルターの構成を示すブロック線図である。
【図１１】  本実施の形態にかかる画像処理装置で使用されるパイプライン構成の逐次処理型演算処理手段によるパイプライン処理の様子を示す説明図である。
【図１２】  本実施の形態にかかる画像処理装置の画像処理プロセッサーの一構成例を示すブロック図である。
【図１３】  図１２に示した内部クロック生成部の一構成例を示すブロック図である。
【図１４】  図１３に示した停止制御回路の一構成例を示すブロック図である。
【図１５】  本実施の形態にかかる画像処理装置の分周回路の動作を示すタイミングチャートである。
【図１６】  本実施の形態にかかる画像処理装置の画像処理プロセッサーの動作を示すタイミングチャートである。
【図１７】  本実施の形態にかかる画像処理装置の画像処理プロセッサーの他の構成例を示すブロック図である。
【図１８】  図１７に示した内部クロック生成部の一構成例を示すブロック図である。
【図１９】  図１７に示したクロック停止制御部の一構成例を示すブロック図である。
【図２０】  本実施の形態にかかる画像処理装置の他の画像処理プロセッサーの動作を示すタイミングチャートである。
【図２１】  本実施の形態にかかる画像処理装置の画像処理プロセッサーの他の構成例を示すブロック図である。
【図２２】  図２１に示したクロック停止制御部の一構成例を示すブロック図である。
【図２３】  本実施の形態にかかる画像処理装置の他の画像処理プロセッサーの動作を示すタイミングチャートである。
【図２４】  本実施の形態にかかる画像処理装置に用いられるＳＩＭＤ型プロセッサーの概略構成を示す説明図である。
【符号の説明】
１００  画像データ制御ユニット
１０１  画像読取ユニット
１０２  画像メモリー制御ユニット
１０３  画像処理ユニット
１０４  画像書込ユニット
２０１  読取ユニット
２０２  センサー・ボード・ユニット
２０３  画像データ制御部
２０４  画像処理プロセッサー
２０５  ビデオ・データ制御部
２０６  作像ユニット（エンジン）
２１０  シリアルバス
２１１  プロセス・コントローラー
２１２，２３２  ＲＡＭ
２１３，２３３  ＲＯＭ
２２０  パラレルバス
２２１  画像メモリー・アクセス制御部
２２２  メモリー・モジュール
２２３  パーソナル・コンピューター（ＰＣ）
２２４  ファクシミリ制御ユニット
２２５  公衆回線
２３１  システム・コントローラー
２３４  操作パネル
３０１  ＳＩＭＤ型演算処理手段
３０２，４０２，５０２  ＡＬＵ
３０３，４０３，５０３  レジスター・ファイル
４０１，５０１  逐次型演算処理手段
１２０１  バス・スイッチ
１２０２，２１０１  メモリー部
１２０３，１７０１  内部クロック生成部
１２０４  ＣＰＵインターフェース
１２０５  基準クロック発生部
１２０６  ＣＰＵ
１７０２，２１０２  クロック停止制御部
２４０１  レジスター（Ｒｅｇ）
２４０２  マルチプレクサー（ＭＵＸ）
２４０３  バレルシフター（Ｓｈｉｆｔ  Ｅｘｐａｎｄ）
２４０４  論理演算器（ＡＬＵ）
２４０５  アキュムレーター（Ａ）
２４０６  テンポラリー・レジスター（Ｆ）
【図１】
0003887134.tif 000002
【図２】
0003887134.tif 000003
【図３】
0003887134.tif 000004
【図４】
0003887134.tif 000005
【図５】
0003887134.tif 000006
【図６】
0003887134.tif 000007
【図７】
0003887134.tif 000008
【図８】
0003887134.tif 000009
【図９】
0003887134.tif 000010
【図１０】
0003887134.tif 000011
【図１１】
0003887134.tif 000012
【図１２】
0003887134.tif 000013
【図１３】
0003887134.tif 000014
【図１４】
0003887134.tif 000015
【図１５】
0003887134.tif 000016
【図１６】
0003887134.tif 000017
【図１７】
0003887134.tif 000018
【図１８】
0003887134.tif 000019
【図１９】
0003887134.tif 000020
【図２０】
0003887134.tif 000021
【図２１】
0003887134.tif 000022
【図２２】
0003887134.tif 000023
【図２３】
0003887134.tif 000024
【図２４】
0003887134.tif 000025