JP2865131B2 - Data transfer method - Google Patents

Data transfer method

Info

Publication number
JP2865131B2
JP2865131B2 JP10738096A JP10738096A JP2865131B2 JP 2865131 B2 JP2865131 B2 JP 2865131B2 JP 10738096 A JP10738096 A JP 10738096A JP 10738096 A JP10738096 A JP 10738096A JP 2865131 B2 JP2865131 B2 JP 2865131B2
Authority
JP
Japan
Prior art keywords
data transfer
request
data
adapter
read
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.)
Expired - Fee Related
Application number
JP10738096A
Other languages
Japanese (ja)
Other versions
JPH09293044A (en
Inventor
孝 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP10738096A priority Critical patent/JP2865131B2/en
Publication of JPH09293044A publication Critical patent/JPH09293044A/en
Application granted granted Critical
Publication of JP2865131B2 publication Critical patent/JP2865131B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、DMAリードアク
セス時の先行読出しを行う装置に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an apparatus for performing pre-read at the time of DMA read access.

【0002】[0002]

【従来の技術】周辺装置を制御しI/Oバスに接続され
る周辺コントローラは、主記憶装置との間でのデータの
読み出し・書き込みをDMA手段を用いて行う方法が一
般的であり、公知である。周辺コントローラからのデー
タ読み出しは、DMAリード処理を用いて行う。DMA
リード処理は、アドレスと必要なデータ量を上位側バス
に送出し、これが主記憶装置まで伝達され、この結果主
記憶装置からデータが返却されるという手順を踏む。
2. Description of the Related Art Generally, a peripheral controller which controls a peripheral device and is connected to an I / O bus reads and writes data from and to a main storage device by using a DMA means. It is. Data reading from the peripheral controller is performed using DMA read processing. DMA
In the read processing, an address and a required data amount are sent to the upper bus, and this is transmitted to the main storage device, and as a result, data is returned from the main storage device.

【0003】DMAリード動作においては、リード要求
を発行してからデータが返ってくるまでの間、I/Oバ
スと主記憶装置間のバスを占有してしまう第1の方式が
ある。また、リクエストを発行した後で一旦バスを解放
し、別のリクエストを受け付けておき、データが主記憶
装置から送られてきた時にI/Oバスと主記憶装置をつ
なぐI/OアダプタがI/Oバスを確保し要求元にデー
タを返送する第2の方式がある。
In the DMA read operation, there is a first method in which the bus between the I / O bus and the main storage device is occupied from when a read request is issued until data is returned. Also, after issuing a request, the bus is released once, another request is accepted, and when data is sent from the main storage device, an I / O adapter connecting the I / O bus and the main storage device is connected to the I / O adapter. There is a second method for securing the O bus and returning data to the request source.

【0004】上述したどちらの方式もリクエストを発行
してから要求したデータが返却されるまでの時間は、I
/Oバスと主記憶装置間のデータ転送時間の倍(往復時
間分)以上でしか実現出来ないという問題があった。
[0004] In both of the above methods, the time from issuing a request until the requested data is returned is I
There is a problem that it can be realized only over twice the data transfer time between the / O bus and the main storage device (the round-trip time).

【0005】これを解決するために、特開平2−110
646に述べられている様な方法が提案されている。こ
の方法では、I/Oアダプタに先読み機能を保有させ、
あるDMAリードリクエストがあった場合、そのリクエ
ストの後続部分のデータを読み出しておくという方法
(プリフェッチと呼ぶ)である。
To solve this problem, Japanese Patent Laid-Open Publication No. 2-110
A method such as that described in 646 has been proposed. In this method, the I / O adapter has a look-ahead function,
In this method, when a certain DMA read request is received, data of a subsequent portion of the request is read out (referred to as prefetch).

【0006】[0006]

【発明が解決しようとする課題】しかしながら、この方
法でも毎回リードリクエストを発行することに変わりは
ないため、I/Oバス上のビジー率(占有率)は下がる
が、主記憶装置とI/Oバス以上のバス間のビジー率を
下げることができず性能向上対策としては不十分であ
る。
However, even with this method, the read request is issued every time, so that the busy rate (occupancy rate) on the I / O bus decreases, but the main storage device and the I / O bus are not connected. The busy rate between buses higher than the bus cannot be reduced, which is not sufficient as a measure for improving performance.

【0007】また、プリフェッチの効果を十分に引き出
すためには、I/Oバスと主記憶装置間のアクセス時間
を考慮したバッファをI/Oアダプタに搭載する必要が
あり、I/Oバスと主記憶装置間のアクセス時間が長く
なればなるほどバッファを多量に持つ必要があり、HW
(ハードウエア)を増加させてしまうという問題があっ
た。
In order to fully exploit the effect of prefetch, it is necessary to mount a buffer in the I / O adapter in consideration of the access time between the I / O bus and the main storage device. The longer the access time between the storage devices, the more buffers need to be provided.
There is a problem that (hardware) is increased.

【0008】上記のような問題点を鑑み、本発明の主た
る課題は、従来のプリフェッチ方式に比べI/Oバスと
主記憶装置間のバスのビジー率を抑え、性能を向上させ
ることのできるデータ転送方式を提供することにある。
In view of the above problems, a main object of the present invention is to reduce the bus busy rate between an I / O bus and a main storage device as compared with the conventional prefetch method, and to improve data performance. To provide a transfer method.

【0009】本発明はまた、I/Oアダプタ内のバッフ
ァを抑えてHW量を削減することのできるデータ転送方
式を提供しようとするものである。
Another object of the present invention is to provide a data transfer system capable of reducing the amount of HW by suppressing the buffer in the I / O adapter.

【0010】[0010]

【課題を解決するための手段】本発明によるデータ転送
方式は、CPUと主記憶装置とディスク等の周辺装置を
制御する周辺コントローラと前記CPUと前記周辺コン
トローラ間のデータ転送及び前記周辺コントローラと前
記主記憶装置間のデータ転送を行うI/Oアダプタを有
するデータ処理装置であって、前記I/Oアダプタ内に
前記周辺コントローラから発生するリードアクセス(以
下、DMAリードと呼ぶ)に基づいて後続のDMAリー
ドがあることを予測し、前記周辺コントローラから本当
のDMAリード要求が来る前に前記主記憶装置から前記
予測したデータを取り込んでおき前記周辺コントローラ
から本当のリクエストが来た場合に取り込んでおいたデ
ータを前記周辺コントローラに返却する先行読出し機能
を有するデータ処理装置において、前記I/Oアダプタ
は、先行読出し時の前記主記憶装置からのデータを受け
取るバッファと、前記周辺コントローラから発生する前
記主記憶装置に対するDMAリード、ライトアクセス
(以下、DMAライトと呼ぶ)を識別し、DMAリード
時そのリクエストに対応するデータが前記バッファ内に
格納されている場合は、前記バッファから前記周辺コン
トローラに対しデータを返却する手段と、DMAリード
で、そのリクエストに対応するデータが前記バッファに
格納されていない場合にそのリード要求が連続したデー
タ転送を行う可能性があるものなのかを識別する手段
と、連続したアクセスがあると判断した場合に先行読出
しを行うために前記周辺コントローラからのDMAリー
ドに基づく先行読出しのための転送要求を前記主記憶装
置へ行うために前記主記憶装置の主記憶が割り当てられ
ていない特定のアドレスに対してライトリクエストを発
行する手段とを持つバッファ機構を有し、前記主記憶装
置は、特定アドレスに対するライトリクエストを受け付
けた場合、要求元I/Oアダプタに対して要求されたア
ドレスからデータ転送を一定時間間隔毎に行い、前記I
/Oアダプタからの転送中止指示またはデータのページ
バウンダリ等の切れ目を検出した場合等、データ転送を
中止する手段を持つデータ転送制御機構を有することに
より先行読出しを可能とすることを特徴とする。
A data transfer system according to the present invention comprises a peripheral controller for controlling peripheral devices such as a CPU, a main storage device and a disk, a data transfer between the CPU and the peripheral controller, and a data transfer between the peripheral controller and the peripheral controller. A data processing device having an I / O adapter for performing data transfer between main storage devices, wherein a subsequent I / O adapter is provided in the I / O adapter based on a read access (hereinafter referred to as a DMA read) generated from the peripheral controller. Predict that there is a DMA read, fetch the predicted data from the main memory before a real DMA read request from the peripheral controller, and fetch if the real request comes from the peripheral controller. Data processing having a pre-reading function of returning the stored data to the peripheral controller. In the apparatus, the I / O adapter includes a buffer for receiving data from the main storage device at the time of preceding reading, and a DMA read / write access to the main storage device generated from the peripheral controller (hereinafter, referred to as a DMA write). Means for returning data to the peripheral controller from the buffer when the data corresponding to the request is stored in the buffer at the time of DMA read, and data corresponding to the request at the time of DMA read. Means for determining whether the read request is likely to perform continuous data transfer when the data is not stored in the buffer, and performing the preceding read when it is determined that there is continuous access. Transfer request for preceding read based on DMA read from peripheral controller Means for issuing a write request to a specific address to which the main storage of the main storage device is not allocated in order to perform the transfer to the main storage device, wherein the main storage device When a write request is received, data transfer is performed from the address requested to the requesting I / O adapter at regular time intervals, and
In the case where a transfer stop instruction from the / O adapter or a break such as a page boundary of data is detected, a data transfer control mechanism having means for stopping data transfer is provided, thereby enabling advance reading.

【0011】前記データ転送制御機構は、前記I/Oア
ダプタへのデータ転送時間間隔を前記I/Oアダプタか
らの設定により指示できる手段を有し、指定された時間
間隔でのデータ転送が行える。
The data transfer control mechanism has means for instructing a data transfer time interval to the I / O adapter by setting from the I / O adapter, and can perform data transfer at a specified time interval.

【0012】前記データ転送制御機構はまた、上記DM
Aライト動作によるデータ転送を行うデータ転送制御機
構を複数保有した場合、データ転送処理中を示すビジー
フラグを発生する手段を有し、リクエストを動的に空い
ている前記データ転送制御機構に割当てデータ転送を制
御することが可能である。
[0012] The data transfer control mechanism also includes the DM
When a plurality of data transfer control mechanisms for performing data transfer by the A-write operation are provided, there is provided a means for generating a busy flag indicating that data transfer is being performed, and a request is dynamically allocated to the data transfer control mechanism which is free. Can be controlled.

【0013】前記データ転送制御機構は更に、前記主記
憶制御装置が保有する複数のデータ転送制御機構におい
て全てのデータ転送制御機構がデータ転送を処理してお
り、リクエストの受付が不能になったことを前記ビジー
フラグにより識別する手段、受付不能状態をI/Oアダ
プタに通知する手段を有し、先行読出しのためのライト
リクエストの発生を抑えることが可能である。
The data transfer control mechanism may further comprise a plurality of data transfer control mechanisms owned by the main storage controller, wherein all data transfer control mechanisms are processing data transfer, and the request cannot be accepted. And a means for notifying the I / O adapter of an unacceptable state, so that it is possible to suppress the occurrence of a write request for preceding reading.

【0014】前記データ転送制御機構は更に、前記主記
憶制御装置において前記リクエスト受付不能状態になっ
た後、処理を実行していたデータ転送の中止指示がI/
Oアダプタからあった場合、または、ぺ一ジバウンダリ
境界を検出して処理をしていたデータ転送を中止した場
合等のデータ転送終了を検出する手段を有し、前記通知
手段は、上記データ転送リクエストが受付可能となった
ことをI/Oアダプタに通知することにより、先行読出
し動作を再開可能である。
[0014] The data transfer control mechanism may further include, after the request becomes unacceptable in the main storage control device, an instruction to stop the data transfer that has been executing the process.
O means for detecting the end of data transfer when there is an O-adapter, or when the data transfer which has been processing by detecting a page boundary has been stopped. By notifying the I / O adapter that the request can be accepted, the preceding read operation can be restarted.

【0015】前記I/Oアダプタは、I/Oバスを介し
て複数の前記周辺コントローラを接続した場合に発生す
る複数のDMAリード要求を並行して受け付けることが
出来るように複数の前記バッファ機構と前記バッファ機
構が先行リード中であることを示すプリフェッチフラグ
を発生する手段、I/Oバスからのリクエストが発生し
た時に空いているバッファ機構を探し、その空きバッフ
ァ機構に動的に割当てる手段を有し、上記先行読出しの
ためのデータ転送を行うことが可能である。
The I / O adapter includes a plurality of buffer mechanisms so that a plurality of DMA read requests generated when the plurality of peripheral controllers are connected via an I / O bus can be received in parallel. A means for generating a prefetch flag indicating that the buffer mechanism is performing a preceding read; a means for searching for an empty buffer mechanism when a request from the I / O bus is generated and dynamically allocating to the empty buffer mechanism. However, it is possible to perform data transfer for the preceding reading.

【0016】前記I/Oアダプタはまた、前記主記憶制
御装置から送られて来たデータが前記周辺コントローラ
側に吐き出されず前記バッファ機構に蓄えられ一杯にな
ったことを検出する手段、前記主記憶制御装置に対して
データ転送の一時停止を伝える手段を有し、先行読出し
の機能を一時的に中止させることが可能である。
The I / O adapter further includes means for detecting that the data sent from the main memory control device is not discharged to the peripheral controller but is stored in the buffer mechanism and becomes full, A means for notifying the control device of the suspension of the data transfer can be provided to temporarily stop the preceding reading function.

【0017】前記I/Oアダプタは更に、前記周辺コン
トローラ側からのDMAリードにより前記バッファから
前記周辺コントローラにデータを返却し、I/Oアダプ
タ内のバッファに空きが発生したことを検出する手段、
データ受付が可能となったことを前記主記憶装置に対し
て通知する手段を有し、中断したデータ転送を再開させ
ることが可能である。
The I / O adapter further includes means for returning data from the buffer to the peripheral controller by a DMA read from the peripheral controller, and detecting that a buffer in the I / O adapter has become empty.
It has means for notifying the main storage device that data reception has become possible, and it is possible to restart interrupted data transfer.

【0018】前記I/Oアダプタは更に、どの周辺コン
トローラからのDMAリードを先行読出し処理している
かを保持しておく手段、同一の周辺コントローラから送
出されるDMAリードリクエストが連続していないと
き、DMAリードリクエスト以外のリクエスト(DMA
ライト等)が発行されたことを検出する手段を有し、前
記検出手段により先行読出し処理を無効と判断した後、
I/Oアダプタ内に保有するデータを破棄し、前記主記
憶制御装置に対してデータ転送の中止を指示する手段を
有し、先行読出しの処理を遅滞無く中止することが可能
である。
The I / O adapter further comprises means for holding which of the peripheral controllers is performing the pre-read processing of the DMA read, and when the DMA read requests sent from the same peripheral controller are not continuous, Requests other than DMA read request (DMA
Write, etc.) has been issued, and after the detecting means determines that the preceding read process is invalid,
It has means for discarding the data held in the I / O adapter and instructing the main storage control device to stop data transfer, and can stop the preceding reading process without delay.

【0019】前記I/Oアダプタは更に、前記主記憶制
御装置に対してデータ転送の中止を指示した後、主記憶
装置からのデータ転送が終了するまで送られてくるデー
タを破棄する手段を有し、次の先行読出し処理を遅滞な
く行うことが可能である。
The I / O adapter further comprises means for instructing the main storage controller to stop data transfer, and thereafter discarding data transmitted until data transfer from the main storage device is completed. However, the next preceding reading process can be performed without delay.

【0020】[0020]

【作用】本発明によれば、I/Oバス配下は、従来通り
のDMA機能を使えるようにしておき、かつI/Oアダ
プタと主記憶装置の間でプリフェッチ方式と同様にI/
Oバス上でみたデータ転送時間を短縮し、一方、従来の
プリフェッチ方式に比べI/Oバスと主記憶装置間のバ
スのビジー率を抑えて性能を向上させ、また、I/Oア
ダプタ内のバッファを半分に抑えられるためHW量を削
減することができる。
According to the present invention, the conventional DMA function can be used under the control of the I / O bus, and the I / O adapter and the main storage device are connected to the I / O bus in the same manner as the prefetch system.
The data transfer time as viewed on the O bus is shortened, while the bus busy rate between the I / O bus and the main storage device is suppressed to improve the performance as compared with the conventional prefetch method. Since the number of buffers can be reduced to half, the HW amount can be reduced.

【0021】[0021]

【発明の実施の形態】本発明の好ましい実施の形態を図
面を参照して説明する。図1は、全体の構成図を示して
いる。CPU3と主記憶装置2とI/Oアダプタ1は、
プロセッサバス5を介して接続されている。周辺コント
ローラ4とI/Oアダプタ1は、I/Oバス6を介して
接続されている。プロセッサバス5には、I/Oアダプ
タ1を複数接続することが可能であり、I/Oバス6に
も、複数の周辺コントローラ4が接続可能である。ま
た、I/Oアダプタ1は、多段で接続されるケースもあ
るが、ここでは、説明を簡単化するために1段とする。
多段接続に於いては、本発明による機能をどのように持
っても良い。
Preferred embodiments of the present invention will be described with reference to the drawings. FIG. 1 shows an overall configuration diagram. The CPU 3, the main storage device 2, and the I / O adapter 1
It is connected via a processor bus 5. The peripheral controller 4 and the I / O adapter 1 are connected via an I / O bus 6. A plurality of I / O adapters 1 can be connected to the processor bus 5, and a plurality of peripheral controllers 4 can be connected to the I / O bus 6. In some cases, the I / O adapter 1 is connected in multiple stages, but here, for simplicity of description, only one stage is used.
In a multistage connection, any function according to the present invention may be provided.

【0022】周辺コントローラ4内には、DMA処理機
能が搭載されており、CPU3からの指示により周辺コ
ントローラ4内のDMA処理機能が動作し、I/Oバス
6にデータ転送要求を発行しデータの転送を行う。I/
Oアダプタ1は、I/Oバス6から発生する全てのリク
エストを受け付けるリクエスト受付部10、先行読出し
に関する制御を行うバッファ機構11、プロセッサバス
5の処理を行うプロセッサバス処理部15を含み、ここ
では、これ以外の部分についての説明を省略する。
The peripheral controller 4 has a DMA processing function. The DMA processing function in the peripheral controller 4 operates according to an instruction from the CPU 3, issues a data transfer request to the I / O bus 6, and issues a data transfer request. Perform a transfer. I /
The O adapter 1 includes a request receiving unit 10 that receives all requests generated from the I / O bus 6, a buffer mechanism 11 that performs control related to preceding reading, and a processor bus processing unit 15 that performs processing of the processor bus 5. The description of the other parts is omitted.

【0023】バッファ機構11は、先行読出し処理に関
するリクエストを管理するリクエスト管理部12と、先
行読出しデータを格納しておくバッファ部14と、バッ
ファの状態を管理するバッファ管理部13とを有する。
リクエスト管理部12は、図2を参照して、連続転送の
可否を判断する連続転送チェック部121、先行読出し
の制御を行うリクエスト処理部122、主記憶装置2へ
の先行読出し用のリクエスト発行を制御するリクエスト
変換部120、先行読出し処理中を示すプリフェッチフ
ラグを発生するプリフェッチフラグ発生部123を有す
る。
The buffer mechanism 11 has a request management unit 12 for managing a request relating to the preceding read processing, a buffer unit 14 for storing the preceding read data, and a buffer management unit 13 for managing the state of the buffer.
Referring to FIG. 2, the request management unit 12 issues a continuous transfer check unit 121 that determines whether or not continuous transfer is possible, a request processing unit 122 that controls advance read, and issues a request for advance read to the main storage device 2. It has a request conversion unit 120 for controlling, and a prefetch flag generation unit 123 for generating a prefetch flag indicating that pre-read processing is being performed.

【0024】バッファ管理部13内には、プリフェッチ
終了後のデータ破棄を制御するデータ破棄部131があ
る。また、リクエスト処理部122には、I/Oバス6
にデータを吐き出すデータを吐き出し処理部126、先
行読出しに伴う各種データを保持している先行読出し保
持部125、先行読出しの一時停止の検出や、データ転
送制御機構23に対しての先行読出しに伴うデータ転送
の一時中断や、再開を通知するリクエスト一時停止、再
開通知部124、先行読出しにおける終了を検出する転
送終了検出部127、転送終了をデータ転送制御機構2
3に通知する転送終了通知部127を有する。
The buffer management unit 13 includes a data discarding unit 131 for controlling data discarding after the end of prefetch. The request processing unit 122 includes an I / O bus 6
A data processing unit 126 that discharges data, a preceding reading holding unit 125 that retains various data associated with preceding reading, detection of temporary suspension of preceding reading, and accompanying a preceding reading to the data transfer control mechanism 23 Request suspension and resumption notification unit 124 for notifying the suspension or resumption of data transfer, transfer end detection unit 127 for detecting the end of preceding reading, and data transfer control mechanism 2 for notifying the transfer end.
3 has a transfer end notifying section 127 for notifying the transfer end.

【0025】主記憶装置2内の主記憶制御装置20は、
プロセッサバス5を介したリクエストを受付けるリクエ
スト受付部21と先行読出し処理用のデータ転送を制御
するデータ転送制御機構23等を有する。リクエスト受
付部21は、主記憶空間へのアクセスかデータ転送要求
かを識別し、通常の主記憶装置に対するリクエストであ
るならば、そのリクエストを処理する通常リクエスト処
理部22にリクエストを送る機能を持つ。一方、データ
転送制御機構23は、受け付けたリクエストを処理する
リクエスト処理部230、データ転送のタイミングを計
時するタイマー部231、先行読出し処理中を示すビジ
ーフラグを発生するビジーフラグ発生部232からな
る。また、リクエスト受付部21には、先行リード要求
の受付けが不可能であることを検出し、通知するリクエ
スト不可通知部24がある。
The main storage control device 20 in the main storage device 2
It has a request receiving unit 21 for receiving a request via the processor bus 5, a data transfer control mechanism 23 for controlling data transfer for preceding read processing, and the like. The request receiving unit 21 has a function of identifying whether the request is an access to the main storage space or a data transfer request, and if the request is for a normal main storage device, sends the request to a normal request processing unit 22 that processes the request. . On the other hand, the data transfer control mechanism 23 includes a request processing unit 230 that processes the received request, a timer unit 231 that counts the timing of data transfer, and a busy flag generation unit 232 that generates a busy flag indicating that the preceding reading process is being performed. Further, the request receiving unit 21 includes a request refusal notifying unit 24 which detects that the preceding read request cannot be received and notifies the request.

【0026】次に、周辺コントローラ4からDMAリー
ドまたは、DMAライトが発生する所から順を追って説
明する。
Next, a description will be given in order from a place where a DMA read or a DMA write occurs from the peripheral controller 4.

【0027】1)周辺コントローラ4からのリクエスト
は全てI/Oアダプタ1のリクエスト受付部10で受け
付ける。リクエスト受付部10は、周辺コントローラ4
から受けたリクエストを調べ、DMAライトリクエスト
であるならば、プロセッサバス5に対してそのままリク
エストを発行するためプロセッサバス処理部15に受け
付けたリクエストを流す。
1) All requests from the peripheral controller 4 are received by the request receiving unit 10 of the I / O adapter 1. The request receiving unit 10 is a peripheral controller 4
The request received from the processor bus 5 is checked, and if the request is a DMA write request, the received request is sent to the processor bus processing unit 15 to issue the request to the processor bus 5 as it is.

