JPH0395650A - キャシュ動作不能アドレスランダムアクセスメモリ - Google Patents

キャシュ動作不能アドレスランダムアクセスメモリ

Info

Publication number
JPH0395650A
JPH0395650A JP2128972A JP12897290A JPH0395650A JP H0395650 A JPH0395650 A JP H0395650A JP 2128972 A JP2128972 A JP 2128972A JP 12897290 A JP12897290 A JP 12897290A JP H0395650 A JPH0395650 A JP H0395650A
Authority
JP
Japan
Prior art keywords
storing
computer system
memory
random access
data
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
JP2128972A
Other languages
English (en)
Inventor
Gary W Thome
ゲアリー ダブリュー トーム
James H Nuckols
ジェイムズ エイチ ヌコルス
Paul R Culley
ポール アール カリー
Gary L Brasher
ゲアリー エル ブラッシャー
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.)
Compaq Computer Corp
Original Assignee
Compaq Computer 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 Compaq Computer Corp filed Critical Compaq Computer Corp
Publication of JPH0395650A publication Critical patent/JPH0395650A/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
    • 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/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

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)
  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はキャシュメモリシステムを使用するコンピュー
タシステム、殊に、一定範囲のメインメモリアドレスが
キャシュ動作不可能になったコンピュータシステムに関
する。
〔従来の技術〕
今日、コンピュータシステムのユーザはより強力で高速
のコンピュータを必要としている。このことは大型コン
ピュータシステムについてあてはまると同様に、パーソ
ナルコンピュータについてもまた然りである。このため
、従来より高速のコンピュータとメモリが継続的に開発
され活用されている。マイクロコンピュータの開発は経
済的に余裕のある同様に高速のメモリデバイスの開発を
しのいでいる。その結果、ユーザはシステムの性能につ
いてコスト上の制約を受けることが多い。
この問題は少量の高速、高価なメモリと大量の低速、安
価なメモリを使用するキャシュメモリシステムを使用す
ることによって部分的に解決された.低速メモリ内のデ
ータ部分はキャシュコントローラが何時その利用可能な
情報が高速メモリ内にあるかを判断しながら高速メモリ
内にコピーされることによって迅速なサイクルを実行す
ることができた。そのため、コスト上は申し分ないま\
で性能水準は向上した。
然しなから、パーソナルコンピュータは多くの異なる形
で構成可能なフレキシブルな装置である。
例えば、インターナショナル・ビジネス・マシーンズ社
(IBM)により開発されたパソコンと互換性あるパソ
コンは特定の設計に応じてメモリを位置に論理的に配置
する場合がある。従来より、映像表示システムの如き装
置はメモリを共有しメモリはリードオンリー(ROM)
であるか、デバイス制御レジスタの如くロケーシッンが
読取り/書込み不可能であるため、メモリの一定部分は
キャシュ動作不可能であった。そのため、メモリマッフ
内の一定のロケーシβンはキャシュシステムを処理する
何れのコントローラに対してもキャシュ動作不能と表示
する必要がある。
キャシュシステム内の動作速度のために、所与のメモリ
エリアがキャシュ動作不能であることを示す信号はすこ
ぶる迅速に作り出される必要があった。そのため、プロ
グラマブルアレイロジック(PAL)を活用して解読を
実行するようにしていた。然しなから、上記の如く、パ
ーソナルコンピュータは非常にフレキシブルなシステム
であって、個々の回路板を追加することによってユーザ
は容易にその構戒を編或しなおすことができる。
これら回路板はコンピュータシステムのメモリ空間の一
部のキャシュ動作可能性を変更することができる。しか
し、PALの構成はユーザによって改造することはでき
ないため、システム内に使用されるPALは何れも最小
公分母をもつようにするか一定の特殊製作について設計
され、その際、回路板の追加については制約が課せられ
ていた。
異なるPALを挿入することもできるが、このことは未
熟練のユーザには行うことができず、複雑さと工夫の余
地が増し、大口のユーザや大容量の業務にしか使用でき
ないものであった。このことは小口のユーザや特殊業務
に関する問題を解決することはできない。
本発明によるコンピュータシステムはランダムアクセス
メモリ(RAM)を使用してキャシュ動作不能アドレス
についての解読機能を実行するものである。RAMは、
アドレスバスに接続されたそのアドレス入力と、キャシ
ュコントローラのキャシュ動作不能アドレス入力に接続
されたデータ出力を備える。所与のアドレスがマイクロ
プロセッサにより要求される場合、RAMはそのメモリ
ブロックのキャシュ動作可能性を表わす値を出力する。
一個のRAMは使用中であると、各メモリブロックは個
々に適当な状態にプログラミングされることによってP
ALの制約は取除かれ、小口ユーザや特殊業務は正確に
編戒されたキャシュ動作可能マップを備えることが可能
になる。
RAMは最初バワーオン自己テスト(P O S T)
状態中にロードされ、他の時点で読取り、修正可能とな
る。RAMに対する書込み入出力(I/O)書込み操作
を本発明の回路と関連するI/Oポートに対して実行す
ることにより所望データ値、ライトフラグ、プログラミ
ング値をセントして実行される。I/OボートはI/O
書込み操作が完了したかどうか確認するために読取られ
る。所望メモリブロックに対するメモリ書込み操作がそ
の手順を完了する.メモリ書込み操作はローカルバスア
クセスモードで行われることによってシステムのメイン
メモリは影響を受けることはない。このプロセスはメモ
リブロック全体について反復されることによってRAM
内に適当な値が確実に存在するようにされている。
RAMの読取りはI/O書込みを実行することによって
リードフラグとプログラム値をセソトして実行される。
I/O読出し操作は所望のブロックに対するローカルバ
スメモリ書込み操作が実行されたかどうかを検証するた
めに実行される。
RAMデータ値がメモリ書込み操作中にフリップフロッ
プ内にラフチされた後、I/Oボート読取り操作を実行
することによってデータ値が読取られる. かくして、本発明は、所与のメモリブロックのキャシュ
動作可能性のメモリキャシュを使用することによってコ
ンピュータシステムの柔軟性を向上させることができる
実施例の次の詳細な説明と図面を考察することによって
本発明をより十分に理解することができよう。
〔実施例〕
さて第1図について述べると、P文字は全体としてマイ
クロプロセッサを、M文字はキャシュメモリを、C文字
は本発明を具体化したコンピュータシステムのキャシュ
コントローラを示す。以下の理由から、マイクロプロセ
ッサPはインテル社80386−33で、キャシュコン
トローラCはインテル社82385−33とする。マイ
クロプロセッサP1キャシュメモリM1およびキャシュ
コントローラCは、従来通り、ローカルデータ、アドレ
スならびに制御バスLと接続される。これらローカルバ
スLは、一連のバッファとトランシーバ10によりメイ
ンメモリ11を含むコンビュ一タシステムの残余部分と
インターフェースで接続している。
キャシュコントローラCは本発明において特別に関連の
ある2個の入力を備える。第1の入力はLBA”入力も
しくはローカルバスアクセス入力である。この入力が適
当な時期にローである場合、キャシュコントローラCは
マイクロプロセッサPにより要求されている動作がロー
カルバスL上の−デバイスに向けられており、バフファ
とトランシーバ10により接続されるコンピュータシス
テム部分には向けられていないことを確認する。ローカ
ルバスのアクセス中、キャシュコントローラCは種々の
デバイスの動作を制御せず、実質上遊び状態となる。
この場合の他の入力はNCA”もしくはキャシュ動作不
能アドレス入力である。適当な時間のロー信号がこの入
力に受取られると、キャシュコントローラCは、この特
定メモリアドレスがキャシュ動作不能で、従ってその処
理をキャシュメモリMに対して影響を及ぼさずにローカ
ルバスLの外部のメモリデバイスに移行させることを理
解する.LBA”信号はキャシュ動作不能アドレス(N
CA)プログラマブルアレイロジック(PAL)デバイ
ス12により発生させられる。NCA  PAL12は
LW−R信号、LM−10信号、およびPGM信号を利
用してL B A”信号を判断する。
LW−R信号はローカル制御バス上に存在する書込みも
しくは読取り表示信号であって、LM−10イ言号はフ
゜ロセソサPによりつくりだされローカノレバスL上に
存在するメモリ空間もしくはI/O空間表示信号である
。PGMはNCAランダムアクセスメモリ (RAM)
のブログラξングが必要であることを示すために存在す
る信号である。NCAPAL12に関連する等式は次の
通りである。
LBA=LM− 1/○・LW−R − PGMそれ故
、メモリ書込み処理が存在しPGMビットもしくは信号
がハイにセットされる場合には常にLBA’″信号はロ
ーになり、キャシュコントローラに対してローカルバス
処理が実行中であることを示す。この条件は、メモリ書
込み処理がコンピュータシステムのメモリには影響を及
ぼさないで、その代わり、直接、NCA  RAM14
に向けられるように設けられるものである。
NCA  RAM14は、所与のメモリブロックがキャ
シュ動作可能か不可能かを表示するデータ値をストアす
るために使用される。この目的のために、NCA  R
AM14は、そのアドレス入力がローカルアドレスバス
内の種々のアドレスライン、例えば、ライン<13−2
3、31〉に接続される。NCA  RAM14のデー
タボートはオブシッンのレジスタ18を経て、キャシュ
コントローラCのNCA入力に接続される。レジスタ1
8は、製作中にジャンバリング用に効果的に利用可能な
ゼロ値レジスタであることが望ましい。
NCA  RAM14は常にイネーブル状態であるため
に、ローカルバスL上に一個のアドレスが存在する時に
は常に、NCA  RAM14は、NCARAM14に
対する書込み処理中は除き、信号をキャシュコントロー
ラCのNCA”入力に提供することになる。
また、NCA  RAM14のデータポート16はトラ
イスラートバソファ20の出力とD形フリップフロフプ
22のD入力に接続される。バフファ20とフリップフ
ロップ22は、NCA RAM14のデータポート16
をプロセッサPとインターフェースで接続させ、NCA
  RAMをプログラミングしたりNCA  RAM1
