JPH02224043A - キャッシュメモリ - Google Patents
キャッシュメモリInfo
- Publication number
- JPH02224043A JPH02224043A JP63289470A JP28947088A JPH02224043A JP H02224043 A JPH02224043 A JP H02224043A JP 63289470 A JP63289470 A JP 63289470A JP 28947088 A JP28947088 A JP 28947088A JP H02224043 A JPH02224043 A JP H02224043A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- memory
- address
- block
- cache memory
- 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
Links
- 230000009977 dual effect Effects 0.000 claims abstract description 8
- 230000002542 deteriorative effect Effects 0.000 abstract 1
- 238000000034 method Methods 0.000 description 7
- 239000013256 coordination polymer Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 1
Landscapes
- Static Random-Access Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はキャッシュメモリに関し、特にCPU側のアク
セスとメモリバス側アクセスの並行処理を行うキャッシ
ュメモリに関する。
セスとメモリバス側アクセスの並行処理を行うキャッシ
ュメモリに関する。
従来、シングルボートメモリセルを用いたキャッシュメ
モリでは、1つのアドレスに対するアクセスしか処理で
きないため、キャッシュミスによるメインメモリからの
キャッシュメモリの書き換えのためのライ■・アクセス
とCPUからのアクセスとを同時に処理することができ
ない。通常、CP Uアクセスがキャッシュミスすると
、CPUが要求しているデータをメインメモリに取りに
行き、キャッシュメモリの内容を書換えると同時にcp
uヘデータを渡す。
モリでは、1つのアドレスに対するアクセスしか処理で
きないため、キャッシュミスによるメインメモリからの
キャッシュメモリの書き換えのためのライ■・アクセス
とCPUからのアクセスとを同時に処理することができ
ない。通常、CP Uアクセスがキャッシュミスすると
、CPUが要求しているデータをメインメモリに取りに
行き、キャッシュメモリの内容を書換えると同時にcp
uヘデータを渡す。
ここでキャッシュのヒツト率を向上させるために用いら
れる手法として、キャッシュミスによるキャッシュメモ
リのN換え単位(以下ブロックサイズという)をCPU
バス暢の4倍程度(32ビツトCPUならば16バイト
)にすることがある、この時、キャッシュメモリとメイ
ンメモリとの間のバス幅よりブロックサイズが大きい場
合は、メインメモリからキャッシュメモリへの転送(以
下ブロックロードという)は何回かに分けて行なわれる
。例えば、ブロックサイズが16バイト2メモリバス幅
が32ビツトの場合、2回転送されるわけであるが、そ
の転送の度にキャッシュメモリの更新が行なわれるなめ
、従来のキャッシュメモリでは、その間cpuはキャッ
シュメモリをアクセスすることができなかった6通常、
メインメモリのアクセス・サイクルは、CPIJアクセ
ス・サイクルに比べ長い時間がかかるなめ、ブロックロ
ード中にCPUがアクセスできないということは、CP
Uのスループッ1−を低下させてしまう。
れる手法として、キャッシュミスによるキャッシュメモ
リのN換え単位(以下ブロックサイズという)をCPU
バス暢の4倍程度(32ビツトCPUならば16バイト
)にすることがある、この時、キャッシュメモリとメイ
ンメモリとの間のバス幅よりブロックサイズが大きい場
合は、メインメモリからキャッシュメモリへの転送(以
下ブロックロードという)は何回かに分けて行なわれる
。例えば、ブロックサイズが16バイト2メモリバス幅
が32ビツトの場合、2回転送されるわけであるが、そ
の転送の度にキャッシュメモリの更新が行なわれるなめ
、従来のキャッシュメモリでは、その間cpuはキャッ
シュメモリをアクセスすることができなかった6通常、
メインメモリのアクセス・サイクルは、CPIJアクセ
ス・サイクルに比べ長い時間がかかるなめ、ブロックロ
ード中にCPUがアクセスできないということは、CP
Uのスループッ1−を低下させてしまう。
この問題に対するキャッシュメモリの・一つの解決法と
して、メインメモリとキャッシュメモリの間にブロック
ロードによって転送されたデータを保持するバッファ(
以下ブロックロードバッファという)を備え、ブロック
ロード中はそのバッフ・Tへ転送し、ブロックが全部揃
ったところで、キャッシュメモリの更新を行な・うとい
う手段がある。この方法によれば、ブロックロード中で
もブロックロードの終了時にキャッシュメモリの更新を
行なう時を除いて、CPUはキャッシュメモリをアクセ
スすることができる。
して、メインメモリとキャッシュメモリの間にブロック
ロードによって転送されたデータを保持するバッファ(
以下ブロックロードバッファという)を備え、ブロック
ロード中はそのバッフ・Tへ転送し、ブロックが全部揃
ったところで、キャッシュメモリの更新を行な・うとい
う手段がある。この方法によれば、ブロックロード中で
もブロックロードの終了時にキャッシュメモリの更新を
行なう時を除いて、CPUはキャッシュメモリをアクセ
スすることができる。
しか17、この方法でもバッファからキャッシュメモリ
の書換え時には、そのアドレスがCP tJアドレスと
一致しているか否かによらずCPUアクセスが待たされ
、またバッファも大量のハードウェアが要求される。例
えば、ブロックサイズ16バイトの場合、】28ビツト
・分のバッファが必要となる。
の書換え時には、そのアドレスがCP tJアドレスと
一致しているか否かによらずCPUアクセスが待たされ
、またバッファも大量のハードウェアが要求される。例
えば、ブロックサイズ16バイトの場合、】28ビツト
・分のバッファが必要となる。
上述した従来のキャッシュメモリは、シングルボーI・
メモリセルを採用しているため、CPU側のキャッシュ
メモリに対するアクセスと、メインメモリ側からのキャ
ッシュメモリの書換えのためのアクセスが異なるアドレ
スであっても同時に処理できないという欠点がある。ま
た、そのためにキャッシュのヒツト率を向上させようと
してブロックサイズを大きくすると、CPUのスルーブ
ツトが低下したり、バッファのハードウェアが必要とな
るという間がかある。
メモリセルを採用しているため、CPU側のキャッシュ
メモリに対するアクセスと、メインメモリ側からのキャ
ッシュメモリの書換えのためのアクセスが異なるアドレ
スであっても同時に処理できないという欠点がある。ま
た、そのためにキャッシュのヒツト率を向上させようと
してブロックサイズを大きくすると、CPUのスルーブ
ツトが低下したり、バッファのハードウェアが必要とな
るという間がかある。
本発明の目的は、このような問題を除き、CPLJ側の
アクセスのアドレスとメモリバス側のアクセスのアドレ
スが異なる場合にはどちらのアクセスも待たせることな
く処理することができ、ブロックロードバッファを備え
なくともアクセスを待たせることなくブロックサイズを
大きくすることができるキャッシュメモリを提供するこ
とにある9 〔課題を解決するための手段〕 本発明のキャッシュメモリの構成は、CPU側のブロッ
クアト1/スとメモリバス側のブロックアドレスとを比
較し、これらが一致した時一致信号を出力する比較回路
と、この比較回路から2つのアト1/スが一致した場合
どちらか一方のアドレスのアクセスを優先させるイネー
ブル信号および残りの一方へは待ち合わせ中であること
を示すビジー信号を返す優先順位制御回路と、前記CP
U側のブロックアドレスおよび前記メモリバス側のブロ
ックアドレスとそれぞれ接続されいずれか一方に前記イ
ネーブル信号を接続した第1および第2のデコーダと、
これら第1および第2のデコーダとそれぞれ接続されか
つ前記CP tJ側データおよび前記メモリバス側デ・
−夕をそれぞれX、/O回路を介して接続したデュアル
ポート・・メモリセルアレイとを備えたことを特徴とす
る。
アクセスのアドレスとメモリバス側のアクセスのアドレ
スが異なる場合にはどちらのアクセスも待たせることな
く処理することができ、ブロックロードバッファを備え
なくともアクセスを待たせることなくブロックサイズを
大きくすることができるキャッシュメモリを提供するこ
とにある9 〔課題を解決するための手段〕 本発明のキャッシュメモリの構成は、CPU側のブロッ
クアト1/スとメモリバス側のブロックアドレスとを比
較し、これらが一致した時一致信号を出力する比較回路
と、この比較回路から2つのアト1/スが一致した場合
どちらか一方のアドレスのアクセスを優先させるイネー
ブル信号および残りの一方へは待ち合わせ中であること
を示すビジー信号を返す優先順位制御回路と、前記CP
U側のブロックアドレスおよび前記メモリバス側のブロ
ックアドレスとそれぞれ接続されいずれか一方に前記イ
ネーブル信号を接続した第1および第2のデコーダと、
これら第1および第2のデコーダとそれぞれ接続されか
つ前記CP tJ側データおよび前記メモリバス側デ・
−夕をそれぞれX、/O回路を介して接続したデュアル
ポート・・メモリセルアレイとを備えたことを特徴とす
る。
次に本発明について図面を参照して説明する。
第1図は本発明の一実施例のブロック図であり、本発明
に関係する部分のみを示している。
に関係する部分のみを示している。
アドレス比較回路1は、E)I−ORゲート7」、72
、ANDゲー■・73から成っており゛、EX−ORゲ
ート−71,72はCPU側ブロックアドレスj、0.
1.1と、メモリバス側ブロツクアドレス20.21を
それぞれ入力し、一致していたらANDゲート73A、
一致信号を出力する。このANDゲート73はすべての
EX〜ORゲート71.72の一致信号を入力した場合
にのみ一致信号5〕、を出力する。
、ANDゲー■・73から成っており゛、EX−ORゲ
ート−71,72はCPU側ブロックアドレスj、0.
1.1と、メモリバス側ブロツクアドレス20.21を
それぞれ入力し、一致していたらANDゲート73A、
一致信号を出力する。このANDゲート73はすべての
EX〜ORゲート71.72の一致信号を入力した場合
にのみ一致信号5〕、を出力する。
優先順位制御回路2は、CPU側ブロツクアドレス/O
.11と、メモリ・バス側ブロツクアドレス20.21
が一致していなければ8ワ一ドイネーブル信号52をデ
コーダ4に出力する。−・致していた場合には、ビジー
信号53をCPUへ出力する。デコーダ4はワードイネ
ーブル信号52が入力された場合のみデュアルボー1−
メモリセルアレイ3のワード線を活性化する。デコーダ
5はメモリバス側ブロツクアドレスを入力しデュアルポ
ートメモリセルアレイ3のワード線な活性化する。I/
O回路6はCPU側ではCPUデータをデュアルポート
メモリアレイ3に入出力し、メモリバス側ではメインメ
モリからのデータを入力し、デュアルボーI・メモリア
レイ3に書キ込む。
.11と、メモリ・バス側ブロツクアドレス20.21
が一致していなければ8ワ一ドイネーブル信号52をデ
コーダ4に出力する。−・致していた場合には、ビジー
信号53をCPUへ出力する。デコーダ4はワードイネ
ーブル信号52が入力された場合のみデュアルボー1−
メモリセルアレイ3のワード線を活性化する。デコーダ
5はメモリバス側ブロツクアドレスを入力しデュアルポ
ートメモリセルアレイ3のワード線な活性化する。I/
O回路6はCPU側ではCPUデータをデュアルポート
メモリアレイ3に入出力し、メモリバス側ではメインメ
モリからのデータを入力し、デュアルボーI・メモリア
レイ3に書キ込む。
なお、ブロックアト1ノスとは、キャッシュミスによる
キャッシュメモリの内容の書換え単位であるブロックを
示すアドレスのことである。
キャッシュメモリの内容の書換え単位であるブロックを
示すアドレスのことである。
本実施例によれば、CPU側のアクセスのアト1/スど
メモリバス側アクセスの7′ドレスが異なる場合にはど
ちらのアクセスも待たせることなく処理することができ
、従・って、ブロックロードバッファを備えなくともC
PUのキャッシュメモリへのアクセスを待たせることな
くブロック・サイズを大きくすることができる8 ただし1、デュアルポート・メモリセルでも同一アドレ
スでのリードとライトまたはライトとライトの同時アク
セスはできないため、同一アドレスでの同時アクセス時
のみCPU側アクセスを待たせることになる。
メモリバス側アクセスの7′ドレスが異なる場合にはど
ちらのアクセスも待たせることなく処理することができ
、従・って、ブロックロードバッファを備えなくともC
PUのキャッシュメモリへのアクセスを待たせることな
くブロック・サイズを大きくすることができる8 ただし1、デュアルポート・メモリセルでも同一アドレ
スでのリードとライトまたはライトとライトの同時アク
セスはできないため、同一アドレスでの同時アクセス時
のみCPU側アクセスを待たせることになる。
第2図は本発明の第2の実施例のブロック図である。E
X−ORゲーt−74,75はCPU倶1ワ・−ドアド
レス30.31と、メモリバス側ワードアドレス40.
41をそれぞれ比較しANDゲ・−ドア3に出力する。
X−ORゲーt−74,75はCPU倶1ワ・−ドアド
レス30.31と、メモリバス側ワードアドレス40.
41をそれぞれ比較しANDゲ・−ドア3に出力する。
この実施例では、CPU側のブロックアドレス]−o、
i1と、メモリバス側ブロツクアドレス20.21とが
一致し、かつCP tJ側側御−ドアドレス3031と
メモリバス側ワードアドレス40.42とが一致した場
合のみ、CPU側のアクセスを待たせるため、第1の実
施例に比べてCPIJのスルーブッI−の低下を抑える
という利点がある。なお、ワードアドレスとは、ブロッ
クアドレスhi示すキャッシュメモリの書換え単位のブ
ロック内でのCPUのワード単位を示すアドレスである
。
i1と、メモリバス側ブロツクアドレス20.21とが
一致し、かつCP tJ側側御−ドアドレス3031と
メモリバス側ワードアドレス40.42とが一致した場
合のみ、CPU側のアクセスを待たせるため、第1の実
施例に比べてCPIJのスルーブッI−の低下を抑える
という利点がある。なお、ワードアドレスとは、ブロッ
クアドレスhi示すキャッシュメモリの書換え単位のブ
ロック内でのCPUのワード単位を示すアドレスである
。
以上説明したように本発明は、アドレス比較回路、優先
順位制御回路、デュアルポートメモリセルアレイを用い
ることにより、C13Uのスルーブツトを低下させたり
、バッファのハードウェアを追加することなく、ブロッ
クサイズを太きくしてキャッシュメモリのヒラ1−率を
向上、させることができるという効果がある。
順位制御回路、デュアルポートメモリセルアレイを用い
ることにより、C13Uのスルーブツトを低下させたり
、バッファのハードウェアを追加することなく、ブロッ
クサイズを太きくしてキャッシュメモリのヒラ1−率を
向上、させることができるという効果がある。
第1図、第2図は本発明の第1および第2の実施例のブ
ロック図である。
ロック図である。
1・・・アドレス比較回路、2・・・優先順位制御回路
、3・・・デュアルポートメモリセルアレイ、4゜5・
・・デコーダ、6・・・I/O回路、/O.11・・・
CPU側ブロツクアドレス、20.21・・・メモリバ
ス側プロ゛ツクアドレス、30.31・・・CP IJ
側側御−ドアドレス40.41・・・メモリバス側ワー
ドアト1/・ス、51・・・アドレス比較回路出力線、
52.53・・・優先順位制御回路出力線、61・・・
CPUデータ、62・・・メモリバス側データ、71,
72.74.75・・・EXORゲー1−573・・・
ANDゲート、81,82.84.85・・・EX−O
Rゲート出力線。
、3・・・デュアルポートメモリセルアレイ、4゜5・
・・デコーダ、6・・・I/O回路、/O.11・・・
CPU側ブロツクアドレス、20.21・・・メモリバ
ス側プロ゛ツクアドレス、30.31・・・CP IJ
側側御−ドアドレス40.41・・・メモリバス側ワー
ドアト1/・ス、51・・・アドレス比較回路出力線、
52.53・・・優先順位制御回路出力線、61・・・
CPUデータ、62・・・メモリバス側データ、71,
72.74.75・・・EXORゲー1−573・・・
ANDゲート、81,82.84.85・・・EX−O
Rゲート出力線。
代理人 弁理士 内 原 晋
刀
閃
ん
?
図
Claims (1)
- CPU側のブロックアドレスとメモリバス側のブロック
アドレスとを比較し、これらが一致した時一致信号を出
力する比較回路と、この比較回路から2つのアドレスが
一致した場合どちらか一方のアドレスのアクセスを優先
させるイネーブル信号および残りの一方へは待ち合わせ
中であることを示すビジー信号を返す優先順位制御回路
と、前記CPU側のブロックアドレスおよび前記メモリ
バス側のブロックアドレスとそれぞれ接続されいずれか
一方に前記イネーブル信号を接続した第1および第2の
デコーダと、これら第1および第2のデコーダとそれぞ
れ接続されかつ前記CPU側データおよび前記メモリバ
ス側データをそれぞれI/O回路を介して接続したデュ
アルポート・メモリセルアレイとを備えたことを特徴と
するキャッシュメモリ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63289470A JPH02224043A (ja) | 1988-11-15 | 1988-11-15 | キャッシュメモリ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63289470A JPH02224043A (ja) | 1988-11-15 | 1988-11-15 | キャッシュメモリ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02224043A true JPH02224043A (ja) | 1990-09-06 |
Family
ID=17743693
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63289470A Pending JPH02224043A (ja) | 1988-11-15 | 1988-11-15 | キャッシュメモリ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02224043A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09152989A (ja) * | 1995-11-29 | 1997-06-10 | Nec Corp | データキャッシュメモリシステム |
| US6507894B1 (en) | 1998-12-10 | 2003-01-14 | Nec Corporation | Information processing apparatus and process |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS54118739A (en) * | 1978-03-07 | 1979-09-14 | Ibm | Cash memory control system |
| JPS63223846A (ja) * | 1987-03-12 | 1988-09-19 | Matsushita Electric Ind Co Ltd | キヤツシユ・メモリ− |
| JPS63240651A (ja) * | 1987-03-28 | 1988-10-06 | Nec Corp | キヤツシユメモリ |
| JPS63260006A (ja) * | 1987-04-16 | 1988-10-27 | Nippon Ferrite Ltd | 高密度磁性材料 |
-
1988
- 1988-11-15 JP JP63289470A patent/JPH02224043A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS54118739A (en) * | 1978-03-07 | 1979-09-14 | Ibm | Cash memory control system |
| JPS63223846A (ja) * | 1987-03-12 | 1988-09-19 | Matsushita Electric Ind Co Ltd | キヤツシユ・メモリ− |
| JPS63240651A (ja) * | 1987-03-28 | 1988-10-06 | Nec Corp | キヤツシユメモリ |
| JPS63260006A (ja) * | 1987-04-16 | 1988-10-27 | Nippon Ferrite Ltd | 高密度磁性材料 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09152989A (ja) * | 1995-11-29 | 1997-06-10 | Nec Corp | データキャッシュメモリシステム |
| US6507894B1 (en) | 1998-12-10 | 2003-01-14 | Nec Corporation | Information processing apparatus and process |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6192458B1 (en) | High performance cache directory addressing scheme for variable cache sizes utilizing associativity | |
| JP4829541B2 (ja) | マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置 | |
| US3938097A (en) | Memory and buffer arrangement for digital computers | |
| JP3637054B2 (ja) | キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法 | |
| JPH0756815A (ja) | キャッシュ動作方法及びキャッシュ | |
| US6157980A (en) | Cache directory addressing scheme for variable cache sizes | |
| JPS62262160A (ja) | 書込みバツフア装置 | |
| JPH02227768A (ja) | データ処理システム | |
| JPH05173837A (ja) | オペランド内の情報のスタティックおよびダイナミック・マスキングを兼ね備えるデータ処理システム | |
| US6941308B1 (en) | Methods and apparatus for accessing a doubly linked list in a data storage system | |
| US4658356A (en) | Control system for updating a change bit | |
| EP0730228B1 (en) | ECC protected memory organization with pipelined read-modify-write accesses | |
| US5455925A (en) | Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory | |
| US5557622A (en) | Method and apparatus for parity generation | |
| JP2716350B2 (ja) | 電子データ記憶システム | |
| JPH02224043A (ja) | キャッシュメモリ | |
| JP3381079B2 (ja) | キャッシュメモリを用いた排他制御システム | |
| JP3465362B2 (ja) | キャッシュメモリを有するデータ処理装置 | |
| JPS6022376B2 (ja) | キャッシュメモリ制御装置 | |
| US5737755A (en) | System level mechanism for invalidating data stored in the external cache of a processor in a computer system | |
| JPH05158793A (ja) | 並列キャッシュメモリ | |
| JPS60123952A (ja) | 入出力制御方式 | |
| JP3074897B2 (ja) | メモリ回路 | |
| JP3436497B2 (ja) | メモリアクセス回路 | |
| JPH04123151A (ja) | システムバス |