【0028】一方、DMAリードリクエストの場合は、
送られてきたリードリクエストのアドレスと転送長等の
情報とプリフェッチフラグの状態とリクエスト処理部1
22の先行読出し保持部125から送られてくる現在先
行リード機構が保持しているデータ情報とをチェックす
る。プリフェッチフラグより先行リード中であり、ま
た、受け取ったリクエストのアドレス等が先行リード中
のアドレス等に該当すれば、リクエスト情報をバッファ
機構11のリクエスト処理部122に送る。
On the other hand, in the case of a DMA read request,
Information such as the address and transfer length of the received read request, the state of the prefetch flag, and the request processing unit 1
Then, the data information transmitted from the preceding read holding unit 125 and currently held by the preceding read mechanism is checked. If the prefetch flag indicates that the address is being read ahead and the address of the received request corresponds to the address or the like that is being read ahead, the request information is sent to the request processing unit 122 of the buffer mechanism 11.

【0029】リクエスト処理部122のデータ吐出し処
理部126は、受け取ったリクエストとバッファ管理部
13からの情報をもとに、該当するデータがバッファ部
14に格納されているかを確認する。バッファ部14内
にDMAリードリクエストに対応するデータが格納され
ていた場合は、リクエスト処理部12のデータ吐出し処
理部126はデータ送出処理を行う。データ送出処理
は、バッファ部14内の該当するデータブロックをI/
Oバス6に送出し、自分が保持しているデータ情報の更
新を行う。しかし、データがまだバッファ部14に格納
されていない場合は、主記憶装置2からのデータ到着を
待ち合わせる。データが到着したことは、バッファ管理
部13からリクエスト処理部122のデータ吐出し処理
部126に通知される。
The data discharge processing unit 126 of the request processing unit 122 confirms whether the corresponding data is stored in the buffer unit 14 based on the received request and information from the buffer management unit 13. When the data corresponding to the DMA read request is stored in the buffer unit 14, the data ejection processing unit 126 of the request processing unit 12 performs a data transmission process. In the data transmission processing, the corresponding data block in the buffer
The data is transmitted to the O bus 6 to update the data information held therein. However, if the data has not yet been stored in the buffer unit 14, it waits for the data to arrive from the main storage device 2. The arrival of data is notified from the buffer management unit 13 to the data ejection processing unit 126 of the request processing unit 122.

