JP3011044B2 - I / O controller - Google Patents

I / O controller

Info

Publication number
JP3011044B2
JP3011044B2 JP7052381A JP5238195A JP3011044B2 JP 3011044 B2 JP3011044 B2 JP 3011044B2 JP 7052381 A JP7052381 A JP 7052381A JP 5238195 A JP5238195 A JP 5238195A JP 3011044 B2 JP3011044 B2 JP 3011044B2
Authority
JP
Japan
Prior art keywords
request
memory
cache memory
input
same address
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
JP7052381A
Other languages
Japanese (ja)
Other versions
JPH08249229A (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
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 JP7052381A priority Critical patent/JP3011044B2/en
Publication of JPH08249229A publication Critical patent/JPH08249229A/en
Application granted granted Critical
Publication of JP3011044B2 publication Critical patent/JP3011044B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、入出力制御装置に関
し、特にリクエストを受け付けるための先入れ先出し記
憶手段を有する入出力制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an input / output control device, and more particularly to an input / output control device having first-in first-out storage means for receiving a request.

【0002】[0002]

【従来の技術】処理装置やメモリを接続するシステムバ
スと入出力装置等を接続する入出力バスとの間のインタ
フェースの役割をする入出力制御装置は、一方のバスか
らの転送要求があると他方のバスの使用権を獲得して転
送を行う。この入出力制御装置には、同一のバスに接続
する複数の装置(一般に「エージェント」ともよばれ
る)から次々とリクエストが入力される。このため、あ
るリクエストの処理がすべて完了してからでないと後続
リクエストを受け付けないこととすると、その後続のリ
クエストがバスを専有した状態で待たされることとな
り、バス間の転送性能が低下するのみならずバス自身の
使用効率も低下してしまう。
2. Description of the Related Art An input / output control device serving as an interface between a system bus for connecting a processing device or a memory and an input / output bus for connecting an input / output device or the like receives a transfer request from one bus. The transfer right is acquired by acquiring the right to use the other bus. Requests are sequentially input to this input / output control device from a plurality of devices (generally also called “agents”) connected to the same bus. For this reason, if it is determined that the processing of a certain request must be completed before the subsequent request is accepted, the subsequent request is kept waiting in a state occupying the bus, and if only the transfer performance between buses is reduced, The use efficiency of the bus itself also decreases.

【0003】これに対して、従来の技術では、入出力制
御装置にリクエストを受け付けるための先入れ先出し記
憶手段(以下、「キュー」という)を備えて、先行する
リクエストの処理が完了する前に後続のリクエストを受
け付けられるようにしている。
On the other hand, in the prior art, a first-in first-out storage means (hereinafter, referred to as a "queue") for receiving a request in an input / output control device is provided so that the processing of a subsequent request is completed before the processing of the preceding request is completed. Requests can be accepted.

【0004】たとえば、特開昭51−5910号公報に
は、処理装置からリクエストを受け取り蓄積するハード
ウェアキューを有する集線制御装置の技術が記載されて
いる。
For example, Japanese Patent Application Laid-Open No. 51-5910 discloses a technology of a line concentrator having a hardware queue for receiving and accumulating requests from a processing device.

【0005】[0005]

【発明が解決しようとする課題】しかし、上述の従来技
術では、入出力制御装置において入出力キャッシュメモ
リを設ける構成を採った場合には、以下のような不都合
が生ずる。すなわち、あるリクエストについて入出力キ
ャッシュメモリにアクセスをした場合、キュー内に同一
アドレスに対するリクエストが存在する可能性があるた
め、リクエストの追い越しが発生するおそれがある。一
方、キュー登録時に入出力キャッシュメモリにミスヒッ
トした場合であっても、リクエストの発行時には該当す
るエントリが存在する可能性があるが、それにもかかわ
らず無駄にメモリアクセスを発行してしまうおそれがあ
る。
However, in the above-mentioned prior art, the following inconvenience occurs when an input / output cache memory is provided in the input / output control device. That is, when an input / output cache memory is accessed for a certain request, there is a possibility that a request for the same address exists in the queue, so that the request may be overtaken. On the other hand, even if there is a mishit in the input / output cache memory at the time of queue registration, there is a possibility that the corresponding entry exists at the time of issuing a request, but nevertheless there is a risk that memory access will be wasted unnecessarily. is there.

【0006】本発明の目的は、上述の問題を解決し、同
一アドレスに関するリクエスト間の追い越しが発生しな
いように制御する入出力制御装置を提供することにあ
る。
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problem and to provide an input / output control device for controlling an overtaking between requests relating to the same address so as not to occur.

【0007】また、本発明の他の目的は、無駄なメモリ
アクセスを発行しないように制御する入出力制御装置を
提供することにある。
Another object of the present invention is to provide an input / output control device for controlling not to issue a useless memory access.

【0008】[0008]

【課題を解決するための手段】上記課題を解決するため
に本発明の入出力制御装置は、メモリを接続する第1の
バスと前記メモリへのリクエストを発生するリクエスト
発生手段を接続する第2のバスとの間に接続され、前記
リクエスト発生手段からのリクエストを前記メモリへ発
行するまで保持するキューと、前記メモリの一部の内容
を保持するキャッシュメモリとを含む入出力制御装置に
おいて、前記リクエスト発生手段からのリクエストにつ
いて、前記キャッシュメモリからアクセスするか、前記
キューに保持するかを制御するリクエスト受付制御回路
を含む。
In order to solve the above problems, an input / output control device according to the present invention comprises a first bus connecting a memory and a second bus connecting a request generating means for generating a request to the memory. An input / output control device that is connected to a bus of the I / O device and includes a queue that holds a request from the request generation unit until the request is issued to the memory, and a cache memory that holds a part of the memory. And a request reception control circuit for controlling whether the request from the request generation unit is accessed from the cache memory or held in the queue.

【0009】また、本発明の他の入出力制御装置におい
て、前記キューは、当該キューに保持された順に各リク
エストを前記メモリに対して発行を試みる。
In another input / output control device according to the present invention, the queue attempts to issue requests to the memory in the order in which the requests are held in the queue.

【0010】また、本発明の他の入出力制御装置におい
て、前記リクエスト受付制御回路は、前記リクエスト発
生手段からのリクエストに関して同一アドレスをアクセ
ス先とするリクエストが前記キューに存在せず、かつ、
前記リクエスト発生手段からのリクエストに関して同一
アドレスのデータが前記キャッシュメモリに存在する場
合には、前記キャッシュメモリにアクセスし、前記リク
エスト発生手段からのリクエストに関して同一アドレス
をアクセス先とするリクエストが前記キューに存在し、
または、前記リクエスト発生手段からのリクエストに関
して同一アドレスのデータが前記キャッシュメモリに存
在しない場合には、前記キューに当該リクエストを保持
する。
In another input / output control device according to the present invention, the request reception control circuit is configured such that, with respect to a request from the request generation means, a request having the same address as an access destination does not exist in the queue, and
When data of the same address exists in the cache memory with respect to the request from the request generation unit, the cache memory is accessed, and a request having the same address as the access destination with respect to the request from the request generation unit is stored in the queue. Exists,
Alternatively, when there is no data at the same address in the cache memory with respect to the request from the request generation unit, the request is held in the queue.

【0011】また、本発明の他の入出力制御装置は、メ
モリを接続する第1のバスと前記メモリへのリクエスト
を発生するリクエスト発生手段を接続する第2のバスと
の間に接続され、前記リクエスト発生手段からのリクエ
ストを前記メモリへ発行するまで保持するキューと、前
記メモリの一部の内容を保持するキャッシュメモリとを
含む入出力制御装置において、前記リクエスト発生手段
からのリクエストについて、前記キャッシュメモリから
アクセスするか、前記キューに保持するかを制御するリ
クエスト受付制御回路と、前記キューに保持されたリク
エストについて前記メモリに発行する前に前記キャッシ
ュメモリにアクセスするか否かを制御するリクエスト発
行制御回路とを含む。
Further, another input / output control device of the present invention is connected between a first bus connecting a memory and a second bus connecting request generating means for generating a request to the memory, In an input / output control device including a queue for holding a request from the request generation unit until the request is issued to the memory and a cache memory for holding a part of the memory, the request from the request generation unit is A request reception control circuit that controls whether to access from the cache memory or to hold the request in the queue; and a request to control whether to access the cache memory before issuing the request held in the queue to the memory. Issue control circuit.

【0012】また、本発明の他の入出力制御装置におい
て、前記リクエスト受付制御回路は、前記リクエスト発
生手段からのリクエストに関して同一アドレスをアクセ
ス先とするリクエストが前記キューに存在せず、かつ、
前記リクエスト発生手段からのリクエストに関して同一
アドレスのデータが前記キャッシュメモリに存在する場
合には、前記キャッシュメモリにアクセスし、前記リク
エスト発生手段からのリクエストに関して同一アドレス
をアクセス先とするリクエストが前記キューに存在し、
または、前記リクエスト発生手段からのリクエストに関
して同一アドレスのデータが前記キャッシュメモリに存
在しない場合には、前記キューに当該リクエストを保持
し、前記リクエスト発行制御回路は、前記キューに保持
されたリクエストに関して同一アドレスのデータが前記
キャッシュメモリに存在する場合には、前記キャッシュ
メモリにアクセスし、前記キューに保持されたリクエス
トに関して同一アドレスのデータが前記キャッシュメモ
リに存在しない場合には、前記メモリに当該リクエスト
の発行を試みる。
In another input / output control device according to the present invention, the request reception control circuit is configured such that, with respect to a request from the request generation means, a request having the same address as an access destination does not exist in the queue, and
When the data at the same address exists in the cache memory with respect to the request from the request generation unit, the cache memory is accessed, and the request having the same address as the access destination with respect to the request from the request generation unit is stored in the queue. Exists,
Alternatively, when the data at the same address does not exist in the cache memory with respect to the request from the request generation unit, the request is held in the queue, and the request issuance control circuit sets the same with respect to the request held in the queue. If the data at the address exists in the cache memory, the cache memory is accessed, and if the data at the same address does not exist in the cache memory with respect to the request held in the queue, the request of the request is stored in the memory. Attempt to issue.

【0013】[0013]

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

【0014】図1を参照すると、本発明の第一の実施例
である入出力制御装置100は、処理装置210とメモ
リ220とを接続するシステムバス400と、ディスク
制御装置301及び302とプリンタ311とを接続す
る入出力バス500とを中継するものである。
Referring to FIG. 1, an input / output control device 100 according to a first embodiment of the present invention includes a system bus 400 for connecting a processing device 210 and a memory 220, disk control devices 301 and 302, and a printer 311. And an input / output bus 500 for connecting the same.

【0015】入出力制御装置100は、入出力バス50
0に接続する例えばディスク制御装置301からのリク
エストを保持するキュー120と、メモリ220の内容
の一部を保持するキャッシュメモリ110と、入出力バ
ス500側からのリクエストを受け付けるためのリクエ
スト受付制御回路130とを有している。
The input / output control device 100 includes an input / output bus 50
0, a queue 120 for holding a request from, for example, the disk controller 301, a cache memory 110 for holding a part of the contents of the memory 220, and a request reception control circuit for receiving a request from the input / output bus 500 side. 130.

【0016】キュー120は、入出力バス500側から
のリクエストを複数保持できる先入れ先出しバッファ
(一般にFIFO(First-In First-Out)ともよばれ
る)であり、このキュー120内に保持されている各リ
クエストのアドレスは信号線121により読み出すこと
ができる。
The queue 120 is a first-in first-out buffer (generally also called FIFO (First-In First-Out)) capable of holding a plurality of requests from the input / output bus 500, and stores a request for each request held in the queue 120. The address can be read by the signal line 121.

【0017】キャッシュメモリ110は、メモリ220
の内容の一部を保持し、入出力バス500に対するメモ
リ220のキャッシュメモリの役割を有する。すなわ
ち、入出力バス500からのリクエストに係るアドレス
がキャッシュメモリ110にヒットすればメモリ220
へのアクセスはせずにキャッシュメモリ110内のデー
タを入出力バス500側に供給し、ミスヒットした場合
にはシステムバス400を介してメモリ220にアクセ
スしてその値をキャッシュメモリ110に保持するとと
もにその値を入出力バス500に供給する。このキャッ
シュメモリに保持されている各データについてのメモリ
220上のアドレスは、信号線111から読み出すこと
ができる。
The cache memory 110 has a memory 220
And has a role of a cache memory of the memory 220 with respect to the input / output bus 500. That is, if an address related to a request from the input / output bus 500 hits the cache memory 110, the memory 220
The data in the cache memory 110 is supplied to the input / output bus 500 without accessing the memory, and in the case of a mishit, the memory 220 is accessed via the system bus 400 and the value is held in the cache memory 110. And supplies the value to the input / output bus 500. The address of each data held in the cache memory on the memory 220 can be read from the signal line 111.

【0018】リクエスト受付制御回路130は、信号線
501による入出力バス500側からのリクエストにつ
いて、どのように処理するかを判断する。図2を参照す
ると、リクエスト受付制御回路130は、信号線501
による入出力バス500側からのリクエストと同一のア
ドレスを有するデータがキャッシュメモリ110に保持
されているかを比較器131により判断する。また、こ
のリクエスト受付制御回路130は、信号線501によ
る入出力バス500側からのリクエストと同一のアドレ
スを有するリクエストがキュー120に保持されている
かを比較器132により判断する。そして、これらの結
果によって論理積回路133は、キャッシュメモリ11
0にアクセスすべきか(信号線138)、及びキュー1
20に登録すべきか(信号線139)を示す信号を発生
する。
The request reception control circuit 130 determines how to process a request from the input / output bus 500 via the signal line 501. Referring to FIG. 2, the request reception control circuit 130 includes a signal line 501.
The comparator 131 determines whether data having the same address as the request from the input / output bus 500 side is stored in the cache memory 110. Further, the request reception control circuit 130 uses the comparator 132 to determine whether a request having the same address as the request from the input / output bus 500 via the signal line 501 is held in the queue 120. Then, based on these results, the AND circuit 133 causes the cache memory 11
0 to be accessed (signal line 138) and queue 1
A signal indicating whether the signal should be registered in signal line 20 (signal line 139) is generated.

【0019】図3を参照すると、リクエスト受付制御回
路130における上記判断は、入出力バス500からの
リクエストに係るアドレスとキュー120内のリクエス
トに係るアドレスとが一致せず(ステップ601)、か
つ、入出力バス500からのリクエストに係るアドレス
とキャッシュメモリ110に保持されている各データに
係るアドレスとが一致(ステップ602)した場合に
は、キャッシュメモリ110にアクセスするように制御
し(ステップ603)、キュー120にはリクエストを
登録しない。一方、上記に該当しない(ステップ60
1,602)場合には、キャッシュメモリ110にアク
セスせずに、キュー120にリクエストを登録する(ス
テップ604)。
Referring to FIG. 3, the above-mentioned judgment in the request reception control circuit 130 indicates that the address related to the request from the input / output bus 500 does not match the address related to the request in the queue 120 (step 601), and When the address related to the request from the input / output bus 500 matches the address related to each data held in the cache memory 110 (step 602), control is performed to access the cache memory 110 (step 603). , No request is registered in the queue 120. On the other hand, the above does not apply (step 60)
1, 602), the request is registered in the queue 120 without accessing the cache memory 110 (step 604).

