JPH0548497B2 - - Google Patents

Info

Publication number
JPH0548497B2
JPH0548497B2 JP59204179A JP20417984A JPH0548497B2 JP H0548497 B2 JPH0548497 B2 JP H0548497B2 JP 59204179 A JP59204179 A JP 59204179A JP 20417984 A JP20417984 A JP 20417984A JP H0548497 B2 JPH0548497 B2 JP H0548497B2
Authority
JP
Japan
Prior art keywords
data
word
array
buffer memory
validity
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 - Fee Related
Application number
JP59204179A
Other languages
English (en)
Other versions
JPS6184753A (ja
Inventor
Kunio Uchama
Tadahiko Nishimukai
Atsushi Hasegawa
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 Microcomputer System Ltd
Hitachi Ltd
Renesas Technology America Inc
Original Assignee
Hitachi Microcomputer System Ltd
Hitachi Ltd
Hitachi Micro Systems Inc
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 Microcomputer System Ltd, Hitachi Ltd, Hitachi Micro Systems Inc filed Critical Hitachi Microcomputer System Ltd
Priority to JP59204179A priority Critical patent/JPS6184753A/ja
Priority to US06/781,512 priority patent/US4803616A/en
Publication of JPS6184753A publication Critical patent/JPS6184753A/ja
Publication of JPH0548497B2 publication Critical patent/JPH0548497B2/ja
Granted 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、バツフア(別名キヤツシユ)メモリ
に関し、特に、連想メモリを用いたバツフアメモ
リにおける、データの有効性を表示する情報の取
扱いと、それに関連して行なわれる所要データの
存否の判定に関する。
〔発明の背景〕
バツフアメモリは、主メモリの内容の一部の写
しを保持し、データ処理装置が主メモリのデータ
を必要とする時には、まずバツフアメモリを検索
して、当該データがバツフアメモリ内に存在すれ
ば、主メモリにアクセスすることなく、バツフア
メモリ内のデータを使用し、当該データがバツフ
アメモリ内に存在しない場合に始めて、主メモリ
にアクセスする。この動作において、所要データ
がバツフアメモリ内に存在するか否か(すなわ
ち、ヒツトしたか否か)の判定(すなわち、ヒツ
ト判定)が遅れると、ヒツトしなかつた場合にお
ける主メモリへのアクセス動作の起動がそれだけ
遅れる結果、処理速度の低下をきたす。
ところで、バツフアメモリの制御方式の一つ
に、バツフアメモリ中の各データ部分(例えばバ
イト)に対応して有効性フラグを設けるものがあ
る。この有効性フラグは、当該データ部分の内容
が主メモリ中の対応データと一致しているか否か
を示す。例えば、システム中の他の機器(例えば
I/O機器)からのデータの書込みなどにより、
主メモリ中のある部分の内容が更新されたとき
に、当該部分のデータが以前にバツフアメモリに
写し取られていれば、対応する有効性フラグを切
替えることにより、更新のあつたことを表示して
更新前のデータが処理の対象となるのを防止する
のである。この方式の下では、ヒツト判定のため
に、有効性フラグの調査が不可欠である。
第3図は、連想メモリを用いたバツフアメモリ
における、有効性フラグの調査を含むヒツト判定
機構の、常識的な構成を示す。タグアレイ100
とデータアレイ130とからなる連想メモリが、
バツフアメモリの本体を構成する。タグアレイ1
00の各ワード110−1〜110−nには、デ
ータアレイ130の対応するワード140−1〜
140−nの、主メモリ上のアドレス(32ビツ
ト)の上位30ビツトが入つている。データアレイ
130の各ワードは、4バイトのデータD0〜D
3と、各バイトに対応する有効性フラグV0〜V
3とからなる。データ処理装置が主メモリ内のデ
ータを必要とする時には、アドレス線170に32
ビツトのアドレスデータが供給され、その上位30
ビツト150はタグアレイ100に検索入力とし
て与えられる。タグアレイ100においては、そ
の各ワードの内容であるアドレスデータと検索入
力として与えられたアドレスデータとの異同が並
列に検査され、一致があれば、そのワード位置に
対応するワード一致線120−1〜120−nの
1本が付勢される。この付勢に応答して、データ
アレイ130の対応するワードのD0〜D3とV
0〜V3とが読出され、その内のV0〜V3はヒ
ツト判定回路190に送られる。ヒツト判定回路
190は、アドレスデータの下位2ビツト160
とデータ長情報180とに基づき、必要なデータ
バイトに対応する有効性フラグを調べ、それらが
すべて有効であることを確認すると、ヒツト信号
200を発生する。
このような構成では、第4図に示すように、ヒ
ツト判定の完了までに、タグアレイの検索と、デ
ータアレイの読出しと、ヒツト判定論理演算の、
3動作段階を経なければならない。
〔発明の目的〕
本発明の目的は、バツフアメモリにおいて、ヒ
ツト判定に要する時間を可及的に短いものにする
ことにある。
〔発明の概要〕
本発明の代表的実施形態は、連想型バツフアメ
モリにおいて、各データ部分に対する有効性フラ
グをタグアレイ中に収容し、タグアレイの検索に
際して、アクセスすべきデータ部分とアクセスモ
ードとに応じて各有効性フラグを検索対象に含め
るか否かを決定した上で、アドレスと所定の有効
性フラグとを同時に検索し、検索結果の出力であ
るワード一致信号から直接にヒツト判定信号を得
るものであつて、これにより、データアレイの読
出しを待つことなく、ヒツト判定結果を得ること
ができる。
〔発明の実施例〕
第1図は、本発明の一実施例を示す。タグアレ
イ300とデータアレイ330とからなる連想メ
モリが、バツフアメモリの本体部分を構成してい
る。データアレイ330は、ワード340−1〜
340−nからなり、これらのワードのそれぞれ
には、44バイト(D0〜D3)からなる主メモリ
内のデータブロツクの写しが格納される。タグア
レイ300は、データアレイの各ワードに対応す
るワード310−1〜310−nからなり、これ
らのワードのそれぞれには、対応するデータアレ
イワードのアドレスデータ(32ビツト)の上位30
ビツト部分ADRと、各バイトD0〜D3に対す
る有効性フラグV0〜V3とが格納される。な
お、アドレスはバイト単位に付けられており、有
効性フラグは“1”のとき有効を示し、“0”の
とき無効を示すものとする。タグアレイの各ワー
ドに対する検索の結果は、ワード一致線320−
1〜320−n上の信号に現れ、それが“1”な
らば検索の成功(検索入力とワード内容の一致)
を表わし、“0”ならば不成功を表わす。
信号線420には、主メモリにアクセスするた
めのアドレスデータ(32ビツト)が供給され、そ
の上位30ビツト400はタグアレイ300へ送ら
れて検索入力となり、下位2ビツトはマスク制御
回路480に送られる。マスク制御回路480
は、更に、アクセスするデータの長さ(バイト
数)460と、アクセスモード(リード又はライ
ト)指示470とを受取り、これらの入力情報に
基づいて、タグアレイ中の各有効性フラグV0〜
V3を検索対象に含めるか否かを指示するマスク
信号M0〜M3を発生する。マスク信号M0〜M
3は有効性フラグV0〜V3に対応し、それが
“1”ならば対応する有効性フラグを検索対象に
含めることを示し、“0”ならば除外することを
示す。なお、アクセスするデータは、最下位バイ
トのアドレスとデータ長とを示すことによつて指
定されるものとする。フラグ信号M0〜M3は、
アドレスの下位2ビツト410と、データ長46
0と、アクセスモード470の組合せに応じて、
第2図に示す値をとる。ただし、第2図におい
て、「φ」はその欄の内容が無関係であることを
表わす。
第1図に戻り、信号490−0490−3は、
タグアレイ300中の有効性フラグV0〜V3に
対する検索入力であり、常に“1”である。これ
らの信号は、マスク信号M0〜M3中の対応する
信号が“1”の時に有効な検索入力となり、“0”
の時には検索入力として作用しない。マスク信号
M0〜M3のどれかが“0”であれば、対応する
有効性フラグ位置は、一致状態に強制される。こ
の強制は、メモリセルの構造によるが、例えば、
当該メモリセルの2本の相補検索入力用桁信号線
をどちらも“1”(又は“0”)にすることで実現
される。ORゲート430はヒツト判定回路とし
て機能し、ワード一致線320−1〜320−n
を受けて、ヒツト判定信号440を発生する。ワ
ード一致線のいずれかに“1”が生じれば、ヒツ
ト判定信号440が“1”になり、所要データの
存在を示す。信号450はデータアレイ330に
対する入出力データである。
次に動作を説明する。まず、データの読出しを
行なう場合、データ処理装置は、主メモリに対し
て実際にフエツチ起動をかける前に、バツフアメ
モリにそのデータが存在するか否かを調べる。そ
のため、32ビツトのアドレスデータ420と、デ
ータ長460が供給され、アクセスモード470
はリードを指定する。マスク制御回路480は、
第2図に従つてマスク信号M0〜M3を発生し、
有効性フラグV0〜V3のどれが検索対象になる
かを指示する。タグアレイ300は、検索対象に
指定された有効性フラグとアドレスの上位30ビツ
トについて検索され、その検索結果は、ワード一
致線320−1〜320−nからORゲート43
0を経て、直ちにヒツト判定信号440として現
れる。
ヒツト判定信号440が“1”であれば、所要
データはデータアレイ330内に存在し、しかも
それは有効である。したがつて、主メモリに対す
るフエツチ起動はかけられることなく、代つて、
検索に対する一致があつたタグアレイワードに対
応するデータアレイワードからの出力信号450
が、データ処理装置に転送される。
ヒツト判定信号440が“0”の場合は、指定
されたアドレスのデータが存在しないが、あるい
は、存在しても無効のときである。したがつて、
データ処理装置は、主メモリに対してフエツチ起
動をかけて、所要データを読出す。本発明におい
ては、ヒツト判定の結果が、データアレイ330
を読出す以前に得られることに注意すべきであ
る。
こうして主メモリから読出されたデータは、デ
ータ処理装置による演算の対象として使用される
ほかに、データアレイ330にも書込まれる。そ
のため、アクセスモードがライトに切替えられる
とともに、その格納位置の決定のため、再びタグ
アレイ300が検索され、この時、アドレスデー
タ420は前回の検索の時と同じ値に保たれる。
ただし、アクセスモードはライトであるため、第
2図に示されたように、マスク信号M0〜M3は
すべて“0”となり、有効性フラグV0〜V3は
検索対象から除かれる。この検索で一致したワー
ドが検出されると、対応するデータアレイワード
に、主メモリから読出されたデータが書込まれ、
同時に、対応する有効性フラグが“1”にセツト
される。また、この検索で一致したワードが検出
されないときは、周知のように、予め定められた
ルールに従つて、空いているワード位置の1つを
選定し、その位置において、データアレイ330
には主メモリから読出されたデータを書込み、タ
グアレイ300にはそのアドレスを書込むととも
に有効性フラグをセツトする。
主メモリにデータを格納する場合には、アクセ
スモード470がライトを指示するとともに、ア
ドレスデータ420とデータ長460が供給され
てタグアレイ300がアドレスについてのみ検索
され、一致したワードがあれば、対応するデータ
アレイワードに、主メモリに格納すべきデータが
書込まれる。また、一致したワードがなければ、
空き位置の1つが選択されて、そこにデータとア
ドレスと有効性ビツトが書込まれる。これらの動
作は、前述した読出し時の動作において、所望の
データが存在しなかつた場合に主メモリから読出
されたデータを書込むときの動作と、実質上同じ
である。主メモリへの実際の書込みを、前記動作
と並行して行なうか、それとも別の機会に行なう
かは、バツフアメモリ制御方式によつて異なる
が、本発明と直接の関係はない。
有効性フラグは、バイトごとに限らず、他のデ
ータ単位ごとに設けられてもよい。また、アドレ
ス指定方式も、先頭バイトのアドレスとデータ長
により指定するものに限られない。固定語長方式
においても本発明が適用できる。
〔発明の効果〕 本発明によれば、バツフアメモリにおいて、デ
ータアレイの読出しの完了を待つことなく、タグ
アレイの検索の完了の直後にヒツト判定を行なう
ことができるので、有効な所望データが存在しな
かつた場合のオーバヘツドが削減され、ひいて
は、バツフアメモリを用いたデータ処理装置の総
合処理速度が改善される。
【図面の簡単な説明】
第1図は本発明の一実施例のブロツクダイヤグ
ラム、第2図は第1図におけるマスク制御回路の
入力・出力対照図、第3図は通常の連想型バツフ
アメモリのブロツクダイヤグラム、第4図は第3
図の装置の動作のタイムチヤートである。 300…タグアレイ、320−1〜320−n
…ワード一致線、330…データアレイ、430
…ヒツト判定用ORゲート、480…マスク制御
回路、V0〜V3…有効性フラグ、M0〜M3…
マスク信号。

Claims (1)

  1. 【特許請求の範囲】 1 データを保持するためのデータアレイと検索
    対象として前記データの主メモリアドレスを保持
    するためのタグアレイとを有するバツフアメモリ
    において、前記データアレイの各ワード内に保持
    されたデータの各部分に対する有効性フラグを保
    持するための前記タグアレイの各対応ワード内の
    領域と、前記有効性フラグのそれぞれが検索対象
    に含まれるか否かを指示する指示信号を前記有効
    性フラグ保持領域に供給するマスク制御回路と、
    前記タグアレイの各ワードにおける検索結果を示
    す各ワード一致線上の信号に応答して所望データ
    の存否を示す信号を発生するヒツト判定回路とを
    備えることを特徴とする、バツフアメモリ。 2 前記マスク制御回路は、データ指定情報とア
    クセスモード情報に応答して前記指示信号を前記
    有効性フラグ保持領域に供給することを特徴とす
    る、特許請求の範囲第1項記載のバツフアメモ
    リ。
JP59204179A 1984-10-01 1984-10-01 バツフアメモリ Granted JPS6184753A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP59204179A JPS6184753A (ja) 1984-10-01 1984-10-01 バツフアメモリ
US06/781,512 US4803616A (en) 1984-10-01 1985-09-30 Buffer memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59204179A JPS6184753A (ja) 1984-10-01 1984-10-01 バツフアメモリ

Publications (2)

Publication Number Publication Date
JPS6184753A JPS6184753A (ja) 1986-04-30
JPH0548497B2 true JPH0548497B2 (ja) 1993-07-21

Family

ID=16486144

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59204179A Granted JPS6184753A (ja) 1984-10-01 1984-10-01 バツフアメモリ

Country Status (2)

Country Link
US (1) US4803616A (ja)
JP (1) JPS6184753A (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01321534A (ja) * 1988-06-24 1989-12-27 Nec Corp キャッシュメモリ装置
JPH0290348A (ja) * 1988-09-28 1990-03-29 Nec Corp データ無効化サイズ可変なキャッシュメモリシステム
US5193166A (en) * 1989-04-21 1993-03-09 Bell-Northern Research Ltd. Cache-memory architecture comprising a single address tag for each cache memory
JPH0760411B2 (ja) * 1989-05-23 1995-06-28 株式会社日立製作所 バッファ記憶制御装置
JPH0546475A (ja) * 1991-08-15 1993-02-26 Fujitsu Ltd バツフア記憶制御方式
US5664224A (en) * 1993-07-23 1997-09-02 Escom Ag Apparatus for selectively loading data blocks from CD-ROM disks to buffer segments using DMA operations
US5860127A (en) * 1995-06-01 1999-01-12 Hitachi, Ltd. Cache memory employing dynamically controlled data array start timing and a microcomputer using the same
DE102004031641A1 (de) * 2004-06-30 2006-01-26 Abb Patent Gmbh Verfahren zur Bestimmung der Dichte und der Geschwindigkeit in einem strömenden Medium

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4349870A (en) * 1979-09-05 1982-09-14 Motorola, Inc. Microcomputer with programmable multi-function port
US4332010A (en) * 1980-03-17 1982-05-25 International Business Machines Corporation Cache synonym detection and handling mechanism
US4400770A (en) * 1980-11-10 1983-08-23 International Business Machines Corporation Cache synonym detection and handling means
US4363095A (en) * 1980-12-31 1982-12-07 Honeywell Information Systems Inc. Hit/miss logic for a cache memory
US4410944A (en) * 1981-03-24 1983-10-18 Burroughs Corporation Apparatus and method for maintaining cache memory integrity in a shared memory environment
US4426682A (en) * 1981-05-22 1984-01-17 Harris Corporation Fast cache flush mechanism
JPS58102381A (ja) * 1981-12-15 1983-06-17 Nec Corp バツフアメモリ
US4442487A (en) * 1981-12-31 1984-04-10 International Business Machines Corporation Three level memory hierarchy using write and share flags
US4493026A (en) * 1982-05-26 1985-01-08 International Business Machines Corporation Set associative sector cache
US4714990A (en) * 1982-09-18 1987-12-22 International Computers Limited Data storage apparatus
US4736287A (en) * 1983-06-20 1988-04-05 Rational Set association memory system
JPS60123936A (ja) * 1983-12-07 1985-07-02 Fujitsu Ltd バッフア記憶制御方式
JPS60124754A (ja) * 1983-12-09 1985-07-03 Fujitsu Ltd バッファ記憶制御装置
JPS60142451A (ja) * 1983-12-29 1985-07-27 Fujitsu Ltd アドレス変換制御方式
US4755936A (en) * 1986-01-29 1988-07-05 Digital Equipment Corporation Apparatus and method for providing a cache memory unit with a write operation utilizing two system clock cycles

Also Published As

Publication number Publication date
JPS6184753A (ja) 1986-04-30
US4803616A (en) 1989-02-07

Similar Documents

Publication Publication Date Title
US5574875A (en) Cache memory system including a RAM for storing data and CAM cell arrays for storing virtual and physical addresses
US5283882A (en) Data caching and address translation system with rapid turnover cycle
JPS59165144A (ja) 命令取出し装置
US5530823A (en) Hit enhancement circuit for page-table-look-aside-buffer
US5627988A (en) Data memories and method for storing multiple categories of data in latches dedicated to particular category
EP0533427B1 (en) Computer memory control system
JPH0548497B2 (ja)
US4648033A (en) Look-aside buffer LRU marker controller
US4445191A (en) Data word handling enhancement in a page oriented named-data hierarchical memory system
US4737908A (en) Buffer memory control system
JP2659007B2 (ja) 情報処理方法及び装置
JPH07234819A (ja) キャッシュメモリ
JP2700147B2 (ja) 命令キャッシュ・フラッシュ・オン・rei制御
JP2613258B2 (ja) 情報処理方法及び装置
JP2563792B2 (ja) 情報処理装置
JPH1185613A (ja) キャッシュメモリ
JP3074897B2 (ja) メモリ回路
JPH0769863B2 (ja) データ処理装置
EP0400851A2 (en) Efficient cache utilizing a store buffer
JPH02101552A (ja) アドレス変換バッファ処理方式
JPS61211752A (ja) ペ−ジ履歴メモリ装置
JPS63228349A (ja) バツフアメモリ装置
JPH07141174A (ja) レジスタ装置
JPS602704B2 (ja) バッファメモリ装置
JPH04363738A (ja) キャッシュメモリ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees