JPH05250258A - Cache control system - Google Patents

Cache control system

Info

Publication number
JPH05250258A
JPH05250258A JP4047128A JP4712892A JPH05250258A JP H05250258 A JPH05250258 A JP H05250258A JP 4047128 A JP4047128 A JP 4047128A JP 4712892 A JP4712892 A JP 4712892A JP H05250258 A JPH05250258 A JP H05250258A
Authority
JP
Japan
Prior art keywords
data
storage device
block
write
cache memory
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
JP4047128A
Other languages
Japanese (ja)
Inventor
Hiroshi Kakita
宏 柿田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP4047128A priority Critical patent/JPH05250258A/en
Publication of JPH05250258A publication Critical patent/JPH05250258A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To improve the memory throughput of the whole of a device by increasing the processing speed and reducing the busy rate of a memory even in the case of continuation of write to continuous addresses due to a data transfer instruction, the load operation from an external storage device to an internal storage device, or the like. CONSTITUTION:The information processor where an intermediate storage device has a cache memory is provided with a one-block buffer 38 in the intermediate storage device for the purpose of providing for transfer of the large quantity of data, and data is collectively written in a cache memory 31 with one block as the unit. Since data of the block of the cache is unnecessary because it is completely updated with write data at the time of this collective write, the operation to transfer and register pertinent block data from a main storage 7 is omitted even if this data is not registered in the cache memory. This operation is executed when a signal indicating that the address traverses the block is given from a memory access request device.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、キャッシュ制御方式に
係り、特に、主記憶装置及びキャッシュメモリのビジー
率の低減を図ることができる高速に動作可能なキャッシ
ュ制御方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cache control system, and more particularly to a cache control system capable of operating at high speed to reduce the busy rate of a main memory device and a cache memory.

【0002】[0002]

【従来の技術】一般に、情報処理装置は、メモリアクセ
スの動作速度を高めるために、命令処理装置と主記憶装
置との間に、バッファメモリとして、高速動作可能なキ
ャッシュメモリが設けられて構成されている。
2. Description of the Related Art Generally, in order to increase the operation speed of memory access, an information processing apparatus is provided with a cache memory which can operate at high speed as a buffer memory between an instruction processing apparatus and a main memory. ing.

【0003】キャッシュメモリは、メモリアクセス要求
発生装置からのアクセスに応じて、そのアクセス要求の
アドレスがキャッシュメモリ内に存在する(キャッシュ
にヒットした)場合、そのままキャッシュメモリ内にデ
ータを書き込み、あるいは、キャッシュメモリ内からデ
ータを読み出している。また、アクセス要求アドレスが
キャッシュメモリ内に存在しない場合、主記憶装置から
該当するデータを含む1ブロック分のデータを転送し、
キャッシュメモリに登録した後、書き込み読み出しを実
行する動作が行われる。
When an address of the access request exists in the cache memory (hits the cache) in response to an access from the memory access request generation device, the cache memory writes data in the cache memory as it is, or Data is being read from the cache memory. If the access request address does not exist in the cache memory, one block of data including the corresponding data is transferred from the main memory,
After registering in the cache memory, the operation of executing writing and reading is performed.

【0004】そして、1つのメモリアクセス要求発生装
置から、アドレスの連続した多数の書き込み動作が継続
し、かつ、そのアドレスがキャッシュメモリ内に存在し
ない場合、アクセス要求のアドレスが、キャッシュメモ
リのブロック境界を渡るたびに、主記憶装置からのデー
タ転送、及び、転送されたデータのキャッシュメモリへ
の登録動作が行われ、その後、キャッシュメモリに対し
て小きざみな多数回の書き込み動作が実行される。
When a large number of address write operations continue from one memory access request generator and the address does not exist in the cache memory, the address of the access request is the block boundary of the cache memory. Each time the data is crossed, the data transfer from the main memory device and the operation of registering the transferred data in the cache memory are performed, and thereafter, the write operation is executed a small number of times in the cache memory.

【0005】このため、前述の動作を実行する場合、メ
モリアクセス要求発生装置からの一連の書き込み動作
は、主記憶装置からのデータ転送とキャッシュメモリへ
の登録動作のために多大の時間が占有された状態で行わ
れることになり、結果的に書き込み動作の速度を低下さ
せている。また、多数回の小きざみな書き込みは、キャ
ッシュメモリのビジー率の上昇を招き、他の装置による
メモリアクセスを伴う処理の速度に大きな影響を与えて
いる。
Therefore, when the above-mentioned operation is executed, a series of write operations from the memory access request generation device occupy a large amount of time due to the data transfer from the main storage device and the registration operation to the cache memory. The write operation is slowed down as a result. In addition, the small number of small writes leads to an increase in the busy rate of the cache memory, and has a great influence on the speed of processing involving memory access by other devices.

【0006】なお、この種のキャッシュメモリの制御に
関する従来技術として、例えば、特開昭58−5069
5号公報等に記載された技術が知られている。
As a conventional technique for controlling this kind of cache memory, for example, Japanese Patent Laid-Open No. 58-5069.
Techniques described in Japanese Patent No. 5 and the like are known.

【0007】[0007]

