(57)【要約】【課題】本発明は、高速シリアルバスへの優先順位に基づくアクセス制御を効率的かつ適切に行う。【解決手段】画像処理装置１は、ＰＣＩｅ８、９等の要求コマンドとそれに対する応答とが分離されている高速シリアルバスにおいて、インタフェースであるＰＣＩｅエンドコントローラ２８やＰＣＩｅルートコントローラ２１へのアクセス要求の調停を行うアービタ２５に対して、優先順位の高いビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄが、画像データのライン単位で集中してメモリアクセス要求信号VOUT_REQａ、VOUT_REQｂ、VOUT_REQｃ、VOUT_REQｄを発行する。【選択図】          図２
2012027751.tif 000002
【特許請求の範囲】
【請求項１】
高速シリアルバスへの画像データの転送アクセス要求を行うとともに優先順位の付与されている複数のアクセス要求手段と、
前記アクセス要求手段からのアクセス要求を調停するアービタと、
前記アクセス要求手段のうち転送レートの最悪値を保証する必要のある要保証アクセス要求手段に対して高い優先順位を付与するとともに、該要保証アクセス要求手段からデータのライン単位で集中的にアクセス要求を発行させるアクセス制御手段と、
を備えていることを特徴とするデータ転送装置。
【請求項２】
前記データ転送装置は、
アクセス要求に対して許可を与えるまでの待ち時間を設定する待ち時間設定手段と、
前記待ち時間を計時する計時手段と、
を備え、
前記アクセス制御手段は、
前記要保証アクセス要求手段よりも優先順位の低い特定のアクセス要求手段からのアクセス要求が連続して不許可となっている時間を前記計時手段が計時して、該計時時間が前記待ち時間になると、該特定アクセス要求手段に対して、優先的にアクセスを許可することを特徴とするデータ転送装置。
【請求項３】
前記データ転送装置は、
前記要保証アクセス要求手段よりも優先順位の低い特定のアクセス要求手段に対して前記アービタが優先的にアクセス許可を与える周期を設定する周期設定手段を備え、
前記アクセス制御手段は、
前記周期設定手段で設定された周期が経過する毎に、特定の前記アクセス要求手段に対して優先的にアクセス許可を与えることを特徴とする請求項１または請求項２記載のデータ転送装置。
【請求項４】
前記アービタは、１つの前記アクセス要求手段を、複数のアクセス要求手段として取り扱いが可能であり、前記要保証アクセス要求手段からのアクセス要求に対して、該複数倍の頻度でアクセス許可を与えることを特徴とする請求項１から請求項３のいずれかに記載のデータ転送装置。
【請求項５】
前記アービタは、前記要保証アクセス要求手段の要求転送レートの比率が２以上であるときに、該要保証アクセス要求手段を複数のアクセス要求手段として取り扱って、該要保証アクセス要求手段からのアクセス要求に対して、該複数倍の頻度でアクセス許可を与えることを特徴とする請求項４記載のデータ転送装置。
【請求項６】
画像データをデータ転送部で転送して、該画像データに基づいて画像形成する画像形成装置において、
前記データ転送部として、請求項１から請求項５のいずれかに記載のデータ転送装置が搭載されていることを特徴とする画像形成装置。
【請求項７】
高速シリアルバスへの画像データの転送アクセス要求を行うとともに優先順位の付与されている複数のアクセス要求処理ステップと、
前記アクセス要求処理ステップからのアクセス要求を調停する調停処理ステップと、
前記アクセス要求処理ステップのうち転送レートの最悪値を保証する必要のある要保証アクセス要求処理ステップに対して高い優先順位を付与するとともに、該要保証アクセス要求処理ステップからデータのライン単位で集中的にアクセス要求を発行させるアクセス制御処理ステップと、
を有していることを特徴とするデータ転送方法。
【請求項８】
コンピュータに、
高速シリアルバスへの画像データの転送アクセス要求を行うとともに優先順位の付与されている複数のアクセス要求処理と、
前記アクセス要求処理からのアクセス要求を調停する調停処理と、
前記アクセス要求処理のうち転送レートの最悪値を保証する必要のある要保証アクセス要求処理に対して高い優先順位を付与するとともに、該要保証アクセス要求処理からデータのライン単位で集中的にアクセス要求を発行させるアクセス制御処理と、
を実行させることを特徴とするデータ転送プログラム。
【請求項９】
請求項８記載のデータ転送プログラムを記録したことを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送装置、画像形成装置、データ転送制御方法、データ転送制御プログラム及び記録媒体に関し、詳細には、高速シリアルバスへの優先順位に基づくアクセス制御を効率的かつ適切に行うデータ転送装置、画像形成装置、データ転送制御方法、データ転送制御プログラム及び記録媒体に関する。
【背景技術】
【０００２】
複写装置、複合装置、スキャナ装置、ファクシミリ装置等の画像処理装置においては、データ（画像データ等）を高速かつ適切に転送することが重要であり、例えば、スキャナ部で読み取られた画像データ、外部記憶部（例えば、ハードディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）、ＤＶＤ（Digital Video Disk）、ＳＤ（Secure Digital）カード等）から読み取られた画像データ等の入力画像データに対して各種画像処理を施して、一旦ＲＡＭ（Random Access Memory）やハードディスク等の一時保管メモリに保管し、該一時保管メモリに保管した画像データを再度必要な画像処理（スキャナγ補正、フィルタ処理、地肌除去、色補正、プリンタγ補正、中間調処理等）を施して、プリンタ部に送って記録出力に供したり、ネットワークを介してコンピュータ等に転送したり、ファクシミリ送信に供する等の各種出力処理を行う。
【０００３】
そして、近年、複合装置、プリンタ等の画像処理装置においては、ＡＳＩＣ（Application Specific Integrated Circuit）等の画像処理用チップとメモリとの間のデータ転送等において、高速データ転送を実現するために、要求と応答が分離され、応答を待たずに次の要求を発行できる高速な転送を行うスプリットトランザクションのバスであるＰＣＩ（Peripheral Component Interconnect） Express（以下、ＰＣＩｅという。）が用いられるようになってきている。また、ＰＣＩｅにおいいては、上述のように、要求コマンドと、該要求コマンドに対する応答とが分離されていいて、要求コマンドに対する応答を待つことなく、次々と要求コマンドを発行できるため、バスの利用効率を向上させることができるが、転送レートの最悪値を保証する必要のある要求源（例えば、ビデオ出力データの入出力のＤＭＡＣ（Direct Memory Access Controller ：ＤＭＡコントローラ）等のように、単位時間当たりの転送量を所定量以上に維持することができないと、異常画像が発生してしまう要求源）に対して、その保証値を高くすることができない。
【０００４】
すなわち、ＰＣＩｅにおいては、上述のように、要求コマンドに対する応答を待つことなく、次々と要求コマンドを発行（以下、先投げという。）することができるが、この特性を有効に利用するために、要求コマンドを保持するためのバッファ（キュー）を持って、発行された要求コマンドを、このキューに一時的に蓄える構成を有しており、高い要求コマンド発行レートを達成できるようになっている。
【０００５】
そして、ＰＣＩｅの規格によれば、シリアルバス（高速シリアルバス）を仮想チャネル（Virtual Channel）単位で時分割に使い分けることで複数トラフィックのパケットデータを伝送する仮想チャネル機能と、仮想チャネル毎にパケットデータを発行する優先度を調停するアービトレーション機能とを有しており、シリアルバスを用いてデータ転送の優先度が異なる複数トラフィックのパケットデータを同時転送させたい場合に、転送レートの調整が可能となっている。より詳細には、ＰＣＩｅ規格の仮想チャネルのアービトレーションにおけるアルゴリズムでは、仮想チャネルＶＣ毎に均等な頻度でパケットデータを発行させるラウンドロビン（Round Robin）方式、仮想チャネル毎に任意に指定可能なテーブルに従った重み付けされた頻度でパケットデータを発行させるウエイテッドラウンドロビン（Weighted Round Robin）方式、仮想チャネルＶＣ毎に固定の優先順でパケットデータを発行させるストリクト（Strict）方式があり、シリアルバス上に転送するパケットを、トランザクション単位で優先度の調整が可能である。
【０００６】
ところが、要求コマンド発行レートが高いことが、転送レートの最悪値を保証する必要のある要求源に対して高い保証値を確保できることを意味するものではない。すなわち、一般的に、ＰＣＩｅにおいては、先投げした要求コマンドに対して、その応答結果を受け取るための小容量のバッファ・メモリのみを持ち、そのバッファ・メモリの容量範囲内で、先投げを行っている。したがって、先投げの最大値に達すると、継続して要求を発行したくても、発行することができないという状態が発生し、この状態においては、転送レートの最悪値を保証する必要のある要求源がない状態で、アービトレーションを行うこととなる。その結果、転送レートの最悪値を保証する必要のある要求源を、アービタの高い優先順位に設定しても、下位優先順位の要求源からの要求が次々と許可されて、要求が発行され、転送レートの最悪値を保証する必要のある要求源が、先に発行した要求の応答を受けて、継続して要求を発行する時点では、先行して許可された下位優先順位要求源の要求が複数許可されて、キューに蓄えられた状態となっている。したがって、転送レートの最悪値を保証する必要のある要求源からの要求は、これらの下位優先順位の要求が実行されるのを待って、実行されることとなり、転送レートの保証値を低く設定する必要があった。また、仮に、先投げの個数を増大させることができたとしても、高優先順位の要求源にパスが独占されてしまい、低優先順位の要求源からの要求の実行が、長時間待たされてしまうという結果となるため、先投げの個数を増大させることができなかった。
【０００７】
そして、従来、トランザクション層の送信バッファが介在している場合であっても、アービタの設定と実際のトラフィックにおけるプライオリティの整合性を維持しつつ、優先度の調停を行う技術が提案されている（特許文献１参照）。この従来技術は、具体的には、複数のデータをアービタでアービトレーションテーブルに従って調停してシリアルバスに出力するデータ転送回路において、シリアル通信路を伝送されるパケットデータ量に基づいてトラフィックの統計情報を生成し、この生成されたトラフィックの統計情報に基づいてアービトレーションテーブルの重み情報を更新することで、優先度の調停を行っている。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記公報記載の従来技術にあっては、実際のパケットデータの統計情報を用いてアービタの優先度調停を行っているため、その精度が未知であり、転送レートの最悪値を保証する必要のある要求源に対して、保証値の設定を高く設定できるようにする上で、改良の必要があった。
【０００９】
そこで、本発明は、高速シリアルバスの転送レートの最悪値を保証する必要のあるアクセス要求手段に対して、その保証値を高く設定することのできるデータ転送装置、画像形成装置、データ転送制御方法、データ転送制御プログラム及び記録媒体を提供することを目的としている。
【課題を解決するための手段】
【００１０】
本発明は、上記目的を達成するために、高速シリアルバスへの画像データの転送アクセス要求を行うとともに優先順位の付与されている複数のアクセス要求手段からのアクセス要求を調停するアービタで調整する場合に、前記アクセス要求手段のうち転送レートの最悪値を保証する必要のある要保証アクセス要求手段に対して高い優先順位を付与するとともに、該要保証アクセス要求手段からデータのライン単位で集中的にアクセス要求を発行させることを特徴としている。
【００１１】
また、本発明は、前記要保証アクセス要求手段よりも優先順位の低い特定のアクセス要求手段からのアクセス要求が連続して不許可となっている時間を計時して、該計時時間が所定の待ち時間になると、該特定アクセス要求手段に対して、優先的にアクセスを許可することを特徴としてもよい。
【００１２】
さらに、本発明は、前記要保証アクセス要求手段よりも優先順位の低い特定のアクセス要求手段に対して前記アービタが優先的にアクセス許可を与える周期を設定して、該周期が経過する毎に、特定の前記アクセス要求手段に対して優先的にアクセス許可を与えることを特徴としてもよい。
【００１３】
また、本発明は、前記アービタが、１つの前記アクセス要求手段を、複数のアクセス要求手段として取り扱いが可能であり、前記要保証アクセス要求手段からのアクセス要求に対して、該複数倍の頻度でアクセス許可を与えることを特徴としてもよい。
【００１４】
さらに、本発明は、前記アービタは、前記要保証アクセス要求手段の要求転送レートの比率が２以上であるときに、該要保証アクセス要求手段を複数のアクセス要求手段として取り扱って、該要保証アクセス要求手段からのアクセス要求に対して、該複数倍の頻度でアクセス許可を与えることを特徴としてもよい。
【発明の効果】
【００１５】
本発明によれば、高速シリアルバスの転送レートの最悪値を保証する必要のあるアクセス要求手段に対して、その保証値を高く設定することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施例を適用した画像処理装置の要部ブロック構成図。
【図２】コントローラＡＳＩＣのブロック構成図。
【図３】アービタにおける各信号のタイミング図。
【発明を実施するための形態】
【００１７】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるので、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明によって不当に限定されるものではなく、また、本実施の形態で説明される構成の全てが本発明の必須の構成要件ではない。
【実施例１】
【００１８】
図１〜図３は、本発明のデータ転送装置、画像形成装置、データ転送制御方法、データ転送制御プログラム及び記録媒体の一実施例を示す図であり、図１は、本発明のデータ転送装置、画像形成装置、データ転送制御方法、データ転送制御プログラム及び記録媒体の一実施例を適用した画像処理装置１のブロック構成図である。
【００１９】
図１において、画像処理装置１は、スキャナ２、プロッタ３、エンジンＡＳＩＣ４、コントローラＡＳＩＣ（ＣＴＬ  ＡＳＩＣ）５、ＣＰＵ（Central Processing Unit ）６及びメモリ７等を備えているとともに、図示しないが、画像処理装置１の各種動作を行わせるのに必要な命令を入力すると共に画像処理装置１からの各種情報を表示する操作表示部、ネットワーク等で接続されている相手端末との間でデータの授受を行うネットワーク部等を備えており、複写装置、複合装置等である。なお、操作表示部は、画像処理装置１を操作するのに必要な各種キーを備えるとともに、ディスプレイ（例えば、液晶ディスプレイ）やＬＥＤ（Light Emitting Diode）等のランプを備え、操作キーからは、画像処理装置１を利用した複写処理に必要な各種操作が行われ、ディスプレイには、操作キーから入力された命令内容や画像処理装置１からオペレータに通知する各種情報が表示される。
【００２０】
エンジンＡＳＩＣ４とコントローラＡＳＩＣ及びコントローラＡＳＩＣとＣＰＵ６とは、それぞれ要求コマンドと応答が分離されていて、応答を待たずに次の要求を発行できる高速な転送を行うスプリットトランザクションのバス（高速シリアルバス）であるＰＣＩｅ８、９が用いられ、ＣＰＵ６とメモリ７とは、ＳＳＴＬ（Stab Series Terminated Logic）１０によって接続されている。
【００２１】
スキャナ２は、例えば、ＣＣＤ（Charge Coupled Device ）、ＣＭＯＳ（Complementary Metal Oxide Semiconductor ）、ＣＩＳ（Contact Image Sensor：密着イメージセンサ）を利用したイメージスキャナ等が利用されており、原稿を走査して、原稿の画像を所定の解像度で読み取る。スキャナ２は、通常、原稿センサ（図示略）が配設されており、原稿の読取時、原稿センサにより、セットされた原稿のサイズや原稿のセット方向（縦方向や横方向）を検出して、コントローラＡＳＩＣ５に出力する。なお、この原稿サイズとセット方向の検出は、原稿センサを用いるものに限るものではなく、例えば、スキャナ２で原稿の前走査等を行うことにより検出するようにしてもよい。
【００２２】
プロッタ３は、例えば、サーマル素子を利用したサーマル記録装置あるいは電子写真式記録装置等が使用されており、スキャナ２で読み取られた原稿の画像を記録紙に記録出力する。
【００２３】
エンジンＡＳＩＣ４は、コントローラＡＳＩＣ５と連携して、エンジンＡＳＩＣ４からコントローラＡＳＩＣ５へのデータ転送及びコントローラＡＳＩＣ５からエンジンＡＳＩＣ４へのデータ転送を行うとともに、スキャナ２の原稿読み取り動作及びプロッタ３による画像形成動作を制御する。
【００２４】
コントローラＡＳＩＣ５は、ＣＰＵ６とともに画像処理装置１の全体の制御を行うとともに、特に、後述するデータ転送制御を行う。
【００２５】
メモリ７は、画像処理装置７の基本プログラムや本発明のデータ転送制御プログラム、システムデータ及び画像データ等を格納しており、ＣＰＵ６によって読み出され、また、書き込まれる。
【００２６】
ＣＰＵ６は、メモリ７内のプログラムに基づいて画像処理装置１の各部を制御して、画像処理装置１としての基本処理を実行するとともに、本発明のデータ転送制御プログラムに基づいて転送レートの最悪値を保証する必要のある要求源からのデータ転送要求を適切に処理する。
【００２７】
すなわち、画像処理装置１は、ＲＯＭ、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory ）、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）、ＣＤ−ＲＷ（Compact Disc Rewritable ）、ＤＶＤ（Digital Versatile Disk）、ＳＤ（Secure Digital）カード、ＭＯ（Magneto-Optical Disc）等のコンピュータが読み取り可能な記録媒体に記録されている本発明のデータ転送制御方法を実行するデータ転送制御プログラムを読み込んでメモリ７に導入することで、後述するデータ転送を効率的にかつ高速に処理するデータ転送方法を実行する画像処理装置１として構築されている。このデータ転送制御プログラムは、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のレガシープログラミング言語やオブジェクト指向ブログラミング言語等で記述されたコンピュータ実行可能なプログラムであり、上記記録媒体に格納して頒布することができる。
【００２８】
そして、上記コントローラＡＳＩＣ５は、図２に示すようにブロック構成されている。コントローラＡＳＩＣ５は、ＰＣＩｅルートコントローラ（ｒｏｏｔ）２１、カラ画像データに応じた４色分のビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄ、ラインバッファ（Line Buff)２３、ビデオ入力コントローラ（ＶＩｃｎｔ）２４、アービタ２５、各色用の圧縮ユニット２６ａ、２６ｂ、２６ｃ、２６ｄ、各色用のイメージ処理ユニット２７ａ、２７ｂ、２７ｃ，２７ｄ、ＰＣＩｅエンドポイントコントローラ（End）２８及びＡＳＩＣコントローラ２９等を備えており、ＡＳＩＣコントローラ２９は、制御レジスタ３１とタイマ３２を搭載している。
【００２９】
ＰＣＩｅルートコントローラ２１は、エンジンＡＳＩＣ４との間のＰＣＩｅ８に接続されているとともに、ビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄ及びラインバッファ２３に接続されており、エンジンＡＳＩＣ４との間のＰＣＩｅ８を制御して、ビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄからのプロッタデータをＰＣＩｅ８を介してエンジンＡＳＩＣ４へ出力するとともに、エンジンＡＳＩＣ４からのスキャナデータをラインバッファ２３に出力する。
【００３０】
ＰＣＩｅエンドコントローラ２８は、ＣＰＵ６側のＰＣＩｅ９及びアービタ２５と接続されており、ＰＣＩｅ９を制御して、アービタ２５とＣＰＵ６との間のデータ転送を行う。
【００３１】
ビデオ出力制御ユニット（要保証アクセス要求手段）２２ａ、２２ｂ、２２ｃ、２２ｄは、それぞれ、ビデオ出力コントローラ２２１ａ、２２１ｂ、２２１ｃ、２２１ｄ、スタンプＤＭＡＣ（ＳＴＭＰ  ＤＭＡＣ）２２２ａ、２２２ｂ、２２２ｃ、２２２ｄ、ビデオ出力ＤＭＡＣ２２３ａ、２２３ｂ、２２３ｃ、２２３ｄ、伸長器２２４ａ、２２４ｂ、２２４ｃ、２２４ｄ、符号ＤＭＡＣ２２５ａ、２２５ｂ、２２５ｃ、２２５ｄ、画像ＤＭＡＣ２２６ａ、２２６ｂ、２２６ｃ、２２６ｄ及びラインバッファ（Line Buff)２２７ａ、２２７ｂ、２２７ｃ、２２７ｄを備えている。
【００３２】
ビデオ出力コントローラ２２１ａ、２２１ｂ、２２１ｃ、２２１ｄは、それぞれのビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄ全体の制御を行うとともに、エンジンＡＳＩＣ４側にプロッタデータを転送する処理を実行する。
【００３３】
スタンプＤＭＡＣ２２２ａ、２２２ｂ、２２２ｃ、２２２ｄは、プロッタ３で印字出力するプロッタデータに対して、スタンプ印字として上乗せするデータ（スタンプデータ）を用意する。
【００３４】
ビデオ出力ＤＭＡＣ２２３ａ、２２３ｂ、２２３ｃ、２２３ｄは、印字出力するプロッタデータを用意し、伸長器２２４ａ、２２４ｂ、２２４ｃ、２２４ｄは、圧縮データとしてメモリ７上に置かれているデータを符号ＤＭＡＣ２２５ａ、２２５ｂ、２２５ｃ、２２５ｄを使用して読み出して、伸張処理を行う。この伸張データは、ビデオ出力ＤＭＡＣ２２３ａ、２２３ｂ、２２３ｃ、２２３ｄで用意するデータの変わりに使用することもでき、また、画像ＤＭＡＣ２２６ａ、２２６ｂ、２２６ｃ、２２６ｄを使用して、メモリ７上に書き出すこともできる。
【００３５】
ラインバッファ２２７ａ、２２７ｂ、２２７ｃ、２２７ｄは、ビデオ出力コントローラ２２１ａ、２２１ｂ、２２１ｃ、２２１ｄが必要とするデータをライン単位で、先行してメモリ７から読み出してきて、蓄えておくためラインバッファである。
【００３６】
上記圧縮ユニット（アクセス要求手段）２６ａ、２６ｂ、２６ｃ、２６ｄは、圧縮器（ＥＮＣ)２６１ａ、２６１ｂ、２６１ｃ、２６１ｄ、汎用ＤＭＡＣ（ＧＤＭＡＣ）２６２ａ、２６２ｂ、２６２ｃ、２６２ｄ及び汎用ＤＭＡＣ（ＧＤＭＡＣ）２６３ａ、２６３ｂ、２６３ｃ、２６３ｄを備えており、各色分搭載されている。汎用ＤＭＡＣ２６２ａ、２６２ｂ、２６２ｃ、２６２ｄは、アービタ２５を介して生データを読み出して、圧縮器２６１ａ、２６１ｂ、２６１ｃ、２６１ｄに渡し、圧縮器２６１ａ、２６１ｂ、２６１ｃ、２６１ｄが所定の圧縮方式でデータを圧縮して汎用ＤＭＡＣ２６３ａ、２６３ｂ、２６３ｃ、２６３ｄにわたす。汎用ＤＭＡＣ２６３ａ、２６３ｂ、２６３ｃ、２６３ｄは、圧縮後のデータをアービタ２５、ＰＣＩｅエンドコントローラ２８及びＰＣＩｅ９を介してＣＰＵ９側に渡す。
【００３７】
イメージ処理ユニット（アクセス要求手段）２７ａ、２７ｂ、２７ｃ、２７ｄは、イメージ処理回路２７１ａ、２７１ｂ、２７１ｃ、２７１ｄ、汎用ＤＭＡＣ(ＧＤＭＡＣ）２７２ａ、２７２ｂ、２７２ｃ、２７２ｄ及び汎用ＤＭＡＣ（ＧＤＭＡＣ）２７３ａ、２７３ｂ、２７３ｃ、２７３ｄを備えており、４色分搭載されている。汎用ＤＭＡＣ２７２ａ、２７２ｂ、２７２ｃ、２７２ｄは、アービタ２５を介してメモリからデータを読み出してイメージ処理回路２７１ａ、２７１ｂ、２７１ｃ、２７１ｄに渡し、イメージ処理回路２７１ａ、２７１ｂ、２７１ｃ、２７１ｄは、メモリ７から読み出されたデータにイメージ処理を施して汎用ＤＭＡＣ２７３ａ、２７３ｂ、２７３ｃ、２７３ｄに渡す。汎用ＤＭＡＣ２７３ａ、２７３ｂ、２７３ｃ、２７３ｄは、イメージ処理結果をアービタ２５、ＰＣＩｅエンドコントローラ２８、ＰＣＩｅ９、ＣＰＵ６を介してメモリ７に書き込む。そして、イメージ処理ユニット２７ａ、２７ｂ、２７ｃ、２７ｄは、４色分搭載されていて、４色同時にイメージ処理が可能となっている。
【００３８】
ラインバッファ２３は、スキャナデータ用のラインバッファであり、スキャナデータを複数ライン分蓄積する。ビデオ入力コントローラ２４は、スキャナデータ用のラインバッファ２３を制御する。
【００３９】
アービタ２５は、各ユニットからのＰＣＩｅ９を介してのメモリアクセス要求の調停を行い、基本的に、ラウンドロビン方式で各メモリアクセス要求を調停する。
【００４０】
ＡＳＩＣコントローラ（アクセス制御手段、周期設定手段）２９は、コントローラＡＳＩＣ５全体を制御し、制御レジスタ３１及びタイマ３２等を搭載している。制御レジスタ（待ち時間設定手段）３１は、ＣＰＵ６からアクセスされ、その設定値によりＡＳＩＣコントローラ２９によるコントローラＡＳＩＣ５の制御内容が変化し、特に、アクセス要求に対して許可を与えるまでの待ち時間が設定される。タイマ（計時手段）３２は、特定の要求源からの要求が、一定時間許可されない場合、その要求源に対して、優先的に許可されるようにＡＳＩＣコントローラ２９がアービタ２５の調停を制御するための、該一定時間（待ち時間）の計時を行う。
【００４１】
次に、本実施例の作用について説明する。本実施例の画像処理装置１は、ＰＣＩｅ８及びＰＣＩｅ９を介したデータ転送において、特にＰＣＩｅ９を介してのメモリ７へのデータ転送において、単位時間当たり転送量を所定値以上に維持できないと異常画像となるような転送レートの最悪値を保証する必要のある要求源（ビデオ出力データの入出力のＤＭＡＣ等）に対し、その保証値を高く設定できるようにする。すなわち、ビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄを要保証アクセス手段として、保証値を高く設定できるようにする。
【００４２】
本実施例の画像処理装置１は、そのデータの流れが、図１に示されており、スキャナデータパスが、Ｓｄで、プロッタデータパスが、Ｏｄで、プリンタデータパスが、Ｐｄでそれぞれ示されている。
【００４３】
スキャンデータパスＳｄは、スキャナ２で読み取られた原稿の画像データが、エンジンＡＳＩＣ４で画像処理されて、コントローラＡＳＩＣ５に渡され、コントローラＡＳＩＣ５によって、ＣＰＵ６の管理下のメモリ７に記憶するように、ＣＰＵ６に要求を発行して、メモリ７に記憶させるデータパスである。
【００４４】
プロッタデータパスＯｄは、メモリ７に記憶された画像データが、プロッタ３に送られて印刷に供されるデータパスである。すなわち、コントローラＡＳＩＣ５からの要求で、ＣＰＵ６管理下のメモリ７から、画像データを読み出し、エンジンＡＳＩＣ４を経由して、プロッタ３に画像データを渡して、印字出力するデータパスである。
【００４５】
プリンタデータパスＰｄは、プリンタデータの作成は、上記コピー動作と並行して行われる。プリンタデータパスＰｄは、ネットワーク経由等で、図示しないパーソナル・コンピュータ等から、プリンタ出力要求内容が各種プリンタ言語データとして、コントローラＡＳＩＣ５に入力される。このプリンタ言語データは、ＣＰＵ６管理下のメモリ７に記憶するように、ＣＰＵ６に要求を発行し、メモリ７に記憶される。その後、ＣＰＵ６は、プリンタ言語データの内容を解釈し、その内容に応じた画像データをメモリ７上に作成する。なお、画像データの作成にあたっては、コントローラＡＳＩＣ５の圧縮／伸張器２２ａ〜２２ｄ、２６ａ〜２６dを用いて、必要メモリ容量が少なくなる方法で画像データを作成する。最終的にメモリ７に作成されるデータは、圧縮処理されたデータとなる。この後、プロッタ３が、コピー動作から開放され、空いたところで、プリンタデータのメモリ７からプロッタ３への出力が行われる。このプリンタデータにおける出力のデータ流れは、プロッタデータパスＯｄと同じである。プリンタデータは、圧縮されてメモリ７に保管されているため、プリンタデータパスＯｄにおいて、コントローラＡＳＩＣ５の伸長器２２４ａ、２２４ｂ、２２４ｃ、２２４ｄで、伸張処理が加わる。
【００４６】
そして、上記データの流れにおいて、アービタ２５は、図３に示すように、各部からの信号状態に対して動作する。なお、アービタ２５は、ビデオ出力制御部２２ａ、２２ｂ、２２ｃ、２２ｄがイメージ処理ユニット２７ａ、２７ｂ、２７ｃ、２７ｄや圧縮ユニット２６ａ、２６ｂ、２６ｃ、２６ｄよりも高い優先順位（ビデオ出力制御部２２ａ、２２ｂ、２２ｃ、２２ｄ＞イメージ処理ユニット２７ａ、２７ｂ、２７ｃ、２７ｄ、圧縮ユニット２６ａ、２６ｂ、２６ｃ、２６ｄ）が設定されており、ラウンドロビン方式によって、これらからのメモリアクセス要求を調停する。
【００４７】
図３において、VOUT_DMACａ_ENは、ビデオ出力制御ユニット２２ａに対するイネーブル信号であり、High（ハイ）の状態でイネーブル状態である。IMPａ_ENは、イメージ処理ユニット２７ａに対するイネーブル信号であり、Highの状態でイネーブル状態である。
【００４８】
VOUT_DMACｂ_EN、IMPｂ_ENは、それぞれ、ビデオ出力制御ユニット２２ｂ、イメージ処理ユニット２７ｂに対するイネーブル信号である。
【００４９】
VOUT_REQａは、ビデオ出力制御ユニット２２ａからのアービタ２５に対するメモリアクセス要求信号で、Highで要求状態である。VOUT_ACKａは、メモリアクセス要求信号VOUT_REQａに対するアービタ２５からの許可信号であり、Highで許可を表す。
【００５０】
IMP_REQａは、イメージ処理ユニット２７ａからのアービタ２５に対するメモリアクセス要求信号であり、Highで要求状態である。IMP_ACKａは、メモリアクセス要求信号IMP_REQａに対するアービタ２５からの許可信号であり、Highで許可を表す。
【００５１】
そして、図３において、タイミングｔ１で、メモリアクセス要求信号VOUT_REQａがHighとなり、ビデオ出力制御ユニット２２ａからアービタ２５にメモリアクセス要求を発行する。
【００５２】
このメモリアクセス要求信号VOUT_REQａに対して、タイミングｔ２に示すように、アービタ２５は、許可信号VOUT_ACKａをHighとすることで許可を与える。
【００５３】
一方、タイミングｔ３において、イメージ処理ユニット２７ａがメモリアクセス要求信号IMP_REQａをHighとしてメモリアクセスを要求しているが、タイミングt４に示すように、許可信号IMP_ACKａは、Lowのままであり、アービタ２５は、許可を与えない。これは、ビデオ関連の要求は、一定の転送レートを確保できないと異常画像となってしまうために、高い優先順位が与えられており、ビデオ出力制御ユニット２２ａからのメモリアクセス要求信号VOUT_REQａが連続して発生しているため、ビデオ出力制御ユニット２２ａよりも優先順位の低いイメージ処理ユニット２７ａからのメモリアクセス要求が許可されないからである。
【００５４】
図３のタイミングt５において、ビデオ出力制御ユニット２２ｂに対するイネーブル信号VOUT_DMACｂ_ENがHighとなったことに連動して、ビデオ出力制御ユニット２２ｂは、ビデオ出力制御ユニット２２ｂに対するイネーブル信号VOUT_REQｂをHighにし、メモリアクセス要求を発行する。これ対して、アービタ２５は、タイミングｔ６のように、許可信号VOUT_ACKｂをHighとすることで、ビデオ出力制御ユニット２２ｂからのメモリアクセス要求に対しても、ラウンドロビンで調停を行い、許可を与える。
【００５５】
また、図３のタイミングｔ７で、ビデオ出力制御ユニット２２ａからのメモリアクセス要求信号VOUT_REQａがLowとなっているのは、所定のライン分のデータをメモリ７から読み出し、ラインバッファ２２７ａにため込んだので、メモリアクセス要求信号VOUT_REQａの発行を止めたためである。
【００５６】
上記説明では、他のビデオ出力制御ユニット２２ｂ、２２ｃ、２２ｄについても、所定のライン分のデータをメモリ７から読み出して、ラインバッファ２２７ｂ、２２７ｃ、２２７ｄにため込むと、メモリアクセス要求の発行を止めて、メモリアクセス要求信号VOUT_REQｂ、VOUT_REQｃ、VOUT_REQｄをLowにする。
【００５７】
アービタ２５は、上記データ転送処理と並行して、エンジン側のＰＣＩｅ８にプロッタデータの転送を行っているため、次のラインに対するメモリアクセスを開始する。すなわち、図３のタイミングｔ８で、ビデオ出力制御ユニット２２ａからのメモリアクセス要求信号VOUT_REQａが再びHighとなっている。
【００５８】
また、図３のタイミングｔ９においては、全てのビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄからのメモリアクセス要求信号VOUT_REQａ、VOUT_REQｂ、VOUT_REQｃ、VOUT_REQｄがないため、ビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄよりも優先順位の低い、イメージ処理ユニット２７ａからのメモリアクセス要求信号IMP_REQａに対して、メモリアクセス要求が許可されている。
【００５９】
このように、本実施例の画像処理装置１は、ＰＣＩｅ８、９等の要求コマンドとそれに対する応答とが分離されている高速シリアルバスにおいて、インタフェースであるＰＣＩｅエンドコントローラ２８やＰＣＩｅルートコントローラ２１へのアクセス要求の調停を行うアービタ２５に対して、優先順位の高いビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄが、画像データの所定ライン単位で集中してメモリアクセス要求信号VOUT_REQａ、VOUT_REQｂ、VOUT_REQｃ、VOUT_REQｄを発行している。
【００６０】
したがって、高優先順位の要求源（アクセス要求手段）からの要求の隙間をついて、低優先順位の要求源からの要求が許可され、そのアクセス要求実行を待つことによる転送レートの低下を防ぐことができる。その結果、単位時間当たり転送量を所定値以上に維持できないと異常画像となるような転送レートの最悪値を保証する必要のある要求源（ビデオ出力データの入出力のＤＭＡＣ等、すなわち、ビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄ）に対し、その保証値を高く設定することができる。
【００６１】
なお、このような処理を、転送レートの最悪値を保証する必要のある要求源の転送が行われている期間のみを対象として行ってもよい。
【００６２】
このようにすると、対象の要求源に対する一定レートでの許可の維持が難しくなる転送レートの最悪値を保証する必要のある要求源の転送を適切に行うことができるとともに、要保証要求源の転送が終了すると、優先順位の低い要求源に対しても、適切にデータ転送を行うことができる。
【００６３】
また、転送レートの最悪値を保証する必要のある要求源以外の要求が長時間メモリアクセスを許可されないという状況が発生し問題となる可能性がある。
【００６４】
そこで、コントローラＡＳＩＣ５は、内部のＡＳＩＣコントローラ２９内に制御レジスタ３１及びタイマ３２を備えており、制御レジスタ３１で設定した不許可時間をタイマ３２が計時すると、優先順位の低い要求源、例えば、イメージ処理ユニット２７ａ、２７ｂ、２７ｃ、２７ｄからのメモリアクセス要求をアービタ２５に優先的に許可させる。
【００６５】
したがって、低優先順位の要求源からのメモリアクセス要求に対しても、一定のレートで許可することができる。
【００６６】
さらに、この場合、ＡＳＩＣコントローラ２９が、優先順位の低い要求源に対して、アービタ２５が優先的に許可を与える周期を設定し、その周期の経過後は、該優先順位の低い特定の要求源に対して、アービタ２５が、優先的に要求に対して許可を与えるように制御して、優先順位の低い要求源に対して、一定のレートで、許可を与えるようにしてもよい。
【００６７】
このようにすると、優先権の低い要求源が何時まで経っても要求が許可されない不具合を解消することができ、適切なデータ転送を行うことができる。
【００６８】
さらに、本実施例の画像処理装置１は、同一の要求源に対し、アービタ２５が複数の対象要求源として取り扱うことが可能な構成とし、要保証要求源（ビデオ出力制御ユニット２２ａ、２２ｂ、２２ｃ、２２ｄ）に対し、複数倍の頻度で、アービタ２５が許可するようにしてもよい。この場合、転送レートの最悪値を保証する必要のある要求源のそれぞれの要求転送レートの比率が２以上あることを条件に複数の対象要求源として取り扱うように、制御レジスタ３１にレジスタ設定する。
【００６９】
このようにすると、アービタ２５が許可する頻度を調整することができ、対象機器の特性にあわせて、要求源に対する転送レートの設定を行うことができる。また、要求転送レートの比率が２以上あることを条件としているので、スキャナデータとプロッタデータの様に、１ラインに対するデータ量や要求転送レートが異なる対象に対しても、バランス良く転送を行うことができ、保証レートを高く維持することができる。
【００７０】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記実施例で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００７１】
本発明は、優先権に応じてアクセス制御するアービタを搭載するデータ転送装置、画像形成装置、データ転送制御方法、データ転送制御プログラム及び記録媒体に利用することができる。
【符号の説明】
【００７２】
１  画像処理装置
２  スキャナ
３  プロッタ
４  エンジンＡＳＩＣ
５  コントローラＡＳＩＣ（ＣＴＬ  ＡＳＩＣ）
６  ＣＰＵ
７  メモリ
８、９  ＰＣＩｅ
１０  ＳＳＴＬ
２１  ＰＣＩｅルートコントローラ（ｒｏｏｔ）
２２ａ、２２ｂ、２２ｃ、２２ｄ  ビデオ出力制御ユニット
２２１ａ、２２１ｂ、２２１ｃ、２２１ｄ  ビデオ出力コントローラ
２２２ａ、２２２ｂ、２２２ｃ、２２２ｄ  スタンプＤＭＡＣ（ＳＴＭＰ  ＤＭＡＣ）
２２３ａ、２２３ｂ、２２３ｃ、２２３ｄ  ビデオ出力ＤＭＡＣ
２２４ａ、２２４ｂ、２２４ｃ、２２４ｄ  伸長器
２２５ａ、２２５ｂ、２２５ｃ、２２５ｄ  符号ＤＭＡＣ
２２６ａ、２２６ｂ、２２６ｃ、２２６ｄ  画像ＤＭＡＣ
２２７ａ、２２７ｂ、２２７ｃ、２２７ｄ  ラインバッファ（Line Buff)
２３  ラインバッファ（Line Buff)
２４  ビデオ入力コントローラ（ＶＩｃｎｔ）
２５  アービタ
２６ａ、２６ｂ、２６ｃ、２６ｄ  圧縮ユニット
２６１ａ、２６１ｂ、２６１ｃ、２６１ｄ  圧縮器（ＥＮＣ)
２６２ａ、２６２ｂ、２６２ｃ、２６２ｄ  汎用ＤＭＡＣ（ＧＤＭＡＣ）
２６３ａ、２６３ｂ、２６３ｃ、２６３ｄ  汎用ＤＭＡＣ（ＧＤＭＡＣ）
２７ａ、２７ｂ、２７ｃ，２７ｄ  イメージ処理ユニット
２７１ａ、２７１ｂ、２７１ｃ、２７１ｄ  イメージ処理回路
２７２ａ、２７２ｂ、２７２ｃ、２７２ｄ  汎用ＤＭＡＣ(ＧＤＭＡＣ）
２７３ａ、２７３ｂ、２７３ｃ、２７３ｄ  汎用ＤＭＡＣ（ＧＤＭＡＣ）
２８  ＰＣＩｅエンドポイントコントローラ（End）
２９  ＡＳＩＣコントローラ
３１  制御レジスタ
３２  タイマ
【先行技術文献】
【特許文献】
【００７３】
【特許文献１】特開２００７−２４９８１６号公報
【図１】
2012027751.tif 000003
【図２】
2012027751.tif 000004
【図３】
2012027751.tif 000005