JPH01255933A - 掃出し制御方式 - Google Patents
掃出し制御方式Info
- Publication number
- JPH01255933A JPH01255933A JP63084616A JP8461688A JPH01255933A JP H01255933 A JPH01255933 A JP H01255933A JP 63084616 A JP63084616 A JP 63084616A JP 8461688 A JP8461688 A JP 8461688A JP H01255933 A JPH01255933 A JP H01255933A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- buffer
- register
- store buffer
- store
- 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.)
- Granted
Links
- 230000004044 response Effects 0.000 claims description 10
- 238000010926 purge Methods 0.000 claims description 8
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 238000011010 flushing procedure Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000013519 translation Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 2
- 230000002401 inhibitory effect Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 101100301218 Arabidopsis thaliana RDR5 gene Proteins 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
技術分野
本発明は掃出し制御方式に関し、特に10以上のストア
を必要とする命令の演算処理において、ストアバッファ
から主記憶装置への掃出し制御方式に関する。
を必要とする命令の演算処理において、ストアバッファ
から主記憶装置への掃出し制御方式に関する。
延未韮韮
従来のパイプライン処理型情報処理装置でのパイプライ
ン処理は次のようにして行なわれる。第4図を参照する
と、このパイプライン処理の一例では、アドレス手段に
より命令キャッシュから命令を取出す命令取出(IF)
ステージ、このステージで取出された命令を命令レジス
タに格納したあとこの命令のオペランドにもとづきアド
レス加算器で論理アドレスを生成するオペランドアドレ
ス(AC)ステージ、このステージで生成された論理ア
゛ドレスを論理アドレスレジスタに格納したあとアドレ
ス変換バッファで論理アドレスを物理アドレスに変換す
るアドレス変換(AT)ステージ、このステージで変換
された物理アドレスを物理アドレスレジスタに格納した
あと、この物理アドレスでオペランドキャッシュをアク
セスしオペランドを読出すオペランドキャ・ンシュアク
セス(CA)ステージ、このステージで読出されたオペ
ランドを実行レジスタに格納したあと演算器で演算する
演算実行(EX)ステージ、およびこの(EX)ステー
ジで演算された結果を格納する結果格納(ST)ステー
ジの6つのステージに分割されている。
ン処理は次のようにして行なわれる。第4図を参照する
と、このパイプライン処理の一例では、アドレス手段に
より命令キャッシュから命令を取出す命令取出(IF)
ステージ、このステージで取出された命令を命令レジス
タに格納したあとこの命令のオペランドにもとづきアド
レス加算器で論理アドレスを生成するオペランドアドレ
ス(AC)ステージ、このステージで生成された論理ア
゛ドレスを論理アドレスレジスタに格納したあとアドレ
ス変換バッファで論理アドレスを物理アドレスに変換す
るアドレス変換(AT)ステージ、このステージで変換
された物理アドレスを物理アドレスレジスタに格納した
あと、この物理アドレスでオペランドキャッシュをアク
セスしオペランドを読出すオペランドキャ・ンシュアク
セス(CA)ステージ、このステージで読出されたオペ
ランドを実行レジスタに格納したあと演算器で演算する
演算実行(EX)ステージ、およびこの(EX)ステー
ジで演算された結果を格納する結果格納(ST)ステー
ジの6つのステージに分割されている。
第5図を参照すると、従来この種のパイプライン処理型
情報処理装置では、−命令が全てストアバッファに格納
し終るまで主記憶装置への格納が抑止されていた。すな
わち4バイトである命令Aは、タイミング10で命令A
の4バイト目が格納されてから次のタイミング11で命
令Aの1バイト目か掃出される。また2バイト命令であ
る命令Bのストアバッファから主記憶装置への掃出しは
、命令Aの全てが掃出された後、タイミング15で行な
われることになる。
情報処理装置では、−命令が全てストアバッファに格納
し終るまで主記憶装置への格納が抑止されていた。すな
わち4バイトである命令Aは、タイミング10で命令A
の4バイト目が格納されてから次のタイミング11で命
令Aの1バイト目か掃出される。また2バイト命令であ
る命令Bのストアバッファから主記憶装置への掃出しは
、命令Aの全てが掃出された後、タイミング15で行な
われることになる。
よって、命令Aのように一命令で多くのストア処理をし
なければならない命令では、命令リトライ不可期間か長
くなるという欠点がある。
なければならない命令では、命令リトライ不可期間か長
くなるという欠点がある。
発明の目的
本発明の目的は上述の欠点を除去するようにした掃出し
制御方式を提供することにある。
制御方式を提供することにある。
1匪二塁式
本発明による掃出し制御方式は、複数回のスl−ア動作
で一命令関連の情報を格納するストアバッファ手段と、
このストアバッファ手段に格納される一命令関連の情報
の最終回のストア動作に応答して値を増加させるか減少
させ、前記ストアバッファ手段からの掃出し動作に応答
して値を減少させるか増加させるストアバッファ掃出し
ポインタ手段と、このストアバッフア掃出しポインタ手
段の値が前記ストアバッファ手段からの掃出し対象とな
る命令関連の情報がないことを示しているとき前記スト
アバッファ手段からの掃出し動作を抑止する抑止手段と
を含む構成である。
で一命令関連の情報を格納するストアバッファ手段と、
このストアバッファ手段に格納される一命令関連の情報
の最終回のストア動作に応答して値を増加させるか減少
させ、前記ストアバッファ手段からの掃出し動作に応答
して値を減少させるか増加させるストアバッファ掃出し
ポインタ手段と、このストアバッフア掃出しポインタ手
段の値が前記ストアバッファ手段からの掃出し対象とな
る命令関連の情報がないことを示しているとき前記スト
アバッファ手段からの掃出し動作を抑止する抑止手段と
を含む構成である。
聚豊彊
次に本発明の一実施例について詳細に説明する。
まず、本発明の一実施例の前提となる回路について簡単
に説明する。第1図を参照すると、命令取出しく1F)
ステージの処理のため主記憶装置8から読出された命令
を格納する命令キャッシュ■Cache 、この命令キ
ャッシュI Cacheにアドレスを供給するアドレス
レジスタ八IC1このアドレスレジスタ^ICの内容を
更新するためのインクリメンタ+1、命令キャッシュI
Cacheからの命令を一旦格納するための命令バッ
ファIBおよび命令キャンシュI Cacheおよび命
令バッファ1Bのうちどちらか一方からの命令を選択す
るためのセレクタ21を備えている。
に説明する。第1図を参照すると、命令取出しく1F)
ステージの処理のため主記憶装置8から読出された命令
を格納する命令キャッシュ■Cache 、この命令キ
ャッシュI Cacheにアドレスを供給するアドレス
レジスタ八IC1このアドレスレジスタ^ICの内容を
更新するためのインクリメンタ+1、命令キャッシュI
Cacheからの命令を一旦格納するための命令バッ
ファIBおよび命令キャンシュI Cacheおよび命
令バッファ1Bのうちどちらか一方からの命令を選択す
るためのセレクタ21を備えている。
オペランドアドレス生成〈^C)ステージでは、セレク
タ21で選択出力された変更後の命令を格納する命令レ
ジスタlR2O、この命令レジスタlR2Oからのアド
レスまたはその値により索引されるアドレスを格納する
ためのレジスタ8RおよびGRlおよびこの命令レジス
タlR2O、レジスタBRおよびGRからの値を計算し
アドレスを生成するためのアドレス演算器AD、^DD
ERが必要である。
タ21で選択出力された変更後の命令を格納する命令レ
ジスタlR2O、この命令レジスタlR2Oからのアド
レスまたはその値により索引されるアドレスを格納する
ためのレジスタ8RおよびGRlおよびこの命令レジス
タlR2O、レジスタBRおよびGRからの値を計算し
アドレスを生成するためのアドレス演算器AD、^DD
ERが必要である。
アドレス変換(AT)ステージのためには、アドレス演
算器AD、へ〇〇ERから与えられる論理アドレスを格
納する論理アドレスレジスタLARおよびこの論理アド
レスに応答して物理アドレスを読出すなめのアドレス変
換バッファTLBが用意されている。
算器AD、へ〇〇ERから与えられる論理アドレスを格
納する論理アドレスレジスタLARおよびこの論理アド
レスに応答して物理アドレスを読出すなめのアドレス変
換バッファTLBが用意されている。
次にキャッシュアクセス(CA)ステージの処理のため
アドレス変換バッファTLBから与えられる物理アドレ
スを格納するための物理アドレスレジスタPAIt 、
このヰ勿理アドレスレジスタPARからのアドレス情報
で指示される位置に主記憶装置8からのオペランドを格
納し、格納されたオペランドを読出すためのオペランド
キャッシュOC’achc、レジスタ群BRおよびGR
1更にこれらレジスタ群BftおよびGltからの内容
を選択するためのセレクタ22が用意されている。
アドレス変換バッファTLBから与えられる物理アドレ
スを格納するための物理アドレスレジスタPAIt 、
このヰ勿理アドレスレジスタPARからのアドレス情報
で指示される位置に主記憶装置8からのオペランドを格
納し、格納されたオペランドを読出すためのオペランド
キャッシュOC’achc、レジスタ群BRおよびGR
1更にこれらレジスタ群BftおよびGltからの内容
を選択するためのセレクタ22が用意されている。
演算実行(EX)ステージのためには、演算を行うため
の演算器FLT、ADD 、桁合わせを行うためのシフ
タSHT 、これら演算器FLT、ADD 、シフタS
HTおよびオペランドキャッシュOCacheからの
演算結果、演算中間結果およびオペランドを格納するた
めの実行レジスタEXIt 、セレクタ22からの内容
および演算器FLT 、 ADDアドレスおよびシフタ
SHTからの演算結果、演算中間結果を格納するための
レジスタREGISTER2実行レジスタEXRおよび
レジスタREGISTERからの情報を入力し、命令カ
ウンタ15の更新指示を線101に出力する演算制御部
1が設けられている。
の演算器FLT、ADD 、桁合わせを行うためのシフ
タSHT 、これら演算器FLT、ADD 、シフタS
HTおよびオペランドキャッシュOCacheからの
演算結果、演算中間結果およびオペランドを格納するた
めの実行レジスタEXIt 、セレクタ22からの内容
および演算器FLT 、 ADDアドレスおよびシフタ
SHTからの演算結果、演算中間結果を格納するための
レジスタREGISTER2実行レジスタEXRおよび
レジスタREGISTERからの情報を入力し、命令カ
ウンタ15の更新指示を線101に出力する演算制御部
1が設けられている。
結果格納(ST)ステージでは、演算器FLT、ADD
およびシフタSHTからの演算結果を格納するためのリ
ードデータレジスタRDII 5の他、書込みアドレス
をセットする書込アドレスレジスタ誓へ2、このレジス
タWA2からの書込みアドレスを+1増加させるための
インクリメンタ3、線102を介して与えられる命令終
了フラグをセットするレジスタA「4、このレジスタW
F4からのフラグを書込アドレスレジスタ様2で指示さ
れる位置に格納する命令終了フラグバッファWFB6、
線103を介して与えられるリードデータレジスタ5の
内容を、レジスタΔ^2からのアドレスで指示される位
置に格納するためのストアバッファ7、このストアバッ
ファ7に対する続出アドレスを格納するための続出アド
レスレジスタ9、この続出アドレスレジスタ9の内容を
更新するためのインクリメンタ10、ストアバッファ7
から主記憶装置へのバッファ掃出しを制御するための指
示信号を線105に出力するメモリアクセス制御部11
、このメモリアクセス制御部11から線105を介して
与えられる指示信号に応答してストアバッファ7からの
内容を線104を介して主記憶装置8へ送出するレジス
タH^R12、演算制御部1から線101を介して与え
られる命令カウンタ更新指示信号に応答して、命令カウ
ンタ更新の場合は“1゛を命令終了フラグとして、また
命令カウンタ更新でない場合は′0゛′を線102に出
力する命令カウンタ(以下IC)更新制御回路13、命
令カウンタ16、IC更新制御回路13から線102を
介して与えられる信号に応答して命令カウンタ16から
の値をセット−3−るレジスタTC15、IC更新制御
回路13がらの信号を格納するレジスタWF117、こ
のレジスタWF117および命令終了フラグバッファW
FB 6からの出力のどちらか一方を選択するjx択制
御回路18、およびこの選択制御回818がらの信号に
応答してインクリメンタ23、デクリメンタ24、また
はそのままの出力を選択して格納するストアバッファ掃
出しポインタ19を含む。
およびシフタSHTからの演算結果を格納するためのリ
ードデータレジスタRDII 5の他、書込みアドレス
をセットする書込アドレスレジスタ誓へ2、このレジス
タWA2からの書込みアドレスを+1増加させるための
インクリメンタ3、線102を介して与えられる命令終
了フラグをセットするレジスタA「4、このレジスタW
F4からのフラグを書込アドレスレジスタ様2で指示さ
れる位置に格納する命令終了フラグバッファWFB6、
線103を介して与えられるリードデータレジスタ5の
内容を、レジスタΔ^2からのアドレスで指示される位
置に格納するためのストアバッファ7、このストアバッ
ファ7に対する続出アドレスを格納するための続出アド
レスレジスタ9、この続出アドレスレジスタ9の内容を
更新するためのインクリメンタ10、ストアバッファ7
から主記憶装置へのバッファ掃出しを制御するための指
示信号を線105に出力するメモリアクセス制御部11
、このメモリアクセス制御部11から線105を介して
与えられる指示信号に応答してストアバッファ7からの
内容を線104を介して主記憶装置8へ送出するレジス
タH^R12、演算制御部1から線101を介して与え
られる命令カウンタ更新指示信号に応答して、命令カウ
ンタ更新の場合は“1゛を命令終了フラグとして、また
命令カウンタ更新でない場合は′0゛′を線102に出
力する命令カウンタ(以下IC)更新制御回路13、命
令カウンタ16、IC更新制御回路13から線102を
介して与えられる信号に応答して命令カウンタ16から
の値をセット−3−るレジスタTC15、IC更新制御
回路13がらの信号を格納するレジスタWF117、こ
のレジスタWF117および命令終了フラグバッファW
FB 6からの出力のどちらか一方を選択するjx択制
御回路18、およびこの選択制御回818がらの信号に
応答してインクリメンタ23、デクリメンタ24、また
はそのままの出力を選択して格納するストアバッファ掃
出しポインタ19を含む。
次に、本発明の一実施例の動作を第1図から第3図を参
照して詳細に説明する。第1図および第2図を参照する
と、サイクル1では主記憶装置8から命令キャッシュI
Cacheに命令Aが格納される。命令Aは4ワー
ド命令である0次にサイクル2では主記憶装置8から命
令キャッシュI Cacheに命令Bが格納されると
ともに命令Aは命令キャッシュI Cacheからセ
レクタ21および命令レジスタlR2Oを介して加算器
AD、ADDERでアドレス生成される。このようにし
て、命令A、BおよびCの処理は進められる。命令Bは
2ワード命令であり、命令Cは1ワード命令である。
照して詳細に説明する。第1図および第2図を参照する
と、サイクル1では主記憶装置8から命令キャッシュI
Cacheに命令Aが格納される。命令Aは4ワー
ド命令である0次にサイクル2では主記憶装置8から命
令キャッシュI Cacheに命令Bが格納されると
ともに命令Aは命令キャッシュI Cacheからセ
レクタ21および命令レジスタlR2Oを介して加算器
AD、ADDERでアドレス生成される。このようにし
て、命令A、BおよびCの処理は進められる。命令Bは
2ワード命令であり、命令Cは1ワード命令である。
第1図から第3図を参照すると、サイクル6で読出デー
タレジスタRDR5に格納された命令Aに関する第1ワ
ード目の演算結果はサイクル7で線103を介してスト
アバッファ7の1番地に格納される。
タレジスタRDR5に格納された命令Aに関する第1ワ
ード目の演算結果はサイクル7で線103を介してスト
アバッファ7の1番地に格納される。
線101を介してIC更新指示が出力されていないため
、IC更新制御回路13から線102を介してレジスタ
WFO4に格納された値“0”が、上述の命令Aの第1
ワード目の演算結果のストアバッファ7への格納動作と
ともに、命令終了フラグバッファ6の対応するワードに
′0が格納される。
、IC更新制御回路13から線102を介してレジスタ
WFO4に格納された値“0”が、上述の命令Aの第1
ワード目の演算結果のストアバッファ7への格納動作と
ともに、命令終了フラグバッファ6の対応するワードに
′0が格納される。
サイクル10で命令カウンタレジスタ15の内容が“A
”から“B”に変化するとともに命令終了フラグバッフ
ァ4に′1”が格納され、インクリメタ23が動作して
ストアバッファ掃出しポインタ19の内容が“0″から
°′1”に変化する。
”から“B”に変化するとともに命令終了フラグバッフ
ァ4に′1”が格納され、インクリメタ23が動作して
ストアバッファ掃出しポインタ19の内容が“0″から
°′1”に変化する。
これはストアバッファ7内に掃出し可能なデータが1命
令あることを示す。
令あることを示す。
メモリアクセス制御部11はストアバッファ掃出しポイ
ンタ1つの値が“02′のときはストアバッファ7に掃
出し可能なデータがないため、ストアバッファ7から主
記憶装置8に対する掃出し動作を抑止する指示信号をレ
ジスタ12に与える。
ンタ1つの値が“02′のときはストアバッファ7に掃
出し可能なデータがないため、ストアバッファ7から主
記憶装置8に対する掃出し動作を抑止する指示信号をレ
ジスタ12に与える。
いま、掃出しポインタ19の内容が1′”であるなめ、
メモリアクセス制御部11はストアバッファ7の内容を
線104を介して主記憶装置8に洪恰するようレジスタ
12に指示する。この指示に応答してレジスタ12はス
トアバッファ7から主記憶装置8に対して命令Aの命令
単位の掃出しが開々台される。
メモリアクセス制御部11はストアバッファ7の内容を
線104を介して主記憶装置8に洪恰するようレジスタ
12に指示する。この指示に応答してレジスタ12はス
トアバッファ7から主記憶装置8に対して命令Aの命令
単位の掃出しが開々台される。
サイクル1oにおいて命令Aの第4ワード目のストアバ
ッファ7への格納が終了しサイクル11において命令B
の第1ワード目のストアバッファ7への格納動作が開始
される。
ッファ7への格納が終了しサイクル11において命令B
の第1ワード目のストアバッファ7への格納動作が開始
される。
サイクル12において命令カウンタレジスタ15の内容
が更新されると、これと同期して命令終了フラグバッフ
ァ6にパ1”が格納される。この時命令Aの第3ワード
ロのストアバッファ7から主記憶装置8への掃出し動作
が行なわれているため、命令Bの命令単位を主記憶装置
8に掃出すことができない、そこでストアバッファ掃出
しポインタ1つの値は1”から2″にカウントアツプさ
れる。これは、ストアバッファ内に掃出し可能なストア
データが2命令分存在することを示す。
が更新されると、これと同期して命令終了フラグバッフ
ァ6にパ1”が格納される。この時命令Aの第3ワード
ロのストアバッファ7から主記憶装置8への掃出し動作
が行なわれているため、命令Bの命令単位を主記憶装置
8に掃出すことができない、そこでストアバッファ掃出
しポインタ1つの値は1”から2″にカウントアツプさ
れる。これは、ストアバッファ内に掃出し可能なストア
データが2命令分存在することを示す。
サイクル13において命令カウンタ16により命令カウ
ンタレジスタ15の内容が“2″から“3″に更新され
、命令Cに関する演算結果が格納されると、これと同期
して命令終了フラグバンファ6に値” 1 ”が格納さ
れる。この時命令Aの第4ワード目がストアバッファ7
から主記憶装置8に対してt1■出されており、命令C
に関する演算結果を主記憶装置8に掃出すことはできな
い。
ンタレジスタ15の内容が“2″から“3″に更新され
、命令Cに関する演算結果が格納されると、これと同期
して命令終了フラグバンファ6に値” 1 ”が格納さ
れる。この時命令Aの第4ワード目がストアバッファ7
から主記憶装置8に対してt1■出されており、命令C
に関する演算結果を主記憶装置8に掃出すことはできな
い。
そこで、ストアバッファ掃出しポインタ1つの値は“2
”から“3”にカウントアツプされ、ストアバッファ7
内に掃出し可能なストアデータが3命令分存在すること
を示している。
”から“3”にカウントアツプされ、ストアバッファ7
内に掃出し可能なストアデータが3命令分存在すること
を示している。
サイクル13において、命令Aの第4ワード目の演算結
果の主記憶装置8への掃出しとともに命令終了フラグバ
ッファ6から′″1′°が出力されると、サイクル14
においてストアバ7フア掃出しポインタ1つの内容のデ
クリメンタ24によるデクリメントが行なわれ、ポイン
タ1つの内容は“3”から“2°°に変化する。この値
“2”は、ストアバッファ7内に掃出し可能なストアデ
ータが2命令存在することを示す。
果の主記憶装置8への掃出しとともに命令終了フラグバ
ッファ6から′″1′°が出力されると、サイクル14
においてストアバ7フア掃出しポインタ1つの内容のデ
クリメンタ24によるデクリメントが行なわれ、ポイン
タ1つの内容は“3”から“2°°に変化する。この値
“2”は、ストアバッファ7内に掃出し可能なストアデ
ータが2命令存在することを示す。
サイクル14において、命令Bの第1ワード目の演算結
果の主記憶装置8への掃出し動作が開始され、サイクル
15において、命令Bの第2ワード目の命令単位の主記
憶装置8への掃出しが行なわれる。命令終了フラグバッ
ファ6から“1″が検出されるとストアバッファ掃出し
ポインタ19の値がデイクリメンタ24によりディクリ
メントされ“1”となる。これは、ストアバッファ7内
に掃出し可能なストアデータが1命令分存在しているこ
とを示している。
果の主記憶装置8への掃出し動作が開始され、サイクル
15において、命令Bの第2ワード目の命令単位の主記
憶装置8への掃出しが行なわれる。命令終了フラグバッ
ファ6から“1″が検出されるとストアバッファ掃出し
ポインタ19の値がデイクリメンタ24によりディクリ
メントされ“1”となる。これは、ストアバッファ7内
に掃出し可能なストアデータが1命令分存在しているこ
とを示している。
サイクル16において命令Cがストアバッファ7から掃
出されると、命令終了フラグバッファ6から′1″か検
出され、サイクル17においてストアバッファ掃出しポ
インタ1つの値がデクリメンタ24によりカウントダウ
ンされ°゛0”となり、これはストアバッファ7に掃出
し可能なデータかないことを示している。
出されると、命令終了フラグバッファ6から′1″か検
出され、サイクル17においてストアバッファ掃出しポ
インタ1つの値がデクリメンタ24によりカウントダウ
ンされ°゛0”となり、これはストアバッファ7に掃出
し可能なデータかないことを示している。
なお、命令終了フラグバッファ6は第3図に示すような
バッファ構造となっており、ストアデータがストアバッ
ファ7に書込まれるタイミングで命令カウンタレジスタ
15の値が変更される時に“1″が、それ以外の時には
″0パが書込まれる。
バッファ構造となっており、ストアデータがストアバッ
ファ7に書込まれるタイミングで命令カウンタレジスタ
15の値が変更される時に“1″が、それ以外の時には
″0パが書込まれる。
また、同一タイミングで命令終了フラグバッファ6にス
トアされるフラグが“1″ならば、ストアバッファ掃出
しポインタ19の値がカウントアツプされ、“0パなら
ばカウントアツプされずにその時のポインタ19の値が
保持される。
トアされるフラグが“1″ならば、ストアバッファ掃出
しポインタ19の値がカウントアツプされ、“0パなら
ばカウントアツプされずにその時のポインタ19の値が
保持される。
また、ストアバッファ7から主記憶装置8へ掃出すタイ
ミングで命令終了フラグバッファ6の読出動作も行なわ
れる。読出された命令終了フラグの値が1′″ならば、
ストアバッファ掃出しポインタ19の値がカウントダウ
ンされ、命令終了フラグの値が°“0”ならばカウント
ダウンされずにその時の掃出しポインタ19の値が保持
される。
ミングで命令終了フラグバッファ6の読出動作も行なわ
れる。読出された命令終了フラグの値が1′″ならば、
ストアバッファ掃出しポインタ19の値がカウントダウ
ンされ、命令終了フラグの値が°“0”ならばカウント
ダウンされずにその時の掃出しポインタ19の値が保持
される。
次に実行ステージにおける障害検出がなされたときの動
作について説明する6例えば、命令AのサイクルマのE
X(実行)ステージにおいて障害が検出されると、命令
カウンタ16の更新、命令終了フラグバッファ6へのス
トア、ストアバッファ掃出しポインタ1つの更新、およ
びストアバッファ7から主記憶装置8への命令Aの掃出
しが抑止され、命令Aからのりトライ(再試行)が指示
される。
作について説明する6例えば、命令AのサイクルマのE
X(実行)ステージにおいて障害が検出されると、命令
カウンタ16の更新、命令終了フラグバッファ6へのス
トア、ストアバッファ掃出しポインタ1つの更新、およ
びストアバッファ7から主記憶装置8への命令Aの掃出
しが抑止され、命令Aからのりトライ(再試行)が指示
される。
几匪Ω豆1
本発明はストア命令において発行されるストア要求に対
して命令単位に命令終了フラグを付加することにより、
主記憶装置8の書換えを命令の終了まで送らせる制御を
行なうことができるという効果がある。
して命令単位に命令終了フラグを付加することにより、
主記憶装置8の書換えを命令の終了まで送らせる制御を
行なうことができるという効果がある。
また、本発明はストアバッフア掃出しポインタ1つを設
けることにより、ストアバッファ7に格納された餞も古
い命令単位から主記憶装置8に掃出すことができ、結果
としてリトライ率を向上できるという効果がある。
けることにより、ストアバッファ7に格納された餞も古
い命令単位から主記憶装置8に掃出すことができ、結果
としてリトライ率を向上できるという効果がある。
第1図は本発明の一実施例を示す図、第2図は本発明の
一実施例の動作を説明するためのタイムチャート、第3
図はストアバッファ、命令終了フラグバッファおよびス
トアバッファ掃出しポインタの関係を示す図、第4図は
パイプライン処理を説明するための図、第5図は従来技
術の一例を示すためのタイムチャートである。 主要部分の符号の説明 1・・・・・・演算制御部 2・・・・・・書込アドレスレジスタ 3・・・・・・リードデータレジスタ 6・・・・・・命令終了フラグバッファ7・・・・・・
ストアバッファ 8・・・・・・主記憶装置 9・・・・・・続出アドレスレジスタ 11・・・・・・メモリアクセス制御部13・・・・・
・命令カウンタ更新制御回路15・・・・・・命令カウ
ンタレジスタ16・・・・・・命令カウンタ 18・・・・・・泗択制御回路 1つ・・・・・・ストアバッファ掃出しポインタ20・
・・・・・命令レジスタ
一実施例の動作を説明するためのタイムチャート、第3
図はストアバッファ、命令終了フラグバッファおよびス
トアバッファ掃出しポインタの関係を示す図、第4図は
パイプライン処理を説明するための図、第5図は従来技
術の一例を示すためのタイムチャートである。 主要部分の符号の説明 1・・・・・・演算制御部 2・・・・・・書込アドレスレジスタ 3・・・・・・リードデータレジスタ 6・・・・・・命令終了フラグバッファ7・・・・・・
ストアバッファ 8・・・・・・主記憶装置 9・・・・・・続出アドレスレジスタ 11・・・・・・メモリアクセス制御部13・・・・・
・命令カウンタ更新制御回路15・・・・・・命令カウ
ンタレジスタ16・・・・・・命令カウンタ 18・・・・・・泗択制御回路 1つ・・・・・・ストアバッファ掃出しポインタ20・
・・・・・命令レジスタ
Claims (1)
- (1)複数回のストア動作で一命令関連の情報を格納す
るストアバッファ手段と、このストアバッファ手段に格
納される一命令関連の情報の最終回のストア動作に応答
して値を増加させるか減少させ、前記ストアバッファ手
段からの掃出し動作に応答して値を減少させるか増加さ
せるストアバッファ掃出しポインタ手段と、このストア
バッファ掃出しポインタ手段の値が前記ストアバッファ
手段からの掃出し対象となる命令関連の情報がないこと
を示しているとき前記ストアバッファ手段からの掃出し
動作を抑止する抑止手段とを含むことを特徴とする掃出
し制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63084616A JP2901247B2 (ja) | 1988-04-06 | 1988-04-06 | 掃出し制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63084616A JP2901247B2 (ja) | 1988-04-06 | 1988-04-06 | 掃出し制御方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01255933A true JPH01255933A (ja) | 1989-10-12 |
| JP2901247B2 JP2901247B2 (ja) | 1999-06-07 |
Family
ID=13835625
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63084616A Expired - Lifetime JP2901247B2 (ja) | 1988-04-06 | 1988-04-06 | 掃出し制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2901247B2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH056274A (ja) * | 1991-06-27 | 1993-01-14 | Mitsubishi Electric Corp | データ処理装置 |
| US7716452B1 (en) | 1996-08-22 | 2010-05-11 | Kelly Edmund J | Translated memory protection apparatus for an advanced microprocessor |
-
1988
- 1988-04-06 JP JP63084616A patent/JP2901247B2/ja not_active Expired - Lifetime
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH056274A (ja) * | 1991-06-27 | 1993-01-14 | Mitsubishi Electric Corp | データ処理装置 |
| US7716452B1 (en) | 1996-08-22 | 2010-05-11 | Kelly Edmund J | Translated memory protection apparatus for an advanced microprocessor |
| US7840776B1 (en) | 1996-08-22 | 2010-11-23 | Kelly Edmund J | Translated memory protection apparatus for an advanced microprocessor |
| US8055877B1 (en) | 1996-08-22 | 2011-11-08 | Kelly Edmund J | Translated memory protection apparatus for an advanced microprocessor |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2901247B2 (ja) | 1999-06-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3176129B2 (ja) | マイクロプロセッサのオンチップキャッシュのモニタ構造及びモニタ方法 | |
| JPH08272692A (ja) | 仮想アドレス変換方法 | |
| JP2001034537A (ja) | アドレス変換回路 | |
| GB2200481A (en) | Maintaining coherence between a microprocessor's integrated cache and external memory | |
| US5287483A (en) | Prefetched operand storing system for an information processor | |
| JPH027097B2 (ja) | ||
| KR19990037571A (ko) | 단일 주기 내에 간접 어드레싱 모드 어드레스를 출력하는 데이터 포인터 및 그 제공방법 | |
| JPS6137654B2 (ja) | ||
| US5724548A (en) | System including processor and cache memory and method of controlling the cache memory | |
| US4737908A (en) | Buffer memory control system | |
| JPH01255933A (ja) | 掃出し制御方式 | |
| JPS6211736B2 (ja) | ||
| US4853889A (en) | Arrangement and method for speeding the operation of branch instructions | |
| JP3132566B2 (ja) | 命令先行制御装置 | |
| JPS601655B2 (ja) | デ−タプリフェツチ方式 | |
| JPH0544049B2 (ja) | ||
| JPH01273132A (ja) | マイクロプロセッサ | |
| JPH07191911A (ja) | アドレス変換装置及びマイクロプロセッサ算出方法 | |
| JPH01189728A (ja) | 命令プリフェッチアドレスの更新回路 | |
| JPH0235331B2 (ja) | ||
| JP2762798B2 (ja) | 命令キャッシュを有するパイプライン構成の情報処理装置 | |
| JP2560520B2 (ja) | 先行制御装置 | |
| JPH05173778A (ja) | データ処理装置 | |
| JPS6131894B2 (ja) | ||
| JPS6047615B2 (ja) | 逐次化命令実行制御方式 |