【発明が解決しようとする課題】前述した従来技術は、
キャッシュメモリを備えた中間記憶装置を有する情報処
理装置において、1つのメモリアクセス要求発生装置か
ら、アドレスの連続した多数の書き込み動作が継続して
発行された場合、小きざみな書き込み動作による頻繁な
キャッシュメモリへのアクセスが行われ、また、多くの
頻度で主記憶装置へのアクセスとキャッシュメモリへの
登録動作とが行われるため、書き込み動作の速度の低下
を生じさせ、主記憶装置とキャッシュメモリとのビジー
率を上昇させ、結果として他のメモリアクセス要求発生
装置の処理速度を低下させてしまうという問題点を有し
ている。
DISCLOSURE OF THE INVENTION Problems to be Solved by the Invention
In an information processing device having an intermediate storage device having a cache memory, when a single memory access request generation device continuously issues a large number of write operations with consecutive addresses, frequent cache operations by small write operations are performed. Since the memory is accessed, and the access to the main storage device and the registration operation to the cache memory are performed at a high frequency, the speed of the write operation is reduced, and the main storage device and the cache memory are However, there is a problem that the busy rate of the memory access request generating device is increased, and as a result, the processing speed of another memory access request generation device is decreased.

【0008】本発明の目的は、前記従来技術の問題点を
解決し、データ転送命令、外部記憶装置から内部の記憶
装置へのロード動作等のアドレスの連続した書き込みが
継続する場合にも、処理の高速化とメモリのビジー率の
低減とを図り、装置全体のメモリスループットの向上さ
せることのできるキャッシュ制御方式を提供することに
ある。
An object of the present invention is to solve the above-mentioned problems of the prior art, and to process even when continuous writing of addresses such as a data transfer instruction and a load operation from an external storage device to an internal storage device is continued. It is an object of the present invention to provide a cache control system capable of improving the memory throughput of the device and improving the memory throughput of the device and reducing the busy rate of the memory.

【0009】[0009]

【課題を解決するための手段】本発明によれば前記目的
は、キャッシュメモリを備えた中間記憶装置を有する情
報処理装置において、1つのメモリアクセス要求発生装
置から、アドレスの連続する多数の書き込み動作が継続
して行われた場合に、小きざみな書き込みを行うことな
く、キャッシュメモリの1ブロック分の書き込みを一括
して行い、かつ、書き込みアドレスがキャッシュメモリ
に登録されていない場合に、主記憶装置内の該当データ
へのアクセスとキャッシュメモリへの登録動作とを省略
して、直接キャッシュメモリに書き込み動作を行うよう
にすることにより達成される。
According to the present invention, the above object is to provide an information processing apparatus having an intermediate storage device having a cache memory, from a single memory access request generation device to a large number of write operations with consecutive addresses. If the write is continuously performed, one block of the cache memory is written all at once without writing in small increments, and if the write address is not registered in the cache memory, the main memory This is achieved by omitting the access to the corresponding data in the device and the registration operation in the cache memory, and directly performing the write operation in the cache memory.

【0010】すなわち、本発明によれば前記目的は、キ
ャッシュメモリを備えた中間記憶装置を有する情報処理
装置において、1つのメモリアクセス要求発生装置か
ら、アドレスの連続した多数の書き込み動作が継続して
行われた場合のために、以下に示す手段を備えることに
より達成される。
That is, according to the present invention, the above object is to provide an information processing apparatus having an intermediate storage device having a cache memory, in which a large number of write operations with consecutive addresses are continuously performed from one memory access request generation device. This is achieved by providing the following means for the case where it is performed.

【0011】メモリアクセス要求発生装置内に、現在の
書き込みアドレスと転送残量とを示す、書き込み動作の
進行により随時更新される2つのレジスタを設け、書き
込みアドレスレジスタの示す値が、中間記憶装置内のキ
ャッシュメモリのブロック境界をを渡るたび度毎に、転
送残量を示すレジスタの値を調べ、この値が、中間記憶
装置内のキャッシュメモリのブロック長よりも大きいと
き、現在行っている書き込み動作が、今後キャッシュメ
モリの1ブロックを超えて継続すると判断し、この時点
の、中間記憶装置へのブロック内先頭書き込み要求信号
に、この状況の検出を示す信号を加える手段を備える。
In the memory access request generation device, two registers which indicate the current write address and the transfer remaining amount and which are updated as the write operation progresses are provided, and the value indicated by the write address register is stored in the intermediate storage device. Each time the block boundary of the cache memory is crossed, the value of the register indicating the transfer remaining amount is checked, and when this value is larger than the block length of the cache memory in the intermediate storage device, the current write operation is being performed. However, it is determined that it will continue beyond one block of the cache memory in the future, and a signal indicating the detection of this situation is added to the in-block head write request signal to the intermediate storage device at this time.

【0012】また、中間記憶装置内に、1ブロック分の
データバッファと、メモリアクセス要求発生装置から、
書き込み要求信号と同時に前記検出信号を合わせて受け
取った場合に、データを直接キャッシュメモリに書き込
まず、前記のバッファにデータを一旦蓄えた後、一括し
てデータの書き込みを行う制御手段とを備える。
Further, in the intermediate storage device, from the data buffer for one block and the memory access request generation device,
When the detection signal is received together with the write request signal, the data is not directly written to the cache memory, but the data is temporarily stored in the buffer and then the data is collectively written.

【0013】また、中間記憶装置内に、前述した一括書
き込みを行う際、たとえその書き込みアドレスがキャッ
シュメモリに存在しなくても、該ブロックデータは、メ
モリアクセス要求発生装置からの書き込みにより、他の
データに更新し尽くされてしまうため、主記憶装置から
そのデータを転送することなく、直接キャッシュメモリ
の空きエリア、あるいは、既登録データを追い出した後
のエリアに書き込むようにする制御手段を備える。
Further, when the above-mentioned batch write is performed in the intermediate storage device, even if the write address does not exist in the cache memory, the block data is written by the memory access request generation device to other data. Since the data is completely updated, a control means is provided for writing the data directly to an empty area of the cache memory or an area after the registered data is expelled without transferring the data from the main storage device.

