JPH081613B2 - Information processing device - Google Patents
Information processing deviceInfo
- Publication number
- JPH081613B2 JPH081613B2 JP1238515A JP23851589A JPH081613B2 JP H081613 B2 JPH081613 B2 JP H081613B2 JP 1238515 A JP1238515 A JP 1238515A JP 23851589 A JP23851589 A JP 23851589A JP H081613 B2 JPH081613 B2 JP H081613B2
- Authority
- JP
- Japan
- Prior art keywords
- store
- instruction
- address
- buffer
- 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.)
- Expired - Lifetime
Links
- 230000010365 information processing Effects 0.000 title claims description 10
- 230000007850 degeneration Effects 0.000 description 15
- OVGWMUWIRHGGJP-WVDJAODQSA-N (z)-7-[(1s,3r,4r,5s)-3-[(e,3r)-3-hydroxyoct-1-enyl]-6-thiabicyclo[3.1.1]heptan-4-yl]hept-5-enoic acid Chemical compound OC(=O)CCC\C=C/C[C@@H]1[C@@H](/C=C/[C@H](O)CCCCC)C[C@@H]2S[C@H]1C2 OVGWMUWIRHGGJP-WVDJAODQSA-N 0.000 description 13
- 101100161473 Arabidopsis thaliana ABCB25 gene Proteins 0.000 description 13
- 101000988961 Escherichia coli Heat-stable enterotoxin A2 Proteins 0.000 description 13
- 101100096893 Mus musculus Sult2a1 gene Proteins 0.000 description 13
- 101150081243 STA1 gene Proteins 0.000 description 13
- 238000001514 detection method Methods 0.000 description 11
- 101000752249 Homo sapiens Rho guanine nucleotide exchange factor 3 Proteins 0.000 description 7
- 102100021689 Rho guanine nucleotide exchange factor 3 Human genes 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Advance Control (AREA)
Description
【発明の詳細な説明】 技術分野 本発明は情報処理装置に関し、特にパイプライン処理
型情報処理装置におけるストア命令の高速処理方式に関
する。TECHNICAL FIELD The present invention relates to an information processing apparatus, and more particularly to a high-speed processing method of a store instruction in a pipeline processing type information processing apparatus.
従来技術 従来、パイプライン処理型情報処理装置においては、
ストアバッファから主記憶装置への掃出しがストアバッ
ファのワード単位に行われていた。Conventional Technology Conventionally, in a pipeline processing type information processing device,
Sweeping from the store buffer to the main memory was performed in word units of the store buffer.
よって、ストアバッファ内に主記憶装置の同一アドレ
スに対する2つのストア命令が連続して登録されていた
場合、ストアバッファから主記憶装置への掃出しを行う
ために主記憶装置の同一アドレスに対して2回のアクセ
スが必要であった。Therefore, when two store instructions for the same address in the main memory are successively registered in the store buffer, two data are stored for the same address in the main memory to flush from the store buffer to the main memory. Needed to be accessed once.
このような従来のパイプライン処理型情報処理装置で
は、ストアバッファ内の連続する2つのストア命令が主
記憶装置の同一アドレスに対する同一のストア命令であ
る場合でも、主記憶装置とのアクセスが2回必要であ
り、中央処理装置と主記憶装置との間の信号アクセス時
間が中央処理装置内における信号アクセス時間よりも遅
いため、ストア命令処理を高速化することができないと
いう欠点がある。In such a conventional pipeline processing type information processing apparatus, even when two consecutive store instructions in the store buffer are the same store instruction to the same address in the main memory, the main memory is accessed twice. This is necessary, and the signal access time between the central processing unit and the main memory is slower than the signal access time in the central processing unit, so that there is a disadvantage that the store instruction processing cannot be speeded up.
発明の目的 本発明は上記のような従来のものの欠点を除去すべく
なされたもので、連続する2つのストア命令が主記憶装
置の同一アドレスに対する同一のストア命令であるとき
にストア命令処理の高速化を図ることができる情報処理
装置の提供を目的とする。SUMMARY OF THE INVENTION The present invention has been made in order to eliminate the above-mentioned drawbacks of the conventional ones, and speeds up the store instruction processing when two consecutive store instructions are the same store instruction for the same address in the main memory. An object of the present invention is to provide an information processing device that can be realized.
発明の構成 本発明による情報処理装置は、ストア命令により主記
憶装置に格納されるデータをストアバッファに一時保持
する情報処理装置であって、連続するストア命令が同一
アドレスに対する同一のストア命令か否かを検出する検
出手段と、前記検出手段により前記同一アドレスに対す
る同一のストア命令であることが検出されたときに前記
ストアバッファに書込む前に前記連続するストア命令各
々のマスク情報で有効とされるデータを選択する選択手
段と、前記選択手段で選択されたデータを前記ストアバ
ッファに書込む書込み手段とを有することを特徴とす
る。The information processing apparatus according to the present invention is an information processing apparatus that temporarily holds data stored in a main storage device by a store instruction in a store buffer, and whether consecutive store instructions are the same store instruction for the same address. And the mask information of each of the consecutive store instructions before writing to the store buffer when the same store instruction for the same address is detected by the detector. It has a selecting means for selecting data to be stored and a writing means for writing the data selected by the selecting means in the store buffer.
実施例 次に、本発明の一実施例について図面を参照して説明
する。Embodiment Next, an embodiment of the present invention will be described with reference to the drawings.
第1図は本発明の一実施例の構成を示すブロック図で
ある。図において、ストアアドレス/リクエスト登録ポ
インタ(WA0)(以下登録ポインタとする)1はストア
アドレスバッファ12およびストアリクエストバッファ13
にアドレスを供給する。FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention. In the figure, a store address / request registration pointer (WA0) (hereinafter referred to as a registration pointer) 1 is a store address buffer 12 and a store request buffer 13
Address.
よって、ストアアドレスバッファ12およびストアリク
エストバッファ13では登録ポインタ1により指定される
アドレスにストアアドレスおよびストアリクエストが登
録される。Therefore, in the store address buffer 12 and the store request buffer 13, the store address and the store request are registered at the address designated by the registration pointer 1.
ストアバッファ読出しポインタ(RA)(以下読出しポ
インタとする)2はストアアドレスバッフア12と、スト
アリクエストバッファ13と、ストアマスクバッファ17
と、ストアデータバッファ18とに夫々読出しアドレスを
供給する。A store buffer read pointer (RA) (hereinafter referred to as a read pointer) 2 is a store address buffer 12, a store request buffer 13, and a store mask buffer 17.
And a read address are supplied to the store data buffer 18, respectively.
これにより、ストアアドレスバッファ12の読出しポイ
ンタ2により指定されるアドレスからはストアアドレス
が、ストアリクエストバッファ13の読出しポインタ2に
より指定されるアドレスからはストアリクエストが、ス
トアマスクバッファ17の読出しポインタ2により指定さ
れるアドレスからはストアマスク情報が、ストアデータ
バッファ18の読出しポインタ2により指定されるアドレ
スからはストアデータが夫々読出されて主記憶装置19に
送出される。As a result, the store address is specified by the read pointer 2 of the store address buffer 12, the store request is specified by the read pointer 2 of the store request buffer 13, and the store request is specified by the read pointer 2 of the store mask buffer 17. Store mask information is read from the designated address, and store data is read from the address designated by the read pointer 2 of the store data buffer 18, and sent to the main storage device 19.
ストアアドレス登録待ちレジスタ(WA)(以下登録待
ちレジスタとする)3には次にストアアドレスバッファ
12に登録されるストアアドレスが一時保持され、該スト
アアドレスを一致検出コンパレータ8およびストアアド
レスバッファ12に送出する。The store address registration waiting register (WA) (hereinafter referred to as the registration waiting register) 3 has a store address buffer
The store address registered in 12 is temporarily held, and the store address is sent to the match detection comparator 8 and the store address buffer 12.
ストアリクエスト登録待ちレジスタ(WQ)(以下登録
待ちレジスタとする)4には次にストアリクエストバッ
ファ13に登録されるストアリクエストが一時保持され、
該ストアリクエストを一致検出コンパレータ9およびス
トアリクエストバッファ13に送出する。The store request registration waiting register (WQ) (hereinafter referred to as a registration waiting register) 4 temporarily stores the store request to be registered next in the store request buffer 13,
The store request is sent to the match detection comparator 9 and the store request buffer 13.
ストアマスク/データ登録ポインタ(WA1)(以下登
録ポインタとする)5はストアマスクバッファ17および
ストアデータバッファ18にアドレスを供給する。A store mask / data registration pointer (WA1) (hereinafter referred to as a registration pointer) 5 supplies an address to the store mask buffer 17 and the store data buffer 18.
よって、ストアマスクバッファ17およびストアデータ
バッファ18では登録ポインタ5により指定されるアドレ
スにストアマスク情報およびストアデータが登録され
る。Therefore, in the store mask buffer 17 and the store data buffer 18, the store mask information and the store data are registered at the address designated by the registration pointer 5.
ストアマスク登録待ちレジスタ(WM)(以下登録待ち
レジスタとする)6には次にストアマスクバッファ17に
登録されるストアマスク情報が一時保持され、該ストア
マスク情報をストアマスク制御部10に送出する。The store mask registration waiting register (WM) (hereinafter referred to as a registration waiting register) 6 temporarily stores the store mask information registered in the store mask buffer 17, and sends the store mask information to the store mask control unit 10. .
ストアデータ登録待ちレジスタ(WD)(以下登録待ち
レジスタとする)7には次にストアデータバッファ18に
登録されるストアデータが一時保持され、該ストアデー
タをセレクタ(WDX)11に送出する。The store data registration wait register (WD) (hereinafter referred to as a registration wait register) 7 temporarily stores the store data to be registered in the store data buffer 18, and sends the store data to the selector (WDX) 11.
一致検出コンパレータ8は登録待ちレジスタ3に保持
された先行するストア命令のストアアドレスと、登録待
ちレジスタ3に次に保持される後続するストア命令のス
トアアドレスとを比較し、その比較結果をアンドゲート
14に出力する。The match detection comparator 8 compares the store address of the preceding store instruction held in the registration waiting register 3 with the store address of the following store instruction held next in the registration waiting register 3, and ANDs the comparison result.
Output to 14.
すなわち、一致検出コンパレータ8は先行するストア
命令のアドレスと後続するストア命令のアドレスとが同
一アドレスか否かを検出している。That is, the match detection comparator 8 detects whether the address of the preceding store instruction and the address of the subsequent store instruction are the same address.
一致検出コンパレータは登録待ちレジスタ4に保持さ
れた先行するストア命令のストアリクエストと、登録待
ちレジスタ4に次に保持される後続するストア命令のス
トアリクエストとを比較し、その比較結果をアンドゲー
ト14に出力する。The match detection comparator compares the store request of the preceding store instruction held in the registration wait register 4 with the store request of the following store instruction held next in the registration wait register 4, and the comparison result is AND gate 14 Output to.
すなわち、一致検出コンパレータ9は先行するストア
命令のリクエストと後続するストア命令のリクエストと
が同一リクエストか否かを検出している。That is, the match detection comparator 9 detects whether the request for the preceding store instruction and the request for the subsequent store instruction are the same request.
ストアマスク制御部10はストア縮退指示遅延フリップ
フロップ(以下ストア縮退指示FFとする)15,16を介し
て入力されるアンドゲート14からのストア縮退指示に応
じて、登録待ちレジスタ6に保持された先行するストア
命令のストアマスク情報と、登録待ちレジスタ6に次に
保持される後続するストア命令のストアマスク情報とに
より、登録待ちレジスタ7に保持された先行するストア
命令のストアデータと、登録待ちレジスタ7に次に保持
される後続するストア命令のストアデータとのうちどち
らをストアデータバッファ18に登録するかを各バイト毎
に決定する。The store mask control unit 10 is held in the registration waiting register 6 in response to the store degeneration instruction from the AND gate 14 input via the store degeneration instruction delay flip-flops (hereinafter, store degeneration instruction FF) 15 and 16. According to the store mask information of the preceding store instruction and the store mask information of the following store instruction held next in the registration waiting register 6, the store data of the preceding store instruction held in the registration waiting register 7 and the registration waiting For each byte, it is determined which of the store data of the subsequent store instruction held in the register 7 is to be registered in the store data buffer 18.
すなわち、アンドゲート14からのストア縮退指示によ
りストア縮退が指示されたとき、ストアマスク制御部10
は先行するストア命令のストアマスク情報と後続するス
トア命令のストアマスク情報との論理和演算を行い、そ
の演算結果をストアマスクバッファ17に登録するととも
に、その演算結果によりセレクタ11を制御して先行する
ストア命令のストアデータと後続するストア命令のスト
アデータとのうちストアデータバッファ18に登録するス
トアデータを選択する。That is, when the store degeneration instruction is given by the store degeneration instruction from the AND gate 14, the store mask control unit 10
Performs an OR operation of the store mask information of the preceding store instruction and the store mask information of the following store instruction, registers the operation result in the store mask buffer 17, and controls the selector 11 according to the operation result to advance the operation. The store data to be registered in the store data buffer 18 is selected from the store data of the store instruction to be executed and the store data of the subsequent store instruction.
第2図は第1図のストアマスク制御部10の詳細を示す
図である。図において、ストアマスク制御部10はアンド
ゲート14からのストア縮退指示が“0"のとき、すなわち
ストア縮退を行わないとき、先行するストア命令のスト
アマスク情報および後続するストア命令のストアマスク
情報の“0",“1"に関係なく、先行するストア命令のス
トアデータをストアデータバッファ18に登録するように
決定する。FIG. 2 is a diagram showing the details of the store mask control unit 10 in FIG. In the figure, the store mask control unit 10 stores the store mask information of the preceding store instruction and the store mask information of the following store instruction when the store degeneration instruction from the AND gate 14 is "0", that is, when the store degeneration is not performed. Regardless of "0" or "1", it is determined that the store data of the preceding store instruction is registered in the store data buffer 18.
また、ストアマスク制御部10はアンドゲート14からの
ストア縮退指示が“1"のとき、すなわちストア縮退を行
うとき、先行するストア命令のストアマスク情報が“0"
で、後続するストア命令のストアマスク情報が“0"なら
ば、先行するストア命令のストアデータをストアデータ
バッファ18に登録するように決定する。When the store degeneration instruction from the AND gate 14 is "1", that is, when the store degeneration is performed, the store mask control unit 10 sets the store mask information of the preceding store instruction to "0".
Then, if the store mask information of the subsequent store instruction is “0”, it is determined that the store data of the preceding store instruction is registered in the store data buffer 18.
先行するストア命令のストアマスク情報が“0"で、後
続するストア命令のストアマスク情報が“1"ならば、後
続するストア命令のストアデータをストアデータバッフ
ァ18に登録するように決定する。If the store mask information of the preceding store instruction is "0" and the store mask information of the succeeding store instruction is "1", it is determined that the store data of the succeeding store instruction is registered in the store data buffer 18.
先行するストア命令のストアマスク情報が“1"で、後
続するストア命令のストアマスク情報が“0"ならば、先
行するストア命令のストアデータをストアデータバッフ
ァ18に登録するように決定する。If the store mask information of the preceding store instruction is "1" and the store mask information of the succeeding store instruction is "0", it is determined to register the store data of the preceding store instruction in the store data buffer 18.
先行するストア命令のストアマスク情報が“1"で、後
続するストア命令のストアマスク情報が“1"ならば、後
続するストア命令のストアデータをストアデータバッフ
ァ18に登録するように決定する。If the store mask information of the preceding store instruction is "1" and the store mask information of the succeeding store instruction is "1", it is determined that the store data of the succeeding store instruction is registered in the store data buffer 18.
第3図は本発明の一実施例の動作を示すタイムチャー
トであり、第4図は本発明の一実施例によるパイプライ
ン処理の一例を示す図である。第4図において、本発明
の一実施例によるパイプライン処理では、アドレスレジ
スタ(AIC)からのアドレスにより命令キャッシュから
命令を取出す命令取出し(IF)ステージと、このステー
ジで取出された命令を命令レジスタ(IR)に格納した後
にこの命令のオペランドに基づきアドレス加算器で論理
アドレスを生成するオペランドアドレス(AC)ステージ
と、このステージで生成された論理アドレスを論理アド
レスレジスタ(LAR)に格納した後にアドレス変換バッ
ファ(TLB)で論理アドレスを物理アドレスに変換する
アドレス変換(AT)ステージと、このステージで変換さ
れた物理アドレスを物理アドレスレジスタ(PAR)に格
納した後にこの物理アドレスでオペランドキャッシュを
アクセスしてオペランドを読出すオペランドキャッシュ
アクセス(CA)ステージと、このステージで読出された
オペランドを実行レジスタ(EXR)に格納した後に演算
器で演算する演算実行(EX)ステージと、このステージ
で演算された結果を読出しデータレジスタ(RDR)に格
納するストア命令縮退のためのストア命令縮退(SS)ス
テージと、その演算結果を登録待ちレジスタ(WD)に格
納する結果格納(ST)ステージの7ステージに分割され
ている。FIG. 3 is a time chart showing the operation of one embodiment of the present invention, and FIG. 4 is a diagram showing an example of pipeline processing according to one embodiment of the present invention. Referring to FIG. 4, in pipeline processing according to an embodiment of the present invention, an instruction fetch (IF) stage for fetching an instruction from an instruction cache by an address from an address register (AIC), and an instruction fetched at this stage Operand address (AC) stage that generates a logical address in the address adder based on the operand of this instruction after storing in (IR), and the address after storing the logical address generated in this stage in the logical address register (LAR) An address translation (AT) stage that translates a logical address into a physical address in the translation buffer (TLB), and the physical address translated in this stage is stored in the physical address register (PAR) and then the operand cache is accessed with this physical address. Operand cache access (CA) stage, an operation execution (EX) stage in which the operand read in this stage is stored in the execution register (EXR), and then is calculated in the arithmetic unit, and the result calculated in this stage is read in the data register (RDR ) Is divided into seven stages: a store instruction degenerate (SS) stage for degenerating a store instruction and a result storing (ST) stage for storing the operation result in a registration wait register (WD).
登録待ちレジスタに格納された演算結果は縮退されて
ストアバッファに格納され、ストアバッファから主記憶
装置に掃出される。The operation result stored in the registration waiting register is degenerated, stored in the store buffer, and swept from the store buffer to the main storage device.
これら第1図〜第4図を用いて本発明の一実施例の動
作について説明する。The operation of the embodiment of the present invention will be described with reference to FIGS.
タイミングt1においてストア命令であるSTA1命令の処
理が開始され、タイミングt2においてストア命令である
STA2命令の処理が開始される。このSTA2命令は命令取出
しステージから結果格納ステージまでSTA1命令の1T(タ
イミング)遅れで処理が行われる。Processing of the STA1 instruction, which is a store instruction, starts at timing t1, and it is a store instruction at timing t2.
Processing of the STA2 instruction is started. The STA2 instruction is processed with a delay of 1T (timing) from the STA1 instruction from the instruction fetch stage to the result storage stage.
タイミングt4において登録待ちレジスタ3および登録
待ちレジスタ4にSTA1命令のストアアドレスおよびスト
アリクエストが保持されているとき、アドレス変換ステ
ージにはSTA2命令のストアアドレスおよびストアリクエ
ストが登録されている。When the store address and store request of the STA1 instruction are held in the register wait register 3 and the register wait register 4 at the timing t4, the store address and store request of the STA2 instruction are registered in the address conversion stage.
よって、一致検出コンパレータ8は登録待ちレジスタ
3に保持されたSTA1命令のストアアドレスとアドレス変
換ステージのSTA2命令のストアアドレスとを比較し、そ
れらアドレスが一致するか否かを検出する。Therefore, the match detection comparator 8 compares the store address of the STA1 instruction held in the registration waiting register 3 with the store address of the STA2 instruction in the address conversion stage, and detects whether or not the addresses match.
また、一致検出コンパレータ9は登録待ちレジスタ4
に保持されたSTA1命令のストアリクエストとアドレス変
換ステージのSTA2命令のストアリクエストとを比較し、
それらのリクエストが一致するか否かを検出する。Further, the match detection comparator 9 has the registration waiting register 4
Comparing the store request of the STA1 instruction held in and the store request of the STA2 instruction of the address translation stage,
Detect if the requests match.
一致検出コンパレータ8,9から夫々“1"が出力される
と、STA1命令およびSTA2命令は主記憶装置19の同一アド
レスに対する同一種類のリクエストであると判断され、
ストア縮退が指示される。When “1” is output from each of the match detection comparators 8 and 9, it is determined that the STA1 instruction and the STA2 instruction are requests of the same type for the same address of the main storage device 19,
Store degeneration is instructed.
タイミングt5において、STA1命令およびSTA2命令の2
つの命令が1つのSTA3命令として、そのストアアドレス
およびストアリクエストが登録ポインタ1によって示さ
れるストアアドレスバッファ12およびストアリクエスト
バッファ13のワード位置に夫々登録される。At timing t5, 2 of STA1 instruction and STA2 instruction
One instruction is registered as one STA3 instruction in the store address and the store request at the word position of the store address buffer 12 and the store request buffer 13 indicated by the registration pointer 1, respectively.
通常、ストア命令処理においてはアドレスおよびリク
エストをストアバッファに登録するタイミングと、デー
タおよびマスク情報を登録するタイミングとが異なって
いる。Normally, in the store instruction processing, the timing of registering an address and a request in the store buffer is different from the timing of registering data and mask information.
すなわち、アドレスおよびリクエストはアドレス変換
ステージにおいて判断することができるが、データおよ
びマスク情報は演算実行ステージを経過しないと判断す
ることができない。That is, the address and the request can be determined in the address translation stage, but the data and the mask information cannot be determined until the operation execution stage has passed.
よって、演算実行ステージにおいてSTA2命令のストア
データが出力されるタイミングまで、STA1命令およびST
A2命令がストア縮退対象リクエストであることを示すス
トア縮退指示を保持しておかなければならないため、タ
イミングt5,t6においてストア縮退指示(D1,D2)が夫々
ストア縮退指示FF15,16に保持される。Therefore, until the timing at which the store data of the STA2 instruction is output in the operation execution stage, the STA1 instruction and ST
Since the store degeneration instruction indicating that the A2 instruction is a store degeneration target request must be held, the store degeneration instructions (D1, D2) are held in the store degeneration instructions FF15 and 16 at timings t5 and t6, respectively. .
タイミングt6では登録待ちレジスタ7にSTA1命令のス
トアデータが保持されており、演算実行ステージにはST
A2命令のストアデータが保持されている。At the timing t6, the store data of the STA1 instruction is held in the registration wait register 7, and the ST is stored in the operation execution stage.
Stored data of A2 instruction is held.
このとき、ストア縮退指示FF16には“1"が保持されて
いるので、タイミングt6においてSTA1命令のストアデー
タとSTA2命令のストアデータとのマージが行われ、タイ
ミングt7においてそのマージされたストアデータがスト
アデータバッファ18の登録ポインタ5によって示される
ワード位置にSTA3命令のストアデータとして登録され
る。At this time, since "1" is held in the store degeneration instruction FF16, the store data of the STA1 instruction and the store data of the STA2 instruction are merged at timing t6, and the merged store data is stored at timing t7. It is registered as the store data of the STA3 instruction at the word position indicated by the registration pointer 5 of the store data buffer 18.
ストアマスク制御部10ではストア縮退時に登録待ちレ
ジスタ7からのストアデータ(STA1命令のストアデー
タ)と演算実行ステージからのストアデータ(STA2命令
のストアデータ)とのうちどちらのストアデータをスト
アデータバッファ18に登録すればよいかを各バイト毎に
決定している。The store mask control unit 10 stores either the store data from the registration waiting register 7 (store data of the STA1 instruction) or the store data from the operation execution stage (store data of the STA2 instruction) in the store data buffer when the store is degenerated. It is decided for each byte whether to register in 18 or not.
すなわち、ストアデータバッファ18にはストアマスク
制御部10で登録待ちレジスタ6からのストアマスク情報
と演算実行ステージからのストアマスク情報との論理和
がとられた値によってマスクされたストアデータがSTA3
命令のストアデータとして登録される。That is, the store data buffer 18 stores the store data masked by the store mask control unit 10 with the value obtained by logically adding the store mask information from the registration wait register 6 and the store mask information from the operation execution stage to STA3.
Registered as instruction store data.
また、ストア縮退時にはストアマスク制御部10で登録
待ちレジスタ6からのストアマスク情報と演算実行ステ
ージからのストアマスク情報との論理和がとられた値
が、STA3命令のストアマスク情報としてストアマスクバ
ッファ17に登録される。Further, when the store is degenerated, the value obtained by the logical sum of the store mask information from the registration wait register 6 and the store mask information from the operation execution stage in the store mask control unit 10 is stored in the store mask buffer as the store mask information of the STA3 instruction. Registered in 17.
STA3命令のストアデータの登録が完了することによ
り、タイミングt7においてはストアバッファ内にSTA3命
令のストアアドレスとストアリクエストとストアマスク
情報とストアデータとが登録されており、タイミングt8
においてSTA3命令のストアアドレスとストアリクエスト
とストアマスク情報とストアデータとがストアバッファ
から主記憶装置19に掃出される。By the completion of the registration of the store data of the STA3 instruction, the store address of the STA3 instruction, the store request, the store mask information, and the store data are registered in the store buffer at the timing t7.
At, the store address, store request, store mask information, and store data of the STA3 instruction are swept from the store buffer to the main storage device 19.
このように、連続する2つのストア命令、すなわちST
A1命令およびSTA2命令とが主記憶装置19の同一アドレス
に対する同一ストアリクエストであることが、一致検出
コンパレータ8,9およびアンドゲート14により検出され
たとき、STA1命令のストアマスク情報およびSTA2命令の
ストアマスク情報によりSTA1命令のストアデータとSTA2
命令のストアデータとのマージを行ってからストアバッ
ファに登録するようにすることによって、ストアバッフ
ァからの掃出し時に主記憶装置19とのアクセスを1回に
削減することができる。Thus, two consecutive store instructions, namely ST
When it is detected by the match detection comparators 8 and 9 and the AND gate 14 that the A1 instruction and the STA2 instruction are the same store request to the same address of the main memory device 19, the store mask information of the STA1 instruction and the store of the STA2 instruction are stored. Stored data of STA1 instruction and STA2 by mask information
By merging the instruction with the store data and then registering it in the store buffer, it is possible to reduce the number of accesses to the main storage device 19 at the time of sweeping from the store buffer.
よって、連続する2つのストア命令が主記憶装置19の
同一アドレスに対する同一のストア命令であるときにス
トア命令処理の高速化を図ることができる。Therefore, when two consecutive store instructions are the same store instruction for the same address in the main storage device 19, the speed of the store instruction processing can be increased.
発明の効果 以上説明したように本発明によれば、連続するストア
命令が同一アドレスに対する同一のストア命令であるこ
とが検出されたとき、この連続するストア命令各々のマ
スク情報により有効とされるデータをストアバッファに
書込むようにすることによって、連続する2つのストア
命令が主記憶装置の同一アドレスに対する同一のストア
命令であるときにストア命令処理の高速化を図ることが
できるという効果がある。As described above, according to the present invention, when it is detected that consecutive store instructions are the same store instruction for the same address, the data validated by the mask information of each of the consecutive store instructions. Is written in the store buffer, the speed of the store instruction processing can be increased when two consecutive store instructions are the same store instruction for the same address in the main memory.
第1図は本発明の一実施例の構成を示すブロック図、第
2図は第1図のストアマスク制御部の詳細を示す図、第
3図は本発明の一実施例の動作を示すタイムチャート、
第4図は本発明の一実施例によるパイプライン処理の一
例を示す図である。 主要部分の符号の説明 3……ストアアドレス登録待ちレジスタ 4……ストアリクエスト登録待ちレジスタ 6……ストアマスク登録待ちレジスタ 7……ストアデータ登録待ちレジスタ 8,9……一致検出コンパレータ 10……ストアマスク制御部 11……セレクタ 12……ストアアドレスバッファ 13……ストアリクエストバッファ 14……アンドゲート 17……ストアマスクバッファ 18……ストアデータバッファ 19……主記憶装置FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention, FIG. 2 is a diagram showing details of a store mask control unit of FIG. 1, and FIG. 3 is a time showing an operation of an embodiment of the present invention. chart,
FIG. 4 is a diagram showing an example of pipeline processing according to an embodiment of the present invention. Description of main part code 3 …… Store address registration wait register 4 …… Store request registration wait register 6 …… Store mask registration wait register 7 …… Store data registration wait register 8,9 …… Match detection comparator 10 …… Store Mask control unit 11 …… Selector 12 …… Store address buffer 13 …… Store request buffer 14 …… And gate 17 …… Store mask buffer 18 …… Store data buffer 19 …… Main memory
Claims (1)
データをストアバッファに一時保持する情報処理装置で
あって、連続するストア命令が同一アドレスに対する同
一のストア命令か否かを検出する検出手段と、前記検出
手段により前記同一アドレスに対する同一のストア命令
であることが検出されたときに前記ストアバッファに書
込む前に前記連続するストア命令各々のマスク情報で有
効とされるデータを選択する選択手段と、前記選択手段
で選択されたデータを前記ストアバッファに書込む書込
み手段とを有することを特徴とする情報処理装置。1. An information processing device for temporarily holding data stored in a main storage device by a store instruction in a store buffer, and detecting means for detecting whether consecutive store instructions are the same store instruction for the same address. And a selection for selecting valid data in mask information of each of the successive store instructions before writing to the store buffer when the detecting means detects that the same store instruction is for the same address. An information processing apparatus comprising: means and writing means for writing the data selected by the selecting means into the store buffer.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1238515A JPH081613B2 (en) | 1989-09-14 | 1989-09-14 | Information processing device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1238515A JPH081613B2 (en) | 1989-09-14 | 1989-09-14 | Information processing device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03100842A JPH03100842A (en) | 1991-04-25 |
| JPH081613B2 true JPH081613B2 (en) | 1996-01-10 |
Family
ID=17031401
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1238515A Expired - Lifetime JPH081613B2 (en) | 1989-09-14 | 1989-09-14 | Information processing device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH081613B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05197609A (en) * | 1992-01-21 | 1993-08-06 | Nec Corp | Store buffer managing system |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58208982A (en) * | 1982-05-31 | 1983-12-05 | Nec Corp | Store buffer |
-
1989
- 1989-09-14 JP JP1238515A patent/JPH081613B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH03100842A (en) | 1991-04-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0381470B1 (en) | Processing of memory access exceptions along with prefetched instructions within the instruction pipeline of a virtual memory system-based digital computer | |
| EP0381447B1 (en) | Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system | |
| JP4045062B2 (en) | Method, processor, and system for executing load instructions | |
| US6523109B1 (en) | Store queue multimatch detection | |
| US5961633A (en) | Execution of data processing instructions | |
| US6301654B1 (en) | System and method for permitting out-of-order execution of load and store instructions | |
| JPH0630075B2 (en) | Data processing device having cache memory | |
| 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 | |
| JP4131789B2 (en) | Cache control apparatus and method | |
| US5860096A (en) | Multi-level instruction cache for a computer | |
| JP3164732B2 (en) | Data processing device | |
| JP3013996B2 (en) | Information processing device | |
| JPH03100842A (en) | Information processor | |
| AU612035B2 (en) | Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit | |
| JP3645671B2 (en) | Processor device having instruction buffer | |
| JP3270368B2 (en) | Storage access processor | |
| JPS6240554A (en) | Buffer memory block prefetching system | |
| JPH03231344A (en) | Bus monitor circuit for cache | |
| JPH03154947A (en) | Information processor | |
| JPH05298185A (en) | Virtual storage system and device | |
| JPH08212068A (en) | Information processing device | |
| JPH05197609A (en) | Store buffer managing system | |
| JPS6191725A (en) | Address matching control system | |
| JP2002149438A (en) | Recovery control buffer storage control method | |
| JPH07334421A (en) | Cache memory controller |