JP2005115464A - データ処理装置およびデータ制御ユニット - Google Patents
データ処理装置およびデータ制御ユニット Download PDFInfo
- Publication number
- JP2005115464A JP2005115464A JP2003345836A JP2003345836A JP2005115464A JP 2005115464 A JP2005115464 A JP 2005115464A JP 2003345836 A JP2003345836 A JP 2003345836A JP 2003345836 A JP2003345836 A JP 2003345836A JP 2005115464 A JP2005115464 A JP 2005115464A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- data
- devices
- transfer
- selection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
【課題】 局所的な転送レートの低下やデバイス間での転送量の偏りを招くことなく、複数のデバイスが1つのバスを介してデータを転送できるようにすること。
【解決手段】 バス終了状態監視部604は、マスタデバイス(DMA制御部610,611内に備わる計8つのDMAC(図示省略)のいずれか1)によるPCIバス207を介したデータ転送についてのトランザクションがどのような要因によって終了したのかを特定し、履歴保持部620に蓄積する。アービター606は、受信した内部リクエストの送信元となる各DMACに対してPCIバス207を使用する優先順位を定めたアービトレーション順位や保留リクエストと、バス終了状態監視部604から通知される各トランザクションの終了要因の履歴とに基づいて、PCIバス207の使用を許可する内部リクエストを選択する。
【選択図】 図3
【解決手段】 バス終了状態監視部604は、マスタデバイス(DMA制御部610,611内に備わる計8つのDMAC(図示省略)のいずれか1)によるPCIバス207を介したデータ転送についてのトランザクションがどのような要因によって終了したのかを特定し、履歴保持部620に蓄積する。アービター606は、受信した内部リクエストの送信元となる各DMACに対してPCIバス207を使用する優先順位を定めたアービトレーション順位や保留リクエストと、バス終了状態監視部604から通知される各トランザクションの終了要因の履歴とに基づいて、PCIバス207の使用を許可する内部リクエストを選択する。
【選択図】 図3
Description
本発明は、バスを介したデータ転送を制御するための技術に関する。
複写機等の画像処理装置において、カラー化、高画質化、高速化等のニーズに対処するためには、画像データの処理速度を向上させる必要がある。例えば、解像度を2倍に上げると画像データの量は4倍に増え、モノクロからカラーになると画像データの量が最大で32倍に増加する。また、処理速度を2倍に引き上げるためには、例えば、画像データの転送レートを2倍に上げることが求められる。
また、レーザを用いて感光体ドラムや感光体ベルトに画像を形成し、当該画像を用紙に転写する場合、印刷動作が一旦開始されてしまうとその動作を途中で止めることは難しく、画像データの転送が遅れてしまうと正常な画像を印刷できなくなってしまう。
このため複写機等の画像処理専用機では、例えば、画像データの転送性能が向上するように画像処理専用のASIC(Application Specific Integrated Circuit)を設計したり、画像データ転送用の専用バスを設ける等して画像データを高速に転送できるようにしていた。また、画像入力部や画像出力部にページバッファを設け、同一ページ内での局所的なデータ転送の速度差を吸収し、平均的な転送レートを確保できるようにしていた。しかしながら、これらの技術はいずれも専用のハードウェアが必要となり、汎用性に欠けるとともに装置のコストアップを招いてしまう。
一方、近年では、パーソナルコンピュータ等の汎用コンピュータにおいて、PCI(Peripheral Component Interconnect)バスの拡張スロットに画像入力用および画像出力用のインタフェイスを装着するとともに、この汎用コンピュータに画像入力装置と画像出力装置を接続し、複写機等の画像処理装置として用いることが提案されている(例えば、特許文献1参照)。
しかしながら、汎用コンピュータにおいては、PCIバスに接続されたデバイスの他、ハードディスク、USBデバイス、ネットワークデバイス、CPU等の各種のデバイスに対してデータ転送の機会を公平に振り分けなければならないため、PCIバスを介した画像データの転送性能だけを高めることが困難であった。
以下に、パーソナルコンピュータ(以下、「PC」と略称する)のPCI拡張スロットに画像入力用および画像出力用のインタフェイスの機能を有するPCIデバイスを装着するとともに、このPCにスキャナとプリンタを接続し、複写機として用いる場合について図10〜図12を参照して説明する。
図10は、PC20のハードウェア構成を例示するブロック図である。同図において、201はCPU、202はメモリブリッジ、203はシステムメモリ、204は、各種の周辺機器との間でデータを送受信するためのインタフェイスを備えたIO(Input Output)ブリッジ、205はPCI拡張スロット、206は、PCI拡張スロット205に装着されPCIバス207に接続されたPCIデバイスである。なお、図示を省略しているが、PCIデバイス206にはスキャナとプリンタが接続されている。
このようなPC20とスキャナとプリンタとにより構成される画像処理システムを用いて原稿のコピーをとる場合、スキャナによって原稿から読み取られた画像データは、PCIデバイス206、PCIバス207、IOブリッジ204およびメモリブリッジ202を介してシステムメモリ203に記憶された後、システムメモリ203から読み出されてメモリブリッジ202、IOブリッジ204、PCIバス207およびPCIデバイス206を介してプリンタへ転送され、用紙に印刷される。
次に、図11は、PCIデバイス206のハードウェア構成を例示するブロック図である。画像入力I/F(インタフェイス)部1107と画像出力I/F部1108には、色成分毎にDMAC(Direct Memory Access Controller)1103〜1106が設けられている。各DMAC1103〜1106は、例えば、システムメモリ203との間でDMA転送を行う場合に、PCIバス207の使用を求めるリクエスト信号をアービター1102へ送信する。
アービター1102は、DMAC1103〜1106から受信したリクエスト信号と、予め定められたアービトレーションルールとに基づいて、各DMAC1103〜1106に対してPCIバス207を使用する優先順位を設定するとともに、当該優先順位に従って各DMAC1103〜1106に対し、PCIバス207の使用を順次許可していく。また、PCIコントローラ1101は、アービター1102によるアービトレーション(調停)の結果等に基づいて、各DMAC1103〜1106によるPCIバス207を介したDMA転送を制御する。
ここで、システムメモリ203に対するアクセスがPCIデバイス206のみであった場合は何ら問題は生じない。しかしながら、PCIデバイス206からシステムメモリ203へのアクセスが、ハードディスク、USBデバイス、CPU201等の他のデバイスによるシステムメモリ203へのアクセスと競合した場合等、システムメモリ203へのアクセストラフィックが増大している場合、前述したように、PC20では全てのデバイスに対してデータ転送の機会を公平に振り分けているため、PCIデバイス206からのアクセスが長期間に渡って滞ってしまう場合がある。
例えば、PCIデバイス206においてPCIバス207の使用がDMAC1105に対して許可され、図12(a)に示すように、DMAC1105からのメモリリードコマンドが送信された後、当該コマンドに従ってシステムメモリ203からデータが読み出されるまでに比較的長いウエイト時間が存在する場合、PCIバス207をDMAC1105が占有し続けてしまうと、その間、PCIデバイス206内の他のDMAC1103,1104,1106や、別のPCI拡張スロット205に装着された他のPCIデバイスがPCIバス207を使用することができない。
このため、図12(a)に示したようにメモリアクセスに時間がかかる場合、IOブリッジ204は、PCIバス207を使用しているマスタデバイス(PCIデバイス206またはDMAC1105)に対し、実行中のデータ転送に関する処理の再実行を求めるリトライ応答を送信することができる。IOブリッジ204からリトライ応答を受信したマスタデバイスは、図12(b)に示すように、実行中のデータ転送を一旦終了し、しばらく待機した後に、このデータ転送を再び開始する。これにより、マスタデバイスがデータ転送を一旦終了して待機している間に、他のデバイスがPCIバス207を使用できるようになる。
なお、バスを介したデータ転送についてリトライが発生した場合に、リトライを受けたデータ転送が次に許可されるまでの時間(ディレイドタイム値)を予測してリトライ応答とともにPCIバスマスタへ通知し、PCIバスマスタは、通知されたディレイドタイム値によって示される時間だけ待機した後、データ転送を再び開始するようにしたコンピュータシステムがある(例えば、特許文献2参照)。
ところで、前述したように、システムメモリ203へのアクセスが混み合っている場合や、PCIバス207を介して転送されるデータ量が画像データのように比較的多く、PCIバス207の占有時間が比較的長時間に渡る場合は、リトライの発生する割合が高くなる。このため、リトライが発生した場合の対応としてPCIデバイス206において以下に示す(方法1)または(方法2)をとることが考えられる。
(方法1)
リトライを受けたマスタデバイスのPCIバス207を使用する優先順位を変更せず、このマスタデバイスについてのデータ転送を再度実行する。
(方法2)
リトライを受けたマスタデバイスのPCIバス207を使用する優先順位を最下位に変更し、次に優先順位の高いマスタデバイスについてのデータ転送に移行する。
リトライを受けたマスタデバイスのPCIバス207を使用する優先順位を変更せず、このマスタデバイスについてのデータ転送を再度実行する。
(方法2)
リトライを受けたマスタデバイスのPCIバス207を使用する優先順位を最下位に変更し、次に優先順位の高いマスタデバイスについてのデータ転送に移行する。
これらの(方法1)および(方法2)は、画像データの転送を優先する画像処理専用機においては、リトライの発生頻度が比較的低い水準に抑えられるのでそれほど問題にならない。しかしながら、全てのデバイスに対してデータ転送の機会を公平に振り分ける汎用コンピュータにおいては、画像データの転送に際してリトライが多発してしまい、以下に述べるような問題が生じてしまう。
すなわち、(方法1)の場合、リトライを受けたマスタデバイスのデータ転送が完了するまで、他のマスタデバイスのデータ転送が開始できない。したがって、図13(a)に示すように、リトライを受けたDMAC1のデータ転送が完了するまでDMAC2等の他のDMACのデータ転送が行えず、局所的にデータの転送レートが低下してしまう。また、(方法2)の場合、リトライを受けたマスタデバイスのデータ転送は、このマスタデバイスに対して次にPCIバス207の使用が許可されるまで保留されるから、図13(b)に示すように、リトライを受けたDMAC1と、他のDMAC2,3とのデータの転送量に偏りが生じてしまう。
このように、局所的にデータの転送レートが低下してしまったり、複数のデバイス間でデータの転送量に偏りが生じてしまうと、画像の読み取り時や印刷時に、色成分毎にデータの転送量の偏りが発生してしまったり、規定時間内に画像データの転送を完了できなくなるから、正常な画像読み取り結果や正常な印刷結果を得られなくなるおそれがある。また、特許文献2に記載された技術によれば、PCIバスマスタは、ディレイドタイム値によって示される時間が経過するまでデータ転送を再開することがないので、PCIバスマスタからバスへの無駄なアクセスを省くことができるが、上述した局所的な転送レートの低下やデバイス間での転送量の偏りといった問題を解消することはできない。
本発明は、以上説明した事情に鑑みてなされたものであり、その目的は、局所的な転送レートの低下やデバイス間での転送量の偏りを招くことなく、複数のデバイスが1つのバスを介してデータを転送できるようにすることである。
上記課題を解決するために、本発明は、バスと、
前記バスを介してデータを送信または受信するデバイスであって、前記送信または受信を行う場合に前記バスの使用を求めるリクエスト信号を送信する複数のデバイスと、
受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する設定手段と、
前記各デバイスによる前記バスを介したデータの送信または受信を終了させた要因を特定する特定手段と、
前記特定手段により特定された要因を前記各デバイス毎に蓄積する蓄積手段と、
前記設定手段により設定された前記各デバイスの優先順位と、前記蓄積手段に前記各デバイス毎に蓄積された要因とに基づいて、前記各デバイスのうち前記バスの使用を許可するデバイスを選択する選択手段と、
前記選択手段により選択されたデバイスによる前記バスを介したデータの送信または受信を制御する制御手段と
を備えるデータ処理装置を提供する。
前記バスを介してデータを送信または受信するデバイスであって、前記送信または受信を行う場合に前記バスの使用を求めるリクエスト信号を送信する複数のデバイスと、
受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する設定手段と、
前記各デバイスによる前記バスを介したデータの送信または受信を終了させた要因を特定する特定手段と、
前記特定手段により特定された要因を前記各デバイス毎に蓄積する蓄積手段と、
前記設定手段により設定された前記各デバイスの優先順位と、前記蓄積手段に前記各デバイス毎に蓄積された要因とに基づいて、前記各デバイスのうち前記バスの使用を許可するデバイスを選択する選択手段と、
前記選択手段により選択されたデバイスによる前記バスを介したデータの送信または受信を制御する制御手段と
を備えるデータ処理装置を提供する。
本発明によれば、データ処理装置は、各デバイスによるバスを介したデータの送信または受信を終了させた要因を特定して当該要因を各デバイス毎に蓄積し、各デバイスに対して設定されたバスを使用する優先順位と、各デバイス毎に蓄積された要因とに基づいて、バスの使用を許可するデバイスを選択する。
また、本発明は、コンピュータ内のバスに接続され、前記コンピュータへのデータの入力または前記コンピュータからのデータの出力を制御するデータ制御ユニットにおいて、
前記コンピュータへデータを入力するためのデバイスまたは前記コンピュータからデータを出力するためのデバイスであって、前記入力または出力を行う場合に前記バスの使用を求めるリクエスト信号を送信する複数のデバイスと、
受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する設定手段と、
前記各デバイスによる前記バスを介したデータの入力または出力を終了させた要因を特定する特定手段と、
前記特定手段により特定された要因を前記各デバイス毎に蓄積する蓄積手段と、
前記設定手段により設定された前記各デバイスの優先順位と、前記蓄積手段に前記各デバイス毎に蓄積された要因とに基づいて、前記各デバイスのうち前記バスの使用を許可するデバイスを選択する選択手段と、
前記選択手段により選択されたデバイスによる前記バスを介したデータの入力または出力を制御する制御手段と
を備えるデータ制御ユニットを提供する。
前記コンピュータへデータを入力するためのデバイスまたは前記コンピュータからデータを出力するためのデバイスであって、前記入力または出力を行う場合に前記バスの使用を求めるリクエスト信号を送信する複数のデバイスと、
受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する設定手段と、
前記各デバイスによる前記バスを介したデータの入力または出力を終了させた要因を特定する特定手段と、
前記特定手段により特定された要因を前記各デバイス毎に蓄積する蓄積手段と、
前記設定手段により設定された前記各デバイスの優先順位と、前記蓄積手段に前記各デバイス毎に蓄積された要因とに基づいて、前記各デバイスのうち前記バスの使用を許可するデバイスを選択する選択手段と、
前記選択手段により選択されたデバイスによる前記バスを介したデータの入力または出力を制御する制御手段と
を備えるデータ制御ユニットを提供する。
本発明によれば、データ制御ユニットは、各デバイスによるバスを介したデータの入力または出力を終了させた要因を特定して当該要因を各デバイス毎に蓄積し、各デバイスに対して設定されたバスを使用する優先順位と、各デバイス毎に蓄積された要因とに基づいて、バスの使用を許可するデバイスを選択する。
本発明によれば、局所的な転送レートの低下やデバイス間での転送量の偏りを招くことなく、複数のデバイスが1つのバスを介してデータを転送することができる。
以下、図面を参照して本発明の実施形態について説明する。
[A−1.実施形態の構成]
図1は、本発明を適用したデジタル複写機101のハードウェア構成を例示するブロック図である。同図において、102は、画像データを記憶するためのメモリ(図示省略)を備えた画像データ処理装置、103は原稿の読み取りを行うスキャン装置、104は画像データを用紙等の印刷媒体に印刷するプリント装置である。このデジタル複写機101を用いて原稿のコピーをとる場合、スキャン装置103により読み取られた原稿の画像データは、画像データ処理装置102内のメモリに転送されて記憶された後、当該メモリから読み出されてプリント装置104へと転送され、用紙に印刷される。
[A−1.実施形態の構成]
図1は、本発明を適用したデジタル複写機101のハードウェア構成を例示するブロック図である。同図において、102は、画像データを記憶するためのメモリ(図示省略)を備えた画像データ処理装置、103は原稿の読み取りを行うスキャン装置、104は画像データを用紙等の印刷媒体に印刷するプリント装置である。このデジタル複写機101を用いて原稿のコピーをとる場合、スキャン装置103により読み取られた原稿の画像データは、画像データ処理装置102内のメモリに転送されて記憶された後、当該メモリから読み出されてプリント装置104へと転送され、用紙に印刷される。
なお、原稿の読み取りに関する処理が完全に終わり、読み取った画像データの全てがメモリに蓄積された後、プリント装置104へ画像データを転送して印刷を行うことも可能であるが、本実施形態では、原稿の読み取りに関する処理と、読み取った画像データの印刷に関する処理とが並行して行われるものとする。
図2は、画像データ処理装置102のハードウェア構成を例示するブロック図である。なお、前述した図10と共通する部分には同一の符号を付し、その説明を省略する。同図において、506は画像データ入出力装置、507はHDD(ハードディスクドライブ)である。画像データ入出力装置506は、PCI拡張スロット205に装着され、PCIバス207に接続されるPCIデバイスであって、図1に示したスキャン装置103とプリント装置104に接続されている。この画像データ入出力装置506がPCIバスマスタとなり、スキャン装置103によって読み取られた画像データのシステムメモリ203へのDMA転送や、システムメモリ203に記憶された画像データのプリント装置104へのDMA転送を制御する。
図3は、画像データ入出力装置506のハードウェア構成を例示するブロック図である。同図において、601は、PCIバス207を介したデータの送受信を制御するバス制御装置、602は、PCIバス207のインタフェイス制御を行うPCIインタフェイス制御部、603は内部レジスタである。また、604は、PCIバス207のターミネーション状態を監視するバス終了状態監視部であって、PCIバス207を介したデータの転送について、マスタデバイス(DMA制御部610,611内に備わる計8つのDMAC(図示省略)のいずれか1)のトランザクションがどのような要因によって終了したのかを特定する。620は、バス終了状態監視部604によって特定されたトランザクションの終了要因をトランザクション毎に蓄積し、終了要因の履歴を保持する履歴保持部である。また、605は、バースト転送を行う際のバースト長を制御するバースト長制御部である。
606はアービター、607は内部レジスタ、608は、DMA制御部610,611から受信した複数の内部リクエストに対してPCIバス207を使用する優先順位を定めたアービトレーション順位や保留リクエストと、バス終了状態監視部604から通知される各トランザクションの終了要因の履歴とに基づいて、PCIバス207の使用を許可する内部リクエストを選択するリクエスト選択部である。また、609は、DMA制御部610,611との間で送受信されるデータをリクエスト選択部608の選択結果に応じて切替えるデータ制御部である。
610は、画像データをプリント装置104へ出力するためのDMA制御部であり、内部には色成分毎にDMACが設けられている。また、611は、スキャン装置103からの画像データを入力するためのDMA制御部であり、DMA制御部610と同様、内部には色成分毎にDMACが設けられている。なお、本実施形態において、デジタル複写機101により取り扱われる画像データは、Y(Yellow)、M(Magenta)、C(Cyan)、K(Black)の計4色の色成分を持ち、DMA制御部610,611には、それぞれ各色成分用の4つのDMACが備わっている。また、各DMACには、先頭アドレスレジスタや総転送データ量レジスタ、連続して転送すべきデータ量を示す転送単位サイズレジスタ等、DMA転送に必要な情報を格納するための各種のレジスタが設けられている。
612〜615は各色成分毎に設けられたプリントI/F部であり、616〜619は各色成分毎に設けられたスキャンI/F部である。これらのプリントI/F部612〜615およびスキャンI/F部616〜619は、それぞれ内部バッファを備えている。
なお、バス制御装置601の履歴保持部620には、例えば、図4に示すように、DMA制御部610,611から受信した内部リクエストについて、この内部リクエストにより開始されたトランザクションの終了要因が「今回」と「前回」の過去2回分に渡って格納されるとともに、後述する再送ビットおよび保留モードビットの値が格納される。また、同図に示すように、トランザクションの終了要因には、「転送完了」、「リトライ」、「ディスコネクト」がある。
ここで、「転送完了」は、トランザクションを最後まで終え、予定していたデータ転送が最後まで完了した状態を示すものである。また、「リトライ」は、画像データ入出力装置506がトランザクションの途中でIOブリッジ204からリトライ応答を受信し、予定していたデータ転送を行うことなく中断したことを、また、「ディスコネクト」は、トランザクションの途中でPCIバス207等においてコネクションが切断され、予定していたデータ転送を最後まで終えることなく中断したことを示すものである。
また、アービター606の内部レジスタ607には、図7の「状態1」〜「状態3」に示すように、複数の内部リクエストに対してPCIバス207を使用する優先順位を定めたアービトレーション順位を示す情報と、保留されている内部リクエストを示す情報とが格納されている。
[A−2.実施形態の動作]
まず、図2および図3を参照して、原稿の読み取りに際して行われるDMA転送処理と、読み取った画像データの印刷に際して行われるDMA転送処理の動作について説明する。デジタル複写機101に対して原稿をコピーする旨の指示が入力されると、まず、画像データ入出力装置506のデバイスドライバが起動される。このデバイスドライバは、DMA転送を行うために必要な情報等を設定するソフトウェアであって、例えば、用紙サイズの情報等に基づいて、DMA制御部610,611内の各DMACに備わる先頭アドレスレジスタや総転送データ量レジスタに、転送先のメモリの先頭アドレスや総転送データ量を設定するとともに、転送単位サイズレジスタに、連続して転送すべきデータ量を設定する。その後、DMA制御部611内の各DMACが起動され、スキャン装置103に対して原稿の読み取りが指示される。スキャン装置103によって読み取られた画像データは、色成分毎に該当するスキャンI/F部616〜619の内部バッファに順次蓄積される。また、画像データが内部バッファに蓄積されると、DMA制御部611内の各DMACから内部リクエスト信号がアービター606へ送信される。
まず、図2および図3を参照して、原稿の読み取りに際して行われるDMA転送処理と、読み取った画像データの印刷に際して行われるDMA転送処理の動作について説明する。デジタル複写機101に対して原稿をコピーする旨の指示が入力されると、まず、画像データ入出力装置506のデバイスドライバが起動される。このデバイスドライバは、DMA転送を行うために必要な情報等を設定するソフトウェアであって、例えば、用紙サイズの情報等に基づいて、DMA制御部610,611内の各DMACに備わる先頭アドレスレジスタや総転送データ量レジスタに、転送先のメモリの先頭アドレスや総転送データ量を設定するとともに、転送単位サイズレジスタに、連続して転送すべきデータ量を設定する。その後、DMA制御部611内の各DMACが起動され、スキャン装置103に対して原稿の読み取りが指示される。スキャン装置103によって読み取られた画像データは、色成分毎に該当するスキャンI/F部616〜619の内部バッファに順次蓄積される。また、画像データが内部バッファに蓄積されると、DMA制御部611内の各DMACから内部リクエスト信号がアービター606へ送信される。
アービター606の内部レジスタ607には、図7に示すように、DMA制御部610,611から受信した複数の内部リクエストに対してPCIバス207を使用する優先順位を定めたアービトレーション順位や保留リクエストを示す情報が格納されている。また、履歴保持部620には、DMA制御部610,611から受信した内部リクエスト毎に、この内部リクエストに応じて実行されるトランザクションの終了要因、再送ビットや保留モードビットの値が記憶されており、これらの情報が必要に応じてバス終了状態監視部604からリクエスト選択部608へ通知される。
リクエスト選択部608は、内部レジスタ607に格納されている情報と、バス終了状態監視部604から通知される情報とに基づいて、PCIバス207の使用を許可する内部リクエストを選択してPCIインタフェイス制御部602にリクエスト信号を送信する。なお、内部リクエストのアービトレーションについては、後に詳細に説明を行うものとする。また、アービトレーション順位については、特定の内部リクエストに対してより高いプライオリティ(優先権)を与えることも可能であるが、本実施形態では、全ての内部リクエストに対して同じプライオリティが与えられ、ラウンドロビン方式でアービトレーションが行われる場合について説明する。
まず、リクエスト選択部608により選択された内部リクエストの送信元となるDMACがマスタデバイスとなる。以降、本明細書では、マスタデバイスとなったDMACを、他のDMACと区別するため「マスタDMAC」と記載する。マスタDMACは、先頭アドレスレジスタに格納されている先頭アドレスを示す情報(Address)や、転送単位サイズレジスタに格納されている連続して転送すべきデータ量を示す情報(Size)を出力する。Addressは、アービター606を経由してバス制御部601のPCIインタフェイス制御部602に入力され、また、Sizeは、アービター606を経由してバス制御部601のバースト長制御部605に入力される。
また、PCIインタフェイス制御部602は、リクエスト選択部608からリクエスト信号を受信すると、PCIバス207の使用を求めるリクエスト信号をPCIバス207へ送信する。そして、PCIインタフェイス制御部602は、PCIバス207の使用が許可されたことを示すバスグラント信号をPCIバス207から受信すると、マスタDMACから受信したAddressやSizeを用いて、マスタDMACによるPCIバス207を介したデータ転送についてのトランザクションを開始し、マスタDMACからシステムメモリ203へのDMA転送を制御する。すなわち、PCIインタフェイス制御部602は、システムメモリ203へ転送するデータをデータ制御部609に要求し、データ制御部609は、予め定められたタイミングでマスタDMACからデータを読み出してPCIインタフェイス制御部602へ送信する。PCIインタフェイス制御部602は、データ制御部609から受信したデータを、PCIバスインタフェイスのタイミング仕様に従ってPCIバス207を介してシステムメモリ203へ転送する。また、マスタDMACは、システムメモリ203への転送が完了したデータ数分だけ先頭アドレスレジスタの値をインクリメントするとともに、総転送データ量レジスタの値をデクリメントする。
なお、例えば、バースト長制御部605に設定されたSize分のデータ転送を完了する前にPCIインタフェイス制御部602がディスコネクトであることを検出し、トランザクションを途中で終了せざるを得ない場合は、内部レジスタ607に格納されているアービトレーション順位や保留リクエストの更新は行われず、バースト長制御部605に設定されたSize分のデータ転送が完了するまで、このトランザクションが繰り返し実行される。
一方、スキャン装置103によって読み取られた画像データがシステムメモリ203へ転送され始めると、DMA制御部610内の各DMACが起動され、各DMACは、プリントI/F部612〜615の内部バッファの空き容量を確認して転送単位サイズ以上の空き容量がある場合に、内部リクエスト信号をアービター606へ送信する。リクエスト選択部608は、内部レジスタ607に格納されている情報と、バス終了状態監視部604から通知される情報とに基づいて、PCIバス207の使用を許可する内部リクエストを選択してPCIインタフェイス制御部602にリクエスト信号を送信する。マスタDMACは、先頭アドレスを示す情報(Address)や転送単位サイズを示す情報(Size)を出力する。AddressはPCIインタフェイス制御部602に入力され、また、Sizeはバースト長制御部605に入力される。
また、PCIインタフェイス制御部602は、PCIバス207の使用を求めるリクエスト信号をIOブリッジ204へ送信し、IOブリッジ204からバスグラント信号を受信すると、マスタDMACから受信したAddressやSizeを用いて、マスタDMACによるデータ転送についてのトランザクションを開始する。このトランザクションにより、システムメモリ203から読み出された画像データが、画像データ入出力装置506へと転送され、データ制御部609を経由してマスタDMACに入力された後、色成分毎に該当するプリントI/F部612〜615の内部バッファに蓄積される。また、マスタDMACは、転送を終えたデータ数分だけ先頭アドレスレジスタの値をインクリメントするとともに、総転送データ量レジスタの値をデクリメントする。
そして、プリント装置104に対して印刷が指示されると、プリントI/F部612〜615は、プリント装置104からのデータ転送要求に応じて、内部バッファに蓄積されているデータをプリント装置104へ送出し、原稿から読み取られた画像が用紙に印刷される。なお、原稿の読み取りに際して行われるDMA転送処理の場合と同様に、例えば、バースト長制御部605に設定されたSize分のデータ転送を完了する前に、ディスコネクトによってトランザクションを途中で終了せざるを得ない場合は、アービトレーション順位や保留リクエストの更新は行われず、バースト長制御部605に設定されたSize分のデータ転送が完了するまで、このトランザクションが繰り返し実行される。
次に、図5および図6に示すフローチャートを参照して、内部リクエストのアービトレーション処理の動作について説明する。なお、原稿の読み取りに関する処理と、読み取った画像データの印刷に関する処理とが並行して行われる場合、DMA制御部610,611内の計8つのDMACから内部リクエスト信号が送信される。そこで、以降、本明細書では、プリンタ出力用のDMA制御部610に備わる4つのDMACから送信される内部リクエストを、色成分毎にそれぞれ「PC_REQ」、「PY_REQ」、「PM_REQ」、「PK_REQ」と記載する。また、スキャナ入力用のDMA制御部611に備わる4つのDMACから送信される内部リクエストを、色成分毎にそれぞれ「SC_REQ」、「SY_REQ」、「SM_REQ」、「SK_REQ」と記載する。
また、アービター606では、DMA制御部610,611内の各DMACから受信した内部リクエスト信号と、予め定められたアービトレーションルールとに基づいて、アービトレーション順位を設定するが、本実施形態では、DMACからシステムメモリ203へのDMA転送を求める内部リクエストと、システムメモリ203からDMACへのDMA転送を求める内部リクエストとが交互に選択されるように、アービトレーション順位が設定される。
図5において、まず、リクエスト選択部608は、内部レジスタ607を参照し、保留リクエストがあるか否かを判別する(ステップS101)。その結果、保留リクエストがなかった場合(ステップS101:NO)、リクエスト選択部608は、アービトレーション順位が最も高い内部リクエストを選択する(ステップS102)。ここで選択された内部リクエストの送信元となるDMACがマスタDMACに決定され、PCIインタフェイス制御部602は、決定したマスタDMACによるデータ転送についてのトランザクションを開始する(ステップS104)。例えば、アービトレーション順位と保留リクエストが図7に示す「状態1」の場合、保留リクエストはないので、アービトレーション順位が最も高い内部リクエスト「PC_REQ」の送信元となるDMACがマスタDMACに決定される。
一方、上記ステップS101において保留リクエストがあると判別された場合(ステップS101:YES)、リクエスト選択部608は保留リクエストを選択する(ステップS103)。この場合は、保留リクエストの送信元となるDMACがマスタDMACに決定され、当該マスタDMACによるデータ転送についてのトランザクションがPCIインタフェイス制御部602により再開される(ステップS104)。例えば、アービトレーション順位と保留リクエストが図7に示す「状態2」の場合、保留リクエストがあるので、この保留リクエスト「PC_REQ」の送信元となるDMACがマスタDMACに決定される。
次いで、PCIインタフェイス制御部602は、上記ステップS104において開始したトランザクションが終了すると(ステップS105)、バースト長制御部605に設定されたSize分のデータ転送が完了しているか否かを判別する(ステップS106)。その結果、PCIインタフェイス制御部602は、バースト長制御部605に設定されたSize分のデータ転送が完了していなかった場合は(ステップS106:NO)、トランザクションが中断されたものと判別する。この場合、PCIインタフェイス制御部602は、履歴保持部620を参照し、このトランザクションの今回の終了要因が「リトライ」であるか否かを判別する(ステップS107)。
なお、バス終了状態監視部604は、マスタDMACによるデータ転送についてのトランザクションがどのような要因によって終了したのかを監視している。具体的には、バス終了状態監視部604は、トランザクションの終了要因について、トランザクションを最後まで終え、予定していたデータ転送が最後まで完了した場合は「転送完了」、IOブリッジ204からリトライ応答を受信し、予定していたデータ転送を行うことなくトランザクションを中断した場合は「リトライ」、PCIバス207等においてコネクションが切断され、予定していたデータ転送を最後まで終えることなくトランザクションを中断した場合は「ディスコネクト」と特定し、図4に示した履歴保持部620に内部リクエスト(トランザクション)毎に蓄積していく。
PCIインタフェイス制御部602は、トランザクションの今回の終了要因が「リトライ」でなかった場合(ステップS107:NO)、すなわちトランザクションの今回の終了要因が「ディスコネクト」であった場合は、履歴保持部620においてこのトランザクションの再送ビットを“1”にセットした後(ステップS108)、上記ステップS101に戻る。なお、履歴保持部620において再送ビットが“1”にセットされたトランザクションは、PCIインタフェイス制御部602により再度実行されることになる。
一方、PCIインタフェイス制御部602は、トランザクションの今回の終了要因が「リトライ」であった場合、次いで、履歴保持部620においてこのトランザクションの再送ビットが“1”にセットされているか否かを判別する(ステップS109)。その結果、PCIインタフェイス制御部602は、再送ビットが“1”にセットされていなかった場合(ステップS109:NO)、すなわちこのトランザクションの中断が初めて発生し、かつ、その終了要因が「リトライ」であった場合は、上記ステップS108に移行し、履歴保持部620においてこのトランザクションの再送ビットを“1”にセットした後、上記ステップS101に戻る。
また、履歴保持部620においてこのトランザクションの再送ビットが“1”にセットされていた場合(ステップS109:YES)、PCIインタフェイス制御部602は、履歴保持部620においてこのトランザクションの保留モードビットが“1”にセットされているか否かを判別する(ステップS110)。その結果、保留モードビットが“1”にセットされていた場合(ステップS110:YES)、PCIインタフェイス制御部602は、ステップS113に移行し、後述する保留転送処理(図6参照)を実行する。一方、保留モードビットが“1”にセットされていなかった場合(ステップS110:NO)、すなわち、このトランザクションの終了要因が「リトライ(今回)」と「リトライ(前回)」であった場合や「リトライ(今回)」と「ディスコネクト(前回)」であった場合は、アービター606によってアービトレーション順位と保留リクエストが更新される(ステップS111)。
このステップS111において行われるアービトレーション順位と保留リクエストの更新について具体的に説明すると、例えば、現時点におけるアービトレーション順位と保留リクエストが図7に示す「状態1」の場合であって、アービトレーション順位が最も高い内部リクエスト「PC_REQ」が選択されて該当するマスタDMACによるデータ転送についてのトランザクションが実行され、その終了要因が「リトライ(今回)」と「リトライ(前回)」であった場合や、「リトライ(今回)」と「ディスコネクト(前回)」であった場合は、図7に示す「状態2」のように、アービトレーション順位の最も高い内部リクエスト「PC_REQ」が保留リクエストになるとともに、アービトレーション順位“2”〜“8”がそれぞれ1ずつ繰り上がる。
上記ステップS111においてアービトレーション順位と保留リクエストを更新した場合は、保留リクエストが発生したので、履歴保持部620において保留リクエストに対応するトランザクションの保留モードビットが“1”にセットされて保留モードへ移行し(ステップS112)、図6に示す保留転送処理が開始される(ステップS113)。ここで、保留転送処理は、トランザクションの終了要因が「リトライ(今回)」と「リトライ(前回)」であった場合や、「リトライ(今回)」と「ディスコネクト(前回)」であった場合等、トランザクションが「リトライ」によって中断され、かつ、このトランザクションの終了要因の履歴からデータ転送が可能となるまでに時間がかかると予想された場合に行われる処理である。
この保留転送処理の動作を図6に示すフローチャートを参照して説明する。同図に示すように、保留転送処理が開始されると、PCIインタフェイス制御部602は、保留した内部リクエストを除いて最も優先順位の高い内部リクエストを選択し、該当するマスタDMACによるデータ転送についてのトランザクションを実行する(ステップS201)。そして、このトランザクションの終了後(ステップS202)、PCIインタフェイス制御部602は、バースト長制御部605に設定されたSize分のデータ転送が完了しているか否かを判別する(ステップS203)。例えば、アービトレーション順位と保留リクエストが図7に示す「状態1」から「状態2」に変更された後に保留転送処理が行われた場合、図7に示す「状態2」において「SC_REQ」が選択され、この内部リクエスト「SC_REQ」に該当するマスタDMACのデータ転送が行われる。
なお、保留転送処理が行われる場合、マスタDMACから要求されたSize(総転送データ量)よりも少ない値をバースト長制御部605に設定し、データ転送を複数回に分割して実行することで、保留しているトランザクションの実行に復帰するまでの時間を短くすることができる。
そして、バースト長制御部605に設定されたSize分のデータ転送が完了していた場合(ステップS203:YES)、PCIインタフェイス制御部602は、このトランザクションを最後まで終えたものと判別する。この場合、アービター606によってアービトレーション順位の更新が行われた後(ステップS204)、保留転送処理が終了する。例えば、図7に示す「状態2」において内部リクエスト「SC_REQ」に該当するマスタDMACのデータ転送を最後まで終えた場合は、保留リクエスト「PC_REQ」を残したまま、「状態2」におけるアービトレーション順位“2”〜“8”がそれぞれ1ずつ繰り上がる。
一方、バースト長制御部605に設定されたSize分のデータ転送が完了していなかった場合(ステップS203:NO)、PCIインタフェイス制御部602は、このトランザクションが中断されたと判別する。この場合、アービトレーション順位の変更をせずに保留転送処理が終了する。なお、前述したように、保留転送処理においてマスタDMACから要求されたSiz eよりも少ない値をバースト長制御部605に設定してデータ転送を複数回に分割して実行した場合は、バースト長制御部605に設定された値分のデータ転送が完了した場合であっても、マスタDMACから要求されたSize(総転送データ量)分のデータ転送が完了するまでは、アービトレーション順位の変更は行われない。
保留転送処理が終わると、図5のステップS101に戻り、保留していた内部リクエストがアービター606により選択され(ステップS102)、該当するマスタDMACによるデータ転送についてのトランザクションが再開される(ステップS104)。このとき、バースト長制御部605には、保留転送処理が行われる前に既に転送が終わったデータ数を差し引いたSize値が設定され、中断された部分からトランザクションが再開される。そして、トランザクションの終了後(ステップS105)、PCIインタフェイス制御部602は、バースト長制御部605に設定されたSize分のデータ転送が終了したか否かを判別し(ステップS106)、データ転送が完了していなかった場合は(ステップS106:NO)、再度、ステップS107以降の処理を行う。
一方、バースト長制御部605に設定されたSize分のデータ転送が完了していた場合(ステップS106:YES)、PCIインタフェイス制御部602は、履歴保持部620においてこのトランザクションの保留モードビットが“1”にセットされており、保留モードであったか否かを判別する(ステップS114)。その結果、PCIインタフェイス制御部602は、保留モードビットが“1”にセットされていなかった場合は(ステップS114:NO)、ステップS116に移行する。また、PCIインタフェイス制御部602は、保留モードビットが“1”にセットされていた場合は(ステップS114:YES)、履歴保持部620においてこのトランザクションの保留モードビットおよび再送ビットをそれぞれ“0”にクリアする(ステップS115)。
そして、アービター606によってアービトレーション順位と保留リクエストが更新される(ステップS116)。このステップS116において行われるアービトレーション順位と保留リクエストの更新について具体的に説明すると、例えば、現時点におけるアービトレーション順位と保留リクエストが図7に示す「状態2」の場合であって、保留リクエスト「PC_REQ」に該当するマスタDMACによるデータ転送についてのトランザクションが実行され、その終了要因が「転送完了」であった場合は、図7に示す「状態3」のように、保留リクエスト「PC_REQ」が削除される。
なお、図5および図6に示した処理により行われるアービトレーションの条件をまとめると、図8に示す通りとなる。同図に示すように、例えば、トランザクションの今回の終了要因が「転送完了」であった場合は、このトランザクションの前回の終了要因に係らず、次にアービトレーション順位の高い内部リクエストが選択され、該当するトランザクションが実行される。また、トランザクションの今回の終了要因が「ディスコネクト」であった場合は、このトランザクションの前回の終了要因に係らず、このトランザクションが再度実行される。また、トランザクションの今回の終了要因が「リトライ」であったものの、このトランザクションの前回の終了要因が無く、このトランザクションが初めて「リトライ」により中断された場合は、このトランザクションが再度実行される。但し、以上説明したいずれの場合も、トランザクションの終了時に保留リクエストがある場合は、保留リクエストの選択が優先される。
そして、トランザクションの今回の終了要因が「リトライ」であった場合は、このトランザクションの前回の終了要因が「リトライ」または「ディスコネクト」であった場合に、このトランザクションを保留して、次にアービトレーション順位の高い内部リクエストが選択されて該当するトランザクションが実行される。
例えば、図9に示すように、内部リクエスト「PC_REQ」についてのデータ転送が「ディスコネクト」により中断され、再度、この内部リクエスト「PC_REQ」についてのデータ転送を開始したものの、今度は「リトライ」によりデータ転送を中断せざるを得なくなった場合、この内部リクエスト「PC_REQ」が保留リクエストとなり、保留転送処理によって次にアービトレーション順位の高い内部リクエスト「SC_REQ」についてのデータ転送が開始される。また、このときのデータ転送は、前述したように複数回に分割して実行される。そして、内部リクエスト「SC_REQ」についてのデータ転送(分割1)が完了した後、保留リクエスト「PC_REQ」についてのデータ転送が再開され、このデータ転送が完了すると、内部リクエスト「SC_REQ」についてのデータ転送(分割2)が実行される。
以上説明したように本実施形態によれば、デジタル複写機101(画像データ入出力装置506)において、バス終了状態監視部604は、各マスタDMACによるPCIバス207を介したデータ転送についてのトランザクションがどのような要因によって終了したのかを特定し、履歴保持部620に蓄積する。そして、アービター606は、受信した内部リクエストの送信元となる各DMACに対してPCIバス207を使用する優先順位を定めたアービトレーション順位や保留リクエストと、バス終了状態監視部604から通知される各トランザクションの終了要因の履歴とに基づいて、PCIバス207の使用を許可する内部リクエストを選択する。
したがって、例えば、リトライが長く続くかどうかを同じトランザクションの終了要因の履歴から予測し、リトライが長く続くであろうと予測された場合は、このトランザクションを一旦保留し、次にアービトレーション順位の高いトランザクションを実行した後、保留しておいたトランザクションを再び実行することが可能となる。よって、リトライが多発するような場合であっても各DMACからPCIバス207への無駄なアクセスを省き、複数のDMACがPCIバス207を介して効率よくDMA転送を行うことができるようになる。また、リトライが多発する状況下においても、局所的な転送レートの低下を防ぐことができ、さらに、リトライにより中断されたトランザクションであっても、再実行する機会がすぐに与えられるため、複数のマスタデバイス間での転送量の不均衡を極力抑えることができる。
なお、上述した実施形態において、履歴保持部620に記憶されるトランザクションの終了要因は、前回と今回の2回分に限定されるものではなく、過去2回分以上の終了要因が蓄積される構成であってもよい。勿論、この場合は、同じトランザクションの過去2回分以上の終了要因を用いてPCIバス207の使用を許可するマスタDMACが選択される。また、保留される内部リクエストは複数あってもよい。
また、上述した実施形態では、トランザクションの終了要因が「リトライ(今回)」と「リトライ(前回)」であった場合、および「リトライ(今回)」と「ディスコネクト(前回)」であった場合に保留転送処理を行うようにしたが、「ディスコネクト(今回)」と「ディスコネクト(前回)」であった場合や、「ディスコネクト(今回)」と「リトライ(前回)」であった場合に保留転送処理を行うようにしてもよい。
また、上述した実施形態では、スキャン装置103から画像データ処理装置102へ画像データを入力するための複数のデバイス(DMA制御部611内の各DMAC)と、画像データ処理装置102からプリント装置104へ画像データを出力するための複数のデバイス(DMA制御部610内の各DMAC)とを有する画像入出力装置506について説明したが、スキャン装置103から画像データ処理装置102へ画像データを入力するための複数のデバイスのみを有する画像データ入力用のPCIデバイスや、画像データ処理装置102からプリント装置104へ画像データを出力するための複数のデバイスのみを有する画像データ出力用のPCIデバイスとしてもよい。
上述した実施形態では、本発明をデジタル複写機101に適用した場合について説明したが、本発明は、例えば、アナログ式の複写機や、複合機、パーソナルコンピュータ等に適用してもよい。また、PCIバス207を介したデータ転送はDMA転送に限定されるものではなく、また、バスもPCIバスに限定されるものではない。さらに、バスを介して送受信されるデータは、画像データに限定されるものではなく、例えば、音声データや文書データ等であってもよい。
20…PC、101…デジタル複写機、102…画像データ処理装置、103…スキャン装置、104…プリント装置、201…CPU、202…メモリブリッジ、203…システムメモリ、204…IOブリッジ、205…PCI拡張スロット、206…PCIデバイス、207…PCIバス、506…画像データ入出力装置、507…HDD、601…バス制御装置、602…PCIインタフェイス制御部、603…内部レジスタ、604…バス終了状態監視部、605…バースト長制御部、606…アービター、607…内部レジスタ、608…リクエスト選択部、609…データ制御部、610,611…DMA制御部、612〜615…プリントI/F部、616〜619…スキャンI/F部、620…履歴保持部、1101…PCIコントローラ、1102…アービター、1103〜1106…DMAC、1107…画像入力I/F部、1108…画像出力I/F部。
Claims (10)
- バスと、
前記バスを介してデータを送信または受信するデバイスであって、前記送信または受信を行う場合に前記バスの使用を求めるリクエスト信号を送信する複数のデバイスと、
受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する設定手段と、
前記各デバイスによる前記バスを介したデータの送信または受信を終了させた要因を特定する特定手段と、
前記特定手段により特定された要因を前記各デバイス毎に蓄積する蓄積手段と、
前記設定手段により設定された前記各デバイスの優先順位と、前記蓄積手段に前記各デバイス毎に蓄積された要因とに基づいて、前記各デバイスのうち前記バスの使用を許可するデバイスを選択する選択手段と、
前記選択手段により選択されたデバイスによる前記バスを介したデータの送信または受信を制御する制御手段と
を備えることを特徴とするデータ処理装置。 - 前記複数のデバイスは、
前記バスを介してデータを送信するデバイスであって、前記送信を行う場合に前記バスの使用を求めるリクエスト信号を送信する1以上のデバイスと、
前記バスを介してデータを受信するデバイスであって、前記受信を行う場合に前記バスの使用を求めるリクエスト信号を送信する1以上のデバイスとを含む
ことを特徴とする請求項1に記載のデータ処理装置。 - 前記蓄積手段に前記各デバイス毎に蓄積された要因に基づいて、前記設定手段により設定された前記各デバイスの優先順位を更新する更新手段をさらに備える
ことを特徴とする請求項1に記載のデータ処理装置。 - 前記更新手段は、前記蓄積手段に前記各デバイス毎に蓄積された要因のうち、前記優先順位の最も高いデバイスの、最新のものから順に2つの要因がともにデータの送信または受信の中断を示すものであった場合に、前記デバイスの優先順位を下げる
ことを特徴とする請求項3に記載のデータ処理装置。 - 前記選択手段は、前記蓄積手段に前記各デバイス毎に蓄積された要因のうち、前記優先順位の最も高いデバイスの、最新のものから順に2つの要因がともにデータの送信または受信の中断を示すものであった場合に、前記デバイスの選択を保留して次に優先順位の高いデバイスを選択する
ことを特徴とする請求項1に記載のデータ処理装置。 - 前記選択手段は、前記蓄積手段に前記各デバイス毎に蓄積された要因のうち、前記優先順位の最も高いデバイスの、最新のものから順に2つの要因がともにデータの送信または受信の中断を示すものであった場合に、前記デバイスの選択を保留して次に優先順位の高いデバイスを選択するとともに、次の選択の際には保留したデバイスを選択する
ことを特徴とする請求項1に記載のデータ処理装置。 - 前記制御手段は、前記選択手段による選択が保留されたデバイスがある場合に、前記選択手段により選択されたデバイスによる前記バスを介したデータの送信または受信を複数回に分割して行う
ことを特徴とする請求項6に記載のデータ処理装置。 - 前記設定手段は、前記バスを介してデータを受信するデバイスと、前記バスを介してデータを送信するデバイスとが前記選択手段により交互に選択されるように、受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する
ことを特徴とする請求項1に記載のデータ処理装置。 - コンピュータ内のバスに接続され、前記コンピュータへのデータの入力または前記コンピュータからのデータの出力を制御するデータ制御ユニットにおいて、
前記コンピュータへデータを入力するためのデバイスまたは前記コンピュータからデータを出力するためのデバイスであって、前記入力または出力を行う場合に前記バスの使用を求めるリクエスト信号を送信する複数のデバイスと、
受信した前記リクエスト信号の送信元となる各デバイスに対して前記バスを使用する優先順位を設定する設定手段と、
前記各デバイスによる前記バスを介したデータの入力または出力を終了させた要因を特定する特定手段と、
前記特定手段により特定された要因を前記各デバイス毎に蓄積する蓄積手段と、
前記設定手段により設定された前記各デバイスの優先順位と、前記蓄積手段に前記各デバイス毎に蓄積された要因とに基づいて、前記各デバイスのうち前記バスの使用を許可するデバイスを選択する選択手段と、
前記選択手段により選択されたデバイスによる前記バスを介したデータの入力または出力を制御する制御手段と
を備えることを特徴とするデータ制御ユニット。 - 前記複数のデバイスは、
前記コンピュータへデータを入力するためのデバイスであって、前記入力を行う場合に前記バスの使用を求めるリクエスト信号を送信する1以上のデバイスと、
前記コンピュータからデータを出力するためのデバイスであって、前記出力を行う場合に前記バスの使用を求めるリクエスト信号を送信する1以上のデバイスとを含む
ことを特徴とする請求項9に記載のデータ制御ユニット。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003345836A JP2005115464A (ja) | 2003-10-03 | 2003-10-03 | データ処理装置およびデータ制御ユニット |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003345836A JP2005115464A (ja) | 2003-10-03 | 2003-10-03 | データ処理装置およびデータ制御ユニット |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005115464A true JP2005115464A (ja) | 2005-04-28 |
Family
ID=34538989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003345836A Pending JP2005115464A (ja) | 2003-10-03 | 2003-10-03 | データ処理装置およびデータ制御ユニット |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005115464A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100775406B1 (ko) | 2006-02-28 | 2007-11-12 | 후지쯔 가부시끼가이샤 | Dma 데이터 전송 장치 및 dma 데이터 전송 방법 |
US8332548B2 (en) | 2006-12-13 | 2012-12-11 | Fujitsu Limited | Monitoring device, semiconductor integrated circuit, and monitoring method |
-
2003
- 2003-10-03 JP JP2003345836A patent/JP2005115464A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100775406B1 (ko) | 2006-02-28 | 2007-11-12 | 후지쯔 가부시끼가이샤 | Dma 데이터 전송 장치 및 dma 데이터 전송 방법 |
US8332548B2 (en) | 2006-12-13 | 2012-12-11 | Fujitsu Limited | Monitoring device, semiconductor integrated circuit, and monitoring method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4101860B2 (ja) | 多機能印刷システムのための割込システム | |
JP4939175B2 (ja) | 画像形成装置 | |
US7376853B2 (en) | Network apparatus, method for controlling the same, and program for the same | |
JPH10289074A (ja) | 多機能印刷システムにおけるジョブ処理管理方法 | |
US8964214B2 (en) | Image processing apparatus and distributed printing system | |
JPH1131055A (ja) | 多機能印刷システムにおけるキュー管理方法 | |
US20040125415A1 (en) | Data processing device characterized in its data transfer method, program for executing on a computer to perform functions of the device, and computer readable recording medium storing such a program | |
US20140300921A1 (en) | Image forming apparatus and power supply control system | |
JP2009277096A (ja) | Dma制御システム、印刷装置、および転送指示プログラム | |
JP7322561B2 (ja) | 情報処理装置 | |
JP2010140284A (ja) | 画像形成装置の制御システム | |
JP2019219803A (ja) | 制御装置、画像形成装置、制御方法及び制御プログラム | |
JP2005115464A (ja) | データ処理装置およびデータ制御ユニット | |
JP3724536B2 (ja) | 画像出力制御装置およびその処理実行制御方法 | |
JP4909839B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2008046977A (ja) | 画像処理システム及び画像形成装置 | |
JP6171367B2 (ja) | スイッチ装置、画像処理装置、及び排他制御方法 | |
JP2012061639A (ja) | 画像形成装置および印刷制御方法 | |
JP5768540B2 (ja) | 画像処理装置およびデータ転送管理方法 | |
KR20070061240A (ko) | 절대 우위의 dma 요청을 처리하는 dma 장치 및 그처리 방법 | |
JP2009265979A (ja) | スブリッジ回路におけるリセット制御手段 | |
JP2000003259A (ja) | Lanシステムおよびデジタル複写機管理サーバ | |
JP2005182505A (ja) | データ転送制御装置および画像形成装置 | |
JP2005309511A (ja) | 情報処理装置、ステータス取得方法、及びプログラム | |
JP2024002146A (ja) | 通信装置、usbデバイス、通信方法、及びプログラム |