【0014】[0014]

【作用】前述したように、本発明によれば、メモリアク
セス要求発生装置には、一連の書き込み動作がキャッシ
ュメモリのブロック長を超えて行われることを検出する
手段が、中間記憶装置には、この検出結果により、書き
込みデータを一旦蓄えるデータバッファと、蓄えたデー
タを一括してキャッシュメモリに書き込みを行う制御手
段と、主記憶装置へのアクセスを抑止して、キャッシュ
メモリへの書き込み動作を行う制御手段とが設けられる
ことになる。
As described above, according to the present invention, the memory access request generation device is provided with means for detecting that a series of write operations exceeds the block length of the cache memory, and the intermediate storage device is provided with: Based on this detection result, a data buffer that temporarily stores write data, a control unit that collectively writes the stored data to the cache memory, and an access to the main storage device are suppressed, and a write operation to the cache memory is performed. Control means will be provided.

【0015】本発明は、前述した各手段の働きにより、
命令処理装置によるデータ転送命令の実行、外部記憶装
置等からの転送動作(ロード)において、小きざみな書
き込み動作と、主記憶装置へのアクセスとを省略するこ
とができるため、前述した書き込み処理の速度を向上さ
せることができ、かつ、処理の実行時に他の処理装置に
与える処理速度上の影響を低減させることができる。
The present invention, by the function of each means described above,
In the execution of the data transfer instruction by the instruction processing device and the transfer operation (load) from the external storage device or the like, the small write operation and the access to the main storage device can be omitted. The speed can be improved, and the influence on the processing speed on other processing devices at the time of executing the processing can be reduced.

【0016】[0016]

【実施例】以下、本発明によるキャッシュ制御方式の一
実施例を図面により詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a cache control system according to the present invention will be described in detail below with reference to the drawings.

【0017】図1は本発明の一実施例による情報処理装
置の全体の構成を示すブロック図、図2はメモリアクセ
ス要求発生装置の構成を示すブロック図、図3は中間記
憶装置の構成を示すブロック図である。図1〜図3にお
いて、1は第1の命令プロセッサ(IP0)、2は第2
の命令プロセッサ(IP1)、3は入出力プロセッサ
(IOP)、4は拡張記憶装置(ES)、5はキャッシ
ュメモリ装置、6は中間記憶装置、7は主記憶装置、1
0は転送アドレス表示レジスタ、11は転送残量表示レ
ジスタ、12は拡張記憶メモリ、13は転送制御回路、
14はアドレスのブロック渡りを検出する検出回路、1
5は加算器、16は減算器、30はリクエストプライオ
リティ回路、31はキャッシュメモリ、32はアドレス
アレイ(A.A)、33はヒット判定回路、34はデー
タセレクタ回路、35はフルブロックストア信号の検出
回路、36はアドレスレジスタ、37はアドレス選択回
路、38はデータバッファである。
FIG. 1 is a block diagram showing the overall construction of an information processing apparatus according to an embodiment of the present invention, FIG. 2 is a block diagram showing the construction of a memory access request generation device, and FIG. 3 is a construction of an intermediate storage device. It is a block diagram. 1 to 3, 1 is a first instruction processor (IP0), 2 is a second
Instruction processor (IP1), 3 is an input / output processor (IOP), 4 is an extended storage device (ES), 5 is a cache memory device, 6 is an intermediate storage device, 7 is a main storage device, 1
0 is a transfer address display register, 11 is a transfer remaining amount display register, 12 is an extended storage memory, 13 is a transfer control circuit,
Reference numeral 14 is a detection circuit for detecting a block crossing of an address,
5 is an adder, 16 is a subtractor, 30 is a request priority circuit, 31 is a cache memory, 32 is an address array (AA), 33 is a hit determination circuit, 34 is a data selector circuit, and 35 is a full block store signal. A detection circuit, 36 is an address register, 37 is an address selection circuit, and 38 is a data buffer.

【0018】図1に示す本発明が適用される情報処理装
置は、主記憶装置7と、1つのキャッシュメモリ装置5
を有する中間記憶装置6と、4つのメモリアクセス要求
発生装置である第1、第2の命令プロセッサ1、2と、
入出力プロセッサ3と、拡張記憶装置4とを備えて構成
されている。
The information processing apparatus to which the present invention shown in FIG. 1 is applied is a main storage device 7 and one cache memory device 5.
An intermediate storage device 6 having four memory access request generation devices, and first and second instruction processors 1 and 2 which are four memory access request generation devices,
The I / O processor 3 and the extended storage device 4 are provided.

【0019】メモリアクセス要求発生装置内に設けられ
る、中間記憶装置6への書き込み動作が、キャッシュメ
モリの1ブロック分を包含することを検出するための検
出回路の詳細が図2に示されている。なお、この例は、
拡張記憶装置4の例であり、拡張記憶メモリ12から内
部記憶に対してデータを転送するページイン動作を例と
したものである。
FIG. 2 shows the details of the detection circuit provided in the memory access request generation device for detecting that the write operation to the intermediate storage device 6 includes one block of the cache memory. .. Note that this example
This is an example of the extended storage device 4, and is an example of a page-in operation for transferring data from the extended storage memory 12 to internal storage.

