JPH064403A - バッファ記憶制御方式 - Google Patents
バッファ記憶制御方式Info
- Publication number
- JPH064403A JPH064403A JP4156801A JP15680192A JPH064403A JP H064403 A JPH064403 A JP H064403A JP 4156801 A JP4156801 A JP 4156801A JP 15680192 A JP15680192 A JP 15680192A JP H064403 A JPH064403 A JP H064403A
- Authority
- JP
- Japan
- Prior art keywords
- move
- data
- storage device
- buffer storage
- fetch
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
ス性能を向上させたバッファ記憶制御方式を提供するこ
と。 【構成】 バッファ記憶装置3に対するフェッチ・アク
セスにおいて、バッファ・ミスヒットが検出された場
合、任意に選択された1組のムーブイン・レジスタ2か
ら無条件に要求元4にバイパス・フェッチを行い、要求
元4へデータを送出する。その後、フェッチ・リクエス
トのあったアドレスのデータを保持するムーブイン・レ
ジスタが特定すると同時に、バイパス・フェッチの成否
を判断し、その結果を要求元4に報告する。無条件で行
ったバイパス・フェッチが成功しなかった場合には、フ
ェッチ・アクセスを再度実行し、フェッチ・アクセスと
同一領域に対するムーブインを主記憶装置1に要求して
いると判断されたムーブイン・レジスタ2からデータを
フェッチする。
Description
に関し、特に、バッファ記憶装置に対するフェッチ・ア
クセスにおいて、ミス・ヒットが検出された場合のバッ
ファ記憶装置に対するフェッチ・アクセス性能を向上さ
せることができるバッファ記憶制御方式に関するもので
ある。
記憶装置間のデータ転送処理の高速化を狙って、低速、
大容量の主記憶装置と処理装置間に高速・小容量のバッ
ファ記憶装置を設けるとともに、主記憶装置から送られ
てくるブロック転送データ(以下、ムーブイン・データ
という)をバッファ記憶装置へのデータ・バスとは別に
要求元へバイパスさせるデータ・バスを設けている。
チ・アクセスにおいてバッファ・ミスヒットが検出され
主記憶装置に対してムーブイン要求が行われた場合に
は、バイパス可能なデータは主記憶装置からバッファ記
憶装置へのムーブインが完了する前に要求元に送出する
ことにより処理の高速化が図られている。ところが、ム
ーブイン要求により主記憶装置から送られてくるデータ
をバッファ記憶装置に書き込むムーブイン処理が行われ
ている間、主記憶装置に対してムーブイン要求を起動し
たフェッチ・リクエストの後続のリクエストがバッファ
記憶装置を使用するのを妨げることとなり、性能劣化の
一因となっていた。
のフェッチ・アクセス時にバッファ・ミスヒットを検出
した場合の動作例を示す図であり、図8,9はムーブイ
ン処理におけるバッファ記憶装置への書込み単位が主記
憶装置から送られてくる1ブロックの容量より小さい場
合の動作例を示し、図10,11,12はムーブイン処
理におけるバッファ記憶装置への書込み単位が主記憶装
置から送られてくる1ブロックの容量より大きい場合の
動作例を示す図である。
を用いて、従来のフェッチ・アクセス時にバッファ・ミ
スヒットを検出した場合の動作について説明する。図
8,9は主記憶装置の1ブロックの容量が64バイトで
あり、バッファ記憶装置へは8バイト×8回に分割して
送られ、16バイト幅のムーブイン・レジスタにデータ
が揃った後、バッファ記憶装置に書き込みが行われる場
合の動作例を示した図である。
が出されると、REQ−0のパイプラインが起動され
る。そのTサイクルにおいて、フェッチ・リクエストと
共に送られてくるフェッチ・アドレスREQ−ADRS
(図8の(a)参照)によってバッファ記憶装置の検索
が行われる。Bサイクルにおいて、Tサイクルにおける
検索結果からバッファ・ミスヒットであると判断される
と(図8(b)参照)、Rサイクルにおいて、リクエス
トの未完了を示すLMD(図8の(c)参照)が報告さ
れる。
れると、REQ−0の後続リクエストのパイプラインで
あるREQ−1,REQ−2は中断される。リクエスト
の未完了を示すLMDの報告と同時に主記憶装置に対し
てフェッチ・アクセスのあったデータを含むブロックの
ムーブイン要求MEM REQが出され(図8の(j)
参照)、ムーブイン待ちを示すM1を上げて、待ち状態
WAIT STATEに入る(図8の(i)参照)。
ン・データが送られてくると、パイプラインREQ−0
をパイプラインREQ−0’として再起動して待ち状態
WAIT STATE(図9の(i)参照)を解除す
る。最初の8バイトのムーブイン・データがムーブイン
・レジスタの上位8バイトの領域MIR HIにセット
され(図9の(f)参照)、REQ−0’のBサイクル
で、上記ムーブイン・レジスタの上位8バイトの領域M
IR HIからフェッチしたデータAAAAAAAAを要求元
(図8,9(h)参照)に送出し、Rサイクルでリクエ
ストの完了を示すSTV(図9(c)参照)を報告す
る。
ーブイン・データが順次送られてくるので、このデータ
をバッファ記憶装置に書き込むための処理であるMOV
E−INが起動される(図9参照)。上記のように、最
初に主記憶装置から送られてくるムーブイン・データが
ムーブイン・レジスタの上位8バイトの領域MIR H
Iにセットされ、2回目に送られてくるデータBBBBBBBB
がムーブイン・レジスタの下位8バイトMIR L0
(図9(g)参照)にセットされると、MOVE−IN
のパイプラインによりバッファ記憶装置(図9(k)
参照)に書き込まれる。
タがMOVE−INのパイプラインによりバッファ記
憶に書き込まれ、5,6回目に送られてくるデータがM
OVE−INのパイプラインによりバッファ記憶に書
き込まれ、さらに、7,8回目に送られてくるデータが
MOVE−INのパイプラインによりバッファ記憶に
書き込まれる。
Q−1,REQ−2はパイプラインREQ−0’が起動
されると、順次再起動される。図10,11,12は主
記憶装置の1ブロックの容量が64バイトであり、バッ
ファ記憶装置へは8バイト×8回に分割して送られ、6
4バイト幅のムーブイン・レジスタにデータが揃った
後、バッファ記憶装置に書き込みが行われる場合の動作
例を示した図である。
が出されると、REQ−0のパイプラインが起動され
る。そのTサイクルにおいて、フェッチ・リクエストと
共に送られてくるフェッチ・アドレスREQ−ADRS
(図10の(a)参照)によってバッファ記憶装置の検
索が行われる。Bサイクルにおいて、Tサイクルにおけ
る検索結果からバッファ・ミスヒットであると判断され
ると(図10(b)参照)、Rサイクルにおいて、リク
エストの未完了を示すLMD(図8の(c)参照)が報
告される。
れると、REQ−0の後続リクエストのパイプラインで
あるREQ−1,REQ−2は中断される。リクエスト
の未完了を示すLMDの報告と同時に主記憶装置に対し
てフェッチ・アクセスのあったデータを含むブロックの
ムーブイン要求MEM REQが出され(図10の
(q)参照)、ムーブイン待ちを示すM1を上げて、待
ち状態WAIT STATEに入る(図10の(p)参
照)。
が開始されると、パイプラインREQ−0をパイプライ
ンREQ−0’として再起動して待ち状態WAIT S
TATE(図11の(p)参照)を解除する。最初に送
られてきた8バイトのムーブイン・データが、それと一
緒に送られてくるそのセット位置を示すMIR BAN
K ID信号(図11(f)参照)で指示されるムーブ
インレジスタのBANK Cにセットされると(図11
(i)参照)、パイプラインREQ−0’のBサイクル
でその内容をフェッチして要求元(図11(o)参照)
に送出し、Rサイクルでリクエストの完了を示すSTV
信号を報告する(図11(c)参照)。
ーブイン・データが順次送られてくるので、このデータ
をMIR BANK ID信号(図11(f)参照)で
指示されるムーブインレジスタMIRのそれぞれの領域
にセットする。バッファ記憶装置への書き込みの単位で
ある64バイトのデータがムーブイン・レジスタにセッ
トされると、バッファ記憶装置に書き込むための処理で
あるMOVE−IN(図12参照)により、バッファ記
憶装置(図12(r)参照)に書き込まれる。
Q−1,REQ−2はパイプラインREQ−0’が起動
されると、順次再起動される。
ァ記憶制御方式では、バッファ記憶装置に対するフェッ
チ・リクエストにおいて、バッファ・ミスヒットが検出
された場合には、主記憶装置に対してムーブイン要求を
出し、そのムーブイン・データのバッファ記憶装置への
書き込みが完了する前に、図9の(f),(g)あるい
は図11の(i),(o)に示すように、バイパス・フ
ェッチを行うことで処理の高速化を図っていた。
て、パイプラインREQ−0に続くパイプラインREQ
−1,REQ−2のいずれか、または、その両方がバッ
ファ記憶装置をアクセスするものである場合には、MO
VE−IN〜によるバッファ記憶装置への複数回の
アクセスにより、後続のパイプラインREQ−1,RE
Q−2からのバッファ記憶装置へのアクセスが邪魔され
る。
2に示すように、バッファ記憶装置の書き込み単位を大
きくして、ムーブイン処理によるバッファ記憶装置への
アクセス回数を減じた場合には次のような問題が生ず
る。すなわち、図10〜図12の動作例において、パイ
プラインREQ−0に続くパイプラインREQ−1,R
EQ−2のいずれか、または、その両方がムーブイン要
求によって送られてくるムーブイン・データに含まれる
領域に対するフェッチ・リクエストであった場合、図
8,9のように主記憶装置からバッファ記憶装置へ分割
して送られる場合には、MOVE−IN〜の4回の
ムーブイン処理により、部分書き込みが行われた部分に
対するフェッチ・アクセスが可能であったが、図10〜
図12の場合では、全てのムーブイン・データが主記憶
装置から送られてくるまでムーブイン処理によるバッフ
ァ記憶装置への書き込みが待たされるため、パイプライ
ンREQ−0の後続のリクエストでのフェッチ・アクセ
スも待たされてしまうこととなる。
れたものであって、バッファ記憶装置に対するフェッチ
・アクセスにおいて、バッファ・ミスヒットが検出され
た場合、このリクエスト以前のパイプライン処理におけ
るムーブイン・データを利用して、このリクエストにお
けるフェッチ・リクエスト・データを獲得し、要求元へ
データをバイパスできるようにすることにより、バッフ
ァ記憶装置に対するフェッチ・アクセス性能を向上させ
たバッファ記憶制御方式を提供することを目的とする。
図である。上記課題を解決するため、本発明の請求項1
の発明は、バッファ記憶装置3と、バッファ記憶装置3
からの要求により主記憶装置1からムーブインされてく
るデータをバッファ記憶装置3のデータ部への書き込み
単位が揃うまで保持しておく複数のムーブイン・レジス
タ2と、バッファ記憶装置3のデータ部ないしムーブイ
ン・レジスタ2からフェッチ・アクセスの要求元4へデ
ータをバイパスさせるデータ・バスとを備えた情報処理
装置のバッファ記憶制御方式において、フェッチ・アク
セスにおいて、バッファ記憶装置3のミスヒットが検出
された場合、無条件にムーブイン・レジスタ2の1つか
らデータをフェッチして、上記データ・バスを介して要
求元4に送出するとともに、このバイパス・フェッチの
成否を判断して、その結果を要求元4に報告するように
構成したものである。
装置3と、バッファ記憶装置3からの要求により主記憶
装置1からムーブインされてくるデータをバッファ記憶
装置3のデータ部への書き込み単位が揃うまで保持して
おく複数のムーブイン・レジスタ2と、バッファ記憶装
置3のデータ部ないしムーブイン・レジスタ2からフェ
ッチ・アクセスの要求元4へデータをバイパスさせるデ
ータ・バスとを備えた情報処理装置のバッファ記憶制御
方式において、フェッチ・アクセスにおいて、バッファ
記憶装置3のミスヒットが検出され、かつ、同一の領域
に対するムーブインを主記憶装置1に要求していないこ
とが検出された場合、フェッチ・アクセスをアボートさ
せ、主記憶装置1にムーブイン・レジスタ番号を指示し
てムーブインを要求し、主記憶装置1からムーブイン・
番号を伴ってムーブイン・データの転送が行われたとき
にフェッチ・アクセスを再度実行し、ムーブイン・レジ
スタ2から要求元4へバイパスする場合、上記ムーブイ
ン・レジスタ2からデータをフェッチして、上記データ
・バスを介して要求元4に送出するように構成したもの
である。
装置3と、バッファ記憶装置3からの要求により主記憶
装置1からムーブインされてくるデータをバッファ記憶
装置3のデータ部への書き込み単位が揃うまで保持して
おく複数のムーブイン・レジスタと、バッファ記憶装置
3のデータ部ないしムーブイン・レジスタ2からフェッ
チ・アクセスの要求元4へデータをバイパスさせるデー
タ・バスとを備えた情報処理装置のバッファ記憶制御方
式において、フェッチ・アクセスにおいて、バッファ記
憶装置3のミスヒットが検出され、かつ、無条件で行っ
たムーブイン・レジスタ2からのバイパス・フェッチが
成功しなかった場合、フェッチ・アクセスを再度実行
し、バイパスを行う場合には、フェッチ・アクセスと同
一領域に対するムーブインを主記憶装置1に要求してい
ると判断されたムーブイン・レジスタ2からデータをフ
ェッチして、上記データ・バスを介して要求元4に送出
するように構成したものである。
記憶装置3に対するフェッチ・アクセスにおいて、バッ
ファ・ミスヒットが検出された場合、この段階ではフェ
ッチ・リクエストのあったアドレスのデータを保持する
ムーブイン・レジスタが特定できないため、任意に選択
された1組のムーブイン・レジスタ2から無条件に要求
元4にバイパス・フェッチを行い、要求元4へデータを
送出する。その後、フェッチ・リクエストのあったアド
レスのデータを保持するムーブイン・レジスタが特定で
きた段階で、バイパス・フェッチの成否を判断し、その
結果を要求元4に報告する。
エスト以前の処理により、主記憶装置1からムーブイン
・レジスタ2に転送されたデータが存在する場合、この
データを無条件でバイパス・フェッチして要求元4に送
出し、その後、そのバイパス・フェッチが成功したか否
かを判断しているので、バイパス・フェッチ成功時に
は、後続のリクエストのバッファ記憶装置3に対するア
クセスに影響を与えることがなく、効率的な処理を行う
ことが可能となる。また、そのフェッチ・リクエスト以
前のパイプラインにおけるムーブイン処理によりバッフ
ァ記憶装置が使用されていても、このフェッチ・リクエ
ストによるフェッチ・リクエスト・データの獲得が可能
となり、処理を待たされることがなくなる。
ファ記憶装置3に対するフェッチ・アクセスにおいて、
バッファ・ミスヒットが検出され、かつ、フェッチ・ア
クセスされたデータを含む領域に対するムーブインが行
われていないことが検出された場合には、主記憶装置1
からムーブイン・データの転送が行われた時に、再度フ
ェッチ・アクセスを起動して、上記ムーブイン・レジス
タ番号のムーブイン・レジスタ2からバイパス・フェッ
チを行うので、フェッチ・アクセスされたデータを含む
領域に対するムーブインが行われていない場合におい
も、ムーブイン・レジスタ2から要求元4にデータを送
出することができる。
ファ記憶装置3に対するフェッチ・アクセスにおいて、
バッファ・ミスヒットが検出され、かつ、フェッチ・ア
クセスされたデータを含む領域に対するムーブインが行
われていることが検出され、かつ、無条件で行ったバイ
パス・フェッチが成功しなかった場合には、フェッチ・
アクセスと同一領域に対するムーブインを主記憶装置1
に要求していると判断されたムーブイン・レジスタ2か
らデータをフェッチするので、後続のリクエストのバッ
ファ記憶装置3に対するアクセスに影響を与えることが
なく、効率的な処理を行うことが可能となる。
イプラインにおけるムーブイン処理によりバッファ記憶
装置が使用されていても、このフェッチ・リクエストに
よるフェッチ・リクエスト・データの獲得が可能とな
り、処理を待たされることがなくなる。
辺回路の構成の実施例を示す図である。同図において、
201は、1ブロックが64バイトのメモリ領域を持つ
主記憶装置であり、バッファ記憶装置221に対して8
バイト幅のデータ・バスを持ち、ムーブイン処理は1ブ
ロック=64バイトのデータを8バイト×8回に分けて
転送する。
(BANK A〜BANK H)と、ムーブイン要求ア
ドレス(ADRS)を持つムーブイン・レジスタであ
り、本実施例においては、3組のムーブイン・レジスタ
211を持つ例が示されており、ムーブイン・レジスタ
番号MIR IDとして、それぞれ、MIR ID=
0,MIR ID=1,MIR ID=2が付与されて
いる。また、一組のムーブイン・レジスタのデータ保持
部はBANK A,BANK B,………,BANK H
の8バイト境界に分割され、1つのBANKは、主記憶
装置201からのムーブイン・データの転送一回分のデ
ータを保持する。
ァ記憶装置221はTAG部222とDATA部223
から構成され、DATA部223は主記憶装置201の
データの一部を保持し、TAG部222はDATA部2
23に保持されているデータの主記憶装置201上での
アドレスを保持する。DATA部223への書き込み単
位は64バイトであり、1回のフェッチ・アクセスで
は、8バイトのデータを読み出すことができる。
チ・リクエストとともに送られてくるフェッチ・アドレ
スを保持するレジスタであり、本実施例においては、P
ORT0〜2の3組のレジスタを持つ例が示されてい
る。232はセレクタであり、処理装置271のフェッ
チ・リクエストあるいはレジスタ231に保持されてい
るフェッチ・アドレスを選択し、TAG部222に出力
する。
理装置271からのフェッチ・リクエストに伴うアドレ
スと、TAG部222の検索結果からバッファ・ヒット
/ミスヒットを判断する。242はバイパス制御回路で
あり、3組のムーブイン・レジスタ211を検索し、フ
ェッチ・リクエスト・データと同一領域に対するムーブ
イン要求が行われているか否かの判断と、バイパス・フ
ェッチの成否を判断する。そして、フェッチ・リクエス
ト・データと同一領域に対するムーブイン要求が行われ
ている場合には、バイパス・フェッチを行うムーブイン
・レジスタを示すBYPASS MIR ID信号によ
り、ムーブイン結果を保持しているムーブイン・レジス
タのレジスタ番号MIR IDを指示する。
マッチ制御回路241、バイパス制御回路242よりゲ
ート243を介して与えられる、バッファ・ヒット/ミ
スヒット信号、バイパスMIR番号に基づき、バッファ
記憶装置221あるいは3組のムーブイン・レジスタ2
11を選択して、要求元となる処理装置271にフェッ
チ・データを出力する。
レクタ251より送られてくるデータの整列処理を行
い、要求元となる処理装置271に送出する。次に図3
ないし図7を用いて図2の示す実施例の動作を説明す
る。図3は処理装置271からバッファ記憶装置221
に対するフェッチ・リクエスト時にバッファ・ミスヒッ
トが検出され、また、後述するように、バイパス・フェ
ッチが成功した場合の動作を示す図である。
エストが出されると、REQ−0のパイプラインが起動
される。そのTサイクルにおいて、フェッチ・リクエス
トと共に送られてくるフェッチ・アドレスREQ−AD
RS(図3の(a)参照)によってTAG部222の検
索が行われる。Bサイクルにおいて、TAGマッチ制御
回路241により、TサイクルにおけるTAG部222
の検索結果とフェッチ・アドレスREQ−ADRSとか
ら、バッファ記憶装置221におけるフェッチ・リクエ
スト・データの有無が検査され、その結果バッファ・ミ
スヒットであると判断される(図3(b)参照)。
上記バッファ・ミスヒットとは無関係に、3組のムーブ
イン・レジスタ211が使用中であることを示すVAL
IDビットがオンであり、フェッチ・リクエスト・デー
タと同一領域に対するムーブイン要求が行われており、
かつ該当するフェッチ・リクエスト・データがムーブイ
ン・レジスタ211に保持されていることを示すPAR
TIAL READY信号がオンであるBANKを持つ
ムーブイン・レジスタ211の検索が行われる。
ス・フェッチを行うムーブイン・レジスタ211を指示
するバイパスMIR番号BYPASS MIR IDを
出力して、それによって指示されるムーブイン・レジス
タ番号が、例えば、「0」のムーブインレジスタ211
から、バイパス・フェッチを行うよう指示する。なお、
この段階においては、バイパスMIR番号BYPASS
MIR IDは任意の値に設定されており、後述する
ように、パイパス・フェッチ終了後、そのバイパス・フ
ェッチが成功したか否かが判定される。
PASS MIR ID信号は、フェッチ・アドレスR
EQ−ADRSをムーブイン・レジスタ211が保持す
るアドレスと比較できるように変換を行った後に、前記
したバイパス制御回路242によるムーブイン・レジス
タ211の検索結果により設定され、この段階において
は、このフェッチ・リクエストおいて行なわれる上記検
索結果をBYPASS MIR ID信号に反映させるこ
とができないため、任意に設定されたBYPASS M
IR ID信号によりバイパス・フェッチを行う。
IR ID信号としては、例えば、ランダムな番号を用
いたり、あるいは、前回設定された番号を使用するな
ど、種々の設定の方法が考えられる。前記したように、
TAGマッチ検出回路241でバッファ・ミスヒットが
検出されていることから、バイパス制御回路242から
バイパス・フェッチの指示が出されると、データセレク
タ251は、MIR IDが「0」のムーブイン・レジ
スタ211からのデータを選択して、アライン回路26
1を介して要求元の処理装置271に対して送出する
(図3(g),(h)参照)。
フェッチしたBYPASS MIR ID信号とバイパス
制御回路242によるムーブイン・レジスタ211の検
索結果(図3(e)参照)が一致しているか否かが判別
され、一致している場合にはバイパス・フェッチは成功
したと判断され、処理装置271に報告されるととも
に、処理の完了を示すSTV信号を上げる(図3(c)
参照)。
して、そのリクエスト以前の処理により、主記憶装置2
01からムーブイン・レジスタ211にムーブインさ
れ、そのリクエストの時点においてはバッファ記憶装置
221に書き込まれていないデータが存在する場合、こ
のデータを、予め、バイパス・フェッチして要求元に送
出し、その後、そのバイパス・フェッチが成功したか否
かを判断しているので、上記動作例のようにバイパス・
フェッチ成功時には、無駄なムーブイン動作をなくすこ
とができ、従来例のように、後続のリクエストでのフェ
ッチ・アクセスが待たされることがない。また、そのフ
ェッチ・リクエスト以前のパイプラインにおけるムーブ
イン処理によりバッファ記憶装置が使用されていても、
このフェッチ・リクエストによるフェッチ・リクエスト
・データの獲得が可能となり、処理を待たされることが
なくなる。
置221に対するフェッチ・リクエスト時にバッファ・
ミスヒットが検出され、かつ、フェッチ・リクエスト・
データと同一領域に対するムーブインを主記憶装置20
1に要求しているムーブイン・レジスタ211がある
が、BYPASS MIR ID信号で指示されたムー
ブイン・レジスタが適切でなかったため、バイパス・フ
ェッチが不成功の場合の動作を示す図である。
エストが出されると、REQ−0のパイプラインが起動
される。そのTサイクルにおいて、フェッチ・リクエス
トと共に送られてくるフェッチ・アドレスREQ−AD
RS(図4の(a)参照)によってTAG部222の検
索が行われる。Bサイクルにおいて、TAGマッチ制御
回路241により、TサイクルにおけるTAG部222
の検索結果とフェッチ・アドレスREQ−ADRSとか
ら、バッファ記憶装置221におけるフェッチ・リクエ
スト・データの有無が検査され、その結果バッファ・ミ
スヒットであると判断される(図4(b)参照)。
前記したように、バッファ・ミスヒットとは無関係に、
3組のムーブイン・レジスタ211が使用中であること
を示すVALIDビットがオンであり、フェッチ・リク
エスト・データと同一領域に対するムーブイン要求が行
われており、かつ該当するフェッチ・リクエスト・デー
タがムーブイン・レジスタ211に保持されていること
を示すPARTIAL READY信号がオンであるBA
NKを持つムーブイン・レジスタ211の検索が行われ
る。
ス・フェッチを行うムーブイン・レジスタ211を指示
するバイパスMIR番号BYPASS MIR IDを
出力して、それによって指示されるムーブイン・レジス
タ番号が、例えば「0」のムーブインレジスタ211か
ら、バイパス・フェッチを行うよう指示する。なお、図
3に示した場合と同様、上記バイパス・フェッチを行う
段階においては、バイパスMIR番号BYPASS M
IR IDは任意の値に設定されており、後述するよう
に、パイパス・フェッチ終了後、そのバイパス・フェッ
チが成功したか否かが判定される。
41でバッファ・ミスヒットが検出されていることか
ら、バイパス制御回路242からバイパス・フェッチの
指示が出されると、データセレクタ251は、MIR
IDが「0」のムーブイン・レジスタ211からのデー
タを選択して、アライン回路261を介して要求元の処
理装置271に対して送出する(図4(g),(h)参
照)。
フェッチしたBYPASS MIR ID信号とバイパス
制御回路242によるムーブイン・レジスタ211の検
索結果(図4(e)参照、この場合にはMIR2がヒッ
ト)が一致しているか否かが判別され、不一致の場合に
はバイパス・フェッチが成功しなかったものと判断さ
れ、処理装置271に報告されるとともに、処理の未完
了を示すLMD信号を上げ(図4(c)参照)、さら
に、後続のリクエストを処理しているREQ−1,RE
Q−2のパイプラインを中断させる。
結果からフェッチ・リクエスト・データがムーブイン・
レジスタ211のいずれかに保持されていることが判明
していることから、そのことを示すMIR MCH信号
を上げて待ち状態WAIT STATEに入る(図4
(i)参照)。やがて、REQ−0の再起動要求により
REQ−0’としてパイプラインが再起動されると、待
ち状態WAIT STATEを解除して、そのTサイク
ルにおいて、レジスタ231のPORT−0に保持され
ていた(図4(d)参照)フェッチ・アドレスREQ−
ADRSにより、前記したように、TAG部222の検
索が行われ、バッファ記憶装置221におけるフェッチ
・リクエスト・データの有無が検査される。
れた場合には、図4には図示されていないが、バッファ
記憶装置221からヒットしたデータが読み出されて、
処理装置271に送られる。また、次のRサイクルで処
理完了を示すSTV信号を上げて、これを処理装置27
1に報告して、REQ−0’のパイプラインの処理を終
わる。
場合には図4に示すように動作する。まず、上記バッフ
ァ・ミスヒットとは無関係に、バイパス制御回路242
において、3組のムーブイン・レジスタ211が使用中
であることを示すVALIDビットがオンであり、フェ
ッチ・リクエスト・データと同一領域に対するムーブイ
ン要求が行われ、かつ該当するフェッチ・リクエスト・
データがムーブイン・レジスタ211に保持されている
ことを示すPARTIAL READY信号がオンであ
るBANKを持つムーブイン・レジスタ211の検索が
行われる。
ン・レジスタ211が該当することが検出され(図4
(e)参照)、先に実行されているREQ−0のBサイ
クルにおけるバイパス制御回路242の検索結果が反映
されたBYPASS MIR ID信号(図4(f)参
照、MIR IDとして「2」が設定されている)で示
されるムーブイン・レジスタ211からバイパス・フェ
ッチが行われる。
41でバッファ・ミスヒットが検出されていることか
ら、データセレクタ251は、MIR IDが「2」の
ムーブイン・レジスタ211からのデータを選択して、
アライン回路261を介して要求元の処理装置271に
対して送出する(図4(g),(h)参照)。次いで、
Rサイクルにおいて、バイパス・フェッチしたBYPA
SS MIR ID信号とバイパス制御回路242による
ムーブイン・レジスタ211の検索結果が一致している
か否かが判別され、この場合には一致するので、バイパ
ス・フェッチは成功したと判断され、処理装置271に
報告されるとともに、処理の完了を示すSTV信号を上
げ(図4(c)参照)、そのREQ−0’のパイプライ
ンを終了する。また、先に中断されていたREQ−1,
REQ−2の処理は、REQ−0’の起動後、REQ−
1’,REQ−2’として順次起動される。
時においても、フェッチ・リクエスト・データと同一領
域に対するムーブインを要求しているムーブイン・レジ
スタ211が存在する場合には、フェッチ・リクエスト
REQ−0’を再起動した際、該当するムーブイン・レ
ジスタから要求元へバイパス・フェッチを行うことがで
きるので、図3の場合と同様、無駄なムーブイン動作を
なくすことができ、従来例のように、後続のリクエスト
でのフェッチ・アクセスが待たされることもない。ま
た、そのフェッチ・リクエスト以前のパイプラインにお
けるムーブイン処理によりバッファ記憶装置が使用され
ていても、このフェッチ・リクエストによるフェッチ・
リクエスト・データの獲得が可能となり、処理を待たさ
れることがなくなる。
ァ記憶装置221に対するフェッチ・リクエスト時にバ
ッファ・ミスヒットが検出され、かつ、フェッチ・リク
エスト・データと同一領域に対するムーブインを主記憶
装置に要求しているムーブイン・レジスタ211がなか
った場合の動作を示す図である。まず、処理装置271
よりフェッチ・リクエストが出されると、REQ−0の
パイプラインが起動される。そのTサイクルにおいて、
フェッチ・リクエストと共に送られてくるフェッチ・ア
ドレスREQ−ADRS(図5の(a)参照)によって
TAG部222の検索が行われる。
路241により、TサイクルにおけるTAG部222の
検索結果とフェッチ・アドレスREQ−ADRSとか
ら、バッファ記憶装置221におけるフェッチ・リクエ
スト・データの有無が検査され、その結果バッファ・ミ
スヒットであると判断される(図5(b)参照)。一
方、バイパス制御回路242において、前記したよう
に、バッファ・ミスヒットとは無関係に、3組のムーブ
イン・レジスタ211が使用中であることを示すVAL
IDビットがオンであり、フェッチ・リクエスト・デー
タと同一領域に対するムーブイン要求が行われ、かつ該
当するフェッチ・リクエスト・データがムーブイン・レ
ジスタ211に保持されていることを示すPARTIA
L READY信号がオンであるBANKを持つムーブ
イン・レジスタ211の検索が行われ、この場合には、
該当するムーブイン・レジスタ211が無いことが検出
される。
ス・フェッチを行うムーブイン・レジスタ211を指示
するバイパスMIR番号BYPASS MIR IDを
出力して、それによって指示されるムーブイン・レジス
タ番号が、例えば「0」のムーブインレジスタ211か
ら、バイパス・フェッチを行うよう指示する。なお、前
記した場合と同様、上記バイパス・フェッチを行う段階
においては、バイパスMIR番号BYPASS MIR
IDは任意の値に設定されている。
41でバッファ・ミスヒットが検出されていることか
ら、バイパス制御回路242からバイパス・フェッチの
指示が出されると、データセレクタ251は、MIR
IDが「0」のムーブイン・レジスタ211からのデー
タを選択して、アライン回路261を介して要求元の処
理装置271に対して送出する(図5(g),(h)参
照)。
フェッチしたBYPASS MIR ID信号とバイパス
制御回路242によるムーブイン・レジスタ211の検
索結果が一致しているか否かが判別され、この場合には
一致しないので、バイパス・フェッチが成功しなかった
ものと判断され、処理装置271に報告されるととも
に、処理の未完了を示すLMD信号を上げ(図5(c)
参照)、さらに、後続のリクエストを処理しているRE
Q−1,REQ−2のパイプラインを中断させる。
ムーブイン待ちであることを示すM1を上げて、待ち状
態WAIT STATEに入る(図5(i)参照)。や
がて、主記憶装置201からムーブイン・データをセッ
トするムーブイン・レジスタ211を示すDOW RE
Q IDを伴って、ムーブイン・データの送出が開始さ
れる(図6(k),(l),(m)参照)。
要求によってREQ−0’のパイプラインが起動され、
そのTサイクルでレジスタ231のPORT−0に保持
されていたフェッチ・アドレスREQ−ADRS(図
5,6(d)参照)により、前記したように、TAG部
222の検索が行われ、バッファ記憶装置221におけ
るフェッチ・リクエスト・データの有無が検査される。
れた場合には、図5,6,7には図示されていないが、
バッファ記憶装置221からヒットしたデータが読み出
されて、処理装置271に送られる。また、次のRサイ
クルで処理完了を示すSTV信号を上げて、これを処理
装置271に報告して、REQ−0’のパイプラインの
処理を終わる。
場合には図6,7に示すように動作する。まず、上記バ
ッファ・ミスヒットとは無関係に、バイパス制御回路2
42において、3組のムーブイン・レジスタ211が使
用中であることを示すVALIDビットがオンであり、
フェッチ・リクエスト・データと同一領域に対するムー
ブイン要求が行われ、かつ該当するフェッチ・リクエス
ト・データがムーブイン・レジスタ211に保持されて
いることを示すPARTIAL READY信号がオン
であるBANKを持つムーブイン・レジスタ211の検
索が行われる。
ン・レジスタ211が該当することが検出され(図6
(e)参照)、主記憶装置201に対して出したムーブ
イン要求とともに送出されたMIR IDが反映された
BYPASS MIR ID信号(図6(f)参照、M
IR IDとして「2」が設定されている)で示される
ムーブイン・レジスタ211からバイパス・フェッチが
行われる。
41でバッファ・ミスヒットが検出されていることか
ら、データセレクタ251は、MIR IDが「2」の
ムーブイン・レジスタ211からのデータを選択して、
アライン回路261を介して要求元の処理装置271に
対して送出する(図6(g),(h)参照)。次いで、
Rサイクルにおいて、バイパス・フェッチしたBYPA
SS MIR ID信号とバイパス制御回路242による
ムーブイン・レジスタ211の検索結果が一致している
か否かが判別され、この場合には一致するので、バイパ
ス・フェッチは成功したと判断され、処理装置271に
報告されるとともに、処理の完了を示すSTV信号を上
げ(図6(c)参照)、そのREQ−0’のパイプライ
ンを終了する。
・データが8バイトずつ8回に分割されて送られてくる
ので、DOW REQ IDで示されるレジスタ番号M
IR IDが「2」のムーブイン・レジスタ211のDO
W DATA IDで示されるBANKに順次セットさ
れる(図6(k),(l),(m)参照)。ムーブイン
・レジスタ211にセットされたデータをバッファ記憶
装置221に書き込むための処理要求によりMOVE−
INのパイプラインが起動され(図7参照)、レジスタ
番号MIR IDが「2」のムーブイン・レジスタ21
1にバッファ記憶装置221への書き込み単位である6
4バイトのデータが揃うとバッファ記憶装置221のD
ATA部223に書き込みが行われる(図7(v)参
照)。
EQ−2のパイプラインは、REQ−0’の起動後、R
EQ−1’,REQ−2’として順次再開される。
本発明においては、バッファ記憶装置に対するフェッ
チ・リクエストにおいて、バッファ・ミスヒットが検出
された場合、先ず、そのフェッチ・リクエスト以前に行
われた主記憶装置に対するムーブイン要求を保持する複
数のムーブイン・レジスタの内の任意に選択されたムー
ブイン・レジスタから無条件にバイパス・フェッチを行
い、バイパス・フェッチの成否を判断し、バイパスが
成功しなかった場合には、他のムーブイン・レジスタか
らバイパス可能であれば、そのムーブイン・レジスタか
らバイパス・フェッチを行い、複数のムーブイン・レ
ジスタのいずれにもフェッチ・リクエスト・データが無
い場合に、主記憶装置に対してムーブイン要求を出すよ
うにしているので、そのフェッチ・リクエスト以前のパ
イプラインにおけるムーブイン処理によりバッファ記憶
装置が使用されていても、このフェッチ・リクエストに
よるフェッチ・リクエスト・データの獲得が可能とな
り、処理を待たされることがなく、また、後続のリクエ
ストのバッファ記憶装置に対するアクセスに影響を与え
ることが少なく、バッファ記憶装置に対するフェッチ・
アクセス性能の向上を図ることができる。
を示す図である。
1)である。
2)である。
3)である。
示す図(その1)である。
示す図(その2)である。
を示す図(その1)である。
を示す図(その2)である。
を示す図(その3)である。
Claims (3)
- 【請求項1】 バッファ記憶装置(3) と、 バッファ記憶装置(3) からの要求により主記憶装置(1)
からムーブインされてくるデータをバッファ記憶装置
(3) のデータ部への書き込み単位が揃うまで保持してお
く複数のムーブイン・レジスタ(2) と、 バッファ記憶装置(3) のデータ部ないしムーブイン・レ
ジスタ(2) からフェッチ・アクセスの要求元(4) へデー
タをバイパスさせるデータ・バスとを備えた情報処理装
置のバッファ記憶制御方式において、 フェッチ・アクセスにおいて、バッファ記憶装置(3) の
ミスヒットが検出された場合、無条件にムーブイン・レ
ジスタ(2) の1つからデータをフェッチして、上記デー
タ・バスを介して要求元(4) に送出するとともに、 このバイパス・フェッチの成否を判断して、その結果を
要求元(4) に報告することを特徴とするバッファ記憶制
御方式。 - 【請求項2】 バッファ記憶装置(3) と、 バッファ記憶装置(3) からの要求により主記憶装置(1)
からムーブインされてくるデータをバッファ記憶装置
(3) のデータ部への書き込み単位が揃うまで保持してお
く複数のムーブイン・レジスタ(2) と、 バッファ記憶装置(3) のデータ部ないしムーブイン・レ
ジスタ(2) からフェッチ・アクセスの要求元(4) へデー
タをバイパスさせるデータ・バスとを備えた情報処理装
置のバッファ記憶制御方式において、 フェッチ・アクセスにおいて、バッファ記憶装置(3) の
ミスヒットが検出され、かつ、同一の領域に対するムー
ブインを主記憶装置(1) に要求していないことが検出さ
れた場合、 フェッチ・アクセスをアボートさせ、主記憶装置(1) に
ムーブイン・レジスタ番号を指示してムーブインを要求
し、 主記憶装置(1) からムーブイン・番号を伴ってムーブイ
ン・データの転送が行われたときにフェッチ・アクセス
を再度実行し、 ムーブイン・レジスタ(2) から要求元(4) へバイパスす
る場合、上記ムーブイン・レジスタ(2) からデータをフ
ェッチして、上記データ・バスを介して要求元(4) に送
出することを特徴とするバッファ記憶制御方式。 - 【請求項3】 バッファ記憶装置(3) と、 バッファ記憶装置(3) からの要求により主記憶装置(1)
からムーブインされてくるデータをバッファ記憶装置
(3) のデータ部への書き込み単位が揃うまで保持してお
く複数のムーブイン・レジスタと、 バッファ記憶装置(3) のデータ部ないしムーブイン・レ
ジスタ(2) からフェッチ・アクセスの要求元(4) へデー
タをバイパスさせるデータ・バスとを備えた情報処理装
置のバッファ記憶制御方式において、 フェッチ・アクセスにおいて、バッファ記憶装置(3) の
ミスヒットが検出され、かつ、無条件で行ったムーブイ
ン・レジスタ(2) からのバイパス・フェッチが成功しな
かった場合、 フェッチ・アクセスを再度実行し、 バイパスを行う場合には、フェッチ・アクセスと同一領
域に対するムーブインを主記憶装置(1) に要求している
と判断されたムーブイン・レジスタ(2) からデータをフ
ェッチして、上記データ・バスを介して要求元(4) に送
出することを特徴とするバッファ記憶制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04156801A JP3093446B2 (ja) | 1992-06-16 | 1992-06-16 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04156801A JP3093446B2 (ja) | 1992-06-16 | 1992-06-16 | 情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH064403A true JPH064403A (ja) | 1994-01-14 |
JP3093446B2 JP3093446B2 (ja) | 2000-10-03 |
Family
ID=15635622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04156801A Expired - Lifetime JP3093446B2 (ja) | 1992-06-16 | 1992-06-16 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3093446B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8312218B2 (en) | 2006-02-27 | 2012-11-13 | Fujitsu Limited | Cache controller and cache control method |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102173175B1 (ko) * | 2018-11-28 | 2020-11-02 | 대구대학교 산학협력단 | 강섬유보강 시멘트 복합재료의 방향성 제어 및 분산성 향상을 위한 탈부착식 마그네틱 타설 노즐 |
-
1992
- 1992-06-16 JP JP04156801A patent/JP3093446B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8312218B2 (en) | 2006-02-27 | 2012-11-13 | Fujitsu Limited | Cache controller and cache control method |
Also Published As
Publication number | Publication date |
---|---|
JP3093446B2 (ja) | 2000-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100274327B1 (ko) | 캐시가 일관된 다중 처리기 컴퓨터 시스템에서 다중 미결동작을 제공하기 위한 장치 및 그 방법 | |
US5283883A (en) | Method and direct memory access controller for asynchronously reading/writing data from/to a memory with improved throughput | |
JP4304676B2 (ja) | データ転送装置、データ転送方法、及びコンピュータ装置 | |
JPH0581129A (ja) | データ処理システムのキヤツシユ内のデータユニツトに対する所有権変更制御装置 | |
US20070180156A1 (en) | Method for completing IO commands after an IO translation miss | |
TW200813821A (en) | Hardware assisted exception for software miss handling of an I/O address translation cache miss | |
JP3920931B2 (ja) | キャッシュされたデータを読出しおよび書込む方法ならびにデータをキャッシングする装置 | |
JP3407808B2 (ja) | コンピュータシステム | |
JP3296240B2 (ja) | バス接続装置 | |
JPH064403A (ja) | バッファ記憶制御方式 | |
KR900005420B1 (ko) | 버퍼메모리 제어시스템 | |
JPH117410A (ja) | キャッシュ装置 | |
JP3039391B2 (ja) | メモリシステム | |
JP3221409B2 (ja) | キャッシュ制御システム及びその読出し方法並びにその制御プログラムを記録した記録媒体 | |
JPH0210450A (ja) | キヤツシユメモリの先行フエツチ制御方式 | |
US20060026369A1 (en) | Store data control device and store data control method | |
JPH02259945A (ja) | ストア処理方式 | |
JPH10111798A (ja) | 情報処理装置 | |
JP2567903B2 (ja) | データ転送方法 | |
JP2535593B2 (ja) | 情報処理装置 | |
JP2001229074A (ja) | メモリ制御装置と情報処理装置及びメモリ制御チップ | |
JP2531209B2 (ja) | チャネル装置 | |
WO1999049395A1 (fr) | Controleur de memoire tampon | |
JPH06301600A (ja) | 記憶装置 | |
JPH02178838A (ja) | データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000718 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080728 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090728 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100728 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100728 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 12 |
|
EXPY | Cancellation because of completion of term |