【0020】キュー120にリクエストが保持されてい
ると、入出力制御装置100はシステムバス400の使
用権の獲得を試みる。この使用権を獲得すると、システ
ムバス400に対してキュー120の先頭のリクエスト
が発行される。
When the request is held in the queue 120, the input / output control device 100 attempts to acquire the right to use the system bus 400. When the usage right is acquired, the request at the head of the queue 120 is issued to the system bus 400.

【0021】次に本発明の入出力制御装置の上記第一の
実施例の動作について図を参照して説明する。
Next, the operation of the input / output control device according to the first embodiment of the present invention will be described with reference to the drawings.

【0022】図1および図4を参照すると、最初の状態
として、キャッシュメモリ110とキュー120にはい
ずれも何も保持されていないとすると、時刻T1におい
て入出力バス500に発行されたリクエストAは、時刻
T2にキュー120の先頭に保持される。このリクエス
トAは時刻T3においてシステムバス400の使用権を
獲得して、時刻T5にシステムバス400側に発行され
る。
Referring to FIG. 1 and FIG. 4, assuming that neither cache memory 110 nor queue 120 holds any data in the initial state, request A issued to input / output bus 500 at time T1 is , At the time T2. The request A acquires the right to use the system bus 400 at time T3, and is issued to the system bus 400 at time T5.