【0030】しかし、リクエスト受付部10で、先行リ
ード処理中であるが、受け付けたアドレス等と先行読出
し処理の情報が一致しなかった場合は、先行リード処理
を行うことができないため、該当リクエストをプロセッ
サバス処理部15に送る。
However, if the request reception unit 10 is performing the preceding read processing, but the received address or the like does not match the information of the preceding read processing, the preceding read processing cannot be performed. This is sent to the processor bus processing unit 15.

【0031】一方、周辺コントローラ4からのリクエス
トを受付時、先行リード処理が動作していないことをプ
リフェッチフラグから受けていた場合、リクエスト受付
部10は、受け付けたリクエストを連続転送チェック部
121へ送る。連続転送チェック部121では、受け付
けたリクエストのアドレス・データ転送長等の情報から
連続したデータ転送を行う可能性を判断する、そして、
連続データ転送の可能性ありと判断した場合、主記憶制
御装置20の特定アドレスに対するライトリクエストを
発行するようリクエスト変換部120に指示し、かつプ
リフェッチフラグを先行読出し処理中の状態にし、かつ
その時のプリフェッチに関連する情報を先行読出し保持
部125に格納する。
On the other hand, when receiving a request from the peripheral controller 4 and receiving from the prefetch flag that the preceding read process is not operating, the request receiving unit 10 sends the received request to the continuous transfer checking unit 121. . The continuous transfer check unit 121 determines the possibility of performing continuous data transfer from information such as the address and data transfer length of the received request, and
If it is determined that there is a possibility of continuous data transfer, the request conversion unit 120 is instructed to issue a write request to a specific address of the main memory control device 20, and the prefetch flag is set to a state of pre-read processing, and Information related to the prefetch is stored in the preceding read holding unit 125.

