JP2000353146A - Input/output control device and method for prefetching data - Google Patents

Input/output control device and method for prefetching data

Info

Publication number
JP2000353146A
JP2000353146A JP11164564A JP16456499A JP2000353146A JP 2000353146 A JP2000353146 A JP 2000353146A JP 11164564 A JP11164564 A JP 11164564A JP 16456499 A JP16456499 A JP 16456499A JP 2000353146 A JP2000353146 A JP 2000353146A
Authority
JP
Japan
Prior art keywords
prefetch
data
register
prefetch address
count
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
Application number
JP11164564A
Other languages
Japanese (ja)
Inventor
Kazuhiro Mori
一浩 森
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP11164564A priority Critical patent/JP2000353146A/en
Publication of JP2000353146A publication Critical patent/JP2000353146A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Bus Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To obtain an I/O control device capable of efficiently prefetching data and a method for prefetching data. SOLUTION: The I/O control device is constituted of a data buffer for prefetching data from a main storage device 1 and storing the prefetched data, a prefetch address register 54 for storing a prefetch address in the data buffer, a prefetch count register 60 for storing the transfer length of data to be prefetched at present, a succeeding prefetch address register 51 for storing a prefetch address next to the prefetch address stored in the register 60, and a succeeding prefetch count register 57 for storing count length next to the transfer length stored in the register 60. Since an address to be prefetched next is previously set up, prefetch can be quickly started from the succeeding prefetch address at the time of detecting a page-over state.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、入出力制御装置及
びそのデータの先取り方法に関し、特に、ダイレクトメ
モリアクセス(DMA/direct memory access)転送に
備えて主記憶装置からのデータを先取り制御する入出力
制御装置及びそのデータの先取り方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an input / output control device and a data prefetching method, and more particularly to an input / output control device for prefetching data from a main storage device in preparation for a DMA / direct memory access transfer. The present invention relates to an output control device and a data prefetch method.

【0002】[0002]

【従来の技術】今日、多くの情報処理装置において、ペ
ージング方式が採用されている。このページング方式で
は、物理アドレス空間がページ単位に区切られて管理さ
れ、この物理アドレス空間上の各ページはそれぞれ論理
アドレス空間上に割り当てられる。従って、論理アドレ
ス空間において連続アドレスをアクセスする場合であっ
ても、物理アドレス空間上では必ずしも連続しているわ
けではない。このため、主記憶アクセスにおいてページ
を跨ぐアクセスをする際には、この事象をページ越えま
たはページオーバとして検出し、これを機に種々の制御
を起動している。
2. Description of the Related Art Today, many information processing apparatuses employ a paging method. In the paging method, a physical address space is managed in a page unit, and each page in the physical address space is allocated to a logical address space. Therefore, even when consecutive addresses are accessed in the logical address space, they are not always continuous in the physical address space. For this reason, when accessing across the pages in the main memory access, this event is detected as page over or page over, and various controls are activated using this as an opportunity.

【0003】一方、入出力制御装置(IOP)は、主記
憶装置と入出力装置との間を接続し、チャネルプログラ
ムと呼ばれる入出力動作の制御を行うプログラムに従っ
て、両者間のデータ転送を制御する。チャネルプログラ
ムは、コマンド、転送アドレス及びデータ長等から構成
され、チャネルプログラム内では論理アドレスが使用さ
れる場合がある。
On the other hand, an input / output control device (IOP) connects the main storage device and the input / output device, and controls data transfer between them according to a program for controlling input / output operations called a channel program. . The channel program includes a command, a transfer address, a data length, and the like, and a logical address may be used in the channel program.

【0004】チャネルプログラムを受け取った入出力制
御装置は、コマンドの解析、論理アドレスから物理アド
レスの変換を行い、周辺装置に対してコマンドを発行す
る。入出力装置(周辺装置ともいう)からデータ転送要
求(主記憶装置から入出力装置への転送)があった場合
は、入出力制御装置は主記憶装置の指定された領域から
データを読み出して入出力装置にデータを転送する。上
述のように、主記憶装置から入出力装置へのデータ転送
を行う場合、入出力制御装置は入出力装置からの要求に
従って主記憶装置のデータを転送する。
[0004] The input / output control device that has received the channel program analyzes the command, converts a logical address to a physical address, and issues a command to a peripheral device. When a data transfer request (transfer from the main storage device to the input / output device) is received from the input / output device (also referred to as a peripheral device), the input / output control device reads data from the designated area of the main storage device and inputs the data. Transfer the data to the output device. As described above, when performing data transfer from the main storage device to the input / output device, the input / output control device transfers data in the main storage device in accordance with a request from the input / output device.

【0005】しかし、入出力装置からデータ転送要求が
あった時点で主記憶装置にアクセスしたのでは主記憶装
置へのアクセスの間に入出力装置を待たせることにな
り、入出力動作のスループットが低下する。そのため、
入出力装置が要求してくるであろうデータを主記憶装置
から予め読み出して入出力制御装置に保持しておくこと
により、入出力装置のデータ転送要求に対して速やかに
データ転送するデータ先採りの技術が利用されている。
このような従来の入出力制御装置は、データ連鎖発生時
のデータ先取りの効率化を目的として用いられる。
However, if the main storage device is accessed at the time of a data transfer request from the input / output device, the input / output device is made to wait between accesses to the main storage device, and the throughput of the input / output operation is reduced. descend. for that reason,
By pre-reading data that the input / output device will request from the main storage device and storing it in the input / output control device, data prefetching can be performed quickly in response to a data transfer request from the input / output device. Technology is used.
Such a conventional input / output control device is used for the purpose of improving the efficiency of prefetching data when a data chain occurs.

【0006】また、チャネルプログラムは、いくつかの
CCE(チャネルコマンドエントリ)から構成される。
例えば従来例1において、1つのCCEは、アドレス+
カウント+制御情報で示されるものと、複数のアドレス
+カウント+制御情報で示されるもの(データ連鎖CC
E)とがある。主記憶装置から周辺装置へのデータ転送
を行う場合、IOP(input/output processor/入出力
処理機構)は、周辺装置からの要求により主記憶装置の
データを転送する必要がある。
[0006] A channel program is composed of several CCEs (channel command entries).
For example, in Conventional Example 1, one CCE is composed of an address +
One indicated by count + control information and one indicated by a plurality of addresses + count + control information (data chain CC
E). When performing data transfer from a main storage device to a peripheral device, an IOP (input / output processor / input / output processing mechanism) needs to transfer data in the main storage device in response to a request from the peripheral device.

【0007】しかし、周辺装置からデータ転送要求があ
った時点で主記憶装置にアクセスしたのでは、主記憶装
置へのアクセスの間に周辺装置を待たせる必要がある。
そのため、この場合においても入出力動作のスループッ
トを低下させてしまう。
However, if the main storage device is accessed when a data transfer request is issued from the peripheral device, it is necessary to make the peripheral device wait while accessing the main storage device.
Therefore, also in this case, the throughput of the input / output operation is reduced.

【0008】この問題点に対応する従来技術例として、
IOPで周辺装置が要求して来るであろう主記憶データ
を予め読み出してIOPにてバッファリングすることに
より、周辺装置からデータ転送要求があったらすぐにデ
ータを周辺装置に転送可能としている。これは、いわゆ
るデータの先取り方法である。
[0008] As a prior art example corresponding to this problem,
By reading in advance the main memory data that will be requested by the peripheral device in the IOP and buffering the data in the IOP, the data can be transferred to the peripheral device as soon as there is a data transfer request from the peripheral device. This is a so-called data prefetching method.

【0009】図9は、上記のデータの先取り方法を適用
した従来例2のデータ転送部10のブロック構成図を示
している。本従来例のデータ転送部10は、主記憶装置
1、入出力制御装置20およびプロセッサ3とにより構
成される。この入出力制御装置20は、さらに細分化さ
れ、主記憶アクセス制御部4、主記憶リードデータバッ
ファ61と主記憶ライトデータバッファ62とを有する
DMA制御部6および先取り制御部50により構成され
る。
FIG. 9 is a block diagram of a data transfer section 10 of the second prior art to which the above-described data prefetching method is applied. The data transfer unit 10 of the conventional example includes a main storage device 1, an input / output control device 20, and a processor 3. The input / output control device 20 is further subdivided into a main memory access control unit 4, a DMA control unit 6 having a main memory read data buffer 61 and a main memory write data buffer 62, and a prefetch control unit 50.

【0010】図10は、従来例2に於ける先取り制御部
50のより詳細な構成例を示すブロック図である。図1
0において、本従来例の先取り制御部50は、先取りア
ドレスレジスタ54、先取りカウントレジスタ60、セ
レクタ53、55、59、65、加算器56、減算器6
6、データ連鎖検出器67を有して構成される。
FIG. 10 is a block diagram showing a more detailed configuration example of the prefetch control unit 50 in the second conventional example. FIG.
At 0, the prefetch control unit 50 of the conventional example includes a prefetch address register 54, a prefetch count register 60, selectors 53, 55, 59, 65, an adder 56, and a subtractor 6.
6. It has a data chain detector 67.

【0011】上記従来例2のデータ転送部10におい
て、プロセッサ3と主記憶装置1との間に存する入出力
制御装置2は、プロセッサ3の指示により主記憶装置1
とチャネル制御部との間のデータ転送を制御する。
In the data transfer section 10 of the second conventional example, the input / output control device 2 existing between the processor 3 and the main storage device 1
Control the data transfer between the network controller and the channel controller.