【0023】時刻T3において入出力バス500に発行
されたリクエストBは、リクエストAとは異なるアドレ
スに対するものであるとすると、時刻T4にキュー12
0の2段目に保持され、時刻T6にシステムバス400
の使用権を獲得して、時刻T7にシステムバス400側
に発行される。
Assuming that the request B issued to the input / output bus 500 at the time T3 is for an address different from that of the request A, the queue 12
0, and held at the second stage of the system bus 400 at time T6.
Is issued to the system bus 400 at time T7.

【0024】また、時刻T4において入出力バス500
に発行されたリクエストCは、リクエストAとリクエス
トBのいずれとも異なるアドレスに対するものであると
すると、時刻T5にキュー120の2段目に保持され、
時刻T9にシステムバス400の使用権を獲得して、時
刻T10にシステムバス400側に発行される。
At time T4, the input / output bus 500
Is assumed to be for an address different from both the request A and the request B, the request C is held in the second stage of the queue 120 at time T5,
At time T9, the right to use the system bus 400 is acquired, and at time T10, it is issued to the system bus 400 side.

【0025】そして、時刻T7に入出力バス500に発
行されたリクエストDがリクエストAと同一のアドレス
に対するものであるとすると、リクエストAについての
リードデータがメモリ220から時刻7に戻ってくるた
め、リクエストDについてはキャッシュメモリ110に
ヒットし、当該データが時刻T8に得られる。また、リ
クエストBおよびリクエストCについてのリードデータ
は、それぞれ時刻T9およびT12にメモリ220から
到着する。ここで、リクエストDは、リクエストBやリ
クエストCを追い越しているが、これらは異なるアドレ
スについてのものなので、結果は論理的に保証される。
Assuming that request D issued to input / output bus 500 at time T7 is for the same address as request A, read data for request A returns from memory 220 at time 7; Request D hits cache memory 110, and the data is obtained at time T8. Read data for request B and request C arrive from memory 220 at times T9 and T12, respectively. Here, the request D overtakes the request B and the request C, but since these are for different addresses, the result is logically guaranteed.

