JP2619859B2 - 自動更新する単純化キャッシュ - Google Patents
自動更新する単純化キャッシュInfo
- Publication number
- JP2619859B2 JP2619859B2 JP61037181A JP3718186A JP2619859B2 JP 2619859 B2 JP2619859 B2 JP 2619859B2 JP 61037181 A JP61037181 A JP 61037181A JP 3718186 A JP3718186 A JP 3718186A JP 2619859 B2 JP2619859 B2 JP 2619859B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- address
- cache
- location
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
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)
Description
【発明の詳細な説明】 発明の背景 (1)発明の分野 本発明は、デジタルコンピユータシステムに用いられ
るメモリシステムに関し、より詳細には、高速データキ
ヤツシユを含むメモリシステムに関する。
るメモリシステムに関し、より詳細には、高速データキ
ヤツシユを含むメモリシステムに関する。
(2)従来技術の説明(第1図) CPUが段々と高速度になつているため、コンピユータ
システムの性能は、データをメモリから取り出したりメ
モリに書き込んだりするメモリオペレーシヨンを実行す
るのに要する時間の長さによつてしばしば制限されてい
る。メモリオペレーシヨンの速度を上げるために、先行
技術は階層メモリを採用している。階層の頂部には少量
の高速で高価なメモリが置かれており、底部には大量の
低速で安価なメモリが置かれている。例えば、仮想メモ
リコンピユータシステムは3つのレベルのメモリを有し
得る。即ち、CPUによつて現在参照されているデータの
コピーを含む高速キヤツシユと、キヤツシユにおけるデ
ータのコピーを含み且つ更に現在参照されているデータ
を含む位置に近い記憶位置におけるデータのコピーを含
む主メモリと、CPUに現在得られるデータの全てを含む
1つ又はそれ以上のデイスクドライブである。プログラ
ムがデータを参照する時、コンピユータシステムは一般
的に、デイスクドライブから主メモリへの参照データ及
び主メモリからキヤツシユへの個別データアイテムを含
むページをコピーする。プログラムを実行するのに要す
るデータの大部分が一旦キヤツシユの中に入力される
と、CPUがデータを処理する速度を決定するのは、デイ
スク又は主メモリからデータを取り出すのに要する時間
でなく、キヤツシユからデータを取り出すのに要する時
間となる。勿論、メモリオペレーシヨンがキヤツシユに
おけるデータを変更する場合、コンピユータシステム
は、主メモリ及びデイスク上のキヤツシユの内容をコピ
ーしたデータがこれに対応して変更されるように保証し
なければならない。同様にして、システムの幾つかの他
の部分、例えば、I/Oデバイスによつて実行されたメモ
リオペレーシヨンがキヤツシユの中に入れられているメ
モリの一部の内容を変更する場合、キヤツシユにおける
コピーもまた変更されなければならない。
システムの性能は、データをメモリから取り出したりメ
モリに書き込んだりするメモリオペレーシヨンを実行す
るのに要する時間の長さによつてしばしば制限されてい
る。メモリオペレーシヨンの速度を上げるために、先行
技術は階層メモリを採用している。階層の頂部には少量
の高速で高価なメモリが置かれており、底部には大量の
低速で安価なメモリが置かれている。例えば、仮想メモ
リコンピユータシステムは3つのレベルのメモリを有し
得る。即ち、CPUによつて現在参照されているデータの
コピーを含む高速キヤツシユと、キヤツシユにおけるデ
ータのコピーを含み且つ更に現在参照されているデータ
を含む位置に近い記憶位置におけるデータのコピーを含
む主メモリと、CPUに現在得られるデータの全てを含む
1つ又はそれ以上のデイスクドライブである。プログラ
ムがデータを参照する時、コンピユータシステムは一般
的に、デイスクドライブから主メモリへの参照データ及
び主メモリからキヤツシユへの個別データアイテムを含
むページをコピーする。プログラムを実行するのに要す
るデータの大部分が一旦キヤツシユの中に入力される
と、CPUがデータを処理する速度を決定するのは、デイ
スク又は主メモリからデータを取り出すのに要する時間
でなく、キヤツシユからデータを取り出すのに要する時
間となる。勿論、メモリオペレーシヨンがキヤツシユに
おけるデータを変更する場合、コンピユータシステム
は、主メモリ及びデイスク上のキヤツシユの内容をコピ
ーしたデータがこれに対応して変更されるように保証し
なければならない。同様にして、システムの幾つかの他
の部分、例えば、I/Oデバイスによつて実行されたメモ
リオペレーシヨンがキヤツシユの中に入れられているメ
モリの一部の内容を変更する場合、キヤツシユにおける
コピーもまた変更されなければならない。
階層メモリシステムの上記の概説から判るように、キ
ヤツシユの設計における主な問題は、キヤツシユと階層
の他のレベルにおけるデータの内容の一致を維持するこ
とである。第1図は、先行技術が一致の問題を解決する
時の方法を示している。第1図は、米国特許第4,445,17
7号に記載された形式のキヤツシユを含むデジタルコン
ピユータシステムのブロツク図である。第1図のデジタ
ルデータ処理システムは、CPU101、キヤツシユ103及び
主メモリ117を含んでいる。第1図におけるCPU101、キ
ヤツシユ103とメモリ117との接続から判るように、CPU1
01とメモリ117との間のデータの全ての転送は、キヤツ
シユ103を経由して行なわれる。CPU101がデータを読み
出し且つデータのコピーがキヤツシユ103の中に存在し
ない場合、キヤツシユ103は先ず、メモリ117からデータ
を得て、次にそれをCPU101に供給する。同様にして、CP
U101がデータを書き込む場合、CPUは、このデータをキ
ヤツシユ103に書き込み、キヤツシユ103は、メモリ117
におけるデータを更新する。
ヤツシユの設計における主な問題は、キヤツシユと階層
の他のレベルにおけるデータの内容の一致を維持するこ
とである。第1図は、先行技術が一致の問題を解決する
時の方法を示している。第1図は、米国特許第4,445,17
7号に記載された形式のキヤツシユを含むデジタルコン
ピユータシステムのブロツク図である。第1図のデジタ
ルデータ処理システムは、CPU101、キヤツシユ103及び
主メモリ117を含んでいる。第1図におけるCPU101、キ
ヤツシユ103とメモリ117との接続から判るように、CPU1
01とメモリ117との間のデータの全ての転送は、キヤツ
シユ103を経由して行なわれる。CPU101がデータを読み
出し且つデータのコピーがキヤツシユ103の中に存在し
ない場合、キヤツシユ103は先ず、メモリ117からデータ
を得て、次にそれをCPU101に供給する。同様にして、CP
U101がデータを書き込む場合、CPUは、このデータをキ
ヤツシユ103に書き込み、キヤツシユ103は、メモリ117
におけるデータを更新する。
キヤツシユ103の説明に移る。キヤツシユ103は、2つ
の主要な構成要素、即ち、記憶装置107及び制御105から
なつている。記憶装置107は、キヤツシユに記憶された
コピーと、キヤツシユのオペレーシヨンに要する情報
と、を含んでいる。記憶装置103のコンテンツ(conten
t)は、一連のレジスタ108として構成されている。与え
られた時点において、各レジスタ108は、メモリ117にお
ける1つのアドレスに対応し、メモリ117におけるその
アドレスにおけるデータのコピーを含み得る。異なつた
時点において、レジスタ108は、メモリ117における異な
つたアドレスに対応し得る。各レジスタ108は、以下の
ものを含んでいる。即ち、それに含まれるデータのコピ
ーが妥当であるか否かを示す妥当性ビツトv109と、それ
が現在対応するメモリアドレスにレジスタ108を関係付
ける役割を果たすタグ111と、妥当である時に、メモリ1
17において対応するアドレスのデータのコピーを含むデ
ータ113と、それがメモリ117に書き戻されたためにデー
タ113を変更しているか否かを示すダーテイビツト(dir
ty bit)d115を含む。
の主要な構成要素、即ち、記憶装置107及び制御105から
なつている。記憶装置107は、キヤツシユに記憶された
コピーと、キヤツシユのオペレーシヨンに要する情報
と、を含んでいる。記憶装置103のコンテンツ(conten
t)は、一連のレジスタ108として構成されている。与え
られた時点において、各レジスタ108は、メモリ117にお
ける1つのアドレスに対応し、メモリ117におけるその
アドレスにおけるデータのコピーを含み得る。異なつた
時点において、レジスタ108は、メモリ117における異な
つたアドレスに対応し得る。各レジスタ108は、以下の
ものを含んでいる。即ち、それに含まれるデータのコピ
ーが妥当であるか否かを示す妥当性ビツトv109と、それ
が現在対応するメモリアドレスにレジスタ108を関係付
ける役割を果たすタグ111と、妥当である時に、メモリ1
17において対応するアドレスのデータのコピーを含むデ
ータ113と、それがメモリ117に書き戻されたためにデー
タ113を変更しているか否かを示すダーテイビツト(dir
ty bit)d115を含む。
制御装置105は、v109、タグ111及びd115の内容と、ア
ドレス及びCPU及びI/Oデバイスからの制御信号と、に応
答して、キヤツシユのオペレーシヨンを制御し且つ更
に、CPU101、キヤツシユ103及びメモリ117のオペレーシ
ヨンを同期するそれ自身の制御信号を発生する。CPU101
が、メモリオペレーシヨンを実行する時、作用を受けて
いるデータのアドレス及びオペレーシヨンの種類を示す
制御信号は制御装置105に行く。制御装置105は、アドレ
スの一部を用いてレジスタ108を選択する。このレジス
タ108におけるタグ111がアドレスの残りと同じ値を有す
る場合、レジスタ108は、アドレスによつて指定された
メモリ117における位置に対応する。
ドレス及びCPU及びI/Oデバイスからの制御信号と、に応
答して、キヤツシユのオペレーシヨンを制御し且つ更
に、CPU101、キヤツシユ103及びメモリ117のオペレーシ
ヨンを同期するそれ自身の制御信号を発生する。CPU101
が、メモリオペレーシヨンを実行する時、作用を受けて
いるデータのアドレス及びオペレーシヨンの種類を示す
制御信号は制御装置105に行く。制御装置105は、アドレ
スの一部を用いてレジスタ108を選択する。このレジス
タ108におけるタグ111がアドレスの残りと同じ値を有す
る場合、レジスタ108は、アドレスによつて指定された
メモリ117における位置に対応する。
次に何が生じるかは制御信号によつて示されるオペレ
ーシヨンの種類に依存する。オペレーシヨンが読出しオ
ペレーシヨンであり且つレジスタ108におけるv109が上
記レジスタがアドレスによつて示されたメモリ117にお
ける位置のデータの妥当コピーを含むことを示す場合、
データ113の内容は、CPU101への出力である。オペレー
シヨンが書込みオペレーシヨンである場合、データは、
CPU101からデータ113に書き込まれ、ダーテイビツト115
は、データ113が変化したことを示すためにセツトされ
る。この状態において、制御装置105は、データ113の値
をアドレスによつて指定されたメモリ117における位置
に書き戻し且つダーテイビツト115をリセツトしなけれ
ばならない。
ーシヨンの種類に依存する。オペレーシヨンが読出しオ
ペレーシヨンであり且つレジスタ108におけるv109が上
記レジスタがアドレスによつて示されたメモリ117にお
ける位置のデータの妥当コピーを含むことを示す場合、
データ113の内容は、CPU101への出力である。オペレー
シヨンが書込みオペレーシヨンである場合、データは、
CPU101からデータ113に書き込まれ、ダーテイビツト115
は、データ113が変化したことを示すためにセツトされ
る。この状態において、制御装置105は、データ113の値
をアドレスによつて指定されたメモリ117における位置
に書き戻し且つダーテイビツト115をリセツトしなけれ
ばならない。
CPUからのアドレスによつて指定されたレジスタ108に
おけるタグ111がそのアドレスにおけるビツトの残りと
同じ値を有していない場合、あるいはvビツト109がレ
ジスタ108におけるデータ113が妥当でないことを示す場
合、キヤツシユは、アドレスによつて指定された位置に
おけるデータのコピーを含まず且つキヤツシユミス(ca
che miss)が生じる。このミスが書込みオペレーシヨン
の際に生じたものである場合、キヤツシユ103は、書き
込まれているデータをアドレスによつて指定されたレジ
スタ108のデータ113の中に置き、アドレスの残りをこの
レジスタ108のタグ111の中に置き、妥当性を示すように
v109をセツトし、且つデータ113の値が変化したことを
示すようにd115をセツトすることによりこのアドレスに
対するエントリを構成する。制御105は次に、上記に説
明したように、データ113の内容をメモリ117に書き込
む。
おけるタグ111がそのアドレスにおけるビツトの残りと
同じ値を有していない場合、あるいはvビツト109がレ
ジスタ108におけるデータ113が妥当でないことを示す場
合、キヤツシユは、アドレスによつて指定された位置に
おけるデータのコピーを含まず且つキヤツシユミス(ca
che miss)が生じる。このミスが書込みオペレーシヨン
の際に生じたものである場合、キヤツシユ103は、書き
込まれているデータをアドレスによつて指定されたレジ
スタ108のデータ113の中に置き、アドレスの残りをこの
レジスタ108のタグ111の中に置き、妥当性を示すように
v109をセツトし、且つデータ113の値が変化したことを
示すようにd115をセツトすることによりこのアドレスに
対するエントリを構成する。制御105は次に、上記に説
明したように、データ113の内容をメモリ117に書き込
む。
このミスが読出しオペレーシヨンの際に生じたもので
ある場合、制御装置105は、妥当キヤツシユエントリが
存在する迄CPU101を待たせる制御信号をCPU101に対して
発生することによりこのミスに応答する。次に、制御装
置105は、このアドレス及び読出しオペレーシヨンを示
す制御信号をメモリ117に供給し、メモリ117、アドレス
によつて指定された位置におけるデータに応答する。制
御装置105は次に、データに対する適当なレジスタ108を
突き止め、このデータをデータ113にロードし、アドレ
スの残りをタグ111にロードし、妥当エントリを示すよ
うにv109をセツトし且つdビツト115をリセツトする。
この際、CPU101は、メモリの参照を再び試みる。データ
は現時点ではキヤツシユの中に含まれているため、この
状態が継続して、データは上記のように出力される。
ある場合、制御装置105は、妥当キヤツシユエントリが
存在する迄CPU101を待たせる制御信号をCPU101に対して
発生することによりこのミスに応答する。次に、制御装
置105は、このアドレス及び読出しオペレーシヨンを示
す制御信号をメモリ117に供給し、メモリ117、アドレス
によつて指定された位置におけるデータに応答する。制
御装置105は次に、データに対する適当なレジスタ108を
突き止め、このデータをデータ113にロードし、アドレ
スの残りをタグ111にロードし、妥当エントリを示すよ
うにv109をセツトし且つdビツト115をリセツトする。
この際、CPU101は、メモリの参照を再び試みる。データ
は現時点ではキヤツシユの中に含まれているため、この
状態が継続して、データは上記のように出力される。
キヤツシユ103を含むコンピユータシステムがI/Oデバ
イスにCPU101をバイパスせしめ且つデータをメモリ117
に直接書き込ませる時に別の一致性の問題が生じる。こ
の場合、キヤツシユ103の中に入れられたコピーが存在
する、メモリ117におけるデータを、I/O書込みオペレー
シヨンが変更する時、キヤツシユ103に何らかの変化を
起こさなければならない。第1図のキヤツシユ103の場
合、制御装置105は、I/O書込みオペレーシヨンが存在す
る毎にアドレスを受け取り、上で説明したようにヒツト
がある場合、制御装置105はデータ113の内容が妥当でな
いことを示すためにアドレス指定されたレジスタ108にv
109をセツトする。上で説明したように、I/Oからデータ
を受け取つたメモリ位置に対する次の参照の際、ミスが
生じ、データの適当な値はキヤツシユ103に書き込まれ
る。
イスにCPU101をバイパスせしめ且つデータをメモリ117
に直接書き込ませる時に別の一致性の問題が生じる。こ
の場合、キヤツシユ103の中に入れられたコピーが存在
する、メモリ117におけるデータを、I/O書込みオペレー
シヨンが変更する時、キヤツシユ103に何らかの変化を
起こさなければならない。第1図のキヤツシユ103の場
合、制御装置105は、I/O書込みオペレーシヨンが存在す
る毎にアドレスを受け取り、上で説明したようにヒツト
がある場合、制御装置105はデータ113の内容が妥当でな
いことを示すためにアドレス指定されたレジスタ108にv
109をセツトする。上で説明したように、I/Oからデータ
を受け取つたメモリ位置に対する次の参照の際、ミスが
生じ、データの適当な値はキヤツシユ103に書き込まれ
る。
先行技術において、データキヤツシユは、かなり大型
で高価なデジタルコンピユータシステムの特徴であつ
た。この1つの理由は、高速メモリの高いコストであつ
た。別の理由は、斯かるキヤツシユに要する複雑な制御
ロジツクの高いコストであつた。技術的な進歩によつて
高速メモリのコストは低減したが、制御ロジツクの諸成
分のコストには相当する減少が見られていない。従つ
て、制御ロジツクの単純化はキヤツシユの設計における
主要な問題となつている。この問題に対する1つの解決
法が本発明によつて提供されている。
で高価なデジタルコンピユータシステムの特徴であつ
た。この1つの理由は、高速メモリの高いコストであつ
た。別の理由は、斯かるキヤツシユに要する複雑な制御
ロジツクの高いコストであつた。技術的な進歩によつて
高速メモリのコストは低減したが、制御ロジツクの諸成
分のコストには相当する減少が見られていない。従つ
て、制御ロジツクの単純化はキヤツシユの設計における
主要な問題となつている。この問題に対する1つの解決
法が本発明によつて提供されている。
発明の概要 本発明は、メモリシステムに関し、より詳細には、デ
ータキヤツシユを用いるメモリシステムに関する。本発
明に係るメモリシステムの場合、メモリ及びキヤツシユ
は両方共バス等のデータ転送手段に接続されている。キ
ヤツシユにおける位置は、メモリにおける特定の位置に
対応する。メモリにおける位置に対応するキヤツシユに
おける各位置は、メモリにおけるその位置に現在記憶さ
れている値のコピーを含んでいる。メモリ及びキヤツシ
ユは両方共、メモリ書込み信号、アドレス及びデータ転
送手段のデータに応答する。メモリは、データ転送手段
のデータをアドレスによつて指定されたメモリ位置に書
き込み、キヤツシユは、メモリにおける記憶位置が対応
するキヤツシユ上の位置を有する時に、データをそのメ
モリ上の位置に対応するキヤツシユ上の位置に書き込
む。この手段によつて、データがメモリに書き込まれる
時キヤツシユは必ず自動的に更新される。
ータキヤツシユを用いるメモリシステムに関する。本発
明に係るメモリシステムの場合、メモリ及びキヤツシユ
は両方共バス等のデータ転送手段に接続されている。キ
ヤツシユにおける位置は、メモリにおける特定の位置に
対応する。メモリにおける位置に対応するキヤツシユに
おける各位置は、メモリにおけるその位置に現在記憶さ
れている値のコピーを含んでいる。メモリ及びキヤツシ
ユは両方共、メモリ書込み信号、アドレス及びデータ転
送手段のデータに応答する。メモリは、データ転送手段
のデータをアドレスによつて指定されたメモリ位置に書
き込み、キヤツシユは、メモリにおける記憶位置が対応
するキヤツシユ上の位置を有する時に、データをそのメ
モリ上の位置に対応するキヤツシユ上の位置に書き込
む。この手段によつて、データがメモリに書き込まれる
時キヤツシユは必ず自動的に更新される。
本発明の別の特徴は、「ダーテイ」あるいは「妥当」
ビツトの使用を不要にする単純化された構造、CPUから
だけでなくI/Oからのメモリへの書込みの際のキヤツシ
ユの自動的更新、及びI/Oがメモリ書込みオペレーシヨ
ンを実行している間にCPUにキヤツシユを読み出さしめ
るロジツクを含んでいる。
ビツトの使用を不要にする単純化された構造、CPUから
だけでなくI/Oからのメモリへの書込みの際のキヤツシ
ユの自動的更新、及びI/Oがメモリ書込みオペレーシヨ
ンを実行している間にCPUにキヤツシユを読み出さしめ
るロジツクを含んでいる。
従つて、本発明の目的は、改良されたメモリシステム
を提供することにある。
を提供することにある。
本発明の別の目的は、データがメモリに書き込まれる
時は必ず自動的に更新されるキヤツシユを提供すること
にある。
時は必ず自動的に更新されるキヤツシユを提供すること
にある。
本発明の別の目的は、先行技術のキヤツシユよりも単
純なキヤツシユを提供することにある。
純なキヤツシユを提供することにある。
本発明の別の目的は、CPUからメモリへの書込みの際
だけでなくI/Oからメモリへの書込みの際にも自動的に
更新されるキヤツシユを提供することにある。
だけでなくI/Oからメモリへの書込みの際にも自動的に
更新されるキヤツシユを提供することにある。
本発明の更に別の目的は、メモリがI/Oからデータを
受け取る間にCPUが読出しオペレーシヨンを実行し得る
キヤツシユを提供することにある。
受け取る間にCPUが読出しオペレーシヨンを実行し得る
キヤツシユを提供することにある。
好適な実施例の説明 (1)概観(第2図) 第2図は、本発明に係るキヤツシユを含むデジタルコ
ンピユータシステムのブロツク図である。第2図は、3
つの主要な構成要素、即ち、CPU201、キヤツシユ203及
びメモリ215を有している。CPU201、キヤツシユ203、及
びメモリ215は、全て、ADDRバス225に接続されており、
このADDRバス225もまたI/Oからアドレス227を受ける。C
PU201は更に、メモリオペレーシヨンを規定するCPUメモ
リオペレーシヨン信号233をキヤツシユ203及びメモリ23
3に与える。CPU201へのデータ転送及びCPU201からのデ
ータ転送、MDOバス221及びMDIバス223によつて達成され
る。CPU201は、MDOバス221を経由してデータを受け且つ
MDI223を経由してデータを出力する。MDI223は更に、I/
Oデバイス217からデータを受け且つI/Oデバイス217にデ
ータを与え且つMBバス214に接続されている。MBバス214
は、メモリ215に対するデータ入力及び出力である。I/O
デバイス217は更に、メモリ215及びキヤツシユ203にI/O
メモリオペレーシヨン信号235を与える。本発明とは密
接な関係がないバスコンテンシヨン制御ロジツクによつ
て、CPU201、メモリ215、及びI/Oデバイス217の内1つ
だけが与えられた時間においてデータをMDI223の上に置
くことが確実になる。キヤツシユ203は、記憶装置205、
制御装置211及びラツチ装置213を含んでいる。記憶装置
205は、レジスタ208を含んでおり、これらのレジスタ20
8の各々は、タグ209及びデータ207を含んでいる。タグ2
09は、データ207がコピーであるデータのメモリ215にお
ける位置のアドレスの部分である。それ故、タグ209
は、メモリ215におけるどのアドレスが与えられたレジ
スタ208によつて表わされるかを決定する。与えられた
時間において、各レジスタ208は、メモリ215における唯
1つのアドレスに対応するが、与えられたレジスタ208
は、異なつた時間においてはメモリ215における異なつ
たアドレスに対応し得る。データ207は、MDOバス221を
経由した記憶装置205への入力及び記憶装置205からの出
力である。入力はラツチ装置213を経由したMB214からの
入力であり、出力はCPU201への出力である。タグ209は
アドレス225からの入力である。
ンピユータシステムのブロツク図である。第2図は、3
つの主要な構成要素、即ち、CPU201、キヤツシユ203及
びメモリ215を有している。CPU201、キヤツシユ203、及
びメモリ215は、全て、ADDRバス225に接続されており、
このADDRバス225もまたI/Oからアドレス227を受ける。C
PU201は更に、メモリオペレーシヨンを規定するCPUメモ
リオペレーシヨン信号233をキヤツシユ203及びメモリ23
3に与える。CPU201へのデータ転送及びCPU201からのデ
ータ転送、MDOバス221及びMDIバス223によつて達成され
る。CPU201は、MDOバス221を経由してデータを受け且つ
MDI223を経由してデータを出力する。MDI223は更に、I/
Oデバイス217からデータを受け且つI/Oデバイス217にデ
ータを与え且つMBバス214に接続されている。MBバス214
は、メモリ215に対するデータ入力及び出力である。I/O
デバイス217は更に、メモリ215及びキヤツシユ203にI/O
メモリオペレーシヨン信号235を与える。本発明とは密
接な関係がないバスコンテンシヨン制御ロジツクによつ
て、CPU201、メモリ215、及びI/Oデバイス217の内1つ
だけが与えられた時間においてデータをMDI223の上に置
くことが確実になる。キヤツシユ203は、記憶装置205、
制御装置211及びラツチ装置213を含んでいる。記憶装置
205は、レジスタ208を含んでおり、これらのレジスタ20
8の各々は、タグ209及びデータ207を含んでいる。タグ2
09は、データ207がコピーであるデータのメモリ215にお
ける位置のアドレスの部分である。それ故、タグ209
は、メモリ215におけるどのアドレスが与えられたレジ
スタ208によつて表わされるかを決定する。与えられた
時間において、各レジスタ208は、メモリ215における唯
1つのアドレスに対応するが、与えられたレジスタ208
は、異なつた時間においてはメモリ215における異なつ
たアドレスに対応し得る。データ207は、MDOバス221を
経由した記憶装置205への入力及び記憶装置205からの出
力である。入力はラツチ装置213を経由したMB214からの
入力であり、出力はCPU201への出力である。タグ209は
アドレス225からの入力である。
制御装置211は、ADDR225からアドレスを、タグ209か
らタグを、且つCPU201及びI/O217からメモリオペレーシ
ヨン信号233及び235を受ける。そして、制御装置211
は、記憶装置205のオペレーシヨンを制御し且つメモリ2
15にヒツト信号229を且つCPU201に延長(ext)信号231
を出力する。記憶装置205のオペレーシヨンを制御する
と以下のことを伴う。即ち、メモリ読出しオペレーシヨ
ンがCPU201によつて実行されており且つ記憶装置205が
そのアドレスによつて指定されたメモリ位置におけるデ
ータのコピーを含んでいる時に記憶装置205はコピーを
出力し、且つコピーを含んでいる位置に対してデータが
CPU201又はI/O217によつて書き込まれている時あるいは
CPU201が読出しオペレーシヨンを実行し且つ記憶装置20
5の中にアドレスされたデータのコピーが無い時に記憶
装置205はそのデータのコピーを記憶する。後者の場
合、制御装置211はまた、タグ209に読み出されているデ
ータのアドレスのタグ部分をロードする。ヒツト信号22
9及びext信号231は、メモリ読出しオペレーシヨンの際
メモリ215及びCPU201のオペレーシヨンを調整する。ヒ
ツト信号229は、メモリ215のオペレーシヨンを抑止す
る。即ち、信号229は、アドレスされたデータのコピー
が記憶装置205に含まれている時にアクテイブ(activ
e)になり、ext信号231は、記憶装置205の中にアドレス
されたデータのコピーが無い時にメモリ215からデータ
が得られるまでCPU201を待たせる。
らタグを、且つCPU201及びI/O217からメモリオペレーシ
ヨン信号233及び235を受ける。そして、制御装置211
は、記憶装置205のオペレーシヨンを制御し且つメモリ2
15にヒツト信号229を且つCPU201に延長(ext)信号231
を出力する。記憶装置205のオペレーシヨンを制御する
と以下のことを伴う。即ち、メモリ読出しオペレーシヨ
ンがCPU201によつて実行されており且つ記憶装置205が
そのアドレスによつて指定されたメモリ位置におけるデ
ータのコピーを含んでいる時に記憶装置205はコピーを
出力し、且つコピーを含んでいる位置に対してデータが
CPU201又はI/O217によつて書き込まれている時あるいは
CPU201が読出しオペレーシヨンを実行し且つ記憶装置20
5の中にアドレスされたデータのコピーが無い時に記憶
装置205はそのデータのコピーを記憶する。後者の場
合、制御装置211はまた、タグ209に読み出されているデ
ータのアドレスのタグ部分をロードする。ヒツト信号22
9及びext信号231は、メモリ読出しオペレーシヨンの際
メモリ215及びCPU201のオペレーシヨンを調整する。ヒ
ツト信号229は、メモリ215のオペレーシヨンを抑止す
る。即ち、信号229は、アドレスされたデータのコピー
が記憶装置205に含まれている時にアクテイブ(activ
e)になり、ext信号231は、記憶装置205の中にアドレス
されたデータのコピーが無い時にメモリ215からデータ
が得られるまでCPU201を待たせる。
ラツチ装置213はMDO221及びMB214に接続されている。
ラツチ装置213は、MBバス214を介して運ばれる各データ
アイテム、即ち、メモリ215に読み込まれあるいはメモ
リ215から出力される各データアイテムのコピーを保持
する。メモリ読出しオペレーシヨンがCPU201によつて実
行され且つ読み出されているデータのコピーが記憶装置
205の中に存在しない時、メモリ215は、アドレスされた
データをMB214に出力し、ここからラツチ213にラツチさ
れる。ここから、データは記憶装置205及びCPU201に同
時に行く。制御装置211は、I/O217によつて実行された
メモリ読出しオペレーシヨンに応答しない。その結果、
ラツチ装置213にラツチされたデータは、CPU201からの
読出しオペレーシヨンのみに応答して記憶装置205に書
き込まれる。メモリ書込みオペレーシヨンがCPU201ある
いはI/O217によつて実行されると、メモリ215はMB214を
経由して書込まれるデータを受け取り、コピーがラツチ
装置213にラツチされる。書込みオペレーシヨンにおい
て、アドレス指定されているメモリ位置に対応するレジ
スタ208が存在する場合、ラツチ213にラツチされるデー
タはそのレジスタのデータ207にロードされる。
ラツチ装置213は、MBバス214を介して運ばれる各データ
アイテム、即ち、メモリ215に読み込まれあるいはメモ
リ215から出力される各データアイテムのコピーを保持
する。メモリ読出しオペレーシヨンがCPU201によつて実
行され且つ読み出されているデータのコピーが記憶装置
205の中に存在しない時、メモリ215は、アドレスされた
データをMB214に出力し、ここからラツチ213にラツチさ
れる。ここから、データは記憶装置205及びCPU201に同
時に行く。制御装置211は、I/O217によつて実行された
メモリ読出しオペレーシヨンに応答しない。その結果、
ラツチ装置213にラツチされたデータは、CPU201からの
読出しオペレーシヨンのみに応答して記憶装置205に書
き込まれる。メモリ書込みオペレーシヨンがCPU201ある
いはI/O217によつて実行されると、メモリ215はMB214を
経由して書込まれるデータを受け取り、コピーがラツチ
装置213にラツチされる。書込みオペレーシヨンにおい
て、アドレス指定されているメモリ位置に対応するレジ
スタ208が存在する場合、ラツチ213にラツチされるデー
タはそのレジスタのデータ207にロードされる。
キヤツシユ203は以下のように作動する。CPU201から
の読出しオペレーシヨンの際、CPUメモリオペレーシヨ
ン233は、読出しオペレーシヨンを指示し且つADDR225は
読出されているデータのアドレスを運ぶ。制御211は、
そのアドレス及びCPUメモリオペレーシヨン233を受け、
このアドレスと、このアドレスによつて規定されたメモ
リ位置においてデータのコピーを記憶し得るレジスタ20
8に属するタグと、を比較する。一致する場合、制御装
置211は、メモリ215がそのアドレスに応答しないように
抑止するヒツト信号229を出力し、その突合せタグを含
むレジスタ208におけるデータ207は記憶装置205からMDO
221を経由してCPU201に出力される。
の読出しオペレーシヨンの際、CPUメモリオペレーシヨ
ン233は、読出しオペレーシヨンを指示し且つADDR225は
読出されているデータのアドレスを運ぶ。制御211は、
そのアドレス及びCPUメモリオペレーシヨン233を受け、
このアドレスと、このアドレスによつて規定されたメモ
リ位置においてデータのコピーを記憶し得るレジスタ20
8に属するタグと、を比較する。一致する場合、制御装
置211は、メモリ215がそのアドレスに応答しないように
抑止するヒツト信号229を出力し、その突合せタグを含
むレジスタ208におけるデータ207は記憶装置205からMDO
221を経由してCPU201に出力される。
一致しない場合、制御装置211は、ヒツト信号229をメ
モリ215に出力しないが、その代わり、ext信号231をCPU
201に出力する。CPU201は、データが記憶装置205の代わ
りにメモリ215によつて供給される迄MDO221からデータ
を受け取るのを待つことによつてext231に応答する。メ
モリ215はヒツト信号229によつて抑止されていないた
め、アドレスされたデータをMB214に出力することによ
りADDR225のアドレスに応答する。ラツチ装置213は、MB
214に現われるデータをラツチし、ラツチ装置213からMD
O221を経由してCPU201に行く。同時に、制御装置211
は、アドレス指定されたデータのコピーを含むべき記憶
装置205のレジスタ208を突き止め、そのレジスタ208の
タグ209にADDR225のアドレスの一部分をロードし且つデ
ータ207にラツチ装置213に記憶されたデータをロードす
る。斯くして、読出しオペレーシヨンの終りに、CPU201
は、そのデータを受け取り且つこのデータのコピーはキ
ヤツシユ203に記憶された。キヤツシユ203において、こ
のデータは次の読出しオペレーシヨンの際、メモリ215
における同一の位置に得られる。
モリ215に出力しないが、その代わり、ext信号231をCPU
201に出力する。CPU201は、データが記憶装置205の代わ
りにメモリ215によつて供給される迄MDO221からデータ
を受け取るのを待つことによつてext231に応答する。メ
モリ215はヒツト信号229によつて抑止されていないた
め、アドレスされたデータをMB214に出力することによ
りADDR225のアドレスに応答する。ラツチ装置213は、MB
214に現われるデータをラツチし、ラツチ装置213からMD
O221を経由してCPU201に行く。同時に、制御装置211
は、アドレス指定されたデータのコピーを含むべき記憶
装置205のレジスタ208を突き止め、そのレジスタ208の
タグ209にADDR225のアドレスの一部分をロードし且つデ
ータ207にラツチ装置213に記憶されたデータをロードす
る。斯くして、読出しオペレーシヨンの終りに、CPU201
は、そのデータを受け取り且つこのデータのコピーはキ
ヤツシユ203に記憶された。キヤツシユ203において、こ
のデータは次の読出しオペレーシヨンの際、メモリ215
における同一の位置に得られる。
書込みオペレーシヨンの際、データはCPU201あるいは
I/O217の1つから発生し得る。両者の場合、アドレスは
ADDR225に現われ、データはMB214に現われる。ここか
ら、データはラツチ213にラツチされ且つメモリ215に書
き込まれる。読出しオペレーシヨンの場合と同じよう
に、制御装置211は、そのアドレスと、書き込まれてい
る位置におけるデータのコピーを含み得る任意のレジス
タ208のタグ209と、を比較する。斯かるレジスタ208が
ある場合、制御装置211は、ラツチ装置213の内容からそ
のレジスタにおけるデータ207をロードし、これによ
り、データ207は確実に、メモリ215において対応する位
置にデータのコピーを保持する。アドレスのタグ209と
の比較が、レジスタの208のどれも書き込まれている位
置に対応しないことを示す場合、制御装置211は、ラツ
チ装置213からどのレジスタ208にもロードしない。CPU2
01が記憶装置205からデータを読み出すのに必要な時間
より短い時間でレジスタ208への書き込みがされる場
合、メモリ書込みオペレーシヨンは、CPU201がキヤツシ
ユヒツトの結果をもたらすメモリ読出しオペレーシヨン
を実行している間にI/O217によつて実行され得る。
I/O217の1つから発生し得る。両者の場合、アドレスは
ADDR225に現われ、データはMB214に現われる。ここか
ら、データはラツチ213にラツチされ且つメモリ215に書
き込まれる。読出しオペレーシヨンの場合と同じよう
に、制御装置211は、そのアドレスと、書き込まれてい
る位置におけるデータのコピーを含み得る任意のレジス
タ208のタグ209と、を比較する。斯かるレジスタ208が
ある場合、制御装置211は、ラツチ装置213の内容からそ
のレジスタにおけるデータ207をロードし、これによ
り、データ207は確実に、メモリ215において対応する位
置にデータのコピーを保持する。アドレスのタグ209と
の比較が、レジスタの208のどれも書き込まれている位
置に対応しないことを示す場合、制御装置211は、ラツ
チ装置213からどのレジスタ208にもロードしない。CPU2
01が記憶装置205からデータを読み出すのに必要な時間
より短い時間でレジスタ208への書き込みがされる場
合、メモリ書込みオペレーシヨンは、CPU201がキヤツシ
ユヒツトの結果をもたらすメモリ読出しオペレーシヨン
を実行している間にI/O217によつて実行され得る。
第1図と第2図の比較及び上記の説明から判るよう
に、本発明のキヤツシユ203は、従来技術のキヤツシユ
より構造及びオペレーシヨンの点で実質的に単純であ
る。キヤツシユ203、CPU201及びメモリ215は、ADDR225
を共有し、キヤツシユ203及びメモリ215はMB214を共有
する。MB214は、CPU201及びI/O217によつて共有されるM
DI223からデータを受け取る。そしてMB214は、このデー
タを、キヤツシユ203及びCPU201によつて共有されてい
るMDO221に与える。メモリ215に書き込まれるデータ
は、書き込まれているメモリアドレスに対応するレジス
タ208が存在する時はいつでもキヤツシユ203に書き込ま
れるため、記憶装置205におけるD115あるいはv109に対
応する情報を記憶する必要がなく、制御装置211によつ
て実行されるタスクは、従つてより単純となる。更に、
ラツチ装置213によつて以下のことが保証される。即
ち、キヤツシユ203がCPU201によつて読み出されている
データを含まない時、メモリ215からCPU201へ読み出さ
れたデータは、キヤツシユ203にも得られ、CPU201に与
えられている間記憶装置205に記憶することができる。
に、本発明のキヤツシユ203は、従来技術のキヤツシユ
より構造及びオペレーシヨンの点で実質的に単純であ
る。キヤツシユ203、CPU201及びメモリ215は、ADDR225
を共有し、キヤツシユ203及びメモリ215はMB214を共有
する。MB214は、CPU201及びI/O217によつて共有されるM
DI223からデータを受け取る。そしてMB214は、このデー
タを、キヤツシユ203及びCPU201によつて共有されてい
るMDO221に与える。メモリ215に書き込まれるデータ
は、書き込まれているメモリアドレスに対応するレジス
タ208が存在する時はいつでもキヤツシユ203に書き込ま
れるため、記憶装置205におけるD115あるいはv109に対
応する情報を記憶する必要がなく、制御装置211によつ
て実行されるタスクは、従つてより単純となる。更に、
ラツチ装置213によつて以下のことが保証される。即
ち、キヤツシユ203がCPU201によつて読み出されている
データを含まない時、メモリ215からCPU201へ読み出さ
れたデータは、キヤツシユ203にも得られ、CPU201に与
えられている間記憶装置205に記憶することができる。
(2)好適な実施例の詳細な説明(第3図及び第3A図) 第3図及び第3A図は、本発明に係るキヤツシユ211及
びメモリ215の好適な実施例の詳細なブロツク図であ
る。第3図から第3A図に続くバスは、両方の図面におい
て対応する数字が付いている。更に、第3図の破線で示
すアウトライン及び第2図からの数字は、第2図の構成
要素と第3図の構成要素との相関関係を示す。
びメモリ215の好適な実施例の詳細なブロツク図であ
る。第3図から第3A図に続くバスは、両方の図面におい
て対応する数字が付いている。更に、第3図の破線で示
すアウトライン及び第2図からの数字は、第2図の構成
要素と第3図の構成要素との相関関係を示す。
この好適な実施例は、ワングラボラトリーズ社製造の
VSデジタルコンピユータシステムに実現されている。VS
型のデジタルコンピユータシステムは、メモリにおける
8ビツトバイトをアドレス指定するために24ビツトアド
レスを用いている。本実施例のVSシステムにおいて、デ
ータは32ビツトワードでもつてメモリ及びキヤツシユに
記憶され、一方、CPU及びI/Oデバイスをキヤツシユ及び
メモリに接続するデータバスは、16ビツトの幅を有す
る。データは単一バイトあるいは16ビツトハーフワード
としてCPU及びI/Oデバイスから受け取られ且つCPU及びI
/Oデバイスに与えることができる。1つのメモリワード
における左のハーフワードは奇数のハーフワードと呼ば
れ、右のハーフワードは偶数のハーフワードと呼ばれ
る。
VSデジタルコンピユータシステムに実現されている。VS
型のデジタルコンピユータシステムは、メモリにおける
8ビツトバイトをアドレス指定するために24ビツトアド
レスを用いている。本実施例のVSシステムにおいて、デ
ータは32ビツトワードでもつてメモリ及びキヤツシユに
記憶され、一方、CPU及びI/Oデバイスをキヤツシユ及び
メモリに接続するデータバスは、16ビツトの幅を有す
る。データは単一バイトあるいは16ビツトハーフワード
としてCPU及びI/Oデバイスから受け取られ且つCPU及びI
/Oデバイスに与えることができる。1つのメモリワード
における左のハーフワードは奇数のハーフワードと呼ば
れ、右のハーフワードは偶数のハーフワードと呼ばれ
る。
a.記憶装置205 本実施例における記憶装置205の説明から始める。記
憶装置205は、キヤツシユRAM313に実現されている。キ
ヤツシユRAM313は、それぞれが3つのフイールドを含ん
でいる4096個の40ビツトレジスタ314を含んでいる。こ
の3つのフイールドとは、レジスタ314にコピーされた
メモリ215におけるワードのアドレスの最上桁8ビツト
を含む8ビツトタグフイールド315、コピーされたメモ
リーワードの奇数ハーフワードを含む16ビツト奇数フイ
ールド319、及びコピーされたメモリワードの偶数ハー
フワードを含む16ビツト偶数フイールド321である。キ
ヤツシユRAM313は、CAA311に運ばれる12ビツトアドレス
によつてアドレス指定される。即ち、CAA311のアドレス
及びメモリオペレーシヨンがキヤツシユ203を伴う時に
キヤツシユctl343によつて発生されたen信号312に応答
して、キヤツシユRAM313は、アドレスされたレジスタ31
4におけるタグフイールド315の内容をバス338に、奇数
フイールド319の内容をバス323に、且つ偶数フイールド
321の内容をバス325に出力する。
憶装置205は、キヤツシユRAM313に実現されている。キ
ヤツシユRAM313は、それぞれが3つのフイールドを含ん
でいる4096個の40ビツトレジスタ314を含んでいる。こ
の3つのフイールドとは、レジスタ314にコピーされた
メモリ215におけるワードのアドレスの最上桁8ビツト
を含む8ビツトタグフイールド315、コピーされたメモ
リーワードの奇数ハーフワードを含む16ビツト奇数フイ
ールド319、及びコピーされたメモリワードの偶数ハー
フワードを含む16ビツト偶数フイールド321である。キ
ヤツシユRAM313は、CAA311に運ばれる12ビツトアドレス
によつてアドレス指定される。即ち、CAA311のアドレス
及びメモリオペレーシヨンがキヤツシユ203を伴う時に
キヤツシユctl343によつて発生されたen信号312に応答
して、キヤツシユRAM313は、アドレスされたレジスタ31
4におけるタグフイールド315の内容をバス338に、奇数
フイールド319の内容をバス323に、且つ偶数フイールド
321の内容をバス325に出力する。
CAA311のアドレス及びen信号312がキヤツシユ書込み
高(cwh)信号375あるいはキヤツシユ書込み低(cwl)
信号377に、またキヤツシユctl343によつて発生される
と、キヤツシユRAM313は、cwh375あるいはcwl377が応答
されているかに応じて、バス323の値を奇数フイールド3
19にあるいはバス325の値を偶数フイールド321に記憶す
る。斯くして、cwh375及びcwl377は共に、好適な実施例
においてcwr230の機能を果たす。キヤツシユRAM313は、
8168−45型の10個の4K×4NMOSRAM集積回路から構成し得
る。これらの集積回路は、45ナノ秒(ns)のサイクル時
間を有している。
高(cwh)信号375あるいはキヤツシユ書込み低(cwl)
信号377に、またキヤツシユctl343によつて発生される
と、キヤツシユRAM313は、cwh375あるいはcwl377が応答
されているかに応じて、バス323の値を奇数フイールド3
19にあるいはバス325の値を偶数フイールド321に記憶す
る。斯くして、cwh375及びcwl377は共に、好適な実施例
においてcwr230の機能を果たす。キヤツシユRAM313は、
8168−45型の10個の4K×4NMOSRAM集積回路から構成し得
る。これらの集積回路は、45ナノ秒(ns)のサイクル時
間を有している。
b.メモリ215 次にメモリ(Mem)215の説明に続く。本実施例におい
て、mem215は、memRAM365、メモリ制御装置(mem ctl)
345、アドレスマルチプレクサ(mux)363、ラツチ(L
A)349及び351、及びバイトスワツプイング双方向ドラ
イバSW357及びSW359からなる。後により詳細に説明する
ように、ラツチ349及び351並びにドライバ357及び359
は、ハーフワードにおける個別バイトの書込み及び読出
しを可能にする。MemRAM365は、1024Kレジスタからなつ
ており、これらのレジスタの各々は、奇数16ビツトハー
フワード及び偶数16ビツトハーフワードからなる32ビツ
トデータワード並びに12ビツトの誤り訂正コードを含ん
でいる。この誤り訂正コードは、本発明とは密接な関係
がなく、従つてこれ以上述べない。
て、mem215は、memRAM365、メモリ制御装置(mem ctl)
345、アドレスマルチプレクサ(mux)363、ラツチ(L
A)349及び351、及びバイトスワツプイング双方向ドラ
イバSW357及びSW359からなる。後により詳細に説明する
ように、ラツチ349及び351並びにドライバ357及び359
は、ハーフワードにおける個別バイトの書込み及び読出
しを可能にする。MemRAM365は、1024Kレジスタからなつ
ており、これらのレジスタの各々は、奇数16ビツトハー
フワード及び偶数16ビツトハーフワードからなる32ビツ
トデータワード並びに12ビツトの誤り訂正コードを含ん
でいる。この誤り訂正コードは、本発明とは密接な関係
がなく、従つてこれ以上述べない。
これらのデータワードは4対の256Kバンクに構成され
ている。各対の一方のバンクは偶数ハーフワードを含
み、他方のバンクは奇数ハーフワードを含んでいる。こ
の偶数ハーフワードバンクは、バス355からの入力及び
バス355への出力を受ける。奇数ハーフワードバンク
は、バス353からの入力及び353への出力を受ける。アド
レツシングは、1対のバンクを選択するBS信号373、受
け取られるアドレスが列アドレスであることを示すRAS
信号346、及び受け取られるアドレスが行アドレスであ
ることを示すCAS信号347、並びに9ビツト行アドレスに
続く9ビツト列アドレスを提供するAライン366によつ
て行なわれる。あるバンクがイネーブルされ且つCAS347
信号及び行アドレスに続くRAS346信号及び列アドレスを
受け取る場合、このバンクはそれが偶数ハーフワードで
ある場合アドレスされたハーフワードに含まれる16ビツ
トのデータを355に出力し、それが奇数ハーフワードで
ある場合バス353に出力する。あるバンクがイネーブル
され、上記のように列アドレス及び行アドレスを受け取
り、更にwe信号372を受け取る場合、バス353及び355の
両方におけるデータは、アドレス指定されたハーフワー
ドが奇数か偶数かに応じて、アドレスされたハーフワー
ドに書き込まれる。本実施例において、各バンクは、日
立製作所製造の50256−15型の22個の256K×1NMOSRAMか
らなつている。この型のRAMは、150nsサイクル時間を有
している。
ている。各対の一方のバンクは偶数ハーフワードを含
み、他方のバンクは奇数ハーフワードを含んでいる。こ
の偶数ハーフワードバンクは、バス355からの入力及び
バス355への出力を受ける。奇数ハーフワードバンク
は、バス353からの入力及び353への出力を受ける。アド
レツシングは、1対のバンクを選択するBS信号373、受
け取られるアドレスが列アドレスであることを示すRAS
信号346、及び受け取られるアドレスが行アドレスであ
ることを示すCAS信号347、並びに9ビツト行アドレスに
続く9ビツト列アドレスを提供するAライン366によつ
て行なわれる。あるバンクがイネーブルされ且つCAS347
信号及び行アドレスに続くRAS346信号及び列アドレスを
受け取る場合、このバンクはそれが偶数ハーフワードで
ある場合アドレスされたハーフワードに含まれる16ビツ
トのデータを355に出力し、それが奇数ハーフワードで
ある場合バス353に出力する。あるバンクがイネーブル
され、上記のように列アドレス及び行アドレスを受け取
り、更にwe信号372を受け取る場合、バス353及び355の
両方におけるデータは、アドレス指定されたハーフワー
ドが奇数か偶数かに応じて、アドレスされたハーフワー
ドに書き込まれる。本実施例において、各バンクは、日
立製作所製造の50256−15型の22個の256K×1NMOSRAMか
らなつている。この型のRAMは、150nsサイクル時間を有
している。
memRAM365に対する制御信号及びアドレスは、CPU201
あるいはI/O217からのメモリ制御信号及びアドレスに応
答してmemctl345及びmux363によつて与えられる。Memct
l345は、バス341のヒツト信号229によつて抑止されない
限りRAS346及びCAS347を発生し、MA361に受け取られた
アドレスのビツト0及び1に応答してBS373を発生し且
つI/Oメモリオペレーシヨン235あるいはCPUメモリオペ
レーシヨン233のどちらかが書込みオペレーシヨンを指
定する時I/Oメモリオペレーシヨン235あるいはCPUメモ
リオペレーシヨン233に応答してWE372を発生する。Mux3
63は、MA361のビツト2−19を受け且つビツト2−9及
びMA361のビツト18からなるA366に9ビツト列アドレス
を与え且つビツト10−18及びMA362のビツト19からなるA
366に9ビツト行アドレスを与える。この行アドレスの
選択は、CAS347によつて制御される。Mux363は、74F257
型の3つの4ビツトマルチプレクサによつて実現され
る。
あるいはI/O217からのメモリ制御信号及びアドレスに応
答してmemctl345及びmux363によつて与えられる。Memct
l345は、バス341のヒツト信号229によつて抑止されない
限りRAS346及びCAS347を発生し、MA361に受け取られた
アドレスのビツト0及び1に応答してBS373を発生し且
つI/Oメモリオペレーシヨン235あるいはCPUメモリオペ
レーシヨン233のどちらかが書込みオペレーシヨンを指
定する時I/Oメモリオペレーシヨン235あるいはCPUメモ
リオペレーシヨン233に応答してWE372を発生する。Mux3
63は、MA361のビツト2−19を受け且つビツト2−9及
びMA361のビツト18からなるA366に9ビツト列アドレス
を与え且つビツト10−18及びMA362のビツト19からなるA
366に9ビツト行アドレスを与える。この行アドレスの
選択は、CAS347によつて制御される。Mux363は、74F257
型の3つの4ビツトマルチプレクサによつて実現され
る。
MemRAM365は、32ビツトワードのみを受け取つて出力
する。しかしながら、前に述べたように、VSコンピユー
タシステムは、個別バイトをアドレス指定し、本実施例
におけるMDIバス223は16ビツト幅である。LA349及び351
並びにSWドライバ357及び359は、メモリ215がハーフワ
ードだけでなく単一バイトをも受け取つて出力するもの
である。LA349は、memRAM365がデータを入力あるいは出
力する時に奇数ハーフワードを運ぶバス353に接続され
ており、LA351は、偶数ハーフワードを運ぶバス355に接
続されている。各ラツチは、2つのバイトを記憶し、各
バイトは、別々に書き込まれあるいは読み出される。SW
359はバス353をどちらかの方向に駆動し、SW357はバス3
55に対して同じことをしない。各ドライバは、低バイト
が高バイトにあり且つ高バイトが低バイトになるように
するために、バスに運ばれるハーフワードのこの2つの
バイトが変化せずにドライバに接続されたバスに駆動さ
れるようにするかあるいはこの2つのバイトがスワツプ
されるようにする構造の4つのバイトドライバからなつ
ている。LA349及び351並びにSWドライバ357及び359は、
MA361のビツト19−21に応答してmemctl345によつて発生
されたswctl信号371によつて制御される。
する。しかしながら、前に述べたように、VSコンピユー
タシステムは、個別バイトをアドレス指定し、本実施例
におけるMDIバス223は16ビツト幅である。LA349及び351
並びにSWドライバ357及び359は、メモリ215がハーフワ
ードだけでなく単一バイトをも受け取つて出力するもの
である。LA349は、memRAM365がデータを入力あるいは出
力する時に奇数ハーフワードを運ぶバス353に接続され
ており、LA351は、偶数ハーフワードを運ぶバス355に接
続されている。各ラツチは、2つのバイトを記憶し、各
バイトは、別々に書き込まれあるいは読み出される。SW
359はバス353をどちらかの方向に駆動し、SW357はバス3
55に対して同じことをしない。各ドライバは、低バイト
が高バイトにあり且つ高バイトが低バイトになるように
するために、バスに運ばれるハーフワードのこの2つの
バイトが変化せずにドライバに接続されたバスに駆動さ
れるようにするかあるいはこの2つのバイトがスワツプ
されるようにする構造の4つのバイトドライバからなつ
ている。LA349及び351並びにSWドライバ357及び359は、
MA361のビツト19−21に応答してmemctl345によつて発生
されたswctl信号371によつて制御される。
以上の構成要素は以下のように共動する。即ち、読出
しオペレーシヨンの場合、memRAM365は、MA0−18によつ
て指定された奇数ハーフワードあるいは偶数ハーフワー
ドをバス353あるいはバス355に出力する。ハーフワード
は、それが奇数あるいは偶数であるかに応じて、LA349
あるいはLA351にラツチされる。アドレスのビツト19−2
1が奇数ハーフワードの最初のバイトを指定する場合、S
Wドライバ359は、これらのバイトをスワツプすることな
しにLA349の内容をバス223に出力することによりswctl3
71に応答する。ビツト19−21が最初のハーフワードの第
2バイトを指定する場合、SWドライバ359は、それが奇
数ハーフワードをバス223に出力する時にこれらのバイ
トをスワツプすることによりswctl371に応答する。アド
レスのビツト19−21が偶数ハーフワードの第1バイトあ
るいは第2バイトのどちらかを指定する場合、SWドライ
バー359はLA351の内容と同じことをする。
しオペレーシヨンの場合、memRAM365は、MA0−18によつ
て指定された奇数ハーフワードあるいは偶数ハーフワー
ドをバス353あるいはバス355に出力する。ハーフワード
は、それが奇数あるいは偶数であるかに応じて、LA349
あるいはLA351にラツチされる。アドレスのビツト19−2
1が奇数ハーフワードの最初のバイトを指定する場合、S
Wドライバ359は、これらのバイトをスワツプすることな
しにLA349の内容をバス223に出力することによりswctl3
71に応答する。ビツト19−21が最初のハーフワードの第
2バイトを指定する場合、SWドライバ359は、それが奇
数ハーフワードをバス223に出力する時にこれらのバイ
トをスワツプすることによりswctl371に応答する。アド
レスのビツト19−21が偶数ハーフワードの第1バイトあ
るいは第2バイトのどちらかを指定する場合、SWドライ
バー359はLA351の内容と同じことをする。
書込みオペレーシヨンにおいて、書き込まれるべきバ
イトあるいは諸バイトを含む16ビツトはMDIバス223に置
かれている。書き込まれるべきものがハーフワードであ
る場合、オペレーシヨンは以下のように行なわれる。即
ちswctl371の制御の下で、SW359あるいはSW357は、ハー
フワードが偶数あるいは奇数であるかに応じて、MDIバ
ス223の値をバス353あるいは355に駆動し、そこから、
ハーフワードはMemRAM365によつて受け取られる。
イトあるいは諸バイトを含む16ビツトはMDIバス223に置
かれている。書き込まれるべきものがハーフワードであ
る場合、オペレーシヨンは以下のように行なわれる。即
ちswctl371の制御の下で、SW359あるいはSW357は、ハー
フワードが偶数あるいは奇数であるかに応じて、MDIバ
ス223の値をバス353あるいは355に駆動し、そこから、
ハーフワードはMemRAM365によつて受け取られる。
書き込まれるべきものがバイトである場合、書込みオ
ペレーシヨンは、読出し修正書込みオペレーシヨンとし
てなされる。このオペレーシヨンにおいて、memRAM365
は、アドレス全体によつて指定されたバイトを含む、MA
361のアドレスのビツト0−18によつて指定されたハー
フワードを出力する。このハーフワードが奇数又は偶数
かに応じて、このハーフワードはバス353あるいはバス3
55に出力され、swctl371の制御の下でLA349あるいはLA3
51にラツチされる。次に、アドレスのビツト19−21に応
答してswctl信号371によつて指定されるように、SW359
あるいはSW357は、書き込まれるべきバイトをバス355あ
るいは353のどちらかに駆動し、書き込まれているバイ
トが属するハーフワードを含むLA349又はLA351は、この
バスの値を、書き込まれているLA352あるいはLA359のバ
イトにラツチする。この時点において、LA349あるいはL
A351のどちらかは、書込みオペレーシヨンの後に現われ
るべきハーフワードをそのまま含んでいる。この際、LA
349あるいはLA351のどちらかは、その内容をバス353あ
るいはバス355に出力し、アドレスされたハーフワード
はmemRAM365に書き込まれる。LA349あるいはLA351は、7
4LALS373型の2つの8ビツトDラツチから構成され、SW
357あるいはSW359は、74LS245型の4個の8ビツト双方
向8ビツトドライバから構成され得る。
ペレーシヨンは、読出し修正書込みオペレーシヨンとし
てなされる。このオペレーシヨンにおいて、memRAM365
は、アドレス全体によつて指定されたバイトを含む、MA
361のアドレスのビツト0−18によつて指定されたハー
フワードを出力する。このハーフワードが奇数又は偶数
かに応じて、このハーフワードはバス353あるいはバス3
55に出力され、swctl371の制御の下でLA349あるいはLA3
51にラツチされる。次に、アドレスのビツト19−21に応
答してswctl信号371によつて指定されるように、SW359
あるいはSW357は、書き込まれるべきバイトをバス355あ
るいは353のどちらかに駆動し、書き込まれているバイ
トが属するハーフワードを含むLA349又はLA351は、この
バスの値を、書き込まれているLA352あるいはLA359のバ
イトにラツチする。この時点において、LA349あるいはL
A351のどちらかは、書込みオペレーシヨンの後に現われ
るべきハーフワードをそのまま含んでいる。この際、LA
349あるいはLA351のどちらかは、その内容をバス353あ
るいはバス355に出力し、アドレスされたハーフワード
はmemRAM365に書き込まれる。LA349あるいはLA351は、7
4LALS373型の2つの8ビツトDラツチから構成され、SW
357あるいはSW359は、74LS245型の4個の8ビツト双方
向8ビツトドライバから構成され得る。
c.バスMB214,MDO221,MDI223及びラツチ213 この好適な実施例において、メモリ215及びラツチ213
の間を走るMBバス214は、2つの16ビツトバスとして実
現される。この2つの16ビツトバスは、memRAM365、LA3
35、LA349及びSW359の奇数バンクを接続するバス353及
び偶数バンクをLA337、LA351及びSW357に接続するバス3
55である。メモリ215に関連して説明されるように、mem
RAM365への全てのデータ入力かあるいはmemRAM365から
の全てのデータ出力は、バス353及び355に運ばれる。バ
ス353及び355は、LA335及びLA337を経由してMDOバス221
に且つスワツピングドライバSW359及び357を経由してMD
Iバス223に接続されている。前に指摘したように、本実
施例におけるMDIバス223は、16ビツトのデータを運ぶ。
の間を走るMBバス214は、2つの16ビツトバスとして実
現される。この2つの16ビツトバスは、memRAM365、LA3
35、LA349及びSW359の奇数バンクを接続するバス353及
び偶数バンクをLA337、LA351及びSW357に接続するバス3
55である。メモリ215に関連して説明されるように、mem
RAM365への全てのデータ入力かあるいはmemRAM365から
の全てのデータ出力は、バス353及び355に運ばれる。バ
ス353及び355は、LA335及びLA337を経由してMDOバス221
に且つスワツピングドライバSW359及び357を経由してMD
Iバス223に接続されている。前に指摘したように、本実
施例におけるMDIバス223は、16ビツトのデータを運ぶ。
好適な実施例におけるMDOバス221は、2つの16ビツト
バスとしてキヤツシユ203の中で実現されている。バス3
23は、奇数ハーフワードを含むキヤツシユRAM313のレジ
スターをLA335及び出力mux(omux)303に接続してい
る。バス325は、偶数ハーフワードを含むキヤツシユRAM
313のレジスターをLA337及びomux303に接続している。o
mux303は、キヤツシユ203からデータをCPU201に運ぶMDO
バス221の部分に接続されており、好適な実施例の場
合、このバスは16ビツト幅である。omux303は、CPU201
からバス301を介して受け取られたアドレスの2つの最
小桁ビツトの制御の下で且つ単一バイト読出しオペレー
シヨンを示すCPUmem op信号233における1つの信号の制
御下で奇数ハーフワード、偶数ハーフワード、あるいは
単一バイトが指定されている場合、この指定されたバイ
トがハーフワードの最初のバイトであり且つ残りが0で
満たされているハーフワードのどちらかを出力する。om
ux303は、0充填を供給するために、8個の74S253型8
対2マルチプレクサ及び74S244型8ビツトドライバによ
つて実現される。
バスとしてキヤツシユ203の中で実現されている。バス3
23は、奇数ハーフワードを含むキヤツシユRAM313のレジ
スターをLA335及び出力mux(omux)303に接続してい
る。バス325は、偶数ハーフワードを含むキヤツシユRAM
313のレジスターをLA337及びomux303に接続している。o
mux303は、キヤツシユ203からデータをCPU201に運ぶMDO
バス221の部分に接続されており、好適な実施例の場
合、このバスは16ビツト幅である。omux303は、CPU201
からバス301を介して受け取られたアドレスの2つの最
小桁ビツトの制御の下で且つ単一バイト読出しオペレー
シヨンを示すCPUmem op信号233における1つの信号の制
御下で奇数ハーフワード、偶数ハーフワード、あるいは
単一バイトが指定されている場合、この指定されたバイ
トがハーフワードの最初のバイトであり且つ残りが0で
満たされているハーフワードのどちらかを出力する。om
ux303は、0充填を供給するために、8個の74S253型8
対2マルチプレクサ及び74S244型8ビツトドライバによ
つて実現される。
ラツチ213は、2つの16ビツトラツチ即ち、データを
バス353から受け且つこのデータをバス323に与えるLA33
5、及びデータをバス355から受け取りそのデータをバス
325に与えるLA337として実現される。各ラツチは常に、
バス353及び355にそれぞれ現われるために、最後の値の
コピーを含んでいる。LA335は、cwh信号375に応答して
バス323に応答し且つLA337はcwl信号377に応答してバス
325に出力する。これらの信号はキヤツシユctl343によ
つて与えられる。これらのラツチの各々が、74ALS373型
の2つの8ビツトDラツチを用いて実現される。
バス353から受け且つこのデータをバス323に与えるLA33
5、及びデータをバス355から受け取りそのデータをバス
325に与えるLA337として実現される。各ラツチは常に、
バス353及び355にそれぞれ現われるために、最後の値の
コピーを含んでいる。LA335は、cwh信号375に応答して
バス323に応答し且つLA337はcwl信号377に応答してバス
325に出力する。これらの信号はキヤツシユctl343によ
つて与えられる。これらのラツチの各々が、74ALS373型
の2つの8ビツトDラツチを用いて実現される。
d.制御装置211 制御装置211は、CPU201及びI/O217からアドレス及び
メモリオペレーシヨン信号を受け取る。この好適な実施
例を含むVSシステムにおけるCPUアドレスは、24ビツト
論理アドレスであり、一方、I/Oアドレスは、22ビツト
物理アドレスである。しかしながら、CPU201からのアド
レスがこの好適な実施例における制御装置211に達する
迄に、これらのアドレスは22ビツト物理アドレスに変換
される。アドレツシングと関係を有する制御装置211の
これらの構成要素から説明を始めると、CPUアドレス
は、バス225を経由して入力される。CPUアドレスの2つ
の最小桁ビツトは、バス301を経由してomux303に行き、
ここで、これらのビツトはMDOバス221に出力されるべき
ハーフワードを選択する。残りのビツトは、バス307に
運ばれる。これらのビツトのうち最上桁8ビツト、即ち
ビツト0−7は、バス334に運ばれ、このバス334は、ビ
ツト0−7をタグ比較オペレーシヨンに対するビツトの
ソースであるmux333に与え且つドライバD336に与える。
ドライバD336は、これらのビツトをキヤツシユRAM313の
タグ部に与える。バス307からの残りの12ビツトは、キ
ヤツシユRAM313に対するアドレスのソースであるmux309
に行く。更に、バス225のビツトの全ては、LA327に行
き、ここからこれらのビツトはMA361を経由してメモリ2
15に且つLA329及びバス330を経由してmux309及びmux333
に出力される。LA327からアドレスビツトを受け取るこ
とに加えて、MAバス361及びLA329は、これらのビツトを
バス227を経由してI/O217から受け取る。バス227からの
ビツトの宛先は、LA327からのビツトの宛先と同じであ
る。先ほどの説明から判るように、CAA311に対するアド
レスビツト及びアドレスされたレジスタ314からのタグ3
15と比較されるべきビツトはバス307及びラツチ装置329
から交互に来る。後により詳細に説明するように、これ
らのビツトは、キヤツシユヒツト(cache hit)による
メモリ読出しオペレーシヨンの場合及びLA329からの他
の全ての場合にバス307から来る。
メモリオペレーシヨン信号を受け取る。この好適な実施
例を含むVSシステムにおけるCPUアドレスは、24ビツト
論理アドレスであり、一方、I/Oアドレスは、22ビツト
物理アドレスである。しかしながら、CPU201からのアド
レスがこの好適な実施例における制御装置211に達する
迄に、これらのアドレスは22ビツト物理アドレスに変換
される。アドレツシングと関係を有する制御装置211の
これらの構成要素から説明を始めると、CPUアドレス
は、バス225を経由して入力される。CPUアドレスの2つ
の最小桁ビツトは、バス301を経由してomux303に行き、
ここで、これらのビツトはMDOバス221に出力されるべき
ハーフワードを選択する。残りのビツトは、バス307に
運ばれる。これらのビツトのうち最上桁8ビツト、即ち
ビツト0−7は、バス334に運ばれ、このバス334は、ビ
ツト0−7をタグ比較オペレーシヨンに対するビツトの
ソースであるmux333に与え且つドライバD336に与える。
ドライバD336は、これらのビツトをキヤツシユRAM313の
タグ部に与える。バス307からの残りの12ビツトは、キ
ヤツシユRAM313に対するアドレスのソースであるmux309
に行く。更に、バス225のビツトの全ては、LA327に行
き、ここからこれらのビツトはMA361を経由してメモリ2
15に且つLA329及びバス330を経由してmux309及びmux333
に出力される。LA327からアドレスビツトを受け取るこ
とに加えて、MAバス361及びLA329は、これらのビツトを
バス227を経由してI/O217から受け取る。バス227からの
ビツトの宛先は、LA327からのビツトの宛先と同じであ
る。先ほどの説明から判るように、CAA311に対するアド
レスビツト及びアドレスされたレジスタ314からのタグ3
15と比較されるべきビツトはバス307及びラツチ装置329
から交互に来る。後により詳細に説明するように、これ
らのビツトは、キヤツシユヒツト(cache hit)による
メモリ読出しオペレーシヨンの場合及びLA329からの他
の全ての場合にバス307から来る。
本発明のオペレーシヨンを制御する制御装置211の諸
部分について説明を続ける。比較器339は、CAAバス311
のビツトによつて現在アドレスされているキヤツシユレ
ジスタ314のタグ部315からの入力を受け取り且つこの入
力をメモリ215が現在応答しているアドレスのビツト0
−7と比較する。これらのビツトが等しい場合、比較器
339は、ライン341にヒツト信号229を発生する。ライン3
41は、memctl345及びキヤツシユctl343に接続されてお
り、これらの構成要素にヒツト信号及びミス信号を与え
る。キヤツシユctl343は更に、CPUmem op233、I/Omem o
p235及びMA361にアドレスのビツト20を運ぶラインを入
力として受け、奇数ハーフワード又は偶数ハーフワード
がキヤツシユRAM313に書き込まれるべきであることを示
すcwh信号375あるいはcwl信号377、及びext信号231を出
力として発生する。この後者の信号は、ヒツト信号229
を発生しないCPU読出しオペレーシヨンに応答して発生
され、且つ、memRAM365がデータを出力するのに必要な
期間にわたつてそのサイクルを延長すべきであることを
示す。既に説明したように、mem ctl345は、MA361からm
em op信号235及び233並びにビツト0、1及び19−21を
ヒツト信号229と共に受け取り、swctl371、CAS347、RAS
346、BS373及びWE372を出力として発生する。ヒツト信
号に応答して、mem ctl345は、RAS346を抑止し、これに
よりmemRAM367のオペレーシヨンを抑止する。
部分について説明を続ける。比較器339は、CAAバス311
のビツトによつて現在アドレスされているキヤツシユレ
ジスタ314のタグ部315からの入力を受け取り且つこの入
力をメモリ215が現在応答しているアドレスのビツト0
−7と比較する。これらのビツトが等しい場合、比較器
339は、ライン341にヒツト信号229を発生する。ライン3
41は、memctl345及びキヤツシユctl343に接続されてお
り、これらの構成要素にヒツト信号及びミス信号を与え
る。キヤツシユctl343は更に、CPUmem op233、I/Omem o
p235及びMA361にアドレスのビツト20を運ぶラインを入
力として受け、奇数ハーフワード又は偶数ハーフワード
がキヤツシユRAM313に書き込まれるべきであることを示
すcwh信号375あるいはcwl信号377、及びext信号231を出
力として発生する。この後者の信号は、ヒツト信号229
を発生しないCPU読出しオペレーシヨンに応答して発生
され、且つ、memRAM365がデータを出力するのに必要な
期間にわたつてそのサイクルを延長すべきであることを
示す。既に説明したように、mem ctl345は、MA361からm
em op信号235及び233並びにビツト0、1及び19−21を
ヒツト信号229と共に受け取り、swctl371、CAS347、RAS
346、BS373及びWE372を出力として発生する。ヒツト信
号に応答して、mem ctl345は、RAS346を抑止し、これに
よりmemRAM367のオペレーシヨンを抑止する。
制御211の上記構成要素に関して、mux309及び333は、
74F157型の2つの8対4muxを用いて実現される。ドライ
バD336は、74LS244型8ビツトドライバを用いて実現さ
れる。ラツチLA327及びLA329は、74F373型の3つの8ビ
ツトDラツチを用いて実現される。最後に、比較器339
は、74F521型の8ビツト比較器を用いて実現され得る。
キヤツシユctl343及びmemctl345は、個別のロジツクか
らなつている。キヤツシユctl343及びmemctl345に対し
て本明細書に述べられている諸機能を実施するためのロ
ジツクの構成は、当技術においては公知である。
74F157型の2つの8対4muxを用いて実現される。ドライ
バD336は、74LS244型8ビツトドライバを用いて実現さ
れる。ラツチLA327及びLA329は、74F373型の3つの8ビ
ツトDラツチを用いて実現される。最後に、比較器339
は、74F521型の8ビツト比較器を用いて実現され得る。
キヤツシユctl343及びmemctl345は、個別のロジツクか
らなつている。キヤツシユctl343及びmemctl345に対し
て本明細書に述べられている諸機能を実施するためのロ
ジツクの構成は、当技術においては公知である。
3.好適な実施例のオペレーシヨン 第3図の好適な実施例のオペレーシヨンの以下の説明
は、先ず、メモリ読出しオペレーシヨンから始まり次に
メモリ書込みオペレーシヨンに行く。各場合において、
CPU201及びI/O217に対して且つキヤツシユヒツトを用い
て或いは用いずに実行されるオペレーシヨンが論じられ
る。
は、先ず、メモリ読出しオペレーシヨンから始まり次に
メモリ書込みオペレーシヨンに行く。各場合において、
CPU201及びI/O217に対して且つキヤツシユヒツトを用い
て或いは用いずに実行されるオペレーシヨンが論じられ
る。
a.キヤツシユヒツトを用いるCPUメモリ読出しオペレー
シヨン CPU201がメモリ読出しオペレーシヨンを実施すると、
ADDRバス225は、このアドレスを運び、CPUmem op233
は、読出しオペレーシヨンを指定する。ADDR225のアド
レスの全ての22ビツトは、LA327にラツチされる。同時
に、2つの最小桁ビツトは、omux303に行き、バス307
は、次の12ビツトをmux309に運び、8個の最上桁ビツト
をmux333に運ぶ。読出しオペレーシヨンを指定するCPUm
em op233に応答して、キヤツシユctl343は、比較器339
及びキヤツシユRAM313をイネーブルするen信号312及びm
ux309及びmux333にそれらがバス307から受け取る入力を
選択せしめるCNT信号344を出力する。
シヨン CPU201がメモリ読出しオペレーシヨンを実施すると、
ADDRバス225は、このアドレスを運び、CPUmem op233
は、読出しオペレーシヨンを指定する。ADDR225のアド
レスの全ての22ビツトは、LA327にラツチされる。同時
に、2つの最小桁ビツトは、omux303に行き、バス307
は、次の12ビツトをmux309に運び、8個の最上桁ビツト
をmux333に運ぶ。読出しオペレーシヨンを指定するCPUm
em op233に応答して、キヤツシユctl343は、比較器339
及びキヤツシユRAM313をイネーブルするen信号312及びm
ux309及びmux333にそれらがバス307から受け取る入力を
選択せしめるCNT信号344を出力する。
次に、CAA311は、キヤツシユRAM313へのアドレスとし
てバス307からの12ビツトの入力をmux309に与える。こ
のアドレスに応答して、キヤツシユRAM313は、アドレス
されたレジスタからのタグ315をバス338に、このレジス
タからの奇数ハーフワード319をバス323に且つ偶数ハー
フワード321をバス325に出力する。前に述べたように、
omux303は、omux303へのワード出力からアドレスされた
バイトあるいはハーフワードを選択し、このバイトある
いはハーフワードをMDOバス221に出力することにより2
つの最小桁アドレスビツトに応答する。比較器339は、
タグ315を受け取つて、これをmux333がバス307から与え
るアドレスの8ビツトと比較する。前に説明したよう
に、タグ315は、レジスタ314におけるデータがバス225
のアドレスにおけるデータのコピーである場合アドレス
の8ビツトに等しい。タグ315及びアドレスビツトが等
しい場合、比較器339は、ヒツト信号229をヒツトライン
341に発生する。ヒツト信号229に応答して、memctl345
は、RAS346の発生を抑止し、これによりmemRAM365のオ
ペレーシヨンを抑止する。CPU201は、キヤツシユctl343
からext信号231を受けていなかつたため、CPU201は、om
ux303からデータ出力をとる。
てバス307からの12ビツトの入力をmux309に与える。こ
のアドレスに応答して、キヤツシユRAM313は、アドレス
されたレジスタからのタグ315をバス338に、このレジス
タからの奇数ハーフワード319をバス323に且つ偶数ハー
フワード321をバス325に出力する。前に述べたように、
omux303は、omux303へのワード出力からアドレスされた
バイトあるいはハーフワードを選択し、このバイトある
いはハーフワードをMDOバス221に出力することにより2
つの最小桁アドレスビツトに応答する。比較器339は、
タグ315を受け取つて、これをmux333がバス307から与え
るアドレスの8ビツトと比較する。前に説明したよう
に、タグ315は、レジスタ314におけるデータがバス225
のアドレスにおけるデータのコピーである場合アドレス
の8ビツトに等しい。タグ315及びアドレスビツトが等
しい場合、比較器339は、ヒツト信号229をヒツトライン
341に発生する。ヒツト信号229に応答して、memctl345
は、RAS346の発生を抑止し、これによりmemRAM365のオ
ペレーシヨンを抑止する。CPU201は、キヤツシユctl343
からext信号231を受けていなかつたため、CPU201は、om
ux303からデータ出力をとる。
b.キヤツシユミス(cach miss)によるCPUメモリ読出し
オペレーシヨン レジスタ314がメモリにおけるアドレスされた位置に
おけるデータのコピーを含んでいない時、タグ315は、
このアドレスの8個の最上桁ビツトと等しくなく、ヒツ
トライン(hit line)341は、ヒツト信号229を運ばな
い。キヤツシユctl343は、先ずext信号231を発生し、次
に、MA361のビツト20の値に応じて、cwh375あるいはcwl
377を、RAM313へのデータの書込みに対する適当な時間
において発生することによりこれに応答する。ext信号2
31に応答して、CPU201は、そのサイクルを延長し且つキ
ヤツシユRAM313からデータ出力を取らない。バス225の
アドレスは、LA327にラツチされており、ミスにおいて
は、MAバス361に出力され且つLA329にラツチされる。me
mctl345は、memRAM365がアドレスされたハーフワードを
バス353又はバス355に出力することによつてmux363から
のBS373及びアドレスビツトに応答するようにするため
に、MAバス361の値からのRAS346及びCASの発生を可能に
することによりこのミス信号に応答する。前に説明した
ように、LA335又はLA337は、このワードをそれがこれら
のバスの一方又は他方に現われるままでラツチする。キ
ヤツシユctl343は、ミスの際CNT344の発生を停止し、従
つて、mux309は、バス330からビツト8−19をCAA311に
対する入力として選択する。一方、バス307は、依然と
してこのアドレスのビツト0−7をバス334に与えてい
る。キヤツシユCTL343がcwh375あるいはcwl377を発生し
ているかに応じて、LA335あるいはLA337のどちらかは、
ラツチされたハーフワードをバス323あるいはバス325の
どちらかに出力する。これらのバスは、ハーフワードを
omux303に運び、ここで、アドレスされたバイトあるい
はハーフワードは、上記のようにCPU215に出力され且つ
又キヤツシユRAM313に出力される。斯くして、キヤツシ
ユRAM313は、タグフイールド315にバス334のアドレスの
ビツト0−7を記憶し、cwh375あるいはcwl377が発生さ
れているかに応じて、バス323の奇数ハーフワードを奇
数フイールド319にあるいはCAA311のビツトによつてア
ドレスされたレジスタ314の偶数フイールド321にバス32
5の偶数ハーフワードを記憶する。タグフイールド315に
書き込まれたビツトがフイールド319又は321に書き込ま
れるハーフワードを含むメモリアドレスに対するタグで
あるため、その結果、レジスタ314は現時点で、キヤツ
シユミスを起こしたメモリアドレスにおけるデータの有
効なコピーを含むことになる。
オペレーシヨン レジスタ314がメモリにおけるアドレスされた位置に
おけるデータのコピーを含んでいない時、タグ315は、
このアドレスの8個の最上桁ビツトと等しくなく、ヒツ
トライン(hit line)341は、ヒツト信号229を運ばな
い。キヤツシユctl343は、先ずext信号231を発生し、次
に、MA361のビツト20の値に応じて、cwh375あるいはcwl
377を、RAM313へのデータの書込みに対する適当な時間
において発生することによりこれに応答する。ext信号2
31に応答して、CPU201は、そのサイクルを延長し且つキ
ヤツシユRAM313からデータ出力を取らない。バス225の
アドレスは、LA327にラツチされており、ミスにおいて
は、MAバス361に出力され且つLA329にラツチされる。me
mctl345は、memRAM365がアドレスされたハーフワードを
バス353又はバス355に出力することによつてmux363から
のBS373及びアドレスビツトに応答するようにするため
に、MAバス361の値からのRAS346及びCASの発生を可能に
することによりこのミス信号に応答する。前に説明した
ように、LA335又はLA337は、このワードをそれがこれら
のバスの一方又は他方に現われるままでラツチする。キ
ヤツシユctl343は、ミスの際CNT344の発生を停止し、従
つて、mux309は、バス330からビツト8−19をCAA311に
対する入力として選択する。一方、バス307は、依然と
してこのアドレスのビツト0−7をバス334に与えてい
る。キヤツシユCTL343がcwh375あるいはcwl377を発生し
ているかに応じて、LA335あるいはLA337のどちらかは、
ラツチされたハーフワードをバス323あるいはバス325の
どちらかに出力する。これらのバスは、ハーフワードを
omux303に運び、ここで、アドレスされたバイトあるい
はハーフワードは、上記のようにCPU215に出力され且つ
又キヤツシユRAM313に出力される。斯くして、キヤツシ
ユRAM313は、タグフイールド315にバス334のアドレスの
ビツト0−7を記憶し、cwh375あるいはcwl377が発生さ
れているかに応じて、バス323の奇数ハーフワードを奇
数フイールド319にあるいはCAA311のビツトによつてア
ドレスされたレジスタ314の偶数フイールド321にバス32
5の偶数ハーフワードを記憶する。タグフイールド315に
書き込まれたビツトがフイールド319又は321に書き込ま
れるハーフワードを含むメモリアドレスに対するタグで
あるため、その結果、レジスタ314は現時点で、キヤツ
シユミスを起こしたメモリアドレスにおけるデータの有
効なコピーを含むことになる。
c.I/O読出しオペレーシヨン 読出しオペレーシヨンがI/Oデバイス217によつて始動
されると、このアドレスはバス227にそして次にMAバス3
61に現われる。キヤツシユctl343及びmemctl345は、I/O
mem op信号235を受けるが、これらの信号が読出しオペ
レーシヨンを指定すると、キヤツシユctl343は応答しな
い。従つて、en信号312は、発生されず、RAM313はデー
タをバス323、325あるいは338に出力せず、比較器339は
ヒツト信号229を発生しない。memctl345は、I/Omem op
信号235に応答せず、且つ比較器339からのヒツト信号に
よつて抑止されない。従つて、memctlは、memRAM365がM
A361のアドレスにおけるデータをバス353及び355に出力
するようにするために、RAS346及びCAS347を発生する。
LA335及びLA337は、データをラツチするが、キヤツシユ
ctl343がcwh信号375あるいはcwl信号377を発生しないた
め、このデータは、キヤツシユRAM313に書き込まれずま
た同時にMDOバス221を経由してCPU201にも出力されな
い。その代わり、LA349及びSW359に且つLA351及びSW357
に出力される。これらのLA351及びSW357は、前に述べた
ように、memctl345がMA361のビツト18−21に応答して発
生するswctl信号371に応答してアドレスされているバイ
トあるいはハーフワードを出力する。
されると、このアドレスはバス227にそして次にMAバス3
61に現われる。キヤツシユctl343及びmemctl345は、I/O
mem op信号235を受けるが、これらの信号が読出しオペ
レーシヨンを指定すると、キヤツシユctl343は応答しな
い。従つて、en信号312は、発生されず、RAM313はデー
タをバス323、325あるいは338に出力せず、比較器339は
ヒツト信号229を発生しない。memctl345は、I/Omem op
信号235に応答せず、且つ比較器339からのヒツト信号に
よつて抑止されない。従つて、memctlは、memRAM365がM
A361のアドレスにおけるデータをバス353及び355に出力
するようにするために、RAS346及びCAS347を発生する。
LA335及びLA337は、データをラツチするが、キヤツシユ
ctl343がcwh信号375あるいはcwl信号377を発生しないた
め、このデータは、キヤツシユRAM313に書き込まれずま
た同時にMDOバス221を経由してCPU201にも出力されな
い。その代わり、LA349及びSW359に且つLA351及びSW357
に出力される。これらのLA351及びSW357は、前に述べた
ように、memctl345がMA361のビツト18−21に応答して発
生するswctl信号371に応答してアドレスされているバイ
トあるいはハーフワードを出力する。
d.キヤツシユヒツトによるメモリ書込みオペレーシヨン メモリ書込みオペレーシヨンは、データがCPU201ある
いはI/Oデバイス217から書き込まれているかにかかわら
ず、同じように進行する。書き込まれるべきデータはMD
Iバス223に現われる。データがCPU201から書き込まれて
いる場合、このアドレスはバス225に現われ、ラツチ327
にラツチされ、そこからラツチ329にラツチされる。こ
こから、アドレスはmux309及びmux333に分配される。こ
のデータがI/O217から書き込まれている場合、このデー
タはバス227に現われ、ラツチ329にラツチされる。キヤ
ツシユctl343は、キヤツシユRAM313をイネーブルするen
信号312を発生することにより書込みオペレーシヨンを
指定するCPUmem op信号233あるいはI/Omem op信号235に
応答する。CNT344は発生されておらず、従って、mux333
及びmux309はバス330からのそれらの入力を選択するも
のである。キヤツシユRAM313は、CAA12のビツトによつ
てアドレス指定されたレジスタ314からのタグ315を比較
器339に且つフイールド319及び321におけるデータをバ
ス323及び325に出力することによりCAA311のキヤツシユ
アドレス及びen信号312に応答する。しかしながら、実
行されているのが書込みオペレーシヨンであるため、デ
ータは無視される。タグ315及び比較器339に入力される
べく選択されたアドレスビツトが等しい場合、バス223
に受けられているデータはキヤツシユRAM313とmemRAM36
5の両方に書き込まれなければならない。
いはI/Oデバイス217から書き込まれているかにかかわら
ず、同じように進行する。書き込まれるべきデータはMD
Iバス223に現われる。データがCPU201から書き込まれて
いる場合、このアドレスはバス225に現われ、ラツチ327
にラツチされ、そこからラツチ329にラツチされる。こ
こから、アドレスはmux309及びmux333に分配される。こ
のデータがI/O217から書き込まれている場合、このデー
タはバス227に現われ、ラツチ329にラツチされる。キヤ
ツシユctl343は、キヤツシユRAM313をイネーブルするen
信号312を発生することにより書込みオペレーシヨンを
指定するCPUmem op信号233あるいはI/Omem op信号235に
応答する。CNT344は発生されておらず、従って、mux333
及びmux309はバス330からのそれらの入力を選択するも
のである。キヤツシユRAM313は、CAA12のビツトによつ
てアドレス指定されたレジスタ314からのタグ315を比較
器339に且つフイールド319及び321におけるデータをバ
ス323及び325に出力することによりCAA311のキヤツシユ
アドレス及びen信号312に応答する。しかしながら、実
行されているのが書込みオペレーシヨンであるため、デ
ータは無視される。タグ315及び比較器339に入力される
べく選択されたアドレスビツトが等しい場合、バス223
に受けられているデータはキヤツシユRAM313とmemRAM36
5の両方に書き込まれなければならない。
memRAM365への書込みオペレーシヨンは、この好適な
実施例におけるメモリ215のオペレーシヨンの説明の所
で述べたように実行される。書き込まれているのがハー
フワードである場合、SW359又はSW357は、このハーフワ
ードを、バス353又はバス355に入力し、ここから、この
ハーフワードはmemRAM365における適当なRAMに行きある
いはLA335又は337の適当なラツチに行く。書き込まれて
いるのがバイトである場合、読出し修正書込みオペレー
シヨンが必要である。前に説明したように、このバイト
を含むハーフワードは、このハーフワードが奇数又は偶
数であるかに応じて、LA349あるいはLA351のどちらかに
出力され、書き込まれるべきバイトはMDI223に受けられ
且つラツチにおいて修正される。このラツチの修正され
た内容は、次にmemRAM365及びLA335あるいはLA337に書
き込まれる。MA361のビツト20の値に応じて、キヤツシ
ユctl343は、cwh375あるいはcwl377のどちらかを発生
し、LA335あるいはLA337のどちらかはその内容をバス32
3又は325に出力することによりcwh375あるいはcwl377に
応答し、キヤツシユRAM313は、バス334、323及び325の
値をレジスタ314に書き込み、これによりこのレジスタ3
14を更新することにより、cwh375あるいはcwl377に応答
する。memctl345は、we 372を発生し、memRAM365は、バ
ス353及び355の値をMA361のアドレスによつて指定され
た位置に書き込むことによつてこのwe372に応答する。
斯くして、このオペレーシヨンの終りにおいて、書き込
まれているメモリ位置に対応するレジスタ314及びこの
メモリ位置の両方は同一のデータを含む。
実施例におけるメモリ215のオペレーシヨンの説明の所
で述べたように実行される。書き込まれているのがハー
フワードである場合、SW359又はSW357は、このハーフワ
ードを、バス353又はバス355に入力し、ここから、この
ハーフワードはmemRAM365における適当なRAMに行きある
いはLA335又は337の適当なラツチに行く。書き込まれて
いるのがバイトである場合、読出し修正書込みオペレー
シヨンが必要である。前に説明したように、このバイト
を含むハーフワードは、このハーフワードが奇数又は偶
数であるかに応じて、LA349あるいはLA351のどちらかに
出力され、書き込まれるべきバイトはMDI223に受けられ
且つラツチにおいて修正される。このラツチの修正され
た内容は、次にmemRAM365及びLA335あるいはLA337に書
き込まれる。MA361のビツト20の値に応じて、キヤツシ
ユctl343は、cwh375あるいはcwl377のどちらかを発生
し、LA335あるいはLA337のどちらかはその内容をバス32
3又は325に出力することによりcwh375あるいはcwl377に
応答し、キヤツシユRAM313は、バス334、323及び325の
値をレジスタ314に書き込み、これによりこのレジスタ3
14を更新することにより、cwh375あるいはcwl377に応答
する。memctl345は、we 372を発生し、memRAM365は、バ
ス353及び355の値をMA361のアドレスによつて指定され
た位置に書き込むことによつてこのwe372に応答する。
斯くして、このオペレーシヨンの終りにおいて、書き込
まれているメモリ位置に対応するレジスタ314及びこの
メモリ位置の両方は同一のデータを含む。
e.キヤツシユミスによるメモリ書込み メモリ書込みオペレーシヨンにおいてキヤツシユミス
が存在する場合、キヤツシユctl343は、cwh375あるいは
cwl377のどちらかを発生せず、従つて、データはmemRAM
365に書き込まれるがキヤツシユRAM313には書き込まれ
ない。
が存在する場合、キヤツシユctl343は、cwh375あるいは
cwl377のどちらかを発生せず、従つて、データはmemRAM
365に書き込まれるがキヤツシユRAM313には書き込まれ
ない。
f.I/Oメモリ書込みオペレーシヨン中のキヤツシユから
のCPU読出し キヤツシユRAM313及びmemRAM365の説明において示し
たように、好適な実施例の場合、キヤツシユRAM313から
なるRAMは、45nsのサイクル時間を有しており、一方mem
RAM365からなるRAMは150nsのサイクル時間を有してい
る。従つて、好適な実施例におけるキヤツシユ203は、
メモリ215の3倍の速度でもつて作動する。この好適な
実施例は、事実と、並びにデータがキヤツシユ203にお
ける対応したレジスタを有するメモリ215中のアドレス
に書き込まれる時はいつでも、このデータは、メモリ21
5がI/O217からデータを受けて取る間にCPU201に読出し
オペレーシヨンを継続して実行させることによりキヤツ
シユ203のレジスタにも書き込まれるという事実と、の
利点を利用している。
のCPU読出し キヤツシユRAM313及びmemRAM365の説明において示し
たように、好適な実施例の場合、キヤツシユRAM313から
なるRAMは、45nsのサイクル時間を有しており、一方mem
RAM365からなるRAMは150nsのサイクル時間を有してい
る。従つて、好適な実施例におけるキヤツシユ203は、
メモリ215の3倍の速度でもつて作動する。この好適な
実施例は、事実と、並びにデータがキヤツシユ203にお
ける対応したレジスタを有するメモリ215中のアドレス
に書き込まれる時はいつでも、このデータは、メモリ21
5がI/O217からデータを受けて取る間にCPU201に読出し
オペレーシヨンを継続して実行させることによりキヤツ
シユ203のレジスタにも書き込まれるという事実と、の
利点を利用している。
I/O書込みオペレーシヨンの期間中CPU読出しオペレー
シヨンを可能にするために、アドレスの最小桁12ビツト
がキヤツシユRAM313に与えられ且つ最上桁8ビツトがCO
MP339に与えられる時に経由する2つの径路を与える。C
PU読出しオペレーシヨンにのみ用いられる最初の径路
は、バス225、バス307、mux309及びmux333からなつてお
り、全ての書込みオペレーシヨンに用いられる第2の径
路は、CPU読出しオペレーシヨンにおけるミスから生じ
る径路を含んでいるが、バスMA361、LA329、バス330、m
ux309及びmux333からなつている。最初の径路のアドレ
スは、バス225から直接受けられ、第2パスのアドレス
は、書込みオペレーシヨンがI/O書込みオペレーシヨン
である時バス227から且つ書込みオペレーシヨンがI/O書
込みオペレーシヨンである時バス227から且つ書込みオ
ペレーシヨンがCPU書込みオペレーシヨンでありあるい
はCPU読出しオペレーシヨンのキヤツシユミスから生じ
る時にLA327を経由してバス225から受け取られる。書込
みオペレーシヨンの期間中、第2径路のアドレスは、LA
329に保持される。どのアドレスが比較器339及びCAA311
への入力として選択されるかはCNT信号344によつて決定
される。このCNT信号344は、CPU読出しオペレーシヨン
に応答してキヤツシユctl343によつて発生される。CNT3
44がアクテイブである場合、mux309及びmux333は、バス
307からアドレスビツトを選択する。でなければ、バス3
30からアドレスビツトを選択する。バス330のアドレス
を用いてキヤツシユRAM313に行う書込みオペレーシヨン
は、バス307のアドレスを用いる次のCPU読出しオペレー
シヨンが起きる前に完了するようにタイミングがとられ
る。I/O書込みオペレーシヨンの期間中ミスがCPU読出し
オペレーシヨンに起きる場合、ext221は、I/O書込みオ
ペレーシヨンと及びCPU読出しオペレーシヨンにおいて
このミスを生じたアドレスにおけるデータのRAM313のロ
ードが完了する迄活性を保つ。
シヨンを可能にするために、アドレスの最小桁12ビツト
がキヤツシユRAM313に与えられ且つ最上桁8ビツトがCO
MP339に与えられる時に経由する2つの径路を与える。C
PU読出しオペレーシヨンにのみ用いられる最初の径路
は、バス225、バス307、mux309及びmux333からなつてお
り、全ての書込みオペレーシヨンに用いられる第2の径
路は、CPU読出しオペレーシヨンにおけるミスから生じ
る径路を含んでいるが、バスMA361、LA329、バス330、m
ux309及びmux333からなつている。最初の径路のアドレ
スは、バス225から直接受けられ、第2パスのアドレス
は、書込みオペレーシヨンがI/O書込みオペレーシヨン
である時バス227から且つ書込みオペレーシヨンがI/O書
込みオペレーシヨンである時バス227から且つ書込みオ
ペレーシヨンがCPU書込みオペレーシヨンでありあるい
はCPU読出しオペレーシヨンのキヤツシユミスから生じ
る時にLA327を経由してバス225から受け取られる。書込
みオペレーシヨンの期間中、第2径路のアドレスは、LA
329に保持される。どのアドレスが比較器339及びCAA311
への入力として選択されるかはCNT信号344によつて決定
される。このCNT信号344は、CPU読出しオペレーシヨン
に応答してキヤツシユctl343によつて発生される。CNT3
44がアクテイブである場合、mux309及びmux333は、バス
307からアドレスビツトを選択する。でなければ、バス3
30からアドレスビツトを選択する。バス330のアドレス
を用いてキヤツシユRAM313に行う書込みオペレーシヨン
は、バス307のアドレスを用いる次のCPU読出しオペレー
シヨンが起きる前に完了するようにタイミングがとられ
る。I/O書込みオペレーシヨンの期間中ミスがCPU読出し
オペレーシヨンに起きる場合、ext221は、I/O書込みオ
ペレーシヨンと及びCPU読出しオペレーシヨンにおいて
このミスを生じたアドレスにおけるデータのRAM313のロ
ードが完了する迄活性を保つ。
好適な実施例において、CPU201は、200nsの拡張され
ないサイクル時間を有しており、メモリ215は400nsのサ
イクル時間を有している。RAM313は、150nsより短い期
間においてロードされ次に読み出され得る。斯くして、
ヒツトによるCPU読出しの際、CPUサイクルの最後の50ns
において有効なデータはバス221のCPU201に得られる。
ミスによるCPU読出しの際、このミスを生じたアドレス
は、LA327からMAバス361及びこのミスを生じたCPUサイ
クルの終りの近くのLA329にラツチされる。このメモリ
オペレーシヨンを始めるRAS信号346は、CPUサイクルの
終りにおいてミスの場合に発生され、CAS信号は50ns後
に発生される。memRAM365から読み出されるデータは、
バス353あるいは355に更に100nsの間に現われ、50ns後
にLA335又はLA337にラツチされる。ここから、データは
RAM313に行き、このRAM313は、LA329におけるアドレス
に応答し且つomux303に応答して書込みオペレーシヨン
を実行する。このデータは、このキヤツシユミスを生じ
たCPU読出しオペレーシヨンの開始の後に600nsにCPU201
に得られる。
ないサイクル時間を有しており、メモリ215は400nsのサ
イクル時間を有している。RAM313は、150nsより短い期
間においてロードされ次に読み出され得る。斯くして、
ヒツトによるCPU読出しの際、CPUサイクルの最後の50ns
において有効なデータはバス221のCPU201に得られる。
ミスによるCPU読出しの際、このミスを生じたアドレス
は、LA327からMAバス361及びこのミスを生じたCPUサイ
クルの終りの近くのLA329にラツチされる。このメモリ
オペレーシヨンを始めるRAS信号346は、CPUサイクルの
終りにおいてミスの場合に発生され、CAS信号は50ns後
に発生される。memRAM365から読み出されるデータは、
バス353あるいは355に更に100nsの間に現われ、50ns後
にLA335又はLA337にラツチされる。ここから、データは
RAM313に行き、このRAM313は、LA329におけるアドレス
に応答し且つomux303に応答して書込みオペレーシヨン
を実行する。このデータは、このキヤツシユミスを生じ
たCPU読出しオペレーシヨンの開始の後に600nsにCPU201
に得られる。
ヒツトにするI/O書込みオペレーシヨンの際、バス227
からのアドレスは、LA329にラツチされ、メモリサイク
ルの最初の100nsの後にRAM313に得られる。比較が行な
われ、100ns後にヒツト信号が発生される。バス353又は
355からのデータは150ns後にmemRAM365及びLA335あるい
はLA339に書き込まれ、400nsの終りまでにキヤツシユRA
M313に書き込まれる。キヤツシユRAM313への書込みに用
いられるアドレスは、LA329から来る。ヒツトによるI/O
書込みオペレーシヨンが進行している間、これらのヒツ
トによるCPU読出しオペレーシヨンは、バス225及び307
を経由して受けられたアドレスを用いて実行され得る。
これらのCPU読出しオペレーシヨンは、書込みオペレー
シヨンから100nsずれている。前に述べたように、ヒツ
トによるCPU読出しオペレーシヨンは200nsかかる。斯く
して、I/O書込みオペレーシヨンが始まる前に開始され
たCPU読出しオペレーシヨンは、そのデータ100nsをI/O
書込みオペレーシヨンに対して受け且つ次のCPU読出し
オペレーシヨンはそのデータ300nsをI/O書込みオペレー
シヨンに対して受ける。次のCPU読出しオペレーシヨン
がそのデータ500nsをI/O書込みオペレーシヨンに対して
受け取り且つI/O書込みオペレーシヨンにおいて受け取
られたデータが400nsの終りまで記憶されているため、
このデータは次のCPU読出しオペレーシヨンに対して得
られる。
からのアドレスは、LA329にラツチされ、メモリサイク
ルの最初の100nsの後にRAM313に得られる。比較が行な
われ、100ns後にヒツト信号が発生される。バス353又は
355からのデータは150ns後にmemRAM365及びLA335あるい
はLA339に書き込まれ、400nsの終りまでにキヤツシユRA
M313に書き込まれる。キヤツシユRAM313への書込みに用
いられるアドレスは、LA329から来る。ヒツトによるI/O
書込みオペレーシヨンが進行している間、これらのヒツ
トによるCPU読出しオペレーシヨンは、バス225及び307
を経由して受けられたアドレスを用いて実行され得る。
これらのCPU読出しオペレーシヨンは、書込みオペレー
シヨンから100nsずれている。前に述べたように、ヒツ
トによるCPU読出しオペレーシヨンは200nsかかる。斯く
して、I/O書込みオペレーシヨンが始まる前に開始され
たCPU読出しオペレーシヨンは、そのデータ100nsをI/O
書込みオペレーシヨンに対して受け且つ次のCPU読出し
オペレーシヨンはそのデータ300nsをI/O書込みオペレー
シヨンに対して受ける。次のCPU読出しオペレーシヨン
がそのデータ500nsをI/O書込みオペレーシヨンに対して
受け取り且つI/O書込みオペレーシヨンにおいて受け取
られたデータが400nsの終りまで記憶されているため、
このデータは次のCPU読出しオペレーシヨンに対して得
られる。
(4)結論 この好適な実施例の上記の説明は、当業者がメモリへ
の書込み毎に自動的に更新される単純化されたキヤツシ
ユを含むメモリシステムを以下に構成し且つ用いるかに
ついて開示している。この説明によつて、好適な実施例
における諸要素の構成及びCPU読出しオペレーシヨン、C
PU書込みオペレーシヨン、I/O読出しオペレーシヨン、
及びI/O書込みオペレーシヨンに応答するそれらのオペ
レーシヨンが開示されている。しかしながら、本発明
は、本発明の精神又は本質的な特徴から逸脱することな
く本明細書に開示された形以外の特定の形に実施され得
る。例えば、他の実施例は、データをバイトあるいはハ
ーフワードとして記憶しないメモリ及びキヤツシユを使
用し得る。そして斯かるシステムでは、cwh363及びcwl3
65は、唯1つの信号に置き換えられ且つswctl371等の信
号は必要ない。また他の実施例は、メモリとI/O又はメ
モリとCPUとの間のサイズと同じキヤツシユとメモリの
バスのサイズを用いることができる。斯かる実施例の場
合、ハーフワードとバイトの選択に関する好適な実施例
の諸部分は必要とされない。本発明は更に、メモリ又は
キヤツシユのサイズ、アドレスのサイズ、あるいはバス
のサイズ等の変数に依存するものではない。最後に、キ
ヤツシユはCPUだけではなくデータシンク等の機能を行
う任意のデバイスにもデータを出力し得る。
の書込み毎に自動的に更新される単純化されたキヤツシ
ユを含むメモリシステムを以下に構成し且つ用いるかに
ついて開示している。この説明によつて、好適な実施例
における諸要素の構成及びCPU読出しオペレーシヨン、C
PU書込みオペレーシヨン、I/O読出しオペレーシヨン、
及びI/O書込みオペレーシヨンに応答するそれらのオペ
レーシヨンが開示されている。しかしながら、本発明
は、本発明の精神又は本質的な特徴から逸脱することな
く本明細書に開示された形以外の特定の形に実施され得
る。例えば、他の実施例は、データをバイトあるいはハ
ーフワードとして記憶しないメモリ及びキヤツシユを使
用し得る。そして斯かるシステムでは、cwh363及びcwl3
65は、唯1つの信号に置き換えられ且つswctl371等の信
号は必要ない。また他の実施例は、メモリとI/O又はメ
モリとCPUとの間のサイズと同じキヤツシユとメモリの
バスのサイズを用いることができる。斯かる実施例の場
合、ハーフワードとバイトの選択に関する好適な実施例
の諸部分は必要とされない。本発明は更に、メモリ又は
キヤツシユのサイズ、アドレスのサイズ、あるいはバス
のサイズ等の変数に依存するものではない。最後に、キ
ヤツシユはCPUだけではなくデータシンク等の機能を行
う任意のデバイスにもデータを出力し得る。
第1図は、先行技術に係るデータキヤツシユを含むデジ
タルコンピユータシステムのブロツク図。第2図は、本
発明に係るデータキヤツシユを含むデジタルコンピユー
タシステムのブロツク図。第3図及び第3A図は、本発明
に係るデータキヤツシユの好適な実施例の詳細なブロツ
ク図。 図面に用いられている参照数字は、三桁を有している。
最上桁は、この参照数字によつて参照されるアイテムが
最初に現われる図面の番号である。従つて、参照数字21
5は、第2図に示されるアイテムを参照している。 201……CPU、203……キヤツシユ、205……記憶装置、20
7……データ、208……レジスタ、209……タグ、211……
制御装置、212……ラツチ、215……メモリ、217……I/
O。
タルコンピユータシステムのブロツク図。第2図は、本
発明に係るデータキヤツシユを含むデジタルコンピユー
タシステムのブロツク図。第3図及び第3A図は、本発明
に係るデータキヤツシユの好適な実施例の詳細なブロツ
ク図。 図面に用いられている参照数字は、三桁を有している。
最上桁は、この参照数字によつて参照されるアイテムが
最初に現われる図面の番号である。従つて、参照数字21
5は、第2図に示されるアイテムを参照している。 201……CPU、203……キヤツシユ、205……記憶装置、20
7……データ、208……レジスタ、209……タグ、211……
制御装置、212……ラツチ、215……メモリ、217……I/
O。
フロントページの続き (56)参考文献 特開 昭60−10366(JP,A) 特開 昭58−114387(JP,A) 特開 昭57−105879(JP,A)
Claims (8)
- 【請求項1】アドレスに応答してデータを記憶し出力す
るためのアドレス指定可能データ記憶装置において、 (1)アドレス供給手段(227、225)と、 (2)データ・バス手段(214)と、 (3)前記アドレス供給手段と前記データ・バス手段と
に接続されており、前記アドレス供給手段上のアドレス
に読み出し動作の間に応答するメモリ手段であって、前
記応答は、禁止されない限りは、前記アドレスによって
特定されるメモリ位置における前記データを前記データ
・バス手段上に出力することによってなされる、メモリ
手段(215)と、 (4)前記データ・バス手段に接続されており、前記デ
ータ・バス手段上に現れる前記メモリ手段に書き込まれ
る又は前記メモリ手段から読み出されるすべてのデータ
を記憶するラッチ手段(213)と、 (5)前記アドレス供給手段と前記メモリ手段とに接続
されており、前記ラッチ手段の出力に接続されたデータ
入力とデータ出力(221)とを有し、前記メモリ手段に
記憶された前記データの一部分のコピーを該一部分のデ
ータを含む前記メモリ位置に対応するキャッシュ位置で
記憶し、前記アドレス指定されたメモリ位置が対応する
キャッシュ位置を有する場合には前記コピーを前記デー
タ出力に出力し前記メモリ手段を禁止することにより前
記アドレス位置に応答し、前記アドレス指定されたメモ
リ位置が対応するキャッシュ位置を有していない場合に
は対応するキャッシュ位置を作成し前記ラッチに記憶さ
れた前記データを前記データ入力を用いて受け取り前記
受け取られたデータを前記作成された対応するキャッシ
ュ位置に記憶することによって前記アドレスに応答し、
前記ラッチ手段に記憶された前記データを前記読み出し
動作によって開始された回路による受け取りのために前
記データ出力(221)に出力する、エンキャッシュメン
ト手段(211、205)と、 を備えていることを特徴とするアドレス指定可能データ
記憶装置。 - 【請求項2】請求項1記載のデータ記憶装置において、 前記データ記憶装置は、更に、前記メモリ手段と前記エ
ンキャッシュメント手段とに接続された書き込み信号供
給手段(233、235)を含んでおり、 前記データ・バス手段は、更に、前記メモリ手段にデー
タを供給し、 前記メモリ手段は、前記アドレスによって特定された前
記メモリ位置で前記メモリ手段に前記データ・バス手段
上に供給された前記データを記憶することによって、前
記書き込み信号供給手段上の書き込み信号と前記アドレ
スとに応答し、 前記エンキャッシュメント手段は、前記エンキャッシュ
メント手段が前記アドレス指定されたメモリ位置に対応
するキャッシュ位置を含む場合には、前記データを前記
特定されたメモリ位置に記憶する前記メモリ手段と並列
に、前記データ入力を用いて前記ラッチ手段に記憶され
た前記データを受け取り前記受け取られたデータを前記
対応するキャッシュ位置に記憶することによって、前記
書き込み信号と前記アドレスとに応答する、ことを特徴
とするデータ記憶装置。 - 【請求項3】請求項1記載のデータ記憶装置において、 メモリ手段書込み動作に応答して動作し、前記エンキャ
ッシュメント手段において前記コピーされたデータのア
ドレスを検出し、前記ラッチ手段に記憶されたデータを
前記データの前記コピーが記憶されている位置にロード
することによって、前記検出されたアドレスに応答する
手段(339、343)を更に備えていることを特徴とするデ
ータ記憶装置。 - 【請求項4】請求項1記載のデータ記憶装置において、 前記メモリ手段によって受け取られたアドレスがコピー
されたデータを有する前記エンキャッシュメント手段に
おける位置に対応するアドレスではないことを検出し、
前記ラッチ手段に記憶された前記データを前記メモリ手
段によって受け取られた前記アドレスによってアドレス
指定可能な位置にロードする手段(339、343)を備えて
いることを特徴とするデータ記憶装置。 - 【請求項5】請求項1記載のデータ記憶装置であって、
前記エンキャッシュメント手段は、前記メモリ手段がメ
モリ書き込み動作を実行するよりも実質的に速くキャッ
シュ読み出し動作とキャッシュ書き込み動作とを実行す
るデータ記憶装置における、前記メモリ手段がメモリ書
き込み動作を実行している間にキャッシュ読み出し動作
を実行する装置において、 (1)前記データ・バス手段(214)は、前記エンキャ
ッシュメント手段と前記メモリ手段とに接続されてお
り、書き込まれるべきデータを前記メモリ手段と前記エ
ンキャッシュメント手段とに実質的に同時に供給し、 (2)キャッシュ読み出し動作において用いるために、
第1のアドレスを前記エンキャッシュメント手段に供給
する第1のアドレス供給手段(225、307)と、 (3)メモリ書き込み動作において用いられる第2のア
ドレスを受け取り、前記第2のアドレスをキャッシュ書
き込み動作において用いるために前記エンキャッシュメ
ント手段に供給する第2のアドレス供給手段(227、32
9)と、 (4)前記第1及び第2のアドレス供給手段と前記エン
キャッシュメント手段とに接続されており、前記エンキ
ャッシュメント手段が前記キャッシュ書き込み動作を開
始することを要求される前に、前記データ供給手段(21
4)上の前記データを用いることにより前記第1のアド
レスを選択して前記エンキャッシュメント手段に供給
し、前記第2のアドレスを選択して前記エンキャッシュ
メント手段に供給して前記キャッシュ書き込み動作を実
行する選択手段(309)と、 を備えることを特徴とするキャッシュ読み出し動作実行
装置。 - 【請求項6】メモリ読み出し信号(233)と第1のアド
レス(225)とを生成するデータ・シンク(201)と共に
用いられるメモリ・システムにおいて、 データ転送手段(214)と、 前記データ転送手段に接続されており、ヒット信号(22
9)によって禁止されない限り、前記第1のアドレスに
よって特定されたメモリ位置から前記データ転送手段に
データを出力することによって、前記メモリ読み出し信
号と前記第1のアドレスとに応答するメモリ手段(21
5)と、 前記メモリ手段、前記データ・シンク、及び前記データ
転送手段に接続されており、前記メモリ手段に記憶され
た前記データの一部分のコピーを前記記憶された一部分
のデータのメモリ位置に対応するキャッシュ位置に記憶
し、対応するキャッシュ位置を有するメモリ位置を前記
第1のアドレスが特定する場合には前記キャッシュ位置
から前記データ・シンクに前記コピーを出力し前記ヒッ
ト信号を前記メモリ手段に提供することによって、前記
メモリ読み出し信号と前記第1のアドレスとに応答し、
それによって、前記エンキャッシュメント手段が前記特
定された位置において前記データのコピーを含む場合に
は、前記メモリ・システムからの出力データは、前記メ
モリ手段からではなく前記エンキャッシュメント手段か
ら出力される、エンキャッシュメント手段と、を備えて
おり、 前記メモリ・システムは、更に、メモリ書き込み信号
(235)と第2のアドレス(227)とを生じるデータ・ソ
ース(217)と共に用いられ、 前記データ転送手段は、前記データ・ソースに接続さ
れ、そこからデータを受け取り、 前記メモリ手段は、前記データ・ソースから受け取った
データを前記第2のアドレスによって特定されるメモリ
位置に記憶することによって、前記メモリ書き込み信号
と前記第2のアドレスとに応答し、 前記エンキャッシュメント手段は、前記第2のアドレス
が対応するキャッシュ位置を有するメモリ位置を特定す
る場合には、前記データ・ソースからのデータを前記対
応するキャッシュ位置に記憶することによって、前記メ
モリ書き込み信号と前記第2のアドレスとに応答する、
ことを特徴とするメモリ・システム。 - 【請求項7】請求項6記載のメモリ・システムにおい
て、 前記データ・シンクは拡張信号(231)によって前記エ
ンキャッシュメント手段からデータを受信することを禁
止され、 前記エンキャッシュメント手段は、前記特定されたメモ
リ位置が対応するキャッシュ位置を有さない場合には、
前記エンキャッシュメント手段が前記メモリ手段から前
記データ転送手段を経由して前記データを受け取り前記
データを前記データ・シンクに供給するまで前記拡張信
号を発生することによって、前記メモリ読み出し信号と
前記第1のアドレスとに更に応答する、ことを特徴とす
るメモリ・システム。 - 【請求項8】請求項7記載のメモリ・システムにおい
て、 前記エンキャッシュメント手段は、前記特定されたメモ
リ位置が対応するキャッシュ位置を有さない場合には、
前記特定されたメモリ位置に対応するキャッシュ記憶位
置を選択し前記受け取ったデータを前記選択したキャッ
シュ記憶位置に記憶することによって、前記メモリ読み
出し信号と前記第1のアドレスとに更に応答する、こと
を特徴とするメモリ・システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/704,359 US4685082A (en) | 1985-02-22 | 1985-02-22 | Simplified cache with automatic update |
US704359 | 1985-02-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61195441A JPS61195441A (ja) | 1986-08-29 |
JP2619859B2 true JP2619859B2 (ja) | 1997-06-11 |
Family
ID=24829145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61037181A Expired - Lifetime JP2619859B2 (ja) | 1985-02-22 | 1986-02-21 | 自動更新する単純化キャッシュ |
Country Status (6)
Country | Link |
---|---|
US (1) | US4685082A (ja) |
EP (1) | EP0192202B1 (ja) |
JP (1) | JP2619859B2 (ja) |
AU (1) | AU580382B2 (ja) |
CA (1) | CA1255395A (ja) |
DE (1) | DE3689488T2 (ja) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5255384A (en) * | 1985-02-22 | 1993-10-19 | Intergraph Corporation | Memory address translation system having modifiable and non-modifiable translation mechanisms |
US4933835A (en) * | 1985-02-22 | 1990-06-12 | Intergraph Corporation | Apparatus for maintaining consistency of a cache memory with a primary memory |
US4860192A (en) * | 1985-02-22 | 1989-08-22 | Intergraph Corporation | Quadword boundary cache system |
US4899275A (en) * | 1985-02-22 | 1990-02-06 | Intergraph Corporation | Cache-MMU system |
US4884197A (en) * | 1985-02-22 | 1989-11-28 | Intergraph Corporation | Method and apparatus for addressing a cache memory |
KR950008676B1 (ko) * | 1986-04-23 | 1995-08-04 | 가부시기가이샤 히다찌세이사꾸쇼 | 반도체 메모리 장치 및 그의 결함 구제 방법 |
US4797810A (en) * | 1986-06-26 | 1989-01-10 | Texas Instruments Incorporated | Incremental, multi-area, generational, copying garbage collector for use in a virtual address space |
EP0259967B1 (en) * | 1986-08-01 | 1994-03-23 | Fujitsu Limited | Directory memory |
US5091846A (en) * | 1986-10-03 | 1992-02-25 | Intergraph Corporation | Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency |
US4972316A (en) * | 1987-03-30 | 1990-11-20 | International Business Machines Corporation | Method of handling disk sector errors in DASD cache |
US4851993A (en) * | 1987-04-20 | 1989-07-25 | Amdahl Corporation | Cache move-in bypass |
US5155833A (en) * | 1987-05-11 | 1992-10-13 | At&T Bell Laboratories | Multi-purpose cache memory selectively addressable either as a boot memory or as a cache memory |
JP2960415B2 (ja) * | 1987-05-22 | 1999-10-06 | 株式会社日立製作所 | 記憶保護方法および装置 |
US5179687A (en) * | 1987-09-26 | 1993-01-12 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device containing a cache and an operation method thereof |
US5008816A (en) * | 1987-11-06 | 1991-04-16 | International Business Machines Corporation | Data processing system with multi-access memory |
US5184320A (en) * | 1988-02-12 | 1993-02-02 | Texas Instruments Incorporated | Cached random access memory device and system |
US5230067A (en) * | 1988-05-11 | 1993-07-20 | Digital Equipment Corporation | Bus control circuit for latching and maintaining data independently of timing event on the bus until new data is driven onto |
US4939641A (en) * | 1988-06-30 | 1990-07-03 | Wang Laboratories, Inc. | Multi-processor system with cache memories |
US5097409A (en) * | 1988-06-30 | 1992-03-17 | Wang Laboratories, Inc. | Multi-processor system with cache memories |
US4928225A (en) * | 1988-08-25 | 1990-05-22 | Edgcore Technology, Inc. | Coherent cache structures and methods |
US4945512A (en) * | 1988-09-07 | 1990-07-31 | Unisys Corporation | High-speed partitioned set associative cache memory |
US5201041A (en) * | 1988-12-29 | 1993-04-06 | International Business Machines Corporation | Cache bypass apparatus |
DE68921332T2 (de) * | 1989-01-13 | 1995-08-10 | Ibm | Rechneranordnungen mit Ein-/Ausgabecachespeicher. |
US7447069B1 (en) | 1989-04-13 | 2008-11-04 | Sandisk Corporation | Flash EEprom system |
DE69033438T2 (de) * | 1989-04-13 | 2000-07-06 | Sandisk Corp., Santa Clara | Austausch von fehlerhaften Speicherzellen einer EEprommatritze |
DE69031658T2 (de) * | 1989-09-11 | 1998-05-20 | Wang Laboratories | Vorrichtung und verfahren für instandhaltung von cache/zentralspeicherkonsistenz |
JP2826857B2 (ja) * | 1989-12-13 | 1998-11-18 | 株式会社日立製作所 | キャッシュ制御方法および制御装置 |
DE69025302T2 (de) * | 1989-12-22 | 1996-10-02 | Digital Equipment Corp | Hochleistungsrasterpuffer- und -cachespeicheranordnung |
US5467460A (en) * | 1990-02-14 | 1995-11-14 | Intel Corporation | M&A for minimizing data transfer to main memory from a writeback cache during a cache miss |
US5454093A (en) * | 1991-02-25 | 1995-09-26 | International Business Machines Corporation | Buffer bypass for quick data access |
JPH0520197A (ja) * | 1991-07-09 | 1993-01-29 | Hitachi Ltd | 記憶管理システム及びマイクロプロセツサ |
GB9424100D0 (en) * | 1994-11-29 | 1995-01-18 | Accelerix Ltd | Improved memory devices |
US5752262A (en) * | 1996-07-25 | 1998-05-12 | Vlsi Technology | System and method for enabling and disabling writeback cache |
US6341338B1 (en) * | 1999-02-04 | 2002-01-22 | Sun Microsystems, Inc. | Protocol for coordinating the distribution of shared memory |
US6263408B1 (en) * | 1999-03-31 | 2001-07-17 | International Business Machines Corporation | Method and apparatus for implementing automatic cache variable update |
US7035989B1 (en) | 2000-02-16 | 2006-04-25 | Sun Microsystems, Inc. | Adaptive memory allocation |
US6647546B1 (en) | 2000-05-03 | 2003-11-11 | Sun Microsystems, Inc. | Avoiding gather and scatter when calling Fortran 77 code from Fortran 90 code |
US6802057B1 (en) | 2000-05-03 | 2004-10-05 | Sun Microsystems, Inc. | Automatic generation of fortran 90 interfaces to fortran 77 code |
US6910107B1 (en) * | 2000-08-23 | 2005-06-21 | Sun Microsystems, Inc. | Method and apparatus for invalidation of data in computer systems |
US7406681B1 (en) | 2000-10-12 | 2008-07-29 | Sun Microsystems, Inc. | Automatic conversion of source code from 32-bit to 64-bit |
US6957208B1 (en) | 2000-10-31 | 2005-10-18 | Sun Microsystems, Inc. | Method, apparatus, and article of manufacture for performance analysis using semantic knowledge |
WO2003001406A1 (en) * | 2001-06-25 | 2003-01-03 | Nokia Corporation | Copying method and system for copying cells in a database |
US7454581B2 (en) * | 2004-10-27 | 2008-11-18 | International Business Machines Corporation | Read-copy update grace period detection without atomic instructions that gracefully handles large numbers of processors |
CN106255961B (zh) * | 2014-05-09 | 2020-03-31 | 索尼公司 | 存储控制设备、存储设备及存储控制方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4141067A (en) * | 1977-06-13 | 1979-02-20 | General Automation | Multiprocessor system with cache memory |
JPS5953631B2 (ja) * | 1979-08-24 | 1984-12-26 | 株式会社日立製作所 | 記憶制御装置 |
US4349871A (en) * | 1980-01-28 | 1982-09-14 | Digital Equipment Corporation | Duplicate tag store for cached multiprocessor system |
JPS57105879A (en) * | 1980-12-23 | 1982-07-01 | Hitachi Ltd | Control system for storage device |
US4445177A (en) * | 1981-05-22 | 1984-04-24 | Data General Corporation | Digital data processing system utilizing a unique arithmetic logic unit for handling uniquely identifiable addresses for operands and instructions |
JPS58114387A (ja) * | 1981-12-25 | 1983-07-07 | Fujitsu Ltd | バツフア・メモリを有するデ−タ処理装置 |
JPS6010366A (ja) * | 1983-06-30 | 1985-01-19 | Mitsubishi Electric Corp | 主記憶装置 |
-
1985
- 1985-02-22 US US06/704,359 patent/US4685082A/en not_active Expired - Lifetime
-
1986
- 1986-01-30 AU AU52872/86A patent/AU580382B2/en not_active Expired
- 1986-02-14 EP EP86101910A patent/EP0192202B1/en not_active Expired - Lifetime
- 1986-02-14 DE DE3689488T patent/DE3689488T2/de not_active Expired - Lifetime
- 1986-02-20 CA CA000502329A patent/CA1255395A/en not_active Expired
- 1986-02-21 JP JP61037181A patent/JP2619859B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE3689488D1 (de) | 1994-02-17 |
EP0192202A2 (en) | 1986-08-27 |
EP0192202B1 (en) | 1994-01-05 |
JPS61195441A (ja) | 1986-08-29 |
US4685082A (en) | 1987-08-04 |
AU5287286A (en) | 1986-10-16 |
DE3689488T2 (de) | 1994-07-14 |
EP0192202A3 (en) | 1989-05-24 |
CA1255395A (en) | 1989-06-06 |
AU580382B2 (en) | 1989-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2619859B2 (ja) | 自動更新する単純化キャッシュ | |
CA1124888A (en) | Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability | |
US4928225A (en) | Coherent cache structures and methods | |
US5201041A (en) | Cache bypass apparatus | |
US4520441A (en) | Data processing system | |
JPS5936350B2 (ja) | キヤツシユ・アクセス方式 | |
US6151658A (en) | Write-buffer FIFO architecture with random access snooping capability | |
JPS60147857A (ja) | 再構成可能メモリシステム | |
JPH0321934B2 (ja) | ||
JPH0863958A (ja) | ランダム・アクセス・メモリ・システムおよびランダム・アクセス・メモリ | |
JPH087718B2 (ja) | コンピュータメモリシステム | |
JPH0752404B2 (ja) | メモリ・システム | |
JPS607301B2 (ja) | コンピュ−タ・システム | |
JPH0529945B2 (ja) | ||
US5226170A (en) | Interface between processor and special instruction processor in digital data processing system | |
JPH10187530A (ja) | プログラム可能なメモリ・アクセス | |
JPH06259323A (ja) | デュアルポートデータキャッシュメモリ | |
US5010475A (en) | Consistency ensuring system for the contents of a cache memory | |
US5553270A (en) | Apparatus for providing improved memory access in page mode access systems with pipelined cache access and main memory address replay | |
US5359557A (en) | Dual-port array with storage redundancy having a cross-write operation | |
JPH07248963A (ja) | Dram制御装置 | |
JPH0529946B2 (ja) | ||
EP0375864A2 (en) | Cache bypass | |
KR960007833B1 (ko) | 고속 페이지 모드 선택을 위한 방법 및 장치 | |
JPH05120124A (ja) | マイクロプロセツサ内蔵型のメモリ制御構造 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |