(57)【要約】      （修正有）【課題】優先順位の異なる複数のＤＭＡＣからのメモリへのアクセス要求を優先順を変更して適切に調停するデータ転送装置、データ転送方法、データ転送プログラム及び記録媒体を提供する。【解決手段】ライン同期信号LSYNCと画像先端同期信号FSYNCに基づいて１ライン分の画像データをメモリから読み取って転送するＲＤＭＡＣ１３４を含む複数のＤＭＡＣ１２３、１２４からのメモリへのリクエストを予め設定されている優先順位に基づいてリクエスト調停部１１２が調停する場合、画像処理部１１の転送データ量監視部１３６が２つのラインバッファ１３２がフル状態か否か監視して、該監視結果に基づいて必要転送量計算部１０５が、上記優先順位の変更の要否を判定し、優先順位制御部１１１が該判定結果に基づいてリクエスト調停部１１２の優先順位を制御する。【選択図】図２
2011182369.tif 000002
【特許請求の範囲】
【請求項１】
所定のデータ列からなるデータ群のデータを記憶するメモリから、外部から入力されるデータ転送期間信号によって決定されるデータ転送期間内に該データ列分のデータを該外部へデータ転送するとともに、最初の該データ転送期間においては、該外部から入力される転送開始信号と次の該データ転送期間信号との間の期間に該データ列分のデータを転送する必要のある外部要因アクセス手段を含む複数のアクセス手段からの該メモリへのアクセス要求を複数の該アクセス手段に対して予め設定されている優先順位に基づいて調停するアクセス調停手段と、
前記転送開始信号を監視して該転送開始信号を取得する転送開始信号取得手段と、
前記データ転送期間信号を監視して前記データ転送期間を取得するデータ転送期間取得手段と、
前記外部要因アクセス手段による前記メモリからの転送データ量を監視する転送データ量監視手段と、
最初の前記データ転送期間において前記転送開始信号、前記データ転送期間及び前記転送データ量に基づいて該データ転送期間内に転送の要求されている前記データ列分のデータを転送するのに前記アクセス調停手段における前記優先順位の変更の要否を判定する優先順位変更要否判定手段と、
前記優先順位変更要否判定手段の判定結果に基づいて前記アクセス調停手段の前記優先順位を制御する優先順位制御手段と、
を備えていることを特徴とするデータ転送装置。
【請求項２】
前記データ転送装置は、前記外部要因アクセス手段が前記メモリから取得した前記画像データを前記データ列分保管する少なくとも２つのラインバッファを備え、
前記転送データ量監視手段は、それぞれの前記ラインバッファが満杯であるか否かを監視して満杯であるか否かを示すラインバッファ状態信号を前記転送データ量として前記優先順位変更要否判定手段に出力し、
前記優先順位変更要否判定手段は、前記各ラインバッファに対応する前記ラインバッファ状態信号に基づいて前記外部要因アクセス手段からのアクセス要求に対する前記優先順位の変更の要否を判定することを特徴とする請求項１記載のデータ転送装置。
【請求項３】
前記優先順位変更要否判定手段は、前記ラインバッファ状態信号が全ての前記ラインバッファが満杯であることを示すまで前記外部要因アクセス手段からのアクセス要求を最優先にする高優先度要求を前記優先順位制御手段に出力し、
前記優先順位制御手段は、前記高優先度要求を受け取ると、前記外部要因アクセス手段からのアクセス要求を最優先に優先順位付けして前記アクセス調停手段にアクセス要求を調停させることを特徴とする請求項２記載のデータ転送装置。
【請求項４】
前記優先順位変更要否判定手段は、
前記データ転送期間取得手段の取得した前記データ転送期間と前記転送開始信号からの経過時間に基づいて現時点での該データ転送期間の残り時間を算出する時間算出手段と、
前記データ転送量監視手段の取得した転送データ量から現時点での前記データ転送期間において転送を必要とする残り転送データ量を算出する残り転送量算出手段と、
前記残り時間と前記残り転送データ量に基づいて優先順位の変更を行うことなく該残り時間に該残り転送データ量のデータを前記ラインバッファに転送可能か否か判定して、該残り時間に該残り転送データ量の転送が不可能であると判定すると、該残り時間に該残り転送データ量の転送が可能になるまで、前記外部要因アクセス手段からのアクセス要求を最優先にする高優先度要求を前記優先順位制御手段に出力する判定手段と、
を備えていることを特徴とする請求項２または請求項３記載のデータ転送装置。
【請求項５】
前記データ転送装置は、
前記データ転送期間に前記転送データ量を前記優先順位で転送するのに必要な前記外部要因アクセス手段が単位時間当たりに発行すべきアクセス要求の回数を基準アクセス率として算出する基準アクセス率算出手段を備え、
前記判定手段は、前記残り時間の間に前記残り転送データ量を転送するのに必要な前記外部要因アクセス手段が単位時間当たりに発行すべきアクセス要求回数を残アクセス率として算出して、該残アクセス率と前記基準アクセス率を比較して、該残り時間に該残り転送データ量を転送可能か否か判定することを特徴とする請求項４記載のデータ転送装置。
【請求項６】
前記優先順位制御手段は、前記優先順位変更要求判定手段の判定結果に基づいて、前記アクセス調停手段に対して、前記外部要因アクセス手段の優先順位を最高優先順位に上げる外部最高優先順位制御、該外部要因アクセス手段の優先順位を下げる外部低優先順位制御、外部要因アクセス手段の優先順位を不変とする不変優先順位制御のいずれかを実行することを特徴とする請求項１から請求項５のいずれかに記載のデータ転送装置。
【請求項７】
前記判定手段は、前記外部要因アクセス手段の優先順位を上げても前記残り時間内に前記残り転送データ量のデータの転送が不可能であると判定すると、エラー通知を発生することを特徴とする請求項４または請求項５記載のデータ転送装置。
【請求項８】
前記データ転送装置は、前記外部としての画像形成手段から入力されるライン同期信号を前記データ転送期間信号とし、該画像形成手段から入力される画像先端同期信号を前記転送開始信号として、前記外部要因アクセス手段が、リードアクセス要求を所定間隔毎に発行して、前記メモリの画像データを読み取って該画像形成手段に転送するリードＤＭＡＣであることを特徴とする請求項１から請求項７のいずれかに記載のデータ転送装置。
【請求項９】
所定のデータ列からなるデータ群のデータを記憶するメモリから、外部から入力されるデータ転送期間信号によって決定されるデータ転送期間内に該データ列分のデータを該外部へデータ転送するとともに、最初の該データ転送期間においては、該外部から入力される転送開始信号と次の該データ転送期間信号との間の期間に該データ列分のデータを転送する必要のある外部要因アクセス手段を含む複数のアクセス手段からの該メモリへのアクセス要求を複数の該アクセス手段に対して予め設定されている優先順位に基づいて調停するアクセス調停処理ステップと、
前記転送開始信号を監視して該転送開始信号を取得する転送開始信号取得処理ステップと、
前記データ転送期間信号を監視して前記データ転送期間を取得するデータ転送期間取得処理ステップと、
前記外部要因アクセス手段による前記メモリからの転送データ量を監視する転送データ量監視処理ステップと、
最初の前記データ転送期間において前記転送開始信号、前記データ転送期間及び前記転送データ量に基づいて該データ転送期間内に転送の要求されている前記データ列分のデータを転送するのに前記アクセス調停処理ステップにおける前記優先順位の変更の要否を判定する優先順位変更要否判定処理ステップと、
前記優先順位変更要否判定処理ステップでの判定結果に基づいて前記アクセス調停処理ステップでの前記優先順位を制御する優先順位制御処理ステップと、
を有していることを特徴とするデータ転送方法。
【請求項１０】
コンピュータに、
所定のデータ列からなるデータ群のデータを記憶するメモリから、外部から入力されるデータ転送期間信号によって決定されるデータ転送期間内に該データ列分のデータを該外部へデータ転送するとともに、最初の該データ転送期間においては、該外部から入力される転送開始信号と次の該データ転送期間信号との間の期間に該データ列分のデータを転送する必要のある外部要因アクセス手段を含む複数のアクセス手段からの該メモリへのアクセス要求を複数の該アクセス手段に対して予め設定されている優先順位に基づいて調停するアクセス調停処理と、
前記転送開始信号を監視して該転送開始信号を取得する転送開始信号取得処理と、
前記データ転送期間信号を監視して前記データ転送期間を取得するデータ転送期間取得処理と、
前記外部要因アクセス手段による前記メモリからの転送データ量を監視する転送データ量監視処理と、
最初の前記データ転送期間において前記転送開始信号、前記データ転送期間及び前記転送データ量に基づいて該データ転送期間内に転送の要求されている前記データ列分のデータを転送するのに前記アクセス調停処理における前記優先順位の変更の要否を判定する優先順位変更要否判定処理と、
前記優先順位変更要否判定処理での判定結果に基づいて前記アクセス調停処理での前記優先順位を制御する優先順位制御処理と、
を実行させることを特徴とするデータ転送プログラム。
【請求項１１】
請求項１０記載のデータ転送プログラムを記録したことを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送装置、データ転送方法、データ転送プログラム及び記録媒体に関し、詳細には、優先順位の異なる複数のＤＭＡＣ（Direct Memory Access Controller）等のアクセス手段からのメモリへのアクセス要求を優先順位を変更して適切に調停するデータ転送装置、データ転送方法、データ転送プログラム及び記録媒体に関する。
【背景技術】
【０００２】
プリンタ、複写装置、複合装置等の画像形成装置においては、ＲＡＭ（Random Access Memory）やハードディスク等のメモリに保管した画像データを画像形成部の処理タイミングに合わせって画像処理部で必要な画像処理を施して画像形成部に転送し、画像形成部で用紙等の画像形成媒体（以下、単に、用紙という。）に画像形成している。そして、画像形成部で適切に画像形成するためには、画像形成部の機械的な動作タイミングを考慮して、画像処理部から画像データを画像形成部に転送する必要がある。特に、画像形成部が、電子写真方式の画像形成部であると、光書き込み部が感光体へ画像データに基づいて変調したレーザビームを照射して高速で画像形成するため、この光書き込み部の動作タイミングを考慮して画像処理部から画像データを転送する必要がある。また、近年、画像処理部と画像形成部との接続に、要求と応答が分離されて、応答を待たずに次の要求を発行できるＰＣＩ（Peripheral Component Interconnect） Express（以下、ＰＣＩｅという。）のような高速なスプリットトランザクションのバスが利用されるようになってきており、このような高速のバスを用いることで、画像データの転送タイミングも細かな設定が必要となってきている。
【０００３】
そして、画像形成部の機械的な動作タイミングは、画像先端同期信号FSYNCとライン同期信号LSYNCで制御され、図７に示すような関係にある。すなわち、画像形成部が電子写真方式の場合、ライン同期信号LSYNCは、ポリンゴンミラーレンズが回転し始めると、ＬＤ（レーザダイオード）による感光体へのラインの描画におけるライン先頭タイミングがくるたびに画像処理部へ入力される。画像先端同期信号FSYNCは、用紙の入力開始時にソフトウェアから起動がかけられて、入力される。画像形成装置は、画像先端同期信号FSYNCが入力された次のライン同期信号LSYNCのタイミングで、画像処理部から画像形成部に１ライン目のデータを出力する必要があり、その後も、ライン同期信号LSYNC間隔内に形成画像の１ライン分の画像データを画像形成部へ転送する必要がある。この動作タイミングに合わせた画像データの転送が、間に合わない場合には、画像形成部で形成される画像に異常画像が発生することになる。
【０００４】
従来、この異常画像の発生を防止するために、画像形成装置においては、画像処理部内のラインバッファに複数ライン分の画像データを保持し、画像処理部内のラインバッファに画像データが保持された時点で印刷を開始する方法がある。
【０００５】
ところが、この方法を用いると、画像処理部を制御するＣＰＵ（Central Processing Unit ）と画像形成部の光書き込み部を制御するＣＰＵとの間で、画像データが格納されたことを通知するための通信を行う必要があるが、この通信に通常数十ミリ秒から数百ミリ秒かかるため、画像先端同期信号FSYNC信号の入力自体に時間がかかり、画像形成における生産性を向上させることができない。
【０００６】
そこで、従来から、生産性を向上させるために、画像先端同期信号FSYNCを、印刷画像の枚数分、一定間隔で画像処理部に入力させ、画像処理部が、この一定間隔の画像先端同期信号FSYNCに対して、画像データの転送が間に合うようにメモリから画像データを読み出して、ラインバッファに保持できるように画像形成装置の設計することが行われている。
【０００７】
とこが、このような画像形成装置の作り込みを行うと、上記の異常画像が発生するおそれがある。そこで、従来、画像処理部内の内部バスの利用に対して、該画像処理部が備えている複数の機能毎に優先順位付けを行い、リアルタイム性が必要な機能については、高い優先順位を与えることが行なわれている。
【０００８】
この優先順位を利用した技術としては、従来、優先順位が最も高く設定されているＤＭＡＣ（Direct Memory Access Controller）から所定時間内に所定量のデータの一部毎に順次発行される転送要求に対して、転送処理を行うと、その転送量の累積値を算出し、予め該ＤＭＡＣに対して設定された転送速度で該累積値を除算することにより、累積値のデータの必要転送時間を算出して、所定時間毎に経過時間を計測して、該経過時間と必要転送時間から転送要求による処理を実行させるか待機させるかを決定する技術が提案されている（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記公報記載の従来技術にあっては、ライン同期信号LSYNC間隔内に画像データの転送を行う場合に適用した場合、該ライン同期信号LSYNC間隔内に画像データの転送を行うことに関しては、有効であるが、１ライン目のデータを取得するのには、メモリアクセス開始のタイミングと画像先端同期信号FSYNCの入力タイミングが非同期であるため、適切に対応することができず、画像先端同期信号FSYNCが入力された次のライン同期信号LSYNCのタイミングで、画像処理部から画像形成部に１ライン目のデータを出力するとともに、ライン同期信号LSYNC間隔内に形成画像の１ライン分の画像データを画像形成部へ転送する技術が要望されている。
【００１０】
そこで、本発明は、外部要因によるメモリへのアクセス要求に対して、他のアクセス要求との優先順位を調整して、該外部要因によって求められるデータ量を、転送開始初期から該外部から要求される期間内に転送するデータ転送装置、データ転送方法、データ転送プログラム及び記録媒体を提供することを目的としている。
【課題を解決するための手段】
【００１１】
本発明は、上記目的を達成するために、所定のデータ列からなるデータ群のデータを記憶するメモリから、外部から入力されるデータ転送期間信号によって決定されるデータ転送期間内に該データ列分のデータを該外部へデータ転送するとともに、最初の該データ転送期間においては、該外部から入力される転送開始信号と次の該データ転送期間信号との間の期間に該データ列分のデータを転送する必要のある外部要因アクセス手段を含む複数のアクセス手段からの該メモリへのアクセス要求を複数の該アクセス手段に対して予め設定されている優先順位に基づいて調停する際に、最初の前記データ転送期間において前記転送開始信号、前記データ転送期間及びメモリから前記外部要因アクセス手段によって転送された転送データ量に基づいて該データ転送期間内に転送の要求されている前記データ列分のデータを転送するのに前記優先順位の変更の要否を判定し、該判定結果に基づいて該優先順位を制御することを特徴としている。
【００１２】
また、本発明は、前記外部要因アクセス手段が前記メモリから取得した前記画像データを前記データ列分保管する少なくとも２つのラインバッファが、満杯であるか否かを監視して、該各ラインバッファが満杯であるか否かに基づいて前記外部要因アクセス手段からのアクセス要求に対する前記優先順位の変更の要否を判定することを特徴としてもよい。
【００１３】
さらに、本発明は、前記データ転送期間と前記転送開始信号からの経過時間に基づいて現時点での該データ転送期間の残り時間を算出し、メモリから前記外部へ転送された転送データ量から現時点での該データ転送期間において転送を必要とする残り転送データ量を算出して、該残り時間と該残り転送データ量に基づいて優先順位の変更を行うことなく該残り時間に該残り転送データ量のデータを転送可能か否か判定して、該残り時間に該残り転送データ量の転送が不可能であると判定すると、該残り時間に該残り転送データ量の転送が可能になるまで、前記外部要因アクセス手段からのアクセス要求を最優先にすることを特徴としてもよい。
【発明の効果】
【００１４】
本発明によれば、外部要因によるメモリへのアクセス要求に対して、他のアクセス要求との優先順位を調整することができ、該外部要因によって求められるデータ量を、転送開始初期から該外部から要求される期間内に転送することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施例を適用した画像形成装置の要部ブロック構成図。
【図２】画像処理部のブロック構成図。
【図３】アービタの詳細な構成図。
【図４】必要転送量計算部と優先順位制御部のブロック構成の一例を示す図。
【図５】必要転送量計算部と優先順位制御部のブロック構成の他の例を示す図。
【図６】必要転送量計算部と優先順位制御部のブロック構成のさらに他の例を示す図。
【図７】画像先端同期信号、ライン同期信号及び画像データのタイミング図。
【発明を実施するための形態】
【００１６】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるので、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明によって不当に限定されるものではなく、また、本実施の形態で説明される構成の全てが本発明の必須の構成要件ではない。
【実施例１】
【００１７】
図１〜図６は、本発明のデータ転送装置、データ転送方法、データ転送プログラム及び記録媒体の一実施例を示す図であり、図１は、本発明のデータ転送装置、データ転送方法、データ転送プログラム及び記録媒体の一実施例を適用した画像形成装置１の要部ブロック構成図である。
【００１８】
図１において、画像形成装置１は、本体部１０と画像書き込み部２０を備えているとともに、図示しないが、画像形成装置１として必要な各部、例えば、操作表示部、データ入力部等を備えている。データ入力部は、例えば、原稿の画像を読み取って画像データを取得するスキャナ部、外部コンピュータ等からネットワーク等を介して画像データを取得するネットワーク通信部等であり、操作表示部は、画像形成装置１に動作を行わせるのに必要な各種操作を行う操作キーや該操作キーの操作内容及び画像形成装置１からユーザに通知する各種情報を表示するディスプレイ等を備えている。
【００１９】
本体部１０は、画像処理部１１、ＣＰＵ（Central Processing Unit ）１２、メモリ１３等を備えており、画像形成部２０は、ＬＤ（Laser Diode ）制御部２１、ＣＰＵ２２及びＬＤモジュール２３等を備えている。本体部１０と画像形成部２０や画像処理部１１とＣＰＵ１２等の出要各部の間は、ＰＣＩｅによって接続されており、画像データの高速転送を行う。
【００２０】
画像形成装置１は、メモリ１３または図示しないメモリ（ＲＯＭ（Read Only Memory）等）に、画像形成装置１としての基本プログラムや本発明の画像データ転送制御プログラム及び必要なシステムデータを格納しており、本体部１０のＣＰＵ１２は、メモリ１３または該メモリに格納されているプログラムに基づいて、画像形成装置１の各部を制御して画像形成装置１としての基本処理を実行させるとともに、本発明のデータ転送制御処理を実行する。特に、ＣＰＵ１２は、データ入力部で取得した画像データを、一旦、画像処理部１１で必要な画像処理を施した後に、メモリ１３に保管し、このメモリ１３への画像データの書き込み及び読み出しの制御を行うとともに、画像処理部１１での画像処理及び画像処理部１１で画像処理された画像データのＬＤ制御部２１への転送を制御する。
【００２１】
画像形成部２０は、電子写真方式の画像形成部が用いられており、各色毎に、回転駆動される感光体を中心として、帯電部、光書き込み部、現像部、転写部、クリーニング部等が配設されていて、この光書き込み部に、ＬＤ制御部２１とＬＤモジュール２２及びポリゴンミラー、ミラーやレンズからなる走査光学系が搭載されている。画像形成部２０は、帯電部による一様に帯電された感光体に、光書き込み部が対応する色の画像データに基づいて変調されたレーザビームを照射して静電潜像を形成し、現像部が対応する色のトナーを付与して感光体上の静電潜像を現像してトナー画像を形成する。画像形成部２０は、感光体上のトナー画像を給紙部から搬送されてくる用紙に転写部によって各色のトナー画が重なり合うように転写し、定着部でトナー画像を用紙に定着させた後に排紙トレイ上に排出する。
【００２２】
上記光書き込み部にＬＤ制御部２１とＬＤモジュール２３が搭載されており、ＬＤ制御部２１は、ＣＰＵ２２の制御下で、画像処理部１１から転送されてくる画像データに基づいてＬＤモジュール２３を点灯駆動させる。
【００２３】
そして、画像処理部（データ転送装置）１１は、ＡＳＩＣ（Application Specific Integrated Circuit）等のＬＳＩ（Large Scale Integrated circuit：大規模集積回路）で構成され、図２に示すように、メモリＩ／Ｆ１０１、アービタ１０２、画像出力制御機能部１０３、複数（図２では、２つ）の画像処理機能部１０４ａ、１０４ｂ、必要転送量計算部１０５及び必要転送レート保持部１０６等を備えている。
【００２４】
メモリＩ／Ｆ１０１は、メモリ１３とのインターフェイスであり、アービタ１０２とメモリ１３との間における画像データの授受を行う。
【００２５】
アービタ１０２は、優先順位制御部１１１とリクエスト調停部１１２を備えており、優先順位制御部１１１には、画像出力制御機能部１０３から、転送要求発行時のデータのバースト長ＢＬ、ラインスタート信号及びラインエンド信号が入力される。また、優先順位制御部１１１には、必要転送レート保持部１０６から必要転送レートＲａが入力され、必要転送計算部１０５から必要転送量が入力される。上記バースト長ＢＬ及び必要転送レートは、予め分かっている必要がある値である。
【００２６】
リクエスト調停部（アクセス調停手段）１１２には、画像出力制御機能部１０３、画像処理機能部１０４ａ、１４０ｂとの間のメモリに対するリクエストの調停を所定の優先順位に基づいて行って、画像データの転送制御を行う。なお、リクエスト調停部１１２の処理については、後で詳細に説明する。
【００２７】
画像処理機能部１０４ａ、１０４ｂは、それぞれ画像処理ユニット１２１ａ、１２１ｂ、レジスタ１２２ａ、１２２ｂ、ＲＤＭＡＣ（Read Direct Memory Access Controller）１２３ａ、１２３ｂ、ＷＤＭＡＣ（Write Direct Memory Access Controller）１２４ａ、１２４ｂ等を備えており、画像処理ユニット１２１ａ、１２１ｂが、ＣＰＵ１２によってレジスタ１２２ａ、１２２ｂに設定されるパラメータに応じた画像処理を施す。ＲＤＭＡＣ１２３ａ、１２３ｂは、アービタ１０２のリクエスト調停部１１２にリードリクエスト（リード転送要求）を行って、リクエスト調停部１１２が転送許可すると、メモリＩ／Ｆ１０１を介してメモリ１３からディスクリプタの指定するアドレスから画像データを読み出し、メモリ１３から読み出した画像データを画像処理ユニット１２１ａ、１２１ｂに渡す。ＷＤＭＡＣ１２４ａ、１２４ｂは、アービタ１０２のリクエスト調停部１１２にライトリクエスト（ライト転送要求）を行って、リクエスト調停部１１２が転送許可すると、画像処理ユニット１２１ａ、１２１ｂが画像処理した画像データを、メモリＩ／Ｆ１０１を介してメモリ１３のディスクリプタの指定するアドレスに転送する。
【００２８】
画像出力制御機能部１０３は、出力Ｉ／Ｆ１３１、ラインバッファ１３２、画像処理部１３３、ＲＤＭＡＣ１３４、起動制御部１３５、転送データ量監視部１３６、画像先端同期信号監視部１３７、ライン同期信号監視部１３８及びレジスタ１３９等を備えており、ＬＤ制御部２１から画像先端同期信号FSYNCとライン同期信号LSYNCが出力Ｉ／Ｆ１３１及び画像先端同期信号監視部１３７とライン同期信号監視部１３８に入力される。このライン同期信号LSYNCは、画像形成部２０で印刷動作が開始されると、１ライン周期毎に一定間隔でＬＤ制御部２１から画像出力制御機能部１０３に入力される。
【００２９】
このライン同期信号LSYNCと画像先端同期信号FSYNCは、図７に示したような関係にあり、画像形成部２０のポリゴンミラーが回転し始めて、ＬＤモジュール２３による感光体への描画がラインの先頭に来るたびにＬＤ制御部２１から入力される信号であり、画像先端同期信号FSYNCは、用紙の入力開始時にソフトウェアから起動がかけられて入力される。画像形成部２０においては、画像先端同期信号FSYNCが入力された次のライン同期信号LSYNCのタイミングで、１ライン目の画像データを画像処理部１１からＬＤ制御部２１に出力する必要があり、その後も、ライン同期信号LSYNC間隔内に該１ページの印刷画像における１ライン分の画像データを画像処理部１１からＬＤ制御部２１に出力する必要がある。
【００３０】
ライン同期信号監視部（データ転送期間取得手段）１３８は、内蔵するライン同期信号幅保持レジスタ及びカウンタを初期化し、ライン同期信号（データ転送期間信号）LSYNCが入力されると、カウンタを内部動作クロック毎にカウントアップしながら次のライン同期信号LSYNCが入力されるのを待つ。ライン同期信号監視部１３８は、次のライン同期信号LSYNCが入ると、そのときのカウンタ値Ｔｆをライン同期信号幅としてライン同期信号幅保持レジスタへ記憶し、カウンタを「０」に戻して、再び同様のカウントアップを開始する。また、ライン同期信号監視部１３８は、ライン同期信号LSYNCの信号幅の値（ライン同期信号幅）Ｔｌを必要転送量計算部１０５へ通知する。ライン同期信号監視部１３８は、印刷を行っている間、上記動作を繰り返し行なう。
【００３１】
画像先端同期信号監視部（転送開始信号取得手段）１３７は、画像先端同期信号（転送開始信号）FSYNCが入力されると、そのときのライン同期信号監視部１３８のカウンタ値Ｔｆを取得し、画像先端同期信号FSYNCとともにカウンタ値Ｔｆを必要転送量計算部１０５に通知する。このカウンタ値Ｔｆは、ライン同期信号LSYNCが入ってから画像先端同期信号FSYNCが入るまでの経過時間を示している。
【００３２】
ＲＤＭＡＣ１３４は、アービタ１０２のリクエスト調停部１２にリードアクセスを行って、リクエスト調停部１２からバス使用権が許可されると、メモリ１３から該メモリ１３にＣＰＵ１２によって書き込まれているディスクリプタの指定するアドレスから画像データを読み出して、画像処理部１３３に転送する。
【００３３】
画像処理部１３３は、ＲＤＭＡＣ１３４の読み出した画像データに対して、レジスタ１３９等に設定されているパラメータ等に基づいて所定の画像処理を施して、ラインバッファ１３２に出力する。
【００３４】
ラインバッファ１３２は、少なくとも２つ（なお、以下の説明では、説明を明確にするために、ラインバッファ１３２は、２つとする。）用意されており、各ラインバッファ１３２は、画像形成部２０で画像形成が必要な最大主走査幅（ライン長）の画像データを格納する容量を有している。ラインバッファ１３２は、２つのラインバッファ１３２がトグルで使用され、画像処理部１３３からの画像データを順次格納して、出力Ｉ／Ｆ１３１に渡す。出力Ｉ／Ｆ１３１は、ラインバッファ１３２からの画像データをＬＤ制御部２１に出力する。
【００３５】
転送データ量監視部（転送データ量監視手段）１３６は、起動制御部１３５からＲＤＭＡＣ１３４を起動させるＲＤＭＡＣ起動信号が入力されると、ラインバッファ１３２の状態を監視し、ラインバッファ１３２の状態情報を必要転送量計算部１０５へ通知する。転送データ量監視部１３６は、ラインバッファ１３２のバッファ・フル（満杯）／バッファ・エンプティ（空）の監視を行ってラインバッファ状態信号を必要転送量計算部１０５に通知、または、ラインバッファ１３２を通して転送されたデータ量の監視を行って、監視結果を転送データ量Ｎｄとして必要転送量計算部１０５に通知する。なお、ラインバッファ１３２のバッファ・フル／バッファ・エンプティの監視は、ＬＳＩを用いた画像処理部１１として容易に行うことができるが、後で説明するリクエスト調停部１１２で一時的に画像処理部１１の動作を止めてしまう可能性がある。また、ラインバッファ１３２を通した転送データ量の監視は、その後のリクエスト調停部１１２の実装が複雑になるが、ラインバッファ１３２のバッファ・フル／バッファ・エンプティの監視に比較して、より詳細な調停を行うことができ、画像形成装置１のパフォーマンスを向上させることができる。また、ラインバッファ１３２のバッファフルとは、そのときの処理対象における１ページの画像データの主走査１ライン分の画像データがラインバッファ１３２に格納されている状態をいう。
【００３６】
必要転送量計算部１０５は、画像先端同期信号FSYNCとライン同期信号LSYNC及び転送データ量監視部１３６から転送データ量の情報が入力され、これらの結果から１ラインの画像データのうち、転送が必要な残りの画像データ量Ｎを、予め設定されている規定時間内に転送するための要求転送レートを計算して、優先順位制御部１１１へ通知する。
【００３７】
すなわち、必要転送量計算部１０５は、後で詳細に説明するように、最初の１ライン同期信号間隔（データ転送間隔）において画像先端同期信号FSYNC、ライン同期信号LSYNC及び転送データ量に基づいて該１ライン同期信号間隔内に転送の要求されている１ライン分（データ列分）のデータを転送するのに、リクエスト調停部１１２における優先順位の変更の要否を判定する。
【００３８】
必要転送レート保持部１０６は、画像処理部１１のＬＳＩ内に設けられ、必要転送レートＲａは、ＲＤＭＡＣ１３４が必ずデータ転送を完了しなければならない時間である１ライン同期信号期間の８０％程度、または、１回の転送要求で１ライン分の画像データの転送を処理する時間の最大値を加味した値が設定されている。
【００３９】
優先順位制御部１１１は、ＲＤＭＡＣ１３４から転送要求（リードリクエスト）発行時に画像データのバースト長ＢＬ、ラインスタート信号及びラインエンド信号が、また、必要転送量計算部１０５から上記要求転送レートが、さらに、必要転送レート保持部１０６から必要転送レートＲａが、それぞれ入力される。必要転送レートＲａは、画像形成装置１の検討段階で、予め分かっている必要のある値である。優先順位制御部１１１は、画像形成部２０で画像形成動作が開始されると、必要転送レートＲａを利用して、データ転送を間に合わせるためには、何クロックに１回メモリ１３から画像データを読み出すためにリクエスト調停部１１２に対してリードリクエストを出す必要があるかの必要転送レートＴｅを算出する。そして、優先順位制御部１１１は、後で詳細に説明するように、優先順位変更要否判定部１０５の判定結果に基づいてリクエスト調停部１１２の優先順位を制御する。
【００４０】
アービタ１０２は、図３に示すように、リクエスト調停部１１２と優先順位制御部１１１との間に優先度変更処理部１５０が設けられている。優先度変更処理部１５０は、画像出力制御機能部１０３及び画像処理機能部１０４ａ、１０４ｂの各ＤＭＡＣ１３４、１２３ａ、１２３ｂ、１２４ａ、１２４ｂからのリクエスト要求ラインにアンド回路１５１、１５２ａ、１５２ｂ、１５３ａ、１５３ｂが設けられており、優先順位制御部１１１からの優先度変更要求信号Ｓａ、Ｓｂがそれぞれ各アンド回路１５１、１５２ａ、１５２ｂ、１５３ａ、１５３ｂの他方の入力端子に入力される。各アンド回路１５１、１５２ａ、１５２ｂ、１５３ａ、１５３ｂには、その優先度変更要求信号Ｓａ、Ｓｂの入力される入力端子にＮＯＴ回路が接続されており、優先度変更要求信号Ｓａ、Ｓｂが反転されてアンド回路１５１、１５２ａ、１５２ｂ、１５３ａ、１５３ｂに入力される。
【００４１】
すなわち、優先順位制御部１１１は、画像出力機能部１０３のＲＤＭＡＣ１３４からのリードリクエストを最優先させるときには、画像処理機能部１０４ａ、１０４ｂからのリクエスト（リードリクエスト及びライトリクエスト）をマスクするために、Ｌｏｗの優先度変更要求信号Ｓｂを優先度変更処理部１５０のアンド回路１５２ａ、１５２ｂ、１５３ａ、１５３ｂに出力し、優先度変更処理部１５０が、アンド回路１５２ａ、１５２ｂ、１５３ａ、１５３ｂのＮＯＴ回路でＬｏｗの優先度変更要求信号をＨｉｇｈに反転されて、画像処理機能部１０４ａ、１０４ｂからのリクエストをマスクして、画像出力制御機能部１０３からのリードリクエストのみがリクエスト調停部１１２に入力するようにする。
【００４２】
また、優先順位制御部１１１は、画像出力制御機能部１０３のリクエスト優先順位を下げるときには、Ｌｏｗの優先度変更要求信号Ｓａを優先度変更処理部１５０のアンド回路１５１に出力し、優先度変更処理部１５０で、画像処理出力制御機能部１０３からのリードリクエストをマスクして、画像処理機能部１０４ａ、１０４ｂからのリクエストが画像出力制御機能部１０３からのリードリクエストよりも優先してリクエスト調停部１１２に入力するようにする。
【００４３】
上記優先順位制御部１１１及び優先度変更処理部１５０は、全体として、リクエスト調停部１１２の優先順位を制御する優先順位制御手段として機能している。
【００４４】
そして、リクエスト調停部（アクセス調停手段）１１２は、優先度変更処理部１５０から全てのＤＭＡＣ１２３ａ、１２３ｂ、１２４ａ、１２４ｂ、１３４からリクエストがあるときには、上記３つのＲＤＭＡＣ１２３ａ、１２３ｂ、１３４及び２つのＷＤＭＡＣ１２４ａ、１２４ｂのうちＲＤＭＡＣ１３４を最上位の優先順位をつけて、リクエストの調停を行う。すなわち、ＲＤＭＡＣ１３４は、機械的タイミングによって画像データの転送タイミングが要求される画像形成部２０に画像データを転送するのに、メモリ１３から画像データを適切なタイミングで読み出す必要があるからである。
【００４５】
すなわち、リクエスト調停部１１２は、所定のデータ列からなるデータ群のデータ、本実施例のラインデータからなるページデータを記憶するメモリ１３から、外部である画像形成部２０のＬＤ制御部２１から入力されるデータ転送期間信号であるライン同期信号LSYNCによって決定されるライン同期信号期間内に１ライン分の画像データをＬＤ制御部２１１へデータ転送するとともに、最初のライン同期信号期間においては、ＬＤ制御部２１から入力される転送開始信号である画像先端同期信号FSYNCの次のライン同期信号LSYNCからの１ライン同期信号間隔から１ライン分の画像データを１ライン同期信号間隔の間にラインバッファ１３２に転送する必要のある外部要因アクセス手段であるＲＤＭＡＣ１３４を含む複数のアクセス手段であるＲＤＭＡＣ１２３ａ、１２３ｂ、ＷＤＭＡＣ１２４ａ、１２４ｂからのメモリ１３へのアクセス要求を複数のＲＤＭＡＣ１２３ａ、１２３ｂ、ＷＤＭＡＣ１２４ａ、１２４ｂ及びＲＤＭＡＣ１３４に対して予め設定されている優先順位に基づいて調停する。すなわち、最初のライン同期信号期間においては、画像先端同期信号FSYNCが入力されてから次のライン同期信号LSYNCが入力されるまでの間に、次のライン同期信号期間でＬＤ制御部２１に転送する必要のある１ライン分の画像データをメモリ１３からラインバッファ１３２に転送しておく必要がある。
【００４６】
そして、画像形成装置１は、ＲＯＭ、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory ）、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）、ＣＤ−ＲＷ（Compact Disc Rewritable ）、ＤＶＤ（Digital Versatile Disk）、ＳＤ（Secure Digital）カード、ＭＯ（Magneto-Optical Disc）等のコンピュータが読み取り可能な記録媒体に記録されている本発明のデータ転送方法を実行するデータ転送プログラムを読み込んで、メモリ１３、ＲＯＭ、ハードディスク等に導入することで、後述する優先順位を適切に調整して効率的かつ適切なデータ転送を行うデータ転送方法を実行するデータ転送装置として構築されている。このデータ転送プログラムは、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のレガシープログラミング言語やオブジェクト指向ブログラミング言語等で記述されたコンピュータ実行可能なプログラムであり、上記記録媒体に格納して頒布することができる。
【００４７】
次に、本実施例の作用を説明する。本実施例の画像形成装置１は、ＬＤ制御部２１から非同期で入るライン同期信号LSYNCと画像先端同期信号FSYNCに基づいてＲＤＭＡＣ１３４がリードリクエストをアービタ１０２に発行して、ＬＤ制御部２１で必要とするタイミングに必要とするデータ量の画像データを適切に転送する。
【００４８】
まず、転送データ量監視部１３６がラインバッファ１３２のバッファ・フル（満杯）／バッファ・エンプティ（空）の監視を行ってラインバッファ状態信号を必要転送量計算部１０５に通知し、必要転送量計算部１０５がこのラインバッファ状態信号のみに基づいてリクエスト調停部１１２の優先順位の制御を行う場合のデータ転送処理について説明する。
【００４９】
この場合、優先順位制御部１１１、必要転送量計算部１０５及び転送情報保持部１０６は、図４に示すようにブロック構成される。
【００５０】
必要転送量計算部１０５は、ＮＡＮＤ回路１０５ａを搭載しており、ＮＡＮＤ回路１０５ａには、転送データ量監視部１３６からラインバッファ状態信号が入力される。図４の場合、転送データ量監視部１３６は、画像出力制御機能部１０３の搭載している２つのラインバッファ１３２のそれぞれについてフル状態か否か監視し、フル状態を検出すると、フル状態になったラインバッファ１３２に対応するラインバッファ状態信号をＨｉｇｈにする。すなわち、転送データ量監視部１３６は、２つのラインバッファ１３２のバッファ・フル（満杯）／バッファ・エンプティ（空）を監視し、フル状態になったラインバッファ１３２に対応するラインバッファ状態信号をＬｏｗからＨｉｇｈに切り替えて必要転送量計算部１０５のＮＡＮＤ回路１０５ａに出力する。
【００５１】
必要転送量計算部１０５は、ＮＡＮＤ回路１０５ａに入力されているラインバッファ状態信号の１つでもＨｉｇｈになっていないときには、画像出力制御機能部１０３のＲＤＭＡＣ１３４からのアクセス要求の処理を最優先にすることを要求する高優先度要求を優先順位制御部１１１へ出力する。すなわち、必要転送量計算部１０５は、各ラインバッファ１３２に対応するラインバッファ状態信号に基づいてＲＤＭＡＣ１３４からのリクエスト（アクセス要求）に対する優先順位の変更の要否を判定する優先順位変更要否判定手段として機能している。
【００５２】
優先順位制御部１１１は、図４では、必要転送時間演算部１４１、タイマ１４２及び優先度変更信号生成部１４３等を搭載しているが、ラインバッファ状態信号にのみ基づいてリクエスト調停部１１２の調停するアクセス要求の優先順位を変更制御するときには、必要転送時間演算部１４１及びタイマ１４２は不要であり、これらについては、後で詳細に説明する。
【００５３】
必要転送量計算部１０５のＮＡＮＤ回路１０５には、転送データ量監視部１３６から画像出力制御機能部１０３の搭載している２つのラインバッファ１３２がそれぞれフル状態であるか否かを示すラインバッファ状態信号が各ラインバッファ１３２毎に入力される。すなわち、転送データ量監視部１３６は、２つのラインバッファ１３２のバッファ・フル（満杯）／バッファ・エンプティ（空）を監視して、該フル状態になったラインバッファ１３２に対応するラインバッファ状態信号をＬｏｗからＨｉｇｈに切り替えて必要転送量計算部１０５のＮＡＮＤ回路１０５ａに出力する。
【００５４】
必要転送量計算部１０５は、ＮＡＮＤ回路１０５ａに入力されているラインバッファ状態信号の１つでもＨｉｇｈになっていないときには、高優先度要求を優先順位制御部１１１の優先度変更信号生成部１４３へ出力する。
【００５５】
優先順位制御部１１１は、必要転送量計算部１０５から高優先度要求が優先度変更信号生成部１４３に入力されると、優先度変更信号生成部１４３が、画像出力制御機能部１０３のＲＤＭＡＣ１３４からの処理が最優先で実行されるように、優先度変更要求をリクエスト調停部１１２へ通知する。具体的には、優先度変更信号生成部１４３は、Ｌｏｗの優先度変更要求信号Ｓｂを優先度変更処理部１５０に出力し、優先度変更処理部１５０は、Ｌｏｗの優先度変更要求信号Ｓｂが入力されると、画像出力制御機能部１０３以外の画像処理機能部１０４ａ、１０４ｂからのリクエストをマスクして、画像出力制御機能部１０３からのリクエストのみをリクエスト調停部１１２に出力できるようにする。
【００５６】
このように、本実施例の画像形成装置１は、ＬＤ制御部２１から入力されるライン同期信号LSYNCによって決定されるライン同期信号期間内に１ライン分の画像データをＬＤ制御部２１へデータ転送するとともに、最初のライン同期信号期間においては、ＬＤ制御部２１から入力される画像先端同期信号FSYNCと次のライン同期信号LSYNCとの間の期間に１ライン分のデータを転送する必要のあるＲＤＭＡＣ１３４を含む複数のＤＭＡＣ１２３ａ、１２３ｂ、１２４ａ、１２４ｂからのメモリ１３へのリクエスト（アクセス要求）を複数のＤＭＡＣ１２３ａ、１２３ｂ、１２４ａ、１２４ｂ及びＲＤＭＡＣ１３４に対して予め設定されている優先順位に基づいてリクエスト調停部１１２が調停する際に、最初のライン同期信号期間において画像先端同期信号FSYNC、ライン同期信号期間及びメモリ１３からＬＤ制御部２１へ転送された転送データ量に基づいてライン同期信号期間内に転送の要求されている１ライン分の画像データを転送するのに、必要転送量計算部１０５が、上記優先順位の変更の要否を判定し、優先順位制御部１１１の優先度変更信号生成部１４３及び優先度変更処理部１５０が該判定結果に基づいてリクエスト調停部１１２の優先順位を制御している。
【００５７】
したがって、ＬＤ制御部２１へのデータ転送という外部要因によるメモリ１３へのリクエスト（アクセス要求）に対して、他のリクエストとの優先順位を調整することができ、該外部要因によって求められるデータ量を、転送開始初期からＬＤ制御部２１から要求される期間内に転送することができる。
【００５８】
また、本実施例の画像形成装置１は、画像処理部１１が、ＲＤＭＡＣ１３４がメモリ１３から取得した画像データを１ライン分保管する少なくとも２つのラインバッファ１３２を備え、転送データ量監視部１３６が、それぞれのラインバッファ１３２が満杯であるか否かを監視して満杯であるか否かを示すラインバッファ状態信号を転送データ量として必要転送量計算部１０５に出力して、必要転送量計算部１０５が、各ラインバッファ１３２に対応するラインバッファ状態信号に基づいてＲＤＭＡＣ１３４からのリクエスト（アクセス要求）に対する優先順位の変更の要否を判定している。
【００５９】
したがって、ラインバッファ１３２が満杯か否かの情報のみに基づいてリクエスト調停部１１２の優先順位を制御してデータ転送を行うことができ、簡単な構成で、安価にかつ適切なデータ転送を行うことができる。
【００６０】
さらに、本実施例の画像形成装置１は、必要転送量計算部１０５が、ラインバッファ状態信号が全てのラインバッファ１３２が満杯であることを示すまで、ＲＤＭＡＣ１３４からのリクエスト（アクセス要求）を最優先にする高優先度要求を優先順位制御部１１１の優先度変更信号生成部１４３に出力し、優先度変更信号生成部１４３及び優先度変更処理部１５０が、高優先度要求を受け取ると、ＲＤＭＡＣ１３４からのアクセス要求を最優先に優先順位付けしてリクエスト調停部１１２にリクエストを調停させている。
【００６１】
したがって、ラインバッファ１３２が満杯か否かの情報のみに基づいてリクエスト調停部１１２の優先順位を制御してデータ転送を行うことができ、簡単な構成で、安価にかつより一層適切なデータ転送を行うことができる。
【００６２】
また、画像形成装置１は、転送データ量監視部１３６が転送データ量Ｎｄを出力する場合には、図５に示すように、ブロック構成される。なお、図５においては、図４と同様の構成部分には、同一の符号を付与している。
【００６３】
この場合、必要転送量計算部１０５には、画像先端同期信号監視部１３７からの画像先端同期信号FSYNC、ライン同期信号監視部１３８からのライン同期信号幅Ｔｌ及び転送データ量監視部１３６からの転送データ量Ｎｄが入力される。また、優先順位制御部１１１は、必要転送時間演算部１４１、タイマ１４２及び優先度変更信号生成部１４３を備えており、必要転送時間演算部１４１には、ＲＤＭＡＣ１３４からバースト長ＢＬが入力されるとともに、必要転送レート保持部１０６から必要転送レートＲａが入力されて、タイマ１４２には、ラインスタート信号とラインエンド信号が、それぞれＲＤＭＡＣ１３４から入力される。優先順位制御部１１１は、画像形成部２０で画像形成動作が開始されると、必要転送レート保持部１０６の保持する必要転送レートＲａを利用して、データ転送を間に合わせるためには何クロックに１回メモリ１３に対してリクエストを出す必要があるかの必要転送レートＴｅを算出し、必要転送量計算部１０５に出力する。
【００６４】
必要転送量計算部１０５は、画像先端同期信号FSYNC、ライン同期信号LSYNC、転送データ量Ｎｄ及び優先順位制御部１１１から通知された必要転送レートＴｅに基づいて、画像先端同期信号FSYNCが入力されてから、１ラインで転送すべきデータ量に対して既に転送済みのデータを減算することで、残りデータＮを規定時間（１ライン同期信号期間の残り時間）内に転送ができるか否かを算出する。必要転送量計算部１０５は、時間算出手段、残り転送量算出手段及び判定手段として機能する。
【００６５】
すなわち、必要転送量計算部１０５は、まず、画像先端同期信号FSYNCが入力されてから次のライン同期信号LSYNCが入力されるまでの時間Ｔｄを、次式（１）で算出する。
【００６６】
Ｔｄ＝Ｔｌ−Ｔｆ・・・（１）
１クロック当たりのテータ転送量ｄＮは、データ転送のバス幅から一意に確定できるため、必要転送量計算部１０５は、次式（２）により、次のライン同期信号LSYNCまでに転送可能なデータサイズ（転送可能データサイズ）Ｎｍａｘを算出する。
【００６７】
Ｎｍａｘ＝（Ｔｌ−Ｔｆ）×ｄＮ・・・（２）
そして、必要転送量計算部１０５は、転送する必要のある残りのデータサイズである残りデータ量Ｎを、次式（３）から算出する。
【００６８】
Ｎ＝ＩＷ−Ｎｄ・・・（３）
ここで、ＩＷは、１ラインのデータサイズである。
【００６９】
必要転送量計算部１０５は、上記算出した残りデータ量Ｎと転送可能データ量Ｎｍａｘを比較して、Ｎ＞Ｎｍａｘであると、毎クロック転送したとしても、残りデータ量Ｎのデータを残り時間で転送することができないと判断して、ＣＰＵ１２が動作させるソフトウェアにエラー通知を行なう。
【００７０】
ＣＰＵ１２は、エラー通知があると、操作表示部のディスプレイ等に画像データの転送にエラーが発生した旨の表示等を行うことで、ユーザに対してエラー通知したり、ソフトウェアによって必要な処理を行う。
【００７１】
必要転送量計算部１０５は、Ｎ＞Ｎｍａｘで無い（Ｎ≦Ｎｍａｘ）ときには、転送レートＴｒを次式（４）により算出する。
【００７２】
Ｔｒ＝Ｎｍａｘ／Ｎ（切り上げ）・・・（４）
必要転送量計算部１０５は、転送レートＴｒと優先順位制御部１１１から渡された必要転送レートＴｅを比較して、Ｔｒ＜Ｔｅであると、アービタ１０２が通常の優先順位によってリクエスト調停してデータ転送を行っても、残りデータ量Ｎのデータの転送を適切に転送することができ、優先順位の変更を要求する必要がないと判断して、必要転送量計算部１０５は優先順位制御部１１１に動作させないために、「０」の値（Ｔｒ≠０）の転送レートＴｒを優先順位制御部１１１に出力する。
【００７３】
また、必要転送量計算部１０５は、Ｔｒ＞Ｔｅであると、アービタ１０２が通常の優先順位によってリクエスト調停してデータ転送を行うと、残りデータ量Ｎのデータの転送が間に合わないと判断して、算出した転送レートＴｒの値を優先順位制御部１１１の優先度変更信号生成部１４３に出力する。
【００７４】
優先順位制御部１１１は、必要転送量計算部１０５から「０」以外の転送レートＴｒ（Ｔｒ≠０）を受け取ると、必要転送時間演算部１４１が、該転送レートＴｒ値から優先度変更要求の発生タイミングを算出して、優先度変更信号生成部１４３に出力し、優先度変更信号生成部１４３が該優先度変更要求発生タイミングに応じて優先度変更要求信号を優先度変更処理部１５０へ出力する。具体的には、優先度変更信号生成部１４３は、転送レートＴｒから算出された優先度変更要求発生タイミング毎に、Ｌｏｗの優先度変更要求信号Ｓｂを優先度変更処理部１５０に出力し、優先度変更処理部１５０は、Ｌｏｗの優先度変更要求信号Ｓｂが入力されると、画像出力制御機能部１０３以外の画像処理機能部１０４ａ、１０４ｂからのリクエストをマスクして、画像出力制御機能部１０３からのリクエストのみをリクエスト調停部１１２に出力できるようにする。
【００７５】
このように、本実施例の画像形成装置１は、必要転送量計算部１０５が、ライン同期信号監視部１３８の取得したライン同期信号期間と画像先端同期信号FSYNCからの経過時間に基づいて現時点でのライン同期信号期間の残り時間を算出し、転送データ量監視部１３６の取得した転送データ量から現時点でのライン同期信号期間においてラインバッファ１３２へ転送を必要とする残り転送データ量Ｎを算出して、該残り時間と該残り転送データ量Ｎに基づいて優先順位の変更を行うことなく該残り時間に該残り転送データ量Ｎのデータを転送可能か否か判定して、該残り時間に該残り転送データ量Ｎの転送が不可能であると判定すると、該残り時間に該残り転送データ量Ｎのデータ転送が可能になるまで、ＲＤＭＡＣ１３４かのアクセス要求を最優先にする高優先度要求を優先順位制御部１１１に出力している。
【００７６】
したがって、ラインバッファ１３２の監視を細かく行って優先度変更を細かく調整することができ、該外部要因によって求められるデータ量を、転送開始初期からＬＤ制御部２１から要求される期間内により確実に転送することができる。
【００７７】
また、本実施例の画像形成装置１は、優先順位制御部１１１の必要転送時間演算部１４１が、ライン同期信号期間に１ライン分の画像データを通常の優先順位で転送するのにＲＤＭＡＣ１３４が単位時間当たりに発行すべきアクセス要求の回数を基準アクセス率である必要転送レートＴｅとして算出し、必要転送量計算部１０５が、前記残り時間の間に前記残り転送データ量Ｎのデータを転送するのに必要なＲＤＭＡＣ１３４が単位時間当たりに発行すべきアクセス要求回数を残アクセス率である転送レートＴｒとして算出して、該転送レートＴｒと必要転送レートＴｅを比較して、該残り時間に該残り転送データ量Ｎを転送可能か否か判定している。
【００７８】
したがって、優先度変更をより一層細かく調整することができ、該外部要因によって求められるデータ量を、転送開始初期からＬＤ制御部２１から要求される期間内により確実に転送することができる。
【００７９】
また、本実施例の画像形成装置１は、必要転送量計算部１０５が、ＲＤＭＡＣ１３４の優先順位を上げても残り時間内に残り転送データ量Ｎのデータの転送が不可能であると判定すると、エラー通知を発生している。
【００８０】
したがって、物理的にデータ転送が間に合わないことを、ソフトウェアに知らせることができ、また、ユーザに通知することができ、適切な対応を速やかにとることができる。  さらに、本実施例の画像形成装置１は、ラインバッファ１３２の状態に応じて優先度変更を行う場合、図６に示すようにブロック構成される。なお、図６において、図４と同様の構成部分には、同一の符号を付している。
【００８１】
図６において、必要転送量計算部１０５には、転送データ量監視部１３６から画像出力制御機能部１０３の搭載している２つのラインバッファ１３２がそれぞれフル状態であるか否かを示すラインバッファ状態信号が各ラインバッファ１３２毎に入力される。すなわち、転送データ量監視部１３６は、２つのラインバッファ１３２のバッファ・フル（満杯）／バッファ・エンプティ（空）を監視して、該フル状態になったラインバッファ１３２に対応するラインバッファ状態信号をＬｏｗからＨｉｇｈに切り替えて必要転送量計算部１０５のＮＡＮＤ回路１０５ａに出力する。
【００８２】
優先順位制御部１１１は、必要転送時間演算部１４１、タイマ１４２及び優先度変更信号生成部１４３を備えており、優先順位制御部１１１には、ＲＤＭＡＣ１３４からバースト長ＢＬ、ラインスタート信号及びラインエンド信号が入力される。
【００８３】
必要転送量計算部１０５は、ラインバッファ１３２の一方のみがフルの場合、ラインバッファ１３２を満たすのに必要なデータ量（ラインバッファ用残りデータ量）Ｄｚを算出して、優先順位制御部１１１に優先度変更要求とともに通知する。
【００８４】
優先順位制御部１１１は、優先度変更要求とともにラインバッファ用残りデータ量Ｄｚが通知されると、必要転送時間演算部１４１が、通知された該ラインバッファ用残りデータ量Ｄｚと次のラインデータ量である１ラインのデータサイズＩＷを加算した転送データ量から該残りデータＤｚと次ラインデータＩＷを加算したデータを転送するのに必要な単位時間当たりの転送データ量（以下、必要転送量という。）Ｄ２を、次式（５）により算出する。
【００８５】
Ｄ２＝（Ｄｚ＋ＩＷ）／Ｒａ・・・（５）
ここで、Ｒａは、必要転送レート保持部１０６から取得した必要転送レートである。
【００８６】
そして、必要転送時間演算部１４１は、現在の単位時間当たりの転送データ量（以下、現在転送量という。）Ｄ１を、次式（６）により算出する。
【００８７】
Ｄ１＝（ΣＢＬ（ｋ）×ＢＷ）／Ｒｂ・・・（６）
ここで、ＢＬは、バースト長、ｋは、データ要求数、ＢＷは、バス幅、Ｒｂは、データ転送が始まってからの時間である。
【００８８】
必要転送時間演算部１４１は、必要転送量Ｄ２と現在転送量Ｄ１を比較して、Ｄ１＜Ｄ２であると、アービタ１０２が通常の優先順位によってリクエスト調停してデータ転送を行うと、データ転送が間に合わないと判断して、優先度変更信号生成部１４３に優先度変更要求を行い、優先度変更信号生成部１４３が、画像出力制御機能部１０３のＲＤＭＡＣ１３４からの処理が最優先で実行されるように、Ｌｏｗの優先度変更要求信号Ｓｂを優先度変更処理部１５０へ出力する。また、必要転送時間演算部１４１は、必要転送量Ｄ２と現在転送量Ｄ１を比較して、Ｄ１＞Ｄ２であると、優先度変更を行わなくても、データ転送は間に合うが、優先度を一時的に下げるように優先度変更信号生成部１４３に通知し、優先度変更信号生成部１４３が、画像出力制御機能部１０３のＲＤＭＡＣ１３４からの処理よりも画像処理機能部１０４ａ、１０４ｂのＤＭＡＣ１２３ａ、１２３ｂ、１２４ａ、１２４ｂからの処理が優先して実行されるように、Ｌｏｗの優先度変更要求信号Ｓａを優先度変更処理部１５０へ出力してもよい。さらに、必要転送時間演算部１４１は、必要転送量Ｄ２と現在転送量Ｄ１を比較して、Ｄ１＝Ｄ２であると、優先度変更信号生成部１４３への優先度変更要求を行わない。
【００８９】
このように、本実施例の画像形成装置１は、ラインバッファ１３２のフル情報に基づいて、細かく優先順位の制御を行うことができ、該外部要因によって求められるデータ量を、転送開始初期からＬＤ制御部２１から要求される期間内により安価にかつより確実に転送することができる。
【００９０】
また、本実施例の画像形成装置１は、優先順位制御部１１１は、必要転送量計算部１０５の判定結果に基づいて、リクエスト調停部１１２に対して、ＲＤＭＡＣ１３４の優先順位を最高優先順位に上げる外部最高優先順位制御、ＲＤＭＡＣ１３４の優先順位を下げる外部低優先順位制御、ＲＤＭＡＣ１３４の優先順位を不変とする不変優先順位制御のいずれかを実行している。
【００９１】
したがって、リクエスト調停部１１２の優先度順位をきめ細かく制御することができ、より一層効率的にデータ転送を制御することができる。
【００９２】
さらに、本実施例の画像形成装置１は、外部としての画像形成部２０から入力されるライン同期信号LSYNCをデータ転送期間信号とし、画像形成部２０から入力される画像先端同期信号FSYNCを前記転送開始信号として、ＲＤＭＡＣ１３４が、リードリクエスト（リードアクセス要求）を所定間隔毎に発行して、メモリ１３の画像データを読み取って画像形成部２０に転送している。
【００９３】
したがって、画像出力制御機能部１０３に外部である画像形成部２０からのリード周期とは非同期の要求に応じて、ライト同期信号期間に適切に１ライン分の画像データを転送することができるとともに、特に、１ページの先頭の画像先端同期信号FSYNCから次のライン同期信号LSYNCまでの間に、リクエスト調停部１１２の優先順位を必要に応じて変更して、適切に１ライン分の画像データを転送することができる。
【００９４】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記実施例で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００９５】
本発明は、外部要因によって発生するデータ転送要求を外部要因で決められるデータ転送期間に決められたデータ量のデータを転送する画像形成装置、コンピュータ等の情報処理装置に適用されるデータ転送装置、データ転送方法、データ転送プログラム及び記録媒体に利用することができる。
【符号の説明】
【００９６】
１  画像形成装置
１０  本体部
１１  画像処理部
１２  ＣＰＵ
１３  メモリ
２０  画像書き込み部
２１  ＬＤ制御部
２２  ＣＰＵ
２３  ＬＤモジュール
１０１  メモリＩ／Ｆ
１０２  アービタ
１０３  画像出力制御機能部
１０４ａ、１０４ｂ  画像処理機能部
１０５  必要転送量計算部
１０６  必要転送レート保持部
１１１  優先順位制御部
１１２  リクエスト調停部
１２１ａ、１２１ｂ  画像処理ユニット
１２２ａ、１２２ｂ  レジスタ
１２３ａ、１２３ｂ  ＲＤＭＡＣ
１２４ａ、１２４ｂ  ＷＤＭＡＣ
１３１  出力Ｉ／Ｆ
１３２  ラインバッファ
１３３  画像処理部
１３４  ＲＤＭＡＣ
１３５  起動制御部
１３６  転送データ量監視部
１３７  画像先端同期信号監視部
１３８  ライン同期信号監視部
１３９  レジスタ
１４１  必要転送時間演算部
１４２  タイマ
１４３  優先度変更信号生成部
１５０  優先度変更処理部
１５１、１５２ａ、１５２ｂ、１５３ａ、１５３ｂ  アンド回路
Ｒａ  必要転送レート情報
ＢＬ  バースト長
【先行技術文献】
【特許文献】
【００９７】
【特許文献１】特開２００９−９８７２９号公報
【図１】
2011182369.tif 000003
【図２】
2011182369.tif 000004
【図３】
2011182369.tif 000005
【図４】
2011182369.tif 000006
【図５】
2011182369.tif 000007
【図６】
2011182369.tif 000008
【図７】
2011182369.tif 000009