【0026】上記例では、リクエストAとリクエストD
とが同一アドレスに関するもので、他のリクエストBお
よびリクエストCは他のリクエストとは異なるアドレス
に関するものであった場合を想定したが、他の例とし
て、さらにリクエストCがリクエストAおよびリクエス
トDと同一アドレスに関するものであった場合について
考える。すると、図4のタイミングでは、リクエストD
がリクエストCを追い越しており、例えばリクエストC
がメモリ220へのライトであったとすると論理的に矛
盾をきたすおそれがある。本発明においては、かかる場
合には以下に説明する図5のように動作するため矛盾は
発生しない。
In the above example, request A and request D
Are related to the same address, and the other requests B and C are assumed to be related to addresses different from the other requests. However, as another example, the request C is further identical to the requests A and D. Consider the case of an address. Then, at the timing of FIG.
Overtakes request C, for example, request C
Is a write to the memory 220, there is a possibility that logical inconsistency may occur. In the present invention, in such a case, since the operation is performed as shown in FIG. 5 described below, no contradiction occurs.

【0027】図1、図3および図5を参照すると、リク
エストDが時刻T7において入出力バス500に発行さ
れると、キュー120に同一アドレスに関するリクエス
トCが保持されていることから(ステップ601)、リ
クエストDはキュー120に登録される(ステップ60
4)。したがって、リクエストCとリクエストDはこの
順でメモリ220にアクセスされることになり、論理的
に矛盾を生じない。
Referring to FIGS. 1, 3 and 5, when request D is issued to input / output bus 500 at time T7, request C for the same address is held in queue 120 (step 601). , Request D is registered in the queue 120 (step 60).
4). Therefore, the request C and the request D are accessed to the memory 220 in this order, and there is no logical inconsistency.

