JPH0322053A - Move in buffer control system - Google Patents
Move in buffer control systemInfo
- Publication number
- JPH0322053A JPH0322053A JP1155738A JP15573889A JPH0322053A JP H0322053 A JPH0322053 A JP H0322053A JP 1155738 A JP1155738 A JP 1155738A JP 15573889 A JP15573889 A JP 15573889A JP H0322053 A JPH0322053 A JP H0322053A
- Authority
- JP
- Japan
- Prior art keywords
- address
- buffer
- move
- stored
- data
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔概 要〕
主記憶アクセス要求に対して求めるデータがバッファ記
憶装置内に存在しない場合のムーブ・イン・バッファ制
御方式に関し、
連続してデータ要求が発生しても主記憶装置の応答順に
依存せずに演算プロセッサの待ち時間を少なくし、高速
な処理を可能とすることを目的とし、
主記憶装置に対する要求と共に、供給されるページアド
レス及び実アドレスの一部を含む要求アドレスを記憶す
る論理アドレスレジスタと、前記論理アドレスレジスタ
に格納された要求アドレスの少なくとも一部が加わり、
前記主記憶装置の一部の情報の写しを保持するバッファ
記憶装置と、前記論理アドレスレジスタに格納された要
求アドレスの少なくとも一部が加わり、前記バッファ記
憶装置に保持されている有効データブロックの主記憶装
置における実アドレスを記憶するタグと、前記論理アド
レスレジスタに格納された要求アドレスの少なくとも一
部が加わり、アードレス変換された最新のページアドレ
スを保持する変換索引緩衝手段と、該変換索引緩衝手段
から得られるぺ−ジアドレス部と要求アドレス内の一部
のアドレスからなる主記憶装置の実アドレスを記憶する
とともに、主記憶装置のアドレスをアクセスする複数の
主記憶アクセス・レジスタと、該複数の主記憶アクセス
・レジスタと1対1の対をなし、前記バッファ記憶装置
に格納すべき前記主記憶装置からの情報のデータを保持
した後、前記バッファ記憶装置に格納する複数のムーブ
・イン・バッファとを有するように構成する。[Detailed Description of the Invention] [Summary] Regarding a move-in buffer control method when the data requested in response to a main memory access request does not exist in the buffer storage device, the main memory The purpose is to reduce the waiting time of the arithmetic processor and enable high-speed processing without depending on the response order of the storage device, and includes a part of the supplied page address and real address along with the request to the main storage device. a logical address register for storing a requested address; and at least a portion of the requested address stored in the logical address register;
a buffer storage device that holds a copy of some of the information in the main storage device and at least a portion of the requested address stored in the logical address register; A tag for storing a real address in a storage device, a translation index buffer means for holding the latest page address obtained by adding address address translation and at least a part of the request address stored in the logical address register, and the translation index buffer means a plurality of main memory access registers for storing the real address of the main memory consisting of the page address part obtained from the page address field and a part of the address in the request address, and for accessing the address of the main memory; a plurality of move-in buffers that form a one-to-one pair with a main memory access register and store data from the main memory to be stored in the buffer storage after the data is stored in the buffer storage; It is configured to have the following.
〔産業上の利用分野]
本発明はムープ・イン・バッファを有する計算機システ
ムに係り、更に詳しくは主記憶アクセス要求に対して求
めるデータがバッファ記憶装置内に存在しない場合のム
ーブ・イン・バッファ制御方式に関する。[Industrial Application Field] The present invention relates to a computer system having a move-in buffer, and more specifically to move-in buffer control when data requested in response to a main memory access request does not exist in the buffer storage device. Regarding the method.
バッファ記憶装置を有する計算機システムは、高速演算
を目的として、各方面で開発され実用化されている。従
来、このようなバンファ記憶装置を有する計算機システ
ムでは、バッファ記憶装置に格納されている有効データ
・ブロックの主記憶上アドレスを保持するタグを検索し
、その結果求めるデータがバッファ記憶装置内に存在し
ない場合、アドレス変換索引緩衝機構から得られるぺ−
ジ・アドレス部と、要求アドレス内の実アドレスからな
る実アドレスを主記憶アクセス・レジスタにセットし、
その主記憶アクセス・レジスタから主記憶装置にデータ
を要求している。Computer systems having buffer storage devices have been developed and put into practical use in various fields for the purpose of high-speed calculation. Conventionally, in a computer system having such a buffer storage device, a tag holding the main memory address of a valid data block stored in the buffer storage device is searched, and as a result, it is determined that the desired data exists in the buffer storage device. If not, the page obtained from the address translation index buffer
Sets the real address consisting of the address part and the real address in the request address in the main memory access register,
Data is requested from the main memory from its main memory access register.
第3図は従来方式の構威図である。論理アドレス・レジ
スタ(L A R : Logical Addres
s Register)10には演算プロセッサである
要求元からの要求アドレスが加わり、その要求アドレス
を記憶する.すなわち、演算プロセッサからデータ要求
が発生した場合、必要とするデータのアドレスである要
求アドレスが演算プロセッサから加わり、この要求アド
レスを記憶する。この要求アドレスとは演算プロセッサ
、換言するならば処理装置からの論理アドレスである。FIG. 3 is a diagram showing the structure of the conventional system. Logical address register (LAR: Logical Address
A request address from a request source, which is an arithmetic processor, is added to the register 10, and the request address is stored. That is, when a data request is generated from an arithmetic processor, a request address that is the address of the required data is added from the arithmetic processor, and this request address is stored. This requested address is a logical address from an arithmetic processor, in other words, a processing device.
論理アドレス・レジスタ10に要求アドレスである論理
アドレスが加わると、論理アドレス・・レジスタ10は
変換索引緩衝機構11,タグ12及びバッファ記憶l3
にそのアドレスを加え参照する。尚、タグ1,2はバッ
ファ記憶装置13に格納されている有効データブロック
の主記憶アドレス情報を保持するメモリであり、バッフ
ァ記憶13はタグと対をなし、有効データ・ブロックの
主記憶アドレス情報が示す主記憶装置の一部の情報を保
持するメモリである。When a logical address, which is a request address, is added to the logical address register 10, the logical address register 10 stores the conversion index buffer 11, the tag 12, and the buffer memory l3.
Add that address and refer to it. Note that the tags 1 and 2 are memories that hold main memory address information of valid data blocks stored in the buffer storage device 13, and the buffer memory 13 forms a pair with the tag and stores main memory address information of valid data blocks. This is a memory that holds part of the information in the main storage device indicated by .
そして、変換索引緩衝機構11の中の実ページ・アドレ
スと論理アドレス・レジスタlo内の実ページ内アドレ
スが実アドレス・レジスタ(SAR O, SAR
1 : Storage Access Regist
er portO,1) 1 4. 1 5の一方に
格納される。前述のタグを参照し、要求アドレスに対す
るデータがバッファ記憶13に存在しない場合には、実
アドレス・レジスタl4或いは実アドレス・レジスタl
5が出力し、主記憶装置に対してデータのムープ・イン
要求を出力する。Then, the real page address in the translation index buffer 11 and the real page address in the logical address register lo are stored in the real address register (SAR O, SAR
1: Storage Access Register
er portO, 1) 1 4. 1 to 5. Referring to the above-mentioned tag, if the data for the requested address does not exist in the buffer memory 13, the real address register l4 or the real address register l
5 outputs a data move-in request to the main storage device.
主記憶装置から出力されたデータ、いわゆるムーブ・イ
ン・データは例えばデータパスを介してムーフ・イン・
バッファ16に格納される。尚、ムープ・イン・バッフ
ァ16は主記憶装置とバッファ記憶装置13の中間に位
置し、主記憶装置から送られてきた有効データ・ブロッ
クを一時保存するレジスタである。Data output from the main memory, so-called move-in data, is moved in via a data path, for example.
The data is stored in the buffer 16. The move-in buffer 16 is located between the main storage device and the buffer storage device 13, and is a register that temporarily stores valid data blocks sent from the main storage device.
主記憶装置から出力された前述のムーブ・イン・データ
はムーブ・イン・バッファにセットされると共に要求元
に対してデータを送付する。すなわち、ムーブ・イン・
パッファl6から選択回路17を介して出力される。な
お、データを送付する時には、すなわちデータを出力す
る時にはムーブ・イン・バッファ16からバツファ記憶
l3に対してデータのムーブ・インを開始する。換言す
るならばムーブ・イン・バッファから出力されるデータ
をバッファ記憶13に格納する。The aforementioned move-in data output from the main storage device is set in the move-in buffer, and the data is sent to the request source. In other words, move in
It is output from the buffer l6 via the selection circuit 17. Note that when data is to be sent, that is, when data is to be output, data is started to be moved in from the move-in buffer 16 to the buffer memory 13. In other words, the data output from the move-in buffer is stored in the buffer memory 13.
ムーブ・イン・バッファ16からバッファ記憶13にデ
ータをすべて格納した時、すなわちムープ・インが終了
した時データの有効性、すなわちタグ内の該当するエン
トリにその有効性を保証するビットをセットする。タグ
12には前述した要求アドレス、すなわち論理アドレス
が加わっており、この論理アドレスに対応して有効性を
保証するビットがセットされる。なお、前述した動作は
バッファ記憶l3に要求元から加わった要求アドレスに
対応したデータを記憶していない場合であり、記憶して
いる場合にはバッファ記憶13から選択回路17を介し
て要求元に記憶したそのデータを出力する。この選択は
変換索引緩衝機構11並びにタグ12の出力と論理アド
レス・レジスタ10内の論理演算によってその選択が指
示される。When all the data from the move-in buffer 16 is stored in the buffer storage 13, that is, when the move-in is completed, a bit is set to ensure the validity of the data, that is, in the corresponding entry in the tag. The above-mentioned request address, that is, a logical address is added to the tag 12, and a bit that guarantees validity is set corresponding to this logical address. Note that the above-mentioned operation is performed when the buffer memory 13 does not store data corresponding to the request address added from the request source. If it does, data is sent from the buffer memory 13 to the request source via the selection circuit 17. Output the memorized data. This selection is dictated by the outputs of translation lookaside buffer 11 and tag 12 and logical operations within logical address register 10.
一方、前述した要求が連続的に発生した場合、後続の命
令である要求は先の実アドレスを記憶した実アドレス・
レジスタ14あるいは実アドレス・レジスタl5の他方
の実アドレス・レジスタに格納される。例えば実アドレ
ス・レジスタl4に先の実アドレスが格納された場合に
は、それに続く実アドレスは実アドレス・レジスタl5
に格納される。続いて人力した実アドレスにおいて、タ
グl2を参照し、バッファ記憶13にその実アドレスに
対応するデータが存在しない場合には、主記憶装置に対
してデータのムーブ・イン要求と実アドレスを出力する
。On the other hand, if the above-mentioned requests occur consecutively, the request that is the subsequent instruction will use the real address that stores the previous real address.
It is stored in the other real address register of register 14 or real address register l5. For example, if the previous real address is stored in real address register l4, the following real address is stored in real address register l5.
is stored in Next, the tag 12 is referred to for the manually entered real address, and if there is no data corresponding to the real address in the buffer storage 13, a data move-in request and the real address are output to the main memory.
以上の動作において、従来では演算プロセッサ等からの
データ要求が発生した場合、要求アドレスが連続して加
わるが例えば2個の実アドレス・レジスタ14.15を
設けることにより、その要求が連続して2つ入ってもそ
の要求に対応できる構戒となっている。In the above operation, conventionally, when a data request occurs from an arithmetic processor or the like, the request address is added consecutively, but by providing two real address registers 14 and 15, for example, the request is The system is designed to be able to meet the demands even if there is an increase in demand.
〔発明が解決しようとする課題]
前述した従来方式のムーブ・イン・バッファの制御にお
いては、実アドレス・レジスタ14.15を例えば2個
設けているので連続した要求に対応するようになってい
るが、一方のムーブ・イン動作が終了しない限り他方の
ムーブ・イン動作は保留状態となることがあった。[Problems to be Solved by the Invention] In the conventional move-in buffer control described above, for example, two real address registers 14 and 15 are provided, so that successive requests can be handled. However, unless one move-in operation is completed, the other move-in operation may be put on hold.
すなわち、連続して発生した要求に対して、後から要求
したムーブ・インデータがムーブ・イン・バッファ16
に格納された場合には、先に要求したムーブ・インデー
タがムープ・イン・バッファ16に格納されるまで要求
元の演算処理プロセッサは処理を停止し、先に要求した
データがムーブ・イン・バッファ16に格納し、読み出
した後に後続の要求に対するムーブ・イン動作を再度行
っている。In other words, for consecutive requests, the move-in data requested later is stored in the move-in buffer 16.
If the previously requested move-in data is stored in the move-in buffer 16, the requesting arithmetic processing processor stops processing until the previously requested move-in data is stored in the move-in buffer 16. After storing it in the buffer 16 and reading it out, the move-in operation is performed again for subsequent requests.
また2個連続してムープ・イン動作が続いた時、主記憶
装置から出力されるムープ・イン・データが要求順とは
限らない場合があり、後から要求したデータが先にムー
ブ・インされることがある。Also, when two consecutive move-in operations occur, the move-in data output from the main memory may not necessarily be in the requested order, and the data requested later may be moved in first. Sometimes.
このような場合には、そのムーブ・インが終了した後、
先に要求したデータをムーブ・インすることになる。こ
のため先に要求したデータが要求元に出力されるまで、
演算処理装置はいわゆる演算プロセッサはその間処理を
進めることができないという問題を有していた。In such a case, after the move-in is finished,
The previously requested data will be moved in. Therefore, until the previously requested data is output to the request source,
The arithmetic processing device has a problem in that the so-called arithmetic processor cannot proceed with processing during that time.
本発明は連続してデータ要求が発生しても主記憶装置の
応答順に依存せずに演算プロセッサの待ち時間を少なく
し、高速な処理を可能とすることを目的とする。SUMMARY OF THE INVENTION An object of the present invention is to reduce the waiting time of an arithmetic processor and enable high-speed processing without depending on the response order of the main memory even if data requests occur continuously.
第1図は本発明の原理ブロック図である。 FIG. 1 is a block diagram of the principle of the present invention.
論理アドレス・レジスタlは主記憶装置に対する要求と
ともに供給されるページアドレス及び実アドレスの一部
を含む要求アドレスを記憶する。Logical address register l stores the request address, which includes a portion of the page address and real address supplied with the request to main memory.
前記論理アドレス・レジスタ1に格納された要求アドレ
スの少なくとも一部はバッファ記憶装置2とタグ3と変
換索引緩衝手段4に加わる。At least part of the requested address stored in said logical address register 1 is applied to a buffer store 2, a tag 3 and a translation index buffer means 4.
バッファ記憶装置2は主記憶装置の一部の情報の写し、
すなわち主記憶装置の一部のデータを保持する。The buffer storage device 2 is a copy of some information in the main storage device,
That is, it holds some data in the main memory.
タグ3は前記バッファ記憶装置2に保持されている有効
データブロックの主記憶装置における実アドレスを記憶
する。The tag 3 stores the real address in the main memory of the valid data block held in the buffer storage 2.
変換索引緩衝手段4はアドレス変換された最新のページ
アドレスを保持する。The translation index buffer means 4 holds the latest page address that has been translated.
主記憶アクセス・レジスタ5,6は前記変換索引緩衝手
段4から得られるページアドレス部と要求アドレス内の
一部のアドレスからなる主記憶装置の実アドレスを記憶
するとともに、主記憶装置をアクセスする。The main memory access registers 5 and 6 store the real address of the main memory device consisting of the page address section obtained from the conversion index buffer means 4 and a part of the address in the request address, and also access the main memory device.
複数のムーブ・イン・バッファ7.8は前記複数の主記
憶アクセス・レジスタ5.6とl対lの対をなし、前記
バッファ記憶装置2に格納すべき前記主記憶装置からの
情報のデータを保持した後、前記バッファ記憶装置に格
納する。A plurality of move-in buffers 7.8 form one-to-one pairs with the plurality of main memory access registers 5.6, and store data from the main memory to be stored in the buffer memory 2. After holding, it is stored in the buffer storage device.
論理アドレス・レジスタ1に要求アドレスが加わると論
理アドレス・レジスタはその要求アドレスを記憶し、そ
の要求アドレスの少なくとも一部を変換索引緩衝千段4
、タグ3、バッファ記憶装置2に加える。そしてまた更
にこのアドレスを加えたことによって変換索引緩衝手段
4から変換されたアドレスが出力され、論理アドレス・
レジスタ1の実アドレスの一部と変換索引緩衝手段4か
ら出力されるページアドレスを主記憶アクセス・レジス
タ5と主記憶アクセス・レジスタ6に加える。そして主
記憶アクセス・レジスタ5.主記憶アクセス・レジスタ
6の一方がその要求に対するアドレスを記憶し、主記憶
装置をアクセスする。When a requested address is added to the logical address register 1, the logical address register stores the requested address and converts at least a portion of the requested address into the index buffer 4.
, tag 3, is added to buffer storage 2. By adding this address again, the converted address is output from the conversion index buffer means 4, and the logical address
Part of the real address of register 1 and the page address output from conversion index buffer means 4 are added to main memory access register 5 and main memory access register 6. and main memory access register 5. One of the main memory access registers 6 stores the address for the request and accesses the main memory.
主記憶装置のアクセスによって主記憶装置からは、その
要求に対応したデータがムーブ・イン・バッファ7やム
ーブ・イン・バッファ8に加わる。When the main memory is accessed, data corresponding to the request is added to the move-in buffer 7 and the move-in buffer 8 from the main memory.
主記憶アクセス・レジスタ5とムーブ・イン・バッファ
7、更には主記憶アクセス・レジスタ6とムーブ・イン
・バッファ8は対で動作するものであり、主記憶アクセ
ス・レジスタ5に論理アドレス・レジスタ1で記憶した
実アドレスの一部と変換索引緩衝千段4より出力された
ページアドレスとを主記憶アクセス・レジスタ5が記憶
するとムーブ・イン・バッファ7に主記憶装置から出力
されるデータが格納される。また、主記憶アクセス・レ
ジスタ6にそれらのアドレスが格納された場合には、ム
ーブ・イン・バッファ8に主記憶装置の出力が格納され
る。Main memory access register 5 and move-in buffer 7, and main memory access register 6 and move-in buffer 8, operate in pairs, and main memory access register 5 has logical address register 1. When the main memory access register 5 stores part of the real address stored in , and the page address output from the conversion index buffer 4, the data output from the main memory is stored in the move-in buffer 7. Ru. Further, when those addresses are stored in the main memory access register 6, the output of the main memory device is stored in the move-in buffer 8.
ムーブ・イン・バッファは複数あるので要求が連続した
場合であっても、ムーブ・イン・バ・〉ファに格納する
だけで次の要求に対するデータを他のムーブ・イン・バ
ッファに格納することができ、例えば演算処理装置はム
ーブ・イン・バッファに格納したと同時にデータを呼び
出すことができる.〔実 施 例〕
以下、図面を用いて本発明の実施例を詳細に説明する。There are multiple move-in buffers, so even if requests are made consecutively, data for the next request can be stored in other move-in buffers by simply storing it in the move-in buffer. For example, a processing unit can read data at the same time it is stored in a move-in buffer. [Example] Hereinafter, an example of the present invention will be described in detail using the drawings.
第2図は本発明の一実施例の構成図である。なお、同図
において従来と同一回路は同一符号を付して説明を省略
する。演算プロセッサから要求アドレスが論理アドレス
・レジスタIOに加わり、その論理アドレス・レジスタ
IOの出力は変換索引緩衝機構11、タグ12、バッフ
ァ記憶13、更には実アドレス・レジスタ14.15に
加わる。FIG. 2 is a block diagram of an embodiment of the present invention. In addition, in the figure, circuits that are the same as those of the conventional circuit are designated by the same reference numerals, and a description thereof will be omitted. The requested address from the arithmetic processor is applied to the logical address register IO, and the output of the logical address register IO is applied to the translation lookaside buffer 11, the tag 12, the buffer store 13, and the real address register 14.15.
また変換索引緩衝機構l1のページアドレスも実アドレ
ス・レジスタ14.15にさらには制1卸回路22に加
わる。また実アドレス・レジスタ14.15の出力は主
記憶装置のアドレスに加わると共に制御回路22に加わ
る。制御回路22は常に実アドレス・レジスタ14.1
5に加わる実アドレスとこの実アドレス・レジスタ14
.15から出力される主記憶装置における実アドレスと
を比較しており、一致した場合にその一致した方に対応
するムーブ・イン・バッファ(BO,Bl)24,25
の出力を選択回路23は選択する。そしてその選択回路
23の出力はバッファ記憶l3と選択回路17に加わる
。The page address of the conversion index buffer l1 is also added to the real address register 14.15 and further to the control 1 unloading circuit 22. The outputs of the real address registers 14,15 are also added to the main memory address as well as to the control circuit 22. Control circuit 22 always uses real address register 14.1
5 and this real address register 14
.. 15, and if they match, the move-in buffers (BO, Bl) 24, 25 corresponding to the matching one are compared.
The selection circuit 23 selects the output. The output of the selection circuit 23 is applied to the buffer memory l3 and the selection circuit 17.
演算プロセッサから要求が発生し、それに対応するペー
ジアドレスが付加されて実アドレス・レジスタに格納さ
れると、図示しない制御回路によって選択回路l8が選
択動作し、主記憶装置に記憶した実アドレスを出力する
。主記憶装置はその実アドレスに対応した情報であるデ
ータをムープ・イン・バッファ24.25に出力する。When a request is generated from the arithmetic processor and a corresponding page address is added and stored in the real address register, the selection circuit 18 is selectively operated by a control circuit (not shown) and outputs the real address stored in the main memory. do. The main memory outputs data, which is information corresponding to the real address, to the move-in buffers 24 and 25.
この時例えばその実アドレスが実アドレス・レジスタ(
SARO)14に格納したアドレスであったならば、ム
ーブ・イン・バッファ24がそのデータを記憶する。ま
た、実アドレス・レジスタ(SARl)15が実アドレ
スを出力している時にはムーブ・イン・バッファB1が
主記憶装置からのムープ・イン・データを記憶する。選
択回路23は制御回路によって動作しムーブ・イン・デ
ータが加わっている方のムーブ・イン・バッファの出力
を選択し、選択回路l7とバッファ記憶工3に出力する
。At this time, for example, the real address is stored in the real address register (
If the address is stored in SARO) 14, move-in buffer 24 stores the data. Furthermore, when the real address register (SARl) 15 is outputting a real address, the move-in buffer B1 stores move-in data from the main memory. The selection circuit 23 is operated by the control circuit and selects the output of the move-in buffer to which the move-in data is added, and outputs it to the selection circuit 17 and the buffer memory 3.
連続してデータ要求が加わらない場合には従来と同様の
動作となるが、連続して加わった場合には実アドレス・
レジスタ14.15とムーブ・イン・バッファ24.2
5は対をなして動作し、例えば実アドレス・レジスタ1
4が主記憶装置に対してアドレスを選択回路l8を介し
て加えている場合には、ムーブ・イン・バッファ24が
それに対応する応答をし、選択回路23を介して要求元
に加える。なお、その応答は複数、すなわち実アドレス
・レジスタに例えば2個のアドレスが格納された場合に
は、主記憶装置に対して2個の要求が発生し、主記憶装
置より出力された場合にムーブ・イン・バッファ24.
25にはその対となったムーブ・イン・データを格納す
る。If data requests are not added consecutively, the operation will be the same as before, but if data requests are made consecutively, the real address
Register 14.15 and move-in buffer 24.2
5 operates in pairs, e.g. real address register 1
4 is adding an address to the main memory via the selection circuit 18, the move-in buffer 24 makes a corresponding response and adds it to the request source via the selection circuit 23. In addition, if the response is multiple, that is, for example, two addresses are stored in the real address register, two requests will be generated to the main memory, and the move will be performed when the responses are output from the main memory. - In buffer 24.
25 stores the paired move-in data.
例えば先に要求したデータが、後から要求したデータよ
り後に加わる場合があるが、従来においてはその後に要
求したデータをムープ・イン・バッファ25に格納した
後バッファ記憶13に格納し、その後に後からのデータ
をバッファ記憶13に格納しなければならない。しかし
ながら本発明の実施例では、後から要求したデータが先
にムーブ・イン・データとして加わった場合にはムーブ
・イン・バッファ内に一時格納し、続いて加わるデータ
を残るムーブ・イン・バッファに記憶した後に、選択回
路23がそのムーブ・イン・バッファを選沢して演算プ
ロセッサに出力する。その時間内に後から要求したムー
ブ・イン・データ(先に格納された)ムーブ・イン・バ
ッファからバッファ記憶13に格納する。そして、後か
ら要求したムーブ・イン・バッファに格納されているム
ープ・イン・データをパッファ記憶に格納する。For example, data requested earlier may be added after data requested later, but conventionally, the data requested later is stored in the move-in buffer 25 and then stored in the buffer memory 13, and then added later. data from must be stored in buffer storage 13. However, in the embodiment of the present invention, if data requested later is added as move-in data first, it is temporarily stored in the move-in buffer, and subsequently added data is stored in the remaining move-in buffer. After storing, the selection circuit 23 selects the move-in buffer and outputs it to the arithmetic processor. Within that time, later requested move-in data is stored in the buffer storage 13 from the move-in buffer (previously stored). Then, the move-in data stored in the move-in buffer requested later is stored in the buffer memory.
例えば実アドレス・レジスタ14に先に加わる第1の実
アドレスを格納し、その次に加わる第2の要求アドレス
に対応する第2の実アドレスを実アドレス・レジスタl
5に格納し、第2の実アドレスに対応するムーブ・イン
・データが先に主記憶装置より出力された場合には、先
ずムーブ・イン・バッファ25にムーブ・インデータを
記憶する。そして実アドレス・レジスタl4に格納され
た第1の実アドレスに対応して出力されるムーフ・イン
・データをムーブ・イン・バッファ24に格納する。ム
ープ・イン・バッファ24に格納されたムーブ・インデ
ータは選択回路23の選択によって(制御回路22の制
御による)選択され、選択回路17、更にはバッファ記
憶I3に出力される。選択回路l7はこの時、ムープ・
イン・バッファ24の出力を選沢し(ハッファ記憶13
には入っていないためにムーブ・インを行った)要求元
に対してはムープ・イン・バッファ24のデータを出力
する。For example, the first real address added first is stored in the real address register 14, and the second real address corresponding to the second requested address added next is stored in the real address register l.
If the move-in data corresponding to the second real address is first output from the main storage device, the move-in data is stored in the move-in buffer 25 first. Then, the move-in data output corresponding to the first real address stored in the real address register l4 is stored in the move-in buffer 24. The move-in data stored in the move-in buffer 24 is selected by the selection circuit 23 (under the control of the control circuit 22) and output to the selection circuit 17 and further to the buffer storage I3. At this time, the selection circuit 17 selects the moop.
Selects the output of the in-buffer 24 (huffer memory 13
The data in the move-in buffer 24 is output to the requester (who performed the move-in because the data is not in the move-in buffer 24).
従来においては、1個であるがために先に要求したデー
タが加わらない場合にはムーブ・イン・バッファ16に
格納し、更にそのデータをバッファ記憶13に格納した
後に、次に加わるデータをムープ・イン・バッファに取
り込み、要求元に出力していたが、本発明の実施例によ
れば、後から要求したデータが先に加わり、ムーブ・イ
ン・バッファに入力してもバッファ記憶13には直ちに
格納する必要はなく、先に要求したムーブ・イン・デー
タが人力し、要求元に出力されると共にバッファ記憶に
格納された後に後から要求してムーブ・イン・バッファ
に格納されているデータを転送すればよく、この転送時
間の短縮を図ることができる。Conventionally, if the previously requested data cannot be added because there is only one item, the data is stored in the move-in buffer 16, and after that data is stored in the buffer storage 13, the next data to be added is moved.・According to the embodiment of the present invention, data requested later is added first, and even if it is input to the move-in buffer, it is not stored in the buffer storage 13. Data that does not need to be stored immediately; the previously requested move-in data is manually generated, output to the request source, and stored in buffer storage, and then later requested and stored in the move-in buffer. The transfer time can be shortened.
以上本発明の実施例を用いて説明したが、ムーブ・イン
・バッファ24.25は更にはそれに対をなす実アドレ
ス・レジスタ14.15は2組であるが、これに限らず
、複数の実アドレス・レジスタとそれに対応するムープ
・イン・バッファを同数設けることにより、更に多くの
連続した要求に対する高速化を図ることができる。As described above using the embodiments of the present invention, the move-in buffers 24.25 and the pair of real address registers 14.15 are two sets, but are not limited to this. By providing the same number of address registers and corresponding move-in buffers, it is possible to achieve even higher speeds for a larger number of consecutive requests.
以上述べたように、連続した複数のデータ要求に対し、
再度ムーブ・イン動作等を行う必要がなく、ひいてはシ
ステムとしての性能を向上させることができる。また、
従来のようにムーブ・イン・パッファからのパスを要求
元へのパスに組込むことでこのムーブ・イン・バッファ
からの要求アドレスに対応する要求データを送付するこ
とができる。As mentioned above, in response to multiple consecutive data requests,
There is no need to perform a move-in operation again, and the performance of the system can be improved. Also,
By incorporating the path from the move-in buffer into the path to the request source, it is possible to send the requested data corresponding to the requested address from this move-in buffer, as in the prior art.
第1図は本発明の原理ブロック図、 第2図は本発明の一実施例の構戒図、 第3図は従来方式の構或図である。 1・・・論理アドレスレジスタ、 2・・・バッファ記憶装置、 3・・・タグ、 4・・・変換索引緩衝手段、 Figure 1 is a block diagram of the principle of the present invention. FIG. 2 is a composition diagram of an embodiment of the present invention. FIG. 3 is a diagram showing the configuration of a conventional system. 1...Logical address register, 2...buffer storage device, 3...tag, 4... Conversion index buffer means,
Claims (1)
レス及び実アドレスの一部を含む要求アドレスを記憶す
る論理アドレスレジスタ(1)と、前記論理アドレスレ
ジスタ(1)に格納された要求アドレスの少なくとも一
部が加わり、前記主記憶装置の一部の情報の写しを保持
するバッファ記憶装置(2)と、 前記論理アドレスレジスタ(1)に格納された要求アド
レスの少なくとも一部が加わり、前記バッファ記憶装置
(2)に保持されている有効データブロックの主記憶装
置における実アドレスを記憶するタグ(3)と、 前記論理アドレスレジスタ(1)に格納された要求アド
レスの少なくとも一部が加わり、アドレス変換された最
新のページアドレスを保持する変換索引緩衝手段(4)
と、 該変換索引緩衝手段(4)から得られるページアドレス
部と要求アドレス内の一部の実アドレスからなる主記憶
装置の実アドレスを記憶するとともに、主記憶装置のア
ドレスをアクセスする複数の主記憶アクセス・レジスタ
(5、6)と、該複数の主記憶アクセス・レジスタ(5
、6)と1対1の対をなし、前記バッファ記憶装置(2
)に格納すべき前記主記憶装置からの情報のデータを保
持した後、前記バッファ記憶装置(2)に格納する複数
のムーブ・イン・バッファを有することを特徴とするム
ーブ・イン・バッファ制御方式。[Scope of Claims] A logical address register (1) for storing a request address including a supplied page address and a part of the real address together with a request to the main memory; a buffer storage device (2) containing at least a part of the requested address and holding a copy of the information of the part of said main memory; and at least a part of the requested address stored in said logical address register (1) being added; , a tag (3) for storing a real address in the main memory of a valid data block held in the buffer storage device (2); and at least a part of the requested address stored in the logical address register (1). translation index buffer means (4) for holding the latest page address that has been added and whose address has been translated;
and stores a real address in the main memory device consisting of the page address part obtained from the conversion index buffer means (4) and a part of the real address in the request address, and also stores the real address in the main memory device which is made up of the page address part obtained from the conversion index buffer means (4) and a part of the real address in the request address, and also stores the real address in the main memory device which is made up of the page address part obtained from the conversion index buffer means (4) and a part of the real address in the request address. memory access registers (5, 6) and the plurality of main memory access registers (5, 6);
, 6) and form a one-to-one pair with the buffer storage device (2).
) A move-in buffer control method characterized by having a plurality of move-in buffers that hold information from the main storage device to be stored in the buffer storage device (2) and then store it in the buffer storage device (2). .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1155738A JPH0322053A (en) | 1989-06-20 | 1989-06-20 | Move in buffer control system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1155738A JPH0322053A (en) | 1989-06-20 | 1989-06-20 | Move in buffer control system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0322053A true JPH0322053A (en) | 1991-01-30 |
Family
ID=15612366
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1155738A Pending JPH0322053A (en) | 1989-06-20 | 1989-06-20 | Move in buffer control system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0322053A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006039937A (en) * | 2004-07-27 | 2006-02-09 | Fujitsu Ltd | Cache memory control circuit and cache memory control method |
| WO2007097030A1 (en) * | 2006-02-27 | 2007-08-30 | Fujitsu Limited | Cache controller and cache control method |
-
1989
- 1989-06-20 JP JP1155738A patent/JPH0322053A/en active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006039937A (en) * | 2004-07-27 | 2006-02-09 | Fujitsu Ltd | Cache memory control circuit and cache memory control method |
| WO2007097030A1 (en) * | 2006-02-27 | 2007-08-30 | Fujitsu Limited | Cache controller and cache control method |
| US8312218B2 (en) | 2006-02-27 | 2012-11-13 | Fujitsu Limited | Cache controller and cache control method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2977688B2 (en) | Multi-processing device, method, and processor used for the same | |
| US4453216A (en) | Access control system for a channel buffer | |
| JPH0814801B2 (en) | Programmable access memory | |
| JPH0137773B2 (en) | ||
| US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
| JPH07120312B2 (en) | Buffer memory controller | |
| JPS60124754A (en) | Buffer storage control system | |
| US5408612A (en) | Microprocessor system for selectively accessing a processor internal register when the processor has control of the bus and partial address identifying the register | |
| JPH0322053A (en) | Move in buffer control system | |
| US4737908A (en) | Buffer memory control system | |
| EP0271187B1 (en) | Split instruction and operand cache management | |
| JPH0353657B2 (en) | ||
| JP2587586B2 (en) | Data transfer method | |
| US20060190660A1 (en) | Data ordering translation between linear and interleaved domains at a bus interface | |
| JP2501353B2 (en) | Prefetch control method | |
| JPS6329297B2 (en) | ||
| JPH06103477B2 (en) | Parallel cache memory | |
| JPH01319841A (en) | Buffer storing system | |
| JPS5922977B2 (en) | Page memory recall method using input/output device | |
| JPH0679296B2 (en) | Multiple virtual address space access method and data processing device | |
| JP3157513B2 (en) | Extended storage device | |
| JP2502406B2 (en) | Storage control system and data processing device | |
| JPH0468659B2 (en) | ||
| JPS6045872A (en) | high speed buffer storage | |
| JPH086853A (en) | Memory control method |