【0032】連続データ転送の可能性無しと判断した場
合には、受け付けたリクエストをそのままプロセッサバ
ス5に発行するため、リクエストをプロセッサバス処理
部15に送出してしまう。リクエスト変換部120で
は、先行リードのデータ転送のためのライトリクエスト
を生成する。ライトリクエスト内には転送して欲しい先
頭アドレスと転送単位(何バイト毎に送って欲しいの
か)と転送時間間隔(どれくらいの間隔で前記転送単位
を送って欲しいのか)をデータとして格納し、これを主
記憶制御装置20の特定アドレスに対して送りつける。
If it is determined that there is no possibility of continuous data transfer, the request is sent to the processor bus processing unit 15 because the received request is issued to the processor bus 5 as it is. The request converter 120 generates a write request for data transfer of the preceding read. In the write request, the start address to be transferred, the transfer unit (how many bytes should be sent), and the transfer time interval (how long the transfer unit should be sent) are stored as data. It is sent to a specific address of the main storage control device 20.

【0033】主記憶制御装置20内のリクエスト受付部
21は、受け付けたリクエストに対して主記憶空間への
アクセスかデータ転送要求かを識別し、通常の主記憶装
置に対するリクエストであるならば、そのリクエストを
処理する通常リクエスト処理部22にリクエストを送
る。一方、データ転送リクエストであるならば、データ
転送制御機構23に対して受け付けたリクエストを送
る。データ転送制御機構23内のリクエスト処理部23
0は、与えられたアドレスから主記憶内のデータを読み
出し転送を開始する。1度に送るベきデータ量は、I/
Oアダプタ1から送られてきた情報を元に決定する。1
転送単位に区切られたデータは、データ転送制御機構2
3が保有する転送間隔を指示するタイマー部231を用
いて一定間隔でI/Oアダプタ1に送られる。タイマー
値は、I/Oアダプタ1から送られてきた情報をリクエ
スト受付時にタイマー部231のタイマに設定してお
く。
The request receiving unit 21 in the main storage control unit 20 identifies whether the received request is an access to the main storage space or a data transfer request. The request is sent to the normal request processing unit 22 that processes the request. On the other hand, if the request is a data transfer request, the received request is sent to the data transfer control mechanism 23. Request processing unit 23 in data transfer control mechanism 23
0 reads data in the main memory from the given address and starts transfer. The amount of data to be sent at one time is I /
It is determined based on the information sent from the O adapter 1. 1
The data divided into transfer units is transmitted to the data transfer control mechanism 2
3 is sent to the I / O adapter 1 at regular intervals by using a timer unit 231 for designating a transfer interval held by the I / O adapter 1. As the timer value, the information sent from the I / O adapter 1 is set in the timer of the timer unit 231 when the request is received.