【0028】このように、本発明の第一の実施例である
入出力制御装置によれば、リクエスト受付制御回路13
0を設けたことにより、キュー120とキャッシュメモ
リ110とを有する入出力制御装置100において、同
一アドレスに関するリクエスト間の追い越しを起こさせ
ず、リクエスト間に論理的矛盾を発生しないように制御
することができる。
As described above, according to the input / output control device according to the first embodiment of the present invention, the request acceptance control circuit 13
By providing 0, in the input / output control device 100 having the queue 120 and the cache memory 110, it is possible to perform control so as not to cause overtaking between requests related to the same address and to cause logical inconsistency between requests. it can.

【0029】次に本発明の入出力制御装置の第二の実施
例について図面を参照して詳細に説明する。
Next, a second embodiment of the input / output control device of the present invention will be described in detail with reference to the drawings.

【0030】図6を参照すると、本発明の第二の実施例
である入出力制御装置100は、図1の第一の実施例に
加えて、システムバス400側にリクエストを発行する
ためのリクエスト発行制御回路140をさらに有してい
る。このリクエスト発行制御回路140は、キュー12
0の先頭のリクエストに係るアドレスとキャッシュメモ
リ110の各データに関するアドレスとの一致を比較す
る。
Referring to FIG. 6, an input / output control device 100 according to a second embodiment of the present invention includes a request for issuing a request to the system bus 400 side in addition to the first embodiment of FIG. An issuance control circuit 140 is further provided. This request issuance control circuit 140
A comparison is made between the address relating to the request at the beginning of 0 and the address relating to each data in the cache memory 110.

【0031】図7を参照すると、リクエスト発行制御回
路140は、キュー120の先頭のリクエストに係るア
ドレスとキャッシュメモリ110の各データに関するア
ドレスとの一致を比較した結果(ステップ701)、一
致するものがなければ当該リクエストをメモリ220に
対して発行する(ステップ702)。また、このリクエ
ストがリードリクエストであればその戻りデータをキャ
ッシュメモリ110に登録しておく(ステップ70
3)。これにより、後続の同一アドレスについてのリク
エストに対してキャッシュメモリ110によるデータ供
給が可能となる。一方、上記比較の結果、キャッシュメ
モリ110に一致するものがあれば、キャッシュメモリ
110にアクセスし(ステップ704)、メモリ220
へのリクエスト発行をしない。
Referring to FIG. 7, the request issuance control circuit 140 compares the address of the first request in the queue 120 with the address of each data in the cache memory 110 (step 701). If not, the request is issued to the memory 220 (step 702). If the request is a read request, the return data is registered in the cache memory 110 (step 70).
3). As a result, data can be supplied by the cache memory 110 for the subsequent request for the same address. On the other hand, if the result of the comparison indicates that there is a match in the cache memory 110, the cache memory 110 is accessed (step 704), and the memory 220
Do not issue requests to.

【0032】次に本発明の入出力制御装置の上記第二の
実施例の動作について図を参照して説明する。ここで
は、上記第一の実施例について図4によって説明した例
に関して、第二の実施例により性能が改善されることを
示す。すなわち、リクエストA、リクエストCおよびリ
クエストDが同一アドレスに関するもので、リクエスト
Bのみが異なるアドレスに関するものである場合につい
て説明する。
Next, the operation of the input / output control device according to the second embodiment of the present invention will be described with reference to the drawings. Here, regarding the example described with reference to FIG. 4 for the first embodiment, it is shown that the performance is improved by the second embodiment. That is, a case where the request A, the request C, and the request D relate to the same address and only the request B relates to a different address will be described.

【0033】図3および図6から図8を参照すると、最
初の状態として、キャッシュメモリ110とキュー12
0にはいずれも何も保持されていないとすると、第一の
実施例と同様に、時刻T1において入出力バス500に
発行されたリクエストAは、時刻T2にキュー120の
先頭に保持される。このリクエストAは時刻T3におい
てシステムバス400の使用権を獲得して、時刻T5に
システムバス400側に発行される。
Referring to FIG. 3 and FIGS. 6 to 8, the cache memory 110 and the queue 12
Assuming that nothing is held at 0, the request A issued to the input / output bus 500 at time T1 is held at the head of the queue 120 at time T2, as in the first embodiment. The request A acquires the right to use the system bus 400 at time T3, and is issued to the system bus 400 at time T5.