【0012】本発明と技術分野の類似する従来例3とし
て、特願平5−143512号公報の「入出力処理装
置」がある。本従来例3では、データ転送を行いながら
次データ転送アドレス、カウントの先取りをマイクロプ
ログラムにより行い、マイクロプログラムへの割り込み
処理を高速にし、データ転送が中断する時間を短くする
ことを目的としている。
As a third conventional example similar to the present invention in the technical field, there is an "input / output processing device" disclosed in Japanese Patent Application No. 5-143512. The purpose of the third conventional example is to prefetch the next data transfer address and count by using a microprogram while performing data transfer, to speed up interrupt processing to the microprogram, and to shorten the time during which data transfer is interrupted.

【0013】[0013]

【発明が解決しようとする課題】しかしながら、上述し
たようにチャネルプログラムで指定されたアドレスが論
理アドレスである場合にページを跨いでしまう(ページ
オーバ)と、その先の物理アドレスは論理アドレスより
再度計算しないと判らない。このため、ページオーバ発
生時には、データの先取りを停止させている。そして、
ページオーバによる停止をマイクロプログラムに通知
し、次に先取るべきアドレスを上位の処理装置により設
定してもらうことにより先取りの再開を行っている。
However, as described above, if an address specified by a channel program is a logical address and a page is crossed (page over), the physical address beyond that is re-added to the logical address. I do not know unless I calculate. Therefore, when page over occurs, prefetching of data is stopped. And
The stoppage due to page over is notified to the microprogram, and the prefetching is restarted by having the host processor set the next address to prefetch.

【0014】上記の従来例2において、チャネルプログ
ラムで指定されたカウントが尽き、つまり“0”にな
り、且つデータ連鎖指示の場合、次のアドレスとカウン
ト長が設定されなければ先取りを継続出来ない。このた
め、データ連鎖発生時には、データの先取りを停止させ
ている。さらに、停止時には、先取りを再開するため
に、マイクロプログラムへ通知し、次先取るべきアドレ
スおよびカウント長をプロセッサにより設定してもらう
必要がある問題を伴う。
In the above conventional example 2, the count specified by the channel program is exhausted, that is, "0", and in the case of a data chain instruction, prefetch cannot be continued unless the next address and count length are set. . Therefore, when the data chain occurs, the prefetching of data is stopped. Further, at the time of stop, there is a problem that it is necessary to notify the microprogram to restart the prefetching and to have the processor set the address and the count length to be prefetched next.

【0015】なお、従来例3の入出力処理装置では、転
送に従ってページ越え/データ連鎖が発生する。
Incidentally, in the input / output processing device of the conventional example 3, a page over / data chain occurs according to the transfer.

【0016】本発明は、データ先取りを効率化させた入
出力制御装置及びそのデータの先取り方法を提供するこ
とを目的とする。より詳細には、本発明の目的は、予め
次に先取りするべきアドレスを設定しておくことによ
り、ページオーバ検出時に次先取りアドレスから速やか
に先取りを開始し、あるいは、データ連鎖発生時のデー
タ先取りを効率化させた入出力制御装置及びそのデータ
の先取り方法を提供することにある。
An object of the present invention is to provide an input / output control device which makes data prefetching more efficient and a data prefetching method. More specifically, an object of the present invention is to set an address to be prefetched next in advance so that prefetching can be started immediately from the next prefetch address when a page over is detected, or data prefetching when a data chain occurs. To provide an input / output control device and a method for prefetching data of the input / output control device in which the efficiency is improved.

【0017】[0017]

【課題を解決するための手段】上記課題を解決するため
に請求項1記載の発明の入出力制御装置は、主記憶装置
からのデータを先取りして保持するデータバッファと、
このデータバッファに先取りするための先取アドレスを
保持する先取アドレスレジスタと、現在先取るべきデー
タの転送長を保持する先取りカウントレジスタと、この
先取アドレスレジスタに保持された先取アドレスの次の
先取りアドレスを保持する次先取アドレスレジスタと、
先取りカウントレジスタに格納される転送長の次のカウ
ント長を保持する次先取りカウントレジスタとを含み構
成されたことを特徴としている。
According to the present invention, there is provided an input / output control apparatus comprising: a data buffer for prefetching and holding data from a main storage;
A prefetch address register that holds a prefetch address for prefetching in this data buffer, a prefetch count register that holds a transfer length of data to be prefetched at present, and a prefetch address next to the prefetch address held in the prefetch address register. A next prefetch address register to be held;
And a next prefetch count register for holding a count length next to the transfer length stored in the prefetch count register.

【0018】また、上記の先取アドレスが保持する先取
アドレスと、次先取アドレスレジスタが保持する次の先
取りアドレスとうを、物理アドレスとするとよい。
The prefetch address held by the prefetch address and the next prefetch address held by the next prefetch address register may be physical addresses.

【0019】また、上記の入出力制御装置は、所定の装
置間に設置し、データのデータ連鎖発生時のデータ先取
りを高効率化させるとよい。
The above-mentioned input / output control device is preferably installed between predetermined devices to improve the efficiency of data prefetching when a data chain occurs.

【0020】また、上記の次先取りアドレスレジスタ、
次先取りカウントレジスタ、先取りアドレスレジスタお
よび先取りカウントレジスタは、同時に起動を掛けるこ
とが出来るチャネルプログラム数を持つとよい。
Further, the above-mentioned next prefetch address register,
The next prefetch count register, the prefetch address register and the prefetch count register preferably have the number of channel programs that can be activated simultaneously.

【0021】さらに、上記の先取りアドレスレジスタお
よび先取りカウントレジスタはレジスタ郡で構成され、
入出力制御装置はレジスタ郡が保持するデータの入出力
を選択するセレクタをさらに有し、当該入出力制御装置
は動作を制御する所定のプロセッサと接続され、次先取
りアドレスレジスタへプロセッサにより物理アドレスが
セットされ各々の有効/無効を示すフラグを持ち、次先
取りカウントレジスタへプロセッサにより転送カウント
長がセットされ各々の有効/無効を示すフラグおよびデ
ータ連鎖指示の有無を示すフラグを持ち、先取りアドレ
スレジスタへはセレクタのセレクト結果が格納され各々
の有効/無効を示すフラグを持ち、先取りカウントレジ
スタへはセレクタのセレクト結果が格納され各々の有効
/無効を示すフラグおよびデータ連鎖指示の有無を示す
フラグを持つとよい。
Further, the above-mentioned prefetch address register and prefetch count register are constituted by a group of registers.
The input / output control device further includes a selector for selecting input / output of data held by the register group. The input / output control device is connected to a predetermined processor for controlling the operation, and the processor inputs a physical address to the next prefetch address register. The transfer count length is set by the processor in the next prefetch count register, and a flag indicating each valid / invalid and a flag indicating the presence / absence of a data chain instruction are set in the next prefetch count register. Has a flag indicating the validity / invalidity of the selector, and has a flag indicating the validity / invalidity. The prefetch count register has a flag indicating the validity / invalidity of the selector, and a flag indicating the presence / absence of a data chain instruction. Good.

【0022】請求項6記載の発明のデータの先取り方法
は、主記憶装置からのデータを先取りして保持するデー
タバッファ工程と、このデータバッファ工程で先取りす
る先取アドレスを保持する先取アドレスレジスタ工程
と、現在先取るべきデータの転送長を保持する先取りカ
ウントレジスタ工程と、この先取アドレスレジスタ工程
に保持された先取アドレスの次の先取りアドレスを保持
する次先取アドレスレジスタ工程と、先取りカウントレ
ジスタ工程に格納される転送長の次のカウント長を保持
する次先取りカウントレジスタ工程とを含み構成された
ことを特徴としている。
According to a sixth aspect of the present invention, there is provided a data prefetch method for prefetching and holding data from a main storage device, and a prefetch address register step for holding a prefetch address prefetched in the data buffer process. A prefetch count register for holding a transfer length of data to be prefetched, a prefetch address register for holding a prefetch address next to the prefetch address held in the prefetch address register, and a prefetch count register And a next prefetch count register step for holding a count length next to the transfer length to be transferred.

【0023】[0023]

【発明の実施の形態】次に本発明の入出力制御装置の実
施の形態について図面を参照して詳細に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, an embodiment of the input / output control device of the present invention will be described in detail with reference to the drawings.

【0024】(第1の実施形態)図1を参照すると、本
発明の第1の実施形態に適用される情報処理システム
は、システムバス400により接続される処理装置10
0及び主記憶装置200を含む。システムバス400に
はさらに入出力制御装置300が接続される。入出力制
御装置300にはチャネル制御装置500が接続され、
このチャネル制御装置500の配下にはチャネルカード
600を介してディスク装置800用のディスク制御装
置700や、ローカルエリアネットワーク(LAN)プ
ロセッサ900等の入出力装置が接続される。入出力装
置には、他にも、磁気テープやフロントエンドプロセッ
サ等、種々のものが該当し得る。
(First Embodiment) Referring to FIG. 1, an information processing system applied to a first embodiment of the present invention includes a processing device 10 connected by a system bus 400.
0 and the main storage device 200. The input / output control device 300 is further connected to the system bus 400. A channel control device 500 is connected to the input / output control device 300,
Under the channel control device 500, an input / output device such as a disk control device 700 for the disk device 800 and a local area network (LAN) processor 900 is connected via a channel card 600. Various other devices such as a magnetic tape and a front-end processor may be applicable to the input / output device.

【0025】従って、入出力制御装置300は、主記憶
装置200と処理装置群との間に位置し、両者間のデー
タ転送を制御する。このデータ転送の制御は、例えば、
処理装置100が入出力命令を発行することにより起動
され、主記憶装置200に保持されたチャネルプログラ
ムを入出力制御装置300が実行することにより実現さ
れる。
Therefore, the input / output control device 300 is located between the main storage device 200 and the processing device group, and controls data transfer between them. The control of this data transfer is, for example,
The processing is started by the processing device 100 issuing an input / output instruction, and is realized by the input / output control device 300 executing the channel program held in the main storage device 200.