【0034】主記憶装置2からI/Oアダプタ1に送ら
れてきたデータは、先行リードによるデータと識別され
た場合、I/Oアダプタ1のバッファ部14に登録され
る。バッファ管理部13は、データの登録が行われたこ
とを検出し、リクエスト処理部122のデータ吐出し処
理部126にデータ到着を伝える。リクエスト処理部1
22のデータ吐出し処理部126では、周辺コントロー
ラ4に対して要求されたデータを返却する。
The data sent from the main storage device 2 to the I / O adapter 1 is registered in the buffer unit 14 of the I / O adapter 1 when the data is identified as data obtained by preceding reading. The buffer management unit 13 detects that data has been registered, and notifies the data ejection processing unit 126 of the request processing unit 122 of data arrival. Request processing unit 1
The data discharge processing unit 126 returns the requested data to the peripheral controller 4.

【0035】本先行リード処理の終了は、I/Oアダプ
タ1のバッファ機構11および主記憶制御装置20のデ
ータ転送制御機構23でそれぞれチェックされる。I/
Oアダプタ1内のバッファ機構11の転送終了検出部1
27での転送終了検出条件は、主記憶装置2からおくら
れてくるデータ位置がページ境界に達した時か、リクエ
ストを発行した周辺コントローラ4からDMAリードリ
クエストが連続していない時や、DMAライト等別の動
作が行われた時であり、転送終了検出部127で検出さ
れる。検出後、転送終了検出部127は、ページ境界以
外の終了条件で先行読出し中止を行う場合、主記憶装置
2に対して、先行読出し中止を通知するために転送終了
通知部127に中止伝達を要求し、転送終了通知部12
7は、リクエストを発行し、先行読出し処理を中止させ
る。
The end of the preceding read processing is checked by the buffer mechanism 11 of the I / O adapter 1 and the data transfer control mechanism 23 of the main storage controller 20, respectively. I /
Transfer end detection unit 1 of buffer mechanism 11 in O adapter 1
The transfer end detection condition at 27 is when the data position sent from the main storage device 2 has reached the page boundary, when the DMA read request from the peripheral controller 4 that has issued the request is not continuous, This is the time when another operation is performed, and is detected by the transfer end detection unit 127. After the detection, the transfer end detecting unit 127 requests the transfer end notifying unit 127 to transmit the stop to the main storage device 2 to notify the main storage device 2 of the stop of the precedent read in the case of performing the precedent read under the end condition other than the page boundary. Then, the transfer end notification unit 12
7 issues a request to stop the pre-read process.

【0036】主記憶制御装置20のデータ転送終了検出
部233は、I/Oアダプタ1からのデータ転送中止指
示をうけた場合か転送するデータのアドレスがページバ
ウンダリ境界を検出した場合等、データ転送終了の条件
を検出した時にデータ転送を終了する。
The data transfer end detection unit 233 of the main memory control device 20 performs data transfer when the data transfer stop instruction is received from the I / O adapter 1 or when the address of the data to be transferred detects a page boundary boundary. The data transfer ends when an end condition is detected.

【0037】2)次に、主記憶制御装置20内のデータ
転送制御機構23とI/Oアダプタ1内のバッファ機構
11が同一の数で構成されない場合を述べる。例えば、
I/Oアダプタ1のバッファ機構11が主記憶制御装置
20のデータ転送制御機構23より多い場合である。こ
の場合、主記憶制御装置20のデータ転送制御機構23
には、自分が現在データ転送を制御中であるか否かをリ
クエスト受付部21に通知するビジーフラグを発生する
ビジーフラグ発生部232を設けておくことにより管理
する。
2) Next, a case where the data transfer control mechanism 23 in the main storage control device 20 and the buffer mechanism 11 in the I / O adapter 1 are not formed by the same number will be described. For example,
This is a case where the number of buffer mechanisms 11 of the I / O adapter 1 is larger than that of the data transfer control mechanism 23 of the main storage control device 20. In this case, the data transfer control mechanism 23 of the main storage control device 20
Is managed by providing a busy flag generating unit 232 for generating a busy flag for notifying the request receiving unit 21 whether or not the device is currently controlling data transfer.

【0038】リクエスト受付部21では、データ転送制
御機構23からの処理中の情報を常時監視し、データ転
送制御機構23に空きがある場合には、I/Oアダプタ
1から送られて来たデータ転送リクエストを空いている
データ転送制御機構23に通知する。この時複数のデー
タ転送制御機構23に空きがある場合には、データ転送
制御機構23の弱番から割り振るように制御する。
The request receiving unit 21 constantly monitors information being processed from the data transfer control mechanism 23, and when there is a free space in the data transfer control mechanism 23, the data transmitted from the I / O adapter 1 The transfer request is notified to the vacant data transfer control mechanism 23. At this time, if there is a vacancy in the plurality of data transfer control mechanisms 23, control is performed so that the data transfer control mechanisms 23 are allocated from the weakest number.

【0039】主記憶制御装置20に設けたデータ転送制
御機構23が全てデータ転送制御中であることを検出し
た場合、主記憶制御装置20のリクエスト受付部21内
のリクエスト不可通知部24は、I/Oアダプタ1に対
し専用線を用いて、データ転送受付不可の通知を行う。
When the data transfer control mechanism 23 provided in the main storage control unit 20 detects that all data transfer control is being performed, the request refusal notification unit 24 in the request reception unit 21 of the main storage control unit 20 outputs Using the dedicated line, the I / O adapter 1 is notified that data transfer cannot be accepted.

【0040】次に、リクエスト受付部21では、I/O
アダプタ1から受けたリクエストがデータ転送中止を指
示するものであった場合、全てのデータ転送制御機構に
対して、I/Oアダプタから送られてきたアドレスと転
送中止を伝達する。伝達を受けたデータ転送制御機構2
3は、受け取ったアドレスを自分の保有しているアドレ
スと比較し、転送領域が一致した場合、行っているデー
タ転送を中止し、データ転送の終了をリクエスト受付部
21へのビジーフラグを解除することで伝達する。
Next, the request receiving unit 21 performs I / O
If the request received from the adapter 1 is to instruct data transfer suspension, the address transmitted from the I / O adapter and the transfer suspension are transmitted to all data transfer control mechanisms. Data transfer control mechanism 2 that received the information
3 is to compare the received address with its own address and, if the transfer area matches, stop the data transfer being performed and cancel the data transfer by releasing the busy flag to the request receiving unit 21 To communicate.

【0041】また、データ転送制御機構23は、指定さ
れたデータ転送が終了した場合も同様な処理を行う。ビ
ジーフラグの解除を検出したリクエスト受付部21のリ
クエスト不可通知部24は、前記の専用線を解除してデ
ータ転送受付が可能になったことをI/Oアダプタ1に
通知する。
The data transfer control mechanism 23 performs the same processing when the designated data transfer is completed. The request refusal notification unit 24 of the request reception unit 21 that has detected the release of the busy flag notifies the I / O adapter 1 that the exclusive line has been released and data transfer reception is enabled.

【0042】先行リードに伴うデータ転送が不可能な期
間で発生した周辺コントローラ4からのリクエストは、
I/Oアダプタ1にて先行リード処理を行わない通常の
リクエストとして処理される。
A request from the peripheral controller 4 generated during a period in which data transfer accompanying the preceding read cannot be performed is as follows:
The I / O adapter 1 processes the request as a normal request without performing the preceding read processing.