【0034】また、時刻T3において入出力バス500
に発行されたリクエストBは、第一の実施例と同様に、
リクエストAとは異なるアドレスに対するものであると
すると、時刻T4にキュー120の2段目に保持され、
時刻T6にシステムバス400の使用権を獲得して、時
刻T7にシステムバス400側に発行される。
At time T3, the input / output bus 500
Is issued in the same manner as in the first embodiment,
Assuming that the request is for an address different from the request A, the request A is held in the second stage of the queue 120 at time T4,
At time T6, the right to use the system bus 400 is acquired, and the system bus 400 is issued to the system bus 400 at time T7.

【0035】また、時刻T4において入出力バス500
に発行されたリクエストCは、リクエストAと同一のア
ドレスに対するものであるが、キャッシュメモリ110
にまだ当該データが登録されていないことから、時刻T
5にキュー120の2段目に保持される。そして、時刻
7においてキュー120の先頭になったためにリクエス
ト発行制御回路140によるチェックを受けるが、同一
アドレスに関するリクエストAについてのデータがメモ
リ220からきたことにより、キャッシュメモリ110
にアクセスし(ステップ701,704)、時刻T8に
おいて当該データが得られる。
At time T4, the input / output bus 500
Is issued to the same address as the request A,
Since the data has not been registered yet, the time T
5 is held in the second stage of the queue 120. At time 7, the request is issued by the request issuance control circuit 140 because it has become the head of the queue 120. However, since the data for the request A related to the same address comes from the memory 220, the cache memory 110
(Steps 701 and 704), and the data is obtained at time T8.

【0036】続いて、リクエストDが時刻T7において
入出力バス500に発行されると、キュー120に同一
アドレスに関するリクエストCが保持されているため
(ステップ601)、リクエストDはキュー120に保
持される(ステップ604)。そして、時刻T8にキュ
ー120の先頭になり、同一アドレスに関するデータが
キャッシュメモリ110に保持されていることから(ス
テップ701)時刻T9にキャッシュメモリ110にア
クセスし(ステップ704)、時刻T10において当該
データが得られる。
Subsequently, when the request D is issued to the input / output bus 500 at the time T7, the request C is held in the queue 120 because the request C related to the same address is held in the queue 120 (step 601). (Step 604). Then, at the time T8, the data becomes the head of the queue 120, and since the data related to the same address is held in the cache memory 110 (step 701), the cache memory 110 is accessed at the time T9 (step 704). Is obtained.

【0037】第一の実施例による図5と第二の実施例に
よる図8との比較からわかるように、本発明の第二の実
施例である入出力制御装置によれば、リクエスト発行制
御回路140を設けたことにより、キュー120への登
録時にはキャッシュメモリ110にヒットしなかったリ
クエストであっても、メモリ発行直前に再度キャッシュ
メモリ110へのアクセスを試みて、無駄なメモリアク
セスを発行しないように制御することができる。
As can be seen from the comparison between FIG. 5 according to the first embodiment and FIG. 8 according to the second embodiment, according to the input / output control device according to the second embodiment of the present invention, the request issuance control circuit By providing 140, even if a request does not hit the cache memory 110 at the time of registration in the queue 120, access to the cache memory 110 is attempted again immediately before issuing the memory so that unnecessary memory access is not issued. Can be controlled.

【0038】なお、各実施例においては、説明を簡単に
するため、入出力バス500上のディスク制御装置30
1からメモリ220に対するリクエストの処理について
説明したが、本発明の対象はこれに限られないことはい
うまでもない。
In each of the embodiments, for simplicity of explanation, the disk controller 30 on the input / output bus 500
Although the processing of the request from 1 to the memory 220 has been described, it goes without saying that the subject of the present invention is not limited to this.

【0039】[0039]

【発明の効果】以上の説明で明らかなように、本発明に
よると、キューとキャッシュメモリとを有する入出力制
御装置において、同一アドレスに関するリクエスト間の
追い越しを起こさせず、リクエスト間に論理的矛盾を発
生しないように制御することができる。また、キューへ
の登録時にはキャッシュメモリにヒットしなかったリク
エストであっても、メモリ発行直前に再度キャッシュメ
モリへのアクセスを試みて、無駄なメモリアクセスを発
行しないように制御することができる。
As is apparent from the above description, according to the present invention, in the input / output control device having the queue and the cache memory, the requests related to the same address do not pass each other, and the logical inconsistency between the requests does not occur. Can be controlled so as not to occur. In addition, even if a request does not hit the cache memory at the time of registration in the queue, access to the cache memory can be attempted again immediately before the memory is issued, so that unnecessary memory access can be controlled.

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

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

【図2】本発明の一実施例の入出力制御装置におけるリ
クエスト受付制御回路の構成を示すブロック図である。
FIG. 2 is a block diagram showing a configuration of a request acceptance control circuit in the input / output control device according to one embodiment of the present invention.

【図3】本発明の一実施例の入出力制御装置におけるリ
クエスト受付処理の動作を表す図である。
FIG. 3 is a diagram illustrating an operation of a request receiving process in the input / output control device according to the embodiment of the present invention.

【図4】本発明の一実施例の入出力制御装置における動
作のタイミングを示す図である。
FIG. 4 is a diagram showing operation timings in the input / output control device according to one embodiment of the present invention.