【0020】図2に示す回路は、転送アドレス表示レジ
スタ10と、転送残量表示レジスタ11と、拡張記憶メ
モリ12と、拡張記憶メモリからのデータ転送を制御す
る転送制御回路13と、転送アドレス表示レジスタ10
及び転送残量表示レジスタ11から、転送データのアド
レスが中間記憶装置のキャッシュメモリの1ブロックを
包含していることを検出するアドレスのブロック渡りを
検出する検出回路14と、1つの書き込み動作が行われ
るたび毎に、転送アドレス表示レジスタ10の値を増加
させる加算器15と、転送残量表示レジスタ11の値を
減少させる減算器16とを備えて構成されている。
The circuit shown in FIG. 2 includes a transfer address display register 10, a transfer remaining amount display register 11, an extended storage memory 12, a transfer control circuit 13 for controlling data transfer from the extended storage memory, and a transfer address display. Register 10
Further, from the transfer remaining amount display register 11, a detection circuit 14 that detects a block crossing of an address that detects that the address of the transfer data includes one block of the cache memory of the intermediate storage device, and one write operation is performed. Each time it is read, an adder 15 that increases the value of the transfer address display register 10 and a subtracter 16 that decreases the value of the transfer remaining amount display register 11 are provided.

【0021】図2に示される拡張記憶装置4から中間記
憶装置5へのデータの転送を行う場合、まず、命令プロ
セッサ1または2から、図示していないインターフェイ
ス信号により、転送開始アドレスが転送アドレス表示レ
ジスタ10に、転送要求量が転送残量表示レジスタ11
にそれぞれセットされる。転送制御回路13は、転送残
量表示レジスタ11に値がセットされたことを認識する
と、拡張記憶メモリ12に対し転送アドレス信号20
に、転送アドレス表示レジスタ10の示すアドレスを出
力するとともに、転送要求信号21を出力する。
When data is transferred from the extended storage device 4 shown in FIG. 2 to the intermediate storage device 5, first, the transfer start address is displayed by the interface signal (not shown) from the instruction processor 1 or 2. The transfer request amount is displayed in the register 10 by the transfer remaining amount display register 11
Are set respectively. When the transfer control circuit 13 recognizes that the value is set in the transfer remaining amount display register 11, the transfer address signal 20 is sent to the extended storage memory 12.
In addition to outputting the address indicated by the transfer address display register 10, the transfer request signal 21 is output.

【0022】これにより拡張記憶メモリ12は、転送ア
ドレスの示すデータを読み出し、中間記憶装置6への書
き込みデータ線22へデータを出力する。また、これと
同時に、転送制御回路13は、転送アドレス表示レジス
タ10が示すアドレスに対応する内部記憶装置6への書
き込みアドレスを書き込みアドレス線23に出力した
後、書き込み要求信号線24に書き込み要求信号を出力
する。
As a result, the extended storage memory 12 reads the data indicated by the transfer address and outputs the data to the write data line 22 to the intermediate storage device 6. At the same time, the transfer control circuit 13 outputs the write address to the internal storage device 6 corresponding to the address indicated by the transfer address display register 10 to the write address line 23, and then to the write request signal line 24. Is output.

【0023】転送制御回路13は、この一連の動作を行
った後、転送終了信号25を出力する。これにより、転
送アドレス表示レジスタ10と転送残量表示レジスタ1
1とは、その値がそれぞれ加算器15と減算器16とに
より、1回に転送したバイト数だけ加算あるいは減算さ
れる。
After performing this series of operations, the transfer control circuit 13 outputs a transfer end signal 25. As a result, the transfer address display register 10 and the transfer remaining amount display register 1
The value 1 is added or subtracted by the number of bytes transferred at one time by the adder 15 and the subtracter 16, respectively.

【0024】前述した動作は、転送残量表示レジスタ1
1の値が“0”となるまで繰り返して実行される。
The above-described operation is performed by the transfer remaining amount display register 1
It is repeatedly executed until the value of 1 becomes "0".

【0025】前述したような一連の動作が繰り返し実行
されている間、検出回路14は、レジスタ10、11か
ら転送アドレスと転送残量とを取り込み、転送アドレス
の値が加算されたとき、そのアドレスが中間記憶装置6
内のキャッシュメモリ5のブロックを渡っているか否か
をチェックする。この場合、検出回路14に取り込まれ
る転送アドレスは、拡張記憶装置4内のアドレスである
が、通常、拡張記憶装置4内のアドレスから内部記憶装
置6へのアドレスへの変換の単位は、キャッシュメモリ
のブロック長より大きいためなんら問題はない。
While the series of operations as described above are repeatedly executed, the detection circuit 14 fetches the transfer address and the transfer remaining amount from the registers 10 and 11, and when the value of the transfer address is added, the address is added. Is an intermediate storage device 6
It is checked whether or not the block of the cache memory 5 inside is crossed. In this case, the transfer address fetched by the detection circuit 14 is an address in the extended storage device 4, but normally the unit of conversion from the address in the extended storage device 4 to the address in the internal storage device 6 is the cache memory. Since it is larger than the block length of, there is no problem.

【0026】検出回路14は、前述したチェックの結
果、転送アドレスがキャッシュメモリ装置5のブロック
を渡ったと判断すると、続いて、レジスタ11内の転送
残量の値をチェックする。この結果、転送残量の値がキ
ャッシュメモリのブロック長より大きい場合、検出回路
14は、今後のアドレスの連続した書き込みがキャッシ
ュメモリの1ブロックを超えて継続することを示す1ビ
ットの信号(フルブロックストア信号)を、キャッシュ
メモリ装置5へのブロック先頭書き込みの直後の書き込
み要求送出時の書き込み要求信号24に付加して送出す
る。
When the detection circuit 14 determines that the transfer address has passed the block of the cache memory device 5 as a result of the above-mentioned check, it subsequently checks the value of the transfer remaining amount in the register 11. As a result, when the value of the transfer remaining amount is larger than the block length of the cache memory, the detection circuit 14 uses a 1-bit signal (full signal) indicating that continuous writing of future addresses will continue beyond one block of the cache memory. The block store signal) is added to the write request signal 24 at the time of sending the write request immediately after the block head write to the cache memory device 5 and sent.