【0043】3)次は、I/Oアダプタ1にバッファ機
構11を複数設けた場合である。この場合、I/Oアダ
プタ1内のリクエスト受付部10に対しバッファ機構1
1内のプリフェッチフラグの自分が先行リード処理を処
理中か否かを示す信号を使用する。リクエスト受付部1
0がDMAリードを受け付けた場合、各バッファ機構の
状態をチェックするのは、前出のとおりである。もし、
バッファ機構11から空きの指示が有る場合には、空い
ているバッファ機構11に対して受け付けたリクエスト
を送出する。もし、全てのバッファ機構11が動作中で
あり、かつ受けたDMAリードリクエストが先行リード
処理のどれにも該当しないものであるならば、リクエス
ト受付部10は、そのままプロセッサバス処理部15に
リクエストを送出する。
3) The following is a case where a plurality of buffer mechanisms 11 are provided in the I / O adapter 1. In this case, the buffer mechanism 1 is provided to the request receiving unit 10 in the I / O adapter 1.
A signal indicating whether or not the prefetch flag in 1 is performing the preceding read processing is used. Request reception unit 1
When 0 accepts a DMA read, the state of each buffer mechanism is checked as described above. if,
If there is a free instruction from the buffer mechanism 11, the received request is sent to the free buffer mechanism 11. If all the buffer mechanisms 11 are in operation and the received DMA read request does not correspond to any of the preceding read processing, the request receiving unit 10 sends the request to the processor bus processing unit 15 as it is. Send out.

【0044】4)主記憶制御装置20からI/Oアダプ
タ1に送られてくるデータは、要求したバッファ機構1
1のバッファ部14に格納される。しかし、I/Oバス
6と主記憶装置2との間に転送性能差が有る場合にバッ
ファ部14が一杯になってしまうことがある。このた
め、主記憶制御装置20から送られて来たデータにより
バッファ部14が一杯になったことをバッファ管理部1
3が検出した場合は、リクエスト処理部122のリクエ
スト一時停止再開通知部124に対してバッファフルを
通知する。
4) The data sent from the main storage controller 20 to the I / O adapter 1
1 is stored in the buffer unit 14. However, when there is a difference in transfer performance between the I / O bus 6 and the main storage device 2, the buffer unit 14 may become full. Therefore, the fact that the buffer unit 14 has become full due to the data sent from the main storage control device 20 is determined by the buffer management unit 1.
If No. 3 is detected, the buffer full is notified to the request suspension / resumption notification unit 124 of the request processing unit 122.

【0045】バッファフルを通知されたリクエスト処理
部122のリクエスト一時停止再開通知部124では、
プロセッサバス5を介して主記憶制御装置20にどのバ
ッファ(転送)がフルであるかを通知する。通知を受け
た主記憶制御装置20のリクエスト受付部21では、デ
ータ転送制御機構23に対してデータの転送中断を指示
する。データ転送制御機構23では、前記中断指示を受
けた場合にデータ転送の中断を行う。当然、リクエスト
がデータ転送制御機構23に到達する前にデータが送ら
れるケースもあるので、バッファフル状態はこれを考慮
している。
The request suspending / resuming notifying unit 124 of the request processing unit 122 notified of the buffer full
The main storage controller 20 is notified via the processor bus 5 which buffer (transfer) is full. The request receiving unit 21 of the main storage control device 20 that has received the notification instructs the data transfer control mechanism 23 to interrupt the data transfer. The data transfer control mechanism 23 suspends the data transfer when receiving the suspension instruction. Naturally, data may be sent before the request reaches the data transfer control mechanism 23, so the buffer full state takes this into account.

【0046】上記中断を指示した後、周辺コントローラ
4からのDMAリードリクエストが発生した場合、その
リクエストは、同様にバッファ機構11に送られリクエ
ストに対する該当するデータ部分を周辺コントローラ4
に対して送り返す。送り返す動作に伴ってバッファ部1
4は、バッファフルの状態が解除される。バッファフル
状態解除を検出したバッファ管理部13は、リクエスト
一時停止再開通知部124に対してバッファフル解除に
よる主記憶制御装置20からのデータ転送再開の指示を
送るように要求する。
If a DMA read request is issued from the peripheral controller 4 after instructing the above interruption, the request is similarly sent to the buffer mechanism 11 and the corresponding data portion corresponding to the request is sent to the peripheral controller 4.
Send back to Buffer unit 1 in response to sending back
In step 4, the buffer full state is released. The buffer management unit 13 that has detected the release of the buffer full state requests the request suspension / resumption notification unit 124 to send an instruction to resume data transfer from the main storage control device 20 due to the release of the buffer full state.

【0047】リクエスト管理部12のリクエスト一時停
止再開通知部124では前記要求を受けて主記憶制御装
置20に対してデータ転送再開の指示をする。通知を受
けた主記憶制御装置20のリクエスト受付部21では、
データ転送制御機構23に対してデータの転送再開を指
示する。データ転送制御機構23では、前記再開指示を
受けた場合にデータ転送を再開する。
In response to the request, the request suspending / resuming notifying section 124 of the request managing section 12 instructs the main storage control device 20 to resume data transfer. In the request receiving unit 21 of the main storage control device 20 that has been notified,
It instructs the data transfer control mechanism 23 to restart data transfer. The data transfer control mechanism 23 restarts the data transfer when receiving the restart instruction.

【0048】5)I/Oアダプタ1は、バッファ機構1
1を利用したデータ転送の終了を検出するために、送ら
れてくるDMAリードリクエストの状況を逐次監視する
機能を持つ。これは、リクエスト処理部122の各種機
能により実現している。例えば、送られてきたDMAリ
ードリクエストが以前と連続したアドレスを保持してい
ないとき、同じ周辺コントローラが、DMAライト等を
送出したときを検出するとバッファ部14に保持してい
るデータにおける転送を中止し、かつ主記憶制御装置2
0に対して中止の指示を行う。これにより、通知を受け
た主記憶制御装置20のリクエスト受付部21では、前
記のようにデータ転送制御機構23に対してデータの転
送中止を指示する。
5) The I / O adapter 1 is a buffer mechanism 1
In order to detect the end of the data transfer using No. 1, a function of sequentially monitoring the status of the incoming DMA read request is provided. This is realized by various functions of the request processing unit 122. For example, when the same peripheral controller detects that a DMA write or the like has been transmitted when the received DMA read request does not hold a continuous address as before, the transfer of the data stored in the buffer unit 14 is stopped. And the main memory control device 2
0 is instructed to stop. Accordingly, the request receiving unit 21 of the main storage control device 20 that has received the notification instructs the data transfer control mechanism 23 to stop the data transfer as described above.

【0049】データ転送の実行とデータ転送中止指示の
間に、バッファ機構11のバッファ部14にはデータの
送信が行われることがある。これを回避するために、処
理を行っていないデータを受け付けた場合は、バッファ
管理部13のデータ破棄部131が検査を行い、バッフ
ァ部14に登録しないようにし、次の先行読出しをすぐ
に起動させることができる。
Data transmission to the buffer unit 14 of the buffer mechanism 11 may be performed between the execution of the data transfer and the data transfer stop instruction. In order to avoid this, when data that has not been processed is received, the data discarding unit 131 of the buffer management unit 13 checks the data, prevents the data from being registered in the buffer unit 14, and immediately starts the next preceding reading. Can be done.

【0050】[0050]

【発明の効果】以上説明したように本発明は、データ処
理装置におけるDMA転送について先行してデータを読
み出す場合でもバスのビジー率を下げることにより性能
向上が可能で、かつHW量を削減することが可能であ
る。
As described above, according to the present invention, even when data is read prior to the DMA transfer in the data processing device, the performance can be improved by lowering the bus busy rate and the HW amount can be reduced. Is possible.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明方式を実現するための構成を示したブロ
ック図である。
FIG. 1 is a block diagram showing a configuration for realizing the method of the present invention.