【0026】図2を参照すると、入出力制御装置300
は、データバッファ310と、先取管理回路320と、
データ転送制御回路330と、主記憶アクセス制御回路
340とを含んでいる。
Referring to FIG. 2, input / output control device 300
Is a data buffer 310, a prefetch management circuit 320,
It includes a data transfer control circuit 330 and a main memory access control circuit 340.

【0027】データバッファ310は、リードデータバ
ッファ311と、ライトデータバッファ312とを含
み、それぞれ主記憶装置200からのリードデータまた
は主記憶装置200へのライトデータを保持する。この
データバッファ310の構成は、基本的にキャッシュメ
モリと同様のものを採用できる。但し、このデータバッ
ファ310に保持されるデータは、連続データを前提と
するため、通常のキャッシュメモリよりもラインサイズ
を大きくとることが望ましい。
The data buffer 310 includes a read data buffer 311 and a write data buffer 312, and holds read data from the main storage device 200 or write data to the main storage device 200, respectively. The configuration of the data buffer 310 can be basically the same as that of the cache memory. However, since the data held in the data buffer 310 is assumed to be continuous data, it is desirable that the line size be larger than that of a normal cache memory.

【0028】データ転送制御回路330は、主記憶装置
200上に保持されたチャネルプロダラムを実行して、
主記憶装置200と入出力装置との間のデータ転送を制
御する回路である。具体的には、チャネル制御装置50
0に対してダイレクトメモリアクセス(DMA)転送命
令を発行するとともに、リードデータバッファ311へ
の先取りアドレス及びその次の先取りアドレスを準備す
る。この具体的動作については後述する。
The data transfer control circuit 330 executes the channel program held on the main storage device 200,
This is a circuit for controlling data transfer between the main storage device 200 and the input / output device. Specifically, the channel control device 50
In addition to issuing a direct memory access (DMA) transfer instruction to 0, a prefetch address to the read data buffer 311 and a next prefetch address are prepared. This specific operation will be described later.

【0029】主記憶アクセス制御回路340は、データ
バッファ310から主記憶装置200へのライト要求、
及び、先取管理回路320からの先取り要求を調停し
て、主記憶装置200へのリードまたはライト処理を制
御する。
The main memory access control circuit 340 issues a write request from the data buffer 310 to the main memory 200,
In addition, it arbitrates for a prefetch request from the prefetch management circuit 320, and controls read or write processing to the main storage device 200.

【0030】先取管理回路320は、リードデータバッ
ファ311への先取り処理を管理する回路である。図3
を参照すると、先取管理回路320は、次先取アドレス
レジスタ321と、先取アドレスレジスク324と、加
算器326と、ページオーバ検出器327と、選択器3
22,323,325とを含んでいる。
The prefetch management circuit 320 is a circuit for managing a prefetch process for the read data buffer 311. FIG.
, The prefetch management circuit 320 includes a next prefetch address register 321, a prefetch address disk 324, an adder 326, a page over detector 327, and a selector 3
22, 323, and 325.

【0031】先取アドレスレジスタ324は、リードデ
ータバッファ311に先取りすべきデータの物理アドレ
スを保持する。また、次先取アドレスレジスク321
は、その次にリードデータバッファ311に先取りすべ
きデータの物理アドレスを保持する。先取アドレスレジ
スタ324及び次先取アドレスレジスタ321は、複数
個設けることができる。その数は、例えば、同時に実行
できるチャネルプログラムの数としてもよく、また、配
下のチャネルカード600の数としてもよい。この場
合、各レジスタとの対応関係は別途管理する必要があ
る。「配下のチャネルカード600の数」とした場合に
は、チャネル番号により管理できる。「同時に実行でき
るチャネルプログラムの数」とした場合には、各チャネ
ルプログラムに識別番号を動的に割り当てることにより
管理できる。
The prefetch address register 324 holds the physical address of data to be prefetched in the read data buffer 311. Also, the next prefetch address register 321
Holds the physical address of the data to be prefetched in the read data buffer 311 next. A plurality of prefetch address registers 324 and next prefetch address registers 321 can be provided. The number may be, for example, the number of simultaneously executable channel programs or the number of subordinate channel cards 600. In this case, the correspondence with each register needs to be separately managed. In the case of "number of subordinate channel cards 600", it can be managed by a channel number. In the case of “the number of channel programs that can be executed simultaneously”, it can be managed by dynamically assigning an identification number to each channel program.

【0032】先取アドレスレジスタ334及び次先取ア
ドレスレジスタ321の各々はそれぞれ一対一に対応し
ており、ある先取アドレスレジスタ324の使用が終わ
ると対応する次先取アドレスレジスタ321の内容がそ
の先取アドレスレジスタ324に保持されることにな
る。また、先取アドレスレジスタ324及び次先取アド
レスレジスタ321の各々は、それぞれアドレス自身の
他、有効性フラグを保持する。この有効性フラグが「無
効」を示していれば対応するアドレスは有意の値を示す
ものではなく、また「有効」を示していれば有意のアド
レスを保持していることを意味する。
Each of the prefetch address register 334 and the next prefetch address register 321 has a one-to-one correspondence, and when the use of a certain prefetch address register 324 is finished, the contents of the corresponding next prefetch address register 321 are changed to the prefetch address register 324. Will be held. Further, each of the prefetch address register 324 and the next prefetch address register 321 holds a validity flag in addition to the address itself. If the validity flag indicates "invalid", the corresponding address does not indicate a significant value, and if it indicates "valid", it means that a significant address is held.

【0033】選択器325は、先取アドレスレジスタ3
24の何れか一つの内容を選択して出力する。選択器3
22は、次先取アドレスレジスタ321の何れか一つの
内容を選択して出力する。選択器325は、選択器32
3の出力、加算器326の出力、及び、処理装置100
からのアドレスの何れか一つを出力する。
The selector 325 is a prefetch address register 3
24 is selected and output. Selector 3
Reference numeral 22 selects and outputs any one of the contents of the next prefetch address register 321. The selector 325 is the selector 32
3, the output of the adder 326, and the processing device 100
Output one of the addresses.

【0034】加算器326は、選択器325の出力、す
なわち先取アドレスレジスタ324の一つに保持されて
いた先取アドレス、に主記憶アクセス制御回路340か
ら送られてくる主記憶装置200へのデータ転送量を加
算する。
The adder 326 transfers the output of the selector 325, that is, the prefetch address held in one of the prefetch address registers 324, to the main memory 200 sent from the main memory access control circuit 340 to the main memory 200. Add the amount.

【0035】ページオーバ検出器327は、加算器32
6の加算結果から先取アドレスについてのページオーバ
の発生を検出し、ページオーバの発生をデータ転送制御
回路330及び処理装置100に知らせる。
The page-over detector 327 includes the adder 32
The occurrence of page over for the prefetched address is detected from the result of addition of 6, and the occurrence of page over is notified to the data transfer control circuit 330 and the processing device 100.

【0036】次に、上記の実施の形態における動作につ
いて説明する。
Next, the operation of the above embodiment will be described.

【0037】図1及び図4を参照すると、まず入出力命
令の実行に先立って、処理装置100上で動作するオペ
レーティングシステム(OS)が主記憶装置200上に
チャネルプログラムを準備する(ステップS401)。
このチャネルプログラムの準備が完了すると、オペレー
ティングシステムは入出力制御装置300に対して入出
力命令を発行する(ステップS402)。この入出力命
令を受けて、入出力制御装置300は主記憶装置200
上のチャネルプログラムを読み出して(ステップS40
3)、実行する(ステップS404)。このチャネルプ
ログラム中にDMA転送リード命令が存在した場合に
は、入出力制御装置300は以下の手順でデータ転送処
理を行う。
Referring to FIGS. 1 and 4, prior to execution of an input / output instruction, an operating system (OS) operating on the processing device 100 prepares a channel program on the main storage device 200 (step S401). .
When the preparation of the channel program is completed, the operating system issues an input / output command to the input / output control device 300 (step S402). In response to the input / output command, the input / output control device 300 causes the main storage device 200
The upper channel program is read (step S40).
3) Execute (Step S404). When a DMA transfer read instruction is present in the channel program, the input / output control device 300 performs a data transfer process in the following procedure.

【0038】図1乃至図3及び図5を参照すると、入出
力制御装置300内のデータ転送制御回路330は、チ
ャネル制御装置500に対してDMA転送命令を発行す
る(ステップS501)。このDMA転送命令には、転
送開始アドレス、転送データ量、転送方向(主記憶装置
200からのリードか、または、主記憶装置200への
ライトか)、及び、チャネル番号(チャネルカード60
0を識別するための番号)等が指示される。この際、入
出力制御装置300内のデータ転送制御回路330は、
DMA転送要求に係るアドレスが仮想アドレスにより指
定されている場合にはこれを物理アドレスに変換する。
このDMA転送命令の転送方向が「主記憶装置からのリ
ードデータを入出力装置へ転送」である旨を示している
場合には、その後、例えば配下のディスク装置800が
入出力制御装置300にDMA転送を要求することにな
る。
Referring to FIGS. 1 to 3 and 5, the data transfer control circuit 330 in the input / output control device 300 issues a DMA transfer command to the channel control device 500 (step S501). The DMA transfer command includes a transfer start address, a transfer data amount, a transfer direction (whether reading from the main storage device 200 or writing to the main storage device 200), and a channel number (channel card 60).
0) is designated. At this time, the data transfer control circuit 330 in the input / output control device 300
If the address related to the DMA transfer request is specified by a virtual address, it is converted to a physical address.
If the transfer direction of the DMA transfer command indicates that “read data from the main storage device is transferred to the I / O device”, then, for example, the subordinate disk device 800 Requesting a transfer.