【0027】前述したような書き込み要求を受ける中間
記憶装置6は、図3に示すように、各メモリアクセス要
求発生装置からのアクセス要求を選択するリクエストプ
ライオリティ回路30と、キャッシュメモリ31と、キ
ャッシュメモリ31に登録されているアドレスを記憶す
るアドレスアレイ(A.A)32と、アクセス要求のア
ドレスがキャッシュにヒットしたか否かを判定するヒッ
ト判定回路33と、キャッシュメモリと各メモリアクセ
ス要求発生装置とのデータ線を随時切り替え接続するデ
ータセレクタ回路34と、各メモリアクセス要求発生装
置から送出されてくるフルブロックストア信号を検出す
る検出回路35と、フルブロックストア信号を検出した
ときのアドレスを記憶するアドレスレジスタ36と、リ
クエストプライオリティ回路30からのアドレスとヒッ
ト判定回路33からのキャッシュにヒットしなかったア
ドレスとを選択し、かつ、アドレスの上位、下位を分離
してアドレスアレイ32に送出するアドレス選択回路3
7と、1ブロック分のデータを一時的に蓄えるデータバ
ッファ38とを備えて構成されている。
As shown in FIG. 3, the intermediate storage device 6 that receives the above-mentioned write request has a request priority circuit 30 for selecting an access request from each memory access request generation device, a cache memory 31, and a cache memory. An address array (AA) 32 for storing the addresses registered in 31; a hit determination circuit 33 for determining whether or not the access request address hits the cache; a cache memory and each memory access request generation device. A data selector circuit 34 for switching and connecting the data lines with each other, a detection circuit 35 for detecting a full block store signal sent from each memory access request generation device, and an address when the full block store signal is detected are stored. Address register 36 and request priority Select an address that did not hit the cache from the address and hit judgment circuit 33 from the tee circuit 30, and the address selection circuit 3 to be sent to the address array 32 separates the upper address and the lower
7 and a data buffer 38 for temporarily storing data for one block.

【0028】図3に示す中間記憶装置6において、各メ
モリアクセス要求発生装置からのアクセス要求を受け取
ると、リクエストプライオリティ回路30は、これらの
うち1つを選択し、選択したアドレスをアドレス選択回
路37を通してアドレスアレイ32に送出する。
In the intermediate storage device 6 shown in FIG. 3, upon receiving an access request from each memory access request generation device, the request priority circuit 30 selects one of these and selects the selected address from the address selection circuit 37. Through the address array 32.

【0029】アドレスアレイ32は、キャッシュメモリ
31に登録されているアドレスを下位アドレスに対応す
る形式で記憶しており、下位アドレスを入力すると、登
録されているすべての上位アドレスを出力して、ヒット
判定回路33に送る。ヒット判定回路33は、リクエス
トプライオリティ回路30から直接送られてきたアドレ
スと、アドレスアレイ32からの上位アドレスとを比較
し、一致するものがあったとき、キャッシュにヒットし
たと判定する。
The address array 32 stores the addresses registered in the cache memory 31 in a format corresponding to the lower addresses. When the lower address is input, all the registered upper addresses are output and hit. It is sent to the judgment circuit 33. The hit determination circuit 33 compares the address directly sent from the request priority circuit 30 with the upper address from the address array 32, and when there is a match, determines that the cache is hit.

【0030】キャッシュにヒットしたことが判定された
場合、データセレクタ回路34は、直ちに、リクエスト
プライオリティ回路30により選択されたメモリアクセ
ス要求発生装置と接続され、キャッシュメモリ31に対
応するデータが書き込まれ、あるいは、キャッシュメモ
リ31からの読み出しが行われ、データセレクタ回路3
4を介して、各メモリアクセス要求発生装置にデータが
送出される。
When it is determined that the cache is hit, the data selector circuit 34 is immediately connected to the memory access request generation device selected by the request priority circuit 30 and the corresponding data is written in the cache memory 31. Alternatively, reading from the cache memory 31 is performed, and the data selector circuit 3
The data is sent to each memory access request generation device via 4.

【0031】キャッシュにヒットしなかった場合、ヒッ
ト判定回路33は、キャッシュメモリ31に動作を待た
せるための制御信号40を送出すると同時に、主記憶装
置7にブロック転送要求信号線及びアドレス線43を介
して転送ブロックアドレスを送出する。これにより、主
記憶装置7は、指定されたアドレスの1ブロック分のデ
ータを読み出し、そのデータをキャッシュメモリ31に
転送する。
When the cache is not hit, the hit determination circuit 33 sends a control signal 40 for causing the cache memory 31 to wait for an operation, and simultaneously sends a block transfer request signal line and an address line 43 to the main memory device 7. Send out the transfer block address via. As a result, the main memory device 7 reads the data for one block at the specified address and transfers the data to the cache memory 31.

