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

バツフアメモリ制御方式

Info

Publication number
JPS58159285A
JPS58159285A JP57042171A JP4217182A JPS58159285A JP S58159285 A JPS58159285 A JP S58159285A JP 57042171 A JP57042171 A JP 57042171A JP 4217182 A JP4217182 A JP 4217182A JP S58159285 A JPS58159285 A JP S58159285A
Authority
JP
Japan
Prior art keywords
buffer memory
memory
address
buffer
mode
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.)
Pending
Application number
JP57042171A
Other languages
English (en)
Inventor
Naoya Ono
直哉 大野
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
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP57042171A priority Critical patent/JPS58159285A/ja
Publication of JPS58159285A publication Critical patent/JPS58159285A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、情報処理装置のバッファメモリにおける制(
2)方式に関するものであり、更に拝しくいえば、バッ
ファメモリへの登録の抑制を制御する方式に関する。
情報処理装置lL4こおいて、中央処理装置に16KB
〜32KB程度の主記憶装置に比べて小容量ではめるが
尚速のバッファメモリ(キャッジ−メモリともまばれる
)を用意Tにとにより、実効的に主!ヒ1慧へのアクセ
クタイムを扁速化できることが知らイしている。
こ71は、一般に情報処理装置itにおいて実行される
ゾ1」グフムIcは、メモリアクセスの局所性とよばイ
1.ろl買が存在することを利用したものである。
1<+Jち1.J56比較的短期間をとってみると、プ
ログ7ムの待冨の限らnたjl!所が集中的lこアクセ
スさlLる細則があり、さらlこ一度アクセスの行われ
た近辺υノアト°レスにアクセスが集中T6という傾向
が+J這い。
1AEって、比較的小谷賞のバッファメモリを用意して
、主記憶へのアクセスに際してアクセスのけわnた語を
含む複数1ノードのブロックをバッファメモリ上にとり
込む。このとき、既にバッファメモリが一杯の状l!1
4こなっている揚台には、最も長い間アクセスの行わr
Lな〃\ったブロックをバッファ上乃)ら追出し、ここ
に、要求のあったブロックをとり込むような制御を行う
。これにより、以恢のアクセスに際して1ユ必咬な情報
はバッファメモリ上に存在する確率が尚くでき、メモリ
へのアクセスの大部分は、このバッファへのアクセスで
すませることができ、低速な主記憶にアクセスTΦ回航
が減少し、これにより、情報処理装置が高速γj王記憶
をνdえたと同等の幼果を得ることができる。
一般の局所性の編いプログラムIこメ寸しC”1ま、最
も長い間i照の行わイLな9)ったブロックをバッファ
メモリから追出す、いわゆるLRU方式が効果的である
ことが知られており、一般の情報処理装置Eこおいては
、 L)LL1万式が通常用いられている。
しη)しながら、時短のプログラムにおいては先に述べ
たよ゛うな局所性が極めて低いものが存在し、こり)よ
うなプログラムが実行されると広いアドレス空間(こわ
たってアクセスが行われ、力)っ同一のアドレスに対し
て繰返しアクセスが行われることが少い。このようなプ
ログラムを実行する際にバッフアメそりを使用すると、
バッファメモリ上にとり込まれたブロックが再使用され
心ことは少いにも乃1かわらず、バッファメモリの多く
の部分がこのフ[Jツクの使用する情報のためlこ置換
えられることにfjす、バッファメモリの内容が破壊さ
れ′Cしまい他のプログラムが再開した時点で、新た1
こバラノアメモリへの情報のとり込6が必要となり、1
1g独処理装置の性能を低′ドさせΦ原因となっ(LS
 6 。
4−発明は1局所性の低い情報に対しては、バッノアメ
七りのL)(、U方式によるブロックのtir換えのγ
ル」リズムを抑止し特定のブロックの6が置換;(c’
Jス寸!R+こなるように市1」御し、バラノアメモリ
の多くg)部分り内容の保存7j:ii+ろうとするも
のであるO 局所性の低いプログラムに対してこのように、特定のブ
ロックのみを置換えの対象とした場合でも、このプログ
ラムでのバッファメモリでのヒツト率は、全ブロックを
対象としてLRU方式でIf換んた場合に比べてそれほ
ど低下することはない。
これに対して、前述のようにバッファメモリの他の部分
はその門番が保存されているので、局所性の低いプログ
ラムの実行が中断した時点で再開される他のプログラム
のfこめの情報が保存されている確率が嶋まり生体とし
てのバッフアメ七りのヒツト率を嶋くすることができ、
従って実効的な主記憶アクセスタイムが^速比され1′
#報処理装置の性能が同上する。
4:発明IJ、パンファメ七りのプロ、りのリプレース
メント1tilJ !al IC圓して、リプレースを
0定のブロック位置lこメ1してのみ行う限定モードε
よび、L)tUU方式よりリプレースを行う通常ヤード
を設け、/・2フアメ七り制御モードを限足七−ドに設
足、限定モートから解除1−る十段、を儒え限定セード
にある場合tこは、バンファメ七りのアクセスに際しで
、ブロックのLRU制御情報の更新を抑止し、バッファ
メモリへのブロックの収込みに際して]まk stJ配
LRU制呻制御で最も長い間アクセスのイJ 4) r
l、l;、かったことを指定されているブロックをリノ
ーレースの対象として選択し、ここに、主記憶のソロ、
りの転送を行うための制a141+段を儂えること1こ
より、局所性の低いプログラムの実行に際しでは、この
実行に先立って前記特足のモードを設建し、夾?J’が
終fした時点でこのモードを解除リ−ることlこより、
M新注の低い処理の実行に際してはバッフアメそりの特
足りブロックしが便用さイージーいようEこすることを
可能1こしたものであり、こイ1.fこまり、バッファ
メモリ上でのヒツト率を大[IJ【こ下げることすく、
バッファメモリ上のすN報が1、d tir 6の低い
処理lこより破壊されることを防ぐことか口Ju目と1
x6゜従って全体としてのバッフアメ(−IJでのヒツ
ト率を高くできることになる。
匪っで、不発明の目的は、全体として高いヒツト4を犬
視しつるバッフアメ七り制岬方式を提供4゛ること+C
あり、実効的な土Br2憶アクセスタイムを関連化しう
るハ、ファメ七り制御方式を提供す会こと(こあり、筒
性症な情報処理装置を実現しうるバッフアメそり制御方
式を提供すること−こめる。
次に図面を用い、本発明について説明する。
図11杢発明のハ、ファメ七り制御方式を具体的にした
装置の一実施例を示すフロック図である。
本人九同1こおいては、上記−は−レリとして16Mワ
ード(IM=−220)からなるものとしでおり、王i
己憶γドレス(ユ24ヒ゛7ト′iJ1らなる。バッフ
ァメリはd量は4にワードで1ブロツクが8ワードで2
56セツト×2コンパ−トメノドの構成とγXっでいる
こ217こ対応しで、24ビツトの土り己憶アドレスレ
ジスタ1(ま24ビツトからなり、F位力)ら谷々3ビ
ットのブ1]、vり内ソードアドレス都101. 8ビ
、トのセ、ドアドレス都102.13ビ、トカブ07ク
アトレスm l 0377>らγよっCいる。
バノノアメモリ慄索チーーノル2Iま、バッフアメ七り
の256セツトtこvl応して、256エントリ711
)うIより谷エントリは、2:JL/バートメントに対
応して、第1および第2のフロックアドレス8201゜
202、Cよび谷コンバートメトのアクセスのされ方に
関Tる情報を示すためのリプレースメントビット203
をもつ。
第1および第2のブロックアドレス8201゜202の
出力は、各々第1および!!2の比較回路3LJ1%お
よび302に印加されている。主記憶アドレスレジスタ
lのブロックアト1/ス部103の値は第1および第2
のブロックアドレス部201゜2(+2に印〃口されて
いるとともに第15よび第2の」じ叡回53ox、3o
zの抽の人力にも印加されでいる。弔1石よび第2の比
較回路の一致検出信場303.304はアクセス制御部
4に印加さn”cおり、この比較回路303,304の
出力に応じてバ。
ノアの適切tブ07りへのアクセス、主記憶からバッフ
ァメモリへのブロックの′転送、リプレース)7 i 
ヒ’ 、トの更新吟が行われることになる。
・・7フアメ七り検索テーブル2のリプレースメントヒ
ツト都203の出方はアクセス制御部4に印〃口さイ1
ており、また、アクセス制御部4で生成されたリプレー
スメント情報401はバッファメモリ検索テーブル2の
同一ピッ)203jこ印カロされているとともにアドレ
ス信号の一部としでバッフアメ七りにも印加されている
主記憶装置5はアクセス制cm部での指令に応じて主記
憶アドレスレジスタlの24ピントのアドレスを用いて
、あるいLt主記憶アドレスの上位21ビ、トオよび、
アクセス制御部4で生成されるブロック内1ノードアド
レス4027i−用いてアクセスざ(L1データの絖田
し、および誓込6は主記憶データレジスタ6を介して何
イ)れる。
バッフアメセリア(ま4に’ノードのd輩をもち、アド
レス信号として(まアクセス制御!141部4で生成さ
イ′むたリプレースメント悄tI@401.王記憶アド
レスレジスタlのセットアドレスils 102の11
![および、アクセスh:lmm4での1b令に応じて
、3ヒツトの上記憶アドレスレジスタのワードアドレス
部101の誠、あるい(まアクセスIfilJ(財)部
4で生成された櫨402が印〃口さイしている。
バッフアメ七り7の人力データとしては、±m11′i
フ′−タレジスタロのffiが印加され、でおり、出力
データ(よメモリデータレジスタ8に印加されている。
la h 、メモリデータレジスタ8には、主記憶デー
タレジスタ6の値、およびプロセッサからの誓込6デー
タも印加されている(図示せず)。
アクセス制御部41こは、バッファメモリの制御(二一
ドク・保持するためのモードフリップフロップ4(+4
が設けらalこ4’Lが値1をもつ場合には限定(コー
ドであることを示す。モードフリップフロップ404は
、プロセッサ(図示せず)を制御するたぬυンマイクロ
ブ′ログラムにより、セット、リセ71゛jノ”J’ 
II+5となっており、マイクロプログラムの付足のフ
ィールドのデコード結果が信号l18I405゜4(+
6により、セット、リセットが行われる。
仄Ic本実施例における動作をii5!明する。
メモリへのアクセス費求があると、メモリアドレスレジ
スタlに、アクセスすべき主a己Lmアドレスがセット
される。
rχに、このアドレスのセ、ドアドレス部によりバッフ
アメそり検索テーブル2を絖出す。この結果、第1およ
び第2の比較回路のいずれρ)一方が一致を検出したと
きアクセス制御回路4は、一致の検出されたコンパート
メントに対応する値を生成し、これをコンパートメント
アドレスとしてII!号1Ill!401に印カロし、
これとメモリアドレスレジスタ1のセットアドレス10
2、ブロック門■ツードアには、一致(/J慣出されな
かった万の比較回路にメ1応する値をリプレースメント
情報として生成し、これをバッファメモリ検索テーブル
2のリプレースメントビット部203のセットアドレス
lこ対応するエンlに誉込み処理を終了する。
モードビットが1の場合、即ち、限定モードの場合には
この生成さイtたリプレースメント情報のバッファメモ
リ検索テーブル2のリプレースメントビット部203へ
の誓込みが抑止される。
これにより、比較回路のいずnか一方で一致が検出され
た場合、即ち、バッファメモリ上に対応Tるブロックが
存在する場合には、対応するバッファメモリ上のブロッ
クに対するアクセスを行うとともに、通常モードにおい
ては、バッファメモリ検索テーブル2のリプレースメン
トビ、トは長い間アクセスの行われなかった方のコンパ
ートメントを常に指定するように更新が行われ、@定モ
ードにおいては、バッファメモリ検索テーブル2のリプ
レースメントビットの更新は行わないことになる。
第1および第2の比較回路301,302のいずれも一
致を検出しない場合、即ち、バッファメモリ上(こアク
セスの焚求されたワードを含むプロ。
りが存在しない場合には、必要なブロックを主記憶から
バッファメモリに取込むために次の制御が打われる◎ 即ち、バッファメモリに対するコンパートメントアドレ
ス401としては、バッファメモリ検索テーブル2乃)
ら続出されたリプレースメントビ、ト部203の1区を
印〃口し、主記憶装置2よびバッフアメ七りのブロック
内ワードアドレスとしては、アクセス制御1141m4
のワードカウンタ403の出力402を使用して、[ノ
ードカウンタ403の11をOから7まで順次カウント
アツプしながら、谷値につい−C主記憶5を読出し、続
出されたデータを主記憶データレジスタ6にセットし、
この値をバッファメモリ7に誉込む。0の処理を行った
後バッフアメ七り検索テーブル2の、第1あるいは第2
0)ブ1」2ノアドレス部201め6い1ま、202の
リプレースメントビット都203力)ら続出された1直
でせb定されるブロックアドレス部に、主記憶アドレス
レジスタ1のプロ、クアドレス部103の値をi込む。
この後、先に示した比較回路301,302iこよる一
致検出の処理を何う。この場合1こは、対重6するプロ
、りがリプレースメントビットで指定されるコンパート
メント1こ既に格納済であるので、比較回路で一致が検
出さイL、バッファメモリへのアクセスが行わlLるこ
とにな−る。
次に本発明の第2の実施例について説明1−心。
本実施例においては、バッファ制御モードを限定モード
にt&足、あるいIま解除するために、待足り機械飴砧
令が設けられ、この特定の命会が実行さnた時点で、ア
クセス制fJ4部のモードが設定される。このモードが
限定モード−こ設定されている場合、通常モードに設定
されている場合の動作は第1の実施約6こおける場合と
同様である。
アメモリの特定のブロック位置のみをリプレースのA1
象とするような動作モード(限定モード)を設定、解除
する手段、およびバッファメモリへの7′クセスj<−
際し、前記動作モードlこ従って、限妃セードにおいて
はブロックのアクセスに関するリグレースメンl[報の
史″#は行わないようlこする山すIIf4I+氏、葛
よびブロックのリプレースに際してはリプレースメント
情報においで、′Nkも長い間アクセスの行われなかっ
たと指定されているブロック1こ対してブロックのリプ
レースを行うための制tIiU+波を儂んることにより
、限定モードにおいてIJ1ハ、ノアメモリの特定のブ
ロック位置の6がリプレースの×1象となるようにした
ものであり勤こイL(こより、局所性の低いプログラム
の実行に際して、このためにバッフ・rメ七りの多くの
部分がリプレースの対象となることを防止することを可
能にしたものである。
従って、以上述べた本発明の主旨に背2Sl)ぬ限り、
いくつかの変形がoT MEであり、たとえば、本実施
例におけるバッファメモリのセット数、コンパ−1メン
ト数、ブロックサイズ等、あるい(ゴ±記憶谷を等は他
の適切ff値1こ設定できること(ま明ら乃)であり、
たとんばコンパートメント数を多くした一合においてl
!、’Jプレースメント情報として複数−のビット数か
心安となるとともにリプレースメントfft報の更新、
めるいIま最も艮い間アクセスの行われなかったコンパ
ートメントの@田等の一理もコンパートメントHに対応
した複雑なものとなるであろう。
また、本実胤しリにおいては、バクファメモリの検索に
実アドレスを用いるものとして説明しているが、使米知
られているように、仮想アドレスIこよりm本を汀うよ
うにTΦこともiJ能である。
まfこ、本実施例においては、アクセス制御部の具体的
な実現方法については、詳細なay?、門は行るCいぽ
いが、これは主記憶装置、バッファメモリの狩注等蚤こ
応じて従来知られている技術多こより容易(こ作成ロエ
能であることはいうまでもない。
また、本実施例の説8Aにおいてはパ、ファ制御七−ド
の限定モードへの設定のタイミングについC(ま待に述
べていないが、たとえば長大データの移送*iJ令υシ
よっ7,1′特定の命令の実行に際して、こOVμδ令
C/、+大hk制御するマイクロ命令列の中で限定モー
ト1ご設定、解除テ心場合、あるいは特定の〕l−Jセ
ンヤシ)プロセジャを記述する制(財)構造体(こ?’
Lをプロセジャ記述子とよぶ)にこのフィールドをこよ
り、このプロセジャの実行に除しては限7P七−ドでバ
ッファメモリを制御iITべきであるこ・y 、5−示
’j−”+’f定のフィールドを設け、プロセジャの1
−ル蛸■゛の実行に際して、対応する10セジヤ記述子
Q)このフィールドを参照し、限にモードの指定がある
一合iこは、アクセス制御モードを限定−P−ドに設定
し、リターンに除しで、限定モードを解除する。ハード
ウェアによりプロセジャ目ピ述子のチェック等が行わn
る場合には、コール命令を行うマイクロ命令列において
、この七−ドの設定が制御されることになる。
また、プロセジャ記述子のチェックを/\−ト″ウェア
により竹わないようrl情報処理装1i[こおいでは、
ソフトウェアによりプロセジャ記述子の前述のバッファ
メモリ制御モードフィールドをチェ。
りし限定モードの指定がある場合には、限定モードに設
定するための特別の愼械耐命令を夫付することにより、
特定のプロセジャの実行1こ−してノイッファメモリを
眠足モードで使用することが口■能であΦ0
【図面の簡単な説明】
図は、不発明のバッファメモリ制両方式を具俸的にした
一実施例を示すブロック図である。 図(こおいて、 1はメモリアドレスレジスタ、 2(まバ、ノアメモリ恢糸アーソル、 301.12は第1および第2の比幀回路、4はアクセ
ス制御部、 5は上記[。 6番ま土i己憶データレジスタ、 7はバッファメモリ、 8(エメモリデータレジスタを示す。

Claims (1)

  1. 【特許請求の範囲】 1、  t#m処8i装祷のバッファメモリ憂こ2いて
    、バッファメモリ上Qノブロ、クリリプレース飼岬1こ
    圓する特定のモードを設定、解除−)−6手段、および
    バッフアメ化りでのfH報のアクセスtc PIp!し
    て、前記特定の七−ドが設定ざiしているJd曾lこは
    、プロこと1こより、111記待尼のモードにある(転
    )甘に(ま、バッファメモリ上の特定のプロ、り装置d
    こ対しての6ブロツクのリプレースを行わせることを棒
    慎トスるバッファメモり制一方式。 2、  i+Ji<バッファメモリ上りフロックの制御
    lこ関する特定のモードを設定、)Ij!I尿Tるす坂
    が愼体瞼細舎をもつことを特似ξリーる待針i^水の範
    囲第】項ム己載のバッフアメ化り制御方式。
JP57042171A 1982-03-17 1982-03-17 バツフアメモリ制御方式 Pending JPS58159285A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57042171A JPS58159285A (ja) 1982-03-17 1982-03-17 バツフアメモリ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57042171A JPS58159285A (ja) 1982-03-17 1982-03-17 バツフアメモリ制御方式

Publications (1)

Publication Number Publication Date
JPS58159285A true JPS58159285A (ja) 1983-09-21

Family

ID=12628517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57042171A Pending JPS58159285A (ja) 1982-03-17 1982-03-17 バツフアメモリ制御方式

Country Status (1)

Country Link
JP (1) JPS58159285A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62276646A (ja) * 1986-02-21 1987-12-01 Nec Corp キヤツシユメモリ置換方式
JPH07182235A (ja) * 1993-12-24 1995-07-21 Nec Corp 情報処理装置
JP2002510085A (ja) * 1998-03-31 2002-04-02 インテル・コーポレーション テンポラリ命令及び非テンポラリ命令用の共用キャッシュ構造

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62276646A (ja) * 1986-02-21 1987-12-01 Nec Corp キヤツシユメモリ置換方式
JPH07182235A (ja) * 1993-12-24 1995-07-21 Nec Corp 情報処理装置
JP2002510085A (ja) * 1998-03-31 2002-04-02 インテル・コーポレーション テンポラリ命令及び非テンポラリ命令用の共用キャッシュ構造

Similar Documents

Publication Publication Date Title
US9645795B1 (en) Accelerated class check
US8443155B2 (en) Lock-free concurrent object dictionary
US7426626B2 (en) TLB lock indicator
US5809522A (en) Microprocessor system with process identification tag entries to reduce cache flushing after a context switch
US7165164B2 (en) Method and apparatus including heuristic for sharing TLB entries
US6760909B1 (en) Virtual memory system and methods
KR101470713B1 (ko) 버퍼링된 저장을 이용하여 트랜잭션들을 가속화하기 위한 메커니즘들
US8984264B2 (en) Precise data return handling in speculative processors
US7533138B1 (en) Practical lock-free doubly-linked list
EP0855646A2 (en) Conditional branch prediction apparatus and method
JPH03206523A (ja) デジタルコンピユータにおいてデータをメモリ内のスタツク上にプツシユする方法およびパイプラインされる命令とメモリを有するデジタルコンピユータにおいてスタツクオペレーシヨンを実行する回路
US10831675B2 (en) Adaptive tablewalk translation storage buffer predictor
JP3204323B2 (ja) キャッシュメモリ内蔵マイクロプロセッサ
JPH04352256A (ja) メモリ空間を節約する方法および装置
JP2003511787A (ja) 変換した命令を実行しつつコンテキストを維持する方法および装置
US10394559B2 (en) Branch predictor search qualification using stream length prediction
JPH0529945B2 (ja)
US20040073753A1 (en) Directoryless L0 cache for stall reduction
EP4139792A1 (en) Filtering micro-operations for a micro-operation cache in a processor
EP0439924A2 (en) Improved external memory accessing system
JPS58159285A (ja) バツフアメモリ制御方式
US7181576B2 (en) Method for synchronizing a cache memory with a main memory
JPS62105250A (ja) 多重プロセツサ・システムのキヤツシユを制御する方法
JPH0529946B2 (ja)
Hua et al. Early resolution of address translation in cache design