JPH06202950A - 母線の主調停信号を使用しないキャッシュ・コヒレンシー・システム - Google Patents

母線の主調停信号を使用しないキャッシュ・コヒレンシー・システム

Info

Publication number
JPH06202950A
JPH06202950A JP5211173A JP21117393A JPH06202950A JP H06202950 A JPH06202950 A JP H06202950A JP 5211173 A JP5211173 A JP 5211173A JP 21117393 A JP21117393 A JP 21117393A JP H06202950 A JPH06202950 A JP H06202950A
Authority
JP
Japan
Prior art keywords
cache
data
processor
bus
microprocessor
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
JP5211173A
Other languages
English (en)
Inventor
Thomas D Selgas
ディー セルガス トーマス
Thomas B Brightman
ビー ブライトマン トーマス
William C Patton
シー パットン ウィリアム
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.)
SAIRITSUKUSU CORP
Cyrix Corp
Original Assignee
SAIRITSUKUSU CORP
Cyrix 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 SAIRITSUKUSU CORP, Cyrix Corp filed Critical SAIRITSUKUSU CORP
Publication of JPH06202950A publication Critical patent/JPH06202950A/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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols

Abstract

(57)【要約】 【目的】 非同期処理間の通信を周期的に監視する必要
なく、処理の局域内バッファのデータの妥当性を保証す
るようなコンピュータ・システムの非同期処理間のデー
タ通信の方法を提供する。 【構成】 外部チップの実施例では、キャッシュ・コヒ
レンシー・システム(120)は(a)マイクロプロセ
ッサ(110)から出力された選択された母線サイクル
定義及び制御信号を受信し、(b)FLUSH(キャッ
シュ無効化)状態、すなわち母線マスタ同期事象及び前
記それぞれのFLUSH状態を検出し、(c)適宜の準
備及び保持時間を以てマイクロプロセッサにFLUSH
出力信号を供給するように接続されたプログラム可能論
理(122、124)を使用して実施される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は一般に、非同期処理間の
通信を周期的に監視する必要なく、(キャッシュのよう
な)局域内処理バッファのデータの有効性を保証するよ
うなコンピュータ・システムの非同期処理間のデータ通
信に関する。本発明は特に、キャッシュ・メモリを使用
したコンピュータ・アーキテクチャーに関し、なかんず
くキャッシュ内のデータの有効性を保証するために母線
調停信号をプロセッサ−キャッシュに利用できないか、
又はプロセッサ−キャッシュが前記調停信号だけに依拠
しない多重マスタ・コンピュータシステムでプロセッサ
−キャッシュが使用される、プロセッサ−キャッシュの
組合せ用のキャッシュ・コヒレンシー(可干渉性)シス
テムに関する。本発明の一側面では、キャッシュ・コヒ
レンシー・システムは内部のライト・スルー・キャッシ
ュを組込んでいるが、マイクロプロセッサ(すなわちプ
ロセッサ−キャッシュ)に母線の主調停信号を供給しな
い多重マスタ・コンピュータ・システムに有用である3
86母線の互換性がある設計のマイクロプロセッサ用に
実施される。
【0002】
【従来の技術】キャッシュ・メモリはマイクロプロセッ
サ・チップ、メモリ・サブシステム、母線制御論理及び
その他の支援論理のような中央処理装置(CPU)を包
含しているものと一般に説明できるコンピュータ・シス
テムでの性能を向上させるために広範に利用されてい
る。キャッシュはCPUの外部又は内部の何れかに設置
でき、主メモリ装置と共にコンピュータ・システムのメ
モリ域階層を構成する。多重マスタ・コンピュータ・シ
ステムでは、主メモリ装置はDMA装置及びマイクロコ
ントローラ(並びにその他のCPU)を含むCPU以外
の母線マスタによってアクセスできる。キャッシュ・メ
モリと主メモリ装置とのコヒレンシーを保持するため
に、CPUは代表的には下記の2つのキャッシュ・コヒ
レンシー技術の一方を実施する。すなわち、(a)母線
スヌーピング−別の母線マスタがキャッシュされたメモ
リをアクセスした場合にその旨を検知するために全ての
アドレス指定動作を監視する技術、又は(b)母線調停
−別の母線マスタがシステム母線を制御して、主メモリ
装置内のキャッシュ可能な領域をアクセスできるように
した場合にその旨を検知する技術、である。母線調停の
場合は、CPU及びその他の母線マスタは母線仲介信号
を使用して、どのマスタがメモリ母線(メモリをアクセ
スできる任意の母線)を制御し、それによって主メモリ
装置をアクセスすることが可能になり、キャッシュのコ
ヒレンシーが保証されるかを信号表示する。別の母線マ
スタが母線を制御する場合には、CPUがキャッシュの
全て又は一部を無効にする(すなわちフラッシュす
る)。
【0003】それが本発明の範囲を限定するものではな
いが、上記の背景情報は本発明が利用される下記の特別
の課題に関連したものである。すなわち、内部にライト
・スルー・キャッシュを組込んでいるが、キャッシュの
コヒレンシーを保持するために母線マスタ調停信号HO
LD及びHLDAが外部キャッシュによって使用される
が、マイクロプロセッサによっては利用できない形式の
外部キャッシュを備えた多重マスタ・コンピュータ・シ
ステムで使用される、386母線の互換性の設計のマイ
クロプロセッサ用のキャッシュコヒレンシーを保証する
ことである。386母線及び486母線のマイクロプロ
セッサ・アーキテクチャーと信号の説明は、Agarwal 、
Rokeshk共著「80×86アーキテクチャ及びプログラ
ミング」(Preutice Hall 1991 年刊) により詳細に開示
されている。簡略に述べると、386母線アーキテクチ
ャーはパイプライン型及び非パイプライン型母線サイク
ルを支援するものである。後世代の486型マイクロプ
ロセッサ用の母線アーキテクチャーはバースト・モード
のアドレス指定を支援するが、パイプライン処理の支援
は行わない。更に、486母線アーキテクチャーは48
6型マイクロプロセッサの内部キャッシュを支援し、一
方、386母線アーキテクチャーは外部キャッシュの導
入は支援するが、内部キャッシュ用の支援は含まない。
その結果、性能がより高い486マイクロプロセッサに
は従来形の386母線準拠のコンピュータ・システムと
の互換性がない。
【0004】従って、既存の386母線準拠のコンピュ
ータ・システムにとって、キャッシュ・メモリの性能上
の利点を得る方法の一つは外部キャッシュを導入するこ
とである。別の方法としては、内部キャッシュを搭載し
ているが、それでも386母線アーキテクチャーと互換
性があるマイクロプロセッサ・アーキテクチャーを設計
することであろう。内部キャッシュを装備した386型
のマイクロプロセッサを設計するには、マイクロプロセ
ッサを多重マスタ・コンピュータ・システムで利用する
際に、キャッシュのコヒレンシーを保持することを考慮
することが必要である。多重マスタ・コンピュータ・シ
ステムは同時に実行される多重の非同期処理から構成さ
れている。微視的なレベルでは、キャッシュ管理原則は
代表的には各母線サイクルを監視するために母線スヌー
ピングを利用し、且つ(a)マイクロプロセッサ以外の
マスタを基点とする主キャッシュへの書込みに対応する
キャッシュ・エントリを無効にし、且つ(b)全ての読
出しビットにデータを供給することである。(ただし、
キャッシュがライトスルー状態である場合は主メモリ装
置が目下書込み中であるのでデータの供給は必要な
い。)母線のスヌーピングを利用しない場合は、別の母
線マスタがメモリ母線を制御した場合、キャッシュを無
効にすることによってキャッシュのコヒレンシーを実現
するために、マイクロプロセッサは通常は母線調停信号
を使用するであろう。しかし、386母線アーキテクチ
ャーは386型マイクロプロセッサの端子ピンと、マイ
クロプロセッサへの主記憶装置の端子との間で実現され
るキャッシュを支援し、しかし、CPUコアとマイクロ
プロセッサ端子との間のマイクロプロセッサ・チップ内
部で実現されるキャッシュの支援は行わないので、38
6母線とピン互換性マイクロプロセッサ内でオン・チッ
プのキャッシュを実現するには画期的なキャッシュコヒ
レンシー原則が必要である。
【0005】すなわち、386母線準拠の多重マスタ・
コンピュータ・システムにはマイクロプロセッサ接続ソ
ケットが全ての母線調停信号を利用できないものがあ
り、それは少なくとも、利用できる信号を検査すること
によって全ての母線サイクルについて母線の支配性(マ
スタシップ)、アドレス形式、データ形式及びサイクル
形式を完全に判定できない程度である。例えば、母線調
停信号の一部又は全てはマイクロプロセッサ以外のコン
ピュータ・チップ内の回路だけに、又は外部のキャッシ
ャ・コントローラだけに利用できる。このように、これ
らのコンピュータ・システムと互換性があるように設計
されたマイクロプロセッサ用には、内部キャッシュのコ
ヒレンシーを確実に保持するために母線調停信号を利用
することができなかった。その上、ある種の386母線
準拠のコンピュータ・システムにはCPUに接続された
ソケットに母線調停信号を供給せず、しかも陰メモリの
リフレッシュを支援せず、メモリのリフレッシュ動作を
調整するために上記の調停信号の特定の一つを利用する
ものがある。このようなコンピュータ・システムでマイ
クロプロセッサに内部キャッシュを搭載し、キャッシュ
を無効にするために母線調停信号を使用することによっ
て、性能が著しく低下する。
【0006】
【発明が解決しようとする課題】一般に本発明の課題
は、非同期処理間の通信を周期的に監視する必要なく、
処理の局域内バッファのデータの妥当性を保証するよう
なコンピュータ・システムの非同期処理間のデータ通信
の方法を提供することにある。本発明の課題は特に、キ
ャッシュ内のデータの妥当性を保証するために、母線調
停信号をプロセッサ・キャッシュに利用できないか、又
はプロセッサ・キャッシュによって信頼性を伴って(又
は全く)利用できない多重マスタ・コンピュータ・シス
テムで使用するように設計されたマイクロプロセッサの
内部キャッシュ用に、キャッシュのコヒレンシーを保持
する能力を有するシステムを提供することにある。
【0007】
【課題を解決するための手段】本発明に一実施例では、
データ通信方法は下記の段階を含んでいる。すなわち、
(a)局域内処理バッファによる少なくとも一つの選択
された処理のために、妥当なデータが有効である選択さ
れた処理と通信するため、外部処理を基点とする選択さ
れた同期事象を検出する段階と、(b)前記同期事象の
各々の基点の検出に応答して、前記局域処理バッファ内
のデータ・エントリの少なくとも一部を無効にする段階
である。その結果、このような局域処理バッファ内のデ
ータ・エントリは後続のアクセスのために妥当又は不当
であるものと指定される。本発明の別の側面では、キャ
ッシュ・コヒレンシー・システムは同期化の検出とキャ
ッシュ無効化論理を包含している。この論理は母線マス
タ同期事象と関連するプロセッサからの出力、又は前記
プロセッサへの入力を検出して、プロセッサ以外の母線
マスタが主メモリ装置をアクセスした場合があることを
指示する。前記の論理は選択された同期事象に関連する
前記出力又は入力に応答して、キャッシュ内のデータ・
エントリの少なくとも一部を無効にする。その結果、上
記のように無効化されたキャッシュ・データ・エントリ
への後続のアクセスに応答してキャッシュ・ミスが生ず
る。
【0008】本発明の更に別の側面では、キャッシュ・
コヒレンシー・システムを実施する方法は下記を含んで
いる。すなわち、(a)プロセッサ又は母線マスタによ
る共用記憶域へのアクセス(読出し又は書込み)に関連
する選択された同期事象を示すプロセッサへの入力又は
前記プロセッサからの出力を検出する段階と、(b)前
記の用に検出された同期事象の各々に応答して、キャッ
シュ内のデータ・エントリの少なくとも一部を無効にす
る段階である。その結果、上記のように無効化されたキ
ャッシュ・データ・エントリへの後続のアクセスに応答
してキャッシュ・ミスが生ずる。上記のように、本発明
を実施したキャッシュ・コヒレンシー技術は例えば局域
内キャッシュを有するマイクロプロセッサのような、局
域内バッファを有する装置への入力部、及び(又は)前
記装置からの出力部での同期事象の検出に基づいて大局
的な原則を利用して、コヒレンシーを無効にする事象が
発生した場合があることを指示する。そこでプロセッサ
の基本キャッシュが主メモリ装置の内容の最も現在のコ
ピーを有するか、又はメモリ装置を変化させる任意の非
同期処理が、妥当データが有効である旨のメッセージを
送った場合に(すなわち同期事象)無効であるものとマ
ークされ、それによって要求された伝送の完了を指示す
る信号を発することを保証することによって、コヒレン
シーは従来と同様に達成される。
【0009】本発明の実施例では、キャッシュ・コヒレ
ンシー・システムは内部ライトスルー・キャッシュを備
えた386母線型の互換性マイクロプロセッサにキャッ
シュ・コヒレンシーを付与するために使用される。マイ
クロプロセッサ/キャッシュ・コヒレンシー・システム
は母線調停信号が外部キャッシュ・コントローラによっ
てのみ使用される外部(二次)キャッシュを実現する多
重マスタ・コンピュータ・システムに搭載することがで
きる。このコンピュータ・システムはPC母線アーキテ
クチャーを採用している。この実施例では、キャッシュ
・コヒレンシー・システムは2つのPAL(プログラム
化された論理アレイ)、すなわち“FLUSH”モジュ
ール及びオプションとしての“WAVESHAPIN
G”モジュールから成っている。FLUSHモジュール
は(a)マイクロプロセッサから出力された選択された
母線サイクル定義及び制御信号を受信し、(b)FLU
SH(キャッシュ無効化)状態、すなわちマイクロプロ
セッサに入力され、又はマイクロプロセッサから出力さ
れた母線マスタ同期事象及び前記それぞれのFLUSH
状態を検出し、(b)FLUSH出力信号を供給する。
WAVESHAPINGモジュールはFLUSH信号を
受信し、対応する“CPU/FLUSH”信号を適宜の
準備及び保持時間をもってマイクロプロセッサに供給す
る。
【0010】WAVESHAPINGモジュールのCP
U/FLUSH出力は“FLUSH♯”ピンと呼ばれる
マイクロプロセッサ上の“FLUSH”ピン(標準型の
386型ピンアウトの非接続ピンの一つ)に結合され
る。CPU/FLUSH信号に応答して、マイクロプロ
セッサは内部キャッシュのデータ内容の少なくとも一部
を無効にすることによってキャッシュ・フラッシュ動作
を実行する。 (PC母線アーキテクチャーを採用した)本実施例のキ
ャッシュ・コヒレンシー・システムの場合、キャッシュ
の無効化を生ずる母線マスタ同期事象又はFLUSH状
態は下記の信号、すなわち(a)マイクロプロセッサに
入力されたハードウェア生成割込み信号、及び(b)ハ
ード・ディスク又は外部コプロセッサに向けられたアク
セス信号を除くマイクロプロセッサから独立したI/O
アドレス・スペースへと出力された読出し又は読出し/
書込みアクセス信号、である。FLUSH状態として検
出されるべき特定の母線マスタ同期事象はキャッシュ・
コヒレンシー機能を最適にするためにプログラム化する
ことができる。更に、コンピュータ・システムが(IB
Mの)マイクロ・チャネル母線アーキテクチャーを採用
して、母線マスタ相互間の事象のポーリングされたI/
O同期用にI/Oスペースではなく記憶域割当てI/O
が使用される場合は、母線マスタ同期事象には記憶域割
当てI/Oスペースの選択された領域へのアクセスを含
めることができる。
【0011】本発明の技術的利点には下記が含まれる。
すなわち、この汎用データ通信方法は非同期処理間の通
信の周期的な監視に依存することなく、(キャッシュの
ような)局域処理バッファ内のデータの妥当性を保証す
るために、コンピュータ・システムの非同期処理間の同
期事象の検出に依存している。この技術がキャッシュ・
コヒレンシー・システムを実施するために使用される場
合、この技術によって内部キャッシュ(ライトスルー又
はライトバック)を備えた386母線の互換性のマイク
ロプロセッサを386母線準拠のコンピュータ・システ
ムで汎用に使用できるように設計することが可能にな
る。このシステムには母線マスタ調停信号がマイクロプ
ロセッサに利用できなき多重マスタ・システムや、仮に
利用できても、キャッシュ・コヒレンシーを達成する目
的には信頼して使用できない(又はその他の理由で使用
できない)多重マスタ・システムが含まれる。このシス
テムには母線マスタ通信によってキャッシュの非コヒレ
ンシー状態が生ずる場合がある、局域内バッファ又はキ
ャッシュを有するマイクロプロセッサへの入力又は前記
マイクロプロセッサからの出力の母線マスタ同期事象を
検出する。すなわち、このシステムはコヒレンシーを無
効にする事象が発生した場合があることを指示するプロ
セッサのメッセージの検出に基づく巨視的な方針を採用
している。このシステムは外部キャッシュ・コヒレンシ
ー制御回路を使用して実施することができ、又はキャッ
シュ・コヒレンシー制御を機能的にマイクロプロセッサ
・チップに集積することができる。外部回路として実施
する場合は、マイクロプロセッサとキャッシュ・コヒレ
ンシー制御チップを印刷配線板に実装することができ、
一方この印刷配線板は母線調停信号又はキャッシュ無効
化信号を供給するために母板を再設計する必要なく、コ
ンピュータ・システムの既存のマイクロプロセッサ・ソ
ケット内に装着することができる。このシステムはPC
(ISA又はEISA)又はマイクロチャネル母線アー
キテクチャーのいずれかに準拠したコンピュータ・シス
テムと共に使用できる。
【0012】本発明を完全に理解するために、又、その
特徴と利点を理解するために添付図面を参照しつつ本発
明の実施例を詳細に説明する。本発明は特許請求項の範
囲に含まれる実施例の修正又は変化形を全て包含するも
のと理解されたい。
【0013】
【実施例】本発明のキャッシュ・コヒレンシー・システ
ムの実施例は従来型の386母線準拠型コンピュータ・
システムと互換性があるま内部キャッシュを制御するた
めに使用される。マイクロプロセッサは386母線準拠
型コンピュータ・システムでは一般にSX母線と呼ばれ
る24ビット外部アドレスを備えた32ビットの内部デ
ータ経路と、16ビットの外部データ経路とを使用して
いる。あるいはこの実施例を32ビットの外部データ及
びアドレス母線を有するDX母線を使用したコンピュー
タ・システムに関連して説明することもできよう。本実
施例のキャッシュ・コヒレンシー・システムは内部のラ
イトスルー1Kキャッシュを装備した本実施例のマイク
ロプロセッサと連結されている。キャッシュ・コヒレン
シー・システムはマイクロプロセッサとキャッシュ・コ
ヒレンシー・システムの組合せを一般に多重マスタ・コ
ンピュータ・システム、特に、母線調停信号を前記ソケ
ットが利用できないか、又は利用できる場合でも、マイ
クロプロセッサの母線制御信号と連携してコンピュータ
・システム内で発生する全ての母線サイクルの精密な性
質を信頼性を伴って指示しないコンピュータ・システム
のマイクロプロセッサ・ソケットへと装着することを支
援する。本実施例のコンピュータ・システムは(a)外
部キャッシュ・コントローラだけがキャッシュ・コヒレ
ンシーを保持するために母線仲裁信号を使用でき、且つ
(b)DX32ビットPC(ISA又はEISA)アー
キテクチャーを採用している。本実施例のマイクロプロ
セッサは標準型の386ピンアウトの非接続ピンの一つ
であるFLUSH♯ピンを備えている。
【0014】本実施例のキャッシュ・コヒレンシー・シ
ステムは更に、キャッシュの設計がライトスルー方式で
あるかライトバック方式であるかに応じて異なる実施形
態と性能の表示があっても、任意のキャッシュ設計と、
任意のキャッシュ・サイズ又は機構に適用できる。ライ
トスルー方式のキャッシュの場合のキャッシュの無効化
には無効にされたキャッシュの内容をマークする段階だ
けが含まれるが、ライトバック方式のキャッシュの無効
化には最初にキャッシュ内容が主メモリ装置にライトバ
ックされ、次に無効であるとマークされるキャッシュ・
フラッシュ動作が必要である。このように、ライトバッ
ク方式のキャッシュを備えたキャッシュ・コヒレンシー
・システムを使用した場合は、大量の同期事象を生成す
るシステム内の過剰なフラッシュ活動によって性能が低
下することがある。ライトスルー方式のキャッシュを備
えたキャッシュ・コヒレンシー・システムを採用したほ
うが好ましい別の用例には対照的多重処理(SMP)の
システム環境があり、この場合はプロセッサは主記憶装
置が常に妥当なデータを保持するという前提に依存して
いる。すなわち、ライトスルー方式のほうがより優れた
性能を発揮し、同時に記憶が妥当であるとするシステム
の前提とも一致する。現在はSMP環境は従来のほとん
どのオペレーティング・システム(MS−DOS,UN
IX,OS2,WINDOWS)によって支援されな
い。
【0015】キャッシュの無効化とキャッシュ・フラッ
シュには技術的な区別があるにも関わらず、ライトスル
ー・キャッシュの無効化と、ライトバック・キャッシュ
の場合のライトバック後の無効化の双方の動作を説明す
るために“フラッシュ”という用語はしばしば専門家に
よって用いられる。本項の発明の詳細な説明ではフラッ
シュと無効化という用語を互換的に使用する。 キャッシュ制御システム 図1は内部キャッシュを備えたマイクロプロセッサ内の
キャッシュ制御システムの実施例を示している。マイク
ロプロセッサ・チップは全体的に参照符号10で示し、
内部キャッシュ・メモリ・システム20を含んでいる。
マイクロプロセッサ10は実行又は処理装置11と、メ
モリ管理装置(MMU)12とを含んでいる。実行装置
は内部の線形アドレス母線13を経て線形(仮想)アド
レスを出力し、一方データ伝送は内部データ母線14を
経て行われる。MMUは線形アドレスを物理的アドレス
に変換し、このアドレスが別個の内部の命令アドレス母
線15とデータ・アドレス母線16を経て出力する。物
理的アドレスは(a)キャッシュ・メモリ・システム2
0と(b)外部アドレス母線A0−23にインタフェー
スするアドレス・バッファ18の双方に備えられてい
る。
【0016】内部キャッシュ・メモリ・システムはキャ
ッシュ22と、キャッシュ制御システム24とを含んで
いる。キャッシュ制御システムは(MMUに変換されな
い低位ビットの線形アドレスと共に)内部の命令アドレ
ス母線15及びデータ・アドレス母線16を介さずに物
理的アドレスを受理する。更に、キャッシュ制御システ
ムは内部データ母線14からデータを受理することがで
きる。実施例のキャッシュ22は各々が32ビット内部
データ母線に対応した4バイトの256のキャッシュ線
を有する1キロバイトの統合された(命令及びデータ)
ライトスルー・キャッシュである。このキャッシュは直
接的なマッピング、又は関連するように設定された2経
路のマッピングのいずれかで構成することができる。関
連するように設定された2経路のマッピングで構成され
た場合は、キャッシュは2バンクの128本のキャッシ
ュ線に分離される。キャッシュの構成と動作は従来型と
同様である。キャッシュ制御システム24はキャッシュ
22にキャッシュ・アドレスを供給し、且つキャッシュ
動作に関連する制御及び状態ピン30を使用可能/使用
禁止にするキャッシュ構成信号を印加する。キャッシュ
・アドレス及びキャッシュ構成信号は双方ともソフトウ
ェア制御のもとにキャッシュ制御システム(特にキャッ
シュ制御レジスタ)に装填されるキャッシュ制御情報に
基づいて生成される。
【0017】特に、キャッシュ制御システム24はアド
レス・スペースのキャッシュ不能領域を定義するために
使用されるキャッシュ制御情報を格納する。例えば、キ
ャッシュ制御情報は各1メガバイトの境界を越えた最初
の64キロバイトをキャッシュ不能であるものと定義
し、それによってマイクロプロセッサ10が8086の
実モードのアドレス指定を支援することを可能にする。
MMUからの各々の物理的アドレス毎に、キャッシュ制
御システムはキャッシュ制御システムに格納されたキャ
ッシュ制御情報に基づいて、アドレスがアドレス・スペ
ースのキャッシュ不能領域に指定されるかどうかを判定
する。キャッシュ不能の領域へのアクセスはキャッシュ
・ミスとして処理され、外部の母線サイクルを要求する
が、キャッシュの充填はなされない。図3はキャッシュ
制御システムをより詳細に示している。キャッシュ制御
システム50は6つのオンチップ・キャッシュ制御レジ
スタ52を備えている。すなわち2つの8ビット・キャ
ッシュ構成レジスタCCR0及びCCR1と、4つの1
6ビット・キャッシュ不能領域レジスタNCR1−NC
R4である.キャッシュ制御情報はI/Oポート22h
と23hとを用いてキャッシュ制御レジスタに書込まれ
る。キャッシュ制御レジスタ52へのアクセスはキャッ
シュ制御レジスタのアドレス(intlexと呼ばれる) をI
/Oポート22hに書込むことによって行われ、その
際、内部データ母線へのインタフェースは指標レジスタ
54によって行われる。次にデータはI/Oポート23
hを介して特定のキャッシュ制御レジスタへと書込ま
れ、又はキャッシュ制御レジスタから読出され、内部デ
ータ母線へのインタフェースはデータ・レジスタ53に
よって行われる。
【0018】各々のI/Oポート23hの動作にはI/
Oポート22hの動作が先行しなければならず、それ以
外の場合は第2の、後続のI/Oポート23hの動作は
オフチップにされ、記憶された制御情報には作用を及ぼ
さない。キャッシュ制御レジスタ(C0−CFh)に割
当てられたアドレス範囲の外側の指標によるI/Oポー
トへのアクセスによって、外部母線サイクルが生じ、オ
ンチップのキャッシュ制御レジスタ内に記憶されたどの
制御情報にも作用を及ぼさない。記憶されたキャッシュ
制御情報に基づいて、キャッシュ制御システムはキャッ
シュ・アドレス制御論理60を用いてキャッシュ・アド
レス制御信号を生成する。更に、キャッシュ構成信号が
制御及び状態ピン30、すなわちA20M♯、KEN
♯,RPLSET♯,及びFLUSH♯を使用可能/使
用禁止にする。キャッシュ・アドレス制御論理60は6
つのキャッシュ不能領域比較器61−66を備えてお
り、最初の2つはCCR0のNC0及びNCIビットと
関連し、最後の4つはそれぞれNCRI−NCR4と関
連している。各比較器の出力はそれぞれのANDゲート
61A−66Aによってゲートされ、ゲートされた出力
はNORゲート68に印加される。(比較器63−65
の場合は書込み保護論理70と経て印加される。) キャッシュ不能領域レジスタNCR1−NCR3と関連
する3つのキャッシュ不能領域比較器63−65のゲー
トされた出力も書込み保護論理70に印加される。特
に、3つの比較器出力はそれぞれのキャッシュ不能領域
レジスタNCR1−NCR3と関連する2組のANDゲ
ート73A−76Aに印加される。ゲートされた出力は
それぞれNORゲート68と、NORゲート78に印加
される。 キャッシュ制御レジスタ キャッシュ制御レジスタ、すなわちキャッシュ構成レジ
スタCCRO−1と、キャッシュ不能領域レジスタNC
R1−4にはソフトウェア制御のもとでキャッシュ制御
情報を装填される。
【0019】キャッシュ制御レジスタ用のレジスタ指標
の割当てを表1に記載する。
【0020】
【表1】 キャッシュ制御レジスタ指標割当て レジスタ名 レジスタ指標 レジスタ内のビット数 CCRO C0h 8 CCRI C1h 8 NCR1 C5h−C6h 16 NCR2 C8h−C9h 16 NCR3 CBh−CCh 16 NCR4 CEh−CFh 16 キャッシュ構成レジスタ キャッシュ構成レジスタCCR0及びCCR1用のビッ
ト割当てを表2A及び2Bに記載する。
【0021】
【表2A】 キャッシュ構成レジスタCCR0のビット割当て レジスタ名 レジスタ指標 ビット 説 明 CCR0 COh 0 NC0;=1の場合は各1メガ バイトの境界での最初の64キ ロバイトをキャッシュ不能と設 定 1 NC1:=1の場合は各1メガ バイト領域への640キロバイ トをキャッシュ不能と設定 2 A20M:=1の場合はA20 M♯入力ピンが使用可能になる 3 KEN:=1の場合はKEN♯ 入力ピンが使用可能になる 4 FLUSH:=1の場合はFL USH♯入力ピンが使用可能に なる 5 RARB:=1の場合は保持状 態に入ると内部キャッシュのフ ラッシュが可能になる 6 CO:キャッシュ構成を選択 0=2経路 関連設定 1=直接マップ 7 SUSPEND:=1の場合は、 SUSP♯入力及びSUSPA ♯出力が使用可能になる
【0022】
【表2B】 キャッシュ構成レジスタCCR1のビット割当て レジスタ名 レジスタ指標 ビット 説 明 CCR1 C1h 0 RPL:=1の場合は出力ピンR PLSET及びRPLVAL♯が使 用可能になる。使用可能にされない 場合は出力RPLSET及びRPL VAL♯が浮動する。 1−3 予約 4 WP1:=0の場合は、NCR1は キャッシュ不能領域を定義する。= 1の場合は、NCR1はキャッシュ 可能であるが、書込み保護されたア ドレス領域を定義する。リセット状 態=0 5 WP1:=0の場合は、NCR2は キャッシュ不能領域を定義する。= 1の場合は、NCR2はキャッシュ 可能であるが、書込み保護されたア ドレス領域を定義する。リセット状 体=0 6 WP=3:=0の場合はNCR3は キャッシュ不能領域を定義する。= 1の場合はNCR3はキャッシュ可 能であるが、書込み保護されたアド レス領域を定義する。リセット状態 =0 7 予約 最初のキャッシュ不能領域のサイズを4ギガバイトに設
定するために0Fhへと省略するC6hを除いて、全て
のビットはリセットで0にクリヤされる。 キャッシュ不能領域レジスタ キャッシュ不能領域レジスタ用のビット割当てを表3A
にリストする。キャッシュ不能領域レジスタNCR1−
4はベース(すなわち開始)アドレス・フィールド及び
4ビット・ブロック・サイズ・フィールドによって定義
される。キャッシュ不能領域のサイズは表3Bに示すよ
うに4キロバイトないし4ギガバイトの範囲である。
【0023】
【表3A】 キャッシュ不能領域のレジスタ・ビット割当て レジスタ名 レジスタ指標 ビット 説 明 NCR1 C5h 7−0 領域1の開始アドレスのアドレス・ ビットA23−A16 C6h 7−1 領域1の開始アドレスのアドレス・ ビットA15−A12 3−0 キャッシュ不能領域1のサイズ (表3B) NCR2 C8h 7−0 領域2の開始アドレスのアドレス・ ビットA23−A16 C9h 7−4 領域2の開始アドレスのアドレス・ ビットA15−A12 3−0 キャッシュ不能領域2のサイズ (表3B) NCR3 CBh 7−0 領域3の開始アドレスのアドレス・ ビットA23−A16 CCh 7−4 領域3の開始アドレスのアドレス・ ビットA15−A12 3−0 キャッシュ不能領域3のサイズ (表3B) NCR4 CEh 7−0 領域4の開始アドレスのアドレス・ ビットA23−A16 CFh 7−4 領域4の開始アドレスのアドレス・ ビットA15−A12 3−0 キャッシュ不能領域4のサイズ (表3B) キャッシュ不能領域レジスタは24ビットの物理的アド
レス用に割当てられていることに留意されたい。仮に3
2ビットの物理的アドレスを用いた場合は、(対応する
レジスタ指標を伴う)アドレス・ビット31−24を受
容して適応させるためにレジスタの割当ては拡張するで
あろう。
【0024】
【表3B】 キャッシュ不能領域のサイズ ビット3−0 キャッシュ不能領域 ビット3−0 キャッシュ不能領域 のサイズ のサイズ 0000 使用禁止 1000 512キロバイト 0001 4キロバイト 1001 1メガバイト 0010 8キロバイト 1010 2メガバイト 0011 16キロバイト 1011 4メガバイト 0100 32キロバイト 1100 8メガバイト 0101 64キロバイト 1101 16メガバイト 0110 128キロバイト 1110 32メガバイト 0111 256キロバイト 1111 4ギガバイト 4ギガバイトのブロック・サイズは386/486のマ
イクロプロセッサのアドレス・スペース全体を表してい
る。従って、4ギガバイトのブロック・サイズを特定す
ると、実際には全てのマイクロプロセッサのアドレス指
定動作についてキャッシュ不能になる。キャッシュを使
用禁止にするこの技術はマイクロプロセッサがキャッシ
ュ・オン・モードでパワアップされ、しかし種々の理由
からキャッシュ不能にする必要があるコンピュータ・シ
ステムで有用である。
【0025】更に、アドレス・スペースの所定の領域に
ついて、0のブロック・サイズ・フィールドを指定する
と、この領域レジスタのアドレスがキャッシュ不能であ
ると指定されることが防止されることに留意されたい。 キャッシュ制御及び状態ピン 図2を参照すると、本実施例のマイクロプロセッサはコ
ンピュータ・システムにより支援された場合はキャッシ
ュの制御とキャッシュへのインタフェースの付加的なモ
ードを付与するためにキャッシュ制御システムによって
利用されることができるキャッシュ制御及び状態ピンを
備えている。これらのピンはA20M♯、KEN♯,R
PLSET、RPLVAL♯及びFLUSH♯である。
キャッシュ・フラッシュ(FLUSH♯)はキャッシュ
全体を無効にする(フラッシュする)能動低レベル入力
である。FLUSH♯はCCRO構成レジスタ内のFL
USHビットを用いて使用可能にすることができる。フ
ラッシュ♯はRESETの結果として使用禁止にされ、
CCR0に4ビットを設定することによって使用可能に
される。このように、DMA(直接メモリ・アクセス)
が可能なコンピュータ・システムの場合は、コンピュー
タ・システムがマイクロプロセッサに対してFLUSH
信号を供給すると本実施例のマイクロプロセッサはキャ
ッシュ使用可能モードで動作することができ、それによ
ってキャッシュ制御システムはメモリに対するDMAア
クセスに引き続いてキャッシュを無効にすることができ
る。 キャッシュ制御動作 キャッシュが使用可能にされると、マイクロプロセッサ
はロックされていないメモリ・データ読出しサイクルを
キャッシュする。このキャッシュ制御システムによっ
て、キャッシュ制御レジスタ、キャッシュ構成レジスタ
CCR0−1及びキャッシュ不能領域レジスタNCR1
−4に格納されたキャッシュ制御情報によってキャッシ
ュ不能であるものと定義された記憶アドレス・スペース
の領域へのキャッシュ・アクセスをマイクロプロセッサ
が自動的に行うことがないように保証される。 キャッシュ・アドレス指定 図2を再び参照すると、キャッシュ・アドレス制御論理
60はキャッシュ不能領域比較器61−66を備えてい
る。各々の比較器は(a)キャッシュへの現在の物理的
アドレス入力と、(b)それぞれのキャッシュ構成レジ
スタCCRO−1又はキャッシュ不能領域レジスタNC
R1−4からのキャッシュ不能領域出力を受理する。
【0026】比較器61はキャッシュ構成レジスタCC
ROからのNC0を受理し、一方、比較器62は同じレ
ジスタからのNC1ビットを受理する。(表3A参照)
これらのビットのいずれか一方又は双方が設定されて、
アドレス・スペースの対応する領域がキャッシュ不能で
あるものと定義されると、関連する比較器の出力は現在
アドレスが前記キャッシュ不能領域内にある場合は、こ
のアドレスがキャッシュ不能であることを指示する。こ
れらの比較器の出力はそれぞれのANDゲート61A−
62Aによってゲートされ、その際にNC0及びNC1
のレジスタのビットがゲート信号を供給する。比較器6
3はキャッシュ不能領域レジスタからアドレス・スペー
スの対応するキャッシュ不能領域を定義するベース/サ
イズ・データを受理する。(表3A及び3Bを参照)比
較器出力は現在のアドレスが前記キャッシュ不能領域内
にある場合は、この現在アドレスがキャッシュ不能であ
ることを指示する。比較器の出力はANDゲート63A
によってゲートされ、サイズ・フィールドはゲート信号
を供給する。比較器64−66の動作は比較器63の動
作と類似している。
【0027】比較器61−62のゲートされた出力はN
ORゲート68に直接入力される。比較器63−65の
ゲートされた入力は書込み保護論理70に入力される。
本実施例の場合、キャッシュ制御システムからのキャッ
シュ不能アドレス制御信号はキャッシュによって前記キ
ャッシュ不能アドレスに関してキャッシュ充填を禁止す
るものと解読される。すなわち、キャッシュ・ビットが
生じた場合(例えば対応するキャッシュ線が充填され、
次にキャッシュ制御レジスタ内のキャッシュ制御情報が
変化した場合)、読出し動作には作用を及ぼさない。あ
るいは、キャッシュ制御システムからのキャッシュ不能
アドレス制御信号は、キャッシュ不能アドレスが実際に
キャッシュ内にあるか否かに関わりなく、読出し動作の
場合はミスとして解読されることもあろう。書込み保護
アドレス制御信号に応答して、キャッシュは書込み保護
領域内にあるものと定義されたキャッシュ線への書込み
を禁止する。勿論、このようなキャッシュ線での読出し
動作は通常に処理される。 キャッシュの無効化 マイクロプロセッサが直接メモリ・アクセス(DMA)
を支援するコンピュータ・システムで使用される場合、
マイクロプロセッサの内部キャッシュと外部メモリとの
間のキャッシュ・コヒレンシーを考慮する必要があろ
う。マイクロプロセッサ10は“母線スヌーピング”
(すなわち、DMA動作中の母線の活動の監視)を支援
しない。その結果、キャッシュ・コヒレンシーを考慮す
ることは、以前キャッシュされたデータだ別の母線マス
タによって外部メモリ内で修正された場合に内部キャッ
シュの内容が無効にされるべきであることを意味する。
【0028】マイクロプロセッサ10はFLUSHビッ
トがキャッシュ制御システム24内の適宜のキャッシュ
構成レジスタCCRO内に設定された場合、FLUSH
♯信号の確認に応答してキャッシュの無効化を支援す
る。FLUSH信号に関しては、マイクロプロセッサ1
0は各クロック・サイクル毎にFLUSH♯入力をサン
プリングする。キャッシュが無効化される実際の辞典は
実行パイプラインの内部状態によって左右される。 キャッシュ・コヒレンシー・システム 図3は本発明を実施したキャッシュ・コヒレンシー・シ
ステムを内部ライトスルー・キャッシュを備えたマイク
ロプロセッサと組合わせて、集積化されたマイクロプロ
セッサ/キャッシュ・コヒレンシー・システムを構成し
た実施例を示している。マイクロプロセッサ/キャッシ
ュ・コヒレンシー・システムは全体として符号110で
示され、FLUSHモジュール122とWAVESHA
PINGモジュール124とから成るキャッシュ・コヒ
レンシー制御論理120と共に、図1のマイクロプロセ
ッサ10と基本的に対応するマイクロプロセッサ110
を備えている。
【0029】しかし、図1のマイクロプロセッサ10は
SX16ビットのピンアウト形式として示されている
が、図3に示したマイクロプロセッサは32ビットのD
Xアドレス母線A31−A2プラス、バイト使用可能ビ
ットBE3♯−BE0♯及びデータ母線D31−D0を
支援するDX32ビットのピンアウト形式として示され
ている。SX16ビットのピンアウト形式用のキャッシ
ュ・コヒレンシー・システムの実施にはルーチンの設計
修正がなされよう。図示した実施例では、FLUSHモ
ジュール及びWAVESHAPINGモジュールはいず
れもプログラム可能PAL(プログラム化されたアレイ
論理)内で実施される。こられのPALは多くのメーカ
ーから市販されており、本実施例で使用された特定の部
品はそれぞれP16V8R及びP16R4である。更
に、クロック信号を供給するために従来型のクロックP
AL(図示せず)を使用することができる。図示したキ
ャッシュ・コヒレンシー・システムは既存のマイクロプ
ロセッサ・チップの設計の上位機としてオフチップで実
施されている。マイクロプロセッサ/キャッシュ・コヒ
レンシー・システムは標準型の386型マイクロプロセ
ッサ・ソケットに搭載するためにピンを接続するPGA
(ピン格子アレイ)を有する小型の印刷配線板上に組込
まれている。あるいは、キャッシュ・コヒレンシー論理
制御システムによって実行されるキャッシュ・コヒレン
シー機能をマイクロプロセッサ110の一部としてオン
チップで集積することもできよう。
【0030】キャッシュ・コヒレンシー制御論理120
はマイクロプロセッサ110以外の母線マスタが主メモ
リ装置にアクセスする母線マスタ同期事象(母線マスタ
通信事象)を検出するための同期検出機能を果たす。母
線マスタ同期事象が検出されると、キャッシュ・コヒレ
ンシー論理がマイクロプロセッサ110にCPU FL
USH信号を出力し、マイクロプロセッサは継続的にそ
のFLUSH入力ピンをサンプリングし、FLUSH♯
の表明に応答して、公知の態様でキャッシュ無効化ルー
チンを実行し、キャッシュをFLUSH(無効化)して
キャッシュ・コヒレンシーを保証する。図4aはFLU
SHモジュール122用のピンアウトを図示している。
FLUSHモジュールはマイクロプロセッサ110から
選択された母線サイクルの定義及び制御信号及び選択さ
れたアドレス線を受理する。FLUSHモジュール12
2によって使用される母線サイクル定義信号はメモリ/
IO(M/IO♯)、データ/制御(D/C♯)、書込
み/読出し(W/R♯)及びLOCK♯である。主な母
線定義信号(M/IO♯,D/C♯,W/R♯)はAD
S♯(アドレス・ストローブ)が能動化すると、妥当信
号へと励振される。マイクロプロセッサ110への割込
みを含む一定の動作中に他の母線マスタへのシステム母
線の制御を否定するように、マイクロプロセッサ110
によってLOCK♯が表明される。
【0031】FLUSHモジュールによって利用される
母線制御信号はアドレス・ストローブ(ADS♯)であ
る。その他の標準的な母線制御信号、準備完了(REA
DY♯)及び次のアドレス要求(NA♯)は使用されな
い。ADS♯はマイクロプロセッサが適宜の内部出力ピ
ン上の妥当アドレス信号(A31−A2,BH3♯−B
E0♯)及び母線サイクル定義信号(M/IO♯,D/
C♯,W/R♯)を励振したことを指示する3状態出力
である。各々の母線サイクルの種類を定義するために上
記の信号を利用して、FLUSHモジュール122は母
線マスタ同期事象、すなわちFLUSH(キャッシュ無
効)状態を検出する。このようなFLUSH状態毎に、
FLUSHモジュールはFLUSH出力を供給する。M
/IO♯,D/C♯、及びアドレス・ビットA2/A8
はラッチされ、PAL122(図3a)D Lの組合せ
論理用のQMIO/DWR/QADD入力として使用さ
れる。PAL122内でのラッチはその他の入力DC
♯,ADS♯,LOCK♯,その他のアドレス・ビット
及びバイト使用可能信号(BE3♯−EE0♯)には必
要ない。図4bはWAVESHAPING PALモジ
ュール124用のピンアウトを示している。WAVES
HAPINGモジュールはFLUSHモジュール122
からのFLUSH出力信号を受信し、マイクロプロセッ
サ110用の適宜の準備及び保持時間を以て、対応する
CPU/FLUSH出力を生成する。
【0032】あるいは、FLUSHモジュールを必要な
準備及び保持時間を以て、FLUSH信号を出力するよ
うに設計してもよく、その場合はWAVESHAPIN
Gモジュールは除去されよう。WAVESHAPING
モジュールのFLUSH出力(CPU/FLUSH)は
マイクロプロセッサ110のFLUSH♯ピンに結合さ
れている。能動状態のCOU/FLUSH信号に応答し
て、マイクロプロセッサ110は従来の態様で内部キャ
ッシュの内容を無効にし、その結果無効にされたデータ
・エントリへの後続のアクセスによってキャッシュ・ミ
スが生ずる。一般に、多重マスタ・コンピュータ・シス
テム内のCPU(すなわち、マルチプロセッサ110)
及びその他の母線マスタは母線マスタ・アクセスをシス
テム(局域内)母線へと同期化するために下記の母線マ
スタ同期事象のひとつ、又は幾つかを利用する。すなわ
ち、(a)ハードウェア生成割込み、(b)独立したI
/Oスペースへのアクセス及び(又は)(c)メモリの
メモリマップドI/Oスペースへのアクセスである。特
に、PC母線アーキテクチャーの場合は、母線マスタ事
象は割込み、及びポーリングされた独立したI/Oによ
って同期化され、一方、マイクロチャネル母線アーキテ
クチャーでは、母線マスタ事象はポーリングされたメモ
リマップドI/O、並びに割込み及びポーリングされた
I/Oによって同期化されることができる。
【0033】PC母線アーキテクチャーを使用したコン
ピュータ・システムの実施例では、キャッシュ・コヒレ
ンシー用に利用される母線マスタ同期事象は次のとおり
である。すなわち(a)ハードウェア生成割込み、及び
(b)CPUによって選択された周辺機器、すなわちハ
ードディスク又は外部コプロセッサに向けられたアクセ
スを除いた、I/Oアドレス・スペースへの読出し又は
読出し/書込みアクセス、である。これらのフラッシュ
機構はオンチップ又はオフチップのいずれでも容易に実
現される。 ハードウェア生成割込み 本実施例では、FLUSHモジュール122は全ての割
込み肯定サイクル(INTERRUPT ACKNOW
LEGE CYCLE)で能動FLUSH信号を生成す
る。このFLUSHオン割込み(FLINT)機構は、
マイクロプロセッサ/キャッシュ・コヒレンシー・シス
テムの実施例が、母線マスタ間の事象を同期するために
割込みが利用される多重マスタ・システムに搭載されて
いる場合に、キャッシュ・コヒレンシーを保持するため
に、利用される。IKの内部キャッシュでは、全ての割
込み中のFLINTによっては著しい性能の低下は生じ
ない。しかし、キャッシュサイズが大幅に縮小すると、
(対応してキャッシュ充填時間が増大)FLINTがプ
ログラム可能である必要が生じることがあり、従って、
選択された割込みだけがFLUSH状態を生ずる。FL
INTをプログラム可能にするには、割込みベクトルが
プログラマによって激しく変化することがある点を考慮
する必要があろう。 I/O読出し 本実施例では更に、FLUSHモジュール122は外部
コプロセッサ又はハードディスクに向けられたアクセス
を除いた、I/Oスペースへの読出しアクセス又は読出
し/書込みアクセス毎に能動FLUSH信号を生成す
る。このFLUSHオンI/O(FLIO)フラッシュ
機構は、マイクロプロセッサ/キャッシュ・コヒレンシ
ー・システムの実施例が、母線マスタ間の事象を同期す
るためにポーリグされたI/Oが利用される多重マスタ
・システムに搭載されている場合に、キャッシュ・コヒ
レンシーを保持するために利用される。
【0034】FLIOをプログラム可能にすることによ
って、キャッシュ・コヒレンシー・システムはキャッシ
ュ・コヒレンシーへの考慮を含まないI/Oスペースの
選択された領域にアクセスするためのFLUSHの表明
を回避することが可能になる。従って、工業規格IDE
駆動、STディスク駆動及び数学的ヒプロセッサは全て
プログラムによって制御されたデータ伝送に依存してい
るので、本実施例ではこれらの装置へのアクセスに応答
してFLUSHを表明する必要がない。読出し及び読出
し/書込みアクセス用だけにFLIOを実施するための
別の例として、FLUSHモジュールを、マイクロプロ
セッサ110からI/Oアドレス・スペースまでの書込
みアクセスに応答してこのフラッシュ機構を実施するよ
うに構成することもできよう。例えば、ある種の特別の
DMAボードは(例えば状態情報を通信する目的で)I
/Oスペースを経てオペレーティング・システムと通信
するので、I/Oスペースへの書込みアクセスはこのよ
うな特別なボードを組込んだコンピュータ・システム用
のキャッシュ/メモリの同期ポイントとなろう。 メモリマップドI/O読出し マイクロチャネル母線アーキテクチャーを支援するた
め、キャッシュ・コヒレンシー制御システムの上述の実
施例をキャッシュ・コヒレンシー用に利用される母線マ
スタ同期事象、すなわちメモリマップドI/Oアドレス
・スペースへの読出しアクセスを含むものに修正するこ
ともできよう。このFLUSHオン・メモリマップドI
/O(FLMIO)フラッシュ機構は、母線マスタ間の
事象を同期するためにポーリングされたメモリマップド
I/Oが使用される多重マスタ・システムにマイクロプ
ロセッサ/キャッシュ・コヒレンシー・システムを搭載
する際にキャッシュ・コヒレンシーを保持するために利
用されよう。
【0035】FLIOの場合と同様に、FLMIOをプ
ヤグラム可能にすることによって、キャッシュ・コヒレ
ンシー・システムはキャッシュ・コヒレンシーへの考慮
を含まないメモリマップドI/Oスペースの選択された
領域にアクセスするためのFLUSHの表明を回避する
ことが可能になる。従って、性能上の観点からはハード
ディスク又は外部コプロセッサに向けられた読出しアク
セスを除外することがおそらく有利であろう。FLOと
は異なり、コンパニオンFLMIOチップ内にオフチッ
プでFLMIOフラッシュ機構を実施することはサイズ
及びコスト上の観点から実際的ではないであろう。何故
ならば、このような実施態様は全てのアドレス及びデー
タ線、及び多数の母線定義/制御線を必要とするからで
ある。キャッシュ制御システムを含むマイクロプロセッ
サの実施例の場合、一つの方法はキャッシュ不能領域レ
ジスタNCR1−NCR4(図2)と同様のレジスタを
使用してオンチップでFLMIOフラッシュ機構を実施
することであろう。例えば、FLMIOはキャッシュ不
能領域レジスタNCR4をプログラム可能に指定して、
メモリマップドI/Oのスペースを(a)キャッシュ不
能、又は(b)FLUSHによるキャッシュ不能のいず
れかとして定義することによって実施できよう。すなわ
ち、NCR4によって特定された領域内のFLMIO記
憶域に向けられた読出し/書込みアクセスはマイクロプ
ロセッサによってキャッシュされず、更にマイクロプロ
セッサがキャッシュの内容を無効化するようにさせるで
あろう。
【0036】FLIOの場合のように、書込みアクセス
用にFLMIOを実施することは、ある種の特定のハー
ドウェア又はソフトウェアのアプリケーション、例えば
特定のDMAボードには有利であることがある。 FLUSHモジュール 図4(a)を参照すると、FLUSHモジュール122
は全ての母線マスタ同期事象、すなわち前述したように
コプロセッサ又はディスクへのアクセスを除いたハード
ウェア生成のマイクロプロセッサ110への割込み入力
及びI/O読出しで、FLUSH出力を表明するように
プログラムされた再プログラム可能なPALとして実施
できる。FLUSH PALは組合せ論理から成ってお
り、PALからのFLUSH出力信号はマイクロプロセ
ッサへのFLUSH入力用に必要な準備及び保持時間を
付与するように形成されていないパルス出力である。
(この波形機能はWAVESHPINGモジュールによ
って行われる。)FLUSHモジュールは(a)母線サ
イクル定義信号M/IO♯、D/C♯、W/R♯及びL
OCK♯、(b)母線制御信号ADS♯、及び(c)ア
ドレス信号A31/A8/A2及びバイト使用可能信号
BE3♯から母線サイクルの種類を特定し、これらの信
号は全てマイクロプロセッサ110の対応する端子に現
れる。特に、A31は数学的コプロセッサと関連し、A
8はハードディスクに関連る。一方、割込みと関連する
母線サイクルを更に定義するためにA2及びバイト使用
可能信号を利用できる。
【0037】信号M/IO♯、W/R♯及びPAL12
2へのアドレス・ビットA2/A8入力はQMIO/Q
WR/QADDとしてラッチされ、PAL内の組合せ論
理用の入力としてフィードバックされなければならな
い。信号LOCK♯,ADS♯、アドレス・ビットA3
1及びPAL122に入力されるバイト使用可能信号B
E3♯−BE0♯はラッチされる必要がない。FLUS
Hモジュールはマイクロプロセッサ110の各々の母線
サイクルを開始するADS♯ストローブによってクロッ
クされ、ADS線はモジュールのCLK及びADS入力
ピンの双方と連結される。各々のADS♯ストローブ毎
に、FLUSHモジュールは入力信号をデコードし、F
LINT又はFLIO状態のいずれかが検出されると能
動的低レベルFLUSH出力信号を生成する。FLUS
Hモジュール122用の入力ピンの定義は下記のとおり
である。 CLK,!OE ピン1,11; WR,DC,MIO,ADS,LOCK ピン2,3,4,5,18 BE0,BE1,BE2,BE3 ピン6,7,8,9; A2,A31,A8 ピン12,13,17; 又、出力ピンの定義は下記のとおりである。 FLUSH ピン19 QA,QB,QC ピン14,15,16 上記中、!はNOTを表し、次の方程式が適用される。
H,L,X,Z,C=1.0...X...Z,.
C.. FLUSHモジュール用のPAL方程式は次のように表
される。
【0038】QA:=MIO QB:=WR QC:=A31♯A8 !FLUSH=((!QA&!DC&!QB&!LOC
K&!BE0♯&BE1&BE2&BE3♯&!A2)
♯(!QA&!QB&!QC) 上記中:=はラッチされた動作を表し、=は組合せ動作
を表し、&はANDを表し、♯はORを表す。これらの
PAL方程式は下記のように変形される。 QA:=MIO QB:=WR QC:=A31♯A8 FLUSH=!(!QA&!QB&!QC♯!A2&!
BE0♯&BE1&BE2&BE3♯&!DC&!LO
CK&!QA&!QB) 上記のPAL方程式は本実施例に従ってFLINT及び
FLITフラッシュ機構を実施するためにPALの構成
を定義するものである。書込みアクセス用にFLIOを
実施することには、これらのPAL方程式を直接修正す
ることが含まれよう。(PALはFLIOを書込みアク
セス用にジャンパ可能に構成することができよう。) 実施例のFLUSHモジュール用の試験ベクトルは明細
書の末尾の補遺に記載してある。 WAVESHAPINGモジュール 図4(b)を参照すると、WAVESHAPINGモジ
ュール124はマイクロプロセッサのFLUSHピンに
供給されるCPU/FLUSH出力信号の負荷サイクル
を制御するようにプログラムされたPALとして実施で
きる。WAVESHAPING PALは組合せ論理と
状態機械論理の双方から構成されている。
【0039】WAVESHAPINGモジュール124
はFLUSHモジュール122からFLUSH信号を受
信し、2相CLKの位相2の立上がりエッジに関連する
適宜の準備及び保持時間(実施例のマイクロプロセッサ
ではそれぞれ5nsと3nsである)を以てCPU/F
LUSH出力信号を生成する。WAVESHAPING
用のCLK入力は外部のクロックPAL回路によって供
給される。登録された(フリップ−フロップ)出力QA
/QB/QCは状態機械(接続なし)の状態を表す。入
力ピンの定義は下記のとおりである。 CLK,OE ピン1,11 FLUSH ピン2 更に出力ピンの定義は下記のとおりである。 QA,QB,QC ピン14,15,1
6 CPU/FLUSH ピン19 上記において下記の方程式が適用される。
【0040】 H,L,X,Z,C=1.0,X,.Z..C ST=〔QC,QB,QA〕 SO=b000 S1=b001 S2=b010 S3=b011 S4=b100 S5=B101 S6=b110 S7=B111 波形状態機械の状態表は下記のとおりである。 状態S0:FLUSHの場合はS0、それ以外の場合S
1 状態S1:S2に向かう 状態S3:S4に向かう 状態S4:S5に向かう 状態S5:S6に向かう 状態S6:FLUSHの場合はS0、それ以外の場合S
7 状態S7:S6に向かう 組合せ論理用のPAL方程式は次のように表すことがで
きる。
【0041】!CPU FLUSH =(ST>=S
1)&(ST<=S5) PAL方程式は次のように変形される。 QC:=!(!QA&!QC♯!QB&!QC♯FLU
SH&!QA&QB) QB:=!(QA&QB&!QC♯!QA&!QB♯F
LUSH&!QA&QC) QA:=!(QA♯FGLUSH&!QB!QC♯FL
USH&QB&QC) CPU FLUSH!(QA&!QC♯!QB&QC♯
QB&!QC): 上記の状態表とPAL方程式は本実施例に従ったFLI
NT及びFLIOフラッシュ機構の負荷サイクルを制御
するためのWAVESHAPING PALの構成を定
義する。マイクロプロセッサ110はクロック・サイク
ル毎にそのFLUSH♯ピンをサンプリングする。(位
相2)WAVESHAPINGモジュールがCPU/F
LUSHを表明した場合は、マイクロプロセッサはキャ
ッシュを無効にする。キャッシュの無効化を完了するの
に必要な時間の長さは実行パイプラインの内部状態によ
って左右される。キャッシュの無効化が完了するまで、
マイクロプロセッサは新たな母線サイクルを開始するた
めのADS♯ストローブを発しないので、キャッシュの
無効化のプロセス中に生ずるFLINT又はFLIO状
態の結果、CPU/FLUSHは表明されない。(すな
わち、FLUSHモジュールは次のADS♯ストローブ
を待機しなければならない。
【0042】別のオンチップの実施 キャッシュ・コヒレンシー・システムは容易にオンチッ
プで実施することができる。本実施例のマイクロプロセ
ッサ110の場合、FLINT、FLIO及びFLMI
Oフラッシュ機構を実施するための適切なシステム構成
は次のとおりになろう。キャッシュはパワーアップ又は
リセットで使用可能にされ、図2示すように次のように
構成されよう。 *NC0使用可能−1メガバイト+64キロバイト キ
ャッシュ不能 *NC1使用可能−640キロバイト−1メガバイト
キャッシュ不能 *キャッシュ不能領域レジスタ構成 *物理的アドレスす000 0000h(3ギガバイ
ト)+64キロバイトキャッシュ不能(これはWeit
ek コプロセッサのアドレス・スペースである) *物理的アドレスFFFF 0000h(4バイト−6
4キロバイト)+64キロバイト キャッシュ不能(こ
れはROM BIOS 物理的アドレス・スペースであ
る。) *フラッシュ使用可能−FLINT、FLIO及びFL
MIOを利用するように設定(FLUSHが使用不能に
されると、FLINT、FLIO及びFLMIOは無視
され、キャッシュのフラッシュは生じない。) このキャッシュ構成でFLINT及びFLIOを実施す
るために提案される一つの方法を下記に示す。FLMI
Oを実施するための提案される方法は前述の“メモリマ
ップドI/O読出し”に記載されている。
【0043】FLINT用にはマイクロプロセッサ11
0はFLUSHが使用可能にされた場合に割込み肯定サ
イクル2毎にキャッシュの無効化を実行するように構成
されよう。FLINTはFLUSHを生成する割込みベ
クトルのプログラム可能性を許容するために、マイクロ
プロセッサの設計に特殊なFLINTレジスタを含める
ことによってプログラム可能にすることができよう。F
LIO用には、4つのFLIOアドサス範囲レジスタを
マイクロプロセッサのレジスタ・セットに含めることが
でき、前記レジスタは各々がキャッシュ不能領域レジス
タと同様にプログラム可能である。4つのI/O領域は
必要な場合はフロッピー・ディスク、ハードディスク、
ネットワーク・カード及びその他のマスタ・カードのよ
うな装置へのI/Oアクセスでマイクロプロセッサにキ
ャッシュ無効化動作を実行させるようにプログラム可能
であろう。例えば、4つの16ビットPLIOレジスタ
をマイクロプロセッサに組み入れることができ、その場
合、ビット15−3はA15−A3を表し、ビット2は
I/O読出し又はI/O読出し/書込みでフラッシュを
制御し、ビット1−0はI/Oアドレス領域の細分性を
制御する。 15 3 2 1 0 アドレスA15−A3 R/W 細分性 ビット2 I/O読出し 書込み 0h I/O読出しのみでのフラッシュ 1h I/O読出し又は書込みでのフラッシュ ビット1−0 細分性 0h 使用禁止(フラッシュなし) 1h 8バイト 2h 16バイト 3h 全てのI/Oでのフラッシュ 結論:これまで本発明を特定の実施例に関して詳細に説
明してきたが、専門家にはこれらの実施例の種々の修正
及び別の実施例が示唆されよう。例えば、本発明は(局
域内処理バッファが特定の処理によってのみアクセスさ
れる記憶装置であり、必ずしもキャッシュではない場
合)、非同期的処理相互間の通信の周期的な監視に依存
せずに局域内処理バッファの妥当性を保証するための、
コンピュータ・システムの非同期的な処理間のデータ通
信方法に全般的に応用できる。この技術は多重非同期処
理が共用メモリをアクセスし、この各々のアクセスと、
妥当データが得られる場合にその旨を示す同期事象とを
関連付ける多重マスタ・コンピュータ・システムでプロ
セッサ−キャッシュが使用されるプロセッサ−キャッシ
ュの組合せ用のキャッシュ・コヒレンシー・システムを
実施する際に特別に利用される。(代表的には、処理か
らの読出しの場合は同期事象はデータ伝送に先行し、一
方、処理への書込みの場合は同期事象はデータ伝送の後
になる。)更に、キャッシュ・コヒレンシー・システム
の実施例を内部主要キャシュを備えたマイクロプロセッ
サに関して説明してきたが、本発明は、マイクロプロセ
ッサがシステム内の全ての母線サイクルの正確な性質を
判定するのに充分である母線調停信号を受信しない、外
部主要キャッシュを備えたマイクロプロセッサにも等し
く応用できる。マイクロプロセッサ・ソケットに母線調
停信号を供給しないコンピュータ・システムと関連した
実施例を説明してきたが、本発明はマイクロプロセッサ
にとって母線調停信号が利用できるが、キャッシュ・コ
ヒレンシーの目的のためには信頼性を以て利用できない
コンピュータ・システムにも応用できる。“キャッシ
ュ”という用語は実行装置と主メモリ装置との間の中間
レベルのメモリ装置の総称であり、一方“母線調停信
号”という用語は母線マスタ通信事象を信号表示するあ
らゆる信号の総称である。
【図面の簡単な説明】
【図1】本発明を実施したキャッシュ・コヒレンシー・
システムを備え、キャッシュ・コヒレンシー制御システ
ムを適用できるマイクロプロセッサの概略構成図であ
る。
【図2】キャッシュ制御レジスタと、キャッシュ制御レ
ジスタに装填し、キャッシュ動作を制御するための支援
論理を示したキャッシュ制御システムのより詳細な構成
図である。
【図3】内部の主要キャッシュを備えたマイクロプロセ
ッサと組み合わせて使用される“FLUSH”モジュー
ルと“WAVESHAPING”モジュールとを備えた
キャッシュ・コヒレンシー制御システムを示した構成図
である。
【図4】(a)は図3に示したFLUSHモジュールの
ピンアウトである。(b)は図3に示したWAVESH
APINGモジュールのピン・アウトである。
【符号の説明】
10 マイクロプロセッサ 11 処理装置 12 メモリ管理装置 13 内部線形アドレス母線 14 内部データ母線 15 内部命令母線 16 データ・アドレス母線 18 アドレス・バッファ 20 キャッシュ・メモリ・システム 22 キャッシュ 22h I/Oポート 23h I/O−ポート 24 キャッシュ制御システム 30 使用可能/使用禁止制御及び状態ピン 53 データ・レジスタ 61−66 比較器 61A−66A ANDゲート 68 NORゲート 70 書込み保護論理 73A−75A ANDゲート 73B−75B ANDゲート NCR1−NCR3 キャシュ不能領域レジスタ 78 NORゲート 100 マイクロプロセッサ/キャッシュ・コヒレンシ
ー・システム 110 マイクロプロセッサ 120 キャッシュ・コヒレンシー制御システム 122 FLUSHモジュール 124 WAVESHAPINGモジュール A31−A2 DXアドレス母線 D31−D0 データ母線
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウィリアム シー パットン アメリカ合衆国 テキサス州 75023 プ ラノウィクリフ トレイル 6801

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 中央処理装置によってアクセス可能であ
    るアドレス指定可能なメモリを含むバッファを有する作
    動的に接続された該中央処理装置を有するデータ・プロ
    セッサであって、該プロセッサが信号端子と、該信号端
    子の選択された一つに接続された同期事象検出手段とを
    有し、該検出手段が(a)I/Oスペースの選択された
    領域をアクセスするために仕向けられた該プロセッサか
    らのアドレス情報と、(b)該プロセッサへの割込み入
    力の一方又は双方を検出し、上記検出に応答して該バッ
    ファの該データメモリの少なくとも一部にデータ無効化
    信号を出力することを特徴とするデータ・プロセッサ。
  2. 【請求項2】 該バッファがプロセッサ一局域内キャッ
    シュであることを特徴とする請求項1記載のデータ・プ
    ロセッサ。
  3. 【請求項3】 データ・プロセッサであって、該プロセ
    ッサによってアクセスされるデータ・エントリを記憶で
    き、且つ多重マスタ内で動作するのに適した局域内キャ
    ッシュと、キャッシュ内のデータの妥当性を保証するた
    めに母線調停信号を該プロセッサに利用できないか、又
    は該プロセッサが該調停信号だけに依存しない共用メモ
    リコンピュータ・システムと、キャッシュ・コヒレンシ
    ー・システムとに作動的に接続され、該キャッシュ・コ
    ヒレンシー・システムが、 該プロセッサに接続され、該プロセッサにおいてプロセ
    ッサ以外の母線マスタによる該共用メモリへのアクセス
    を指示する母線マスタ同期事象を検出する同期事象検出
    手段と、 該同期事象検出手段による該同期事象の選択された一つ
    の検出に応答して該キャッシュ内のデータ・エントリの
    少なくとも一部を無効にするように動作するキャッシュ
    無効化手段とから成っており、 それによって上記のように無効化されたキャッシュ・デ
    ータ・エントリへの後続のアクセスに応答してキャッシ
    ュ・ミスが発生する構成にしたことを特徴とするデータ
    ・プロセッサ。
  4. 【請求項4】 母線マスタ同期事象には選択されたハー
    ドウェア生成割込みが含まれるることを特徴とする請求
    項3記載のデータ・プロセッサ。
  5. 【請求項5】 該母線同期事象にはI/Oスペースの選
    択された領域をアクセスするために出力された記憶アド
    レス情報が含まれるることを特徴とする請求項3又は4
    記載のデータ・プロセッサ。
  6. 【請求項6】 該同期事象手段が該プロセッサから独立
    したI/Oスペースの選択された領域へと出力された選
    択された母線定義信号と、母線制御信号と、アドレス信
    号とに応答して、該同期事象を検出し、データ無効化出
    力信号を生成するように接続された論理回路を有してい
    ることを特徴とする請求項1、2及び5記載のデータ・
    プロセッサ。
  7. 【請求項7】 該論理回路が更に該データ無効化信号用
    の準備及び保持時間を制御する動作を行う波形論理を備
    えたことを特徴とする請求項6記載のデータ・プロセッ
    サ。
  8. 【請求項8】 該同期検出論理回路が該プロセッサの外
    部で実施されたことを特徴とする請求項6及び7記載の
    データ・プロセッサ。
  9. 【請求項9】 複数の非同期処理が共用メモリをアクセ
    スし、該共用メモリから有効なデータが利用できる場合
    には、その旨を指示する同期事象を上記それぞれのアク
    セスに関連付ける形式の多重マスタ・コンピュータ・シ
    ステムでキャッシュ・コヒレンシーを実現し、且つ少な
    くとも該処理の選択された1つがその処理に限られた場
    所にあるキャッシュに格納されたデータ・エントリーを
    アクセスする方法において、 該同期事象の選択された一つを検出するために該選択さ
    れた処理の動作を監視する段階と、 該検出に応答して、該局域内キャッシュに記憶されたエ
    ントリの少なくとも一部を無効にする段階と、 それによって上記無効化されたキャッシュ・データ・エ
    ントリに後続のアクセスがなされた場合はそれに応答し
    てキャッシュ・ミスを生じせしめる段階とを有すること
    を特徴とするデータ通信方法。
  10. 【請求項10】 少なくとも一つの選択された処理がこ
    の選択された処理によってアクセス可能なデータ・エン
    トリを記憶する局域内処理バッファを有するコンピュー
    タ・システムでの非同期処理相互間でのデータ通信の方
    法において、 該選択された処理を監視して、有効なデータが該非同期
    処理によって共用メモリから得られることを指示して該
    選択された処理と該非同期処理の他方との間の選択され
    た同期事象の通信を検出する段階と、 該検出された同期事象の各々に応答して、上記局域亡き
    バッファ内のデータ・エントリの少なくとも一部を無効
    にする段階とを有することを特徴とするデータ通信方
    法。
  11. 【請求項11】 局域内処理バッファがキャッシュであ
    ることを特徴とする請求項10のデータ通信方法。
  12. 【請求項12】 該同期事象には(a)該選択された処
    理への選択されたハードウェア割込みと、(b)I/O
    スペースの選択された領域をアクセスするための該選択
    された処理からの記憶アドレス情報の一方又は双方が含
    まれることを特徴とする請求項9ないし11記載のデー
    タ通信方法。
  13. 【請求項13】 該メモリアドレス情報が選択された母
    線定義信号、母線制御信号及び該プロセッサから独立し
    たI/Oスペースの選択された領域へ出力されるアドレ
    ス信号を有することを特徴とする請求項12に記載の方
    法。
  14. 【請求項14】 該I/Oスペースの選択された領域が
    非DMAディスク及び外部コプロセッサメモリを除く全
    てのI/Oスペースメモリであることを特徴とする請求
    項1、2及び5の何れかに記載の、又は請求項12の方
    法に基づくデータ・プロセッサ。
  15. 【請求項15】 該I/Oスペースの選択された領域が
    メモリ割当てされたI/Oスペースメモリであることを
    特徴とする請求項1、2及び5の何れかに記載のデータ
    ・プロセッサ又は請求項12に記載の方法。
  16. 【請求項16】 該アドレス出力が読出し/書込み出力
    又は読出し出力又は書込み出力であることを特徴とする
    請求項1、2及び5の何れかに記載のデータ・プロセッ
    サ又は請求項12に記載の方法。
  17. 【請求項17】 該バッファ又はキャッシュがライトス
    ルー・キャッシュであることを特徴とする前記請求項の
    いずれかに記載のデータ・プロセッサ又はデータ通信方
    法。
  18. 【請求項18】 該選択された同期事象の特定の一つを
    プログラム式に選択可能であることを特徴とする前記請
    求項のいずれかに記載のデータ・プロセッサ又はデータ
    通信方法。
JP5211173A 1992-08-26 1993-08-26 母線の主調停信号を使用しないキャッシュ・コヒレンシー・システム Pending JPH06202950A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US93556492A 1992-08-26 1992-08-26
US07/935564 1992-08-26

Publications (1)

Publication Number Publication Date
JPH06202950A true JPH06202950A (ja) 1994-07-22

Family

ID=25467359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5211173A Pending JPH06202950A (ja) 1992-08-26 1993-08-26 母線の主調停信号を使用しないキャッシュ・コヒレンシー・システム

Country Status (2)

Country Link
EP (1) EP0585117A1 (ja)
JP (1) JPH06202950A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211222A (ja) * 2008-03-01 2009-09-17 Toshiba Corp メモリシステム
US8706950B2 (en) 2008-03-01 2014-04-22 Kabushiki Kaisha Toshiba Memory system

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548746A (en) * 1993-11-12 1996-08-20 International Business Machines Corporation Non-contiguous mapping of I/O addresses to use page protection of a process
US5906001A (en) * 1996-12-19 1999-05-18 Intel Corporation Method and apparatus for performing TLB shutdown operations in a multiprocessor system without invoking interrup handler routines
US20030163745A1 (en) * 2002-02-27 2003-08-28 Kardach James P. Method to reduce power in a computer system with bus master devices

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3845474A (en) * 1973-11-05 1974-10-29 Honeywell Inf Systems Cache store clearing operation for multiprocessor mode
US5095428A (en) * 1989-01-04 1992-03-10 Compaq Computer Corporation Cache flush request circuit flushes the cache if input/output space write operation and circuit board response are occurring concurrently

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211222A (ja) * 2008-03-01 2009-09-17 Toshiba Corp メモリシステム
US8706950B2 (en) 2008-03-01 2014-04-22 Kabushiki Kaisha Toshiba Memory system
US9201717B2 (en) 2008-03-01 2015-12-01 Kabushiki Kaisha Toshiba Memory system
US10901625B2 (en) 2008-03-01 2021-01-26 Toshiba Memory Corporation Memory system
US11409442B2 (en) 2008-03-01 2022-08-09 Kioxia Corporation Memory system

Also Published As

Publication number Publication date
EP0585117A1 (en) 1994-03-02

Similar Documents

Publication Publication Date Title
US5724549A (en) Cache coherency without bus master arbitration signals
US5524233A (en) Method and apparatus for controlling an external cache memory wherein the cache controller is responsive to an interagent communication for performing cache control operations
US5581727A (en) Hierarchical cache system flushing scheme based on monitoring and decoding processor bus cycles for flush/clear sequence control
US5276833A (en) Data cache management system with test mode using index registers and CAS disable and posted write disable
US5469555A (en) Adaptive write-back method and apparatus wherein the cache system operates in a combination of write-back and write-through modes for a cache-based microprocessor system
US5664149A (en) Coherency for write-back cache in a system designed for write-through cache using an export/invalidate protocol
US5822767A (en) Method and apparartus for sharing a signal line between agents
US5353415A (en) Method and apparatus for concurrency of bus operations
US5524235A (en) System for arbitrating access to memory with dynamic priority assignment
US8171230B2 (en) PCI express address translation services invalidation synchronization with TCE invalidation
US5355467A (en) Second level cache controller unit and system
US5787486A (en) Bus protocol for locked cycle cache hit
JP2717752B2 (ja) プロセッサ
EP0707256A2 (en) Circuit for placing a cache memory into low power mode in response to special bus cycles
WO1994008297A9 (en) Method and apparatus for concurrency of bus operations
GB2403560A (en) Memory bus within a coherent multi-processing system
US5829027A (en) Removable processor board having first, second and third level cache system for use in a multiprocessor computer system
JPH05204756A (ja) デジタルプロセッサ
JPH05216756A (ja) プロセッサ及びキャッシュメモリ
US5408636A (en) System for flushing first and second caches upon detection of a write operation to write protected areas
US6241400B1 (en) Configuration logic within a PCI compliant bus interface unit which can be selectively disconnected from a clocking source to conserve power
US5617557A (en) Using an address pin as a snoop invalidate signal during snoop cycles
EP1832980B1 (en) Multiprocessor system and exclusive control method therein
JPH05210583A (ja) プロセッサ及び書込むデータの正しい順序付けを実行する方法
EP0681241A1 (en) Processor board having a second level writeback cache system and a third level writethrough cache system which stores exclusive state information for use in a multiprocessor computer system