【0039】この配下の入出力装置からのDMA転送の
受求に先立って、データ転送制御回路330は、先取管
理回路320内の先取アドレスレジスタ324に先取ア
ドレスを準備する(ステップS502)。具体的には、
選択器322においてデータ転送制御回路330からの
物理アドレスを選択し、この物理アドレスをその入出力
装置(上述の例ではディスク装置800)に対応する先
取アドレスレジスタ324に設定する。この際、その先
取アドレスレジスタ324内の有効性フラグを「有効」
状態に設定する。
Prior to receiving a DMA transfer from the subordinate input / output device, the data transfer control circuit 330 prepares a prefetch address in the prefetch address register 324 in the prefetch management circuit 320 (step S502). In particular,
The selector 322 selects a physical address from the data transfer control circuit 330, and sets this physical address in the prefetch address register 324 corresponding to the input / output device (the disk device 800 in the above example). At this time, the validity flag in the prefetch address register 324 is set to “valid”.
Set to state.

【0040】次取アドレスの準備が完了すると、データ
転送制御回路330は、先取アドレスレジスタ324に
保持されたアドレスによってリードデータバッファ31
1への先取り処理を起動する(ステップS503)。こ
の先取り処理の内容については、図6を参照して後述す
る。
When the preparation of the next prefetch address is completed, the data transfer control circuit 330 uses the address held in the prefetch address register 324 to read the data in the read data buffer 31.
In step S503, a prefetch process is started. The contents of the prefetch process will be described later with reference to FIG.

【0041】先取アドレスの設定に続いて、データ転送
制御回路330は、先取管理回路320内の次先取アド
レスレジスタ321にさらに次の先取アドレスを準備す
る(ステップS504)。具体的には、データ転送制御
回路330からの物理アドレスをその入出力装置に対応
する次先取アドレスレジスタ321に設定する。この
際、その次先取アドレスレジスタ321内の有効性フラ
グを「有効」状態に設定する。
Following the setting of the prefetch address, the data transfer control circuit 330 prepares the next prefetch address in the next prefetch address register 321 in the prefetch management circuit 320 (step S504). Specifically, the physical address from the data transfer control circuit 330 is set in the next prefetch address register 321 corresponding to the input / output device. At this time, the validity flag in the next prefetch address register 321 is set to the “valid” state.

【0042】ステップS503で起動された先取り処理
は、リードデータバッファ311が満杯になるか、ペー
ジオーバが発生するまで順次継続して行われる。ページ
オーバが発生すると(ステップS505)、該当する次
取アドレスレジスタ324が無効にされ、対応する次先
取アドレスレジスク321に保持されていた値が新たに
その先取アドレスレジスタ324に保持される(ステッ
プS506)。そして、この新たな先取アドレスにより
先取り処理が再度起動される(ステップS503)。次
先取アドレスレジスタ321には、さらに次の先取アド
レスが設定される(ステップS504)。
The prefetching process started in step S503 is sequentially performed until the read data buffer 311 becomes full or a page over occurs. When a page over occurs (step S505), the corresponding prefetch address register 324 is invalidated, and the value stored in the corresponding prefetch address register 321 is newly stored in the prefetch address register 324 (step S505). S506). Then, the prefetch processing is started again by the new prefetch address (step S503). The next prefetch address is set in the next prefetch address register 321 (step S504).

【0043】図1乃至図3及び図6を参照すると、リー
ドデータバッファ311への先取り処理は、リードデー
タバッファ311に空きがある内は(ステップS60
1)、継続的に行われる(ステップS602)。データ
バッファ311が満杯であれば先取り処理は中断し、空
きができると再開する。このリードデータバッファ31
1への先取りは、所定のデータ量を単位として行われ
る。先取りのためのアクセスの際には、主記憶アクセス
制御回路340は、先取管理回路320の選択器325
から出力された先取りアドレスにより主記憶リード要求
を主記憶装置200に発行するとともに、主記憶装置2
00に発行したリード要求に係る転送データ量とチャネ
ル番号を先取管理回路320に出力する。この出力され
たチャネル番号に従って先取りアドレスレジスタ324
の一つが選択器325により選択され、転送データ量が
加算器326によって加算されて、選択器323を介し
て対応する先取りアドレスレジスタ324が更新される
(ステップS603)。
Referring to FIGS. 1 to 3 and FIG. 6, the prefetch processing to the read data buffer 311 is performed while the read data buffer 311 has a free space (step S60).
1), which is performed continuously (step S602). If the data buffer 311 is full, the prefetching process is interrupted, and resumes if there is free space. This read data buffer 31
The prefetching to 1 is performed in units of a predetermined data amount. At the time of access for prefetching, the main memory access control circuit 340 selects the selector 325 of the prefetch management circuit 320.
A main memory read request is issued to the main storage device 200 using the prefetch address output from the
The transfer data amount and the channel number related to the read request issued at 00 are output to the prefetch management circuit 320. According to the output channel number, the prefetch address register 324
Is selected by the selector 325, the transfer data amount is added by the adder 326, and the corresponding prefetch address register 324 is updated via the selector 323 (step S603).

【0044】この加算の結果、先取り処理におけるペー
ジオーバの発生が検出されると(ステップS604)、
ページオーバ検出器327からデータ転送制御回路33
0へページオーバが発生した旨が出力される(ステップ
S605)。このページオーバの発生に応答して、デー
タ転送制御回路330は、上述のように、次先取アドレ
スレジスタ321に保持されていた値を、対応する先取
アドレスレジスタ324に移動させる(ステップS50
6)。
As a result of the addition, when occurrence of page over in the prefetching process is detected (step S604),
From the page over detector 327 to the data transfer control circuit 33
It is output that page over has occurred to 0 (step S605). In response to the occurrence of the page-over, the data transfer control circuit 330 moves the value held in the next prefetch address register 321 to the corresponding prefetch address register 324 as described above (step S50).
6).

【0045】このように、本発明の実施の形態によれ
ば、先取アドレスレジスタ324に保持された先取アド
レスに続く「次の先取アドレス」を保持する次先取アド
レスレジスタ321を設けたことにより、先取り処理中
にべージオーバが発生した場合においても、その次の先
取りを継続することができる。
As described above, according to the embodiment of the present invention, by providing the next prefetch address register 321 for holding the “next prefetch address” following the prefetch address held in the prefetch address register 324, Even if page over occurs during processing, the next prefetch can be continued.

【0046】(第2の実施の形態)次に、本発明に基づ
く、入出力制御装置及びそのデータの先取り方法の第2
の実施の形態を詳細に説明する。図7および図8を参照
すると、本実施形態の入出力制御装置及びそのデータの
先取り方法の一実施形態が示されている。
(Second Embodiment) Next, a second embodiment of the input / output control device and its data prefetching method according to the present invention will be described.
The embodiment will be described in detail. Referring to FIGS. 7 and 8, there is shown an embodiment of the input / output control device and the data prefetching method according to the present embodiment.

【0047】図7を参照すると、本実施形態の(DMA
データ)先取り制御部5が適用されるデータ転送部10
のブロック構成図が示されている。
Referring to FIG. 7, (DMA)
Data) Data transfer unit 10 to which the prefetch control unit 5 is applied
Is shown in FIG.

【0048】図7において、データ転送部10は、主記
憶装置1、入出力制御装置2およびプロセッサ3とによ
り構成される。この入出力制御装置2は、さらに細分化
され、主記憶アクセス制御部4、主記憶リードデータバ
ッファ61と主記憶ライトデータバッファ62とを有す
るDMA制御部6および先取り制御部5とにより構成さ
れる。
Referring to FIG. 7, the data transfer unit 10 includes a main storage device 1, an input / output control device 2, and a processor 3. The input / output control device 2 is further subdivided into a main memory access control unit 4, a DMA control unit 6 having a main memory read data buffer 61 and a main memory write data buffer 62, and a prefetch control unit 5. .

【0049】データ転送部10の構成例を示す図7にお
いて、プロセッサ3と主記憶装置1との間に存する入出
力制御装置2は、プロセッサ3の指示により主記憶装置
1とチャネル制御部との間のデータ転送を制御する。
In FIG. 7 showing an example of the configuration of the data transfer unit 10, the input / output control unit 2 existing between the processor 3 and the main storage unit 1 transmits the data from the main storage unit 1 to the channel control unit in accordance with an instruction from the processor 3. Controls data transfer between

【0050】プロセッサ3は、主記憶装置1上にあるチ
ャネルプログラムを解析し、DMA転送要求であれば仮
想アドレスを物理アドレスに変換し、物理アドレス、そ
のカウント長、データ連鎖指示の有無、データの転送方
向(主記憶装置1へのデータライトか主記憶装置1から
のデータリードか)、チャネル番号、を入出力制御装置
2に指示する。また、入出力制御装置2からデータ連鎖
発生の通知があった場合は、次の先取りアドレスおよび
そのカウント長を入出力制御装置2に渡す。
The processor 3 analyzes the channel program on the main storage device 1 and converts a virtual address into a physical address if the request is a DMA transfer request. The physical address, its count length, the presence or absence of a data chain instruction, and the data A transfer direction (whether data is written to or read from the main storage device 1) and a channel number are instructed to the input / output control device 2. When a notification of the occurrence of a data chain is received from the input / output control device 2, the next prefetch address and its count length are passed to the input / output control device 2.

【0051】入出力制御装置2は、先取り制御部5、主
記憶アクセス制御部4、DMA制御部6から成る。
The input / output control device 2 comprises a prefetch control unit 5, a main memory access control unit 4, and a DMA control unit 6.