【0032】キャッシュメモリ31とアドレスアレイ3
2とは、ヒット判定回路33が出力するブロック転送ア
ドレス線42が示すアドレスに従い、それぞれ、ブロッ
クデータとその上位アドレスとを登録する。その後、キ
ャッシュメモリ31は、待たされている書き込みまたは
読み出しの動作を行う。
Cache memory 31 and address array 3
2 indicates that the block data and the upper address thereof are registered in accordance with the address indicated by the block transfer address line 42 output from the hit determination circuit 33. After that, the cache memory 31 performs the waiting write or read operation.

【0033】なお、前述した一連の動作は、キャッシュ
メモリ31から主記憶装置7へのブロックデータの書き
戻し動作を伴うこともある。
The series of operations described above may be accompanied by a write-back operation of block data from the cache memory 31 to the main storage device 7.

【0034】次に、メモリアクセス要求発生装置からの
書き込み要求に、フルブロックストア信号が加わってい
たときの動作を説明する。
Next, the operation when the full block store signal is added to the write request from the memory access request generator will be described.

【0035】検出回路35は、フルブロックストア信号
が加わっていることを検出すると、フルブロックストア
制御信号44を出力し、主記憶装置7への転送要求信号
43を抑止すると共に、アドレスレジスタ36にこのフ
ルブロックストアのアドレスとアクセス要求元コードを
セットし、書き込みデータをデータバッファ38に蓄積
する。
When the detection circuit 35 detects that the full block store signal is added, the detection circuit 35 outputs the full block store control signal 44 to suppress the transfer request signal 43 to the main memory 7 and to the address register 36. The address of this full block store and the access request source code are set, and the write data is stored in the data buffer 38.

【0036】その後、リクエストプライオリティ回路3
0は、アドレスレジスタ36にセットされた要求元から
の書き込みに対して、通常の書き込み動作を行わず、デ
ータバッファへの専用線47を介して、書き込みデータ
をデータバッファ38に逐次蓄積する。この場合の動作
は、通常の読み出し書き込み動作とはまったく独立して
行われるため、これらの動作が阻害されることはない。
After that, the request priority circuit 3
0 does not perform a normal write operation in response to the write from the request source set in the address register 36, and sequentially stores the write data in the data buffer 38 via the dedicated line 47 to the data buffer. Since the operation in this case is performed completely independently of the normal read / write operation, these operations are not disturbed.

【0037】データバッファ38に蓄えられた1ブロッ
ク分のデータは、データバッファ38が一杯になった時
点で、主記憶装置7からの転送/登録と同様の処理によ
り、キャッシュメモリ31に書き込まれ、アドレスアレ
イ32に書き込みアドレスの上位分が登録される。
The data for one block stored in the data buffer 38 is written in the cache memory 31 by the same process as the transfer / registration from the main memory 7 when the data buffer 38 is full. The upper part of the write address is registered in the address array 32.

【0038】これにより、前述の書き込み動作は、小き
ざみな書き込み動作を行わず、また、キャッシュにヒッ
トしなかった場合でも、主記憶装置7からのブロックデ
ータの転送を実行することなく、そのまま短時間のうち
にキャッシュメモリ31への一括した書き込み動作とし
て行われ、アドレスアレイ32への登録が実行される。
As a result, the above-mentioned write operation is not performed in small increments, and even if the cache is not hit, the block data is not transferred from the main storage device 7, and the write operation is performed as it is. It is performed as a batch write operation to the cache memory 31 within a time, and registration to the address array 32 is executed.

【0039】なお、この一連の動作は、キャッシュメモ
リ31から主記憶装置7へのブロックデータの書き戻し
動作を伴うことがある。
Note that this series of operations may be accompanied by a write-back operation of block data from the cache memory 31 to the main storage device 7.

【0040】ところで、前述した書き込み動作の実行中
に、他のメモリアクセス要求発生装置から、同一ブロッ
クに対するアクセス要求があった場合、そのブロックの
データは、キャッシュメモリ31あるいは主記憶装置7
と、データバッファ38との2か所に別々に存在してい
ることになるため、その動作を保証をすることが困難で
ある。
If another memory access request generator makes an access request to the same block during the above-described write operation, the data of the block is stored in the cache memory 31 or the main storage device 7.
, And the data buffer 38 exist separately at two locations, so that it is difficult to guarantee the operation.

【0041】この場合、本発明の一実施例は、フルブロ
ックストアが検出された時点で、前述したように、アド
レスレジスタ36に、フルブロックストア要求のブロッ
クアドレスとアクセス要求元コードとを記憶しているの
で、リクエストプライオリティ回路30が、アドレスレ
ジスタ36からのアドレス線45により、他のメモリア
クセス要求発生装置からの同一ブロックへのアクセス要
求処理の開始を一時的に滞留させるように制御すること
ができる。
In this case, according to one embodiment of the present invention, when the full block store is detected, the block address of the full block store request and the access request source code are stored in the address register 36 as described above. Therefore, the request priority circuit 30 can control the address line 45 from the address register 36 to temporarily hold the start of the access request processing to the same block from another memory access request generation device. it can.

【0042】なお、アドレスレジスタ36は、データバ
ッファ38に蓄えられているブロックデータが、キャッ
シュメモリ31に登録された時点で、信号線46の指示
により、そのバリッドがリセットされる。
The valid of the address register 36 is reset by the instruction of the signal line 46 when the block data stored in the data buffer 38 is registered in the cache memory 31.

【0043】前述した本発明の一実施例において、アド
レスレジスタ36は、通常の主記憶装置7からキャッシ
ュメモリ31にブロックデータを転送登録する場合に
も、同様に動作中の同一ブロック内のアクセスによる追
突を防止する上で必要なものであり、データバッファ3
8においても、主記憶装置7とキャッシュメモリ31と
のアクセスタイムの差を緩衝するために通常設けられて
いるものである。
In the above-described embodiment of the present invention, the address register 36 is similarly accessed by the access in the same block even when the block data is transferred from the main memory 7 and registered in the cache memory 31. Data buffer 3 is necessary to prevent rear-end collision.
8 is also usually provided in order to buffer the difference in access time between the main storage device 7 and the cache memory 31.