【図5】本発明の一実施例の入出力制御装置における他
の動作タイミングを示す図である。
FIG. 5 is a diagram showing another operation timing in the input / output control device according to the embodiment of the present invention.

【図6】本発明の入出力制御装置の第二の実施例の構成
を示すブロック図である。
FIG. 6 is a block diagram showing a configuration of a second embodiment of the input / output control device of the present invention.

【図7】本発明の第二の実施例の入出力制御装置におけ
るリクエスト発行処理の動作を表す図である。
FIG. 7 is a diagram illustrating an operation of a request issuing process in the input / output control device according to the second embodiment of this invention.

【図8】本発明の第二の実施例の入出力制御装置におけ
る動作タイミングを示す図である。
FIG. 8 is a diagram showing operation timing in the input / output control device according to the second embodiment of the present invention.

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

100 入出力制御装置 110 キャッシュメモリ 120 キュー 130 リクエスト受付制御回路 140 リクエスト発行制御回路 210 処理装置 220 メモリ 301,302 ディスク制御装置 311 プリンタ 400 システムバス 500 入出力バス REFERENCE SIGNS LIST 100 input / output control device 110 cache memory 120 queue 130 request reception control circuit 140 request issuance control circuit 210 processing device 220 memory 301, 302 disk control device 311 printer 400 system bus 500 input / output bus

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 - 12/12 G06F 13/28 G06F 13/36 G06F 13/38 ──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 7 , DB name) G06F 12/08-12/12 G06F 13/28 G06F 13/36 G06F 13/38

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 メモリを接続する第1のバスと前記メモ
リへのリクエストを発生するリクエスト発生手段を接続
する第2のバスとの間に接続され、前記リクエスト発生
手段からのリクエストを前記メモリへ発行するまで順番
に保持する先入れ先出し記憶手段と、前記メモリの一部
の内容を保持するキャッシュメモリと 前記リクエスト発生手段からのリクエストについて、前
記キャッシュメモリからアクセスするか、前記先入れ先
出し記憶手段に保持するかを制御するリクエスト受付制
御回路とを含み、 前記先入れ先出し記憶手段は、当該先入れ先出し記憶手
段に保持された順に各リクエストを前記メモリに対して
発行を試み 前記リクエスト受付制御回路は、 前記リクエスト発生手段からのリクエストに関して同一
アドレスをアクセス先とするリクエストが前記先入れ先
出し記憶手段に存在せず、かつ、前記リクエスト発生手
段からのリクエストに関して同一アドレスのデータが前
記キャッシュメモリに存在する場合には、前記キャッシ
ュメモリにアクセスし、 前記リクエスト発生手段からのリクエストに関して同一
アドレスをアクセス先とするリクエストが前記先入れ先
出し記憶手段に存在し、または、前記リクエスト発生手
段からのリクエストに関して同一アドレスのデータが前
記キャッシュメモリに存在しない場合には、前記先入れ
先出し記憶手段に当該リクエストを保持することを特徴
とする入出力制御装置。
A first bus that connects a memory and a second bus that connects a request generation unit that generates a request to the memory, and that transfers a request from the request generation unit to the memory; A first-in first-out storage unit that holds the contents in sequence until issued, a cache memory that holds a part of the memory, and a request from the request generation unit that is accessed from the cache memory or stored in the first-in first-out storage unit. and a request reception control circuit for controlling whether said first-in first-out memory means, attempts to issue a respective request to the memory in the order in which they are held in the first-in first-out memory means, the request reception control circuit, said request generating means The same address as the access destination for the request from If the request does not exist in the first-in first-out storage means and the data at the same address exists in the cache memory with respect to the request from the request generation means, the cache memory is accessed, and If a request having the same address as an access destination for the request exists in the first-in-first-out storage unit, or if data of the same address does not exist in the cache memory for the request from the request generation unit, the request is stored in the first-in-first-out storage unit. An input / output control device for holding a request.
【請求項2】 メモリを接続する第1のバスと前記メモ
リへのリクエストを発生するリクエスト発生手段を接続
する第2のバスとの間に接続され、前記リクエスト発生
手段からのリクエストを前記メモリへ発行するまで順番
に保持する先入れ先出し記憶手段と、前記メモリの一部
の内容を保持するキャッシュメモリとを含む入出力制御
装置において、 前記リクエスト発生手段からのリクエストについて、前
記キャッシュメモリからアクセスするか、前記先入れ先
出し記憶手段に保持するかを制御するリクエスト受付制
御回路と、 前記先入れ先出し記憶手段に保持されたリクエストにつ
いて前記メモリに発行する前に前記キャッシュメモリに
アクセスするか否かを制御するリクエスト発行制御回路
とを含むことを特徴とする入出力制御装置。
A second bus connecting a first bus connecting a memory and a second bus connecting a request generating unit for generating a request to the memory, and transmitting a request from the request generating unit to the memory; In an input / output control device including a first-in first-out storage unit that holds the contents in order until issued, and a cache memory that holds a part of the memory, a request from the request generation unit is accessed from the cache memory, A request reception control circuit for controlling whether to hold the request in the first-in first-out storage means; and a request-issuance control circuit for controlling whether to access the cache memory before issuing the request held in the first-in, first-out storage means to the memory. An input / output control device comprising:
【請求項3】 前記リクエスト受付制御回路は、 前記リクエスト発生手段からのリクエストに関して同一
アドレスをアクセス先とするリクエストが前記先入れ先
出し記憶手段に存在せず、かつ、前記リクエスト発生手
段からのリクエストに関して同一アドレスのデータが前
記キャッシュメモリに存在する場合には、前記キャッシ
ュメモリにアクセスし、 前記リクエスト発生手段からのリクエストに関して同一
アドレスをアクセス先とするリクエストが前記先入れ先
出し記憶手段に存在し、または、前記リクエスト発生手
段からのリクエストに関して同一アドレスのデータが前
記キャッシュメモリに存在しない場合には、前記先入れ
先出し記憶手段に当該リクエストを保持し、 前記リクエスト発行制御回路は、 前記先入れ先出し記憶手段に保持されたリクエストに関
して同一アドレスのデータが前記キャッシュメモリに存
在する場合には、前記キャッシュメモリにアクセスし、 前記先入れ先出し記憶手段に保持されたリクエストに関
して同一アドレスのデータが前記キャッシュメモリに存
在しない場合には、前記メモリに当該リクエストの発行
を試みることを特徴とする請求項2記載の入出力制御装
置。
3. The request reception control circuit according to claim 1, wherein the request having the same address as the access destination with respect to the request from the request generation unit does not exist in the first-in first-out storage unit, and the same address with respect to the request from the request generation unit. Is present in the cache memory, the cache memory is accessed, and a request having the same address as a request from the request generation means is present in the first-in first-out storage means; When data at the same address does not exist in the cache memory for a request from the means, the request is stored in the first-in first-out storage means, and the request issuance control circuit stores the request in the first-in first-out storage means. If data at the same address exists in the cache memory for the requested request, access is made to the cache memory.If data at the same address does not exist in the cache memory for the request held in the first-in first-out storage means, 3. The input / output control device according to claim 2, wherein an attempt is made to issue the request to the memory.
JP7052381A 1995-03-13 1995-03-13 I / O controller Expired - Fee Related JP3011044B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7052381A JP3011044B2 (en) 1995-03-13 1995-03-13 I / O controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7052381A JP3011044B2 (en) 1995-03-13 1995-03-13 I / O controller