【0052】DMA制御部6は、チャネル制御部からの
要求が主記憶リードであった場合は、主記憶装置1のリ
ードデータバッファからデータをチャネル制御部に転送
する。チャネル制御部からの要求が主記憶ライトであっ
た場合は、主記憶装置1へのライトデータバッファにチ
ャネル制御部からのデータを書き込み、主記憶アクセス
制御部4に主記憶データライトの要求を出す。また、リ
ードデータバッファに空きがあるかどうかを先取り制御
部5に通知する。
When the request from the channel controller is a main memory read, the DMA controller 6 transfers data from the read data buffer of the main memory 1 to the channel controller. When the request from the channel control unit is a main memory write, the data from the channel control unit is written into a write data buffer for the main storage device 1 and a main memory data write request is issued to the main memory access control unit 4. . Further, it notifies the prefetch control unit 5 whether or not there is a free space in the read data buffer.

【0053】先取り制御部5は、プロセッサ3からのD
MA転送指示が主記憶装置1からのデータリードであっ
た場合、プロセッサ3から指示された物理アドレス、カ
ウント長より主記憶装置1からのデータリード(先取
り)要求を、主記憶アクセス制御部4に出す。先取り
は、DMA制御部6のリードデータバッファが一杯にな
るか、データ連鎖を検出し、次に読み出すべき物理アド
レス、カウント長が無い場合に停止する。
The prefetch control unit 5 receives the D from the processor 3
When the MA transfer instruction is a data read from the main storage device 1, a data read (prefetch) request from the main storage device 1 is sent to the main storage access control unit 4 based on the physical address and the count length specified by the processor 3. put out. The prefetching stops when the read data buffer of the DMA control unit 6 is full or a data chain is detected and there is no physical address and count length to be read next.

【0054】主記憶アクセス制御部4は、DMA制御部
6からの主記憶データライト要求、先取り制御部5から
の先取り要求を調停し、主記憶装置1へのリード/ライ
ト動作を行う。
The main memory access control section 4 arbitrates a main memory data write request from the DMA control section 6 and a prefetch request from the prefetch control section 5, and performs a read / write operation to the main storage device 1.

【0055】図8は、本発明の実施形態に於ける先取り
制御部5のより詳細な構成例を示すブロック図である。
図8において、本実施形態の先取り制御部5は、次先取
りアドレスレジスタ51、先取りアドレスレジスタ5
4、次先取りカウントレジスタ57、先取りカウントレ
ジスタ60、セレクタ52、53、55、58、59、
65、加算器56、減算器66、データ連鎖検出器67
を有して構成される。
FIG. 8 is a block diagram showing a more detailed configuration example of the prefetch control unit 5 in the embodiment of the present invention.
In FIG. 8, the prefetch control unit 5 of the present embodiment includes a next prefetch address register 51, a prefetch address register 5
4, next prefetch count register 57, prefetch count register 60, selectors 52, 53, 55, 58, 59,
65, adder 56, subtractor 66, data chain detector 67
Is configured.

【0056】次先取りアドレスレジスタ51は、先取り
アドレスレジスタ54に格納される物理アドレスの次ペ
ージの物理アドレスを保持するレジスタ群であり、プロ
セッサ3により物理アドレスがセットされる。また各々
の有効/無効を示すフラグを持つ。
The next prefetch address register 51 is a group of registers for holding the physical address of the next page of the physical address stored in the prefetch address register 54, and the physical address is set by the processor 3. It also has flags indicating valid / invalid.

【0057】次先取りカウントレジスタ57は、先取り
カウントレジスタ60に格納される転送長の次のカウン
ト長を保持するレジスタ群であり、プロセッサ3により
転送カウント長がセットされる。また各々の有効/無効
を示すフラグおよびデータ連鎖指示の有無を示すフラグ
を持つ。
The next prefetch count register 57 is a group of registers for holding the count length next to the transfer length stored in the prefetch count register 60, and the transfer count length is set by the processor 3. Further, each flag has a flag indicating validity / invalidity and a flag indicating presence / absence of a data chain instruction.

【0058】先取りアドレスレジスタ54は、現在先取
るべき物理アドレスを保持するレジスタ群であり、セレ
クタ53のセレクト結果が格納される。また各々の有効
/無効を示すフラグを持つ。
The prefetch address register 54 is a group of registers for holding a physical address to be prefetched at present, and stores the result of the selection by the selector 53. It also has flags indicating valid / invalid.

【0059】先取りカウントレジスタ60は、現在先取
るべき転送長を保持するレジスタ群であり、セレクタ5
9のセレクト結果が格納される。また各々の有効/無効
を示すフラグおよびデータ連鎖指示の有無を示すフラグ
を持つ。
The prefetch count register 60 is a group of registers for holding the transfer length to be prefetched at the present time.
9 are stored. Further, each flag has a flag indicating validity / invalidity and a flag indicating presence / absence of a data chain instruction.

【0060】次先取りアドレスレジスタ51、次先取り
カウントレジスタ57、先取りアドレスレジスタ54お
よび先取りカウントレジスタ60は、同時に起動を掛け
ることが出来るチャネルプログラム数を持つ。本実施形
態では、チャネル毎にチャネルプログラムを起動可能と
し、チャネル数と同じ数のレジスタを持つこととする。
The next prefetch address register 51, the next prefetch count register 57, the prefetch address register 54, and the prefetch count register 60 have the number of channel programs that can be started simultaneously. In the present embodiment, a channel program can be started for each channel, and the same number of registers as the number of channels are provided.

【0061】先取り調停部は、先取り制御部5に含まれ
る不図示の機能部である。本先取り調停部は、次先取り
アドレスレジスタ51へのライト制御、セレクタ52、
53、55のセレクト制御、先取りアドレスレジスタ5
4のライト制御を行う。また、次先取りカウントレジス
タ57へのライト制御、セレクタ58、59、65のセ
レクト制御、先取りカウントレジスタ60のライト制御
を行う。さらに、データ連鎖検出器からのデータ連鎖検
出信号を受け取る。
The prefetch arbitration unit is a functional unit (not shown) included in the prefetch control unit 5. The prefetch arbitration unit controls write to the next prefetch address register 51, the selector 52,
53, 55 select control, prefetch address register 5
4 is performed. Further, it performs write control to the next prefetch count register 57, select control of the selectors 58, 59, 65, and write control of the prefetch count register 60. Further, a data chain detection signal from the data chain detector is received.

【0062】先取り調停部は、プロセッサ3から次先取
りアドレスレジスタ51、次先取りカウントレジスタ5
7、先取りアドレスレジスタ54および先取りカウント
レジスタ60のセット指示、DMA制御部6からは主記
憶リードデータバッファ61に空きがあるかの信号を受
け取る。
The preemption arbitration unit sends the next prefetch address register 51 and the next prefetch count register 5 from the processor 3.
7. A setting instruction of the prefetch address register 54 and the prefetch count register 60, and a signal from the DMA control unit 6 indicating whether or not the main memory read data buffer 61 has a free space.

【0063】先取り調停部は、先取りアドレスレジスタ
54、先取りカウントレジスタ60、次先取りアドレス
レジスタ51および次先取りカウントレジスタ57の有
効/無効フラグより、どのチャネルの先取りアドレスが
有効であるかを判断する。さらに、複数チャネルに於い
て先取りが必要であれば調停を行い、主記憶アクセス制
御部4に先取り要求を行う。
The prefetch arbitration unit determines which channel's prefetch address is valid from the valid / invalid flags of the prefetch address register 54, the prefetch count register 60, the next prefetch address register 51, and the next prefetch count register 57. Furthermore, if prefetching is necessary for a plurality of channels, arbitration is performed and a prefetch request is made to the main memory access control unit 4.

【0064】セレクタ52、58は、先取り調停部から
の制御信号(チャネル番号)に基づき、次先取りアドレ
スレジスタ51および次先取りカウントレジスタ57を
選択する。
The selectors 52 and 58 select the next prefetch address register 51 and the next prefetch count register 57 based on the control signal (channel number) from the prefetch arbitration unit.

【0065】セレクタ53、59は、先取り調停部から
の指示により、加/減算器からの出力、プロセッサ3か
ら指示された先取りアドレスレジスタ54、若しくは次
先取りカウントレジスタ57を選択して出力する。
The selectors 53 and 59 select and output the output from the adder / subtractor, the prefetch address register 54 or the next prefetch count register 57 specified by the processor 3 in accordance with an instruction from the prefetch arbitration unit.

【0066】セレクタ55、65は、先取り調停部から
の制御信号(チャネル番号)に基づき、先取りアドレス
レジスタ54または先取りカウントレジスタ60を選択
する。
The selectors 55 and 65 select the prefetch address register 54 or the prefetch count register 60 based on the control signal (channel number) from the prefetch arbitration unit.

【0067】加算器56は、先取りアドレスに主記憶ア
クセス制御部4から送られてくる主記憶装置1へのデー
タ転送量を加算する。
The adder 56 adds the data transfer amount to the main memory 1 sent from the main memory access controller 4 to the prefetch address.

【0068】減算器66は、先取りカウントに主記憶ア
クセス制御部4から送られてくる主記憶装置1へのデー
タ転送量を減算する。
The subtractor 66 subtracts the data transfer amount sent from the main memory access control unit 4 to the main memory 1 to the prefetch count.

