JPH0447350A - Main storage read/response control - Google Patents
Main storage read/response controlInfo
- Publication number
- JPH0447350A JPH0447350A JP2153754A JP15375490A JPH0447350A JP H0447350 A JPH0447350 A JP H0447350A JP 2153754 A JP2153754 A JP 2153754A JP 15375490 A JP15375490 A JP 15375490A JP H0447350 A JPH0447350 A JP H0447350A
- Authority
- JP
- Japan
- Prior art keywords
- block
- data
- main memory
- block transfer
- transfer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000004044 response Effects 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Landscapes
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、主記憶読み出し応答制御方式に関する。[Detailed description of the invention] [Industrial application field] The present invention relates to a main memory read response control system.
従来、この種の主記憶読み出し応答制御方式では、ブロ
ック転送中の主記憶読み出しの為に、ブロック転送中の
アドレスを保持するレジスタと、転送中のブロック内ポ
インタを示すカウンタを備え、ブロック転送中に発生し
た主記憶読み出しアドレスが転送中のブロックアドレス
に含まれているかどうかを検出し、含まれているならば
、ブロック内ポインタがブロック転送中に発生した主記
憶読み出しアドレスのブロック内ポインタと一致するタ
イミングで、転送中のデータを読み出しデータとして選
択し、応答を返却していた。Conventionally, this type of main memory read response control system has a register that holds the address during block transfer and a counter that indicates the pointer within the block during block transfer, in order to read main memory during block transfer. Detects whether the main memory read address that occurred during block transfer is included in the block address being transferred, and if so, the in-block pointer matches the in-block pointer of the main memory read address that occurred during block transfer. At the same time, the data being transferred was selected as read data and a response was returned.
上述した従来の主記憶読み出し応答制御方式では、ブロ
ック転送中に発生した主記憶読み出しに対するデータと
してブロック転送中のデータを返却できるタイミングは
ブロック転送中1回しかなく、そのタイミングをのがす
とキャッシュから読み出さなければならない為、ブロッ
ク転送の終了を待たなければならない。従って、この間
は、読み出しデータを使用した処理が行えないという欠
点がある。In the conventional main memory read response control method described above, there is only one timing during a block transfer when the data being transferred can be returned as data for a main memory read that occurs during a block transfer, and if you miss that timing, the cache Since it must be read from the block, it is necessary to wait for the block transfer to complete. Therefore, there is a drawback that processing using read data cannot be performed during this time.
本発明の主記憶読み出し応答制御方式は、ブロック転送
中のデータに読み出したいデータが存在するならば、ブ
ロック転送の終了をまたずデータを返却する為に、ブロ
ック転送を行っているデータを格納するブロックバッフ
ァと、プロツクノくソファ内に確定しているデータのポ
インタを示すブロック転送カウンタ値と、ブロック転送
中に発生した主記憶読み出しアドレスのブロック内ポイ
ンタの部分を比較する比較器を有し、比較した結果、ブ
ロックバッファ内に所望のデータが確定していれば、ブ
ロックバッファ内データを返却データとして応答する応
答制御回路を有している。The main memory read response control method of the present invention stores the data being transferred in order to return the data without crossing the end of the block transfer if the data to be read exists in the data being transferred. The block buffer has a comparator that compares the block transfer counter value indicating the pointer of data fixed in the block buffer with the intra-block pointer part of the main memory read address that occurred during block transfer. As a result, if desired data is determined in the block buffer, a response control circuit is provided that responds with the data in the block buffer as return data.
次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.
第1図は本発明の一実施例のブロック図である。FIG. 1 is a block diagram of one embodiment of the present invention.
メモリアクセス解析回路30はメモリアクセスコマンド
10を入力し、解析しブロック転送が必要な場合にブロ
ック転送指示12を送出し、ブロック転送指示フリップ
フロップ31のセット及びブロック転送カウンタ36の
クリアと、ブロック転送アドレスレジスタ40へ、メモ
リアクセスコマンド10にともなうメモリアクセスアド
レス11のセットを行う。The memory access analysis circuit 30 inputs the memory access command 10, analyzes it, sends out a block transfer instruction 12 if block transfer is necessary, sets the block transfer instruction flip-flop 31, clears the block transfer counter 36, and executes the block transfer. A memory access address 11 is set in the address register 40 in accordance with the memory access command 10.
ブロック転送カウンタはブロック転送中、すなわち、ブ
ロック転送指示フリップフロップがセットされている間
はインクリメント回路37の出力をセットする。The block transfer counter sets the output of the increment circuit 37 during block transfer, that is, while the block transfer instruction flip-flop is set.
但し、インクリメント回路37では、ブロック転送中に
おいて、データが転送されるタイミングでのみインクリ
メントが行われる様にする。ブロック転送アドレスレジ
スタ40は、ブロック転送が必要となったアドレスをブ
ロック転送間、保持している。However, in the increment circuit 37, during block transfer, increment is performed only at the timing when data is transferred. The block transfer address register 40 holds an address that requires block transfer during block transfer.
ブロックバッファ44は、ブロック転送中にシステムデ
ータバス41上に送出されている主記憶データを、シス
テムバスインターフェース回路42を通して入力し、ブ
ロック転送状態値18をライトポインタとしてブロック
内のデータをすべて格納する。この時、データはキャッ
シュデータ配列35へ同時に、リードライトデータ線2
2を通じ書き込まれる。この時のキャッシュアドレスは
、キャッシュアドレス選択回路32でブロック転送アド
レス17が選択されブロック転送中のキャッシュアドレ
スが保証される。The block buffer 44 inputs main memory data sent onto the system data bus 41 during block transfer through the system bus interface circuit 42, and stores all data in the block using the block transfer status value 18 as a write pointer. . At this time, the data is simultaneously transferred to the cache data array 35 on the read/write data line 2.
Written through 2. As the cache address at this time, the block transfer address 17 is selected by the cache address selection circuit 32, and the cache address during block transfer is guaranteed.
ブロック転送中にメモリアクセスコマンド10として主
記憶読み出しが入力された場合、ブロック転送アドレス
17と、主記憶読み出しにともなって入力されるメモリ
アクセスアドレス11とが比較され、所望のデータが転
送中のブロックに含まれているかどうかがディレクトリ
比較器33によって検出される。When a main memory read is input as the memory access command 10 during block transfer, the block transfer address 17 and the memory access address 11 input with the main memory read are compared, and the desired data is transferred to the block being transferred. The directory comparator 33 detects whether the file is included in the directory.
同時に、メモリアクセスアドレス11に含まれるブロッ
ク内ポインタ部分がブロック転送カウンタ36の出力で
あるブロック転送状態値18とブロックバッファポイン
タ比較器39によっテ比較され、ブロックバッファ内に
所望のデータが確定したかどうかがチエツクされ、確定
すれば、データ応答タイミング信号24がブロックバッ
ファポインタ比較器39から応答制御回路34へ送出さ
れる。At the same time, the intra-block pointer part included in the memory access address 11 is compared with the block transfer status value 18, which is the output of the block transfer counter 36, by the block buffer pointer comparator 39, and the desired data is determined in the block buffer. If it is determined, the data response timing signal 24 is sent from the block buffer pointer comparator 39 to the response control circuit 34.
応答制御回路34は、ブロック転送中を示すブロック転
送信号13と、ブロック転送中に発生した主記憶読み出
しアドレスが、転送中のブロックに含まれていることを
示すディレクトリ一致信号16及びデータ応答タイミン
グ信号24を入力し、ブロック転送中であっても、ブロ
ック転送アドレス17に、ブロック転送中に発生した主
記憶読み出しアドレスが含まれ、且つ、ブロックバッフ
ァ44に所望のデータが確定していれば応答信号14を
送出する。The response control circuit 34 receives a block transfer signal 13 indicating that a block is being transferred, a directory match signal 16 indicating that the main memory read address generated during block transfer is included in the block being transferred, and a data response timing signal. 24 is input, and even if a block transfer is in progress, if the block transfer address 17 includes the main memory read address that occurred during the block transfer, and the desired data has been determined in the block buffer 44, a response signal is sent. 14 is sent.
同時にリードデータ選択信号15を送出し、リードデー
タ選択回路38においてブロックバッファ44からメモ
リアクセスアドレス11に含まれるブロック内ポインタ
部分によって読み出したブロックバッファリードデータ
20を選択し、リードデータ19として送出する。ブロ
ックバッファには、ブロック転送したデータがすべて格
納され、ブロックバッファにデータが確定したタイミン
グ以降はいつでも読み出し可能となる。At the same time, the read data selection signal 15 is sent out, and the read data selection circuit 38 selects the block buffer read data 20 read from the block buffer 44 by the intra-block pointer portion included in the memory access address 11, and sends it out as read data 19. All block transferred data is stored in the block buffer, and can be read at any time after the data is fixed in the block buffer.
以上説明した様に、ブロック転送中に発生した主記憶読
み出しのデータが転送中のブロックに含まれる場合、ブ
ロック転送中、システムデータバス上に所望のデータが
送出されているタイミングをのがしてもブロックバッフ
ァにはそのデータが格納されている為、ブロック転送の
終了を待つことなく読み出すことが可能となる。As explained above, if the main memory read data that occurred during a block transfer is included in the block being transferred, the timing when the desired data is being sent onto the system data bus during the block transfer is delayed. Since the data is stored in the block buffer, it can be read without waiting for the end of block transfer.
以上説明した様に本発明は、ブロック転送によって主記
憶から取り出されたデータをキャシュデータ配列へ書き
込むと同時に格納するブロックバッファを備え、ブロッ
ク転送中に発生した主記憶読み出しのアドレスが転送中
のブロックに含まれることかディレクトリ比較器によっ
て検出された場合、ブロックバッファ内に所望のデータ
が確定したかどうかを検出するブロックバッファポイン
タ比較器を有することによって、ブロック転送中に発生
した主記憶読み出しがブロック転送中の所望のデータが
システムデータバス上に送出されているタイミングをの
がしても、ブロック/<ツファ中に所望データが確定す
る為、ブロック転送の終了を待たずにブロックバッファ
から所望データを読み出すことが可能となる。As explained above, the present invention includes a block buffer that stores data retrieved from main memory by block transfer into a cache data array at the same time as writing it to a cache data array, and the address of a main memory read that occurs during block transfer is in the block being transferred. By having a block buffer pointer comparator that detects whether the desired data is committed in the block buffer if detected by the directory comparator, main memory reads that occur during block transfers are blocked. Even if you miss the timing when the desired data being transferred is sent onto the system data bus, the desired data will be fixed during the block/< transfer, so the desired data will be transferred from the block buffer without waiting for the end of the block transfer. It becomes possible to read out.
従って、ブロック転送中であってもブロック転送中に発
生した主記憶読み出しに対し、リードデータの返却が可
能となり、このリードデータを使用した処理を進めるこ
とができる。Therefore, even during block transfer, read data can be returned in response to a main memory read that occurs during block transfer, and processing using this read data can proceed.
一般に、プログラムの読み出しや、オペランドの読み出
しに関しては連続したアドレスである場合が多く、本発
明により性能向上が測れる。Generally, when reading a program or reading an operand, continuous addresses are often used, and the present invention can improve performance.
第1図は本発明の一実施例を示すブロック図である。
10・・・メモリアクセスコマンド、11・・・メモリ
アクセスアドレス、12・・・ブロック転送指示、13
・・・ブロック転送信号、14・・・応答信号、15・
・・リードデータ選択信号、16・・・ディレクトリ一
致信号、17・・・ブロック転送アドレス、18・・・
ブロック転送状態値、19・・・リードデータ、20・
・・ブロックバッファリードデータ、21・・・システ
ムバスリードライトデータ、22・・・リードライトデ
ータ、23・・・ライトデータ、24・・・データ応答
タイミング信号、30・・・メモリアクセス解析回路、
31・・・ブロック転送指示フリップフロップ、32・
・・キャッシュアドレス選択回路、33・・・ディレク
トリ比較器、34・・・応答制御回路、35・・・キャ
シュデータ配列、36・・・ブロック転送カウンタ、3
7・・・インクリメント回路、38・・・リードデータ
選択回路、39・・・ブロックバッファポインタ比較器
、40・・・ブロック転送アドレスレジスタ、41・・
・システムデータバス、42・・・システムバスインタ
ーフェース回路、43・・・ライトデータドライバ、4
4−11ブロックバッファ0FIG. 1 is a block diagram showing one embodiment of the present invention. 10...Memory access command, 11...Memory access address, 12...Block transfer instruction, 13
...Block transfer signal, 14...Response signal, 15.
...Read data selection signal, 16...Directory match signal, 17...Block transfer address, 18...
Block transfer status value, 19... Read data, 20...
...Block buffer read data, 21...System bus read/write data, 22...Read/write data, 23...Write data, 24...Data response timing signal, 30...Memory access analysis circuit,
31...Block transfer instruction flip-flop, 32...
... Cache address selection circuit, 33... Directory comparator, 34... Response control circuit, 35... Cache data array, 36... Block transfer counter, 3
7... Increment circuit, 38... Read data selection circuit, 39... Block buffer pointer comparator, 40... Block transfer address register, 41...
- System data bus, 42... System bus interface circuit, 43... Write data driver, 4
4-11 block buffer 0
Claims (1)
データのブロック転送を行う為にブロック転送指示フリ
ップフロップ及びブロック転送する主記憶データブロッ
クアドレスを保持するブロック転送アドレスレジスタを
備え、ブロック転送中に発生した主記憶読み出しのアド
レスが該ブロック転送アドレスに含まれているかどうか
を検出するディレクトリ比較器と、前記ブロック転送中
に発生した主記憶アドレスと転送中のブロック内ポイン
タを示すブロック転送カウンタ値を比較し、ブロック転
送中のデータを、前記ブロック転送中に発生した主記憶
読み出しのデータとして応答を返却するタイミングを検
出する比較器を有し、該応答返却タイミングと、前記デ
ィレクトリ比較器出力及びブロック転送指示フリップフ
ロップ出力によって、読み出しデータの応答信号及び読
み出しデータの選択信号を生成する応答制御回路を備え
る主記憶読み出しデータ応答制御方式において、ブロッ
ク転送中のデータを格納する為のブロックバッファを有
し前記ブロック転送中に発生した主記憶読み出しのデー
タとしてブロック転送中データの返却可能タイミングを
検出する比較器を前記ブロックバッファにデータが確定
しているタイミングを検出するブロックバッファポイン
タ比較器とすることと、該ブロックバッファポインタ比
較器により前記ブロックバッファ内にブロック転送中に
発生した主記憶読み出し対するデータが確定したことを
検出した場合該ブロックバッファ内データを該ブロック
転送中に発生した主記憶読み出しデータとして応答する
応答制御回路とを含むことを特徴とした主記憶読み出し
応答制御方式。In order to transfer a block of main memory data to the cache data array in the data processing device, a block transfer instruction flip-flop and a block transfer address register that holds the main memory data block address to be transferred are provided. A directory comparator detects whether the main memory read address included in the block transfer address is compared with the main memory address generated during the block transfer and a block transfer counter value indicating the pointer within the block being transferred. and a comparator that detects the timing of returning a response to the data being transferred as main memory read data that occurred during the block transfer, and detects the response return timing, the output of the directory comparator, and the block transfer. In a main memory read data response control system including a response control circuit that generates a read data response signal and a read data selection signal by an instruction flip-flop output, the main memory read data response control method includes a block buffer for storing data during block transfer. A comparator that detects a timing when data during block transfer can be returned as main memory read data that occurs during block transfer is a block buffer pointer comparator that detects a timing when data is fixed in the block buffer; When the block buffer pointer comparator detects that the data for the main memory read that occurred during the block transfer is confirmed in the block buffer, the data in the block buffer is responded as the main memory read data that occurred during the block transfer. 1. A main memory read response control method comprising: a response control circuit for controlling a main memory read response;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2153754A JPH0447350A (en) | 1990-06-12 | 1990-06-12 | Main storage read/response control |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2153754A JPH0447350A (en) | 1990-06-12 | 1990-06-12 | Main storage read/response control |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0447350A true JPH0447350A (en) | 1992-02-17 |
Family
ID=15569396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2153754A Pending JPH0447350A (en) | 1990-06-12 | 1990-06-12 | Main storage read/response control |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0447350A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06168274A (en) * | 1993-06-25 | 1994-06-14 | Matsushita Electric Ind Co Ltd | Information retrieving device |
US6154814A (en) * | 1997-06-16 | 2000-11-28 | Nec Corporation | Cache device that reduces waiting time necessary for a given subsequent request to gain access to the cache |
JP2007172609A (en) * | 2005-12-22 | 2007-07-05 | Internatl Business Mach Corp <Ibm> | Efficient and flexible memory copy operation |
-
1990
- 1990-06-12 JP JP2153754A patent/JPH0447350A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06168274A (en) * | 1993-06-25 | 1994-06-14 | Matsushita Electric Ind Co Ltd | Information retrieving device |
US6154814A (en) * | 1997-06-16 | 2000-11-28 | Nec Corporation | Cache device that reduces waiting time necessary for a given subsequent request to gain access to the cache |
JP2007172609A (en) * | 2005-12-22 | 2007-07-05 | Internatl Business Mach Corp <Ibm> | Efficient and flexible memory copy operation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0447350A (en) | Main storage read/response control | |
JPS6319058A (en) | Memory device | |
JPH0789328B2 (en) | Data processing device | |
JPS6391756A (en) | Partial write instruction processing system for storage device | |
EP0382529A2 (en) | Microprocessor having store buffer | |
JPH05257807A (en) | Cache memory controller | |
JP3574693B2 (en) | Instruction processor | |
JPS61237145A (en) | Controlling system for store buffer | |
JP3491335B2 (en) | Information transfer device | |
JPH0391055A (en) | Method for setting hardware lock, hardware lock controller, method and device for detecting hardware lock | |
JPH03271859A (en) | Information processor | |
JPH0685154B2 (en) | Intermediate buffer control method | |
JPH05265942A (en) | Data inputting and outputting method for dma control part | |
JPH0321941B2 (en) | ||
JPS60123944A (en) | Buffer memory controlling system of information processor | |
JPH04113432A (en) | Virtual storage control method | |
JPH03158943A (en) | Buffer storage/transfer system | |
JPS6222165A (en) | Control system for access to main storage device | |
JPH0424733B2 (en) | ||
JPH04137148A (en) | Write reject controller | |
JPH0594407A (en) | Bus control system | |
JPH08166905A (en) | Cache memory control method | |
JPH04251351A (en) | System for controlling magnetic disk cache | |
JPH058459B2 (en) | ||
JPH0567975B2 (en) |