4内にストアされた値を読取ることを可能にするために
使用される。
NCA  RAM14は、15ナノセカンドRAMの如
き、すこぶる高速のスタティックRAMであることが望
ましい。この高速が必要なのは、マイクロプロセッサP
とキャシュコントローラCの処理速度が高速であり又、
ローカルバスL上にアドレス値が出現するのとキャシュ
コントローラCに対して有効であるのにNCA’信号が
必要とする間のタイミング要請のためである。このこと
は80386−33マイクロプロセッサPと82385
−33キャシュコントローラCを利用する場合に示され
るスピードのNCA  RAM14を使用することによ
って可能となる。例えば、上記装置の20MHZバージ
ョンを使用した場合、この本発明はこの時に容易に利用
可能であるRAMによっては可能とはならないであろう
。82385−20の場合、NCA“信号はCLK2信
号のPHIIの開始に先立ち10ナノセカンド有効でな
ければならない。然しなから、80386−20では2
0MHzクロフク速度でこの同じCLK2のエソジに先
立ってアドレス情報が20ナノセカンドまで存在するこ
とを保証することは不可能である。
それ故、このため保証されるアドレスからNCA“信号
が妥当しなければならない時刻までほんの10ナノセカ
ンドを有効時間として残すだけである。
このことは利用可能な十分なサイズのRAMメモリにつ
いては行うことはできないから、PALバージョンを先
に使用しなければならなかった。上記80386−33
と82385−33装置の場合、80386−33につ
いて有効となるアドレスにH < C L K 2信号
サイクルのCLK2信号サイクルのPHI2部分に先立
ち、NCA”信号が13ナノセカンド有効となるように
タイξングが変化したばかりである。80386−33
の最悪のアドレス値提示はこのエッジに先立つ30ナノ
セカンドであるから、既知のアドレスデータが有効であ
るのと有効なNCA”信号を必要とする間には最悪のケ
ースの17ナノセカンドのタイξングが残されることに
なる。かくして、本実施例に使用されるような15ナノ
セカンドNCA RAM14は必要な処理を実行するこ
とができる。
NCA  RAM14はランダムアクセスメモリである
から、初めにパワーアップされた時、NCARAM14
中にはランダムで恐らく不適当な値がストアされる。そ
れ故、所望値をNCA  RAM14中に書込む必要が
ある。このことは幾つかのレジスタと一定のゲートを使
用することによって実行される。実施例のコンピュータ
システム中でC67と表示した入出力( I /O)ポ
ートはNCARAM14をブログラξングする、即ち読
取りもしくは書込みに関して一定のビットを有するよう
に割当てられる。NCA  RAM14をプログラミン
グする際、I/OボートC67中の3ビットが使用され
る。上記3ビットはPGMビフト、NCAW−Rビット
、およびNCAD“ビットと命名される。NCAD”ビ
フトは実際には2個の異なるビットで、入力もしくは書
込み用にはNAD I”、出力もしくは読取り用にはN
CADO”である。PGMビットはD形フリフブフロッ
プ24(第2図)内にストアされる。システムデータバ
ス25のビット7は、クロソク入力がWRC67信号の
反転形となるようにD入力に対して接続される。WRC
67信号は、WRC67信号のエッジが下降するに先立
ってデータが有効となるようなタイミングで有効な書込
み処理がI/Oポート67に対して実行される時にハイ
になる信号である。かくして、このことはPGMフリッ
プフロフプ24に提供されるクロフク信号の立上りエッ
ジがデータがシステムデータバス25上に存在しPGM
フリップフロップ24内にラッチされるような位相と順
序をもつことを意味する。PGMフリソブフロップ24
の非反転出力はPGM信号を提供する。
NCAW−RとNCAD I”ビット、即ち、キャシュ
動作不能アドレス書込みキャシュ動作不能アドレスデー
タ入カビットは、ラッチ26によってストアされる。シ
ステムデータバス25のビフト6と5はそれぞれ、WR
C67信号がラッチのイネーブル入力に接続されるよう
にラッチ26に接続される。WRC67のタイξングは
、WRC信号がローとなった時にデータが存在しラッチ
内ヘラッチされることになるタイミングである。
NCAW−RとNCAD I”ビットに対応するラッチ
26の出力によってNCAW−RとNCADI”信号が
つくりだされる。信号の利用は以下の通りである。即ち
、PGM信号はNCA  RAMのプログラミングモー
ドが期待されていることを示すために使用される。NC
AW−R信号はNCARAM14がそれに書込まれもし
くはそれから読出されたデータ値を有するかどうかを示
すために使用される。NCADr”{t号はNCA  
RAM14に対する入力路として使用され、バッファ2
0の入力に接続される。
PGM,NCAW−R信号と、フリソプフロップ22の
出力であるNCADO“信号と称する信号とはバッファ
2日に対する入力として接続される。バソファ28はこ
れら3つの信号のビット位置< 7 − 5 >のシス
テムデータバス25上への提示を制御するために使用さ
れる。バソファ28の出力制御はRDC67と称する信
号に基づいている。同信号は、■/○ボートC67に対
する読取り要求がプロセッサPにより提示される時に有
効となるようなタイミングを有する。そのため、PGM
フリップフロフプ24、ラッチ26、バッファ28のこ
の組合せによってPGM,NCAW−R,NCAD I
”およびNCADO”信号をプロセッサPによって読取
ったり書込んだりすることが可能になる。
NCAD I”信号はその出力がNCA  RAMl4
のデータポート16に接続されるバッファ20の入力に
提供される。NCAD I”信号値は3入力NANDゲ
ート30の出力(第1図)がハイになったときNCA 
 RAM14内にラッチされる。NANDゲート30の
出力はNCA RAM14のライトイネーブル入力に接
続される。NANOゲート30に対する3つの入力はP
GMとNCAW −R信号とPGMACTを称される信
号である。
PGMACT信号はプログラミングモードがアクティブ
で、メモリ処理が実行中で、そのメモリ処理が書込み処
理であってデータをNCA  RAM14内ヘラソチし
たりデータをフリソプフロフプ22へ提供する適当な時
間であることを示す信号である。かくして、PGMとN
CAW−R信号がハイでプログラミングモード書込み処
理を行いたいことを示している場合、次のメモリ書込み
処理によってNANDゲート30から書込みパルスがつ
くりだされる。NANDゲート30の出力はNCADI
”バフファのバッフプ制御入力にモ接続されるため、N
ANDゲート30の出力がハイの時バンファ20に存在
するデータ値、即ちNCAD I値はデータポート16
に伝送され、メモリ書込み処理のアドレスによって決定
されるロケーションでNCA  RAM14内にストア
される。PGMACT信号はデータが十分な期間NCA
RAM14に提供されるような幅を有する。
PGMACT信号のタイミングとロケーションのために
、NCAD I”信号に存在するデータはプロセッサP
により要求されたメモリ書込み処理によって与えられる
アドレス内にストアされる。それ故、アドレスブロック
を適当に巡回しレジスタとラッチ26内のプログラムと
データ値の位取りを反復することによって、NCA  
RAM14に対して所望データ値を適当にロードするこ
とができる。
P GMC L R”と称する信号はPGMフリップフ
ロップ24のクリア入力に接続される。PGMCLR“
信号は、PGMACT信号が最早真ではなくなった後に
短期間ローになるような信号である。かくして、それぞ
れのプログラミングモードメモリ書込み処理後に、PG
Mフリップフロフプ24がクリアされるため、更にメモ
リ書込み処理が発生した場合にメモリアドレスのNCA
  RAM14の内容は望ましくない値に誤って変更さ
れることはない。
NCA  RAM16からデータを読取るにはフリソプ
フロソブ22を使用する。NANDゲート32を使用し
てNCA  RAM14のデータボート16の出力に存
在するデータをフリソブフロップ22内ヘクロッキング
する。NANDゲート32の出力はフリップフロソプ2
2のクロック入力に接続され、NANDゲート32は3
つの入力を有する。その3つの入力はPGM{S号、P
GMMCT信号、およびNCAW−R信号の反転の3つ
である。かくして、NCAW−Rビットがローにセット
されるプログラムモードメモリ書込み処理中、NCA 
 RAM14により提供されたデータはその出力がNC
ADO”信号であるフリップフロップ22によりラッチ
される。その後、プロセッサPは(/OポートC67を
読取り、メモリ書込み処理でアドレス指定されたRAM
メモリブロック内にストアされた特定のキャシェ動作不
能値を得ることができる。PGMCLR”信号によって
PGMフリップフロップ24が自動的にクリアされるこ
とによって不都合なキャシュ動作不能値が偶然読取られ
るようなことは防がれる。
第1図に示す実施例の場合、PALNCA”信号と呼ば
れるNCA  PAL12からの出力が存在することに
注意されたい。この信号はレジスタ40を経てキャシュ
コントロー−7CのNCA”入力に接続される。かくす
ることによって、従来の設計におけるようなPALか本
発明に使用されるNCA  RAM14の何れかを使用
できる回路板を開発し、システム設計者やシステムユー
ザに対して追加的な柔軟性をもたせることができる。
NCA”信号をキャシュコントローラCに提供するよう
な不都合なモードを有するレジスタ18もしくは40が
除去されるため、接続部が実際に存在せず、そのためN
CA  PAL12とNCARAM14によりつくりだ
されるような2つの信号間の干渉は存在しなくなる。
NCA  RAMl4からの読取りもしくはそこへの書
込みに使用されるメモリ書込み処理はNCAPAL14
により決定されるローカルバスモードで実行されること
に注意されたい。かくして、書込み処理はシステム内の
ローカルバス以外に存在する他のメモリに対して影響を
及ぼすことはない。
第3図は、第1図と第2図中に示すような回路について
使用され値をNCA  RAM14に書込むための書込
み順序100を示す。ステップ102において、種々の
値が初期化される。これらの値はプログラミングされる
メモリブロックの数、メモリブロックの大きさ、および
ブログラξソグされるメモリブロックの開始アドレスを
計数するカウンタを含む。制御はステップ104に進み
、そこでプロセッサPはI/OボートC67に書込み、
PGMとNCAW−R信号をハイに、NCAD I”信
号をその特定メモリブロックについて期待されるように
セットする。ステップ108において、プロセッサPは
I/OポートC67を読取る。この読取り処理が必要で
あるのはキャシュコントローラCが書込み処理をボスト
し、従ってI/Oボート書込み処理がNC’A  RA
M14値をセントするローカルバスメモリ書込み処理前
には完了できないからである。このI/O読取り処理に
よってI/O書込み処理は完了させられ、その結果、そ
の値はI/OボートC67内に適当にストアされる。制
御はステップ110に進み、そこで開始アドレス値によ
り表わされるメモリブロックに対するメモリ書込み処理
が実行される。かくしてこのメモリ書込み処理によって
NCAD I”ビットに書込まれていた値はNCA  
RAM14に接続されたアドレスラインによって識別さ
れるNCARAM14のロケーシゴン内へ自動的にロー
ドされる。制御はステップ112に進み、そこで必要な
最後のメモリブロックがNCA  RAM14内へプロ
グラミングされたかどうかについて判断が行われる。も
し否であれば、制御はステップ114に移り、そこで開
始アドレスがブロックサイズにより増分されメモリプロ
ックカウンタは増分される。その後、制御はステート1
04に進み、NCARAM14のプログラミング手順を
継続する。
もしステップ112において最後のメモリプロックがプ
ログラξング済みであると判断された場合には、制御は
書込み手順100の最後であるステップ116に進み、
その際、制御は全体としてコンピュータシステム内で使
用されるパワーオン自己テスト(POST)ルーチンの
他の部分に移される。かくして、プロセッサPは各メモ
リブロックについて適当な所定メモリキャシュ動作不能
アドレスデータ値全体によってNCA  RAM14を
迅速かつ容易にプログラミングすることができる。
一連のブロックのキャシュ動作不能値を読取るために使
用される読取り手順例200はステップ202(第4図
)で開始する。ステップ202においてブロックカウン
タ、ブロックサイズ、開始メモリアドレスの如き一連の
値が必要に応じて初期化される。制御はステップ204
に移り、そこでI/OボートC67が書込まれPGM値
はハイにW−R値はローにセントされ実行さるべきプロ
グラミングモード処理と読取り処理が表示される。
制御はステップ208に進み、そこでブロセフサPは、
以上の理由から、I/OボートC6 7を読取る。制御
はステップ208からステップ210へ進み、そこで開
始アドレスによって示されるようなメモリブロソクに対
してメモリ書取り処理が実行される。このメモリ書込み
処理によってNCARAM14内に存在するデータ値は
フリソプフロップ22内にラフチされる。その後、ブロ
セソサPはステップ212においてI/OボートC67
を読取る。データワードの5ビットで復帰する値はNC
AI)O”信号であって、プロセッサPがステップ21
0のメモリ書込み処理中に存在したメモリブロックのロ
ケーションのNCA  RAM工4内に存在するキャシ
ュ動作不能データ値を判断することを可能ならしめる。
制御はステップ214に進み、そこでこれが読取られる
べき最後のブロックであるかどうかの判断が行われる。
もし否であれば、制御はステップ216に進み、そこで
開始アドレスはブロックサイズだけ増分されブロックカ
ウンタは必要に応じて増分される。制御はステップ20
4に進み、同処理が再び実行される。もしこれが最後の
ブロフクであれば、制御はステップ214から手順20
0の終りであるステソプ216に、またコンピュータシ
ステムにより実行さるべき次の処理へと進む。
第3図と第4図に類似の手順は、コンピュータシステム
パワーアップフェーズ中のPOST部分処理で使用する
か、必要に応じてメモリのキャシュ動作不能部分を変更
できる別個のアプリケーションプログラムやユーティリ
ティプログラムにおいて使用することができる。
メモリ読取り処理は命令とプロセッサPに対する可能的
データを得るために使用され、従ってアドレスバス上に
適当なアドレスが提供される以前に多数の読取り処理が
発生するから、メモリ読取り処理はNCA  RAM1
4読取り処理については使用されないことに注意された
い。然しなから、適当な制御によればメモリ書込み処理
は発生しないであろう。また、NCA.  RAM14
は従来のランダムアクセスメモリであることが望ましい
けれども、十分高速のアクセスタイムを有する電気的に
消去可能なプログラマブルリードオンリーメモリ (E
EPROM)もしくはそれと同様なメモリとすることも
できる点に注意されたい。もしEEPROMを使用する
場合には、初期プログラミング後にシステムをパワーア
ップする際に書込み処理は不要であってマップの変更が
望ましい場合にのみ変更すればよい。
かくして、例えば所与のメモリアドレスブロックがキャ
シュ動作不能である場合に本方法は所与のメモリブロッ
クの特性を判断するためにすこぶるフレキシブルなシス
テムを開発することを可能ならしめ、その結果、個々の
ユーザは必要とあらばその個別的コンピュータシステム
の特性マップを調節できることが判る。
以上の説明は例解的なものであって、例解した回路、構
造、処理方法の詳部についてはもとより大きさ、形状、
材料、部品、回路素子、配線、接点について本発明の精
神から逸脱せずに種々の変更を施こし得ることはいうま
でもない。
【図面の簡単な説明】
第1図と第2図は本発明を組込んだコンピュータシステ
ムの一部の概略図、 第3図と第4図は本発明によりメモリ間でデータをスト
ア・読取ったりするための手順を示すフローチャート図
。 P・・・マイクロプロセッサ、M・・・キャシュメモリ
、C・・・キャシュコントローラ、L・・・制御ハス、
10・・・トランシーバ、11・・・メインメモリ、1
6・・・データボート。 F璽G.2

Claims (1)

  1. 【特許請求の範囲】 1、ストアされた情報を要求するための複数のアドレス
    ラインを有するプロセッサと、 情報をストアし上記アドレスラインに接続されたキャシ
    ュメモリと、 上記アドレスラインに接続され上記要求されたストア情
    報が上記キャシュメモリ内にストアされているかどうか
    を判断するキャシュメモリコントローラであって、キャ
    シュ動作不能アドレス入力を有するものと、 1メモリブロックのキャシュ動作可能状態を表わすデー
    タ値をストアするランダムアクセスメモリであって、そ
    のアドレス入力が上記アドレスラインに接続され上記デ
    ータ値にアドレッシングし、そのデータ出力が上記キャ
    シュ動作不能アドレス入力に接続されるものと、 から成るコンピュータシステム。 2、更に、上記ランダムアクセスメモリ内に上記キャシ
    ュ動作可能状態データ値をストアする手段を備える請求
    項1のコンピュータシステム。 3、上記ストア手段がプログラミングモード要求を表わ
    す値をストアする手段を含む請求項2のコンピュータシ
    ステム。 4、上記ストア手段が更に書込み要求を表わす値をスト
    アする手段を含む請求項3のコンピュータシステム。 5、上記ストア手段が更に上記ランダムアクセスメモリ
    内にストアさるべきデータをストアする手段を含む請求
    項4のコンピュータシステム。 6、上記ランダムアクセスメモリがライトイネーブル入
    力とデータ入力を備え、上記ストア手段が更にメモリ書
    込み処理に呼応する手段を含み、上記プログラミングモ
    ード要求値と書込み要求値が上記ストアデータ値を上記
    ランダムアクセスメモリデータ入力に対して書込み許可
    し、一定の値を上記ランダムアクセスメモリライトイネ
    ーブル入力に提供し上記ランダムアクセスメモリをして
    上記ストアデータ値をストア可能とする請求項5のコン
    ピュータシステム。 7、上記ストア手段が更にメモリ書込み処理後に上記プ
    ログラミングモード要求値をクリアする手段を備える請
    求項6のコンピュータシステム。 8、上記ストア手段が更に上記メモリ書込み処理をロー
    カルバス処理として指定する手段を含む請求項7のコン
    ピュータシステム。 9、上記ストア手段が書込み要求を表わす一定の値をス
    トアする手段を含む請求項2のコンピュータシステム。 10、上記ストア手段が上記ランダムアクセスメモリ内
    にストアさるべきデータ値をストアする手段を含む請求
    項2のコンピュータシステム。 11、更に、上記キャシュ動作可能状態データ値を上記
    ランダムアクセスメモリから読取る手段を備える請求項
    1のコンピュータシステム。 12、上記読取り手段がプログラミングモード要求を表
    わす一定値をストアする手段を含む請求項11のコンピ
    ュータシステム。 13、上記読取り手段が更に読取り要求を表わす一定値
    をストアする手段を含む請求項12のコンピュータシス
    テム。 14、上記読取り手段が更に上記ランダムアクセスメモ
    リデータ出力に接続され、上記ランダムアクセスメモリ
    内に格納され上記プロセッサにより読取られる一定のデ
    ータ値をストアする手段を含む請求項13のコンピュー
    タシステム。 15、上記データ値ストア手段がデータラッチ入力を備
    え、上記読取り手段が更にメモリ書込み処理に呼応する
    手段を含み、上記プログラミングモード要求値と読取り
    要求値が上記データ値ストア手段に対して信号を提供し
    上記データ値ストア手段をして上記ランダムアクセスメ
    モリにより提供されるデータ値をストア可能とする請求
    項14のコンピュータシステム。 16、上記読取り手段が更にメモリ書込み処理後に上記
    プログラミングモード要求値をクリアする手段を含む請
    求項15のコンピュータシステム。 17、上記読取り手段が更に上記メモリ書込み処理をロ
    ーカルバス処理として指定する手段を含む請求項16の
    コンピュータシステム。 18、上記読取り手段が読取り要求を表わす一定値をス
    トアする手段を含む請求項11のコンピュータシステム
    。 19、上記読取り手段が上記プロセッサによって読取ら
    れる上記ランダムアクセスメモリのデータ値をストアす
    る手段を含む請求項11のコンピュータシステム。 20、更に、上記ランダムアクセスメモリ内に上記キャ
    シュ動作可能状態データ値をストアする手段を備える請
    求項11のコンピュータシステム。 21、キャシュ動作不能なアドレス入力を有するキャシ
    ュメモリコントローラと、出力が上記キャシュメモリコ
    ントローラのキャシュ動作不能アドレス入力に接続され
    たランダムアクセスメモリを備えるコンピュータシステ
    ム内にキャシュ動作可能状態データ値をストアする方法
    において、 プログラミングモード値をストアし、 書込み要求値をストアし、 ランダムアクセスメモリ内にストアさるべきデータ値を
    ストアし、 データ値が関係するメモリアドレスブロックに対してメ
    モリ書込み処理を実行する、段階よりなる前記方法。 22、更に、上記メモリ書込み処理に先立って上記プロ
    グラミングモードを、書込み要求とデータ値を読取る段
    階より成る請求項21の方法。 23、キャシュ動作不能アドレス入力を有するキャシュ
    メモリコントローラと、入力が上記キャシュメモリコン
    トローラのキャシュ動作不能アドレス入力に接続される
    ランダムアクセスメモリとを備えるコンピュータシステ
    ム内にキャシュ動作可能状態データ値を読取る方法にお
    いて、プログラミングモード値をストアし、 読取り要求値をストアし、 データ値が関係するメモリアドレスブロックに対してメ
    モリ書込み処理を実行し、 上記メモリ書込み処理中にランダムアクセスメモリによ
    り提供されるデータ値を読取る、段階より成る前記方法
    。 24、更に、上記メモリ書込み処理に先立って上記プロ
    グラミングモードと読取り要求値を読取る段階を備える
    請求項23の方法。 25、情報を要求もしくはストアする複数のアドレスラ
    インと情報を転送する複数のデータラインとを備えるバ
    スと、 アドレス入力が上記アドレスラインに接続されデータポ
    ートが上記データラインに接続されるメモリと、 上記アドレスラインに接続されメモリ特性値にアドレッ
    シングするアドレス入力を備えるメモリ特性値をストア
    するランダムアクセスメモリと、 上記ランダムアクセスメモリのデータ入力に接続され上
    記特性値を解釈して同解釈に基づき適当な処理を実行す
    る手段と、を備えるコンピュータシステム。 26、更に、上記ランダムアクセスメモリ内に上記デー
    タ値をストアする手段を備える請求項25のコンピュー
    タシステム。 27、上記ストア手段がプログラミングモード要求を表
    わす一定値をストアする手段を含む請求項26のコンピ
    ュータシステム。 28、上記ストア手段が更に書込み要求を表わす一定値
    をストアする手段を含む請求項27のコンピュータシス
    テム。 29、上記ストア手段が更に上記ランダムアクセスメモ
    リ内にストアさるべきデータ値をストアする手段を含む
    請求項28のコンピュータシステム。 30、上記ランダムアクセスメモリがライトイネーブル
    入力とデータ入力を備え、上記ストア手段が更にメモリ
    書込み処理に呼応する手段を備え、上記プログラミング
    モード要求値と書込み要求値が上記ストアデータ値を上
    記ランダムアクセスメモリデータ入力に書込み可能とし
    、 上記ランダムアクセスメモリライトイネーブル入力に対
    して一定値を提供し上記ランダムアクセスメモリをして
    上記ストアデータ値をストア可能とする請求項29のコ
    ンピュータシステム。 31、上記ストア手段が更に、メモリ書込み処理後に上
    記プログラミングモード要求値をクリアする手段を含む
    請求項30のコンピュータシステム。 32、上記ストア手段が更に、上記メモリ書込み処理を
    ローカルバス処理として指定する手段を含む請求項1の
    コンピュータシステム。 33、更に、上記特性データ値を上記ランダムアクセス
    メモリから読取る手段を備える請求項25のコンピュー
    タシステム。 34、上記読取り手段がプログラミングモード要求を表
    わす一定値をストアする手段を含む請求項33のコンピ
    ュータシステム。 35、上記読取り手段が更に読取り要求を表わす一定値
    をストアする手段を含む請求項34のコンピュータシス
    テム。 36、上記読取り手段が更に上記ランダムアクセスメモ
    リデータ出力に接続され、上記バス上で読取られる上記
    ランダムアクセスメモリ内に格納される一定データをス
    トアする手段を含む請求項35のコンピュータシステム
    。 37、上記データ値ストア手段がデータラッチ入力を含
    み、上記読取り手段が更にメモリ書込み処理に呼応する
    手段を含み、上記プログラミングモード要求値と読取り
    要求値が上記データ値ストア手段に対して一定信号を提
    供し上記データ値ストア手段をして上記ランダムアクセ
    スメモリにより提供されるデータ値をストア可能とする
    請求項36のコンピュータシステム。 38、上記読取り手段が更にメモリ書込み処理後に上記
    プログラミングモード要求値をクリアする手段を含む請
    求項37のコンピュータシステム。 39、上記読取り手段が更に上記メモリ書込み処理をロ
    ーカルバス処理として指定する手段を含む請求項38の
    コンピュータシステム。 40、更に、上記ランダムアクセスメモリ内に上記退避
    可能状態データ値をストアする手段を備える請求項25
    のコンピュータシステム。
JP2128972A 1989-05-19 1990-05-18 キャシュ動作不能アドレスランダムアクセスメモリ Pending JPH0395650A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US354513 1989-05-19
US07/354,513 US5210847A (en) 1989-05-19 1989-05-19 Noncacheable address random access memory

Publications (1)

Publication Number Publication Date
JPH0395650A true JPH0395650A (ja) 1991-04-22

Family

ID=23393673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2128972A Pending JPH0395650A (ja) 1989-05-19 1990-05-18 キャシュ動作不能アドレスランダムアクセスメモリ

Country Status (6)

Country Link
US (1) US5210847A (ja)
EP (1) EP0398189B1 (ja)
JP (1) JPH0395650A (ja)
KR (1) KR900018820A (ja)
CA (1) CA2016544A1 (ja)
DE (1) DE69030022D1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6009495A (en) * 1989-12-29 1999-12-28 Packard Bell Nec Protected address range in an electrically erasable programmable read only memory
EP0476962B1 (en) * 1990-09-18 1998-08-12 Fujitsu Limited System for configuring a shared storage
US5625793A (en) * 1991-04-15 1997-04-29 International Business Machines Corporation Automatic cache bypass for instructions exhibiting poor cache hit ratio
EP0525308A1 (en) * 1991-07-31 1993-02-03 International Business Machines Corporation Memory map for processor cache macro
US5319767A (en) * 1992-06-29 1994-06-07 The United States Of America As Represented By The Secretary Of The Navy Slave controller for effecting a block transfer of sixteen bit words between a memory and a data transfer bus
US5678025A (en) * 1992-12-30 1997-10-14 Intel Corporation Cache coherency maintenance of non-cache supporting buses
US5572700A (en) * 1993-04-30 1996-11-05 Intel Corporation Cache access controller and method for permitting caching of information in selected cache lines
US5893154A (en) * 1993-07-06 1999-04-06 Intel Corporation CPU write-back cache coherency mechanism that transeers data from a cache memory to a main memory before access of the main memory by an alternate bus master
US5551006A (en) * 1993-09-30 1996-08-27 Intel Corporation Low cost writethrough cache coherency apparatus and method for computer systems without a cache supporting bus
US5890216A (en) * 1995-04-21 1999-03-30 International Business Machines Corporation Apparatus and method for decreasing the access time to non-cacheable address space in a computer system
US6044441A (en) * 1995-09-29 2000-03-28 Intel Corporation Method and apparatus for encoding valid and invalid states in a cache with an invalid pattern
US5951657A (en) * 1996-06-19 1999-09-14 Wisconsin Alumni Research Foundation Cacheable interface control registers for high speed data transfer
US6021470A (en) * 1997-03-17 2000-02-01 Oracle Corporation Method and apparatus for selective data caching implemented with noncacheable and cacheable data for improved cache performance in a computer networking system
US6629187B1 (en) 2000-02-18 2003-09-30 Texas Instruments Incorporated Cache memory controlled by system address properties
US6564299B1 (en) * 2001-07-30 2003-05-13 Lsi Logic Corporation Method and apparatus for defining cacheable address ranges
US20090089515A1 (en) * 2007-10-02 2009-04-02 Qualcomm Incorporated Memory Controller for Performing Memory Block Initialization and Copy

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4665506A (en) * 1983-01-03 1987-05-12 Texas Instruments Incorporated Memory system with write protection
US4622631B1 (en) * 1983-12-30 1996-04-09 Recognition Int Inc Data processing system having a data coherence solution
US4669043A (en) * 1984-02-17 1987-05-26 Signetics Corporation Memory access controller
US4899275A (en) * 1985-02-22 1990-02-06 Intergraph Corporation Cache-MMU system
IT1183808B (it) * 1985-04-30 1987-10-22 Olivetti & Co Spa Circuito elettronico per collegare un microprocessore ad una memoria ad elevata capacita
US4831581A (en) * 1987-02-24 1989-05-16 Digital Equipment Corporation Central processor unit for digital data processing system including cache management mechanism
US5091850A (en) * 1987-09-28 1992-02-25 Compaq Computer Corporation System for fast selection of non-cacheable address ranges using programmed array logic
DE3852263T2 (de) * 1987-09-28 1995-07-20 Compaq Computer Corp System zur schnellen Auswahl von nicht-cachespeicherbaren Adressenbereichen mittels einer programmierbaren Logikmatrix.
US5056015A (en) * 1988-03-23 1991-10-08 Du Pont Pixel Systems Limited Architectures for serial or parallel loading of writable control store
US4992930A (en) * 1988-05-09 1991-02-12 Bull Hn Information Systems Inc. Synchronous cache memory system incorporating tie-breaker apparatus for maintaining cache coherency using a duplicate directory
US5045998A (en) * 1988-05-26 1991-09-03 International Business Machines Corporation Method and apparatus for selectively posting write cycles using the 82385 cache controller

Also Published As

Publication number Publication date
DE69030022D1 (de) 1997-04-10
US5210847A (en) 1993-05-11
EP0398189A3 (en) 1991-10-23
EP0398189A2 (en) 1990-11-22
KR900018820A (ko) 1990-12-22
CA2016544A1 (en) 1990-11-19
EP0398189B1 (en) 1997-03-05

Similar Documents

Publication Publication Date Title
US5276833A (en) Data cache management system with test mode using index registers and CAS disable and posted write disable
US5301278A (en) Flexible dynamic memory controller
JP2745949B2 (ja) オペランド情報の静的および動的マスキングを同時かつ独立して行うデータ・プロセッサ
US6625699B2 (en) Multi-port memory device with multiple modes of operation and improved expansion characteristics
JPH0395650A (ja) キャシュ動作不能アドレスランダムアクセスメモリ
US20070234021A1 (en) Inter-port communication in a multi-port memory device
JPH09219094A (ja) メモリ、メモリサブシステム、メモリ装置およびメモリシステムアドレス方法
JPH048874B2 (ja)
JPH04229329A (ja) パーソナルコンピュータ装置
JPH0420492B2 (ja)
JPH0212541A (ja) コンピユーテイング・システム及びその動作方法
JPH1074387A (ja) メモリ、メモリシステムおよびメモリ装置マッピング方法
US6336158B1 (en) Memory based I/O decode arrangement, and system and method using the same
US5553244A (en) Reflexively sizing memory bus interface
US5553270A (en) Apparatus for providing improved memory access in page mode access systems with pipelined cache access and main memory address replay
US5751998A (en) Memory accessing system with portions of memory being selectively write protectable and relocatable based on predefined register bits and memory selection RAM outputs
CN112100098B (zh) Ddr控制系统及ddr存储系统
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
JP3202696B2 (ja) 信号処理装置
US6425020B1 (en) Systems and methods for passively transferring data across a selected single bus line independent of a control circuitry
US6560698B1 (en) Register change summary resource
JPS6346466B2 (ja)
US5249277A (en) Optimized performance memory method and system
JP3343556B2 (ja) 記憶システム
JPH08255034A (ja) 低消費電力型データ処理装置