【0069】データ連鎖検出器67は、先取りカウント
に主記憶装置1へのデータ転送量を減算た結果が“0”
になり、かつ先取りカウントレジスタ内のデータ連鎖指
示有りの場合にデータ連鎖を検出し、データ連鎖発生時
は先取り調停部に発生を知らせると共にプロセッサ3に
通知する。
The data chain detector 67 determines that the result of subtracting the data transfer amount to the main storage device 1 from the prefetch count is “0”.
And when there is a data chain instruction in the prefetch count register, the data chain is detected. When the data chain occurs, the occurrence is notified to the prefetch arbitration unit and also notified to the processor 3.

【0070】図7を用いて実施形態の動作例の説明を行
う。プロセッサ3は、チャネルプログラムを解析した結
果が主記憶リードDMA転送であった場合は、先取り制
御部5にチャネル番号と主記憶装置1の物理アドレス、
転送長およびデータ連鎖の有無を通知し、先取りアドレ
スレジスタ54および先取りカウントレジスタ60への
書き込みを指示する。また、データ連鎖指示の場合は、
先取り制御部5にチャネル番号と次の主記憶装置1の物
理アドレス、転送長およびデータ連鎖の有無を通知し、
次先取りアドレスレジスタ51および次先取りカウント
レジスタ57への書き込みも指示する。
An operation example of the embodiment will be described with reference to FIG. If the result of analyzing the channel program is a main storage read DMA transfer, the processor 3 sends the channel number and the physical address of the main storage device 1 to the prefetch control unit 5.
The transfer length and the presence or absence of a data chain are notified, and writing to the prefetch address register 54 and the prefetch count register 60 is instructed. In the case of data chain instruction,
Notify the prefetch control unit 5 of the channel number and the physical address of the next main storage device 1, the transfer length, and the presence or absence of a data chain,
Writing to the next prefetch address register 51 and the next prefetch count register 57 is also instructed.

【0071】先取り調停部は、プロセッサ3から先取り
アドレスレジスタ54への書き込み指示を受け付ける
と、セレクタ53にプロセッサ3から送られて来た物理
アドレスを選択させ、プロセッサ3から送られて来たチ
ャネル番号に対応する先取りアドレスレジスタ54内か
ら1つを選択し、物理アドレスを書き込むと共に、プロ
セッサ3から送られて来たチャネル番号に対応する先取
りアドレスレジスタの有効表示を行う。
When the prefetch arbitration unit receives a write instruction from the processor 3 to the prefetch address register 54, the prefetch arbitration unit causes the selector 53 to select the physical address sent from the processor 3, and the channel number sent from the processor 3 Is selected from the prefetch address register 54 corresponding to the prefetch address register 54, the physical address is written, and the valid display of the prefetch address register corresponding to the channel number sent from the processor 3 is performed.

【0072】また、プロセッサ3から次先取りアドレス
レジスタ51への書き込み指示を受け付けると、プロセ
ッサ3から送られて来たチャネル番号に対応する先取り
アドレス有効表示を参照し、有効であれば次先取りアド
レスレジスタ51内の1つを選択し物理アドレスを書き
込むと共に、プロセッサ3から送られて来たチャネル番
号に対応する次先取りアドレスレジスタ有効表示を行
う。
When receiving a write instruction from the processor 3 to the next prefetch address register 51, the prefetch address validity display corresponding to the channel number sent from the processor 3 is referred to. One of 51 is selected, the physical address is written, and the next prefetch address register valid display corresponding to the channel number sent from the processor 3 is performed.

【0073】逆に、無効であればセレクタ53にプロセ
ッサ3から送られて来た物理アドレスを選択させ、プロ
セッサ3から送られて来たチャネル番号に対応する先取
りアドレスレジスタ54内の1つを選択し物理アドレス
を書き込むと共に、プロセッサ3から送られて来たチャ
ネル番号に対応する先取りアドレスレジスタ有効表示を
行う。
On the other hand, if the address is invalid, the selector 53 selects the physical address sent from the processor 3 and selects one of the prefetch address registers 54 corresponding to the channel number sent from the processor 3. At the same time, a physical address is written and a prefetch address register valid display corresponding to the channel number sent from the processor 3 is performed.

【0074】先取り調停部は、カウントに関しても同様
に、先取りカウントレジスタ60への書き込み指示を受
け付けると、セレクタ59にプロセッサ3から送られて
来たカウント長を選択させ、プロセッサ3から送られて
来たチャネル番号に対応する先取りカウントレジスタ6
0内から1つを選択しカウント長を書き込む。これと共
に、プロセッサ3から送られて来たチャネル番号に対応
する先取りカウントレジスタ60の有効表示を行う。
Similarly, when the prefetch arbitration unit receives a write instruction to the prefetch count register 60 with respect to counting, it causes the selector 59 to select the count length sent from the processor 3, and receives the count length sent from the processor 3. Count register 6 corresponding to the channel number
Select one from 0 and write the count length. At the same time, the valid display of the prefetch count register 60 corresponding to the channel number sent from the processor 3 is performed.

【0075】データ連鎖指示を伴う場合は、先取りカウ
ントレジスタ60内のデータ連鎖表示をデータ連鎖有り
に設定する。またプロセッサ3から次先取りカウントレ
ジスタ57への書き込み指示を受け付けると、プロセッ
サ3から送られて来たチャネル番号に対応する先取りカ
ウント有効表示を参照し、有効であれば次先取りカウン
トレジスタ57内の1つを選択しカウント長を書き込む
と共に、プロセッサ3から送られて来たチャネル番号に
対応する次先取りカウントレジスタ有効表示を行う。
When a data chain instruction is involved, the data chain display in the prefetch count register 60 is set to "with data chain". When the processor 3 receives a write instruction from the processor 3 to the next prefetch count register 57, it refers to the prefetch count validity display corresponding to the channel number sent from the processor 3, and if it is valid, stores 1 in the next prefetch count register 57. One is selected, the count length is written, and the next prefetch count register valid display corresponding to the channel number sent from the processor 3 is performed.

【0076】データ連鎖指示を伴う場合は、次先取りカ
ウントレジスタ57内のデータ連鎖表示をデータ連鎖有
りに設定する。逆に先取りカウント有効表示が無効であ
れば、セレクタ59にプロセッサ3から送られて来たカ
ウント長を選択させ、プロセッサ3から送られて来たチ
ャネル番号に対応する先取りカウントレジスタ60内の
1つを選択しカウント長を書き込むと共に、プロセッサ
3から送られて来たチャネル番号に対応する先取りカウ
ントレジスタ有効表示を行う。データ連鎖を伴う場合
は、先取りカウントレジスタ60内のデータ連鎖表示を
データ連鎖有りに設定する。
When a data chain instruction is accompanied, the data chain display in the next prefetch count register 57 is set to "with data chain". Conversely, if the prefetch count valid display is invalid, the selector 59 is caused to select the count length sent from the processor 3 and one of the prefetch count registers 60 corresponding to the channel number sent from the processor 3 is selected. Is selected, the count length is written, and a prefetch count register valid display corresponding to the channel number sent from the processor 3 is performed. If a data chain is involved, the data chain display in the prefetch count register 60 is set to "with data chain".

【0077】先取り調停部は、先取りアドレスレジスタ
54と先取りカウントレジスタ60の両方が有効表示を
行っているものがあれば、それらの内の1チャネルを選
択し、主記憶アクセス制御部4にチャネル番号と共に主
記憶リード要求を出す。但し、DMA制御部6の主記憶
リードデータバッファ61が一杯で書き込める余地が無
い場合は、主記憶アクセス制御部4への主記憶リード要
求は抑止する。
The prefetch arbitration unit selects one of the channels if both the prefetch address register 54 and the prefetch count register 60 indicate valid display, and sends the channel number to the main memory access control unit 4. At the same time, a main memory read request is issued. However, when the main memory read data buffer 61 of the DMA control unit 6 is full and there is no room for writing, the main memory read request to the main memory access control unit 4 is suppressed.

【0078】主記憶アクセス制御部4は、先取り調停部
から主記憶リード要求を受け付けると、先取り調停部か
ら渡されたチャネル番号でセレクタ55を選択し先取り
アドレスを読み出し、主記憶リード要求を主記憶装置1
に出すと共に主記憶装置1に出したリード要求の転送量
とチャネル番号を先取り制御部5に渡し、先取りアドレ
スと転送量の加算結果をチャネル番号に従った先取りア
ドレスレジスタへ54の書き込みを指示する。
When the main memory access control unit 4 receives the main memory read request from the prefetch arbitration unit, it selects the selector 55 using the channel number passed from the prefetch arbitration unit, reads the prefetch address, and sends the main memory read request to the main memory. Apparatus 1
The transfer amount and the channel number of the read request sent to the main storage device 1 and the channel number are sent to the prefetch control unit 5, and the result of adding the prefetch address and the transfer amount is instructed to be written into the prefetch address register 54 according to the channel number. .

【0079】同様に、チャネル番号でセレクタ65を選
択し先取りカウントを読み出し、先取りカウントと転送
量の減算結果をチャネル番号に従った先取りカウントレ
ジスタ60への書き込みを指示する。
Similarly, the selector 65 is selected by the channel number, the prefetch count is read, and the result of subtracting the prefetch count and the transfer amount is written to the prefetch count register 60 according to the channel number.

【0080】データ連鎖検出部62が上記先取りカウン
トと転送量の減算結果の“0”を検出し、かつ、先取り
カウントレジスタ内のデータ連鎖が有効になっていた場
合にデータ連鎖を検出し、データ連鎖検出を先取り調停
部に報告すると共に、プロセッサ3にチャネル番号と共
にデータ連鎖検出を報告する。
The data chain detecting section 62 detects "0" as a result of subtraction of the prefetch count and the transfer amount, and detects the data chain if the data chain in the prefetch count register is valid. The chain detection is reported to the preemption arbitration unit, and the data chain detection is reported to the processor 3 together with the channel number.

