JPH02217945A - キャッシュメモリシステム - Google Patents

キャッシュメモリシステム

Info

Publication number
JPH02217945A
JPH02217945A JP1038014A JP3801489A JPH02217945A JP H02217945 A JPH02217945 A JP H02217945A JP 1038014 A JP1038014 A JP 1038014A JP 3801489 A JP3801489 A JP 3801489A JP H02217945 A JPH02217945 A JP H02217945A
Authority
JP
Japan
Prior art keywords
purge
data
processor
cache memory
address
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
JP1038014A
Other languages
English (en)
Inventor
Koji Shinozaki
篠崎 孝司
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
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 filed Critical NEC Corp
Priority to JP1038014A priority Critical patent/JPH02217945A/ja
Publication of JPH02217945A publication Critical patent/JPH02217945A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 皮丘立1 本発明はキャッシュメモリシステムに関し、特に仮想メ
モリシステムに用いられる論理アドレスキャッシュにお
ける主記憶とのデータの一致性制御に関する。
従来技術 プロセッサと、大容量で低速の主記憶との間に小容量の
高遠なバッファストアを設置することにより、実効的な
主記憶のアクセス時間を高速化する、いわゆるキャッシ
ュメモリと呼ばれる方法が計算機システムにおいて広く
用いられている。
仮想メモリシステムのキャッシュメモリにおいては、プ
ロセッサの出力する論理アドレスを物理アドレスに変換
し、その物理アドレスで主記憶をアクセスする方法があ
る。
通常、このアドレス変換にはT L B (Trans
late Lookaside Buffer)を用い
てアドレス変換時間の短縮化を図っているが、TLBに
よるアドレス変換でも依然として数十〜数百nsが費さ
れる。
したがって、仮想メモリシステムにキャッシュメモリを
配置する場合、プロセッサの出力する論理アドレスから
のアクセス時間は、物理アドレスによってキャッシュメ
モリのアドレスタグを参照する方式、いわゆる物理アド
レスキャッシュ方式よりも、キャッシュメモリのアドレ
スタグを論理アドレスによって直接参照する方式、いわ
ゆる論理アドレスキャッシュ方式のほうが短くてすむ。
また、複数のプロセッサが夫々独立したキャッシュメモ
リを持ち、1つの主記憶を共存しているシステム、ある
いはプロセッサが個々に管理せず、プロセッサ以外によ
る主記憶アクセスを周辺装置などが行うシステムでは、
キャッシュメモリと主記憶との一致性制御を行わなけれ
ばならない。
論理アドレスキャッシュ方式の場合、このキヤ・ソシュ
メモリと主記憶との一致性制御としては、キャッシュメ
モリと直接接続されているプロセッサ以外による主記憶
アクセスがあったときにキャッシュメモリの内容を全て
消去する方法や、オペレーションシステム(O3)によ
って、タスクの切替え時にキャッシュメモリの内容を全
て消去する方法がある。
このような従来のキャッシュメモリシステムでは、キャ
ッシュメモリへのアクセスを論理アト1ノスキャッシュ
方式により行う場合、キャッシュメモリと主記憶との一
致性制御において、キャッシュメモリのデータと主記憶
のデータとの不一致がないとき、あるいはキャッシュメ
モリのデータと主記憶のデータとの不一致が少数である
ときでもキャッシュメモリの内容が全て失われてしまい
、キャッシュメモリ内の大部分の有効データが断続的に
利用できなくなり、プロセッサの実効的な主記憶のアク
セス時間を十分に高速化することができないという欠点
がある。
i匪Ω且皇 本発明は上記のような従来のものの欠点を除去すべくな
されたもので、プロセッサの実効的な主記憶のアクセス
時間を十分に高速化することができるキヤ・ツシュメモ
リシステムの提供を目的とする。
魚1[ユ]−戒 本発明によるキャッシュメモリシステムは、主記憶から
のデータをブロック単位で格納するデータ格納手段と、
前記データ格納手段の各ブロックに対応する論理アドレ
スを保持し、プロセッサからの論理アドレスにより参照
されるアドレス保持手段とが複数のプロセッサ各々に設
けられたキャッシュメモリシステムであって、前記デー
タ格納手段に格納されたデータの前記プロセッサにおけ
る管理情報を前記データ格納手段の各ブロックに対応し
て保持する管理情報保持手段と、前記プロセッサからの
前記データ格納手段に対するパージ要求に伴う管理情報
と、前記管理情報保持手段に保持された管理情報とを比
較する比較手段と、前記比較手段により一致が検出され
た前記データ格納手段のブロックを無効化する無効化手
段とを設けたことを特徴とする。
夫■」 次に、本発明の一実施例について図面を参照して説明す
る。
第1図は本発明の一実施例の構成を示すブロック図であ
る4図において、本発明の一実施例では複数のプロセッ
サユニット(バス接続型マルチプロセッサシステム>l
a〜ICおよび複数のI10チャネル6a、6bを有し
、プロセッサユニット1a〜ICとI10チャネル6a
、6bとは同一のバス(外部バス100)を使用して主
記憶5をアクセスする単一バス方式が用いられている。
プロセッサユニット1aはプロセッサ2aと、キャッシ
ュメモリ3aと、T L B 4. aとから構成され
、外部バス100に接続されている。ここで、プロセッ
サユニットlb、lcもプロセッサユニット1aと同じ
構成となっている。
外部バス100にはさらに主記憶5と、I/′0チャネ
ル6a、6bと、プロセッサユニット1b。
1cとが接続されている。
第2図は第1図のキャッシュメモリ3aの訂紹な構成を
示すブロック図である1図において、本発明の一実施例
ではキャッシュメモリ3aにおいてダイレクトマツプ方
式(コングルーエンド方式)が用いられている。
キャッシュメモリ3aには主記憶5のデータを複写して
保持する複数のブロックからなるバッファストア30a
と、論理アドレスの表示を保持するためのアドレスタグ
31. aと、バッファストア30aに保持されたデー
タが有効か否かを示すバリッドビット32aと、プロセ
ッサ2aが出力する符号化されたタスク番号表示あるい
は符号化された領域情報を保持するためのパージタグ3
3aと、論理アドレスの上位アドレスとアドレスタグ3
1aからの出力信号とを比較するための比較器34aと
、制御部35aとにより構成されている。
尚、プロセッサユニットlb、lcのキャッシュメモリ
もプロセッサユニット1aのキャッシュメモリ3aと同
じ構成となっている。
これら第1図および第2図を用いて本発明の一実施例の
動作について説明する。
本発明の一実施例による仮想メモリシステムにおいては
、オペレーションシステム(O8)の管理下で各プロセ
ッサユニット1a〜1cおよび各I10チャネル6a、
6bが動作する。
このオペレーションシステムはマルチプロセッサでのマ
ルチタスク、あるいは主記憶5の領域をタスク単位に管
理するR能をサポートしており、タスク切替え時、もし
くは主記憶5の領域割付は時や各タスクの共通領域デー
タの更新時にはキャッシュメモリ3aのデータと主記憶
5のデータとの不一致が発生ずる可能性があるため、キ
ャッシュメモリ3aのパージ命令を発行する。
プロセッサ2aは内部レジスタ(図示せず)に符号化さ
れたタスク番号表示、もしくは現在アクセスしている主
記憶5の符号化されたfA域情報(以下パージ情報とす
る)を保持しており、主記憶5のデータを参照するとき
に論理アドレスをアドレスバス101に出力するととも
に、パージ情報をパージ情報バス103に出力する。
また、プロセッサ2aはパージ命令を実行すると、該パ
ージ命令の対象であるパージ情報をパージ情報バス10
3に出力するとともに、パージ要求信号104を出力す
る。
通常、プロセッサ2aが主記憶5のデータを参照しよう
とする場合、キャッジ、ユメモリ3aがアドレスバス1
01上の論理アドレスによって参照されるのと同時に、
”[’ L B 4 aによってアドレスバス101上
の論理アドレスの物理アドレスへの変換も開始される。
キャッシュメモリ3aでは論理アドレスがアドレスバス
101に出力されると、バッファストア30aをブロッ
ク単位にアクセスするためにアドレスバス101上の論
理アドレスを上位アドレス131と下位アドレス132
とに分け、下位アドレス132によってバッファストア
30aとアドレスタグ31aとバリッドビット32aと
バージタグ33aとをアクセスする。
下位アドレス132によってアドレスタグ31aから続
出された内容と上位アドレス131とを比較器34aで
比較し、比較器34aで一致が検出されるとヒツト信号
133を制御部35aに出力する。
一方、下位アドレス132によってバリッドビット32
aから読出されたバリッド信号134も制御部35aに
出力される。
制御部35aでは比較器34aからヒツト信号133が
入力され、かつバリッドビット32aからのバリッド信
号134が有効を示すときにバッファストア30aに有
効なデータがあると判断し、バッファストア30aから
データを読出してデータバス102に出力させるととも
に、プロセッサ2aにデータの準備ができたことを知ら
せるためにレディ信号105を出力する。
また、制御部35aでは比較器34. aからヒツト信
号133が入力されないか、あるいはバリッドビット3
2aからのバリッド信号134が無効を示すときにバッ
ファストア30aに有効なデータがないと判断し、TL
B4aで変換された物理アドレスによって主記憶5をア
クセスするために外部バス100に対して外部バス使用
要求106を出力する。
この後に、主記憶5をアクセスし、1記+15のデータ
をデータバス102を経由してプロセッサ2aに渡せる
状態となったときにレディ信号105をプロセッサ2a
に出力すると同時に、下位アドレス132で示されるバ
・yノアストア30aのブロックに対してデータを書込
むとともに、アドレスタグ31aに上位アドレス131
を書込んで、バリッドビット32aを有効を示すように
セットし、パージタグ33aにパージ情報バス103の
内容を書込む。
上述のように、プロセッサ2aにより主記憶5のデータ
の参照が繰返されると、キャッシュメモリ3aには主記
憶5のデータがブロック単位に複写され、キャッシュメ
モリ3aの容藍分だけ蓄積されるとともに、そのブロッ
クに対応するパージ情報がバージタグ3321に保持さ
れる。
プロセッサ2aがパージ命令を実行すると、プロセッサ
2aからのパージ情報がパージ情報バス103を経由し
てキャッシュメモリ3aおよび外部バス100に出力さ
れ′るとともに、プロセッサ2aからのパージ要求信号
104がキャッシュメモリ3aおよび外部バス100に
出力される。
キャッシュメモリ3aでは外部バス100からもパージ
情報およびパージ要求信号104を受付けるので、プロ
セッサユニット1a〜ICいずれのプロセッサからパー
ジ要求が出力されても、該パージ要求のパージが行われ
る。
キャッシュメモリ3a内のバージタグ33aは連想メモ
リ(Content Addressable MeI
lory)で構成され、パージ要求信号104を受付け
たときにはパージ情報バス103を介して入力されるパ
ージ情報と、バージタグ33aに保持されている全ての
パージ情報とを比較し、パージ情報バス103の内容と
バージタグ33aの内容とが一致すると、致したブロッ
クに対応するクリア信号135をバリッドビット32a
に出力する。
バリッドビット32aはバッファストア30aのブロッ
クに対応しているので、バージタグ33aからクリア信
号135が入力されると、クリア信号135が出力され
たブロックに対応する部分を無効を示すようにセットす
る。これにより、バッファストア30aの対応するブロ
ックが無効化される。
このように、バッファストア30aに主記憶5のデータ
が書込まれたときのパージ情報をデータが書込まれたプ
ロ・1りに対応してバージタグ33aに格納しておき、
キャッシュメモリ3aのデータと主記憶5のデータとの
不一致が発生する可能性があるタスク切替え時、もしく
は主記憶5の領域割付は時や各タスクの共通領域データ
の更新時に発行されるパージ要求のパージ情報とバージ
タグ33aのパージ情報との一致が検出されたブロック
を無効化するようにすることによって、パージ要求が発
行されたときにタスク間あるいはタスクなどで使用した
領域部分に対応するキャッシュメモリ3aのデータのみ
をパージすることができる。
よって、キャッシュメモリ3aに保持された不一致が発
生していない大部分の有効データをそのまま残すことが
できるため、プロセッサ2aの実効的な主記憶5のアク
セス時間を十分に高速化することができる。
艦!眩り艷1 以上説明したように本発明によれば、主記憶からのデー
タが格納されるデータ格納手段の各ブロックに対応して
保持された管理情報とパージ要求に伴う管理情報とを比
較し、この比較により一致が検出されたブロックを無効
化するようにすることによって、プロセッサの実効的な
主記憶のアクセス時間を十分に高速化することができる
という効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示すブロック図、第
2図は第1図のキャッシュメモリの訂細な構成を示すブ
ロック図である。 主要部分の符号の説明 1a〜IC・・・・・・プロセッサユニット2a・・・
・・・プロセッサ 3a・・・・・・キャッシュメモリ 5・・・・・・主記憶 6a、6b・・・・・・I10チャネル30a・・・・
・・バッファストア 32a・・・・・・バリッドピット 33a・・・・・・バージタグ 35a・・・・・・制御部

Claims (1)

    【特許請求の範囲】
  1. (1)主記憶からのデータをブロック単位で格納するデ
    ータ格納手段と、前記データ格納手段の各ブロックに対
    応する論理アドレスを保持し、プロセッサからの論理ア
    ドレスにより参照されるアドレス保持手段とが複数のプ
    ロセッサ各々に設けられたキャッシュメモリシステムで
    あって、前記データ格納手段に格納されたデータの前記
    プロセッサにおける管理情報を前記データ格納手段の各
    ブロックに対応して保持する管理情報保持手段と、前記
    プロセッサからの前記データ格納手段に対するパージ要
    求に伴う管理情報と、前記管理情報保持手段に保持され
    た管理情報とを比較する比較手段と、前記比較手段によ
    り一致が検出された前記データ格納手段のブロックを無
    効化する無効化手段とを設けたことを特徴とするキャッ
    シュメモリシステム。
JP1038014A 1989-02-17 1989-02-17 キャッシュメモリシステム Pending JPH02217945A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1038014A JPH02217945A (ja) 1989-02-17 1989-02-17 キャッシュメモリシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1038014A JPH02217945A (ja) 1989-02-17 1989-02-17 キャッシュメモリシステム

Publications (1)

Publication Number Publication Date
JPH02217945A true JPH02217945A (ja) 1990-08-30

Family

ID=12513721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1038014A Pending JPH02217945A (ja) 1989-02-17 1989-02-17 キャッシュメモリシステム

Country Status (1)

Country Link
JP (1) JPH02217945A (ja)

Similar Documents

Publication Publication Date Title
US5257361A (en) Method and apparatus for controlling one or more hierarchical memories using a virtual storage scheme and physical to virtual address translation
US5073851A (en) Apparatus and method for improved caching in a computer system
US5689679A (en) Memory system and method for selective multi-level caching using a cache level code
US4493026A (en) Set associative sector cache
US4499539A (en) Method and apparatus for limiting allocated data-storage space in a data-storage unit
US6401181B1 (en) Dynamic allocation of physical memory space
US5008816A (en) Data processing system with multi-access memory
JPH1196074A (ja) 交換アルゴリズム動的選択コンピュータシステム
US6745292B1 (en) Apparatus and method for selectively allocating cache lines in a partitioned cache shared by multiprocessors
JPS5821308B2 (ja) ルツクアヘツド・コントロ−ル装置
US5293622A (en) Computer system with input/output cache
US5287482A (en) Input/output cache
US5479629A (en) Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address
US7523290B2 (en) Very high speed page operations in indirect accessed memory systems
US7219197B2 (en) Cache memory, processor and cache control method
RU2237278C2 (ru) Разряды состояния для кэш-памяти
US6665787B2 (en) Very high speed page operations in indirect accessed memory systems
US5544293A (en) Buffer storage system and method using page designating address and intra-page address and detecting valid data
JPH02217945A (ja) キャッシュメモリシステム
GB2037466A (en) Computer with cache memory
KR920005296B1 (ko) 정보처리장치
JPH03232034A (ja) キャッシュ制御装置
KR100201671B1 (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 캐시 메모리 이용방법
JPS589452B2 (ja) フア−ムウエアホウシキ
JPH08147216A (ja) データ処理装置