Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS5856175B2 - バツフアメモリ制御方式 - Google Patents
[go: Go Back, main page]

JPS5856175B2 - バツフアメモリ制御方式 - Google Patents

バツフアメモリ制御方式

Info

Publication number
JPS5856175B2
JPS5856175B2 JP54152715A JP15271579A JPS5856175B2 JP S5856175 B2 JPS5856175 B2 JP S5856175B2 JP 54152715 A JP54152715 A JP 54152715A JP 15271579 A JP15271579 A JP 15271579A JP S5856175 B2 JPS5856175 B2 JP S5856175B2
Authority
JP
Japan
Prior art keywords
block
data
replacement
buffer memory
memory
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
Application number
JP54152715A
Other languages
English (en)
Other versions
JPS5677966A (en
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP54152715A priority Critical patent/JPS5856175B2/ja
Publication of JPS5677966A publication Critical patent/JPS5677966A/ja
Publication of JPS5856175B2 publication Critical patent/JPS5856175B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明はバッファメモリ制御方式に関し、特に、データ
のリプレースを行なう際に直前に主記憶からフェッチさ
れたブロックデータがリプレースの対象とならないよう
にしたバッファメモリ制御方式に関する。
バッファメモリのアドレスを、アクセスアドレスの下位
部分に対応する「セットアドレス、1と、アクセスアド
レスとは無関係な「ブロックアドレス−1とに分けて制
御するのが従来のセットアソシアティブ方式のバッファ
メモリであり、リプレース部が行うのはこの「ブロック
アドレス」の制御である。
主メモリよりバッファメモリにデータのコピーを入れる
時(これをブロックフェッチと呼ぶ)アクセスアドレス
に対応する1つのセットアドレスが決定される。
1つのセットアドレスには複数のブロックがありこのう
ち1つのブロックが1回のブロックフェッチで入れ替え
の対象となる部分である。
リプレース部はこの複数のブロックのうちから1つを選
択しデータの入れ替えの場所を指定する。
今、ブロックフェッチが行われ対応するセットアドレス
にある複数のブロックには全てデータがすでに入ってお
り空のブロックが1つもないとするとリプレース部では
その複数のブロックに入っているデータの全てについて
過去にアクセスがあった時の古さを調べ、最も古いデー
タの入っているブロックを入れ替えの対象ブロックとし
てそのブロックアドレスを指定する。
これをLRu法と言うのは周知のことである。
リプレースの入れ替え制御ビット、すなわちリプレース
メモリアレイに書込まれたビットをバッファメモリにア
クセスがあるたびにどの様に制御するかは、すでに知ら
れている。
完全なLRu法によって制御する場合1つのセットアド
レス部に対応するn個のデータブロックがあるとすれば
リプレース部は1つのセットアドレスに対しくn 1
)n/2ビツトの制御ビットラリプレースメモリに持つ
このうちの1ビツトはn個のブロックの中の2つのデー
タブロックの順序づけを示しており、1セツト分の全体
のビットはn個のデータブロックの配列すなわち順序づ
けを完全に示している。
今バッファメモリにアクセスがあったとするとそのアク
セスアドレスよりセットアドレスが決められ、そのセッ
トに対応するリプレースメモリの(nl)n/2ビツト
が制御の対称として選択される。
このうちどこのデータブロックにアクセスがあったかと
いう通知によりその中の(n−1)ビットが選択されて
そのデータブロックのアクセス順序が最新となる様に書
き変えられる。
これがリプレースの更新である。
この操作をくり返すことによりリプレースメモリは常に
全てのセットアドレスに対してn個のデータブロックの
アクセスの新しさ即ち古さの順序を記憶している。
ブロックフェッチの際アクセスアドレスよりセットアド
レスは決定されるのでリプレースメモリよりこの(n−
1)n/2ビツトの情報、即ちn個のデータブロック全
部のアクセスの古さの順序を示す情報が読み出される。
この中から最もアクセスの古いデータブロックのブロッ
クアドレスを取り出す論理は更新とは逆の論理である。
各ブロックアドレスに対応して、(n−1)n/2ビツ
トのリプレース情報のうちn−1ビツトの情報が割り当
てられており、更新の時の書込みパターンと全く逆即ち
全ビットを反転させたパターンの場合そのブロックが最
もアクセスの古いデータブロックである。
従って各ブロックごとに自分に割当てられたn1ビツト
がこの最古のパターンであるかどうかという論理を取れ
ばかならずどれか1つのブロックが該当する。
以上が従来からのリプレース制御ビットの働きである。
リプレースメモリより読出されたリプレース情報は1つ
のセットアドレスに対応するn個のデータブロックの全
ての古さの順序情報をもっている。
つまり各データブロックが何番目に古いか(即ち新しい
か)というn個全部の情報を含んでいる。
従って2番目あるいはn番目に古いデータブロックを取
出す回路も作ることがで□る。
例えば1セツトのブロックが4個の場合なら完全LRu
ではn = 4であるから(n−4)n/26、従って
リプレース情報は6ビツトであり、各データブロックに
割当てられたビットはn−1−3ビツトである。
この6ビツトを各々Rot 2.RO2、Ro3t R
12tR137R23として下表の様に定義すると、最
古の各ビ データ アクセス最新 割当てビットの各ビットパ ブロック パタ −ン 0Ro1.R02,Ro3111000 1R01,R12,R13011100 2R02,R1□、馬、 001 1103
RO3,R73,R23000111ツトノくにンーン この場合ROI J RO2J RO3jビットが全て
/、0“ならデータブロックびが最もアクセスの古いプ
ロ〃 ツクである。
2番目に古い場合の各ビットのパターンは、各データブ
ロックに割り当てられたビットが最古の場合に示すパタ
ーンとどれか1ビツトが反転しているパターンの場合で
ある。
例えばROI 、RO2t R03が100,010゜
001ならデータブロック、α′が2番目アクセスの古
いブロックである。
同様に全ブロックの2番目に古い時の論理を作ることが
できる。
要するに完全LRuの場合釜ブロックに割当てられたn
−1ビツトのビットパターンが、最古の場合のパターン
と1ビツト異っていれば2番目、2ビツト異っていれば
3番目に古いことになり、n−1ビット即ち全部具って
いればn番目に古い即ち最も新しくアクセスされたブロ
ックであることを示している。
以上の様に古いデータブロックでも取り出す論理を作る
ことが出来、従ってその回路も作成できる。
また完全LRuでない場合でもリプレース情報により1
セツトの全データブロックの順序が決定されるアルゴリ
ズムを持つ方式であればすべて同様に最古以外のデータ
ブロックを取出すことができ、むしろ論理としては簡単
になることが多い。
(ここで言うn番目に古いとはリプレースビットが表わ
すものを意味し完全LRuでない場合かならずしも真の
n番目ではない) さてブロックフェッチの際、従来の方式ではブロックフ
ェッチしたデータをバッファメモリに書込む過程で、リ
プレースメモリアレイの内容も同時に書き変え、そのブ
ロックアドレスが最も新しくアクセスされた事を登録す
るようになっている。
この登録をリプレースの更新と言うがこれはブロックフ
ェッチのアクセスの終りの方のタイミングである。
にもかかわらずリプレースの読出しはブロックフェッチ
のアクセスが開始されるとすぐに行われ、あらかじめデ
ータを入れ替えるべきブロックの位置を記憶しておくよ
うになっている。
従。ってブロックフェッチのアクセスが連続して出され
た場合、1番目のアクセスによって指定された入れ替え
データブロックのアドレスと2番目のアクセスによって
指定されるブロックアドレスとは、リプレースメモリの
内容が更新されない限り同じアドレスが指定されてしま
う。
つまり全く同じ場所が入れ替えの対象となることになり
、1番目に主メモリより持って来られたブロックデータ
は、後で又使われる可能性力塙い(どもかかわらず2番
目の)゛ロ゛ンクデーク1こよりすぐ1こ上ぬりされ、
r肖されてしまうこと(どなる。
すなわち従来の制御方式では同一のセットアドレスを示
すアクセスアドレスを持つブロックフェッチが連続して
出された場合、1番目のブロックデータはバッファメモ
リ上からすぐ1こr肖されてしまうという欠点があった
又、これをさけるために同一セットアドレスに対するブ
ロックフェッチは、前のブロックフェッチが完了するま
で、即ちリプレースメモリの内容が更新されて正しく次
のリプレースすべきブロックを決定できるようになるま
で待たすような方法もあったが、この場合待たせる分だ
け性能が低下することはさけられなかった。
本発明の目的は同一のセットアドレスを持つブロックフ
ェッチの連続アクセスの場合リプレースが最も古いデー
タブロックのみでなく2番目のアクセスの場合には2番
目あるいはn番目に古いデータブロックのアドレスを入
れ替え対象として指定することにより、1番目のアクセ
スが完了するまで2番目以降のアクセスを待たせたり、
先にフェッチしたブロックデータが重複書込みによって
消されるという欠点を解決し、性能を向上させることに
ある。
即ち成るブロックフェッチの結果としてリプレースメモ
リの内容を更新する以前に、同一セットアドレスに対し
て次のブ爾ツクフェッチが必要となった場合に現在ブロ
ックフェッチが進行中でその結果主メモリのデータを書
き込もう圭しているブロック位置を、次のブロックフェ
ッチの書き込み先ブロックとして指定しないようにする
ことにより性能改善を図ることを目的としている。
そして、上記目的を遠戚するために、本発明は、バッフ
ァメモリをアクセスするごとにリプレースメモリの内容
を更新してアクセスされたデータを含むブロックが最新
であることを記録し、必要とするデータがバッファメモ
リに存在しなかった場合はリプレースメモリの読出しデ
ータにもとづいて追い出すべきブロック番号を決定し、
新たなデータを当該ブロック番号のブロック位置へ主記
憶からブロック転送するバッファメモリ制御方式におい
て、 上記リプレースメモリの読出データに基づいて最古のデ
ータブロック番号を決定する第1のリプレー入決定回路
と、最古の次に新しいデータブロック番号を決定する第
2のリプレース決定回路とを有し、既に処理進行中のブ
ロック転送が無い場合は上記第1のリプレース決定回路
によってリプレースの対象となるブロック番号を決定し
、既に;処理進行中のブロック転送が有る場合は上記第
2のリプレース決定回路によってリプレースの対象とな
るブロック番号を決定することを特徴とする。
以下、本発明を実施例により説明する。
図は本発明による実施例のリプレース制御回路であり、
ン図中、1はリプレースメモリ部、2は最古のデータブ
ロックを決定する第1LRU回路、3は2番目に古いデ
ータブロックを決定する第2LRU回路、4はn番目に
古いデータブロックを決定する第nLRU回路、5は比
較回路、6は選択回路、7は第2レジスタ、8は第2レ
ジスタ、9は第nレジスタ、10は最初のブロックフェ
ッチデータのバッファメモリ書込ブロック番号を指定す
る情報線、11は2番目のブロックフェッチデータのバ
ッファメモリ書込ブ陥ツク番号を指定する情報線、12
はn番目のブロックフェッチデータのバッファメモリ書
込ブロック番号を指定する情報線である。
リプレースメモリ部1から出力されるリプレース情報は
第1LRU回路2、第2LRU回路3、・・・・・・、
第nLRU回路4に同時に入力され、第1LRU回路2
からは最古のデータブロック番号が出力され、第2LR
U回路3からは2番目に古いデータブロック番号が出力
され、以下同様にして、第nLRU回路4からはn番目
に古いデータブロック番号が出力される。
比較回路5は連続して発生するブロックフェッチのセッ
トアドレスを比較し、同一セットアドレスのものがある
か否かということおよび同一セットアドレスのものがあ
るとき同一のものがいくつあるかということを判別し、
選択回路6へ選択信号を送出するものである。
選択回路6は比較回路5からの選択信号;こもとづき、
第1LRU回路2〜第nLRU回路4のいずれか1つと
、第ルジスタ7〜第nレジスタ9のいずれか1つとを選
択し、選択したLRU回路の出力を選択したレジスタに
送出する。
以前に発出されて未だ完了していないブロックフェッチ
がなく、最初のブロックフェッチである場合には、リプ
レースメモリ部1より出力されるリプレース情報にもと
づき第1LRU回路2により得られる最も古いデータブ
ロックの位置情報が第2レジスタフ1こセットされる。
すなわち、比較回路5からの選択信号により選択回路6
は第1LRU回路2の出力を第2レジスタフに導く。
一方、すでに発出されて未だ完了していないブロックフ
ェッチが存在し、その状態で2番目のブロックフェッチ
が発出された場合、前後のブロックフェッチのセットア
ドレスが比較回路5により比較される。
比較の結果両者のセットアドレスが一致しなかった場合
は、比較回路5からの選択信号により第1LRU回路2
の出力が第2レジスタ8ヘセツトされる。
また、両者のセットアドレスが一致した場合は、比較回
路5からの選択信号により第2 L RU回路3の出力
が第2レジスク8ヘセツトされる。
同様1こして、以前の(n−1)個のブロックフェッチ
が完了しない間にn番日のブロックフェッチが発生され
た場合、該n番目のブロックフェッチのセットアドレス
が以前のいずれのセットアドレスとも一致しないとき第
1LRU回路2の出力が第nレジスタ9ヘセツトされる
一方、1番目〜n番目のブロックフェッチのセットアド
レスがすべて同一のとき第nLRU回路4の出力が第n
レジスタ9ヘセツトされる。
これにより、重複するブロック転送の際、バッファメモ
リの同一のブロック位置が主記憶からのデータを入れる
場合として連続して指定されることはない。
本発明はすでに説明した様に従来の回路に2番目あるい
はn番目に古いテ゛−タブロ゛ンクをすブレース情報よ
り決定する回路を追加することにより同一セットアドレ
スの連続ブロックフェッチの除目−のエリアがバッファ
書込みブロックとして指定されることを防止してブロッ
クフェッチデータの消失を防ぐようにしたので、これに
より性能の向上、制御の簡略化を計ることができるとい
うすぐれた利点をもっている。
【図面の簡単な説明】
図は本発明による実施例のリプレース制御回路である。 図中、1はリプレースメモリ部、2〜4はLRU回路、
5は比較回路、6は選択回路、7〜9はレジスタ、10
〜12はバッファメモリ書込ブロック番号を指定する情
報線である。

Claims (1)

  1. 【特許請求の範囲】 1 バッファメモリをアクセスするごとにリプレースメ
    モリの内容を更新してアクセスされたデータを含むブロ
    ックが最新であることを記録し、必要とするデータがバ
    ッファメモリに存在しなかった場合はリプレースメモリ
    の続出しデータにもとづいて追い出すべきブロック番号
    を決定し、新たなデータを当該ブロック番号のブロック
    位置へ主記憶からブロック転送するバッファメモリ制御
    方式において、 上記リプレースメモリの読出データに基づいて最古のデ
    ータブロック番号を決定する第1のリプレース決定回路
    と、最古の次に新しいデータブロック番号を決定する第
    2のリプレース決定回路とを有し、既に処理進行中のブ
    ロック転送が無い場合は上記第1のリプレース決定回路
    によってリプレースの対象となるブロック番号を決定し
    、既に処理進行中のブロック転送が有る場合は上記第2
    のリプレース決定回路によってリプレースの対象となる
    ブロック番号を決定することを特徴とするバッファメモ
    リ制御方式。 2 既に処理進行中のブロック転送が有る場合でも該進
    行中のブロック転送と後続するブロックフェッチ要求の
    両アドレスのうち特定の部分の比較結果が不一致を示す
    場合は常に上記第1のリプレース決定回路に従ってリプ
    レース制御を行なうことを特徴とする特許請求の範囲第
    1項記載のバッファメモリ制御方式。
JP54152715A 1979-11-26 1979-11-26 バツフアメモリ制御方式 Expired JPS5856175B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP54152715A JPS5856175B2 (ja) 1979-11-26 1979-11-26 バツフアメモリ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP54152715A JPS5856175B2 (ja) 1979-11-26 1979-11-26 バツフアメモリ制御方式

Publications (2)

Publication Number Publication Date
JPS5677966A JPS5677966A (en) 1981-06-26
JPS5856175B2 true JPS5856175B2 (ja) 1983-12-13

Family

ID=15546565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54152715A Expired JPS5856175B2 (ja) 1979-11-26 1979-11-26 バツフアメモリ制御方式

Country Status (1)

Country Link
JP (1) JPS5856175B2 (ja)

Also Published As

Publication number Publication date
JPS5677966A (en) 1981-06-26

Similar Documents

Publication Publication Date Title
US4980816A (en) Translation look-aside buffer control system with multiple prioritized buffers
US5933860A (en) Multiprobe instruction cache with instruction-based probe hint generation and training whereby the cache bank or way to be accessed next is predicted
JP3620473B2 (ja) 共有キャッシュメモリのリプレイスメント制御方法及びその装置
JPH11282821A5 (ja)
EP0167089B1 (en) Memory access control system and method for an information processing apparatus
EP0173909B1 (en) Look-aside buffer least recently used marker controller
JPS5856175B2 (ja) バツフアメモリ制御方式
JPH01229345A (ja) データ処理装置
US7219199B1 (en) System and method for increasing bandwidth in a directory based high speed memory system
JP2636485B2 (ja) キャッシュ記憶装置
JPS5914826B2 (ja) バツフアメモリ制御方式
JPS61112260A (ja) 多重階層記憶システムにおけるスワツプ制御装置
JPH04304B2 (ja)
JPS63311548A (ja) キャッシュメモリ制御回路
JPH04288647A (ja) キャッシュメモリにおける置き換え制御装置
JP2000330869A (ja) キャッシュメモリ装置
JPH1185613A (ja) キャッシュメモリ
JPH0612331A (ja) キャッシュメモリ制御装置
JPS6042972B2 (ja) アドレス変換機能を有する情報処理装置
JPH05181746A (ja) データ処理システム及びメモリ制御方式
JPH0215150Y2 (ja)
JPH0635801A (ja) 階層メモリ制御方式
JPH02259945A (ja) ストア処理方式
JP2000066955A (ja) コピーキャッシュ情報掃き出しレベル選択方式
JPS6042971B2 (ja) 情報処理装置