【0081】データ連鎖検出を報告された先取り調停部
は、データ連鎖を検出したチャネル番号に対応する先取
りアドレスレジスタおよび先取りカウント有効表示を無
効にすると共に、データ連鎖を検出したチャネルに対応
する次先取りアドレスレジスタ51および次先取りカウ
ントレジスタ57の有効表示を検索する。
The prefetch arbitration unit notified of the data chain detection invalidates the prefetch address register and the prefetch count valid display corresponding to the channel number in which the data chain was detected, and the next prefetch corresponding to the channel in which the data chain was detected. The valid display of the address register 51 and the next prefetch count register 57 is searched.

【0082】次先取りアドレスレジスタ51と次先取り
カウントレジスタ57の両方が有効であった場合は、セ
レクタ52およびセレクタ58を、データ連鎖を検出し
たチャネルによりセレクトし、セレクタ53に次先取り
アドレスレジスタ51を選択させ、セレクタ58に次先
取りカウントレジスタ57を選択させる。
If both the next prefetch address register 51 and the next prefetch count register 57 are valid, the selector 52 and the selector 58 are selected by the channel on which the data chain has been detected, and the next prefetch address register 51 is stored in the selector 53. And the selector 58 selects the next prefetch count register 57.

【0083】データ連鎖を検出したチャネルに応じた先
取りアドレスレジスタ54に、次先取りアドレスレジス
タ51の値をロードし、同様に先取りカウントレジスタ
60に次先取りカウントレジスタ57の値をデータ連鎖
表示も含めてロードする。これと共に、先取りアドレス
レジスタ54および先取りカウントレジスタ60の有効
表示を有効にする。
The value of the next prefetch address register 51 is loaded into the prefetch address register 54 corresponding to the channel in which the data chain has been detected, and the value of the next prefetch count register 57 is similarly stored in the prefetch count register 60 including the data chain display. To load. At the same time, the valid display of the prefetch address register 54 and the prefetch count register 60 is made valid.

【0084】データ連鎖検出を報告されたプロセッサ3
は、報告されたチャネル制御部に対する転送に次アドレ
スおよびカウントが必要であれば、先取り制御部5にチ
ャネル番号、主記憶装置1の物理アドレス、カウント長
およびデータ連鎖の有無を通知し、次先取りアドレスレ
ジスタ51および次先取りカウントレジスタ57への書
き込みを指示する。
Processor 3 reported data chain detection
If the next address and count are necessary for the transfer to the reported channel control unit, the prefetch control unit 5 is notified of the channel number, the physical address of the main storage device 1, the count length, and the presence or absence of a data chain. Instructs writing to the address register 51 and the next prefetch count register 57.

【0085】(変化例)上記の実施形態では、先取りア
ドレスレジスタ54、先取りアドレスレジスタ有効表示
ビット、次先取りアドレスレジスタ51および次先取り
アドレスレジスタ有効表示ビットをチャネル対応とし
た。しかし同時に起動をかけることが出来るチャネルプ
ログラム数(n個)持てば意味をなすので、チャネル対
応で無くともチャネルプログラム起動時に、1〜nの数
を割り当て、その番号で上記レジスタ、有効表示ビット
を選択することにしても良い。
(Modification) In the above embodiment, the prefetch address register 54, the prefetch address register valid display bit, the next prefetch address register 51, and the next prefetch address register valid display bit correspond to the channels. However, it makes sense to have the number (n) of channel programs that can be activated at the same time. Therefore, even if the channel program is not supported, the numbers 1 to n are assigned when the channel program is activated, and the register and the valid display bit are assigned by that number. You may choose.

【0086】上記の実施形態によれば、入出力制御装置
に於けるデータ先取り機構に、先取るべきアドレスとそ
のカウント長、その次に先取るべきアドレスとそのカウ
ント長を設定可能とする。このことにより、データ連鎖
(カウント長が“0”かつデータ連鎖指示有り)検出時
に、即座に次チャネルプログラムエントリに従い先取り
を開始出来る。
According to the above embodiment, an address to be prefetched and its count length, and an address to be prefetched next and its count length can be set in the data prefetch mechanism in the input / output control device. Thus, upon detecting a data chain (the count length is “0” and a data chain instruction is present), prefetching can be immediately started according to the next channel program entry.

【0087】図8において、先取りアドレスレジスタ5
4に格納されたアドレスで主記憶装置1からの読み出し
動作を行う。先取りアドレスレジスタ54およびカウン
ト長は、主記憶装置1から読み出したデータ量に従って
更新され、データ連鎖が発生した時点で、次先取りアド
レスレジスタ51およびそのカウント長より値をロード
し先取りを続ける。これと同時に、マイクロプログラム
に次次先取りアドレスおよびカウント長の設定を要求す
る。マイクロプログラムは、アドレス変換を行って次次
先取りアドレスおよびカウント長を設定する。
In FIG. 8, prefetch address register 5
The read operation from the main storage device 1 is performed at the address stored in the main storage device 4. The prefetch address register 54 and the count length are updated in accordance with the amount of data read from the main storage device 1. When a data chain occurs, values are loaded from the next prefetch address register 51 and the count length and prefetching is continued. At the same time, the microprogram is requested to set the next prefetch address and the count length. The microprogram performs address conversion to set the next prefetch address and the count length.

【0088】よって、予めプロセッサにて次に先取るべ
きアドレスおよびカウント長をレジスタに設定しておく
ことにより、ページオーバ検出時に次先取りアドレスよ
り先取りを開始することができ、入出力動作のスループ
ット向上が図れる。
Therefore, by setting the address to be prefetched next and the count length in the register in advance in the register, prefetching can be started from the next prefetched address when a page over is detected, thereby improving the throughput of the input / output operation. Can be achieved.

【0089】尚、上述の実施形態は本発明の好適な実施
の一例である。但し、これに限定されるものではなく、
本発明の要旨を逸脱しない範囲内において種々変形実施
が可能である。
The above embodiment is an example of a preferred embodiment of the present invention. However, it is not limited to this.
Various modifications can be made without departing from the spirit of the present invention.

【0090】[0090]

【発明の効果】以上の説明より明かなように、本発明の
入出力制御装置及びそのデータの先取り方法は、現在先
取るべき物理アドレスを保持し、現在先取るべき転送長
を保持し、保持された物理アドレスの次ページの物理ア
ドレスを保持し、格納された転送長の次のカウント長を
保持する。これにより、データ連鎖発生時に、次アドレ
スをロードし先取りを続けることにより、効率よく先取
りを行える。
As apparent from the above description, the input / output control device and the data prefetching method of the present invention hold a physical address to be prefetched, hold a transfer length to be prefetched, and hold. The physical address of the page next to the stored physical address is held, and the count length next to the stored transfer length is held. Thus, when a data chain occurs, prefetching can be performed efficiently by loading the next address and continuing prefetching.

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

【図1】本発明が適用される情報処理システムの構成を
示すブロック図である。
FIG. 1 is a block diagram showing a configuration of an information processing system to which the present invention is applied.

【図2】本発明の第1の実施の形態による入出力制御装
置の構成を示すブロック図である。
FIG. 2 is a block diagram illustrating a configuration of an input / output control device according to the first embodiment of the present invention.

【図3】本発明の入出力制御装置の第1の実施の形態に
おける先取管理回路の構成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of a prefetch management circuit in the first embodiment of the input / output control device of the present invention.

【図4】本発明の第1の実施の形態における入出力命令
の発行処理の動作を示す図である。
FIG. 4 is a diagram illustrating an operation of an input / output instruction issuance process according to the first embodiment of the present invention.

【図5】本発明の第1の実施の形態におけるデータ転送
処理の動作を示す図である。
FIG. 5 is a diagram illustrating an operation of a data transfer process according to the first embodiment of the present invention.

【図6】大発明の第1の実施の形態における先取り処理
の動作を示す図である。
FIG. 6 is a diagram illustrating an operation of a prefetch process according to the first embodiment of the present invention;

【図7】本発明の入出力制御装置の第2の実施形態が適
用されたデータ転送部のブロック構成図が示されてい
る。
FIG. 7 is a block diagram showing a data transfer unit to which an input / output control device according to a second embodiment of the present invention is applied;

【図8】本発明の第2の実施形態に於ける先取り制御部
のより詳細な構成例を示すブロック図である。
FIG. 8 is a block diagram illustrating a more detailed configuration example of a prefetch control unit according to a second embodiment of the present invention.

【図9】従来例のデータ転送部のブロック構成図を示し
ている。
FIG. 9 is a block diagram showing a data transfer unit according to a conventional example.

【図10】従来例に於ける先取り制御部のより詳細な構
成例を示すブロック図である。
FIG. 10 is a block diagram showing a more detailed configuration example of a prefetch control unit in a conventional example.

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