Publications (2)

Publication Number Publication Date
JPH08249229A JPH08249229A (en) 1996-09-27
JP3011044B2 true JP3011044B2 (en) 2000-02-21

Family

ID=12913233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7052381A Expired - Fee Related JP3011044B2 (en) 1995-03-13 1995-03-13 I / O controller

Country Status (1)

Country Link
JP (1) JP3011044B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5571327B2 (en) * 2009-06-18 2014-08-13 エヌイーシーコンピュータテクノ株式会社 Latency reduction system, latency reduction method, and latency reduction program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0377970B1 (en) * 1989-01-13 1995-08-16 International Business Machines Corporation I/O caching
JP3163132B2 (en) * 1991-11-19 2001-05-08 富士通株式会社 Cache memory controller
JP3505728B2 (en) * 1993-01-13 2004-03-15 株式会社日立製作所 Storage controller

Also Published As

Publication number Publication date
JPH08249229A (en) 1996-09-27

Similar Documents

Publication Publication Date Title
US5790813A (en) Pre-arbitration system allowing look-around and bypass for significant operations
US5901295A (en) Address and data bus arbiter for pipelined transactions on a split bus
US10628355B2 (en) Apparatus and method for processing burst read transactions
JP2002530742A (en) Method and apparatus for prioritizing access to external devices
US20050138230A1 (en) Method, apparatus and program product for low latency I/O adapter queuing in a computer system
US5388246A (en) Arrangement and method of controlling memory access requests in digital data processing system
CA2007737C (en) Data transfer operations between two asynchronous buses
EP0814408B1 (en) Bus bridge apparatus
JP3027843B2 (en) Bath snoop method
JP3444154B2 (en) Memory access control circuit
JP2591502B2 (en) Information processing system and its bus arbitration system
US5913231A (en) Method and system for high speed memory address forwarding mechanism
JP3011044B2 (en) I / O controller
US7296109B1 (en) Buffer bypass circuit for reducing latency in information transfers to a bus
US7552252B2 (en) Memory interface circuit and method
JP4928683B2 (en) Data processing device
US5708783A (en) Data bus arbiter for pipelined transactions on a split bus
US6560675B1 (en) Method for controlling concurrent cache replace and return across an asynchronous interface
JPH0581178A (en) Pipeline bus
US6976141B2 (en) Pipelined multi-access memory apparatus and method
US5815676A (en) Address bus arbiter for pipelined transactions on a split bus
JP2002024007A (en) Processor system
JP3240863B2 (en) Arbitration circuit
JPH08339353A (en) Multiprocessor device
JPH07334453A (en) Memory access system

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: 19991109

LAPS Cancellation because of no payment of annual fees