【0044】すなわち、前述した本発明の一実施例は、
検出回路等の小規模な回路を設けるのみで、アドレスの
連続する書き込み要求に対し、誤動作することなく、処
理の高速化を図ることができ、主記憶及びキャッシュメ
モリのビジー率の低減を実現することができる。
That is, the above-described embodiment of the present invention is
Only by providing a small-scale circuit such as a detection circuit, it is possible to speed up the process for a write request with continuous addresses without malfunctioning, and reduce the busy rate of the main memory and cache memory. be able to.

【0045】なお、図3に示す中間記憶装置は、アドレ
スレジスタ36とデータレジスタ38とが1組しか設け
られていないため、複数のアクセス要求元からの書き込
み要求に対しては、アドレスレジスタ36のバリッドを
信号線45を介して検出回路35に送ることにより、後
続の書き込み要求に対しては、フルブロックストアの検
出を行わず、本発明による操作を行わずに、通常の書き
込みを行うようにしているが、本発明は、アドレスレジ
スタ36とデータレジスタ38とを中間記憶装置に接続
されるアクセス要求元の数だけ用意することにより、全
てのアクセス要求元からの書き込み要求に対して、同時
に本発明の書き込み動作を行わせるようにすることがで
きる。
Since the intermediate storage device shown in FIG. 3 is provided with only one set of the address register 36 and the data register 38, in response to a write request from a plurality of access request sources, the address register 36 is stored. By sending the valid to the detection circuit 35 through the signal line 45, the normal write is performed without detecting the full block store and performing the operation according to the present invention with respect to the subsequent write request. However, according to the present invention, the address registers 36 and the data registers 38 are prepared by the number of access request sources connected to the intermediate storage device, so that the write requests from all access request sources can be simultaneously written. The write operation of the invention may be performed.

【0046】前述により本発明の一実施例を具体的に説
明したが、本発明は、前記実施例に限定されるものでは
なく、その旨を逸脱しない範囲において種々変更可能で
あることはいうまでもない。特に、前述した本発明の一
実施例は、本発明を拡張記憶装置に適用したものとして
説明したが、本発明は、命令プロセッサによる転送命
令、入出力装置からのロード動作に対して、同様に適用
することができる。
Although one embodiment of the present invention has been specifically described above, it is needless to say that the present invention is not limited to the above embodiment and various modifications can be made without departing from the scope. Nor. In particular, the above-described embodiment of the present invention has been described by applying the present invention to the extended storage device, but the present invention similarly applies to the transfer instruction by the instruction processor and the load operation from the input / output device. Can be applied.

【0047】[0047]

【発明の効果】以上説明したように本発明によれば、デ
ータ転送命令、外部記憶装置から内部の記憶装置へのロ
ード動作等のアドレスが連続する書き込み動作が継続す
る場合に、処理の高速化をはかることができ、メモリの
ビジー率の低減を図ることができる。
As described above, according to the present invention, speeding up of processing is performed when a continuous write operation such as a data transfer instruction or a load operation from an external storage device to an internal storage device continues. Therefore, it is possible to reduce the busy rate of the memory.

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

【図1】本発明の一実施例による情報処理装置の全体の
構成を示すブロック図である。
FIG. 1 is a block diagram showing the overall configuration of an information processing apparatus according to an embodiment of the present invention.

【図2】メモリアクセス要求発生装置の構成を示すブロ
ック図である。
FIG. 2 is a block diagram showing a configuration of a memory access request generation device.

【図3】中間記憶装置の構成を示すブロック図である。FIG. 3 is a block diagram showing a configuration of an intermediate storage device.

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