1、200 主記憶装置 2、300 入出力制御装置 3 プロセッサ 4 主記憶アクセス制御部 5 先取り制御部 6 DMA制御部 10 データ転送部 51 次先取りアドレスレジスタ 52、53、55、58、59、65 セレクタ 54 先取りアドレスレジスタ 56 加算器 57 次先取りカウントレジスタ 60 先取りカウントレジスタ 61 主記憶リードデータバッファ 62 主記憶ライトデータバッファ 66 減算器 67 データ連鎖検出器 100 処理装置 400 システムバス 500 チャネル制御装置 800 チャネルカード 700 ディスク制御装置 800 ディスク装置 900 LANプロセッサ 1, 200 main storage device 2, 300 input / output control device 3 processor 4 main storage access control unit 5 prefetch control unit 6 DMA control unit 10 data transfer unit 51 secondary prefetch address register 52, 53, 55, 58, 59, 65 selector 54 Prefetch address register 56 Adder 57 Next prefetch count register 60 Prefetch count register 61 Main storage read data buffer 62 Main storage write data buffer 66 Subtractor 67 Data chain detector 100 Processing unit 400 System bus 500 Channel control unit 800 Channel card 700 Disk control device 800 Disk device 900 LAN processor

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/08 G06F 12/08 X G 13/12 340 13/12 340D Fターム(参考) 5B005 JJ12 KK15 LL11 MM23 NN01 NN43 5B013 AA20 5B014 EA03 GC22 GC23 GD24 5B033 AA04 BC06 DB06 DC02 5B061 BA03 DD01 DD06 DD09 DD11 PP01 ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) G06F 12/08 G06F 12/08 X G 13/12 340 13/12 340D F-term (Reference) 5B005 JJ12 KK15 LL11 MM23 NN01 NN43 5B013 AA20 5B014 EA03 GC22 GC23 GD24 5B033 AA04 BC06 DB06 DC02 5B061 BA03 DD01 DD06 DD09 DD11 PP01

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 主記憶装置からのデータを先取りして保
持するデータバッファと、 このデータバッファに先取りするための先取アドレスを
保持する先取アドレスレジスタと、 現在先取るべきデータの転送長を保持する先取りカウン
トレジスタと、 この先取アドレスレジスタに保持された先取アドレスの
次の先取りアドレスを保持する次先取アドレスレジスタ
と、 前記先取りカウントレジスタに格納される転送長の次の
カウント長を保持する次先取りカウントレジスタと、 を含み構成されたことを特徴とする入出力制御装置。
1. A data buffer for prefetching and holding data from a main storage device, a prefetch address register for holding a prefetch address for prefetching data in the data buffer, and a transfer length of data to be prefetched at present. A prefetch count register; a next prefetch address register that holds a prefetch address next to the prefetch address held in the prefetch address register; and a next prefetch count that holds a count length next to the transfer length stored in the prefetch count register. An input / output control device, comprising: a register;
【請求項2】 前記先取アドレスが保持する先取アドレ
スと、前記次先取アドレスレジスタが保持する次の先取
りアドレスとは、物理アドレスであることを特徴とする
請求項1記載の入出力制御装置。
2. The input / output control device according to claim 1, wherein the prefetch address held by the prefetch address and the next prefetch address held by the next prefetch address register are physical addresses.
【請求項3】 前記入出力制御装置は所定の装置間に設
置され、前記データのデータ連鎖発生時にデータ先取り
の高効率化を可能としたことを特徴とする請求項2記載
の入出力制御装置。
3. The input / output control device according to claim 2, wherein the input / output control device is installed between predetermined devices, and the efficiency of data prefetching can be improved when the data chain occurs. .
【請求項4】 前記次先取りアドレスレジスタ、次先取
りカウントレジスタ、先取りアドレスレジスタおよび先
取りカウントレジスタは、同時に起動を掛けることが出
来るチャネルプログラム数を持つことを特徴とする請求
項1から3の何れかに記載の入出力制御装置。
4. The prefetch address register, the next prefetch count register, the prefetch address register, and the prefetch count register have the number of channel programs that can be activated at the same time. 2. The input / output control device according to item 1.
【請求項5】 前記先取りアドレスレジスタおよび前記
先取りカウントレジスタはレジスタ郡で構成され、前記
入出力制御装置は前記レジスタ郡が保持するデータの入
出力を選択するセレクタをさらに有し、当該入出力制御
装置は動作を制御する所定のプロセッサと接続され、前
記次先取りアドレスレジスタへ前記プロセッサにより物
理アドレスがセットされ各々の有効/無効を示すフラグ
を持ち、前記次先取りカウントレジスタへ前記プロセッ
サにより転送カウント長がセットされ各々の有効/無効
を示すフラグおよびデータ連鎖指示の有無を示すフラグ
を持ち、前記先取りアドレスレジスタへは前記セレクタ
のセレクト結果が格納され各々の有効/無効を示すフラ
グを持ち、前記先取りカウントレジスタへは前記セレク
タのセレクト結果が格納され各々の有効/無効を示すフ
ラグおよびデータ連鎖指示の有無を示すフラグを持つこ
とを特徴とする請求項2から4の何れかに記載の入出力
制御装置。
5. The prefetch address register and the prefetch count register are constituted by a group of registers, and the input / output control device further includes a selector for selecting input / output of data held by the group of registers. The device is connected to a predetermined processor for controlling the operation, has a physical address set in the next prefetch address register by the processor and has a flag indicating valid / invalid, and a transfer count length by the processor to the next prefetch count register. Is set, a flag indicating each valid / invalid state and a flag indicating the presence / absence of a data chain instruction are stored. The select result of the selector is stored in the prefetch address register, and a flag indicating each valid / invalid state is provided. The selection result of the selector is stored in the count register. The input / output control device according to any one of claims 2 to 4, wherein the input / output control device has a flag indicating the validity / invalidity and a flag indicating presence / absence of a data chain instruction.
【請求項6】 主記憶装置からのデータを先取りして保
持するデータバッファ工程と、 このデータバッファ工程で先取りする先取アドレスを保
持する先取アドレスレジスタ工程と、 現在先取るべきデータの転送長を保持する先取りカウン
トレジスタ工程と、 この先取アドレスレジスタ工程に保持された先取アドレ
スの次の先取りアドレスを保持する次先取アドレスレジ
スタ工程と、 前記先取りカウントレジスタ工程に格納される転送長の
次のカウント長を保持する次先取りカウントレジスタ工
程と、 を含み構成されたことを特徴とするデータの先取り方
法。
6. A data buffer process for prefetching and holding data from a main storage device, a prefetch address register process for holding a prefetch address prefetched in the data buffer process, and holding a transfer length of data to be prefetched at present. A prefetch count register step, a next prefetch address register step of holding a prefetch address next to the prefetch address held in the prefetch address register step, and a next count length of the transfer length stored in the prefetch count register step. A prefetching method for data, comprising: holding a next prefetching count register.
JP11164564A 1999-06-11 1999-06-11 Input/output control device and method for prefetching data Pending JP2000353146A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11164564A JP2000353146A (en) 1999-06-11 1999-06-11 Input/output control device and method for prefetching data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11164564A JP2000353146A (en) 1999-06-11 1999-06-11 Input/output control device and method for prefetching data

Publications (1)

Publication Number Publication Date
JP2000353146A true JP2000353146A (en) 2000-12-19

Family

ID=15795570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11164564A Pending JP2000353146A (en) 1999-06-11 1999-06-11 Input/output control device and method for prefetching data

Country Status (1)

Country Link
JP (1) JP2000353146A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2454811A (en) * 2007-11-19 2009-05-20 St Microelectronics Ltd Cache memory which pre-fetches data when an address register is written
JP2011530744A (en) * 2008-08-06 2011-12-22 アスペン・アクイジション・コーポレーション Stoppable and restartable DMA engine
US8725987B2 (en) 2007-11-19 2014-05-13 Stmicroelectronics (Research & Development) Limited Cache memory system including selectively accessible pre-fetch memory for pre-fetch of variable size data

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2454811A (en) * 2007-11-19 2009-05-20 St Microelectronics Ltd Cache memory which pre-fetches data when an address register is written
GB2454811B (en) * 2007-11-19 2012-11-14 St Microelectronics Ltd Cache memory system
US8725987B2 (en) 2007-11-19 2014-05-13 Stmicroelectronics (Research & Development) Limited Cache memory system including selectively accessible pre-fetch memory for pre-fetch of variable size data
US9208096B2 (en) 2007-11-19 2015-12-08 Stmicroelectronics (Research & Development) Limited Cache pre-fetching responsive to data availability
US9311246B2 (en) 2007-11-19 2016-04-12 Stmicroelectronics (Research & Development) Limited Cache memory system
JP2011530744A (en) * 2008-08-06 2011-12-22 アスペン・アクイジション・コーポレーション Stoppable and restartable DMA engine
US8732382B2 (en) 2008-08-06 2014-05-20 Qualcomm Incorporated Haltable and restartable DMA engine

Similar Documents

Publication Publication Date Title
KR100242484B1 (en) Apparatus and method for optimizing performance of cache memory
US5659798A (en) Method and system for initiating and loading DMA controller registers by using user-level programs
US6003112A (en) Memory controller and method for clearing or copying memory utilizing register files to store address information
US8255591B2 (en) Method and system for managing cache injection in a multiprocessor system
JP5387776B2 (en) Interrupt control method, multi-core processor system, and interrupt control program
JPS61107434A (en) Data processor
JPH0147813B2 (en)
US6654837B1 (en) Dynamic priority external transaction system
JP2695017B2 (en) Data transfer method
JP2019169081A (en) Information processing device, information processing method, and program
US7451274B2 (en) Memory control device, move-in buffer control method
JP4642531B2 (en) Arbitration of data requests
JP4166615B2 (en) Data processing apparatus and method for processing multi-access instruction in data processing apparatus, and computer program product by the method
JP2000353146A (en) Input/output control device and method for prefetching data
JPH05173961A (en) Method for controlling transfer of data block
JP3481425B2 (en) Cache device
EP0488566A2 (en) Method and apparatus for fast page mode selection
JP6365718B1 (en) Computer system and memory copy method
JPH11345199A (en) Input/output controller and data prefetching method therefor
JP4111645B2 (en) Memory bus access control method after cache miss
US12038839B2 (en) Processor and method for designating a demotion target to be demoted from an in-core cache structure to an out-of-core cache structure
JP3077807B2 (en) Microcomputer system
JPH0715667B2 (en) Data processing device
JPH1185673A (en) Method and device for controlling shared bus
JP2004234420A (en) Interruption control method and interruption control process

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020924