JP2005222198A - Data transferring device and data transferring method - Google Patents
Data transferring device and data transferring method Download PDFInfo
- Publication number
- JP2005222198A JP2005222198A JP2004027648A JP2004027648A JP2005222198A JP 2005222198 A JP2005222198 A JP 2005222198A JP 2004027648 A JP2004027648 A JP 2004027648A JP 2004027648 A JP2004027648 A JP 2004027648A JP 2005222198 A JP2005222198 A JP 2005222198A
- Authority
- JP
- Japan
- Prior art keywords
- data transfer
- interrupt processing
- interrupt
- unit
- cpu
- 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
Description
本発明は、装置外部のデバイスとの間のデータ転送を行うデータ転送装置、及び、そのデータ転送装置におけるデータ転送方法に関する。 The present invention relates to a data transfer apparatus that performs data transfer with a device outside the apparatus, and a data transfer method in the data transfer apparatus.
従来、データ転送時における装置内部のデバイスやバスの負荷を軽減するためのデータ転送装置が提案されている(例えば、特許文献1)。この従来のデータ転送装置は、図5に示すように構成されている。図5においてデータ転送装置500は、装置外部のデバイス(外部デバイス)550との間でデータ転送を行うものであり、バス520に接続されたCPU(Central Processing Unit)502、メモリ504、デバイスコントローラ506、入力部508及び出力部510とを有する。
Conventionally, a data transfer device has been proposed for reducing the load on devices and buses inside the device during data transfer (for example, Patent Document 1). This conventional data transfer apparatus is configured as shown in FIG. In FIG. 5, a
CPU502は、外部デバイス550との間のデータ転送に際して、デバイスコントローラ506におけるレジスタにアクセスするとともに、メモリ504へデータ転送に関する情報であるデータ転送制御情報を書き込む。デバイスコントローラ506は、メモリ504に書き込まれたデータ転送制御情報を読み出し、このデータ転送制御情報に従って外部デバイス550との間でデータ転送を行う。これにより、例えば入力部508が入力したデータが外部デバイス550へ転送され、外部デバイス550からのデータが出力部510へ出力される。
When transferring data to or from the
このようなデータ転送手順において、データ転送が完了した場合や失敗した場合、デバイスコントローラ506は、CPU502に対して割り込み信号を送出する。CPU502は、割り込み信号を受けると、その割り込み信号の優先度を示す割り込みステータスに応じて、デバイスコントローラ506へ各種の命令を出す。
In such a data transfer procedure, when data transfer is completed or fails, the
または、デバイス同士がCPUを介することなく直接にデータ転送を行うことができれば、CPUやそのCPUが接続されるバスの負荷を軽減して、安全で且つ効率の良いデータ転送を行うことができる(例えば、特許文献2乃至4参照)。
しかしながら、従来提案されている様々なデータ転送装置では、割り込み処理が発生した場合におけるCPUの負荷軽減については何ら考慮されていない。即ち、前述したような(図5参照)従来のデータ転送装置では、割り込み処理時においてはCPUによるデータ転送制御が必要であり、負荷軽減の妨げとなっている。 However, in various conventionally proposed data transfer apparatuses, no consideration is given to reducing the load on the CPU when interrupt processing occurs. That is, in the conventional data transfer apparatus as described above (see FIG. 5), the data transfer control by the CPU is necessary at the time of interrupt processing, which hinders the reduction of the load.
本発明は従来の問題を解決するためになされたもので、割り込み処理時における負荷軽減を図ったデータ転送装置及びデータ転送方法を提供することを目的とする。 The present invention has been made to solve the conventional problems, and an object of the present invention is to provide a data transfer apparatus and a data transfer method that reduce the load during interrupt processing.
本発明のデータ転送装置は、装置内部のデバイスを制御する内部デバイス制御手段と、装置外部のデバイスとの間のデータ転送を制御し、割り込み処理の必要が生じた場合に装置内部へ割り込み信号を送出する外部デバイス制御手段と、前記外部デバイス制御手段によって割り込み信号が送出された場合に、前記内部デバイス制御手段に代わって、前記割り込み信号に対応する割り込み処理を行う割り込み処理手段とを有する構成となる。 The data transfer apparatus of the present invention controls the data transfer between the internal device control means for controlling the devices inside the apparatus and the devices outside the apparatus, and sends an interrupt signal to the inside of the apparatus when the need for interrupt processing occurs. An external device control means for sending, and an interrupt processing means for performing an interrupt process corresponding to the interrupt signal in place of the internal device control means when an interrupt signal is sent by the external device control means; Become.
この構成により、装置外部のデバイスとの間のデータ転送を制御する外部デバイス制御手段によって割り込み信号が送出された場合には、割り込み処理手段により、内部デバイス制御手段に代わって割り込み信号に対応する割り込み処理が行われる。 With this configuration, when an interrupt signal is sent by an external device control unit that controls data transfer with a device outside the apparatus, the interrupt processing unit generates an interrupt corresponding to the interrupt signal instead of the internal device control unit. Processing is performed.
また、本発明のデータ転送装置は、前記内部デバイス制御手段が、前記割り込み処理手段に対して、前記割り込み信号に対応する割り込み処理手順を通知し、前記割り込み処理手段は、前記内部デバイス制御手段からの割り込み信号に対応する割り込み処理手順に従って、前記割り込み信号に対応する割り込み処理を行う構成とすることができる。 In the data transfer apparatus according to the present invention, the internal device control unit notifies the interrupt processing unit of an interrupt processing procedure corresponding to the interrupt signal, and the interrupt processing unit receives the interrupt processing unit from the internal device control unit. According to the interrupt processing procedure corresponding to the interrupt signal, the interrupt processing corresponding to the interrupt signal can be performed.
この構成により、割り込み処理手段は、割り込み信号に対応する割り込み処理手順を簡易に認識することができ、適切な割り込み処理を行うことが可能となる。 With this configuration, the interrupt processing means can easily recognize the interrupt processing procedure corresponding to the interrupt signal, and can perform appropriate interrupt processing.
また、本発明のデータ転送装置は、前記割り込み処理手段が、前記外部デバイス制御手段におけるレジスタへのアクセスと、装置内部の記憶手段に記憶されたデータ転送制御に関する情報の更新とを行う構成とすることができる。 In the data transfer apparatus of the present invention, the interrupt processing unit performs access to the register in the external device control unit and updates information related to data transfer control stored in the storage unit in the apparatus. be able to.
この構成により、割り込み処理手段は、内部デバイス制御手段が本来行う割り込み処理を、その内部デバイス制御手段に代わって適切に行うことができる。 With this configuration, the interrupt processing unit can appropriately perform the interrupt processing originally performed by the internal device control unit instead of the internal device control unit.
また、本発明のデータ転送装置は、前記内部デバイス制御手段が接続される伝送路と、前記外部デバイス制御手段及び前記割り込み処理手段とが接続される伝送路とが異なる構成とすることができる。 In the data transfer apparatus of the present invention, the transmission path to which the internal device control means is connected and the transmission path to which the external device control means and the interrupt processing means are connected can be different.
この構成により、割り込み処理時に割り込み処理手段と外部デバイス制御手段との間でやり取りされる信号が、内部デバイス制御手段が接続される伝送路を伝送されないようにすることができるため、その内部デバイス制御手段が接続される伝送路の負荷を軽減することが可能となる。 With this configuration, signals exchanged between the interrupt processing unit and the external device control unit during interrupt processing can be prevented from being transmitted through the transmission path to which the internal device control unit is connected. It is possible to reduce the load on the transmission line to which the means is connected.
また、本発明のデータ転送方法は、装置内部のデバイスを制御する内部デバイス制御手段と、装置外部のデバイスとの間のデータ転送を制御する外部デバイス制御手段と、割り込み処理を行う割り込み処理手段とを有するデータ転送装置におけるデータ転送方法において、前記外部デバイス制御手段が前記装置外部のデバイスとの間のデータ転送において、割り込み処理の必要が生じた場合に装置内部へ割り込み信号を送出する割り込み信号送出ステップと、前記割り込み処理手段が前記外部デバイス制御手段によって割り込み信号が送出された場合に、前記内部デバイス制御手段に代わって、前記割り込み信号に対応する割り込み処理を行う割り込み処理ステップとを有する構成となる。 Further, the data transfer method of the present invention includes an internal device control means for controlling devices inside the apparatus, an external device control means for controlling data transfer between devices outside the apparatus, an interrupt processing means for performing interrupt processing, In the data transfer method in the data transfer apparatus having an interrupt signal, the external device control means sends an interrupt signal to the inside of the apparatus when an interrupt process is required in the data transfer with the device outside the apparatus And an interrupt processing step for performing interrupt processing corresponding to the interrupt signal instead of the internal device control means when the interrupt processing means is sent by the external device control means. Become.
また、本発明のデータ転送方法は、前記内部デバイス制御手段が前記割り込み処理手段に対して、前記割り込み信号に対応する割り込み処理手順を通知する処理手順通知ステップを有し、前記割り込み処理ステップは、前記割り込み処理手段が前記内部デバイス制御手段からの割り込み信号に対応する割り込み処理手順に従って、前記割り込み信号に対応する割り込み処理を行う構成とすることができる。 Further, the data transfer method of the present invention has a processing procedure notification step in which the internal device control means notifies the interrupt processing means of an interrupt processing procedure corresponding to the interrupt signal. The interrupt processing unit may perform an interrupt process corresponding to the interrupt signal in accordance with an interrupt process procedure corresponding to the interrupt signal from the internal device control unit.
本発明は、装置外部のデバイスとのデータ転送を制御する外部デバイス制御手段によって割り込み信号が送出された場合には、割り込み処理手段が内部デバイス制御手段に代わって割り込み信号に対応する処理を行うため、CPU等の内部デバイス制御手段の負荷を軽減させることが可能となる。 In the present invention, when an interrupt signal is sent by an external device control unit that controls data transfer with a device outside the apparatus, the interrupt processing unit performs processing corresponding to the interrupt signal instead of the internal device control unit. It is possible to reduce the load on the internal device control means such as the CPU.
以下、本発明の実施の形態のデータ転送装置について、図面を用いて説明する。
まず、本発明の第1の実施の形態について説明する。本発明の第1の実施の形態におけるデータ転送装置のブロック図を図1に示す。図1において、データ転送装置100は、装置外部のデバイス(外部デバイス)150との間でデータ転送を行うものであり、CPU102、メモリ104、デバイスコントローラ106、入力部108、出力部110及び割り込み処理部112を有する。
Hereinafter, a data transfer apparatus according to an embodiment of the present invention will be described with reference to the drawings.
First, a first embodiment of the present invention will be described. FIG. 1 shows a block diagram of a data transfer apparatus according to the first embodiment of the present invention. In FIG. 1, a
CPU102、メモリ104、デバイスコントローラ106、入力部108、出力部110及び割り込み処理部112は、バス120に接続されている。このバス120は、接続された各デバイスの間でやり取りされる制御情報及びデータを伝送する。
The
CPU102は、データ転送装置100内の各デバイスを制御する。メモリ104は、データ転送装置100と外部デバイス150との間でやり取りされるデータを一時的に記憶するとともに、デバイスコントローラ106がデータ転送を行う際に参照するデータ転送制御情報を記憶する。デバイスコントローラ106は、外部デバイス150と接続されており、この外部デバイス150との間のデータ転送を制御する。入力部108は、デバイスコントローラ106以外のインタフェースで外部からの信号、例えば映像信号や音声信号のような連続する信号データを入力する。出力部110は、例えばモニタであり、デバイスコントローラ106以外のインタフェースで外部へ信号を出力する。割り込み処理部112は、CPU102に代わって割り込み処理を行う。
The
本実施の形態では、バス120としてPCI(Peripheral Component Interconnect)バスを想定している。また、デバイスコントローラ106として外部機器の接続に広く用いられているUSB(Universal Serial Bus)を想定し、外部デバイス150としてUSBインタフェースを有する外部機器を想定している。
In the present embodiment, a PCI (Peripheral Component Interconnect) bus is assumed as the
また、本実施の形態では、データ転送装置100内の各デバイスと外部デバイス150との間のデータ転送は、全てメモリ104を介して行われるものとする。すなわち、例えば、入力部108から外部デバイス150へのデータ転送が行われる場合には、入力部108からメモリ104へのデータ転送と、メモリ104から外部デバイス150へのデータ転送とが行われる。また、外部デバイス150から出力部110へのデータ転送が行われる場合には、外部デバイス150からメモリ104へのデータ転送と、メモリ104から出力部110へのデータ転送とが行われる。
In the present embodiment, it is assumed that all data transfer between each device in the
以上のように構成されたデータ転送装置100について、図2を用いてその動作を説明する。なお、図2では入力部108から外部デバイス150へのデータ転送が行われる場合について説明する。
The operation of the
まず、CPU102は、データ転送に先立って、割り込み処理部112に対して、割り込み処理手順を通知する(S10)。割り込み処理部112は、この割り込み処理手順を受け、保持する。この割り込み処理手順には、割り込み処理部112が割り込み信号を受けた場合に行う割り込み処理の手順が示されている。
First, prior to data transfer, the
その後、CPU102は、入力部108に対してデータ転送の命令を出す。入力部108は、この命令に従ってメモリ104へデータを転送する(S11)。メモリ104は、転送されたデータを一時的に保持する。
Thereafter, the
次に、CPU102は、メモリ104に一時記憶されたデータを外部デバイス150へ転送するために、デバイスコントローラ106のレジスタにアクセスするとともに(S12)、データ転送制御情報をメモリ104に書き込む(S13)。このデータ転送制御情報には、デバイスコントローラ106が転送すべきデータの転送先等、データ転送制御に関する情報が含まれている。
Next, the
次に、CPU102は、デバイスコントローラ106に対してデータ転送の命令を出す。デバイスコントローラ106は、この命令を受けると、CPU102からバス120の制御権を取得する。更に、デバイスコントローラ106は、メモリ104からデータと、そのデータに対応するデータ転送制御情報とを読み出し、データ転送制御情報に応じて、外部デバイス150へデータを転送するために必要な処理を行う(S14)。
Next, the
その後、デバイスコントローラ106は、割り込み処理が必要であるか否かを判定する(S15)。具体的には、デバイスコントローラ106は、外部デバイス150へのデータ転送の状況を監視し、そのデータ転送が完了した場合や失敗した場合には、割り込み処理が必要であると判断する。デバイスコントローラ106は、割り込み処理が必要であると判断した場合、バス120へ割り込み信号を送出する(S16)。バス120へ送出された割り込み信号は、このバス120に接続された各デバイスに到達可能である。
Thereafter, the
割り込み処理部112は、割り込み信号を受けると、S10においてCPU102から通知された割り込み処理手順に従い、割り込み処理を行う。ここで、割り込み処理部112が行う割り込み処理は、本来、CPU102がデバイスコントローラ106からの割り込み信号を受けた場合に行う割り込み処理と同様である。具体的には、割り込み処理部112は、CPU102からバス120の制御権を取得した上で、デバイスコントローラ106のレジスタにアクセスするとともに(S17)、メモリ104内のデータ転送制御情報を更新する(S18)。
When receiving the interrupt signal, the interrupt
割り込み処理部112による割り込み処理の後、CPU102は、次のデータ転送処理があるか否かを判定する(S19)。次のデータ転送処理がある場合には、CPU102によるデバイスコントローラ106のレジスタへのアクセス(S12)以降の動作が繰り返される。一方、次のデータ転送処理がない場合には、一連の動作が終了する。
After the interrupt process by the interrupt
なお、外部デバイス150から出力部110へのデータ転送が行われる場合には、前述のS11乃至S14の処理に代えて、以下のような処理が行われる。すなわち、CPU102は、外部デバイス150からのデータをメモリ102へ一時記憶するために、デバイスコントローラ106のレジスタにアクセスするとともに、データ転送制御情報をメモリ104に書き込む。更に、CPU102は、デバイスコントローラ106に対してデータ転送の命令を出す。デバイスコントローラ106は、この命令に従い、メモリ104から読み出したデータ転送制御情報に応じて、外部デバイス150からデータを読み出すために必要な処理を行い、読み出したデータをメモリ104へ書き込む。その後、CPU102は、出力部110に対してデータ転送の命令を出し、出力部110は、この命令に従ってメモリ104からデータを読み出して出力する。
When data transfer from the
以上のように、本発明の第1の実施の形態によれば、デバイスコントローラ106が、外部デバイス150との間のデータ転送において、バス120へ割り込み信号を送出した場合、割り込み処理部112は、CPU102に代わって割り込み処理を行う。このため、CPU102は、割り込み処理を行う必要がなく、そのCPU102の負荷を軽減させることが可能となる。
As described above, according to the first embodiment of the present invention, when the
特に、CPU102の処理能力の上限に近い負荷が生じている場合には、このように割り込み処理部112がCPUに代わって割り込み処理を行うようにすることにより、CPU102の負荷が処理能力の上限に達してしまうことを防止することができる。また、従来は、割り込み信号に対応する割り込みステータスによっては、CPU102が他の処理を継続し、その処理が終了するまで割り込み処理を行わない場合があるが、本実施形態では、割り込み処理部112がCPU102に代わって割り込み処理のみを行うため、迅速な割り込み処理が可能となる。
In particular, when a load close to the upper limit of the processing capacity of the
また、本発明の第1の実施の形態によれば、割り込み処理部112がCPU102から通知される割り込み処理手順を受け、この割り込み処理手順に従って、デバイスコントローラ106のレジスタへのアクセスと、メモリ104内のデータ転送制御情報の更新とを行っており、割り込み処理部112は、割り込み信号に対応する割り込み処理手順を簡易に認識し、CPU102が本来行う割り込み処理を、そのCPU102に代わって適切に行うことができる。
Further, according to the first embodiment of the present invention, the interrupt
次に、本発明の第2の実施の形態について説明する。本発明の第2の実施の形態におけるデータ転送装置のブロック図を図3に示す。図3において、データ転送装置200は、装置外部のデバイス(記録デバイス)400との間でデータ転送を行うものであり、CPU210、CPU制御デバイス211、スプールバッファメモリ212、メモリ213、デバイスコントローラ220、データ転送制御部230、入力部240及び出力部250を有する。
Next, a second embodiment of the present invention will be described. FIG. 3 shows a block diagram of a data transfer apparatus according to the second embodiment of the present invention. In FIG. 3, a
これらのうち、CPU210、CPUデバイス制御部211及びデータ転送制御部230は、バス300に接続されている。バス300は、接続されたCPU210、CPUデバイス制御部211及びデータ転送制御部230の間でやり取りされる制御情報及びデータを伝送する。また、デバイスコントローラ220及びデータ転送制御部230は、バス301に接続され、このバス301は、デバイスコントローラ220とデータ転送制御部230との間でやり取りされる制御情報及びデータを伝送する。データ転送制御部230には、前述のように、バス300を介してCPU210及びCPUデバイス制御部211が接続され、バス301を介してデバイスコントローラ220が接続されるとともに、スプールバッファメモリ212、メモリ213、入力部240及び出力部250が接続されている。
Among these, the
CPU210は、バス300に接続されたCPU制御デバイス211及びデータ転送制御部230を制御する。スプールバッファメモリ212は、データ転送装置200と外部デバイス400との間でやり取りされるデータを一時的に記憶する。メモリ213は、デバイスコントローラ220がデータ転送を行う際に参照するデータ転送制御情報を記憶する。デバイスコントローラ220は、外部デバイス400と接続されており、この外部デバイス400との間のデータ転送を制御する。入力部240は、デバイスコントローラ220以外のインタフェースで外部からの信号、例えば映像信号や音声信号のような連続する信号データを入力する。出力部250は、例えばモニタであり、デバイスコントローラ220以外のインタフェースで外部へ信号を出力する。
The
データ転送制御部230は、データ転送装置200内の各デバイスと外部デバイス400との間のデータ転送を制御する。このデータ転送制御部230は、バス300を介してCPU210に接続されるCPUインタフェース(I/F)部231と、メモリ213に接続されるメモリインタフェース(I/F)部232と、バス301を介してデバイスコントローラ220に接続されるデバイスコントローラインタフェース(I/F)部233と、スプールバッファメモリ212に接続されるスプールバッファメモリインタフェース部(I/F)部234と、入力部240に接続される入力インタフェース(I/F)部235と、出力部250に接続される出力インタフェース(I/F)部236と、CPUI/F部231、メモリI/F部232、デバイスコントローラI/F部233、入力I/F部235及び出力I/F部236と、スプールバッファメモリ212との間のデータ転送を調停し、規定された転送速度でのデータ転送を可能にする機能を有するアービタ部237とを有する。
The data
これらのうち、CPUI/F部231、デバイスコントローラI/F部233、スプールバッファI/F部234、入力I/F部235及び出力I/F部236は、制御バス310及びデータバス320に接続されている。また、アービタ部237は、制御バス310上に構成される。更に、CPUI/F部231及びメモリI/F部232は、制御バス311及びデータバス321に接続され、メモリI/F部232及びデバイスコントローラI/F部233は、制御バス312及びデータバス322に接続されている。
Among these, the CPU I /
本実施の形態では、前述した第1の実施の形態と同様、バス300及び301としてPCIバスを想定している。また、デバイスコントローラ220として外部機器の接続に広く用いられているUSBを想定し、外部デバイス400としてUSBインタフェースを有する外部機器を想定している。
In the present embodiment, PCI buses are assumed as the
また、本実施の形態では、データ転送装置200内の各デバイスと外部デバイス400との間のデータ転送は、全てスプールバッファメモリ212を介して行われるものとする。すなわち、例えば、入力部240から外部デバイス400へのデータ転送が行われる場合には、入力部240からスプールバッファメモリ212へのデータ転送と、スプールバッファメモリ212から外部デバイス400へのデータ転送とが行われる。また、外部デバイス400から出力部250へのデータ転送が行われる場合には、外部デバイス400からスプールバッファメモリ212へのデータ転送と、スプールバッファメモリ212から出力部250へのデータ転送とが行われる。
Further, in this embodiment, it is assumed that data transfer between each device in the
以上のように構成されたデータ転送装置200について、図4を用いてその動作を説明する。なお、図4では入力部240から外部デバイス400へのデータ転送が行われる場合について説明する。
The operation of the
まず、CPU210は、データ転送に先立って、データ転送制御部230内のCPUI/F部213を介し、デバイスコントローラI/F部233に対して、割り込み処理手順を通知する(S20)。データ転送制御部230内のデバイスコントローラI/F部233は、この割り込み処理手順を受け、保持する。
First, prior to data transfer, the
その後、CPU210は、データ転送制御部230内のCPUI/F部213及び入力I/F部235を介し、入力部240に対してデータ転送の命令を出す。入力部240は、この命令に従って、データ転送制御部230内の入力I/F部235及びスプールバッファI/F部234を介し、スプールバッファメモリ212へデータを転送する(S21)。スプールバッファメモリ212は、転送されたデータを一時的に保持する。
Thereafter, the
次に、CPU210は、デバイスコントローラ220からバス301の制御権を取得し(S22)、スプールバッファメモリ212に一時記憶されたデータを外部デバイス400へ転送するために、データ転送制御部230内のCPUI/F部231及びデバイスコントローラI/F部233を介し、デバイスコントローラ220のレジスタにアクセスする(S23)。このアクセス終了後、CPU210は、バス301の制御権を開放する(S24)。更に、CPU210は、データ転送制御部230内のCPUI/F部231及びメモリI/F部232を介し、メモリ213へデータ転送制御情報を書き込む(S25)。
Next, the
次に、CPU210は、データ転送制御部230内のCPUI/F部231及びデバイスコントローラI/F部233を介し、デバイスコントローラ220に対してデータ転送の命令を出す。デバイスコントローラ220は、この命令を受けると、データ転送制御部230内のデバイスコントローラI/F部233及びスプールバッファI/F部234を介し、スプールバッファメモリ212からデータを読み出すとともに、デバイスコントローラI/F部233及びメモリI/F部232を介し、スプールバッファメモリ212から読み出したデータに対応するデータ転送制御情報をメモリ213から読み出す。更に、デバイスコントローラ220は、メモリ213から読み出したデータ転送制御情報に応じて、スプールバッファメモリ212から読み出したデータを外部デバイス400へ転送するために必要な処理を行う(S26)。
Next, the
その後、デバイスコントローラ220は、割り込み処理が必要であるか否かを判定する(S27)。具体的には、前述の第1の実施の形態と同様、デバイスコントローラ220は、外部デバイス400へのデータ転送の状況を監視し、そのデータ転送が完了した場合や失敗した場合には、割り込み処理が必要であると判断する。デバイスコントローラ220は、割り込み処理が必要であると判断した場合、バス301へ割り込み信号を送出する(S28)。バス301へ送出された割り込み信号は、このバス301に接続されたデータ転送制御部230に到達可能である。
Thereafter, the
データ転送制御部230は、デバイスコントローラI/F部233により割り込み信号を受けると、S20においてCPU210から通知された割り込み処理手順に従い、割り込み処理を行う。ここで、データ転送制御部230が行う割り込み処理は、本来、CPU210がデバイスコントローラ220からの割り込み信号を受けた場合に行う割り込み処理と同様である。具体的には、データ転送制御部230は、デバイスコントローラ220からバス301の制御権を取得した上で、そのデバイスコントローラ220のレジスタにアクセスするとともに(S30)、そのアクセス終了後にバスの制御権を開放し(S31)、メモリ213内のデータ転送制御情報を更新する(S32)。
When the data
データ転送制御部230による割り込み処理の後、CPU210は、次のデータ転送処理があるか否かを判定する(S33)。次のデータ転送処理がある場合には、CPU210によるバス301の制御権の取得(S22)以降の動作が繰り返される。一方、次のデータ転送処理がない場合には、一連の動作が終了する。
After the interrupt process by the data
なお、外部デバイス400から出力部250へのデータ転送が行われる場合には、前述のS21乃至S26の処理に代えて、以下のような処理が行われる。すなわち、CPU210は、外部デバイス400からのデータをスプールバッファメモリ212へ一時記憶するために、デバイスコントローラ220のレジスタにアクセスするとともに、データ転送制御情報をメモリ213に書き込む。更に、CPU210は、デバイスコントローラ220に対してデータ転送の命令を出す。デバイスコントローラ220は、この命令に従い、メモリ213から読み出したデータ転送制御情報に応じて、外部デバイス400からデータを読み出すために必要な処理を行い、読み出したデータをスプールバッファメモリ212へ書き込む。その後、CPU210は、出力部250に対してデータ転送の命令を出し、出力部250は、この命令に従ってスプールバッファメモリ212からデータを読み出して出力する。
When data transfer from the
以上のように、本発明の第2の実施の形態によれば、デバイスコントローラ220が、外部デバイス400との間のデータ転送において、バス301へ割り込み信号を送出した場合、データ転送制御部230は、CPU210に代わって割り込み処理を行う。このため、第1の実施の形態と同様、CPU210は、割り込み処理を行う必要がなく、そのCPU210の負荷を軽減させることが可能となるとともに、迅速な割り込み処理が可能となる。
As described above, according to the second embodiment of the present invention, when the
また、データ転送制御部230は、CPU210から通知される割り込み処理手順を受け、この割り込み処理手順に従って、デバイスコントローラ220のレジスタへのアクセスと、メモリ213内のデータ転送制御情報の更新とを行っており、第1の実施の形態と同様、割り込み信号に対応する割り込み処理手順を簡易に認識し、CPU210が本来行う割り込み処理を、そのCPU210に代わって適切に行うことができる。
Further, the data
更に、本発明の第2の実施の形態によれば、割り込み処理時にデータ転送制御部230とデバイスコントローラ220との間でやり取りされる信号は、バス301のみを伝送され、CPU210が接続されたバス300には伝送されないため,そのバス300の負荷を軽減することが可能となる。
Further, according to the second embodiment of the present invention, a signal exchanged between the data
なお、上述した第1及び第2の実施の形態では、バス120、300及び301としてPCIバスを想定しているが、制御情報及びデータを伝送可能なバスであればよい。更には、入力部108及び240や、出力部110及び250は、複数構成されていてもよい。
In the first and second embodiments described above, a PCI bus is assumed as the
以上のように、本発明にかかるデータ転送装置及びデータ転送方法は、CPU等の内部デバイス制御手段の負荷を軽減させることが可能となるという効果を有し、装置外部のデバイスとの間のデータ転送を行うデータ転送装置及びデータ転送方法として有用である。 As described above, the data transfer apparatus and the data transfer method according to the present invention have an effect that the load on the internal device control means such as a CPU can be reduced, and data between devices outside the apparatus is obtained. The present invention is useful as a data transfer apparatus and a data transfer method for performing transfer.
100、200 データ転送装置
102、210 CPU
104、213 メモリ
106、220 デバイスコントローラ
108、240 入力部
110、250 出力部
112 割り込み処理部
120、300、301 バス
150、400 外部デバイス
211 CPU制御デバイス
212 スプールバッファメモリ
230 データ転送制御部
231 CPUI/F部
232 メモリI/F部
233 デバイスコントローラI/F部
234 スプールバッファI/F部
235 入力I/F部
236 出力I/F部
237 アービタ部
310、311、312 制御バス
320、321、322 データバス
100, 200
104, 213
Claims (6)
装置外部のデバイスとの間のデータ転送を制御し、割り込み処理の必要が生じた場合に装置内部へ割り込み信号を送出する外部デバイス制御手段と、
前記外部デバイス制御手段によって割り込み信号が送出された場合に、前記内部デバイス制御手段に代わって、前記割り込み信号に対応する割り込み処理を行う割り込み処理手段とを有することを特徴とするデータ転送装置。 Internal device control means for controlling devices inside the apparatus;
External device control means for controlling data transfer with a device external to the device and sending an interrupt signal to the inside of the device when interrupt processing is necessary;
A data transfer apparatus comprising: interrupt processing means for performing interrupt processing corresponding to the interrupt signal in place of the internal device control means when an interrupt signal is transmitted by the external device control means.
前記割り込み処理手段は、前記内部デバイス制御手段からの割り込み信号に対応する割り込み処理手順に従って、前記割り込み信号に対応する割り込み処理を行うことを特徴とする請求項1記載のデータ転送装置。 The internal device control means notifies the interrupt processing means of an interrupt processing procedure corresponding to the interrupt signal,
2. The data transfer apparatus according to claim 1, wherein the interrupt processing means performs interrupt processing corresponding to the interrupt signal in accordance with an interrupt processing procedure corresponding to the interrupt signal from the internal device control means.
前記外部デバイス制御手段が前記装置外部のデバイスとの間のデータ転送において、割り込み処理の必要が生じた場合に装置内部へ割り込み信号を送出する割り込み信号送出ステップと、
前記割り込み処理手段が前記外部デバイス制御手段によって割り込み信号が送出された場合に、前記内部デバイス制御手段に代わって、前記割り込み信号に対応する割り込み処理を行う割り込み処理ステップとを有することを特徴とするデータ転送方法。 In a data transfer method in a data transfer apparatus having internal device control means for controlling devices inside the apparatus, external device control means for controlling data transfer between devices outside the apparatus, and interrupt processing means for performing interrupt processing ,
An interrupt signal sending step for sending an interrupt signal to the inside of the device when the external device control means needs to perform interrupt processing in data transfer with the device outside the device;
An interrupt processing step for performing interrupt processing corresponding to the interrupt signal instead of the internal device control means when the interrupt processing means is sent out by the external device control means. Data transfer method.
前記割り込み処理ステップは、前記割り込み処理手段が前記内部デバイス制御手段からの割り込み信号に対応する割り込み処理手順に従って、前記割り込み信号に対応する割り込み処理を行うことを特徴とする請求項5記載のデータ転送方法。
The internal device control means has a processing procedure notification step of notifying the interrupt processing means of an interrupt processing procedure corresponding to the interrupt signal;
6. The data transfer according to claim 5, wherein in the interrupt processing step, the interrupt processing means performs interrupt processing corresponding to the interrupt signal in accordance with an interrupt processing procedure corresponding to the interrupt signal from the internal device control means. Method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004027648A JP2005222198A (en) | 2004-02-04 | 2004-02-04 | Data transferring device and data transferring method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004027648A JP2005222198A (en) | 2004-02-04 | 2004-02-04 | Data transferring device and data transferring method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005222198A true JP2005222198A (en) | 2005-08-18 |
Family
ID=34997787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004027648A Pending JP2005222198A (en) | 2004-02-04 | 2004-02-04 | Data transferring device and data transferring method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005222198A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835888A (en) * | 2021-09-23 | 2021-12-24 | 深圳创维数字技术有限公司 | Method for improving WiFi performance through CPU dynamic allocation, WiFi communication equipment and storage medium |
-
2004
- 2004-02-04 JP JP2004027648A patent/JP2005222198A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835888A (en) * | 2021-09-23 | 2021-12-24 | 深圳创维数字技术有限公司 | Method for improving WiFi performance through CPU dynamic allocation, WiFi communication equipment and storage medium |
CN113835888B (en) * | 2021-09-23 | 2023-09-08 | 深圳创维数字技术有限公司 | Method for improving WiFi performance through CPU dynamic allocation, wiFi communication equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006227836A (en) | Data transfer system and data transfer method | |
KR20050043303A (en) | High speed data transmission method using direct memory access method in multi-processors condition and apparatus therefor | |
JP7001001B2 (en) | Control device, image forming device, control method and control program | |
JP4446968B2 (en) | Data processing device | |
JPH10334037A (en) | Communication dma device | |
JP2005222198A (en) | Data transferring device and data transferring method | |
JP4779010B2 (en) | Buffering device and buffering method | |
US11360529B2 (en) | Signal processing system, signal processing circuit, and reset control method | |
JP2005258509A (en) | Storage device | |
JP4458873B2 (en) | Serial data transfer method and apparatus | |
JP2007249667A (en) | Data transfer device, and data transfer system | |
JP2010140440A (en) | Bus arbitration device | |
JP2005293435A (en) | Data transfer device and its setting method | |
JP2006004038A (en) | Data transmission control unit | |
JP2008198119A (en) | Data transfer device, data transfer system, and data transfer method | |
JP2010033314A (en) | Bus access circuit device and bus access method | |
JP2006092077A (en) | Bus system | |
KR100427169B1 (en) | Communication system and data transmission method thereof | |
JP2010039975A (en) | Usb host system, data transfer method and video and sound processing system | |
JP2820054B2 (en) | Bus interface device | |
JP2638505B2 (en) | Bus interface device | |
JP2005115464A (en) | Data processor and data control unit | |
JP2005316700A (en) | Data transfer method and device | |
JP2003271202A (en) | Process controller system | |
JP2012094081A (en) | Bus arbitration circuit and bus arbitration method |