JPS62118457A - バツフア記憶制御方式 - Google Patents

バツフア記憶制御方式

Info

Publication number
JPS62118457A
JPS62118457A JP60259447A JP25944785A JPS62118457A JP S62118457 A JPS62118457 A JP S62118457A JP 60259447 A JP60259447 A JP 60259447A JP 25944785 A JP25944785 A JP 25944785A JP S62118457 A JPS62118457 A JP S62118457A
Authority
JP
Japan
Prior art keywords
address
buffer storage
bit
directory
buffer
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
JP60259447A
Other languages
English (en)
Inventor
Kanji Kubo
久保 完次
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60259447A priority Critical patent/JPS62118457A/ja
Priority to EP86115928A priority patent/EP0224168A3/en
Publication of JPS62118457A publication Critical patent/JPS62118457A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • G06F12/1054Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 −本発明はバッファ記憶制御方式に関し、特に論理アド
レスでアクセス可能とするバッファ記憶制御方式に関す
る。
〔発明の背景〕
バッファ記憶を有する計算機システムでは、一般にバッ
ファ記憶容量を大きくするほどバッファ記憶のヒツト率
が高くなり、システムの平均命令時間が短縮される。し
かしながら、仮想記憶方式を採用した計算機システムで
は、バッファ記憶装置で使用するアドレスのピッ1へ数
に制約を受ける。
例えばアドレスがビット1〜31で表わさオし、4にバ
イトが1ページである仮想記憶方式では、論理アドレス
のピッ1〜1〜19はアドレス変換を受ける部分であり
、ビット20〜31は実アドレスと等しい部分である。
従来のバッファ記憶装置は実アドレスでアクセスする方
式なので、アドレス変換バッファとバッファ記憶を同時
に読出そうとすると、バッファL+J憶装置で使えるア
ドレスは論理アドレスのピッ1−20〜31の4にバイ
トとなる。これ以1―容曖を増やすためにはロウ数を増
やさなければならないが、これにより比較回路が増え、
回路が複雑になり高価なものとなる。又、実装的な問題
もあってロウ数は極端に増やすわけにはいかない。
第3図は実アドレスでバッファ記憶をアクセスする従来
例のブロック図である。第3図において、1はアドレス
レジスタ、2はアドレス変換装置、3はアドレス変換バ
ッファ(”[”T、B)、4と5はそれぞれバッファ記
憶装置のディレクトリとデータ部、6はロウ選択回路、
7〜10は比較回路、11は実アドレス生成回路、12
はロウ決定回路である。以下、アドレスは第4図に示す
如くビット1〜31で表わされ、バッファ記憶データ部
(r(S)5は8バイト単位でデータの読出しを行うと
する。
アドレスレジスタ1には8バイト単位の論理アドレスの
ビット1〜28が入る。ページサイズを4にバイトとす
ると、論理アドレスのビット1〜19はページアドレス
、ビット20〜28はページ内アドレス(ページ内8バ
イト単位アドレス)となる。ページアドレスの下位ビッ
ト11〜19はTI、B3のカラムアドレスとなり、こ
れにより指定された該当カラムの2つのエントリの論理
アドレス部(LA )とページアドレスの上位ビット1
〜10とが比較回路7と8で比較される。この比較結果
は該当カラムの各エントリの実アドレス部(RA)及び
有効ビット(V)と共に実アドレス生成回路11゛に送
られる。実アドレス生成回路11は、一致がとれ、かつ
有効ビットが111”のエントリの実アドレス部製選択
する。
このようにして、ページアドレスはT T、 B 3に
よって高速に実アドレスに変換され、該実アドレスのビ
ット1〜19はバッファ記憶ディレクトリ(BAA)4
と比較回路9と10へ送られる。なお、比較回路7と8
のいずれでも一致がとれない場合は、アドレス変換装置
l¥2を使用して実アドレスに変換されるが、これにつ
いては省略する。論理アドレスのページ内アドレス部は
実アドレスと等しい部分であり、そのビット20〜28
はディレクトリ4とバッファ記憶データ部5のカラムア
ドレスとして使われる。
ブロックのサイズを64バイトとすると、ディレクトリ
はブロック11位のアドレスを保持するので、論理アド
レスのビット20〜25の6ビツトがディレクトリ4の
カラムアドレスとして使われることになる。バッファN
l】憶データ部5は8バイト単位のデータ読出しを行う
場合、論理アドレスのビット20〜28がカラムアドレ
スとして使われる。ディレクトリ4とバッファ記憶デー
タ部5は、こ〜ではロウ数を2としているので、バッフ
ァ記憶装置の容量は8にバイトである。
アドレスレジスタ1のビット20〜25によってブイレ
フ1〜す4から該当カラムの各ロウのエントリが同時に
読出される。各エントリは実アドレス(1<Δ)のビッ
ト1〜19と有効ビット(V)1ビツトを含む。ディレ
クトリ4から読出された実アドレスはそれぞれ比較回路
9と10に入り、′1゛■、B3から供給される実アド
レスと比較される。
この比較結果と上記各エントリの有効ビットをそれぞれ
「1つ決定回路12に入力して、一致のとれたロウを決
定する。一致がとれる条件は、比較が一致して有効ビッ
トがII I IIの時である。ロウ決定回路12の出
力は、バッファ記憶データ部5から読出された各ロウの
8バイトデータを選択するロウ選択回路6へ送られ、L
記比較で一致のとれたロウに対応するバッファ記憶デー
タ部5の読出しデータを選択して出力する。ディレクト
リ4の参照でいずれのロウでも一致しなかった場合は、
ブ「1ツク転送により主記憶袋W(図示せず)から1ブ
ロツクを読出しデータバス1:3よりバッファ記憶デー
タ部5に書込む。同時に’[’ T、+3:3で変換さ
れた実アドレスをディレクトリ4の該当カラムのいずれ
かのロウに書込み、有効ピッ1〜を“1″にする。
第3図では、′1゛■、B3とディレクトリ4及びバッ
ファ記憶データ部5を同時にアクセスし、その後、実ア
ドレスの比較、ロウ決定、ロウ選択を行っているが、こ
れはバッファ記憶データ部5から高速にデータを読出す
ためであり、最近はこのような構成が一般的になってき
ている。
既述した如く、仮想記憶方式を採用した計算機システム
では、バッファ記憶装置で使用するアドレスのビット数
に制約を受ける。
上記の問題を解決する方式として、論理アドレスでバッ
ファ記憶を参照する方法が特開昭56−16982号公
報と特開昭56−.1.40575号公報及び特開昭5
7−88586号公報に開示されている。しかし、特開
昭56−1−6982号公報の技術はヒツトしなかった
時、論理アドレスを変化させて再度バッファ記憶装置を
アクセスする必要があり、容量を大きくすると、このア
クセス回数が増えることになる。又、特開昭56−14
0575号公報と特開昭57−88586号公報の技術
はともにディレクトリ自体は実アドレスでアクセスする
方式なので、L記問題はないが、ストアイン方式のバッ
ファ記憶(キャッシュ)に関するものであり、この為、
ページアドレス部の下位Nビットで指定したエントリ以
外でヒツトした場合(以下、シノニム・ヒツトという)
、バッファ記憶のシノニム・ヒツトしたデータを読み直
す必要がある。
〔発明の目的〕
本発明の目的は、論理アドレスでバッファ記憶装置を参
照する計算機システムにおいて、シノニム・ヒツト時の
バッファ記憶のアクセスを高速化することにある。
〔発明の概要〕
本発明は、バッファ記憶でシノニム・ヒツトが検出され
た時、データ読出しの場合はシノニム・ヒツトしたブロ
ックを無効化すると2もにブロックを主記憶より読出し
て、論理アドレスで指定されるバッファ記憶の位置へべ
?録し、ストアの場合は、シノニム・ヒツトしたブロッ
クへストアすることを特徴とする。本発明は、特にバッ
ファ記憶にストアするデータを含むブロックが存在しな
い時、主記憶のみにストアし、存在する時、バッファ記
憶と主記憶の両方にストアするストア・スル一方式のバ
ッファ記憶制御に有効である。
〔発明の実施例〕
第1図は本発明の一実施例を示し、ページサイズ、ブロ
ックサイズ、ロウ数は第3図と同様としている。第1図
において、アドレスレジスタ1、アドレス変換装置ll
?2、アドレス変換バッファ3、バッファ記憶データ部
5、ロウ選択回路6、比較回路7,8及び実アト1ノス
生成回路11などは第3図のものと同じである。第:3
図と異なる点は、論理アドレスのページアドレスの一部
であるビット19がバッファ記憶データ部5のカラムア
ドレスに含まれている点とディレクトリが第1のディレ
フ1〜す40と第2のディレクトリ41の2つのディレ
クトリに分かれている点である。即ち、第1図では、論
理アドレスのビット20〜25を各ディレクトリ40.
41のカラムアドレスとして使い、ビット19〜28を
バッファ記憶データ部5のカラムアドレスとして使うこ
とにより、ロウ数を増やすことなく16にバイトの容量
のバッファ記憶装置を構成している。第1のディレクト
リ40と比較回路90,100及び第2のディレクトリ
41と比較回路91,101の構成は第3図のディレク
トリ4と比較回路9.lOの構成と同一である。
論理アドレスによりバッファ記憶装置をアクセスする場
合、アドレスレジスタ1に論理アドレスが置かれる。こ
のアドレスレジスタ1のビット20〜25により第1.
および第2のディレクトリ40.41の各ロウのエント
リを読出し、各エントリ内の実アドレスのビット1〜1
9と実アドレス生成回路11の出力を比較回路90,1
00,91.101により比較する。比較結果と各エン
トリの有効ビット及びアドレスレジスタ1のビット19
はロウ決定及びカラムアドレス生成回路14に入力し、
ロウ決定を行う。この結果、アドレスレジスタ1のビッ
ト19でIN定されるディレクトリで比較が一致し、有
効ビットが11 i、 +7のエントリを含むロウがロ
ウ選択回路6に知らされる。アドレスレジスタ1のビッ
ト19は0”の時第1のディレクトリ40、パ1′″の
時第2のディレクトリを指定する。データ読出しの場合
は、各ディレクトリ40.41の読出しと並行して、ア
ドレスレジスタlのビット19〜28がバッファ記憶デ
ータ部5に与えられ、ビット19〜25でバッファ記憶
データ部5の該当カラムの各ロウが、ビット26〜28
で各ロウの8バイトのデータが読出され、ロウ選択回路
6により有効な8バイトが取出される。ストアの場合は
、ロウ決定及びカラムアドレス生成が完了した後にバッ
ファ記憶データ部5の該当カラム、該当ロウへの書込み
が行われる。
ロウ決定及びカラムアドレス生成回路14の構成例祭第
2図に示す。第2図中、“ストアビット″′は読出しの
時“0”、ストアの時“1”となるものである。Nは反
転回路、Aはアンド回路、0はオア回路である。
比較回路90で一致がとれ、第1のディレクトリ40の
ロウOの有効ビットVが“1”又は比較回路100で一
致がとれ、第1のディレクトリ40のロウ1が有効ビッ
ト■が“1”の時、第1のディレクトリ40で一致がと
れる。第2のディレクトリ41の一致も比較回路91と
101及び第2のディレクトす41のロウOと1の有効
ビットVを用いて同様に決定される。ロウ番号はアドレ
スレジスタ1のビット19が“0”で第1のディレクト
リ40のロウ1側が一致した場合、又はアドレスレジス
タ1のビット19が“1”で第2のディレクトリ41の
ロウ1側が一致した場合に“1”となる。バッファ記憶
データ部5のカラムアドレスのビット19はストアビッ
トが“0”(読出し)の時、アドレスレジスタ1のビッ
ト19を選択し、ストアビットが“1″ (ストア)の
12一 時、第2のディレクトリ41の一致信号を選択する。従
ってバッファ記憶データ部5を読出す場合、カラムアド
レスはアドレスレジスタ1のビット19−28が与えら
れる。第1のディレクトリ40で比較が一致し、アドレ
スレジスタ1のビット19が“0”又は第2のディレク
トリ41で比較が一致し、アドレスレジスタ1のビット
19が“1″の時、カラムアドレスのビット1.9−2
8とロウ番号で指定されるバッファ記憶データ部5の8
バイトが読出される。第1のディレクトリ40で比較が
一致し、アドレスレジスタ1のビット19が1”又は第
2のディレクトリ41で比較が一致し、アドレスレジス
タ1のビット19が“0”の時、カラムアドレスのビッ
ト19−28により、バッファ記憶データ部5からデー
タを読出すことはできない。必要なデータはカラムアド
レスのビット19を反転した位置に存在する。この場合
、比較が一致したディレクトリのエントリを無効化する
とへもに周知のブロック転送により主記憶装置より1ブ
ロツクを読出し、データバス13よりバッファ記憶デー
タ部5のアドレスレジスタ1のビット19が示す位置へ
書込む。同時に対応するディリフ1〜リヘ実アドレスを
登録する。これにより後続の読出し要求に対してバッフ
ァ記憶データ部からデータを読出すことができる。第1
.第2のディlツク1〜す40,4]−でともに比較が
一致しなかった場合はブロック転送を起動し、アドレス
レジスタ1のピッ1−19が示すディレクトリとバッフ
ァ記憶データ部5の位置へそれぞれ実アドレスどデータ
を(1録する。
ストアの場合は、第1のディレクトリ40で一致がとれ
るとカラムアドレスのビット19を“0”にし、第2の
ディ1ツクトリ41で一致がとれるとカラ11アドレス
のビット19を“]−”にしてバッファ記憶データ部5
にストアする。いずれのディレクトリも一致し、ない時
はストアしない。これによりスI−ア・スル一方式にお
けるバッファ記憶と主記憶の一致を保持することができ
る。
以上、本発明の一実施例を説明したが、本発明は該実施
例に限定されず、例えば更に大容量のバッファ記憶装置
を実現する時は、バッファ記憶データ部5のカラ11ア
ドレスとしてアドレスレジスタビット19の上位のピッ
1−を追加すればよい。
一般にページアドレス部のト位Nピッ1−を使う場合、
ブイレフ1〜りは2N個必要である。
〔発明の効果〕
本発明に、Lれば、論理アドレスでバッファ記憶装置を
読出しシノニム・ヒツトした時、このエントリを無効化
して論理アドレスで指定さJしるバッファ記憶の位置へ
登録するので、以降の読出しはバッファ記憶から読み直
しを行うことなく高速に処理される。又、ストアでシノ
ニム・ヒツトした場合はシノニム・ヒツトしたブロック
へストアするので処理を遅らせることなくバッファ記憶
と主記憶の一致を保障することができる。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図、第2図は第1
図のロウ決定及びカラムアドレス生成回路の構成例を示
す図、第3図は従来のバッファ記憶制御方式の構成例を
示ず図、第4図はアドレス=15− 情報の構成例を示す図である。 1 ・アドレスレジスタ、  2・・・アドレス変換装
置、  3・・・アドレス変換バッファ、40.41・
・・ディレクトリ、  5・・・バッファ記憶データ部
、 7〜10,90,91,100゜101・・比較回
路、  11・・・実アドレス生成回路、  12・・
ロウ決定回路、  14・・・ロウ決定及びカラムアド
レス生成回路。 =16=

Claims (2)

    【特許請求の範囲】
  1. (1)主記憶の一部のデータの写しをブロック単位に格
    納するバッファ記憶データ部と、前記バッファ記憶デー
    タ部に格納されているブロックの主記憶アドレスを保持
    するディレクトリと、論理アドレスと実アドレスのアド
    レス変換対を保持するアドレス変換バッファとを備え、
    前記バッファ記憶データ部は主記憶アクセス要求の論理
    アドレスにおけるページアドレス部の下位Nビットとペ
    ージ内アドレス部の上位ビットでアドレスし、前記ディ
    レクトリは前記論理アドレスのページ内アドレス部の上
    位ビットでアドレスし、前記アドレス変換バッファは前
    記論理アドレスのページアドレス部の下位ビットでアド
    レスし、データの読出しの場合は前記バッファ記憶デー
    タ部と前記ディレクトリと前記アドレス変換バッファを
    並列に読出し、データのストアの場合は前記ディレクト
    リと前記アドレス変換バッファを読出した後、前記バッ
    ファ記憶データ部へデータをストアするバッファ記憶制
    御方式において、前記データの読出しの場合、前記ディ
    レクトリから2^N個のエントリを並列に読出して前記
    アドレス変換バッファの出力と比較し、いずれのエント
    リも不一致の場合はブロック転送を起動して前記バッフ
    ァ記憶データ部へブロックを書込むとゝに前記ディレク
    トリへアドレスを登録し、前記ページアドレス部の下位
    Nビットによって指定されるエントリで一致した場合は
    前記バッファ記憶データ部からデータを読出し、前記N
    ビットによって指定されるエントリ以外で一致した場合
    は一致したエントリを無効化してブロック転送を起動し
    、前記Nビットで指定される前記バッファ記憶データ部
    の位置へブロックを書込むとゝもに前記Nビットで指定
    される前記ディレクトリのエントリにアドレスを登録す
    ることを特徴とするバッファ記憶制御方式。
  2. (2)前記データのストアの場合、前記ディレクトリと
    前記アドレス変換バッファの出力の比較において、いず
    れのエントリも不一致の場合は前記バッファ記憶データ
    部へストアせず、前記Nビットで指定されるエントリで
    一致した場合は前記Nビットで指定される前記バッファ
    記憶データ部の位置へストアし、前記Nビットで指定さ
    れるエントリ以外で一致した場合は一致したエントリに
    対応する前記バッファ記憶データ部の位置へストアする
    ことを特徴とする特許請求の範囲第1項記載のバッファ
    記憶制御方式。
JP60259447A 1985-11-19 1985-11-19 バツフア記憶制御方式 Pending JPS62118457A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP60259447A JPS62118457A (ja) 1985-11-19 1985-11-19 バツフア記憶制御方式
EP86115928A EP0224168A3 (en) 1985-11-19 1986-11-17 Buffer storage control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60259447A JPS62118457A (ja) 1985-11-19 1985-11-19 バツフア記憶制御方式

Publications (1)

Publication Number Publication Date
JPS62118457A true JPS62118457A (ja) 1987-05-29

Family

ID=17334204

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60259447A Pending JPS62118457A (ja) 1985-11-19 1985-11-19 バツフア記憶制御方式

Country Status (2)

Country Link
EP (1) EP0224168A3 (ja)
JP (1) JPS62118457A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01199250A (ja) * 1987-10-02 1989-08-10 Hitachi Ltd データ処理装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920001282B1 (ko) * 1987-10-02 1992-02-10 가부시키가이샤 히타치세이사쿠쇼 버퍼메모리 제어장치
JPH07120312B2 (ja) * 1987-10-07 1995-12-20 株式会社日立製作所 バッファメモリ制御装置
JPH035851A (ja) * 1989-06-01 1991-01-11 Fujitsu Ltd バッファ記憶装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3723976A (en) * 1972-01-20 1973-03-27 Ibm Memory system with logical and real addressing
US4332010A (en) * 1980-03-17 1982-05-25 International Business Machines Corporation Cache synonym detection and handling mechanism
DE3216238C1 (de) * 1982-04-30 1983-11-03 Siemens AG, 1000 Berlin und 8000 München Datenverarbeitungsanlage mit virtueller Teiladressierung des Pufferspeichers

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01199250A (ja) * 1987-10-02 1989-08-10 Hitachi Ltd データ処理装置

Also Published As

Publication number Publication date
EP0224168A3 (en) 1990-03-14
EP0224168A2 (en) 1987-06-03

Similar Documents

Publication Publication Date Title
US3761881A (en) Translation storage scheme for virtual memory system
JPH0137773B2 (ja)
JP2714952B2 (ja) 計算機システム
JP2007048296A (ja) 複数のアドレス・キャッシュ・エントリーを無効にする方法、装置およびシステム
EP0173909B1 (en) Look-aside buffer least recently used marker controller
JPS62118457A (ja) バツフア記憶制御方式
JP3190700B2 (ja) アドレス変換装置
JP2580263B2 (ja) バッファ記憶装置
KR920005296B1 (ko) 정보처리장치
JP3190847B2 (ja) データ転送制御装置
JP2501353B2 (ja) プリフェッチ制御方式
JP2703255B2 (ja) キャッシュメモリ書込み装置
JPS5922315B2 (ja) バツフア記憶制御方式
JPS6223900B2 (ja)
JPS61246850A (ja) バツフア記憶制御方式
JPS6131495B2 (ja)
JPS61292760A (ja) バツフア記憶制御方式
JPS5836434B2 (ja) バツフアメモリソウチ
JPH04205535A (ja) コピーオンライト方式
JPH071484B2 (ja) 情報処理装置
JPH0795310B2 (ja) キャッシュ・メモリ
JPS59195753A (ja) デイスク・キヤツシユメモリの制御方式
JPH02259945A (ja) ストア処理方式
JPH0573424A (ja) 高速アドレス変換方式
JPS6398047A (ja) キヤツシユメモリ