JPH081613B2 - 情報処理装置 - Google Patents

情報処理装置

Info

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
Application number
JP1238515A
Other languages
English (en)
Other versions
JPH03100842A (ja
Inventor
文彦 宮沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP1238515A priority Critical patent/JPH081613B2/ja
Publication of JPH03100842A publication Critical patent/JPH03100842A/ja
Publication of JPH081613B2 publication Critical patent/JPH081613B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Advance Control (AREA)

Description

【発明の詳細な説明】 技術分野 本発明は情報処理装置に関し、特にパイプライン処理
型情報処理装置におけるストア命令の高速処理方式に関
する。
従来技術 従来、パイプライン処理型情報処理装置においては、
ストアバッファから主記憶装置への掃出しがストアバッ
ファのワード単位に行われていた。
よって、ストアバッファ内に主記憶装置の同一アドレ
スに対する2つのストア命令が連続して登録されていた
場合、ストアバッファから主記憶装置への掃出しを行う
ために主記憶装置の同一アドレスに対して2回のアクセ
スが必要であった。
このような従来のパイプライン処理型情報処理装置で
は、ストアバッファ内の連続する2つのストア命令が主
記憶装置の同一アドレスに対する同一のストア命令であ
る場合でも、主記憶装置とのアクセスが2回必要であ
り、中央処理装置と主記憶装置との間の信号アクセス時
間が中央処理装置内における信号アクセス時間よりも遅
いため、ストア命令処理を高速化することができないと
いう欠点がある。
発明の目的 本発明は上記のような従来のものの欠点を除去すべく
なされたもので、連続する2つのストア命令が主記憶装
置の同一アドレスに対する同一のストア命令であるとき
にストア命令処理の高速化を図ることができる情報処理
装置の提供を目的とする。
発明の構成 本発明による情報処理装置は、ストア命令により主記
憶装置に格納されるデータをストアバッファに一時保持
する情報処理装置であって、連続するストア命令が同一
アドレスに対する同一のストア命令か否かを検出する検
出手段と、前記検出手段により前記同一アドレスに対す
る同一のストア命令であることが検出されたときに前記
ストアバッファに書込む前に前記連続するストア命令各
々のマスク情報で有効とされるデータを選択する選択手
段と、前記選択手段で選択されたデータを前記ストアバ
ッファに書込む書込み手段とを有することを特徴とす
る。
実施例 次に、本発明の一実施例について図面を参照して説明
する。
第1図は本発明の一実施例の構成を示すブロック図で
ある。図において、ストアアドレス/リクエスト登録ポ
インタ(WA0)(以下登録ポインタとする)1はストア
アドレスバッファ12およびストアリクエストバッファ13
にアドレスを供給する。
よって、ストアアドレスバッファ12およびストアリク
エストバッファ13では登録ポインタ1により指定される
アドレスにストアアドレスおよびストアリクエストが登
録される。
ストアバッファ読出しポインタ(RA)(以下読出しポ
インタとする)2はストアアドレスバッフア12と、スト
アリクエストバッファ13と、ストアマスクバッファ17
と、ストアデータバッファ18とに夫々読出しアドレスを
供給する。
これにより、ストアアドレスバッファ12の読出しポイ
ンタ2により指定されるアドレスからはストアアドレス
が、ストアリクエストバッファ13の読出しポインタ2に
より指定されるアドレスからはストアリクエストが、ス
トアマスクバッファ17の読出しポインタ2により指定さ
れるアドレスからはストアマスク情報が、ストアデータ
バッファ18の読出しポインタ2により指定されるアドレ
スからはストアデータが夫々読出されて主記憶装置19に
送出される。
ストアアドレス登録待ちレジスタ(WA)(以下登録待
ちレジスタとする)3には次にストアアドレスバッファ
12に登録されるストアアドレスが一時保持され、該スト
アアドレスを一致検出コンパレータ8およびストアアド
レスバッファ12に送出する。
ストアリクエスト登録待ちレジスタ(WQ)(以下登録
待ちレジスタとする)4には次にストアリクエストバッ
ファ13に登録されるストアリクエストが一時保持され、
該ストアリクエストを一致検出コンパレータ9およびス
トアリクエストバッファ13に送出する。
ストアマスク/データ登録ポインタ(WA1)(以下登
録ポインタとする)5はストアマスクバッファ17および
ストアデータバッファ18にアドレスを供給する。
よって、ストアマスクバッファ17およびストアデータ
バッファ18では登録ポインタ5により指定されるアドレ
スにストアマスク情報およびストアデータが登録され
る。
ストアマスク登録待ちレジスタ(WM)(以下登録待ち
レジスタとする)6には次にストアマスクバッファ17に
登録されるストアマスク情報が一時保持され、該ストア
マスク情報をストアマスク制御部10に送出する。
ストアデータ登録待ちレジスタ(WD)(以下登録待ち
レジスタとする)7には次にストアデータバッファ18に
登録されるストアデータが一時保持され、該ストアデー
タをセレクタ(WDX)11に送出する。
一致検出コンパレータ8は登録待ちレジスタ3に保持
された先行するストア命令のストアアドレスと、登録待
ちレジスタ3に次に保持される後続するストア命令のス
トアアドレスとを比較し、その比較結果をアンドゲート
14に出力する。
すなわち、一致検出コンパレータ8は先行するストア
命令のアドレスと後続するストア命令のアドレスとが同
一アドレスか否かを検出している。
一致検出コンパレータは登録待ちレジスタ4に保持さ
れた先行するストア命令のストアリクエストと、登録待
ちレジスタ4に次に保持される後続するストア命令のス
トアリクエストとを比較し、その比較結果をアンドゲー
ト14に出力する。
すなわち、一致検出コンパレータ9は先行するストア
命令のリクエストと後続するストア命令のリクエストと
が同一リクエストか否かを検出している。
ストアマスク制御部10はストア縮退指示遅延フリップ
フロップ(以下ストア縮退指示FFとする)15,16を介し
て入力されるアンドゲート14からのストア縮退指示に応
じて、登録待ちレジスタ6に保持された先行するストア
命令のストアマスク情報と、登録待ちレジスタ6に次に
保持される後続するストア命令のストアマスク情報とに
より、登録待ちレジスタ7に保持された先行するストア
命令のストアデータと、登録待ちレジスタ7に次に保持
される後続するストア命令のストアデータとのうちどち
らをストアデータバッファ18に登録するかを各バイト毎
に決定する。
すなわち、アンドゲート14からのストア縮退指示によ
りストア縮退が指示されたとき、ストアマスク制御部10
は先行するストア命令のストアマスク情報と後続するス
トア命令のストアマスク情報との論理和演算を行い、そ
の演算結果をストアマスクバッファ17に登録するととも
に、その演算結果によりセレクタ11を制御して先行する
ストア命令のストアデータと後続するストア命令のスト
アデータとのうちストアデータバッファ18に登録するス
トアデータを選択する。
第2図は第1図のストアマスク制御部10の詳細を示す
図である。図において、ストアマスク制御部10はアンド
ゲート14からのストア縮退指示が“0"のとき、すなわち
ストア縮退を行わないとき、先行するストア命令のスト
アマスク情報および後続するストア命令のストアマスク
情報の“0",“1"に関係なく、先行するストア命令のス
トアデータをストアデータバッファ18に登録するように
決定する。
また、ストアマスク制御部10はアンドゲート14からの
ストア縮退指示が“1"のとき、すなわちストア縮退を行
うとき、先行するストア命令のストアマスク情報が“0"
で、後続するストア命令のストアマスク情報が“0"なら
ば、先行するストア命令のストアデータをストアデータ
バッファ18に登録するように決定する。
先行するストア命令のストアマスク情報が“0"で、後
続するストア命令のストアマスク情報が“1"ならば、後
続するストア命令のストアデータをストアデータバッフ
ァ18に登録するように決定する。
先行するストア命令のストアマスク情報が“1"で、後
続するストア命令のストアマスク情報が“0"ならば、先
行するストア命令のストアデータをストアデータバッフ
ァ18に登録するように決定する。
先行するストア命令のストアマスク情報が“1"で、後
続するストア命令のストアマスク情報が“1"ならば、後
続するストア命令のストアデータをストアデータバッフ
ァ18に登録するように決定する。
第3図は本発明の一実施例の動作を示すタイムチャー
トであり、第4図は本発明の一実施例によるパイプライ
ン処理の一例を示す図である。第4図において、本発明
の一実施例によるパイプライン処理では、アドレスレジ
スタ(AIC)からのアドレスにより命令キャッシュから
命令を取出す命令取出し(IF)ステージと、このステー
ジで取出された命令を命令レジスタ(IR)に格納した後
にこの命令のオペランドに基づきアドレス加算器で論理
アドレスを生成するオペランドアドレス(AC)ステージ
と、このステージで生成された論理アドレスを論理アド
レスレジスタ(LAR)に格納した後にアドレス変換バッ
ファ(TLB)で論理アドレスを物理アドレスに変換する
アドレス変換(AT)ステージと、このステージで変換さ
れた物理アドレスを物理アドレスレジスタ(PAR)に格
納した後にこの物理アドレスでオペランドキャッシュを
アクセスしてオペランドを読出すオペランドキャッシュ
アクセス(CA)ステージと、このステージで読出された
オペランドを実行レジスタ(EXR)に格納した後に演算
器で演算する演算実行(EX)ステージと、このステージ
で演算された結果を読出しデータレジスタ(RDR)に格
納するストア命令縮退のためのストア命令縮退(SS)ス
テージと、その演算結果を登録待ちレジスタ(WD)に格
納する結果格納(ST)ステージの7ステージに分割され
ている。
登録待ちレジスタに格納された演算結果は縮退されて
ストアバッファに格納され、ストアバッファから主記憶
装置に掃出される。
これら第1図〜第4図を用いて本発明の一実施例の動
作について説明する。
タイミングt1においてストア命令であるSTA1命令の処
理が開始され、タイミングt2においてストア命令である
STA2命令の処理が開始される。このSTA2命令は命令取出
しステージから結果格納ステージまでSTA1命令の1T(タ
イミング)遅れで処理が行われる。
タイミングt4において登録待ちレジスタ3および登録
待ちレジスタ4にSTA1命令のストアアドレスおよびスト
アリクエストが保持されているとき、アドレス変換ステ
ージにはSTA2命令のストアアドレスおよびストアリクエ
ストが登録されている。
よって、一致検出コンパレータ8は登録待ちレジスタ
3に保持されたSTA1命令のストアアドレスとアドレス変
換ステージのSTA2命令のストアアドレスとを比較し、そ
れらアドレスが一致するか否かを検出する。
また、一致検出コンパレータ9は登録待ちレジスタ4
に保持されたSTA1命令のストアリクエストとアドレス変
換ステージのSTA2命令のストアリクエストとを比較し、
それらのリクエストが一致するか否かを検出する。
一致検出コンパレータ8,9から夫々“1"が出力される
と、STA1命令およびSTA2命令は主記憶装置19の同一アド
レスに対する同一種類のリクエストであると判断され、
ストア縮退が指示される。
タイミングt5において、STA1命令およびSTA2命令の2
つの命令が1つのSTA3命令として、そのストアアドレス
およびストアリクエストが登録ポインタ1によって示さ
れるストアアドレスバッファ12およびストアリクエスト
バッファ13のワード位置に夫々登録される。
通常、ストア命令処理においてはアドレスおよびリク
エストをストアバッファに登録するタイミングと、デー
タおよびマスク情報を登録するタイミングとが異なって
いる。
すなわち、アドレスおよびリクエストはアドレス変換
ステージにおいて判断することができるが、データおよ
びマスク情報は演算実行ステージを経過しないと判断す
ることができない。
よって、演算実行ステージにおいてSTA2命令のストア
データが出力されるタイミングまで、STA1命令およびST
A2命令がストア縮退対象リクエストであることを示すス
トア縮退指示を保持しておかなければならないため、タ
イミングt5,t6においてストア縮退指示(D1,D2)が夫々
ストア縮退指示FF15,16に保持される。
タイミングt6では登録待ちレジスタ7にSTA1命令のス
トアデータが保持されており、演算実行ステージにはST
A2命令のストアデータが保持されている。
このとき、ストア縮退指示FF16には“1"が保持されて
いるので、タイミングt6においてSTA1命令のストアデー
タとSTA2命令のストアデータとのマージが行われ、タイ
ミングt7においてそのマージされたストアデータがスト
アデータバッファ18の登録ポインタ5によって示される
ワード位置にSTA3命令のストアデータとして登録され
る。
ストアマスク制御部10ではストア縮退時に登録待ちレ
ジスタ7からのストアデータ(STA1命令のストアデー
タ)と演算実行ステージからのストアデータ(STA2命令
のストアデータ)とのうちどちらのストアデータをスト
アデータバッファ18に登録すればよいかを各バイト毎に
決定している。
すなわち、ストアデータバッファ18にはストアマスク
制御部10で登録待ちレジスタ6からのストアマスク情報
と演算実行ステージからのストアマスク情報との論理和
がとられた値によってマスクされたストアデータがSTA3
命令のストアデータとして登録される。
また、ストア縮退時にはストアマスク制御部10で登録
待ちレジスタ6からのストアマスク情報と演算実行ステ
ージからのストアマスク情報との論理和がとられた値
が、STA3命令のストアマスク情報としてストアマスクバ
ッファ17に登録される。
STA3命令のストアデータの登録が完了することによ
り、タイミングt7においてはストアバッファ内にSTA3命
令のストアアドレスとストアリクエストとストアマスク
情報とストアデータとが登録されており、タイミングt8
においてSTA3命令のストアアドレスとストアリクエスト
とストアマスク情報とストアデータとがストアバッファ
から主記憶装置19に掃出される。
このように、連続する2つのストア命令、すなわちST
A1命令およびSTA2命令とが主記憶装置19の同一アドレス
に対する同一ストアリクエストであることが、一致検出
コンパレータ8,9およびアンドゲート14により検出され
たとき、STA1命令のストアマスク情報およびSTA2命令の
ストアマスク情報によりSTA1命令のストアデータとSTA2
命令のストアデータとのマージを行ってからストアバッ
ファに登録するようにすることによって、ストアバッフ
ァからの掃出し時に主記憶装置19とのアクセスを1回に
削減することができる。
よって、連続する2つのストア命令が主記憶装置19の
同一アドレスに対する同一のストア命令であるときにス
トア命令処理の高速化を図ることができる。
発明の効果 以上説明したように本発明によれば、連続するストア
命令が同一アドレスに対する同一のストア命令であるこ
とが検出されたとき、この連続するストア命令各々のマ
スク情報により有効とされるデータをストアバッファに
書込むようにすることによって、連続する2つのストア
命令が主記憶装置の同一アドレスに対する同一のストア
命令であるときにストア命令処理の高速化を図ることが
できるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示すブロック図、第
2図は第1図のストアマスク制御部の詳細を示す図、第
3図は本発明の一実施例の動作を示すタイムチャート、
第4図は本発明の一実施例によるパイプライン処理の一
例を示す図である。 主要部分の符号の説明 3……ストアアドレス登録待ちレジスタ 4……ストアリクエスト登録待ちレジスタ 6……ストアマスク登録待ちレジスタ 7……ストアデータ登録待ちレジスタ 8,9……一致検出コンパレータ 10……ストアマスク制御部 11……セレクタ 12……ストアアドレスバッファ 13……ストアリクエストバッファ 14……アンドゲート 17……ストアマスクバッファ 18……ストアデータバッファ 19……主記憶装置

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】ストア命令により主記憶装置に格納される
    データをストアバッファに一時保持する情報処理装置で
    あって、連続するストア命令が同一アドレスに対する同
    一のストア命令か否かを検出する検出手段と、前記検出
    手段により前記同一アドレスに対する同一のストア命令
    であることが検出されたときに前記ストアバッファに書
    込む前に前記連続するストア命令各々のマスク情報で有
    効とされるデータを選択する選択手段と、前記選択手段
    で選択されたデータを前記ストアバッファに書込む書込
    み手段とを有することを特徴とする情報処理装置。
JP1238515A 1989-09-14 1989-09-14 情報処理装置 Expired - Lifetime JPH081613B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1238515A JPH081613B2 (ja) 1989-09-14 1989-09-14 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1238515A JPH081613B2 (ja) 1989-09-14 1989-09-14 情報処理装置

Publications (2)

Publication Number Publication Date
JPH03100842A JPH03100842A (ja) 1991-04-25
JPH081613B2 true JPH081613B2 (ja) 1996-01-10

Family

ID=17031401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1238515A Expired - Lifetime JPH081613B2 (ja) 1989-09-14 1989-09-14 情報処理装置

Country Status (1)

Country Link
JP (1) JPH081613B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05197609A (ja) * 1992-01-21 1993-08-06 Nec Corp ストアバッファ管理方式

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58208982A (ja) * 1982-05-31 1983-12-05 Nec Corp ストアバツフア

Also Published As

Publication number Publication date
JPH03100842A (ja) 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
EP0391517B1 (en) Method and apparatus for ordering and queueing multiple memory access requests
EP0381447B1 (en) Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system
JP4045062B2 (ja) ロード命令を実行する方法、プロセッサ、およびシステム
US6523109B1 (en) Store queue multimatch detection
US6266768B1 (en) System and method for permitting out-of-order execution of load instructions
US5961633A (en) Execution of data processing instructions
US6301654B1 (en) System and method for permitting out-of-order execution of load and store instructions
JPH0630075B2 (ja) キャッシュメモリを有するデータ処理装置
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 (ja) キャッシュ制御装置および方法
US5860096A (en) Multi-level instruction cache for a computer
JP3164732B2 (ja) データ処理装置
JPH081613B2 (ja) 情報処理装置
JP3013996B2 (ja) 情報処理装置
AU612035B2 (en) Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit
JP3270368B2 (ja) 記憶アクセス処理装置
JPS6240554A (ja) バツフアメモリブロツク先取り方式
JPH03231344A (ja) キャッシュ用バスモニタ回路
JPH05298185A (ja) 仮想記憶方式および装置
JPH05197609A (ja) ストアバッファ管理方式
JPS6191725A (ja) アドレスマツチ制御方式
JP2002149438A (ja) リカバリ制御用バッファ記憶の制御方法
JPH07334421A (ja) キャッシュメモリ制御装置
JPH07234817A (ja) アドレス変換方法