(57)【特許請求の範囲】
【請求項１】
画像に基づいて作成されたディジタル信号である画像データを、顕像として出力するように処理する演算処理手段を備えた画像処理装置であって、
前記演算処理手段は、複数の画像データを同時に処理できるＳＩＭＤ（Ｓｉｎｇｌｅ Ｉｎｓｔｒｕｃｔｉｏｎ Ｍｕｌｔｉｐｌｅ Ｄａｔａ ｓｔｒｅａｍ）型の演算処理部、前記演算処理部に接続する複数のメモリー、前記メモリーの各々を制御するメモリー・コントローラーを備え、かつ、前記メモリー・コントローラーが、前記メモリーと前記演算処理部との間でおこなわれる画像データの転送を制御し、
前記メモリー・コントローラーはコントロール・レジスターと接続し、前記コントロール・レジスターが、メモリー・コントローラーと接続するメモリーのデータ転送モードを設定するデータ転送モード設定機能を有し、
前記コントロール・レジスターは、アドレスを設定してメモリーにアクセスするランダムアクセスモードの設定と、自動的にアドレスを更新してメモリーにアクセスする自動アクセスモードの設定とを、外部から与えられる制御信号にしたがって切り替えることを特徴とする画像処理装置。
【請求項２】
前記コントロール・レジスターは、外部から与えられる制御信号にしたがって前記メモリーから重複してデータを読み出すとともに、前記演算処理部に転送する重複読出し転送モードを設定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記コントロール・レジスターは、外部から与えられる制御信号にしたがって前記演算処理部からデータを間引いて読み出すとともに前記メモリーに転送する間引き読出し転送モードを設定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
画像に基づいて作成されたディジタル信号である画像データを同時に複数処理するＳＩＭＤ型の演算処理部と、前記演算処理部に接続する複数のメモリーおよび前記メモリーの各々を制御するメモリー・コントローラーとを備えた画像処理装置で実行される画像処理方法であって、
前記メモリー・コントローラーにより、前記メモリーと前記演算処理部との間でおこなわれる画像データの転送を制御する画像データ制御工程を含み、
前記画像データ制御工程は、メモリー・コントローラーと接続するメモリーのデータ転送モードを設定するデータ転送モード設定工程を含み、当該画像データ制御工程は、アドレスを設定してメモリーにアクセスするランダムアクセスモードの設定と、自動的にアドレスを更新してメモリーにアクセスする自動アクセスモードの設定とを、外部から与えられる制御信号にしたがって切り替えることを特徴とする画像処理方法。
【請求項５】
前記画像データ制御工程は、外部から与えられる制御信号にしたがって前記メモリーから重複してデータを読み出すとともに前記演算処理部に転送する重複読出し転送モードを設定することを特徴とする請求項４に記載の画像処理方法。
【請求項６】
前記画像データ制御工程は、外部から与えられる制御信号にしたがって前記演算処理部からデータを間引いて読み出すとともに前記メモリーに転送する間引き読出し転送モードを設定することを特徴とする請求項４または５に記載の画像処理方法。
【請求項７】
前記請求項４〜６のいずれか一つに記載された方法をコンピュータに実行させるプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ｄａｔａ  ｓｔｒｅａｍ）型の演算処理装置を備えた画像処理装置、画像処理方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【０００２】
【従来の技術】
近年、ＳＩＭＤ型のプロセッサーを用いた画像形成装置が検討されている。ＳＩＭＤ型演算処理装置とは、単一の命令を並列に実行させるもので、複数のプロセッサーエレメント（ＰＥ）より構成される。また、ＳＩＭＤ型のプロセッサーは、プログラムを変更することによってシステム仕様変更、機能追加に容易に対応することができるので、高速な演算処理により画像処理をおこなうことができるという長所を有している。
【０００３】
ところで、このようなＳＩＭＤ型のプロセッサーは、並列に実行される各処理に用いられるメモリーを有している。画像処理装置では、入力あるいは生成した画像データをこのようなメモリーにいったん書き込むとともに、書き込まれた画像データを読み出してＳＩＭＤ型のプロセッサーに転送して各画像処理の動作タイミングを調整している。
【０００４】
なお、たとえば、特開平１０−２８９３０６号公報には、画像データのメモリーに対する書き込み、読み出しのタイミングを調整するメモリーコントロール装置が記載されている。このようなメモリーコントロール装置によれば、画像データの書き込み、読み出しのタイムラグをなくし、効率的に画像処理を制御することができるようになる。
【発明が解決しようとする課題】
しかしながら、上述した構成によれば、メモリーに対する書き込み、読み出しのタイミングは調整できるものの、メモリーに対する書き込み、読み出しの動作までは制御することはできない。このため、従来の画像処理装置は、画像処理に応じたメモリーに対する書き込み、読み出し処理の最適化、画像処理の効率化に対してさらなる改善の余地を残していた。
【０００５】
この発明は、上述した従来技術による問題点を解消するため、メモリーに対する書き込み、読み出し動作を制御し、画像処理に応じてメモリーに対する書き込み、読み出し処理を最適化することによって画像処理を効率化できる画像処理装置、画像処理方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【０００６】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、請求項１に記載の発明にかかる画像処理装置は、画像に基づいて作成されたディジタル信号である画像データを、顕像として出力するように処理する演算処理手段を備えた画像処理装置であって、前記演算処理手段は、複数の画像データを同時に処理できるＳＩＭＤ型の演算処理部、前記演算処理部に接続する複数のメモリー、前記メモリーの各々を制御するメモリー・コントローラーを備え、かつ、前記メモリー・コントローラーが、前記メモリーと前記演算処理部との間でおこなわれる画像データの転送を制御することを特徴とする。
【０００７】
この請求項１に記載の発明によれば、演算処理部とメモリーとの間でなされる画像データの転送をメモリー・コントローラーによって制御し、演算処理部の画像データ処理効率を高めることができる。また、このような作用は、同一の処理を複数の異なる画像データに対して同時におこない得るＳＩＭＤ型の演算処理部において特に顕著になる。
【０００８】
また、請求項２に記載の発明にかかる画像処理装置は、前記メモリー・コントローラーがコントロール・レジスターと接続し、前記コントロール・レジスターが、メモリー・コントローラーと接続するメモリーのデータ転送モードを設定するデータ転送モード設定機能を有することを特徴とする。
【０００９】
この請求項２に記載の発明によれば、比較的簡易な構成によってこの発明の画像処理装置が実現できる。
【００１０】
また、請求項３に記載の発明にかかる画像処理装置は、前記コントロール・レジスターが、アドレスを設定してメモリーにアクセスするランダムアクセスモードの設定と、自動的にアドレスを更新してメモリーにアクセスする自動アクセスモードの設定とを、外部から与えられる制御信号にしたがって切り替えることを特徴とする。
【００１１】
この請求項３に記載の発明によれば、メモリーに対するアクセスの方式を、ランダムアクセスモード、自動アクセスモードのいずれかに切り替えることができる。このため処理の内容に応じてより適切なアクセスモードを選択することができる。
【００１２】
また、請求項４に記載の発明にかかる画像処理装置は、前記コントロール・レジスターが、外部から与えられる制御信号にしたがって前記メモリーから重複してデータを読み出すとともに、前記演算処理部に転送する重複読出し転送モードを設定することを特徴とする。
【００１３】
この請求項４に記載の発明によれば、同一のメモリーに重複してアクセスし、同一の画像データを異なる演算処理部で処理することができる。このため、メモリーに対して連続してアクセスする演算処理部に同一の画像データを処理させる場合、この画像データを記憶するメモリー数を最小限にすることができる。
【００１４】
また、請求項５に記載の発明にかかる画像処理装置は、前記コントロール・レジスターが、外部から与えられる制御信号にしたがって前記演算処理部からデータを間引いて読み出すとともに前記メモリーに転送する間引き読出し転送モードを設定することを特徴とする。
【００１５】
この請求項５に記載の発明によれば、メモリーへの転送が不必要な画像データを、メモリーに転送しないようにすることができる。このため、不必要な画像データをメモリーに保存することを避けることができる。
【００１６】
また、請求項６に記載の発明にかかる画像処理方法は、画像に基づいて作成されたディジタル信号である画像データを同時に複数処理するＳＩＭＤ型の演算処理部と、前記演算処理部に接続する複数のメモリーおよび前記メモリーの各々を制御するメモリー・コントローラーとを備えた画像処理装置で実行される画像処理方法であって、前記メモリー・コントローラーにより、前記メモリーと前記演算処理部との間でおこなわれる画像データの転送を制御する画像データ制御工程を含むことを特徴とする。
【００１７】
この請求項６に記載の発明によれば、演算処理部とメモリーとの間でなされる画像データの転送をメモリー・コントローラーによって制御し、演算処理部の画像データ処理効率を高めることができる。また、このような作用は、同一の処理を複数の異なる画像データに対して同時におこない得るＳＩＭＤ型の演算処理部において特に顕著になる。
【００１８】
また、請求項７に記載の発明にかかる画像処理方法は、前記画像データ制御工程が、メモリー・コントローラーと接続するメモリーのデータ転送モードを設定するデータ転送モード設定工程を含むことを特徴とする。
【００１９】
この請求項７に記載の発明によれば、比較的簡易な処理によってこの発明の画像処理装置が実現できる。
【００２０】
また、請求項８に記載の発明にかかる画像処理方法は、前記画像データ制御工程が、アドレスを設定してメモリーにアクセスするランダムアクセスモードの設定と、自動的にアドレスを更新してメモリーにアクセスする自動アクセスモードの設定とを、外部から与えられる制御信号にしたがって切り替えることを特徴とする。
【００２１】
この請求項８の発明によれば、メモリーに対するアクセスの方式を、ランダムアクセスモード、自動アクセスモードのいずれかに切り替えることができる。このため、処理の内容に応じてより適切なアクセスモードを選択することができる。
【００２２】
また、請求項９に記載の発明にかかる画像処理方法は、前記画像データ制御工程は、外部から与えられる制御信号にしたがって前記メモリーから重複してデータを読み出すとともに前記演算処理部に転送する重複読出し転送モードを設定することを特徴とする。
【００２３】
この請求項９に記載の発明によれば、同一のメモリーに重複してアクセスし、同一の画像データを異なる演算処理部で処理することができる。このため、メモリーに対して連続してアクセスする演算処理部に同一の画像データを処理させる場合、この画像データを記憶するメモリー数を最小限にすることができる。
【００２４】
また、請求項１０に記載の発明にかかる画像処理方法は、前記画像データ制御工程が、外部から与えられる制御信号にしたがって前記演算処理部からデータを間引いて読み出すとともに前記メモリーに転送する間引き読出し転送モードを設定することを特徴とする。
【００２５】
この請求項１０に記載の発明によれば、メモリーへの転送が不必要な画像データを、メモリーに転送しないようにすることができる。このため、不必要な画像データがメモリーに保存されることを防ぐことができる。
【００２６】
また、請求項１１に記載の発明にかかる記録媒体は、請求項６〜１０に記載された方法をコンピュータに実行させるプログラムを記録したことで、そのプログラムが機械読み取り可能となり、これによって、請求項６〜１０の動作をコンピュータによって実現することができる。
【００２７】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像処理装置、画像処理方法、およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の好適な実施の形態を、実施の形態１、実施の形態２、実施の形態３、実施の形態４として詳細に説明する。なお、本明細書中では、最初に実施の形態１〜４に共通の構成について説明し、以降実施の形態１、実施の形態２、実施の形態３、実施の形態４の順序で各実施の形態の説明をおこなうものとする。
【００２８】
〔実施の形態１〜４に共通の構成〕
本実施の形態の画像処理装置は、画像に基づいて作成されたディジタル信号である画像データを、顕像として出力するように処理する演算処理手段を備えた画像処理装置である。まず、本実施の形態では、このような画像処理装置の原理について説明する。図１は、この発明の本実施の形態にかかる画像処理装置の構成を機能的に示すブロック図である。図１において、画像処理装置は、以下に示す５つのユニットを含む構成である。
【００２９】
上記５つのユニットとは、画像データ制御ユニット１００と、画像データを読み取る画像読取ユニット１０１と、画像を蓄積する画像メモリーを制御して画像データの書き込み／読出しをおこなう画像メモリー制御ユニット１０２と、画像データに対し加工編集等の画像処理を施す画像処理ユニット１０３と、画像データを転写紙等に書き込む画像書込ユニット１０４と、である。
【００３０】
上記各ユニットは、画像データ制御ユニット１００を中心に構成されている。すなわち、画像読取ユニット１０１、画像メモリー制御ユニット１０２、画像処理ユニット１０３、画像書込ユニット１０４は、いずれも画像データ制御ユニット１００に接続されている。以下、この各ユニットについて、それぞれ説明する。
【００３１】
（画像データ制御ユニット１００）
画像データ制御ユニット１００によりおこなわれる処理としては以下のようなものがある。
【００３２】
たとえば、
（１）データのバス転送効率を向上させるためのデータ圧縮処理（一次圧縮）、
（２）一次圧縮データの画像データへの転送処理、
（３）画像合成処理（複数ユニットからの画像データを合成することが可能である。また、データバス上での合成も含む。）、
（４）画像シフト処理（主走査および副走査方向の画像のシフト）、
（５）画像領域拡張処理（画像領域を周辺へ任意量だけ拡大することが可能）、
（６）画像変倍処理（たとえば、５０％または２００％の固定変倍）、
（７）パラレルバス・インターフェース処理、
（８）シリアルバス・インターフェース処理（後述するプロセス・コントローラー２１１とのインターフェース）、
（９）パラレルデータとシリアルデータのフォーマット変換処理、
（１０）画像読取ユニット１０１とのインターフェース処理、
（１１）画像処理ユニット１０３とのインターフェース処理、
等である。
【００３３】
（画像読取ユニット１０１）
画像読取ユニット１０１によりおこなわれる処理としては以下のようなものがある。
【００３４】
たとえば、
（１）光学系による原稿反射光の読み取り処理、
（２）ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ：電荷結合素子）での電気信号への変換処理、
（３）Ａ／Ｄ変換器でのディジタル化処理、
（４）シェーディング補正処理（光源の照度分布ムラを補正する処理）、
（５）スキャナーγ補正処理（読み取り系の濃度特性を補正する処理）、
等である。
【００３５】
（画像メモリー制御ユニット１０２）
画像メモリー制御ユニット１０２によりおこなわれる処理としては以下のようなものがある。
【００３６】
たとえば、
（１）システム・コントローラーとのインターフェース制御処理、
（２）パラレルバス制御処理（パラレルバスとのインターフェース制御処理）、
（３）ネットワーク制御処理、
（４）シリアルバス制御処理（複数の外部シリアルポートの制御処理）、
（５）内部バスインターフェース制御処理（操作部とのコマンド制御処理）、（６）ローカルバス制御処理（システム・コントローラーを起動させるためのＲＯＭ、ＲＡＭ、フォントデータのアクセス制御処理）、
（７）メモリー・モジュールの動作制御処理（メモリー・モジュールの書き込み／読み出し制御処理等）、
（８）メモリー・モジュールへのアクセス制御処理（複数のユニットからのメモリー・アクセス要求の調停をおこなう処理）、
（９）データの圧縮／伸張処理（メモリー有効活用のためのデータ量の削減するための処理）、
（１０）画像編集処理（メモリー領域のデータクリア、画像データの回転処理、メモリー上での画像合成処理等）、
等である。
【００３７】
（画像処理ユニット１０３）
画像処理ユニット１０３によりおこなわれる処理としては以下のようなものがある。
【００３８】
たとえば、
（１）シェーディング補正処理（光源の照度分布ムラを補正する処理）、
（２）スキャナーγ補正処理（読み取り系の濃度特性を補正する処理）、
（３）ＭＴＦ補正処理、
（４）平滑処理、
（５）主走査方向の任意変倍処理、
（６）濃度変換（γ変換処理：濃度ノッチに対応）、
（７）単純多値化処理、
（８）単純二値化処理、
（９）誤差拡散処理、
（１０）ディザ処理、
（１１）ドット配置位相制御処理（右寄りドット、左寄りドット）、
（１２）孤立点除去処理、
（１３）像域分離処理（色判定、属性判定、適応処理）、
（１４）密度変換処理、
等である。
【００３９】
（画像書込ユニット１０４）
画像書込ユニット１０４によりおこなわれる処理としては以下のようなものがある。
【００４０】
たとえば、
（１）エッジ平滑処理（ジャギー補正処理）、
（２）ドット再配置のための補正処理、
（３）画像信号のパルス制御処理、
（４）パラレルデータとシリアルデータのフォーマット変換処理、
等である。
【００４１】
（ディジタル複合機のハードウエア構成）
つぎに、本実施の形態にかかる画像処理装置がディジタル複合機を構成する場合のハードウエア構成について説明する。図２、は本実施の形態にかかる画像処理装置のハードウエア構成の一例を示すブロック図である。
【００４２】
図２のブロック図において、本実施の形態にかかる画像処理装置は、読取ユニット２０１と、センサー・ボード・ユニット２０２と、画像データ制御部２０３と、画像処理プロセッサー２０４と、ビデオ・データ制御部２０５と、作像ユニット（エンジン）２０６とを備える。また、本実施の形態にかかる画像処理装置は、シリアルバス２１０を介して、プロセス・コントローラー２１１と、ＲＡＭ２１２と、ＲＯＭ２１３とを備える。
【００４３】
上記した構成のうち、画像処理プロセッサー２０４は、画像に基づいて作成されたディジタル信号である画像データを顕像として出力できるように処理し、複数の画像形成動作を実現できるプログラマブルな画像処理手段である。また、画像データ制御部２０３は、画像データを伝送するデータバスと画像処理プロセッサー２０４による画像処理に用いられる処理ユニットとの間の画像データの伝送を一括して管理する画像データ伝送管理手段である。なお、この発明は、画像処理プロセッサー２０４にかかるもので、画像処理プロセッサー２０４の構成については、図３以降の図面を用いて詳細に説明するものとする。
【００４４】
また、本実施の形態にかかる画像処理装置は、パラレルバス２２０を介して、画像メモリー・アクセス制御部２２１とファクシミリ制御ユニット２２４とを備え、さらに、画像メモリー・アクセス制御部２２１に接続されるメモリー・モジュール２２２と、システム・コントローラー２３１と、ＲＡＭ２３２と、ＲＯＭ２３３と、操作パネル２３４とを備える。このような構成のうち、画像メモリー・アクセス制御部２２１、メモリー・モジュール２２２が、ＲＡＭ２１２、ＲＯＭ２１３に対する画像データのアクセスを一括して管理する画像データ記憶管理手段である。
【００４５】
ここで、上記各構成部と、図１に示した各ユニット１００〜１０４との関係について説明する。すなわち、読取ユニット２０１およびセンサー・ボード・ユニット２０２により、図１に示した画像読取ユニット１０１の機能を実現する。また同様に、画像データ制御部２０３により、画像データ制御ユニット１００の機能を実現する。また同様に、画像処理プロセッサー２０４により画像処理ユニット１０３の機能を実現する。
【００４６】
また同様に、ビデオ・データ制御部２０５および作像ユニット（エンジン）２０６により画像書込ユニット１０４を実現する。また同様に、画像メモリー・アクセス制御部２２１およびメモリー・モジュール２２２により画像メモリー制御ユニット１０２を実現する。
【００４７】
つぎに、各構成部の内容について説明する。原稿を光学的に読み取る読取ユニット２０１は、ランプとミラーとレンズから構成され、原稿に対するランプ照射の反射光をミラーおよびレンズにより受光素子に集光する。
【００４８】
受光素子、たとえばＣＣＤは、センサー・ボード・ユニット２０２に搭載され、ＣＣＤにおいて電気信号に変換された画像データはディジタル信号に変換された後、センサー・ボード・ユニット２０２から出力（送信）される。
【００４９】
センサー・ボード・ユニット２０２から出力（送信）された画像データは画像データ制御部２０３に入力（受信）される。機能デバイス（処理ユニット）およびデータバス間における画像データの伝送は画像データ制御部２０３がすべて制御する。
【００５０】
画像データ制御部２０３は、画像データに関し、センサー・ボード・ユニット２０２、パラレルバス２２０、画像処理プロセッサー２０４間のデータ転送、画像データに対するプロセス・コントローラー２１１と画像処理装置の全体制御を司るシステム・コントローラー２３１との間の通信をおこなう。また、ＲＡＭ２１２はプロセス・コントローラー２１１のワークエリアとして使用され、ＲＯＭ２１３はプロセス・コントローラー２１１のブートプログラム等を記憶している。
【００５１】
センサー・ボード・ユニット２０２から出力（送信）された画像データは画像データ制御部２０３を経由して画像処理プロセッサー２０４に転送（送信）され、光学系およびディジタル信号への量子化にともなう信号劣化（スキャナー系の信号劣化とする）を補正し、再度、画像データ制御部２０３へ出力（送信）される。
【００５２】
画像メモリー・アクセス制御部２２１は、メモリー・モジュール２２２に対する画像データの書き込み／読み出しを制御する。また、パラレルバス２２０に接続される各構成部の動作を制御する。また、ＲＡＭ２３２はシステム・コントローラー２３１のワークエリアとして使用され、ＲＯＭ２３３はシステム・コントローラー２３１のブートプログラム等を記憶している。
【００５３】
操作パネル２３４は、画像処理装置がおこなうべき処理を入力する。たとえば、処理の種類（複写、ファクシミリ送信、画像読込、プリント等）および処理の枚数等を入力する。これにより、画像データ制御情報の入力をおこなうことができる。なお、ファクシミリ制御ユニット２２４の内容については後述する。
【００５４】
つぎに、読み取った画像データには、メモリー・モジュール２２２に蓄積して再利用するジョブと、メモリー・モジュール２２２に蓄積しないジョブとがあり、それぞれの場合について説明する。メモリー・モジュール２２２に蓄積する例としては、１枚の原稿について複数枚を複写する場合に、読取ユニット２０１を１回だけ動作させ、読取ユニット２０１により読み取った画像データをメモリー・モジュール２２２に蓄積し、蓄積された画像データを複数回読み出すという方法がある。
【００５５】
メモリー・モジュール２２２を使わない例としては、１枚の原稿を１枚だけ複写する場合に、読み取り画像データをそのまま再生すれば良いので、画像メモリー・アクセス制御部２２１によるメモリー・モジュール２２２へのアクセスをおこなう必要はない。
【００５６】
まず、メモリー・モジュール２２２を使わない場合、画像処理プロセッサー２０４から画像データ制御部２０３へ転送されたデータは、再度画像データ制御部２０３から画像処理プロセッサー２０４へ戻される。画像処理プロセッサー２０４においては、センサー・ボード・ユニット２０２におけるＣＣＤによる輝度データを面積階調に変換するための画質処理をおこなう。
【００５７】
画質処理後の画像データは画像処理プロセッサー２０４からビデオ・データ制御部２０５に転送される。面積階調に変化された信号に対し、ドット配置に関する後処理およびドットを再現するためのパルス制御をおこない、その後、作像ユニット２０６において転写紙上に再生画像を形成する。
【００５８】
つぎに、メモリー・モジュール２２２に蓄積し画像読み出し時に付加的な処理、たとえば画像方向の回転、画像の合成等をおこなう場合の画像データの流れについて説明する。画像処理プロセッサー２０４から画像データ制御部２０３へ転送された画像データは、画像データ制御部２０３からパラレルバス２２０を経由して画像メモリー・アクセス制御部２２１に送られる。
【００５９】
ここでは、システム・コントローラー２３１の制御に基づいて画像データとメモリー・モジュール２２２のアクセス制御、外部ＰＣ（パーソナルコンピューター）２２３のプリント用データの展開、メモリー・モジュール２２２の有効活用のための画像データの圧縮／伸張をおこなう。
【００６０】
画像メモリー・アクセス制御部２２１へ送られた画像データは、データ圧縮後メモリー・モジュール２２２へ蓄積され、蓄積された画像データは必要に応じて読み出される。読み出された画像データは伸張され、本来の画像データに戻し画像メモリー・アクセス制御部２２１からパラレルバス２２０を経由して画像データ制御部２０３へ戻される。
【００６１】
画像データ制御部２０３から画像処理プロセッサー２０４への転送後は画質処理、およびビデオ・データ制御部２０５でのパルス制御をおこない、作像ユニット２０６において転写紙上に再生画像を形成する。
【００６２】
画像データの流れにおいて、パラレルバス２２０および画像データ制御部２０３でのバス制御により、ディジタル複合機の機能を実現する。ファクシミリ送信機能は読み取られた画像データを画像処理プロセッサー２０４にて画像処理を実施し、画像データ制御部２０３およびパラレルバス２２０を経由してファクシミリ制御ユニット２２４へ転送する。ファクシミリ制御ユニット２２４にて通信網へのデータ変換をおこない、公衆回線（ＰＮ）２２５へファクシミリデータとして送信する。
【００６３】
一方、受信されたファクシミリデータは、公衆回線２２５からの回線データをファクシミリ制御ユニット２２４にて画像データへ変換され、パラレルバス２２０および画像データ制御部２０３を経由して画像処理プロセッサー２０４へ転送される。この場合、特別な画質処理はおこなわず、ビデオ・データ制御部２０５においてドット再配置およびパルス制御をおこない、作像ユニット２０６において転写紙上に再生画像を形成する。
【００６４】
複数ジョブ、たとえば、コピー機能、ファクシミリ送受信機能、プリンター出力機能が並行に動作する状況において、読取ユニット２０１、作像ユニット２０６およびパラレルバス２２０の使用権のジョブへの割り振りをシステム・コントローラー２３１およびプロセス・コントローラー２１１において制御する。
【００６５】
プロセス・コントローラー２１１は画像データの流れを制御し、システム・コントローラー２３１はシステム全体を制御し、各リソースの起動を管理する。また、ディジタル複合機の機能選択は操作パネル（操作部）２３４において選択入力し、コピー機能、ファクシミリ機能等の処理内容を設定する。
【００６６】
システム・コントローラー２３１とプロセス・コントローラー２１１は、パラレルバス２２０、画像データ制御部２０３およびシリアルバス２１０を介して相互に通信をおこなう。具体的には、画像データ制御部２０３内においてパラレルバス２２０とシリアルバス２１０とのデータ・インターフェースのためのデータフォーマット変換をおこなうことにより、システム・コントローラー２３１とプロセス・コントローラー２１１間の通信をおこなう。
【００６７】
（画像処理ユニット１０３／画像処理プロセッサー２０４）
つぎに、上記した構成のうち、画像処理ユニット１０３を構成する画像処理プロセッサー２０４における処理の概要について説明する。図３は本実施の形態にかかる画像処理装置の画像処理プロセッサー２０４の処理の概要を示すブロック図である。
【００６８】
図３のブロック図において、画像処理プロセッサー２０４は、第１入力Ｉ／Ｆ（Ｉ／Ｆ）３０１と、スキャナー画像処理部３０２と、第１出力Ｉ／Ｆ３０３と、第２入力Ｉ／Ｆ３０４と、画質処理部３０５と、第２出力Ｉ／Ｆ３０６とを含む構成となっている。
【００６９】
上記構成において、読み取られた画像データはセンサー・ボード・ユニット２０２、画像データ制御部２０３を介して画像処理プロセッサー２０４の第１入力Ｉ／Ｆ３０１からスキャナー画像処理部３０２へ伝達される。
【００７０】
スキャナー画像処理部３０２は読み取られた画像データの劣化を補正することを目的とし、具体的には、シェーディング補正、スキャナーγ補正、ＭＴＦ補正等をおこなう。補正処理ではないが、拡大／縮小の変倍処理もおこなうことができる。読み取り画像データの補正処理が終了すると、第１出力／Ｆ３０３を介して画像データ制御部２０３へ画像データを転送する。
【００７１】
転写紙への出力の際は、画像データ制御部２０３からの画像データを第２入力Ｉ／Ｆ３０４より受信し、画質処理部３０５において面積階調処理をおこなう。画質処理後の画像データは第２出力Ｉ／Ｆ３０６を介してビデオ・データ制御部２０５または画像データ制御部２０３へ出力される。
【００７２】
画質処理部３０５における面積階調処理は、濃度変換処理、ディザ処理、誤差拡散処理等があり、階調情報の面積近似を主な処理とする。いったん、スキャナー画像処理部３０２により処理された画像データをメモリー・モジュール２２２に蓄積しておけば、画質処理部３０５により画質処理を変えることによって種々の再生画像を確認することができる。
【００７３】
たとえば、再生画像の濃度を振って（変更して）みたり、ディザマトリクスの線数を変更してみたりすることにより、再生画像の雰囲気を容易に変更することができる。この際、処理を変更するごとに画像を読取ユニット２０１からの読み込みをやり直す必要はなく、メモリー・モジュール２２２から蓄積された画像データを読み出すことにより、同一画像データに対して、何度でも異なる処理を迅速に実施することができる。
【００７４】
また、画像処理プロセッサー２０４は、画像処理装置における単体スキャナーとしての機能を用いて生成された画像データを処理する場合、スキャナー画像処理と階調処理をあわせて実施し、画像データ制御部２０３へ出力する。処理内容はプログラマブルに変更することができる。処理の切り替え、処理手順の変更等はシリアルＩ／Ｆ３０８を介してコマンド制御部３０７において管理する。
【００７５】
〔実施の形態１〕
図４は、この発明の実施の形態１の画像処理プロセッサー２０４の内部構成を説明するための図である。実施の形態１では、図４のように構成することにより、図３に示した画像処理プロセッサー２０４の処理を実現している。
【００７６】
図４に示した構成は、複数の画像データを同時に処理できるＳＩＭＤ型のＳＩＭＤ型演算処理部４０１と、ＳＩＭＤ型演算処理部４０１に接続する複数のＲＡＭ４０９およびＲＡＭ４０９の各々を制御するメモリー・コントローラーＡ（図中メモコンＡ）４０７ａ、あるいはメモリー・コントローラーＢ（図中メモコンＢ）４０７ｂを備えている。なお、この発明の実施の形態１〜４のメモリー・コントローラーは、いずれも後に図示するコントロール・レジスターを備えている。
【００７７】
そして、メモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂとＲＡＭ４０９との間にはメモリー・スイッチ４０５ａ、メモリー・スイッチ４０５ｂが設けられていて、ＳＩＭＤ型演算処理部４０１のレジスターＲ０〜Ｒ１９に対するＲＡＭ４０９の接続状態を切り替えている。この切り替えによって、レジスターＲ０〜Ｒ１９の各々に接続するＲＡＭ４０９の総合的な容量が制御される。
【００７８】
また、図４に示した構成は、複数のＲＡＭ４０９に画像データを転送するデータバスを管理するバススイッチ４０３ａ、４０３ｂを備えている。このバススイッチのうち、バススイッチ４０３ａは２つのデータ入出力用バス４０２、バススイッチ４０３ｂは一つのデータ入出力用バス４０２と接続している。さらに、メモリー・コントローラーのうち、メモリー・コントローラーＡ４０７ａは、データ入出力用バス４０２やバススイッチ４０３ａ、４０３ｂと接続しないものをいう。また、メモリー・コントローラーＢ４０７ｂは、データ入出力用バス４０２、バススイッチ４０３ａ、４０３ｂと接続しているものをいう。
【００７９】
そして、この発明の実施の形態１、および後で説明する実施の形態２、実施の形態３、実施の形態４では、メモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂが、ＲＡＭ４０９とＳＩＭＤ型演算処理部４０１との間でおこなわれる画像データの転送を制御している。なお、この制御の具体的な内容については、後述するものとする。
【００８０】
以上の構成は、以下のように動作する。すなわち、画像データは、データ入出力用バス４０２を介して画像処理プロセッサー２０４に入力する。そして、バススイッチ４０３ａ、バススイッチ４０３ｂを介してメモリー・コントローラーＢ４０７ｂに入力し、メモリー・コントローラーＢ４０７ｂからいったんＲＡＭ４０９に蓄積される。
【００８１】
また、ＲＡＭ４０９に蓄積された画像データは、ＳＩＭＤ型演算処理部４０１の処理に応じて読み出され、再度メモリー・スイッチ４０５ａおよびメモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂを介してＳＩＭＤ型演算処理部４０１に入力する。ＳＩＭＤ型演算処理部４０１では、この画像データを内部にあるプロセッサーエレメント（ＰＥ）に転送し、画像データに対する画像処理を実行する。なお、プロセッサーエレメントにおける処理でＲＡＭ４０９を使用する場合には、メモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂを介してプロセッサーエレメントとＲＡＭ４０９との間で画像データが授受される。
【００８２】
ここで、画像処理部４０１の内部構成について説明する。図５はＳＩＭＤ型プロセッサーの概略構成を示す説明図である。ＳＩＭＤは複数のデータに対し、単一の命令を並列に実行させるもので、複数のプロセッサーエレメント５００より構成される。
【００８３】
それぞれのプロセッサーエレメント５００は、データを格納するレジスター（Ｒｅｇ）５０１、他のプロセッサーエレメント５００のレジスターをアクセスするためのマルチプレクサー（ＭＵＸ）５０２、バレルシフター（Ｓｈｉｆｔ  Ｅｘｐａｎｄ）５０３、論理演算器（ＡＬＵ）５０４、論理結果を格納するアキュムレーター（Ａ）５０５、アキュムレーター５０５の内容を一時的に退避させるテンポラリー・レジスター（Ｆ）５０６から構成される。
【００８４】
各レジスター５０１はアドレスバスおよびデータバス（リード線およびワード線）に接続されており、処理を規定する命令コード、処理の対象となるデータを格納する。レジスター５０１の内容は論理演算器５０４に入力され、演算処理結果はアキュムレーター５０５に格納される。結果をプロセッサーエレメント５００外部に取り出すために、テンポラリー・レジスター５０６にいったん退避させる。テンポラリー・レジスター５０６の内容を取り出すことにより、対象データに対する処理結果が得られる。
【００８５】
命令コードは各プロセッサーエレメント５００に同一内容で与え、処理の対象データをプロセッサーエレメント５００ごとに異なる状態で与え、隣接プロセッサーエレメント５００のレジスター５０１の内容をマルチプレクサー５０２において参照することで、演算結果は並列処理され、各アキュムレーター５０５に出力される。
【００８６】
たとえば、画像データ１ラインの内容を各画素ごとにプロセッサーエレメント５００に配置し、同一の命令コードで演算処理させれば、１画素ずつ逐次処理するよりも短時間で１ライン分の処理結果が得られる。特に、空間フィルター処理、シェーディング補正処理はプロセッサーエレメント５００ごとの命令コードは演算式そのもので、プロセッサーエレメント５００すべてに共通に処理を実施することができる。
【００８７】
つぎに、実施の形態１のメモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂによる、ＲＡＭ４０９とＳＩＭＤ型演算処理部４０１との間でおこなわれる画像データの転送を制御について説明する。図６は、画像データ転送制御を説明するための模式的な図である。なお、この転送制御は、メモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂのいずれについても同様におこなわれるため、図６ではメモリー・コントローラーＢ４０７ｂについてにのみ示すものとした。
【００８８】
図示するように、実施の形態１のメモリー・コントローラーＢ４０７ｂは、それぞれコントロール・レジスター６０３と接続している。そして、このコントロール・レジスター６０３が、メモリー・コントローラーＢ４０７ｂと接続するＲＡＭ４０９、プロセッサーエレメント５００間でおこなわれる画像データ転送の方式（画像データ転送モード）を設定する画像データ転送モード設定機能を有している。
【００８９】
コントロール・レジスター６０３には、画像処理プロセッサー２０４の外部（たとえばプロセス・コントローラー２１１）にあるＣＰＵ６０１から、制御すべきＲＡＭ４０９のアドレス（図中単にアドレスと記す）、ＲＡＭ４０９への書き込み条件を示すデータ（書き込みデータ、図中単にデータと記す）、制御信号が入力される。
【００９０】
コントロール・レジスター６０３は、画像データを書き込むＲＡＭ４０９のアドレスを指定したライトアドレス、書き込むワード数を設定するライトワード数、プロセッサーエレメント５００が画像データを書き込む順番や、書き込みを開始するプロセッサーエレメント５００の番号（図中（０），（１）・・・で示す）を設定するライトオフセット、使用する記憶容量（レジスターに接続されるＲＡＭ４０９の個数で決まる）を設定する最終アドレス、画像データを読み出すＲＡＭ４０９のアドレスを指定したリードアドレス、読み出し時のワード数を設定するリードワード数を設定するリードワード数を設定するレジスターを備えている。
【００９１】
前記したレジスターのアドレス、ＲＡＭ４０９への書き込みデータ、制御信号を入力すると、この各レジスターに所定の値（コントロール・レジスター値）が設定される。このことにより、コントロール・レジスター６０３は、メモリー・コントローラーＢ４０７ｂを制御するＰＥ転送制御コマンドを生成する。したがって、このＰＥ転送制御コマンドには、ライトアドレス、ライトワード数、ライトオフセット、最終アドレス、リードアドレス、リードワード数の情報が含まれることになる。
【００９２】
メモリー・コントローラーＢ４０７ｂは、このようなＰＥ転送制御コマンドを入力するとともにＰＥ転送制御コマンドに応じた制御信号を生成し、メモリー・スイッチ４０５ａを介してＲＡＭ４０９に入力する。この結果、ＲＡＭ４０９は、制御信号にしたがう転送モードでＳＩＭＤ型演算処理部４０１にあるプロセッサーエレメント５００と画像データ（太線で示す）を授受する。
【００９３】
画像データ転送モードには、たとえば、ライトオフセットで指定されたプロセッサーエレメント５００から順次画像データを読み出し、これをライトアドレスで指定されたＲＡＭ４０９に転送する処理をライトワード数分だけ繰り返すＰＥライト転送、リードアドレスで指定されたＲＡＭ４０９から画像データを読み出し、ライトオフセットの設定にしたがってプロセッサーエレメント５００に転送する処理をリードワード数分だけ繰り返すＰＥリード転送、ＰＥライト転送を開始し、この終了後に続けてＰＥリード転送を開始するＰＥライト・リード転送などがある。
【００９４】
また、この発明のコントロール・レジスターで設定可能な画像データ転送モードには、このほかにランダムアクセスモード、自動アクセスモードを切り替えて画像データ転送をおこなうモード、重複読み出しリードモード、間引きライトモードといった画像データ転送モードがある。このような画像データ転送モードについては、以降の実施の形態で説明するものとする。
【００９５】
つぎに、以上述べた実施の形態１の処理を、フローチャートにして説明する。図７は、この発明の実施の形態で共通の画像データ転送制御の概略を説明するためのフローチャートである。また、図８は、特に実施の形態１の画像データ転送制御についてより具体的に説明するフローチャートである。
【００９６】
図７に示すように、この発明の画像データ転送制御では、ＣＰＵ６０１が、コントロール・レジスター６０３にレジスター条件を設定するようにメモリー・コントローラーＢ４０７ｂを制御する（ステップＳ７０１）。この制御により、コントロール・レジスター６０３がメモリー・コントローラーＡ４０７ａ、メモリー・コントローラーＢ４０７ｂ（以降、特に指定のない場合はメモリー・コントローラーＢ４０７ｂとする）を制御し、メモリー・コントローラーＢ４０７ｂから制御信号が生成される（ステップＳ７０２）。
【００９７】
ステップＳ７０２で生成された制御信号は、メモリー・スイッチ４０５ａ、あるいはメモリー・スイッチ４０５ｂ（以降、特に指定のない場合はメモリー・スイッチ４０５ａとする）を介してＲＡＭ４０９に入力する。ＲＡＭ４０９は、制御信号にしたがってＳＩＭＤ型演算処理部４０１のプロセッサーエレメント５００との間で画像データの転送をおこなう（ステップＳ７０３）。
【００９８】
以上の処理の後、コントロール・レジスター６０３は、プロセッサーエレメント５００との転送が終了したか否か判断し（ステップＳ７０４）、終了していない場合（ステップＳ７０４否定）は、再度制御信号を生成する（ステップＳ７０２）。一方、転送が終了した場合（ステップＳ７０４肯定）は、画像データ転送制御の処理を終了する。
【００９９】
以上の処理を、実施の形態１についてより具体的に説明する。図８のように、ＣＰＵ６０１は、コントロール・レジスター６０３のレジスターにコントロール・レジスター値を設定する（ステップＳ８０１）。メモリー・コントローラーＢ４０７ｂは、このコントロール・レジスター値をＰＥ転送制御コマンドとして読み取り（ステップＳ８０２）、ＰＥ転送制御コマンドがＰＥライト転送モードを示すものか否か判断する（ステップＳ８０３）。
【０１００】
ステップＳ８０３の判断の結果、メモリー・コントローラーＢ４０７ｂは、ＰＥ転送制御コマンドがＰＥライト転送モードであると判断すると（ステップＳ８０３肯定）、ＰＥライト転送スタート要求を読み取る（ステップＳ８０４）。そして、ＰＥライト転送をスタートするか否か判断する（ステップＳ８０５）。
【０１０１】
ステップＳ８０５の判断の結果、ＰＥライト転送をスタートしない場合（ステップＳ８０５否定）は、再度ＰＥライト転送のスタート要求を読み取ることによってスタートするまで待機する。一方、ＰＥライト転送をスタートする場合（ステップＳ８０５肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成する（ステップＳ８０６）。この制御信号はプロセッサーエレメント５００に入力し、プロセッサーエレメント５００がＲＡＭ４０９にアクセスして画像データを転送する（Ｓ８０７）。
【０１０２】
以上の処理終了後、画像データ転送が終了したか否かが判断される（ステップＳ８１７）。この判断の結果、転送が終了していない場合（ステップＳ８１７否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ８０２）。また、転送が終了した場合（ステップＳ８１７肯定）は、画像データ転送制御の処理を終了する。
【０１０３】
また、ステップＳ８０３の判断で、ＰＥ転送制御コマンドがＰＥライト転送モードのものでない場合（ステップＳ８０３否定）は、ＰＥ転送制御コマンドがＰＥリード転送モードを示すものか否か判断する（ステップＳ８０８）。この判断で、ＰＥ転送制御コマンドがＰＥリード転送モードのものであると判断された場合（ステップＳ８０８肯定）は、ＰＥリード転送スタート要求を読み取り（ステップＳ８０９）、ＰＥリード転送をスタートするか否か判断する（ステップＳ８１０）。そして、ＰＥリード転送をスタートしない場合（ステップＳ８１０否定）は、ＰＥリード転送がスタートするまで待機する。
【０１０４】
一方、ＰＥリード転送をスタートする場合（ステップＳ８１０肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ８１１）、ＲＡＭ４０９に入力する。この制御信号により、ＲＡＭ４０９に記憶されている画像データが読み出され、プロセッサーエレメント５００へ転送される（Ｓ８１２）。
【０１０５】
以上の処理終了後、画像データ転送が終了したか否かが判断される（ステップＳ８１７）。この判断の結果、転送が終了していない場合（ステップＳ８１７否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ８０２）。また、転送が終了した場合（ステップＳ８１７肯定）は、画像データ転送制御の処理を終了する。
【０１０６】
また、ステップＳ８０８の判断で、ＰＥ転送制御コマンドがＰＥリード転送モードのものでないと判断された場合（ステップＳ８０８否定）は、図８のフローチャートでは、ＰＥ転送制御コマンドがＰＥライト・リード転送モードを示すものと判断する。そして、ＰＥライト・リード転送スタート要求を読み取り（ステップＳ８１３）、ＰＥライト・リード転送をスタートするか否か判断する（ステップＳ８１４）。
【０１０７】
そして、ＰＥライト・リード転送をスタートしない場合（ステップＳ８１４否定）は、ＰＥライト・リード転送がスタートするまで待機する。一方、ＰＥライト・リード転送をスタートする場合（ステップＳ８１４肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ８１５）、プロセッサーエレメント５００に入力する。この制御信号により、ＲＡＭ４０９、プロセッサーエレメント５００間でＰＥライト・リード転送モードによる画像データ転送がおこなわれる（Ｓ８１６）。
【０１０８】
以上の処理終了後、画像データ転送が終了したか否かが判断される（ステップＳ８１７）。この判断の結果、転送が終了していない場合（ステップＳ８１７否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ８０２）。また、転送が終了した場合（ステップＳ８１７肯定）は、画像データ転送制御の処理を終了する。
【０１０９】
以上説明した実施の形態１によれば、コントロール・レジスターでＳＩＭＤ型演算処理部４０１とＲＡＭ４０９との間でおこなわれる画像データの転送モードが制御できる。このため、画像データの処理に応じて画像データ転送を最適化することができ、画像処理装置における画像処理の効率を高めることができる。
【０１１０】
また、実施の形態１では、このような画像データ転送モードの制御がコントロール・レジスターを設けることで実現できる。このため、画像データ転送モードを制御できる機能を付加したことによって生じるハードウェアの大型化やコストの上昇を抑えることができる。
【０１１１】
〔実施の形態２〕
つぎに、実施の形態２の画像処理装置による、ＲＡＭ４０９とＳＩＭＤ型演算処理部４０１との間でおこなわれる画像データの転送を制御について説明する。実施の形態２の画像処理装置は、コントロール・レジスターが、アドレスを設定してメモリーにアクセスするランダムアクセスモードの設定と、自動的にアドレスを更新してメモリーにアクセスする自動アクセスモードの設定とを、外部から与えられる制御信号にしたがって切り替えるように構成されている。
【０１１２】
図９は、実施の形態２の画像データ転送制御を説明するための模式的な図である。なお、図９に示した構成は、コントロール・レジスター、メモリー・コントローラー以外の構成については図６に示したものと同様に構成されている。このため、図９に示した構成について、図６に示した構成と同様のものについては同様の符号を付して説明を一部省略するものとする。
【０１１３】
図示するように、実施の形態２のメモリー・コントローラー９０７は、コントロール・レジスター９０３と接続している。そして、このコントロール・レジスター９０３が、メモリー・コントローラー９０７と接続するＲＡＭ４０９の画像データ転送モードを設定する画像データ転送モード設定機能を有している。
【０１１４】
コントロール・レジスター９０３には、画像処理プロセッサー２０４の外部（たとえばプロセス・コントローラー２１１）にあるＣＰＵ６０１から、制御すべきＲＡＭ４０９が接続されたレジスターのアドレス（図中単にアドレスと記す）、ＲＡＭ４０９への書き込みデータ（図中単にデータと記す）、制御信号が入力される。
【０１１５】
コントロール・レジスター９０３には、コントロール・レジスター６０３と同様に、ライトアドレス、ライトワード数、ライトオフセット、最終アドレス、リードアドレス、リードワード数を設定するレジスターがある。また、実施の形態２のコントロール・レジスター９０３は、さらにランダムアクセスモード、自動アクセスモードの別、さらには自動アクセスモード時におけるアドレスの更新方向および更新量を設定するレジスターを有している。
【０１１６】
コントロール・レジスター９０３では、メモリー・コントローラー９０７のＰＥ転送制御コマンドを作成し、メモリー・コントローラー９０７に出力する。さらに、ランダムアクセスモード、自動アクセスモードの別（図中、ランダム／自動アクセスモードと記す）、自動アクセスモード時におけるアドレスの更新方向（図中アドレス更新方向と記す）および更新量（図中アドレス更新量と記す）に関する制御コマンドを、ＰＥ転送制御コマンドとともにメモリー・コントローラー９０７に出力する。
【０１１７】
メモリー・コントローラー９０７は、ＰＥ転送制御コマンドおよびランダムアクセスモード、自動アクセスモードの別、自動アクセスモード時におけるアドレスの更新方向および更新量に関する制御コマンドに応じて制御信号を生成する。そして、この制御信号とともに、ランダムアクセスモードの動作に必要なアドレスをメモリー・スイッチ４０５ａを介してＲＡＭ４０９に入力する。この結果、ＲＡＭ４０９は、制御信号にしたがってＳＩＭＤ型演算処理部４０１にあるプロセッサーエレメント５００と、ランダムアクセスモード、あるいは自動アクセスモードによって画像データ（太線で示す）を授受する。
【０１１８】
ここで、ランダムアクセスモード、自動アクセスモードによる実施の形態２の画像データ転送制御の動作について説明する。
【０１１９】
（ランダムアクセスモード）
ランダムアクセスモードは、ＲＡＭ４０９に対してアクセスするたび、ＲＡＭ４０９のアドレスを設定する画像データ転送モードをいう。実施の形態２では、コントロール・レジスター９０３からＰＥ転送制御コマンドとともにランダムアクセスモード、自動アクセスモードの別に関する制御コマンドがメモリー・コントローラー９０７に入力する。
【０１２０】
メモリー・コントローラー９０７は、このコマンドが、ランダムアクセスモード、自動アクセスモードのどちらを示しているか判別する。そして、コマンドがランダムアクセスモードを示す場合、ライト、リードの動作に応じてライトアドレスまたはリードアドレスに設定されているアドレスを制御信号とともにメモリー・スイッチ４０５ａに出力する。
【０１２１】
そして、リード動作時には、このアドレスで指定されるＲＡＭ４０９にアクセスしてＲＡＭ４０９に記憶されている画像データを読み出す。読み出された画像データは、プロセッサーエレメント５００に転送される。
【０１２２】
一方、ライト動作時には、メモリー・コントローラー９０７がライトオフセットで最初に書き込みをおこなうように設定されたプロセッサーエレメント５００からライト動作を開始し、順次ＲＡＭ４０９に画像データを転送する。このため、ＣＰＵ６０１は、アクセスのたび、毎回コントロール・レジスター９０３のレジスターにＲＡＭ４０９のアドレスを設定する必要がある。
【０１２３】
（自動アクセスモード）
自動アクセスモードは、ＲＡＭ４０９に対してアクセスする際、最初にアクセスされるＲＡＭ４０９のアドレスのみを設定する。そして、以降、自動的にアドレスを更新しながらＲＡＭ４０９にアクセスする処理を繰り返す画像データ転送モードをいう。
【０１２４】
メモリー・コントローラー９０７は、入力したコマンドがランダムアクセスモードを示す場合、ライト、リードの動作に応じてライトアドレスまたはリードアドレスに設定されているアドレスを制御信号とともにメモリー・スイッチ４０５ａに出力する。
【０１２５】
そして、リード動作時には、このアドレス（初期アドレス）で指定されたＲＡＭ４０９から順にアクセスする処理を繰り返し、読み出した画像データをプロセッサーエレメント５００に転送する。この処理の繰り返しの際、アクセスされるＲＡＭ４０９のアドレスは自動的に更新される。アドレスの更新は、コントロール・レジスター９０３からメモリー・コントローラー９０７に対して入力するアドレス更新方向、アドレス更新量を示すコマンドに基づいておこなわれる。
【０１２６】
すなわち、メモリー・コントローラー９０７は、初期アドレスを持ったＲＡＭ４０９から順に、アドレス更新方向で設定された方向（アドレスの数値が増加する方向、あるいは減少する方向）に、アドレス更新量で設定された量だけアドレスを更新しながらＲＡＭ４０９にアクセスする処理を繰り返す。なお、この繰り返しは、リードワード数として設定された数だけおこなわれる。
【０１２７】
一方、ライト動作時には、ライトオフセットで指定されたプロセッサーエレメント５００から順にアクセスする処理を繰り返し、各プロセッサーエレメント５００で処理された画像データをＲＡＭ９０４に転送する。この処理の繰り返しの際、アクセスされるプロセッサーエレメント５００のアドレスは自動的に更新される。アドレスの更新は、コントロール・レジスター９０３からメモリー・コントローラー９０７に対して入力するアドレス更新方向、アドレス更新量を示すコマンドに基づいておこなわれる。
【０１２８】
すなわち、メモリー・コントローラー９０７は、ライトオフセットで指定されたプロセッサーエレメント５００から順に、アドレス更新方向で設定された方向に、アドレス更新量で設定された量だけアドレスを更新しながらプロセッサーエレメント５００にアクセスする処理を繰り返す。なお、この繰り返しは、ライトワード数として設定された数だけおこなわれる。
【０１２９】
以上説明した実施の形態２の処理を、図１０のフローチャートを用いて説明する。図１０のように、ＣＰＵ６０１は、コントロール・レジスター９０３のレジスターにコントロール・レジスター値を設定する（ステップＳ１００１）。このコントロール・レジスター値に応じ、コントロール・レジスター９０３からメモリー・コントローラー９０７にＰＥ転送制御コマンド、ランダムアクセスモード、自動アクセスモードに関する制御コマンドが入力する。メモリー・コントローラー９０７は、このうちのＰＥ転送制御コマンドを読み取り（ステップＳ１００２）、ＰＥライト転送モードが設定されたか否か判断する（ステップＳ１００３）。
【０１３０】
ステップＳ１００３の判断で、ＰＥ転送制御コマンドがＰＥライト転送モードのものであると判断された場合（ステップＳ１００３肯定）は、ＰＥライト転送スタート要求を読み取り（ステップＳ１００４）、ＰＥライト転送をスタートするか否か判断する（ステップＳ１００５）。そして、ＰＥライト転送をスタートしない場合（ステップＳ１００５否定）は、ＰＥライト転送をスタートするまで待機する。
【０１３１】
一方、ＰＥライト転送をスタートする場合（ステップＳ１００５肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ１００６）、プロセッサーエレメント５００に入力する。この制御信号により、プロセッサーエレメント５００がＲＡＭ４０９にアクセスし、プロセッサーエレメント５００からＲＡＭ４０９への画像データ転送が設定される（Ｓ１００７）。
【０１３２】
さらに、実施の形態２では、ステップＳ１００７の画像データ転送がランダムアクセスモードでなされたものか否か判断する（ステップＳ１００８）。この判断の結果、画像データがランダムアクセスモードで転送されたものでない、つまり、自動アクセスモードで転送された場合（ステップＳ１００８否定）は、つぎの画像データ転送のためにコントロール・レジスター値を更新する（ステップＳ１００９）。なお、この更新は、アドレス更新方向で設定された方向に、アドレス更新量で設定された量だけおこなわれる。
【０１３３】
以上の処理終了後、またはステップＳ１００８において画像データの転送がランダムアクセスモードでなされた場合（ステップＳ１００８肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１０２３）。この判断の結果、転送が終了していない場合（ステップＳ１０２３否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ１００２）。また、転送が終了した場合（ステップＳ１０２３肯定）は、画像データ転送制御の処理を終了する。
【０１３４】
また、ステップＳ１００３の判断で、ＰＥ転送制御コマンドがＰＥライト転送モードのものでないと判断された場合（ステップＳ１００３否定）は、ＰＥ転送制御コマンドがＰＥリード転送モードのものか否か判断する（ステップＳ１０１０）。ステップＳ１０１０の判断で、ＰＥ転送制御コマンドがＰＥリード転送モードのものであると判断された場合（ステップＳ１０１０肯定）は、ＰＥリード転送スタート要求を読み取り（ステップＳ１０１１）、ＰＥリード転送をスタートするか否か判断する（ステップＳ１０１２）。そして、ＰＥリード転送をスタートしない場合（ステップＳ１０１２否定）は、ＰＥリード転送をスタートするまで待機する。
【０１３５】
一方、ＰＥリード転送をスタートする場合（ステップＳ１０１２肯定）は、メモリー・コントローラー９０７が制御信号を生成し（ステップＳ１０１３）、ＲＡＭ４０９に入力する。この制御信号により、ＲＡＭ４０９に記憶されている画像データが読み出され、プロセッサーエレメント５００へ転送される（Ｓ１０１４）。
【０１３６】
さらに、実施の形態２では、ステップＳ１０１４の画像データ転送がランダムアクセスモードでなされたものか否か判断する（ステップＳ１０１５）。そして、画像データが自動アクセスモードで転送されたと判断した場合（ステップＳ１０１５否定）は、つぎの画像データ転送のためにコントロール・レジスター値をアドレス更新方向で設定された方向に、アドレス更新量で設定された量だけ更新する（ステップＳ１０１６）。
【０１３７】
以上の処理終了後、またはステップＳ１０１４において画像データの転送がランダムアクセスモードでなされた場合（ステップＳ１０１５肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１０２３）。この判断の結果、転送が終了していない場合（ステップＳ１０２３否定）は、再びメモリー・コントローラー４０７から制御信号を読み取る処理に戻る（ステップＳ１００２）。また、転送が終了した場合（ステップＳ１０２３肯定）は、画像データ転送制御の処理を終了する。
【０１３８】
また、ステップＳ１０１０の判断で、ＰＥ転送制御コマンドがＰＥリード転送モードのものでないと判断された場合（ステップＳ１０１０否定）は、ＰＥ転送制御コマンドがＰＥライト・リード転送モードを示すものと判断する。そして、ＰＥライト・リード転送スタート要求を読み取り（ステップＳ１０１７）、ＰＥライト・リード転送をスタートするか否か判断する（ステップＳ１０１８）。
【０１３９】
ＰＥライト・リード転送をスタートしない場合（ステップＳ１０１８否定）は、ＰＥライト・リード転送をスタートするまで待機する。一方、ＰＥライト・リード転送をスタートする場合（ステップＳ１０１８肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ１０１９）、プロセッサーエレメント５００に入力する。この制御信号により、ＲＡＭ４０９、プロセッサーエレメント５００間でＰＥライト・リード転送モードによる画像データ転送がおこなわれる（Ｓ１０２０）。
【０１４０】
さらに、実施の形態２では、ステップＳ１０２０の画像データ転送がランダムアクセスモードでなされたものか否か判断する（ステップＳ１０２１）。この判断の結果、画像データが自動アクセスモードで転送された場合（ステップＳ１０２１否定）は、つぎの画像データ転送のため、アドレス更新方向で設定された方向に、アドレス更新量で設定された量だけコントロール・レジスター値を更新する（ステップＳ１０２２）。
【０１４１】
以上の処理終了後、またはステップＳ１０２０において画像データの転送がランダムアクセスモードでなされた場合（ステップＳ１０２１肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１０２３）。この判断の結果、転送が終了していない場合（ステップＳ１０２３否定）は、再びメモリー・コントローラー４０７から制御信号を読み取る処理に戻る（ステップＳ１００２）。また、転送が終了した場合（ステップＳ１０２３肯定）は、画像データ転送制御の処理を終了する。
【０１４２】
以上述べたように、実施の形態２によれば、ＲＡＭ４０９、ＳＩＭＤ型演算処理部４０１間の画像データ転送に際し、ランダムアクセスモード、自動アクセスモードのいずれかを選択することができる。このため、画像処理に応じて選択できる画像データ転送の設定の自由度が増し、画像処理の効率を一層高めることができる。
【０１４３】
〔実施の形態３〕
つぎに、実施の形態３の画像処理装置による、ＲＡＭ４０９とＳＩＭＤ型演算処理部４０１との間でおこなわれる画像データの転送を制御について説明する。実施の形態３の画像処理装置は、コントロール・レジスターが、外部から与えられる制御信号にしたがってＲＡＭ４０９から重複して画像データを読み出すとともにＳＩＭＤ型演算処理部４０１に転送する、重複読出しモードを設定するものである。
【０１４４】
図１１は、実施の形態３の画像データ転送制御を説明するための模式的な図である。なお、図１１に示した構成は、コントロール・レジスター、メモリー・コントローラー以外の構成については図６、図９に示したものと同様に構成されている。このため、図１１に示した構成について、図６、図９に示した構成と同様のものについては同様の符号を付して説明を一部省略するものとする。
【０１４５】
図示するように、実施の形態３のメモリー・コントローラー１１０７は、コントロール・レジスター１１０３と接続している。コントロール・レジスター１１０３には、コントロール・レジスター６０３と同様に、ライトアドレス、ライトワード数、ライトオフセット、最終アドレス、リードアドレス、リードワード数を設定するレジスターがある。また、実施の形態３のコントロール・レジスター１１０３は、さらに重複読出しモード、さらには重複読出し時におけるアドレスの更新方向および更新量を設定するレジスターを有している。
【０１４６】
コントロール・レジスター１１０３では、メモリー・コントローラー１１０７のＰＥ転送制御コマンドを作成し、メモリー・コントローラー１１０７に出力する。さらに、重複読出しモード、重複読出し時のアドレスの更新方向（図中アドレス更新方向と記す）および更新量（図中アドレス更新量と記す）に関する制御コマンドを、ＰＥ転送制御コマンドとともにメモリー・コントローラー１１０７に出力する。また、メモリー・コントローラー１１０７には、外部（たとえばプロセス・コントローラー２１１）から重複読出しのタイミングを指示する重複読出し制御信号が入力する。
【０１４７】
メモリー・コントローラー１１０７は、ＰＥ転送制御コマンドおよび重複読出しモード、重複読出しのアドレスの更新方向および更新量に関する制御コマンドに応じて制御信号を生成する。そして、この制御信号とともに、重複読出し動作に必要なアドレスをメモリー・スイッチ４０５ａを介してＲＡＭ４０９に入力する。この結果、ＲＡＭ４０９は、制御信号にしたがってＳＩＭＤ型演算処理部４０１にあるプロセッサーエレメント５００と、重複読出しモードによって画像データ（太線で示す）を授受する。
【０１４８】
ここで、重複読出しモードによる実施の形態３の画像データ転送制御の動作について説明する。図１２は、重複読出しのための動作をより詳細に説明する図である。図１２には、ＳＩＭＤ型演算処理部４０１に接続されるＲＡＭ４０９の各々を、０，１，２，３・・・として区別して示す。ＲＡＭ０、ＲＡＭ１、ＲＡＭ２、ＲＡＭ３には、それぞれ画像データＡ、画像データＢ、画像データＣ、画像データＤ、画像データＥが保存されている。
【０１４９】
また、ＳＩＭＤ型演算処理部４０１内部のプロセッサーエレメント５００の各々を、０，１，２，３・・・として区別して示す。さらに、区別されたプロセッサーエレメントの各々に対して与えられる重複読出し制御信号を、「０」，「１」に区別して示す。なお、この「０」は重複読出しをおこなわないことを、「１」は重複読出しをおこなうことをそれぞれ示している。
【０１５０】
プロセッサーエレメント０がＲＡＭ０にアクセスし、画像データを読み出す場合、この読み出しにあたって一つ目の読み出し制御信号「０」が論理回路１２０１に出力される。また、この際には、アクセスされるＲＡＭ０のアドレスも、この読出し制御信号に合わせて論理回路１２０１に入力する。論理回路１２０１は、ＲＡＭ０のアドレスと「０」の信号とをプロセッサーエレメント０に出力する。
【０１５１】
プロセッサーエレメント０は、入力したアドレスにしたがってＲＡＭ０にアクセスし、画像データＡを読み出す。このとき、信号「０」により重複読出しはおこなわれずにＲＡＭ０に記憶されている画像データＡがプロセッサーエレメント０に転送される（プロセッサーエレメント０中にＡとして記す）。
【０１５２】
つぎに、ＲＡＭ１のアドレスと重複読出し制御信号「１」とが、論理回路１２０１に入力する。このとき、論理回路１２０１は、重複読出し制御信号「１」によってＲＡＭのアドレスを更新しない。したが、プロセッサーエレメント１は、先にアクセスしたＲＡＭ０に再びアクセスし、ＲＡＭ０に記憶されている画像データＡを読み出す。この結果、プロセッサーエレメント０、プロセッサーエレメント１の両方にＲＡＭ０に記憶されている画像データが転送される（プロセッサーエレメント１側に転送された画像データＡを画像データＡ´として示す）。
【０１５３】
以上のようにして、順次プロセッサーエレメント０，１，２，３・・・がＲＡＭ０、ＲＡＭ１、ＲＡＭ２、ＲＡＭ３・・・にアクセスし、ＲＡＭに記憶された画像データを読み出してはプロセッサーエレメントに転送する。このような処理を図示した重複読出し制御信号にしたがって実行すると、ＳＩＭＤ型演算処理部４０１のプロセッサーエレメントには、画像データＡ、画像データＡ’、画像データＢ、画像データＢ’、画像データＣ、画像データＣ’、画像データＤ、画像データＤ’の順序で転送される。
【０１５４】
なお、画像データＸ（Ｘは任意の数）の表記は、ＲＡＭＸに記憶されている画像データを示し、画像データＸ´の表記は、重複読出しモードによって転送されたＲＡＭＸに記憶されている画像データを示す。
【０１５５】
以上説明した実施の形態３の処理を、図１３のフローチャートを用いて説明する。なお、図１３のフローチャートは、画像データ転送モードがＰＥリード転送モード、あるいはＰＥライト・リード転送モードのいずれかである場合になされる処理を説明するものである。
【０１５６】
図１３のように、ＣＰＵ６０１は、コントロール・レジスター１１０３のレジスターにコントロール・レジスター値を設定する（ステップＳ１３０１）。コントロール・レジスター１１０３は、このコントロール・レジスター値に応じてＰＥ転送制御コマンド、ランダムアクセスモード、自動アクセスモード、さらには重複読出しモードに関する制御コマンドをメモリー・コントローラー１１０３に入力する。
【０１５７】
メモリー・コントローラー１１０７は、このような制御コマンドを読み取り（ステップＳ１３０２）、このうちのＰＥ転送制御コマンドからＰＥ転送制御モードがリード転送モードを示すものか否か判断する（ステップＳ１３０３）。
【０１５８】
ステップＳ１３０３の判断で、ＰＥ転送制御コマンドがＰＥリード転送モードのものであると判断された場合（ステップＳ１３０３肯定）は、ＰＥリード転送スタート要求を読み取り（ステップＳ１３０４）、ＰＥリード転送をスタートするか否か判断する（ステップＳ１３０５）。そして、ＰＥリード転送をスタートしない場合（ステップＳ１３０５否定）は、ＰＥリード転送がスタートするまで待機する。
【０１５９】
一方、ＰＥリード転送をスタートする場合（ステップＳ１３０５肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ１３０６）、ＲＡＭ４０９に入力する。この制御信号により、ＲＡＭ４０９に記憶されている画像データが読み出され、プロセッサーエレメント５００への転送される（Ｓ１３０７）。
【０１６０】
つぎに、メモリー・コントローラー１１０７は、ステップＳ１３０７でなされた画像データの転送が、ランダムアクセスモードでなされたものか否か判断する（ステップＳ１３０８）。そして、画像データが自動アクセスモードで転送されたと判断すると（ステップＳ１３０８否定）、このアクセスが重複読出しモードでなされたか否か判断する（ステップＳ１３０９）。
【０１６１】
そして、重複読出しモードの設定がなされていない場合（ステップＳ１３０９否定）は、コントロール・レジスター１１０３に設定されたコントロール・レジスター値を、アドレス更新方向で設定された方向にアドレス更新量で設定された量だけ更新する（ステップＳ１３１１）。
【０１６２】
また、ステップＳ１３０９の判断の結果、重複読出しモードが設定されている場合（ステップＳ１３０９肯定）は、重複読出し要求がなされたか否か判断する（ステップＳ１３１０）。この重複読出し要求の有無の判断は、重複読出し制御信号の入力の有無によっておこなわれる。
【０１６３】
そして、重複読出し要求がなかった場合（ステップＳ１３１０否定）は、コントロール・レジスター１１０３に設定されたコントロール・レジスター値を更新する（ステップＳ１３１１）。以上の処理の後、または重複読出し要求があった場合（ステップＳ１３１０肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１３２０）。
【０１６４】
この判断の結果、転送が終了していない場合（ステップＳ１３２０否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ１３０２）。また、転送が終了した場合（ステップＳ１３２０肯定）は、画像データ転送制御の処理を終了する。
【０１６５】
また、ステップＳ１３０３の判断で、ＰＥ転送制御コマンドがＰＥリード転送モードのものでないと判断された場合（ステップＳ１３０３否定）は、ＰＥ転送制御コマンドがＰＥライト・リード転送モードのものであると判断する。そして、ＰＥライト・リード転送スタート要求を読み取り（ステップＳ１３１２）、ＰＥリード転送をスタートするか否か判断する（ステップＳ１３１３）。この結果、ＰＥリード転送をスタートしない合には（ステップＳ１３１３否定）は、ＰＥリード転送がスタートするまで待機する（ステップＳ１３１２）。
【０１６６】
一方、ＰＥライト・リード転送をスタートする場合（ステップＳ１３１３肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ１３１４）、プロセッサーエレメント５００に入力する。この制御信号により、プロセッサーエレメント５００がＲＡＭ４０９にアクセスし、画像データがＲＡＭ４０９に転送される（Ｓ１３１５）。
【０１６７】
つぎに、メモリー・コントローラー１１０７は、ステップＳ１３１５の画像データ転送がランダムアクセスモードでなされたものか否か判断する（ステップＳ１３１６）。そして、画像データが画像データが自動アクセスモードで転送されたと判断すると（ステップＳ１３１６否定）、このアクセスが重複読出しモードでなされるか否か判断する（ステップＳ１３１７）。そして、重複読出しモードの設定がなされていない場合（ステップＳ１３１７否定）は、コントロール・レジスター１１０３に設定されたコントロール・レジスター値を更新する（ステップＳ１３１９）。
【０１６８】
また、ステップＳ１３１７の判断の結果、重複読出しモードが設定されている場合（ステップＳ１３１７肯定）は、重複読出し制御信号入力の有無によって重複読出し要求がなされたか否か判断する（ステップＳ１３１８）。そして、重複読出しモードの設定がなされていない場合（ステップＳ１３１８否定）は、コントロール・レジスター１１０３に設定されたコントロール・レジスター値を、アドレス更新方向で設定された方向に、アドレス更新量で設定された量だけ更新する（ステップＳ１３１９）。
【０１６９】
以上の処理の後、または重複読出し要求があった場合（ステップＳ１３１８肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１３２０）。この判断の結果、転送が終了していない場合（ステップＳ１３２０否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ１３０２）。また、転送が終了した場合（ステップＳ１３２０肯定）は、画像データ転送制御の処理を終了する。
【０１７０】
以上述べた実施の形態３によれば、連続してＲＡＭ４０９にアクセスするように設定されたプロセッサーエレメントが同じ画像データを処理する場合、同一のＲＡＭ４０９に保存された画像データを処理することになる。このため、同一の画像データを記憶するＲＡＭ４０９を複数設ける必要がなくなり、画像処理装置のＲＡＭ４０９の個数を抑えることができる。
【０１７１】
〔実施の形態４〕
つぎに、実施の形態４の画像処理装置による、ＲＡＭ４０９とＳＩＭＤ型演算処理部４０１との間でおこなわれる画像データの転送を制御について説明する。実施の形態４の画像処理装置は、コントロール・レジスターが、外部から与えられる制御信号にしたがってＳＩＭＤ型演算処理部４０１から画像データを間引いて読み出すとともにＲＡＭ４０９に転送する、間引き読出し転送モードを設定するものである。
【０１７２】
図１４は、実施の形態４の画像データ転送制御を説明するための模式的な図である。なお、図１４に示した構成は、コントロール・レジスター、メモリー・コントローラー以外の構成については図６、図９、図１１に示したものと同様に構成されている。このため、図１４に示した構成について、図６、図９、図１１に示した構成と同様のものについては同様の符号を付して説明を一部省略するものとする。
【０１７３】
図示するように、実施の形態４のメモリー・コントローラー１４０７は、コントロール・レジスター１４０３と接続している。コントロール・レジスター１４０３には、コントロール・レジスター６０３と同様に、ライトアドレス、ライトワード数、ライトオフセット、最終アドレス、リードアドレス、リードワード数を設定するレジスターがある。また、実施の形態４のコントロール・レジスター１４０３は、さらに間引き書き込みモード、間引き書き込みにおけるアドレスの更新方向および更新量を設定するレジスターを有している。
【０１７４】
コントロール・レジスター１４０３では、メモリー・コントローラー１４０７のＰＥ転送制御コマンドを作成し、メモリー・コントローラー１４０７に出力する。さらに、間引き書き込みモード、間引き書き込み時のアドレスの更新方向（図中アドレス更新方向と記す）および更新量（図中アドレス更新量と記す）に関する制御コマンドを、ＰＥ転送制御コマンドとともにメモリー・コントローラー１４０７に出力する。また、メモリー・コントローラー１４０７には、外部（たとえばプロセス・コントローラー２１１）から間引き書き込みのタイミングを指示する間引き書き込み制御信号が入力する。
【０１７５】
メモリー・コントローラー１４０７は、ＰＥ転送制御コマンドおよび間引き書き込みモード、間引き書き込みのアドレスの更新方向および更新量に関する制御コマンドに応じて制御信号を生成する。そして、この制御信号とともに、間引き書き込み動作に必要なアドレスをメモリー・スイッチ４０５ａを介してＲＡＭ４０９に入力する。この結果、ＲＡＭ４０９は、制御信号にしたがってＳＩＭＤ型演算処理部４０１にあるプロセッサーエレメント５００と、間引き書き込みモードによって画像データ（太線で示す）を授受する。
【０１７６】
ここで、間引き書き込みモードによる実施の形態４の画像データ転送制御の動作について説明する。図１５は、間引き書き込みのための動作をより詳細に説明する図である。図１５には、ＳＩＭＤ型演算処理部４０１に接続されるＲＡＭ４０９の各々を、０，１，２，３・・・に区別して示す。
【０１７７】
また、ＳＩＭＤ型演算処理部４０１内部のプロセッサーエレメント５００の各々を、０，１，２，３・・・として区別して示す。図１５に０，１，２，３・・・で示されたプロセッサーエレメント５００では、各々画像データＡ、画像データＢ、画像データＣ、画像データＤ、画像データＥ、画像データＦ、画像データＧ、画像データＨが処理される。
【０１７８】
さらに、区別されたプロセッサーエレメントの各々に対して与えられる間引き書き込み制御信号を、「０」，「１」に区別して示す。なお、この「０」は間引き書き込みをおこなわないことを、「１」は間引き書き込みをおこなうことをそれぞれ示している。
【０１７９】
プロセッサーエレメント０がＲＡＭ４０９にアクセスし、画像データを転送して書き込む場合、この転送にあたってプロセッサーエレメント０のアドレス（番号０で表されるものであっても良い）が論理回路１５０１に出力される。また、これと併せて、一つ目の間引き書き込み制御信号「０」が論理回路１５０１に出力される。論理回路１５０１は、プロセッサーエレメント０のアドレスと「０」の間引き書込み信号とをＲＡＭ０に出力する。
【０１８０】
ＲＡＭ０には、入力したアドレスに対応するプロセッサーエレメント０のアクセスによって画像データＡが転送される。このとき、信号「０」により間引き書き込みはおこなわれず、転送された画像データＡは、ＲＡＭ０に書き込まれる（図１５に示したＲＡＭ０にＡとして記す）。
【０１８１】
つぎに、プロセッサーエレメント１のアドレスと間引き書き込み制御信号「１」とが、論理回路１５０１に入力する。このとき、論理回路１５０１は、間引き書き込み制御信号「１」によってプロセッサーエレメント１の画像データＢの転送をおこなわない。したが、プロセッサーエレメント１にあった画像データＢは、いずれのＲＡＭにも書き込まれることなく間引かれる。
【０１８２】
つぎに、プロセッサーエレメント２のアドレスと間引き書き込み制御信号「０」とが、論理回路１５０１に入力する。このとき、間引き書き込み制御信号が「０」であることから、プロセッサーエレメント２の画像データＣが、ＲＡＭ１に転送される。
【０１８３】
以上のようにして、順次プロセッサーエレメントがＲＡＭにアクセスし、処理した画像データを転送する。このような処理を図示した間引き書き込み制御信号にしたがって実行すると、ＲＡＭ０、ＲＡＭ１、ＲＡＭ２、ＲＡＭ３には、画像データＡ、画像データＣ、画像データＥ、画像データＧが書き込まれる。
【０１８４】
以上説明した実施の形態４の処理を、図１６のフローチャートを用いて説明する。なお、図１６のフローチャートは、画像データ転送モードがＰＥライト転送モード、あるいはＰＥライト・リード転送モードのいずれかである場合になされる処理を説明するものである。
【０１８５】
図１６のように、ＣＰＵ６０１は、コントロール・レジスター１４０３のレジスターにコントロール・レジスター値を設定する（ステップＳ１６０１）。コントロール・レジスター１４０３は、このコントロール・レジスター値に応じてＰＥ転送制御コマンド、ランダムアクセスモード、自動アクセスモード、さらには間引き書き込みしモードに関する制御コマンドをメモリー・コントローラー１１０３に入力する。
【０１８６】
メモリー・コントローラー１４０７は、このような制御コマンドのうち、ＰＥ転送制御コマンドを読み取り（ステップＳ１６０２）、ＰＥ転送制御コマンドがライト転送モードを示すものか否か判断する（ステップＳ１６０３）。
【０１８７】
ステップＳ１６０３の判断で、ＰＥ転送制御コマンドがＰＥライト転送モードのものであると判断された場合（ステップＳ１６０３肯定）は、ＰＥライト転送スタート要求を読み取り（ステップＳ１６０４）、ＰＥライト転送をスタートするか否か判断する（ステップＳ１６０５）。そして、ＰＥライト転送をスタートしない場合（ステップＳ１６０５否定）は、ＰＥライト転送がスタートするまで待機する。
【０１８８】
一方、ＰＥライト転送をスタートする場合（ステップＳ１６０５肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ１６０６）、プロセッサーエレメント５００に入力する。この制御信号により、プロセッサーエレメント５００がＲＡＭ４０９にアクセスし、ＲＡＭ４０９へ画像データを転送する（Ｓ１６０７）。
【０１８９】
つぎに、メモリー・コントローラー１４０７は、ステップＳ１６０７でなされた画像データの転送が、ランダムアクセスモードでなされたか否か判断する（ステップＳ１６０８）。そして、ステップＳ１６０８で画像データが自動アクセスモードで転送されたと判断すると（ステップＳ１６０８否定）、このアクセスが間引き書き込みモードでなされたか否か判断する（ステップＳ１６０９）。
【０１９０】
この判断の結果、間引き書き込みモードの設定がなされていない場合（ステップＳ１６０９否定）は、コントロール・レジスター１４０３に設定されたコントロール・レジスター値を更新する（ステップＳ１６１１）。なお、この更新は、アドレス更新方向で設定された方向に、アドレス更新量で設定された量だけおこなわれる。
【０１９１】
また、ステップＳ１６０９の判断の結果、間引き書き込みモードが設定されている場合（ステップＳ１６０９肯定）は、間引き書き込み要求がなされたか否か判断する（ステップＳ１６１０）。この間引き書き込み要求の有無の判断は、間引き書き込み制御信号の入力の有無によっておこなわれる。
【０１９２】
そして、間引き書き込み要求がなされていない場合（ステップＳ１６１０否定）は、コントロール・レジスター値を更新する（ステップＳ１６１１）。以上の処理の後、または間引き書き込み要求があった場合（ステップＳ１６１０肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１６２０）。
【０１９３】
この判断の結果、転送が終了していない場合（ステップＳ１６２０否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ１６０２）。また、転送が終了した場合（ステップＳ１６２０肯定）は、画像データ転送制御の処理を終了する。
【０１９４】
また、ステップＳ１６０３の判断で、ＰＥ転送制御コマンドがＰＥライト転送モードのものでないと判断された場合（ステップＳ１６０３否定）は、ＰＥ転送制御コマンドがＰＥライト・リード転送モードのものであると判断する。そして、ＰＥライト・リード転送スタート要求を読み取り（ステップＳ１６１２）、ＰＥライト転送をスタートするか否か判断する（ステップＳ１６１３）。この結果、ＰＥライト転送をスタートしない場合（ステップＳ１６１３否定）は、ＰＥライト転送がスタートするまで待機する（ステップＳ１６１２）。
【０１９５】
一方、ＰＥライト・リード転送をスタートする場合（ステップＳ１６１３肯定）は、メモリー・コントローラーＢ４０７ｂが制御信号を生成し（ステップＳ１６１４）、プロセッサーエレメント５００に入力する。この制御信号により、プロセッサーエレメント５００がＲＡＭ４０９にアクセスし、画像データがＲＡＭ４０９に転送される（Ｓ１６１５）。
【０１９６】
メモリー・コントローラー１４０７は、ステップＳ１６１５の画像データの転送が、ランダムアクセスモードでなされたか否か判断する（ステップＳ１６１６）。そして、ステップＳ１６１８で画像データが自動アクセスモードで転送されたと判断すると（ステップＳ１６１６否定）、このアクセスが間引き書き込みモードでなされたか否か判断する（ステップＳ１６１７）。この判断の結果、間引き書き込みモードの設定がなされていない場合（ステップＳ１６１７否定）は、コントロール・レジスター値を更新する（ステップＳ１６１９）。
【０１９７】
また、ステップＳ１６１７の判断の結果、間引き書き込みモードが設定されている場合（ステップＳ１６１７肯定）は、間引き書き込み制御信号入力の有無によって今回のアクセスに間引き書き込み要求がなされたか否か判断する（ステップＳ１６１８）。
【０１９８】
そして、間引き書き込み要求がない場合（ステップＳ１６１８否定）は、コントロール・レジスター１４０３に設定されたコントロール・レジスター値を更新する（ステップＳ１６１９）。以上の処理の後、または間引き書き込み要求があった場合（ステップＳ１６１８肯定）は、画像データ転送が終了したか否かが判断される（ステップＳ１６２０）。
【０１９９】
この判断の結果、転送が終了していない場合（ステップＳ１６２０否定）は、再びメモリー・コントローラーＢ４０７ｂから制御信号を読み取る処理に戻る（ステップＳ１６０２）。また、転送が終了した場合（ステップＳ１６２０肯定）は、画像データ転送制御の処理を終了する。
【０２００】
以上述べた実施の形態４によれば、ＲＡＭ４０９への書き込みが不要な画像データに対してＲＡＭ４０９への転送を防ぐことができ、ＲＡＭ４０９に必要な画像データだけを保存することができる。このため、画像処理装置に備えられるＲＡＭ４０９の個数を低減する、あるいは、画像処理装置のＲＡＭ４０９を有効に利用することができる。
【０２０１】
なお、本実施の形態で説明した画像処理方法は、あらかじめ用意されたプログラムをパーソナルコンピューターやワークステーション等のコンピュータで実行することにより実現される。このプログラムは、ハードディスク、フロッピーディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、上記記録媒体を介して、また伝送媒体として、インターネット等のネットワークを介して配布することができる。
【０２０２】
【発明の効果】
以上説明したように、請求項１に記載の発明によれば、メモリーに対する書き込み、読み出し動作を制御し、画像処理に応じてメモリーに対する書き込み、読み出し処理を最適化することによって画像処理を効率化できる画像処理装置を得ることができるという効果を奏する。また、このような効果は、同一の処理を複数の異なる画像データに対して同時におこない得るＳＩＭＤ型の演算処理部において特に顕著になる。
【０２０３】
また、請求項２に記載の発明によれば、比較的簡易な構成によってこの発明の画像処理装置が実現でき、比較的簡易な構成で、かつ画像データの転送制御機能を付加することによる画像処理装置の高コスト化を避けることができる画像処理装置を得ることができるという効果を奏する。
【０２０４】
また、請求項３に記載の発明によれば、画像処理に応じてメモリーに対する書き込み、読み出し処理を最適化することができる画像処理装置を得ることができるという効果を奏する。
【０２０５】
また、請求項４に記載の発明によれば、メモリーに対して連続してアクセスする演算処理部に同一の画像データを処理させる場合、この画像データを記憶するメモリー数を最小限にすることができる。このため、メモリーが比較的小型できる、あるいはメモリーをより効率的に活用することができる画像処理装置を得ることができるという効果を奏する。
【０２０６】
また、請求項５に記載の発明によれば、処理が不必要な画像データを、メモリーに転送しないようにすることができる。このため、メモリーを小型化できる、あるいはより効率的にメモリーを活用することができる画像処理装置を得ることができるという効果を奏する。
【０２０７】
また、請求項６に記載の発明によれば、比較的簡易な処理によってこの発明の画像処理方法が実現でき、比較的簡易な構成で、かつ画像データの転送制御機能を付加することによる画像処理の高コスト化を避けることができる画像処理方法を得ることができるという効果を奏する。
【０２０８】
また、請求項７に記載の発明によれば、比較的簡易な処理によってこの発明の画像処理方法が実現でき、画像データの転送制御機能を付加することによる画像処理装置の高コスト化を避けることができる画像処理方法を得ることができるという効果を奏する。
【０２０９】
また、請求項８に記載の発明によれば、画像処理に応じてメモリーに対する書き込み、読み出し処理を最適化することができる画像処理方法を得ることができるという効果を奏する。
【０２１０】
また、請求項９に記載の発明によれば、メモリーに対して連続してアクセスする演算処理部に同一の画像データを処理させる場合、この画像データを記憶するメモリー数を最小限にすることができる。このため、画像処理装置のメモリーが比較的小型で良い、あるいはメモリーをより効率的に活用することができる画像処理方法を得ることができるという効果を奏する。
【０２１１】
また、請求項１０に記載の発明によれば、処理が不必要な画像データを、メモリーに転送しないようにすることができる。このため、メモリーを小型化できる、あるいはより効率的にメモリーを活用することができる画像処理方法を得ることができるという効果を奏する。
【０２１２】
また、請求項１１に記載の発明にかかる記憶媒体は、請求項６〜１０のいずれか一つに記載された方法をコンピュータに実行させるプログラムを記録したことで、そのプログラムが機械読み取り可能となり、これによって、請求項６〜１０のいずれか一つの動作をコンピュータによって実現することができるという効果を奏する。
【図面の簡単な説明】
【図１】この発明の実施の形態にかかる画像処理装置の構成を機能的に示すブロック図である。
【図２】本実施の形態にかかる画像処理装置のハードウエア構成の一例を示すブロック図である。
【図３】本実施の形態にかかる画像処理装置の画像処理プロセッサーのハードウエア構成の一例を示すブロック図である。
【図４】本実施の形態にかかる画像処理プロセッサーの構成をより詳細に示す説明図である。
【図５】本実施の形態にかかる画像処理装置に用いられるＳＩＭＤ型プロセッサーの概略構成を示す説明図である。
【図６】実施の形態１の画像データ転送制御を説明するための模式的な図である
【図７】この発明の実施の形態で共通の画像データ転送制御の概略を説明するためのフローチャートである。
【図８】実施の形態１の画像データ転送制御を説明するためのフローチャートである。
【図９】実施の形態２の画像データ転送制御を説明するための模式的な図である。
【図１０】実施の形態２の画像データ転送制御を説明するためのフローチャートである。
【図１１】実施の形態３の画像データ転送制御を説明するための模式的な図である。
【図１２】実施の形態３の画像データ転送制御をより具体的に説明するための図である。
【図１３】実施の形態３の画像データ転送制御を説明するためのフローチャートである。
【図１４】実施の形態４の画像データ転送制御を説明するための模式的な図である。
【図１５】実施の形態４の画像データ転送制御をより具体的に説明するための図である。
【図１６】実施の形態４の画像データ転送制御を説明するためのフローチャートである。
【符号の説明】
１００  画像データ制御ユニット
１０１  画像読取ユニット
１０２  画像メモリー制御ユニット
１０３  画像処理ユニット
１０４  画像書込ユニット
２０１  読取ユニット
２０２  センサー・ボード・ユニット
２０３  画像データ制御部
２０４  画像処理プロセッサー
２０５  ビデオ・データ制御部
２０６  作像ユニット
２１０  シリアルバス
２１１  プロセス・コントローラー
２２０  パラレルバス
２２１  画像メモリー・アクセス制御部
２２２  メモリー・モジュール
２２４  ファクシミリ制御ユニット
２２５  公衆回線
２３１  システム・コントローラー
２３４  操作パネル
３０１  第１入力Ｉ／Ｆ
３０２  スキャナー画像処理部
３０３  第１出力Ｉ／Ｆ
３０４  第２入力Ｉ／Ｆ
３０５  画質処理部
３０７  コマンド制御部
３０６  第２出力Ｉ／Ｆ
４０２  データ入出力用バス
４０１  ＳＩＭＤ型演算処理部
４０３ａ，４０３ｂ  バススイッチ
４０５ａ，４０５ｂ  メモリー・スイッチ
４０７ａ，４０７ｂ  メモリー・コントローラーＡ、メモリー・コントローラーＢ
５００  プロセッサーエレメント
５０１  レジスター
５０２  マルチプレクサー
５０４  論理演算器
５０５  アキュムレーター
５０６  テンポラリー・レジスター
６０３，９０３，１１０３，１４０３  コントロール・レジスター
９０７，１１０７，１４０７  メモリー・コントローラー
１２０１，１５０１  論理回路
【図１】
0003922859.tif 000002
【図２】
0003922859.tif 000003
【図３】
0003922859.tif 000004
【図４】
0003922859.tif 000005
【図５】
0003922859.tif 000006
【図６】
0003922859.tif 000007
【図７】
0003922859.tif 000008
【図８】
0003922859.tif 000009
【図９】
0003922859.tif 000010
【図１０】
0003922859.tif 000011
【図１１】
0003922859.tif 000012
【図１２】
0003922859.tif 000013
【図１３】
0003922859.tif 000014
【図１４】
0003922859.tif 000015
【図１５】
0003922859.tif 000016
【図１６】
0003922859.tif 000017