【符号の説明】[Explanation of symbols]

1 I/Oアダプタ 2 主記憶装置 3 CPU 4 周辺コントローラ 5 プロセッサバス 6 I/Oバス 10 リクエスト受付部 11 バッファ機構 13 バッファ管理部 14 バッファ部 15 プロセッサバス処理部 20 主記憶制御装置 21 リクエスト受付部 22 通常リクエスト処理部 23 データ転送制御機構 120 リクエスト変換部 121 連続転送チェック部 122 リクエスト処理部 123 プリフェッチフラグ発生部 210 タイマー部 232 ビジーフラグ発生部 DESCRIPTION OF SYMBOLS 1 I / O adapter 2 Main storage device 3 CPU 4 Peripheral controller 5 Processor bus 6 I / O bus 10 Request reception unit 11 Buffer mechanism 13 Buffer management unit 14 Buffer unit 15 Processor bus processing unit 20 Main storage control device 21 Request reception unit Reference Signs List 22 Normal request processing unit 23 Data transfer control mechanism 120 Request conversion unit 121 Continuous transfer check unit 122 Request processing unit 123 Prefetch flag generation unit 210 Timer unit 232 Busy flag generation unit

Claims (10)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 CPU(3)と主記憶装置(2)とディ
スク等の周辺装置を制御する周辺コントローラ(4)と
前記CPUと前記周辺コントローラ間のデータ転送及び
前記周辺コントローラと前記主記憶装置間のデータ転送
を行うI/Oアダプタ(1)を有するデータ処理装置で
あって、前記I/Oアダプタ内に前記周辺コントローラ
から発生するリードアクセス(以下、DMAリードと呼
ぶ)に基づいて後続のDMAリードがあることを予測
し、前記周辺コントローラから本当のDMAリード要求
が来る前に前記主記憶装置から前記予測したデータを取
り込んでおき前記周辺コントローラから本当のリクエス
トが来た場合に取り込んでおいたデータを前記周辺コン
トローラに返却する先行読出し機能を有するデータ処理
装置において、 前記I/Oアダプタは、先行読出し時の前記主記憶装置
からのデータを受け取るバッファ(14)と、前記周辺
コントローラから発生する前記主記憶装置に対するDM
Aリード、ライトアクセス(以下、DMAライトと呼
ぶ)を識別し、DMAリード時そのリクエストに対応す
るデータが前記バッファ内に格納されている場合は、前
記バッファから前記周辺コントローラに対しデータを返
却する手段(126)と、DMAリードで、そのリクエ
ストに対応するデータが前記バッファに格納されていな
い場合にそのリード要求が連続したデータ転送を行う可
能性があるものなのかを識別する手段(121)と、連
続したアクセスがあると判断した場合に先行読出しを行
うために前記周辺コントローラからのDMAリードに基
づく先行読出しのための転送要求を前記主記憶装置へ行
うために前記主記憶装置の主記憶が割り当てられていな
い特定のアドレスに対してライトリクエストを発行する
手段(120)とを持つバッファ機構(11)を有し、 前記主記憶装置は、特定アドレスに対するライトリクエ
ストを受け付けた場合、要求元I/Oアダプタに対して
要求されたアドレスからデータ転送を一定時間間隔毎に
行い、前記I/Oアダプタからの転送中止指示またはデ
ータのページバウンダリ等の切れ目を検出した場合等、
データ転送を中止する手段(230)を持つデータ転送
制御機構(20)を有することにより先行読出しを可能
とすることを特徴とするデータ転送方式。
1. A CPU (3), a main memory (2), a peripheral controller (4) for controlling a peripheral device such as a disk, data transfer between the CPU and the peripheral controller, and a peripheral controller and the main memory. A data processing device having an I / O adapter (1) for performing data transfer between the I / O adapter and a subsequent I / O adapter based on a read access (hereinafter, referred to as a DMA read) generated from the peripheral controller in the I / O adapter. Predict that there is a DMA read, fetch the predicted data from the main memory before a real DMA read request from the peripheral controller, and fetch if the real request comes from the peripheral controller. A data processing device having a pre-reading function of returning the stored data to the peripheral controller, / O adapter includes a buffer that receives the data from the main storage device at the time of preceding read (14), DM to said main memory generated from the peripheral controller
A read / write access (hereinafter referred to as DMA write) is identified, and when data corresponding to the request is stored in the buffer during DMA read, data is returned from the buffer to the peripheral controller. Means (126), and means (121) for identifying, in the DMA read, whether the read request is likely to perform continuous data transfer when data corresponding to the request is not stored in the buffer. And a main memory of the main storage device for performing a transfer request for the pre-reading based on the DMA read from the peripheral controller to the main storage device for performing the pre-reading when it is determined that there is a continuous access. Means (120) for issuing a write request to a specific address to which no The main storage device, when receiving a write request for a specific address, performs data transfer from the address requested to the requesting I / O adapter at regular time intervals, When a transfer stop instruction from the I / O adapter or a break such as a page boundary of data is detected,
A data transfer method characterized in that a data transfer control mechanism (20) having a means (230) for stopping data transfer enables advance reading.
【請求項2】 前記データ転送制御機構は、前記I/O
アダプタへのデータ転送時間間隔を前記I/Oアダプタ
からの設定により指示できる手段(210)を有し、指
定された時間間隔でのデータ転送が行える請求項1記載
のデータ転送方式。
2. The data transfer control mechanism according to claim 1, wherein:
2. The data transfer method according to claim 1, further comprising means (210) for designating a data transfer time interval to the adapter by setting from the I / O adapter, and performing data transfer at a specified time interval.
【請求項3】 前記データ転送制御機構は、上記DMA
ライト動作によるデータ転送を行うデータ転送制御機構
を複数保有した場合、データ転送処理中を示すビジーフ
ラグを発生する手段(232)を有し、リクエストを動
的に空いている前記データ転送制御機構に割当てデータ
転送を制御することが可能な請求項1あるいは2記載の
データ転送方式。
3. The data transfer control mechanism according to claim 2, wherein
When a plurality of data transfer control mechanisms for performing data transfer by a write operation are provided, a means (232) for generating a busy flag indicating that data transfer is being performed is provided, and a request is dynamically allocated to the data transfer control mechanism that is free. 3. The data transfer system according to claim 1, wherein the data transfer can be controlled.
【請求項4】 前記データ転送制御機構は、前記主記憶
制御装置が保有する複数のデータ転送制御機構において
全てのデータ転送制御機構がデータ転送を処理してお
り、リクエストの受付が不能になったことを前記ビジー
フラグにより識別する手段、受付不能状態をI/Oアダ
プタに通知する通知手段(24)を有し、先行読出しの
ためのライトリクエストの発生を抑えることが可能な請
求項3記載のデータ転送方式。
4. In the data transfer control mechanism, all of the data transfer control mechanisms in the plurality of data transfer control mechanisms possessed by the main storage control device process data transfer, and the request cannot be accepted. 4. The data according to claim 3, further comprising: means for identifying the status by the busy flag; and notification means (24) for notifying the I / O adapter of an unacceptable state, so that generation of a write request for preceding reading can be suppressed. Transfer method.
【請求項5】 前記データ転送制御機構は、前記主記憶
制御装置において前記リクエスト受付不能状態になった
後、処理を実行していたデータ転送の中止指示がI/O
アダプタからあった場合、または、ぺ一ジバウンダリ境
界を検出して処理をしていたデータ転送を中止した場合
等のデータ転送終了を検出する手段(233)を有し、
前記通知手段は、上記データ転送リクエストが受付可能
となったことをI/Oアダプタに通知することにより、
先行読出し動作を再開可能な請求項4記載のデータ転送
方式。
5. The data transfer control mechanism according to claim 1, wherein, after the request becomes unacceptable in the main storage control device, an instruction to stop the data transfer being processed is issued to the I / O controller.
Means (233) for detecting the end of data transfer when there is an adapter, or when the data transfer that has been processed by detecting a page boundary has been stopped,
The notifying unit notifies the I / O adapter that the data transfer request can be accepted,
5. The data transfer method according to claim 4, wherein the preceding read operation can be restarted.
【請求項6】 前記I/Oアダプタは、I/Oバスを介
して複数の前記周辺コントローラを接続した場合に発生
する複数のDMAリード要求を並行して受け付けること
が出来るように複数の前記バッファ機構と該バッファ機
構が先行リード中であることを示すプリフェッチフラグ
を発生する手段(123)、I/Oバスからのリクエス
トが発生した時に空いているバッファ機構を探し、その
空きバッファ機構に動的に割当てる手段(10)を有
し、上記先行読出しのためのデータ転送を行うことが可
能な請求項1〜5のいずれかに記載のデータ転送方式。
6. The I / O adapter includes a plurality of buffers for receiving a plurality of DMA read requests generated when the plurality of peripheral controllers are connected via an I / O bus. A mechanism and a means for generating a prefetch flag indicating that the buffer mechanism is performing a preceding read (123); searching for an empty buffer mechanism when a request from the I / O bus occurs; The data transfer method according to any one of claims 1 to 5, further comprising means (10) for allocating the data to the first memory.
【請求項7】 前記I/Oアダプタは、前記主記憶制御
装置から送られて来たデータが前記周辺コントローラ側
に吐き出されず前記バッファ機構に蓄えられ一杯になっ
たことを検出する手段(13)、前記主記憶制御装置に
対してデータ転送の一時停止を伝える手段(124)を
有し、先行読出しの機能を一時的に中止させることが可
能な請求項6記載のデータ転送方式。
7. The means for detecting that the data sent from the main memory control device is not discharged to the peripheral controller side but is stored in the buffer mechanism and becomes full. 7. The data transfer method according to claim 6, further comprising means (124) for notifying said main storage control device of a temporary stop of data transfer, and capable of temporarily suspending a preceding reading function.
【請求項8】 前記I/Oアダプタは、前記周辺コント
ローラ側からのDMAリードにより前記バッファから前
記周辺コントローラにデータを返却し、I/Oアダプタ
内のバッファに空きが発生したことを検出する手段(1
3)、データ受付が可能となったことを前記主記憶装置
に対して通知する手段(124)を有し、中断したデー
タ転送を再開させることが可能な請求項6記載のデータ
転送方式。
8. The I / O adapter returns data from the buffer to the peripheral controller by a DMA read from the peripheral controller, and detects that a buffer in the I / O adapter has become empty. (1
3) The data transfer method according to claim 6, further comprising means (124) for notifying the main storage device that data reception is enabled, and capable of restarting the interrupted data transfer.
【請求項9】 前記I/Oアダプタは、どの周辺コント
ローラからのDMAリードを先行読出し処理しているか
を保持しておく手段(125)、同一の周辺コントロー
ラから送出されるDMAリードリクエストが連続してい
ないとき、DMAリードリクエスト以外のリクエスト
(DMAライト等)が発行されたことを検出する手段
(127)を有し、前記検出手段により先行読出し処理
を無効と判断した後、I/Oアダプタ内に保有するデー
タを破棄し、前記主記憶制御装置に対してデータ転送の
中止を指示する手段(128)を有し、先行読出しの処
理を遅滞無く中止することが可能な請求項7あるいは8
記載のデータ転送方式。
9. The I / O adapter has means (125) for holding which of the peripheral controllers is performing the pre-read processing of the DMA read, and the DMA read requests sent from the same peripheral controller are consecutive. If not, a means (127) for detecting that a request other than the DMA read request (such as a DMA write) has been issued is provided. And means for instructing the main storage control device to stop data transfer, so that the preceding reading process can be stopped without delay.
Data transfer method described.
【請求項10】 前記I/Oアダプタは、前記主記憶制
御装置に対してデータ転送の中止を指示した後、主記憶
装置からのデータ転送が終了するまで送られてくるデー
タを破棄する手段(131)を有し、次の先行読出し処
理を遅滞なく行うことが可能な請求項9記載のデータ転
送方式。
10. The I / O adapter, after instructing the main storage control device to stop data transfer, discards data transmitted until data transfer from the main storage device is completed. 131. The data transfer method according to claim 9, wherein the data transfer method includes the following: 131), and the next preceding read processing can be performed without delay.
JP10738096A 1996-04-26 1996-04-26 Data transfer method Expired - Fee Related JP2865131B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10738096A JP2865131B2 (en) 1996-04-26 1996-04-26 Data transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10738096A JP2865131B2 (en) 1996-04-26 1996-04-26 Data transfer method