1 第1の命令プロセッサ(IP0) 2 第2の命令プロセッサ(IP1) 3 入出力プロセッサ(IOP) 4 拡張記憶装置(ES) 5 キャッシュメモリ装置 6 中間記憶装置 7 主記憶装置 10 転送アドレス表示レジスタ 11 転送残量表示レジスタ 12 拡張記憶メモリ 13 転送制御回路 14 アドレスのブロック渡りを検出する検出回路 15 加算器 16 減算器 30 リクエストプライオリティ回路 31 キャッシュメモリ 32 アドレスアレイ(A.A) 33 ヒット判定回路 34 データセレクタ回路 35 フルブロックストア信号の検出回路 36 アドレスレジスタ 37 アドレス選択回路 38 データバッファ 1 First Instruction Processor (IP0) 2 Second Instruction Processor (IP1) 3 Input / Output Processor (IOP) 4 Extended Storage Device (ES) 5 Cache Memory Device 6 Intermediate Storage Device 7 Main Storage Device 10 Transfer Address Display Register 11 Transfer remaining amount display register 12 Extended storage memory 13 Transfer control circuit 14 Detection circuit for detecting block crossing of address 15 Adder 16 Subtractor 30 Request priority circuit 31 Cache memory 32 Address array (AA) 33 Hit determination circuit 34 Data Selector circuit 35 Full block store signal detection circuit 36 Address register 37 Address selection circuit 38 Data buffer

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 キャッシュメモリを備えた中間記憶装置
と、複数のメモリアクセス要求発生装置と、主記憶装置
とを備えて構成される情報処理装置において、前記メモ
リアクセス要求発生装置内に、書き込みアドレスと転送
残量とを随時更新して表示する2つのレジスタを備え、
書き込みアドレスレジスタが示す値が、中間記憶装置内
のキャッシュメモリのブロック境界を渡る時点で、転送
残量を示すレジスタの値を調べ、この値が、中間記憶装
置内のキャッシュメモリのブロック長より大きいとき、
その時点の中間記憶装置へのブロック内先頭書き込み要
求信号に、一連の書き込み動作がさらに1ブロックを超
えて継続することを示すフルブロックストア信号を付加
して送出することを特徴とするキャッシュ制御方式。
1. An information processing apparatus comprising an intermediate storage device having a cache memory, a plurality of memory access request generation devices, and a main storage device, wherein a write address is provided in the memory access request generation device. And two registers for updating and displaying the transfer remaining amount at any time,
When the value indicated by the write address register crosses the block boundary of the cache memory in the intermediate storage device, the value of the register indicating the transfer remaining amount is checked, and this value is larger than the block length of the cache memory in the intermediate storage device. When
A cache control method characterized in that a full block store signal indicating that a series of write operations continues for more than one block is added to the block head write request signal to the intermediate storage device at that time and transmitted. ..
【請求項2】 前記中間記憶装置は、1ブロック分のデ
ータバッファを備え、前記メモリアクセス要求発生装置
の1つから書き込み要求を受け取ったとき、該書き込み
要求に、前記フルブロックストア信号が付加されている
いることを検出すると、前記書き込み要求による書き込
みデータを直接キャッシュメモリに書き込むことなく、
一旦前記バッファに蓄積し、該バッファに書き込みデー
タが一杯になったとき、一括して1ブロック分のデータ
をキャッシュメモリに書き込むことを特徴とする請求項
1記載のキャッシュ制御方式。
2. The intermediate storage device includes a data buffer for one block, and when a write request is received from one of the memory access request generation devices, the full block store signal is added to the write request. Is detected, without directly writing the write data by the write request to the cache memory,
2. The cache control method according to claim 1, wherein once the data is accumulated in the buffer and the write data is full in the buffer, one block of data is collectively written in the cache memory.
【請求項3】 前記中間記憶装置は、前記書き込み要求
のアドレスがキャッシュメモリの中に存在しない場合、
主記憶装置からブロック転送を行うことなく、直接キャ
ッシュメモリに、書き込みデータの登録を行うことを特
徴とする請求項2記載のキャッシュ制御方式。
3. The intermediate storage device, when the address of the write request does not exist in the cache memory,
3. The cache control method according to claim 2, wherein the write data is directly registered in the cache memory without performing block transfer from the main storage device.
JP4047128A 1992-03-04 1992-03-04 Cache control system Pending JPH05250258A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4047128A JPH05250258A (en) 1992-03-04 1992-03-04 Cache control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4047128A JPH05250258A (en) 1992-03-04 1992-03-04 Cache control system

Publications (1)

Publication Number Publication Date
JPH05250258A true JPH05250258A (en) 1993-09-28

Family

ID=12766510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4047128A Pending JPH05250258A (en) 1992-03-04 1992-03-04 Cache control system

Country Status (1)

Country Link
JP (1) JPH05250258A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401200B1 (en) 1997-10-16 2002-06-04 Fujitsu Limited Device for simultaneously downloading code into plural DSP memories from single master memory
JP2010191638A (en) * 2009-02-17 2010-09-02 Fujitsu Semiconductor Ltd Cache device
WO2014209276A1 (en) * 2013-06-25 2014-12-31 Hewlett-Packard Development Company, L.P. Flushing dirty data from cache memory

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401200B1 (en) 1997-10-16 2002-06-04 Fujitsu Limited Device for simultaneously downloading code into plural DSP memories from single master memory
JP2010191638A (en) * 2009-02-17 2010-09-02 Fujitsu Semiconductor Ltd Cache device
US8661198B2 (en) 2009-02-17 2014-02-25 Fujitsu Semiconductor Limited Cache device
WO2014209276A1 (en) * 2013-06-25 2014-12-31 Hewlett-Packard Development Company, L.P. Flushing dirty data from cache memory

Similar Documents

Publication Publication Date Title
JP3273367B2 (en) Method for asynchronously reading / writing data to / from memory and direct memory access controller therefor
JP3289661B2 (en) Cache memory system
JPS61109146A (en) Advanced control system
JP2003504757A (en) Buffering system bus for external memory access
JPH06318177A (en) Method, device and computer system for reducing cache mistake penalty
JPH1196072A (en) Memory access control circuit
JPH05250258A (en) Cache control system
KR960007833B1 (en) Method and apparatus for fast page mode selection
GB2394574A (en) An architecture and method for accessing data and instructions of an external memory using store and forward
US6374344B1 (en) Methods and apparatus for processing load instructions in the presence of RAM array and data bus conflicts
JPH05282208A (en) Cache memory control system
JP3039391B2 (en) Memory system
JPH11184761A (en) Read modify write control system
JP2000227895A (en) Device and method for transferring image data
JPH0210450A (en) Prefetch control system for cache memory
JPH07114509A (en) Memory access device
JP2685664B2 (en) Information processing device
JPH06348592A (en) Write buffer control system
JPH06301600A (en) Storage device
JPS5952460B2 (en) memory device
JPH0793215A (en) Semiconductor memory
JPH11203198A (en) Memory access controller
JP2557857B2 (en) Cache storage
JPH02259945A (en) Storing processing system
JP2001325147A (en) Partial storage processing method, memory system and large scale integrated circuit