Publications (2)

Publication Number Publication Date
JPH09293044A JPH09293044A (en) 1997-11-11
JP2865131B2 true JP2865131B2 (en) 1999-03-08

Family

ID=14457657

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10738096A Expired - Fee Related JP2865131B2 (en) 1996-04-26 1996-04-26 Data transfer method

Country Status (1)

Country Link
JP (1) JP2865131B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002024156A (en) 2000-07-04 2002-01-25 Mitsubishi Electric Corp Dma controller and transfer method therefor
JP5196293B2 (en) * 2007-10-11 2013-05-15 ワイアイケー株式会社 Semiconductor test equipment
WO2010017263A1 (en) 2008-08-06 2010-02-11 Sandbridge Technologies, Inc. Haltable and restartable dma engine
US20100332877A1 (en) * 2009-06-30 2010-12-30 Yarch Mark A Method and apparatus for reducing power consumption

Also Published As

Publication number Publication date
JPH09293044A (en) 1997-11-11

Similar Documents

Publication Publication Date Title
US5819111A (en) System for managing transfer of data by delaying flow controlling of data through the interface controller until the run length encoded data transfer is complete
JP2002366507A (en) Multichannel dma(direct memory access) controller, and processor system
EP1029284B1 (en) Shared memory access controller
JP2865131B2 (en) Data transfer method
KR20060052924A (en) Flexible power reduction for embedded components
US20060129714A1 (en) Method and apparatus for transferring data
JPH09223102A (en) Direct memory access controller
US5418744A (en) Data transfer apparatus
JPH08171528A (en) Data processor
JPH11242506A (en) Programmable controller
JP3261715B2 (en) I / O data transfer processor
JP2001325212A (en) Method and device for transmitting data block from source processor to destination processor in multiprocessor system
US6723190B1 (en) ESD sensitivity in titanium/boron compositions
JPH10116245A (en) Dma controller
JP4941212B2 (en) Electronic device, data processing apparatus, and bus control method
JP3458037B2 (en) Split bus control method
JP2747258B2 (en) Write buffer busy control method
JPH06161891A (en) Computer system and cache control method for cache control means
JPH11212904A (en) Data transfer system
JPS58182737A (en) Information processor
JPH07319823A (en) Inter-processor communication system
JPH10320351A (en) Buffer system
JP2005215953A (en) Information processor
JP2000298639A (en) Transmitting circuit, receiving circuit, interface circuit, system controller, input-output controller and information processor
JPH06274440A (en) Save data point processing method in scsi bus control

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19981118

LAPS Cancellation because of no payment of annual fees