JP2002150771A - Dramキャッシュ・メモリ中のデータをリフレッシュする方法および装置 - Google Patents
Dramキャッシュ・メモリ中のデータをリフレッシュする方法および装置Info
- Publication number
- JP2002150771A JP2002150771A JP2001276057A JP2001276057A JP2002150771A JP 2002150771 A JP2002150771 A JP 2002150771A JP 2001276057 A JP2001276057 A JP 2001276057A JP 2001276057 A JP2001276057 A JP 2001276057A JP 2002150771 A JP2002150771 A JP 2002150771A
- Authority
- JP
- Japan
- Prior art keywords
- address
- sub
- refresh
- data
- array
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 260
- 238000000034 method Methods 0.000 title claims description 50
- 238000003491 array Methods 0.000 claims description 55
- 238000013500 data storage Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 239000003990 capacitor Substances 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 102100032566 Carbonic anhydrase-related protein 10 Human genes 0.000 description 1
- 101000867836 Homo sapiens Carbonic anhydrase-related protein 10 Proteins 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 102200091804 rs104894738 Human genes 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40603—Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40607—Refresh operations in memory devices with an internal cache or data buffer
Abstract
しに、コンピュータ・システム内のDRAMキャッシュ
・メモリ中のデータをリフレッシュする。 【解決手段】 プロセッサから出された要求アドレスが
検出されたときに通常のリフレッシュ動作を停止し、要
求アドレスを、プロセッサによって選択されるTAGメ
モリ192に記憶されたTAGアドレスと比較し、キャ
ッシュ・メモリに記憶されたデータをリフレッシュする
ためにデータの古さに基づいてそれぞれ生成されるリフ
レッシュ・アドレスを生成し、要求アドレスによってア
クセスされるワード線に対して読取り/書込み動作を行
い、かつリフレッシュ・アドレスによってアクセスされ
るワード線上のデータをリフレッシュすることにより、
DRAMキャッシュ・メモリに対するデータ・リフレッ
シュ動作を行うが、読取り/書込み動作とデータのリフ
レッシュとは同時に行われる。
Description
ステム内のキャッシュ・メモリに関し、より詳細には、
リフレッシュの不利益なしにダイナミック・ランダム・
アクセス・メモリ(DRAM)キャッシュ・メモリをリ
フレッシュする方法および装置に関する。
データ記憶機能によって中央演算処理装置(CPU)を
サポートするためのメモリ階層が存在する。コンピュー
タ内のメイン・メモリとして最も頻繁に使用されるメモ
リ・デバイスのタイプの1つは、ダイナミック・ランダ
ム・アクセス・メモリ(DRAM)である。これは、D
RAMが比較的低コストかつ高密度であり、コンピュー
タ・システムの小さなエリアに大量のデータを記憶する
ことが容易だからである。しかし、DRAMに記憶した
データは定期的にリフレッシュしなければならず、さも
なければ、DRAMセルから電荷が漏れるせいでデータ
は失われることになる。トレード・オフとなるのは、D
RAM中のデータをリフレッシュするのに必要なシステ
ム・オーバーヘッドにおけるコストがより高くなり、そ
れにより速度上の不利益が生じることである。速いプロ
セッサをより遅いメモリとインタフェースする必要があ
るとき、プロセッサ・サイクル・タイムがメモリのデー
タ・アドレス・アクセス時間よりも速いので、全体的な
システム速度は遅くなる。このような状況への対処法の
1つは、より高速の組込みキャッシュ・メモリを使用し
て、より遅いメモリ(すなわちコンピュータ・システム
のメイン・メモリ)にアクセスする実効時間を短縮する
ものである。
より遅いメイン・メモリから選択されたデータを保持
し、それによりプロセッサが選択データから必要なデー
タをより迅速にフェッチできるようにするバッファであ
る。キャッシュ・メモリは、所与の時間に、あるデータ
が次にプロセッサによって選択される確率が他のデータ
よりも高いという原理に基づく。プロセッサによって使
用される確率のより高いデータがキャッシュ・メモリに
記憶されて、アクセス時間がより速くなった場合、その
データにアクセスする平均速度は上昇する。したがっ
て、メイン・メモリよりも通常小さく速いキャッシュ・
メモリを使用して、メイン・メモリの最も頻繁にアクセ
スされるデータを記憶する。
階層では、キャッシュ・メモリは通常、最上位レベルの
プロセッサ、すなわち中央演算処理装置(CPU)のす
ぐ下に位置する。通常、キャッシュ・メモリは複数のレ
ベルに分割される。例えば、レベル1キャッシュ(L
1)とレベル2キャッシュ(L2)である。いくつかの
レベル(例えばレベル1キャッシュL1)は、CPUと
同じチップ上にある場合があり、したがって、「オンチ
ップ」と呼ばれる。このようなオンチップ・キャッシュ
・メモリは、通常、より低密度だがより高速であるスタ
ティック・ランダム・アクセス・メモリ(SRAM)で
構成される。キャッシュ・メモリの他のレベル(例えば
レベル2キャッシュL2)は、CPUとは別に位置する
場合があり、より高密度だがより低速であるDRAMで
構成される。高密度DRAMをコンピュータ・システム
内のプロセッサのキャッシュ・メモリとして使用するこ
とにより、より大きなサイズのキャッシュ・メモリを提
供することができ、したがって、「キャッシュ・ミス・
レート」(後で詳細に説明する)を減少させることがで
きる。
にわたってアイドルであった後は破壊されるので、DR
AMは、DRAM中のデータをリストアするためのリフ
レッシュ・サイクルを必要とする。DRAM中のメモリ
・セルは、ある時間内に定期的にリフレッシュしなけれ
ばならない。この時間を「保持時間」と呼ぶ。技術およ
びチップ温度に応じて、保持時間は、ほんの数ミリ秒か
ら数百ミリ秒までの範囲で変動する場合がある。データ
・リフレッシュは、メモリ配列中の各行に一度に一行ず
つアクセスすることによって達成される。メモリ配列が
アクセスを受けてリフレッシュされるとき、配列のメモ
リ・セルに記憶されているデータがセンス増幅器に読み
出され、すぐにメモリ・セルにライトバックされる。し
たがって、各メモリ・セルに対応するコンデンサが、そ
の初期値まで再充電される。DRAMにおけるこうした
必要なリフレッシュ・サイクルでは、メモリ配列の各行
がリフレッシュ・サイクルの最中にある間はDRAM中
のデータにアクセスできないため、大幅な遅延が生じ
る。言い換えれば、DRAMキャッシュ・メモリのメモ
リ・セルがリフレッシュされている間は、そのメモリ・
エリアで他の動作を行うことができない。この「デッド
・タイム」により、コンピュータ・システム内のメモリ
中のデータにアクセスする実効速度が遅くなる。より質
の高いコンデンサをキャッシュ・メモリ中のメモリ・セ
ルに使用することによってリフレッシュ時間を短縮する
ことはできるものの、データ・リフレッシュの要件は、
依然としてコンピュータ・システムのタイミングにおけ
る遅延を引き起こす重要な要因である。
8804号は、上記の問題の解決法を提案している。L
eungは、DRAMキャッシュ・メモリのピーク周波
数をCPUのピーク外部アクセス周波数よりも高く動作
させる方法を述べている。DRAMリフレッシュ動作の
ためのリフレッシュ・サイクルは隠すことができ、した
がってメモリ・システムは、外部世界にはSRAMのよ
うにみえる。しかし、このような従来システムにおける
欠点は、このような従来型のコンピュータ・システム内
に採用したDRAMキャッシュ・メモリがCPUよりも
速く動作できなければならないことであり、これは実際
には非常に難しく、実際的であったとしても高いコスト
を必要とする。
DRAMキャッシュ・メモリに記憶されたデータをリフ
レッシュする改良型の方法が必要とされている。
レッシュの不利益なしにコンピュータ・システム内のキ
ャッシュ・メモリ中のデータをリフレッシュする方法お
よび装置を提供することである。
成するために、本発明は、コンピュータ・システム内で
プロセッサからアクセスされるキャッシュ・メモリ中の
データをリフレッシュする方法を提供する。この方法
は、(a)プロセッサから出された要求アドレスをキャ
ッシュ・メモリに記憶されているTAGアドレスによっ
て検証するステップと、(b)ステップ(a)で要求ア
ドレスが検証されたときに、キャッシュ・メモリの複数
のサブ配列のうちの1つにある、要求アドレスに対応す
るワード線にアクセスするステップと、(c)リフレッ
シュ・アドレスを生成して、キャッシュ・メモリ中の該
1つのサブ配列以外の複数のサブ配列中のデータをリフ
レッシュするステップであって、各リフレッシュ・アド
レスが、該1つのサブ配列以外の複数のサブ配列それぞ
れの、対応するワード線のアドレスを指定するステップ
と、(d)該1つのサブ配列以外の複数のサブ配列中の
データがリフレッシュされる間に、1つのサブ配列中
の、要求アドレスによってアクセスされるワード線に対
して読取り/書込み動作を行うステップとを含む。該1
つのサブ配列に対する読取り/書込み動作と、該1つの
サブ配列以外の複数のサブ配列中のデータのリフレッシ
ュは、同時に行うことが好ましい。前述の方法のステッ
プ(a)は、TAGメモリにTAGアドレスを記憶する
ステップであって、各TAGアドレスが、キャッシュ・
メモリに記憶された対応するワード線データに関連する
ステップと、要求アドレスをTAGアドレスと比較する
ステップと、要求アドレスと同一のTAGアドレスを選
択するステップを含むことができる。前述の方法のステ
ップ(c)は、1つのサブ配列以外の複数のサブ配列そ
れぞれのワード線の状態を把握することにより、そのサ
ブ配列に対するデータ・リフレッシュ・タイミングを提
供するステップと、該1つのサブ配列以外の複数のサブ
配列それぞれの中のデータがリフレッシュされたとき
に、そのサブ配列に対するデータ・リフレッシュ・タイ
ミングをリセットするステップとを含むことができる。
でプロセッサからアクセス可能なキャッシュ・メモリ中
のデータをリフレッシュするための装置も提供する。こ
の装置は、プロセッサから出された要求アドレスを検出
するためのメモリ・コントローラと、メモリ・コントロ
ーラによって検出された要求アドレスを、キャッシュ・
メモリに記憶されているデータに関連するアドレスと比
較するためのコンパレータと、コンパレータが要求アド
レスと同一のアドレスを見つけたときにリフレッシュ・
アドレスを生成して、キャッシュ・メモリに記憶されて
いるデータをリフレッシュするためのリフレッシュ・コ
ントローラとを備え、要求アドレスは、キャッシュ・メ
モリの第1のサブ配列中のワード線にアクセスし、各リ
フレッシュ・アドレスは、第1のサブ配列以外の各サブ
配列中の、対応するワード線にアクセスする。コンパレ
ータは、キャッシュ・メモリ中のTAGメモリからTA
Gアドレスを受け取ることが好ましく、各TAGアドレ
スは、キャッシュ・メモリのデータ・メモリに記憶され
ているデータの一部に関連する。本発明のリフレッシュ
・コントローラは、リフレッシュ・アドレスを生成する
ためのリフレッシュ・アドレス・ジェネレータを含むこ
とが好ましい。各リフレッシュ・アドレス・ジェネレー
タを第1のサブ配列以外の各サブ配列と関連付けて、第
1のサブ配列以外のサブ配列のうちの対応する1つに記
憶されているデータをリフレッシュするためのリフレッ
シュ・アドレスを生成することができ、また、各リフレ
ッシュ・アドレス・ジェネレータは、第1のサブ配列以
外のサブ配列のうち対応する1つに対するリフレッシュ
・タイミングを提供するためのリフレッシュ・カウンタ
を含むこともできる。リフレッシュ・カウンタは、その
リフレッシュ・カウンタに関連するサブ配列中のデータ
がリフレッシュされたとき、リフレッシュ・タイミング
を初期値にリセットすることができる。
示的実施形態を開示する。しかし、本明細書に開示する
具体的な構造上および機能上の詳細は、本発明の好まし
い実施形態を述べるための典型にすぎない。どんなキャ
ッシュ・レベルに対するどんなダイナミック・ランダム
・アクセス・メモリ(DRAM)にも、同じリフレッシ
ュの概念を適用することができる。
ンピュータ・システムに有用なキャッシュ・メモリのタ
イプの1つは、「連想キャッシュ・メモリ」である。連
想キャッシュ・メモリは、2つのタイプのメモリ、すな
わちデータ・メモリおよびTAGメモリを含む。データ
・メモリは、メイン・メモリの固定サイズの領域(例え
ばワード線)であるキャッシュ・ラインを記憶し、TA
Gメモリ(またはディレクトリ・メモリ)は、データ・
メモリに記憶されている各キャッシュ・ラインのアドレ
スを記憶する。
ータ・システムのメモリ構成を示すブロック図が提供さ
れている。このコンピュータ・システムは、「オンチッ
プ」キャッシュ・メモリ(L1キャッシュ)13を有す
る中央演算処理装置(CPU)11、メイン・メモリ1
5、CPUバス17、CPUバス17上のデータ・トラ
フィックを制御するためのメモリ・コントローラ18、
および第2レベル・キャッシュ・メモリ(L2キャッシ
ュ)19を備える。
CPU11と同じチップ上に統合されている。第1レベ
ル・キャッシュ・メモリ13は、より広い帯域幅および
より短いワイヤ幅でCPU11と統合されており、した
がって外部チップとの間の信号の送信または受信あるい
はその両方に関連するどんな遅延も回避するので、より
高速である。第2レベル・キャッシュ・メモリ19は、
CPUとは異なるチップ上に位置し、第1レベル・キャ
ッシュ・メモリ13よりも容量が大きいが、メイン・メ
モリ15よりは小さい。
11とメイン・メモリ15との間のバッファとして働
く。キャッシュ・メモリ13、19のそれぞれでは、デ
ータ・ワードがキャッシュ・メモリに記憶され、「キャ
ッシュ・ブロック」または「キャッシュ・ライン」と呼
ばれる小さなページに分類される。キャッシュ・メモリ
の内容は、メイン・メモリ・ブロックのセットのコピー
である。各キャッシュ・ラインは、「TAGアドレス」
でマークされる。したがって、各キャッシュ・ライン
は、メイン・メモリのどの部分にそのキャッシュ・ライ
ンが属するかを知っている。対応するキャッシュ・ライ
ンに割り当てられたTAGアドレス(非連続的な場合も
ある)は、「TAGメモリまたはディレクトリ」と呼ば
れる特別なメモリに記憶される。
は、あるデータにアクセスするためにアドレスがCPU
11から要求されたとき、その要求アドレスが、第1レ
ベル・キャッシュ・メモリ13のTAGメモリ(図2参
照)に記憶されているTAGアドレスと比較される。要
求アドレスがTAGメモリ中のTAGアドレスの中に見
つかった場合は、要求アドレスに対応するデータがキャ
ッシュ・メモリ13中に存在すると判定され、このこと
は「ヒット」と呼ばれる。キャッシュ・メモリ13中に
要求アドレスのデータが見つかると、そのデータはCP
U11に転送される。TAGメモリはまた、キャッシュ
・メモリ13中のデータを突き止めるためのオフセット
・アドレスも含む。キャッシュ・メモリ中のデータを突
き止めることは当技術分野で周知であり、したがって、
その詳細な記述は本明細書では省略する。
13のTAGメモリ中に見つからない場合は、要求アド
レスに対応するデータがキャッシュ・メモリ13中に存
在しないと判定され、このことは「ミス」と呼ばれる。
第1レベル・キャッシュ・メモリ13中で「ミス」が生
じると、要求アドレスは、より低いレベルのメモリ、例
えば第2レベル・キャッシュ・メモリ19に送られる。
以下に、第2レベル・キャッシュ・メモリにおけるデー
タ・アクセス・プロセスについて詳細に述べる。第2レ
ベル・キャッシュ・メモリ19中で「ミス」が生じた場
合(すなわち第2レベル・キャッシュ・メモリ中にデー
タが存在しない場合)、要求アドレスは、第3レベル・
キャッシュ・メモリ(利用可能ならば)、またはメイン
・メモリに送られる。
ムは、第1レベル・キャッシュ・メモリ13にSRAM
を採用し、第2レベル・キャッシュ・メモリ19にDR
AMを採用するのが好ましいため、第1レベル・キャッ
シュ・メモリ13にはデータ・リフレッシュ・プロセス
は必要ない。したがって、本発明によるデータのリフレ
ッシュ方法を第2レベル・キャッシュ・メモリ19に関
して述べる。ただし本発明は、メイン・メモリをサポー
トするための階層メモリ・システムで使用されるどんな
DRAMキャッシュ・メモリにも適用されることに留意
されたい。
ュ・メモリ19は、データ・メモリ191およびTAG
メモリ192を含む。データ・メモリ191は、CPU
(11、図1参照)によって選択される確率がより高い
データを記憶し、TAGメモリ192は、データ・メモ
リ191に記憶されたデータの対応するキャッシュ・ラ
インのアドレスをそれぞれ指定するTAGアドレスを記
憶する。
メモリ(13、図1参照)中で「ミス」が生じたとき、
CPUから出された要求アドレスがCPUバス(17、
図1参照)上にロードされて、第2キャッシュ・メモリ
19に転送される。メモリ・コントローラ(18、図1
参照)は、CPUバスから要求アドレスを受け取り、そ
れをTAGリフレッシュ・コントローラ194に含まれ
るTAGコンパレータ193に送る。TAGコンパレー
タ193は、要求アドレスを、キャッシュ・メモリ19
のTAGメモリ192から提供されるTAGアドレスと
比較する。TAGメモリ中のTAGアドレスの中に要求
アドレスが見つかった(すなわち「ヒット」が生じた)
場合は、データ・メモリ191中で、要求アドレス(ま
たは選択されたTAGアドレス)に対応するキャッシュ
・ラインがCPUからアクセスを受ける。TAGメモリ
中のTAGアドレスの中に要求アドレスが見つからない
(すなわち「ミス」が生じた)場合は、要求アドレスに
対応するワード線をメイン・メモリ中で見つけるため
に、要求アドレスがメイン・メモリ(15、図1参照)
に送られる。
は、DRAMキャッシュ・メモリ19のデータ・メモリ
191に記憶されているデータをリフレッシュするため
に備わっている。TAGリフレッシュ・コントローラ1
94を使用して、データ・リフレッシュ・プロセスをそ
れぞれが必要とするメモリ・アドレスをトレースするた
めの履歴テーブルがマッピングされる。TAGリフレッ
シュ・コントローラ194を使用することにより、デー
タ・リフレッシュ・プロセスによる遅延を生じずに済
む。TAGリフレッシュ・コントローラ194はまた、
データ・リフレッシュ・プロセスを行うために、リフレ
ッシュ・アドレス・ジェネレータ320およびリフレッ
シュ・カウンタ322も備える。次に、データ・リフレ
ッシュ・プロセスについてより詳細に述べる。
キャッシュ・メモリ(例えば図1の第2レベル・キャッ
シュ・メモリ19)中のデータをリフレッシュする方法
を記述するフロー・チャートが提供されている。まず、
キャッシュ・メモリ中の要求アドレスに対応するワード
線に対して読取り/書込み動作を行うようにCPUから
外的に要求されたアドレスがあるかどうかが判定される
(ステップ302)。言い換えれば、CPUがキャッシ
ュ・メモリ中のワード線に対するデータの読取りまたは
書込みを要求しており、したがってそのワード線を表す
アドレスがCPUバス上にロードされるかどうかが判定
される。CPUからの要求アドレスがない場合は、通常
のデータ・リフレッシュ動作が行われる(ステップ30
4)。通常のリフレッシュ動作では、キャッシュ・メモ
リのメモリ配列が連続してリフレッシュされる形で、キ
ャッシュ・メモリに記憶されているデータがリフレッシ
ュされる。TAGリフレッシュ・コントローラ(19
4、図2参照)に含まれるリフレッシュ・アドレス・ジ
ェネレータ320が、リフレッシュ・アドレスを少なく
とも1つ生成して、リフレッシュ・カウンタ(322、
図2参照)から提供されるリフレッシュ・クロックに基
づいてキャッシュ・メモリのサブ配列中にある対応する
ワード線中のデータをリフレッシュする。例えば、ある
時間にわたり、キャッシュ・メモリ中の各サブ配列につ
き1本のワード線を同時にリフレッシュすることができ
る。したがってこの場合、サブ配列ごとに1つのリフレ
ッシュ・アドレス・ジェネレータが必要となる。キャッ
シュ・メモリ中のサブ配列へのリフレッシュ・アドレス
の生成については、図4を参照しながら後で詳細に述べ
る。
合は、通常のリフレッシュ動作のためのリフレッシュ・
サイクルが停止される(ステップ306)。キャッシュ
・メモリに対する通常のリフレッシュ動作が停止される
と、要求リフレッシュ・アドレスがTAGリフレッシュ
・コントローラに送られる。TAGリフレッシュ・コン
トローラは、TAGコンパレータ(193、図2参照)
およびTAGメモリ(192、図2参照)を使用して行
われる「ヒット/ミス比較」を制御する(ステップ30
7)。ヒット/ミス比較において、「ヒット」は、CP
Uから要求されたデータがキャッシュ・メモリ中に見つ
かる場合であり、「ミス」は、要求データがキャッシュ
・メモリ中に見つからず、したがってメイン・メモリに
行ってそのデータにアクセスする場合である。「ヒッ
ト」か「ミス」かを判定するために、TAGコンパレー
タは、要求アドレスをTAGメモリ中に記憶されている
TAGアドレスと比較し、要求アドレスがTAGアドレ
スの中に見つかるかどうかを判定する。
レスがTAGメモリ中のTAGアドレスの中に見つから
ない(すなわちステップ308で「ヒット」がない)場
合は、要求アドレスはメイン・メモリに送られる。メモ
リ・コントローラ(18、図1参照)が、メイン・メモ
リ中のワード線を表す要求アドレスを用いてそのワード
線にアクセスして、CPUから要求された読取り/書込
み動作をメイン・メモリ中のそのワード線に対して行う
(ステップ310)。読取り/書込み動作を行うと、メ
モリ・コントローラは、キャッシュ・メモリに対する通
常のリフレッシュ動作の実施を制御する(ステップ30
4)。メモリ・コントローラはまた、読取り/書込み動
作を行う場所のアドレスをリフレッシュ・アドレス・ジ
ェネレータ320にも送るが、これにより、これらのア
ドレスに記憶されているデータを再びリフレッシュする
必要がなくなる。
レスがTAGメモリ中のTAGアドレスの中に見つかっ
た(すなわちステップ308で「ヒット」があった)場
合は、リフレッシュ・アドレス・ジェネレータ320
は、キャッシュ・メモリ中の、要求アドレスを有するサ
ブ配列以外のサブ配列のリフレッシュ・アドレスを生成
する(ステップ312)。キャッシュ・メモリは複数の
サブ配列を有し、各サブ配列中のデータは、異なるワー
ド線アドレスによってアドレス指定することができる。
「ヒット」があったときは、要求アドレス(または選択
されたTAGアドレス)によってキャッシュ・メモリの
サブ配列中のワード線にアクセスすることができる。こ
の場合、要求アドレスは、サブ配列中の対応するワード
線にアクセスするためのアクセス・アドレスになる。ま
た、「ヒット」があったときは、リフレッシュ・アドレ
ス・ジェネレータ320は、キャッシュ・メモリの、C
PUによる読取り/書込み動作に対するワード線を有す
るサブ配列以外のサブ配列中のデータをリフレッシュす
るためのリフレッシュ・アドレスを生成する。各リフレ
ッシュ・アドレスは、リフレッシュすべき各サブ配列中
のワード線のアドレスを指定する(これについては図4
を参照しながら詳細に述べる)。
20は、例えば、対応する優先順位インデックスおよび
フレッシュ・インデックスを各ワード線アドレスが有す
るように、優先順位インデックス、フレッシュ・インデ
ックス、およびワード線アドレスを記憶する。優先順位
インデックスは、リフレッシュ・アドレス・ジェネレー
タ320中の対応するワード線アドレスの置換の優先順
位を示す。フレッシュ・インデックスは、データ信頼性
の標識(すなわち「ダーティ」ビットまたは無効ビッ
ト)である。ワード線アドレスは、キャッシュ・メモリ
中の、CPUから要求された読取り/書込み動作がメモ
リ・コントローラの制御下で行われる場所のワード線ア
ドレスと同じアドレスである。
20からリフレッシュ・アドレスが得られると、CPU
から要求された読取り/書込み動作およびデータ・リフ
レッシュ動作が、CPUからの要求アドレス(すなわち
アクセス・アドレス)および内部生成されたリフレッシ
ュ・アドレスをそれぞれ用いてキャッシュ・メモリ中で
同時に行われる(ステップ314)。データ・リフレッ
シュ動作は、キャッシュ・メモリ中の、アクセス・アド
レスに対応するデータが記憶されているサブ配列以外の
サブ配列に対して行われる。読取り/書込み動作および
データ・リフレッシュ動作をキャッシュ・メモリ中で行
う際、サブ配列中にあるアクセス・アドレス中のデータ
にアクセスするプロセスは、アクセス・アドレスが提供
されたサブ配列以外のサブ配列にそれぞれ提供された各
リフレッシュ・アドレス中のデータをリフレッシュする
プロセスと同時に行われる。この結果、従来技術におい
てデータ・リフレッシュ要件によって生じる遅延は、大
幅に削減されるか完全になくすことができる。
およびキャッシュ・メモリに適用されるワード線アドレ
スの構成を示すブロック図が提供されている。DRAM
キャッシュ・メモリは、それぞれがセンス増幅器を有す
る複数のサブ配列を有することができる。各サブ配列に
記憶されたデータには、対応するワード線アドレスによ
ってアクセスすることができる。例えば、図4のキャッ
シュ・メモリは4つのサブ配列41〜44を有し、それ
ぞれがセンス増幅器バンク401〜404を有する。C
PUから要求された読取り/書込み動作が行われるワー
ド線が第1のサブ配列41中に位置すると仮定した場
合、このワード線に対応するアクセス・アドレスが、第
1のサブ配列41に提供される。同時に、リフレッシュ
・アドレス・ジェネレータ320A〜320Cが、第2
〜第4のサブ配列42〜44への第1〜第3のリフレッ
シュ・アドレスをそれぞれ生成する。CPUから要求さ
れた読取り/書込み動作を行うために、第1のサブ配列
41中で対応するワード線がアクセス・アドレスによっ
てアクセスを受ける一方で、第2〜第4のサブ配列42
〜44中の対応するワード線のデータをリフレッシュす
るために、対応するワード線が第1〜第3のリフレッシ
ュ・アドレスによってそれぞれアクセスを受ける。言い
換えれば、データ・リフレッシュ動作では、キャッシュ
・メモリの第2〜第4のサブ配列42〜44それぞれの
中で1つのワード線データが、第1〜第3のリフレッシ
ュ・アドレスのそれぞれによってアクセスを受ける。例
えば、TAGリフレッシュ・コントローラ194中に含
まれる第1〜第3のリフレッシュ・アドレス・ジェネレ
ータ320A〜320Cは、第1〜第3のリフレッシュ
・カウンタ322A〜322Cからリフレッシュ・クロ
ックをそれぞれ受け取り、第2〜第4のサブ配列42〜
44への第1〜第3のリフレッシュ・アドレスをそれぞ
れ生成する。4つのサブ配列41〜44がある場合、各
サブ配列は、例えばサブ配列中のワード線にアクセスす
るためのアドレスの最初の2桁によって識別される。言
い換えれば、ワード線アドレスの最初の2桁は、「0
0」、「01」、「10」、または「11」とすること
ができ、これらはそれぞれ、第1のサブ配列41、第2
のサブ配列42、第3のサブ配列43、または第4のサ
ブ配列44を指定する。
41中のワード線データがアクセス・アドレスによって
アクセスを受け、第1のサブ配列41をリフレッシュす
るために生成されたリフレッシュ・アドレスは、次に利
用可能なリフレッシュ動作実施の時まで保持されなけれ
ばならない。言い換えれば、CPUが他の3つのサブ配
列42〜44のいずれかにアクセスするときに、第1の
サブ配列41中でデータ・リフレッシュ・プロセスを行
うことができる。ただし、リフレッシュ・アドレス・ジ
ェネレータから提供されたリフレッシュ・アドレスによ
ってリフレッシュできるのは、良好なリフレッシュ可能
状態にあるデータだけである。CPUが長時間にわたり
第1のサブ配列41のある部分に連続してアクセスする
場合、第1のサブ配列41の残りの部分に記憶されてい
るデータは「ダーティ」となり、したがって、CPUが
それらのデータを必要としたときには、それらをメイン
・メモリから置換しなければならない。すなわち、老化
してリフレッシュ不可能な状態になったダーティ・デー
タに対しては、データをメイン・メモリからコピーし直
さなければならない。ただし、複数のサブ配列に対して
このように非常に不均一なアクセスが生じる確率は稀で
ある。
20は、リフレッシュ動作が行われることになる各サブ
配列にワード線のリフレッシュ・タイミングおよびアド
レスを提供するリフレッシュ・カウンタ322を含むこ
とが好ましい。リフレッシュ・カウンタ322は、例え
ば、リフレッシュされる各サブ配列に対するワード線ア
ドレスの状態を把握している。あるワード線データがリ
フレッシュされるとき、リフレッシュ・カウンタ322
は、リフレッシュするための次のサブ配列アドレスを生
成する。サブ配列中のすべてのワード線がリフレッシュ
されたとき、リフレッシュ・カウンタ322はゼロにリ
セットされ、次のリフレッシュ・サイクル中で再び第1
のワード線のリフレッシュを開始する。所定の時間にわ
たってリフレッシュまたはアクセスされなかった「ダー
ティ・ビット」を有するワード線のアドレスもまた、T
AGメモリに記録され、キャッシュ・メモリがアクティ
ブに読取り/書込み動作を行わないときにメイン・メモ
リからデータを転送することによってリフレッシュされ
る。各ワード線アドレスに対するタイミング情報の状態
が把握され記録されるので、「ダーティ・ビット」を有
するワード線アドレスを検出することができる。次い
で、メイン・メモリからのデータによってワード線アド
レスのダーティ・データを「クリーンにする」ために信
号を送ることにより、ダーティ・ワード線アドレスのデ
ータがリフレッシュされる。クリーンにすべきダーティ
・データは、CPUからの要求に従ってデータがアクセ
スを受けるサブ配列以外のサブ配列中のものである。
サブ配列を有し、それぞれがワード線アドレスによって
アクセスされるデータを記憶していると仮定した場合、
あるサブ配列に対して読取り/書込み動作が行われ、同
時に、「n−1」個のサブ配列に対してデータ・リフレ
ッシュ動作が実施できる。言い換えれば、キャッシュ・
メモリ中の「n−1」個のサブ配列に対してデータ・リ
フレッシュ動作を行う時間が余分に必要とはならない。
したがって、DRAMキャッシュ・メモリ中のデータ・
リフレッシュ動作に必要な時間は、CPUにおいてどん
な遅延も引き起こさない。
ッシュ・メモリ中のデータをリフレッシュする方法を述
べたが、以上の教示に鑑みて、当業者なら容易に修正お
よび変形を加えることができる。したがって本発明は、
添付の特許請求の範囲内で、本明細書に具体的に述べた
以外の方式で実施することができることを理解された
い。
の事項を開示する。
ッサからアクセスされるキャッシュ・メモリ中のデータ
をリフレッシュする方法であって、(a)前記プロセッ
サから出された要求アドレスを、前記キャッシュ・メモ
リに記憶されているTAGアドレスによって検証するス
テップと、(b)ステップ(a)で前記要求アドレスが
検証されたときに、前記キャッシュ・メモリの複数のサ
ブ配列のうちの1つにある、前記要求アドレスに対応す
るワード線にアクセスするステップと、(c)リフレッ
シュ・アドレスを生成して、前記キャッシュ・メモリ中
の前記1つのサブ配列以外の前記複数のサブ配列中のデ
ータをリフレッシュするステップであって、各リフレッ
シュ・アドレスが、前記1つのサブ配列以外の前記複数
のサブ配列それぞれの、対応するワード線のアドレスを
指定するステップと、(d)前記1つのサブ配列以外の
前記複数のサブ配列中のデータがリフレッシュされる間
に、前記1つのサブ配列中の、前記要求アドレスによっ
てアクセスされる前記ワード線に対して読取り/書込み
動作を行うステップとを含む方法。 (2)前記1つのサブ配列に対する読取り/書込み動作
と、前記1つのサブ配列以外の前記複数のサブ配列中の
データのリフレッシュが同時に行われる、上記(1)に
記載の方法。 (3)ステップ(a)が、TAGメモリにTAGアドレ
スを記憶するステップであって、各TAGアドレスが、
前記キャッシュ・メモリに記憶された対応するワード線
データに関連するステップと、前記要求アドレスを前記
TAGアドレスと比較するステップと、前記要求アドレ
スと同一のTAGアドレスを選択するステップとを含
む、上記(1)に記載の方法。 (4)前記要求アドレスが前記TAGメモリ中の前記T
AGアドレスと異なるとき、前記キャッシュ・メモリ中
のデータに対して通常のリフレッシュ動作を行うステッ
プをさらに含む、上記(3)に記載の方法。 (5)ステップ(c)が、前記リフレッシュ・アドレス
により、前記1つのサブ配列以外の前記複数のサブ配列
中のワード線に同時にアクセスするステップを含み、各
リフレッシュ・アドレスが、前記1つのサブ配列以外の
前記複数のサブ配列のうちの対応する1つに関連する、
上記(1)に記載の方法。 (6)ステップ(c)が、前記1つのサブ配列以外の前
記複数のサブ配列それぞれのワード線の状態を把握する
ことにより、前記それぞれのサブ配列に対するデータ・
リフレッシュ・タイミングを提供するステップを含む、
上記(1)に記載の方法。 (7)前記1つのサブ配列以外の前記複数のサブ配列そ
れぞれの中のデータがリフレッシュされたときに、前記
それぞれのサブ配列に対する前記データ・リフレッシュ
・タイミングをリセットするステップをさらに含む、上
記(6)に記載の方法。 (8)前記リフレッシュ・アドレスがそれぞれ、対応す
るリフレッシュ・アドレス中のデータの置換の優先順位
を表す優先順位インデックスと、前記キャッシュ・メモ
リの対応するサブ配列中のワード線のアドレスを指定す
るためのワード線アドレスとを含む、上記(1)に記載
の方法。 (9)前記リフレッシュ・アドレスがそれぞれ、対応す
るワード線アドレス中のデータの信頼性を示すフレッシ
ュ・インデックスを含む、上記(8)に記載の方法。 (10)コンピュータ・システム内でプロセッサからア
クセスされるキャッシュ・メモリ中のデータをリフレッ
シュする方法であって、(e)前記プロセッサから出さ
れた要求アドレスを検出するステップと、(f)前記要
求アドレスが検出されたときに、前記キャッシュ・メモ
リの複数のサブ配列に記憶されたデータを連続してリフ
レッシュする通常のリフレッシュ動作を停止するステッ
プと、(g)前記要求アドレスを、メモリにあらかじめ
記憶されているアドレスと比較するステップであって、
前記メモリ中の前記アドレスが、前記プロセッサによっ
て選択される確率のより高い前記キャッシュ・メモリ中
のデータに関連するステップと、(h)前記キャッシュ
・メモリに記憶されたデータをリフレッシュするための
リフレッシュ・アドレスを生成するステップであって、
各リフレッシュ・アドレスが、前記リフレッシュ・アド
レスに対応するデータの古さに基づいて生成されるステ
ップと、(i)前記要求アドレスによってアクセスされ
るワード線に対して読取り/書込み動作を行い、前記リ
フレッシュ・アドレスによってアクセスされるワード線
上のデータをリフレッシュするステップであって、前記
読取り/書込み動作と前記データのリフレッシュとが同
時に行われるステップとを含む方法。 (11)ステップ(i)が、前記読取り/書込み動作が
行われるワード線にアクセスするために、前記キャッシ
ュ・メモリのサブ配列に前記要求アドレスを提供するス
テップと、前記要求アドレスが提供される前記サブ配列
以外の複数のサブ配列にリフレッシュ・アドレスを提供
するステップとを含み、前記リフレッシュ・アドレスが
それぞれ、前記サブ配列以外の前記複数のサブ配列それ
ぞれの中の対応するワード線にアクセスする、上記(1
0)に記載の方法。 (12)コンピュータ・システム内でプロセッサからア
クセス可能なキャッシュ・メモリ中のデータをリフレッ
シュするための装置であって、前記プロセッサから出さ
れた要求アドレスを検出するためのメモリ・コントロー
ラと、前記メモリ・コントローラによって検出された前
記要求アドレスを、前記キャッシュ・メモリに記憶され
ているデータに関連するアドレスと比較するためのコン
パレータと、前記コンパレータが前記要求アドレスと同
一のアドレスを見つけたときにリフレッシュ・アドレス
を生成して、前記キャッシュ・メモリに記憶されている
データをリフレッシュするためのリフレッシュ・コント
ローラとを備え、前記要求アドレスが前記キャッシュ・
メモリの第1サブ配列にあるワード線にアクセスし、リ
フレッシュ・アドレスのそれぞれが、前記第1サブ配列
以外のサブ配列のそれぞれにある、対応するワード線に
アクセスする装置。 (13)前記コンパレータが、前記キャッシュ・メモリ
中のTAGメモリからTAGアドレスを受け取り、前記
TAGアドレスがそれぞれ、前記キャッシュ・メモリの
データ・メモリに記憶されているデータの一部に関連す
る、上記(12)に記載の装置。 (14)前記キャッシュ・メモリの前記データ・メモリ
が、前記プロセッサによって選択される確率のより高い
データを記憶する、上記(13)に記載の装置。 (15)前記リフレッシュ・コントローラが、前記リフ
レッシュ・アドレスを生成するための複数のリフレッシ
ュ・アドレス・ジェネレータを含み、前記リフレッシュ
・アドレス・ジェネレータがそれぞれ、第1のサブ配列
以外の各サブ配列と関連し、前記第1のサブ配列以外の
前記サブ配列のうちの対応する1つに記憶されているデ
ータをリフレッシュするためのリフレッシュ・アドレス
を生成する、上記(12)に記載の装置。 (16)前記複数のリフレッシュ・アドレス・ジェネレ
ータがそれぞれ、前記第1のサブ配列以外の前記サブ配
列のうち対応する1つに対するリフレッシュ・タイミン
グを提供するためのリフレッシュ・カウンタを含む、上
記(15)に記載の装置。 (17)前記リフレッシュ・カウンタが、前記リフレッ
シュ・カウンタに関連するサブ配列中のデータがリフレ
ッシュされたときに前記リフレッシュ・タイミングを初
期値にリセットする、上記(16)に記載の装置。 (18)前記要求アドレスが前記第1のサブ配列に提供
されるのと同時に、前記リフレッシュ・コントローラ
が、前記第1のサブ配列以外の前記サブ配列にリフレッ
シュ・アドレスを提供する、上記(12)に記載の装
置。
ュータ・システム内のメモリ構成のブロック図である。
ある。
ュする方法を記述するフロー・チャートである。
およびデータ・リフレッシュ動作を示すブロック図であ
る。
Claims (18)
- 【請求項1】コンピュータ・システム内でプロセッサか
らアクセスされるキャッシュ・メモリ中のデータをリフ
レッシュする方法であって、 (a)前記プロセッサから出された要求アドレスを、前
記キャッシュ・メモリに記憶されているTAGアドレス
によって検証するステップと、 (b)ステップ(a)で前記要求アドレスが検証された
ときに、前記キャッシュ・メモリの複数のサブ配列のう
ちの1つにある、前記要求アドレスに対応するワード線
にアクセスするステップと、 (c)リフレッシュ・アドレスを生成して、前記キャッ
シュ・メモリ中の前記1つのサブ配列以外の前記複数の
サブ配列中のデータをリフレッシュするステップであっ
て、各リフレッシュ・アドレスが、前記1つのサブ配列
以外の前記複数のサブ配列それぞれの、対応するワード
線のアドレスを指定するステップと、 (d)前記1つのサブ配列以外の前記複数のサブ配列中
のデータがリフレッシュされる間に、前記1つのサブ配
列中の、前記要求アドレスによってアクセスされる前記
ワード線に対して読取り/書込み動作を行うステップと
を含む方法。 - 【請求項2】前記1つのサブ配列に対する読取り/書込
み動作と、前記1つのサブ配列以外の前記複数のサブ配
列中のデータのリフレッシュが同時に行われる、請求項
1に記載の方法。 - 【請求項3】ステップ(a)が、 TAGメモリにTAGアドレスを記憶するステップであ
って、各TAGアドレスが、前記キャッシュ・メモリに
記憶された対応するワード線データに関連するステップ
と、 前記要求アドレスを前記TAGアドレスと比較するステ
ップと、 前記要求アドレスと同一のTAGアドレスを選択するス
テップとを含む、請求項1に記載の方法。 - 【請求項4】前記要求アドレスが前記TAGメモリ中の
前記TAGアドレスと異なるとき、前記キャッシュ・メ
モリ中のデータに対して通常のリフレッシュ動作を行う
ステップをさらに含む、請求項3に記載の方法。 - 【請求項5】ステップ(c)が、前記リフレッシュ・ア
ドレスにより、前記1つのサブ配列以外の前記複数のサ
ブ配列中のワード線に同時にアクセスするステップを含
み、各リフレッシュ・アドレスが、前記1つのサブ配列
以外の前記複数のサブ配列のうちの対応する1つに関連
する、請求項1に記載の方法。 - 【請求項6】ステップ(c)が、前記1つのサブ配列以
外の前記複数のサブ配列それぞれのワード線の状態を把
握することにより、前記それぞれのサブ配列に対するデ
ータ・リフレッシュ・タイミングを提供するステップを
含む、請求項1に記載の方法。 - 【請求項7】前記1つのサブ配列以外の前記複数のサブ
配列それぞれの中のデータがリフレッシュされたとき
に、前記それぞれのサブ配列に対する前記データ・リフ
レッシュ・タイミングをリセットするステップをさらに
含む、請求項6に記載の方法。 - 【請求項8】前記リフレッシュ・アドレスがそれぞれ、
対応するリフレッシュ・アドレス中のデータの置換の優
先順位を表す優先順位インデックスと、前記キャッシュ
・メモリの対応するサブ配列中のワード線のアドレスを
指定するためのワード線アドレスとを含む、請求項1に
記載の方法。 - 【請求項9】前記リフレッシュ・アドレスがそれぞれ、
対応するワード線アドレス中のデータの信頼性を示すフ
レッシュ・インデックスを含む、請求項8に記載の方
法。 - 【請求項10】コンピュータ・システム内でプロセッサ
からアクセスされるキャッシュ・メモリ中のデータをリ
フレッシュする方法であって、 (e)前記プロセッサから出された要求アドレスを検出
するステップと、 (f)前記要求アドレスが検出されたときに、前記キャ
ッシュ・メモリの複数のサブ配列に記憶されたデータを
連続してリフレッシュする通常のリフレッシュ動作を停
止するステップと、 (g)前記要求アドレスを、メモリにあらかじめ記憶さ
れているアドレスと比較するステップであって、前記メ
モリ中の前記アドレスが、前記プロセッサによって選択
される確率のより高い前記キャッシュ・メモリ中のデー
タに関連するステップと、 (h)前記キャッシュ・メモリに記憶されたデータをリ
フレッシュするためのリフレッシュ・アドレスを生成す
るステップであって、各リフレッシュ・アドレスが、前
記リフレッシュ・アドレスに対応するデータの古さに基
づいて生成されるステップと、 (i)前記要求アドレスによってアクセスされるワード
線に対して読取り/書込み動作を行い、前記リフレッシ
ュ・アドレスによってアクセスされるワード線上のデー
タをリフレッシュするステップであって、前記読取り/
書込み動作と前記データのリフレッシュとが同時に行わ
れるステップとを含む方法。 - 【請求項11】ステップ(i)が、 前記読取り/書込み動作が行われるワード線にアクセス
するために、前記キャッシュ・メモリのサブ配列に前記
要求アドレスを提供するステップと、 前記要求アドレスが提供される前記サブ配列以外の複数
のサブ配列にリフレッシュ・アドレスを提供するステッ
プとを含み、前記リフレッシュ・アドレスがそれぞれ、
前記サブ配列以外の前記複数のサブ配列それぞれの中の
対応するワード線にアクセスする、請求項10に記載の
方法。 - 【請求項12】コンピュータ・システム内でプロセッサ
からアクセス可能なキャッシュ・メモリ中のデータをリ
フレッシュするための装置であって、 前記プロセッサから出された要求アドレスを検出するた
めのメモリ・コントローラと、 前記メモリ・コントローラによって検出された前記要求
アドレスを、前記キャッシュ・メモリに記憶されている
データに関連するアドレスと比較するためのコンパレー
タと、 前記コンパレータが前記要求アドレスと同一のアドレス
を見つけたときにリフレッシュ・アドレスを生成して、
前記キャッシュ・メモリに記憶されているデータをリフ
レッシュするためのリフレッシュ・コントローラとを備
え、前記要求アドレスが前記キャッシュ・メモリの第1
サブ配列にあるワード線にアクセスし、リフレッシュ・
アドレスのそれぞれが、前記第1サブ配列以外のサブ配
列のそれぞれにある、対応するワード線にアクセスする
装置。 - 【請求項13】前記コンパレータが、前記キャッシュ・
メモリ中のTAGメモリからTAGアドレスを受け取
り、前記TAGアドレスがそれぞれ、前記キャッシュ・
メモリのデータ・メモリに記憶されているデータの一部
に関連する、請求項12に記載の装置。 - 【請求項14】前記キャッシュ・メモリの前記データ・
メモリが、前記プロセッサによって選択される確率のよ
り高いデータを記憶する、請求項13に記載の装置。 - 【請求項15】前記リフレッシュ・コントローラが、前
記リフレッシュ・アドレスを生成するための複数のリフ
レッシュ・アドレス・ジェネレータを含み、前記リフレ
ッシュ・アドレス・ジェネレータがそれぞれ、第1のサ
ブ配列以外の各サブ配列と関連し、前記第1のサブ配列
以外の前記サブ配列のうちの対応する1つに記憶されて
いるデータをリフレッシュするためのリフレッシュ・ア
ドレスを生成する、請求項12に記載の装置。 - 【請求項16】前記複数のリフレッシュ・アドレス・ジ
ェネレータがそれぞれ、前記第1のサブ配列以外の前記
サブ配列のうち対応する1つに対するリフレッシュ・タ
イミングを提供するためのリフレッシュ・カウンタを含
む、請求項15に記載の装置。 - 【請求項17】前記リフレッシュ・カウンタが、前記リ
フレッシュ・カウンタに関連するサブ配列中のデータが
リフレッシュされたときに前記リフレッシュ・タイミン
グを初期値にリセットする、請求項16に記載の装置。 - 【請求項18】前記要求アドレスが前記第1のサブ配列
に提供されるのと同時に、前記リフレッシュ・コントロ
ーラが、前記第1のサブ配列以外の前記サブ配列にリフ
レッシュ・アドレスを提供する、請求項12に記載の装
置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/660,431 US6697909B1 (en) | 2000-09-12 | 2000-09-12 | Method and apparatus for performing data access and refresh operations in different sub-arrays of a DRAM cache memory |
US09/660431 | 2000-09-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002150771A true JP2002150771A (ja) | 2002-05-24 |
JP4360766B2 JP4360766B2 (ja) | 2009-11-11 |
Family
ID=24649505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001276057A Expired - Fee Related JP4360766B2 (ja) | 2000-09-12 | 2001-09-12 | Dramキャッシュ・メモリ中のデータをリフレッシュする方法および装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6697909B1 (ja) |
JP (1) | JP4360766B2 (ja) |
TW (1) | TW526491B (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006512717A (ja) * | 2002-12-31 | 2006-04-13 | インテル コーポレイション | ダイナミックメモリのリフレッシュポート |
KR101731508B1 (ko) | 2012-11-30 | 2017-05-11 | 인텔 코포레이션 | 저장된 행 해머 임계값에 기초한 행 해머 모니터링 |
JP2018120589A (ja) * | 2017-01-25 | 2018-08-02 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 揮発性メモリキャッシュのデータを代替する方法及びそのためのキャッシュ管理部 |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6862654B1 (en) * | 2000-08-17 | 2005-03-01 | Micron Technology, Inc. | Method and system for using dynamic random access memory as cache memory |
US6779076B1 (en) * | 2000-10-05 | 2004-08-17 | Micron Technology, Inc. | Method and system for using dynamic random access memory as cache memory |
US6989024B2 (en) * | 2002-02-28 | 2006-01-24 | Counter Clockwise, Inc. | Guidewire loaded stent for delivery through a catheter |
US6944708B2 (en) * | 2002-03-22 | 2005-09-13 | Intel Corporation | Method of self-refresh in large memory arrays |
US6801980B2 (en) * | 2002-04-25 | 2004-10-05 | International Business Machines Corporation | Destructive-read random access memory system buffered with destructive-read memory cache |
KR100543932B1 (ko) * | 2003-04-30 | 2006-01-23 | 주식회사 하이닉스반도체 | 초기화 동작시간이 감소된 태그블럭을 구비하는 반도체 메모리 장치 및 그의 구동방법 |
KR100522431B1 (ko) * | 2003-04-30 | 2005-10-20 | 주식회사 하이닉스반도체 | 리프레쉬 동작이 향상된 고속 데이터 억세스를 위한반도체 메모리 장치 |
JP4439838B2 (ja) * | 2003-05-26 | 2010-03-24 | Necエレクトロニクス株式会社 | 半導体記憶装置及びその制御方法 |
EP1530217A2 (en) * | 2003-11-05 | 2005-05-11 | Fujitsu Limited | Semiconductor integrated circuit having temperature detector |
KR100564633B1 (ko) * | 2004-09-25 | 2006-03-28 | 삼성전자주식회사 | 향상된 동작 성능을 가지는 반도체 메모리 장치 및 이에대한 액세스 제어 방법 |
TWI267855B (en) * | 2004-09-25 | 2006-12-01 | Samsung Electronics Co Ltd | System and method for controlling the access and refresh of a memory |
US7708722B2 (en) * | 2006-01-10 | 2010-05-04 | Stealth Therapeutics, Inc. | Stabilized implantable vascular access port |
WO2007087460A2 (en) * | 2006-01-30 | 2007-08-02 | Glenn Bradley J | Bone supported vascular access port |
KR20090116088A (ko) * | 2008-05-06 | 2009-11-11 | 삼성전자주식회사 | 정보 유지 능력과 동작 특성이 향상된 커패시터리스 1t반도체 메모리 소자 |
US7969808B2 (en) * | 2007-07-20 | 2011-06-28 | Samsung Electronics Co., Ltd. | Memory cell structures, memory arrays, memory devices, memory controllers, and memory systems, and methods of manufacturing and operating the same |
KR101308048B1 (ko) * | 2007-10-10 | 2013-09-12 | 삼성전자주식회사 | 반도체 메모리 장치 |
GB0722707D0 (en) * | 2007-11-19 | 2007-12-27 | St Microelectronics Res & Dev | Cache memory |
US7962695B2 (en) * | 2007-12-04 | 2011-06-14 | International Business Machines Corporation | Method and system for integrating SRAM and DRAM architecture in set associative cache |
US7882302B2 (en) * | 2007-12-04 | 2011-02-01 | International Business Machines Corporation | Method and system for implementing prioritized refresh of DRAM based cache |
US8108609B2 (en) * | 2007-12-04 | 2012-01-31 | International Business Machines Corporation | Structure for implementing dynamic refresh protocols for DRAM based cache |
US8024513B2 (en) * | 2007-12-04 | 2011-09-20 | International Business Machines Corporation | Method and system for implementing dynamic refresh protocols for DRAM based cache |
US20090144504A1 (en) * | 2007-12-04 | 2009-06-04 | International Business Machines Corporation | STRUCTURE FOR IMPLEMENTING REFRESHLESS SINGLE TRANSISTOR CELL eDRAM FOR HIGH PERFORMANCE MEMORY APPLICATIONS |
US20090144507A1 (en) * | 2007-12-04 | 2009-06-04 | International Business Machines Corporation | APPARATUS AND METHOD FOR IMPLEMENTING REFRESHLESS SINGLE TRANSISTOR CELL eDRAM FOR HIGH PERFORMANCE MEMORY APPLICATIONS |
KR20090075063A (ko) * | 2008-01-03 | 2009-07-08 | 삼성전자주식회사 | 플로팅 바디 트랜지스터를 이용한 동적 메모리 셀을 가지는메모리 셀 어레이를 구비하는 반도체 메모리 장치 및 이장치의 동작 방법 |
KR20100070158A (ko) * | 2008-12-17 | 2010-06-25 | 삼성전자주식회사 | 커패시터가 없는 동작 메모리 셀을 구비한 반도체 메모리 장치 및 이 장치의 동작 방법 |
KR101442177B1 (ko) * | 2008-12-18 | 2014-09-18 | 삼성전자주식회사 | 커패시터 없는 1-트랜지스터 메모리 셀을 갖는 반도체소자의 제조방법들 |
US9286965B2 (en) * | 2010-12-03 | 2016-03-15 | Rambus Inc. | Memory refresh method and devices |
KR101932663B1 (ko) | 2012-07-12 | 2018-12-26 | 삼성전자 주식회사 | 리프레쉬 주기 정보를 저장하는 반도체 메모리 장치 및 그 동작방법 |
US8982654B2 (en) | 2013-07-05 | 2015-03-17 | Qualcomm Incorporated | DRAM sub-array level refresh |
TWI526966B (zh) | 2013-11-25 | 2016-03-21 | 財團法人資訊工業策進會 | 資料處理裝置及資料處理方法 |
KR102344834B1 (ko) * | 2014-09-24 | 2021-12-29 | 삼성전자주식회사 | 솔리드 스테이트 드라이브 및 이를 포함하는 컴퓨팅 시스템 |
US9928183B2 (en) | 2014-09-26 | 2018-03-27 | Ampere Computing Llc | Priority framework for a computing device |
US10489237B2 (en) | 2014-12-19 | 2019-11-26 | Hewlett Packard Enterprise Development Lp | Flushing data content in response to a power loss event to a processor |
KR102373544B1 (ko) | 2015-11-06 | 2022-03-11 | 삼성전자주식회사 | 요청 기반의 리프레쉬를 수행하는 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법 |
WO2018100331A1 (en) * | 2016-11-29 | 2018-06-07 | Arm Limited | Storage circuitry responsive to a tag-matching command |
CN109983538B (zh) * | 2016-11-29 | 2023-06-16 | Arm有限公司 | 存储地址转换 |
US10437708B2 (en) | 2017-01-26 | 2019-10-08 | Bank Of America Corporation | System for refreshing and sanitizing testing data in a low-level environment |
US10831673B2 (en) | 2017-11-22 | 2020-11-10 | Arm Limited | Memory address translation |
US10929308B2 (en) | 2017-11-22 | 2021-02-23 | Arm Limited | Performing maintenance operations |
US10866904B2 (en) | 2017-11-22 | 2020-12-15 | Arm Limited | Data storage for multiple data types |
US10777297B2 (en) * | 2018-12-10 | 2020-09-15 | Micron Technology, Inc. | Age-based refresh of firmware |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US5469555A (en) | 1991-12-19 | 1995-11-21 | Opti, Inc. | Adaptive write-back method and apparatus wherein the cache system operates in a combination of write-back and write-through modes for a cache-based microprocessor system |
JPH0668671A (ja) * | 1992-08-18 | 1994-03-11 | Matsushita Electric Ind Co Ltd | メモリ装置 |
US5469559A (en) | 1993-07-06 | 1995-11-21 | Dell Usa, L.P. | Method and apparatus for refreshing a selected portion of a dynamic random access memory |
JP3305056B2 (ja) | 1993-08-31 | 2002-07-22 | 沖電気工業株式会社 | ダイナミックram |
US5596521A (en) * | 1994-01-06 | 1997-01-21 | Oki Electric Industry Co., Ltd. | Semiconductor memory with built-in cache |
TW358907B (en) | 1994-11-22 | 1999-05-21 | Monolithic System Tech Inc | A computer system and a method of using a DRAM array as a next level cache memory |
JPH09288614A (ja) | 1996-04-22 | 1997-11-04 | Mitsubishi Electric Corp | 半導体集積回路装置、半導体記憶装置およびそのための制御回路 |
JPH09306164A (ja) * | 1996-05-13 | 1997-11-28 | Internatl Business Mach Corp <Ibm> | メモリ・リフレッシュ・システム |
US5835401A (en) | 1996-12-05 | 1998-11-10 | Cypress Semiconductor Corporation | Dram with hidden refresh |
US6028804A (en) * | 1998-03-09 | 2000-02-22 | Monolithic System Technology, Inc. | Method and apparatus for 1-T SRAM compatible memory |
US6167484A (en) * | 1998-05-12 | 2000-12-26 | Motorola, Inc. | Method and apparatus for leveraging history bits to optimize memory refresh performance |
US5963497A (en) * | 1998-05-18 | 1999-10-05 | Silicon Aquarius, Inc. | Dynamic random access memory system with simultaneous access and refresh operations and methods for using the same |
US6415353B1 (en) * | 1998-10-01 | 2002-07-02 | Monolithic System Technology, Inc. | Read/write buffers for complete hiding of the refresh of a semiconductor memory and method of operating same |
US6389505B1 (en) * | 1998-11-19 | 2002-05-14 | International Business Machines Corporation | Restore tracking system for DRAM |
JP2000251467A (ja) * | 1999-03-02 | 2000-09-14 | Nec Ibaraki Ltd | メモリリフレッシュ制御装置およびその制御方法 |
US6445636B1 (en) * | 2000-08-17 | 2002-09-03 | Micron Technology, Inc. | Method and system for hiding refreshes in a dynamic random access memory |
-
2000
- 2000-09-12 US US09/660,431 patent/US6697909B1/en not_active Expired - Lifetime
-
2001
- 2001-09-07 TW TW090122244A patent/TW526491B/zh not_active IP Right Cessation
- 2001-09-12 JP JP2001276057A patent/JP4360766B2/ja not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006512717A (ja) * | 2002-12-31 | 2006-04-13 | インテル コーポレイション | ダイナミックメモリのリフレッシュポート |
JP4738814B2 (ja) * | 2002-12-31 | 2011-08-03 | インテル コーポレイション | ダイナミックメモリのリフレッシュポート |
KR101731508B1 (ko) | 2012-11-30 | 2017-05-11 | 인텔 코포레이션 | 저장된 행 해머 임계값에 기초한 행 해머 모니터링 |
JP2018120589A (ja) * | 2017-01-25 | 2018-08-02 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 揮発性メモリキャッシュのデータを代替する方法及びそのためのキャッシュ管理部 |
JP7164951B2 (ja) | 2017-01-25 | 2022-11-02 | 三星電子株式会社 | 揮発性メモリキャッシュのデータを代替する方法及びそのためのキャッシュ管理部 |
Also Published As
Publication number | Publication date |
---|---|
US6697909B1 (en) | 2004-02-24 |
JP4360766B2 (ja) | 2009-11-11 |
TW526491B (en) | 2003-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4360766B2 (ja) | Dramキャッシュ・メモリ中のデータをリフレッシュする方法および装置 | |
US11636038B2 (en) | Method and apparatus for controlling cache line storage in cache memory | |
US5751994A (en) | System and method for enhancing computer operation by prefetching data elements on a common bus without delaying bus access by multiple bus masters | |
US4937791A (en) | High performance dynamic ram interface | |
US7590021B2 (en) | System and method to reduce dynamic RAM power consumption via the use of valid data indicators | |
US5111386A (en) | Cache contained type semiconductor memory device and operating method therefor | |
US5999474A (en) | Method and apparatus for complete hiding of the refresh of a semiconductor memory | |
US5329629A (en) | Apparatus and method for reading, writing, and refreshing memory with direct virtual or physical access | |
US7263020B2 (en) | Memory device capable of refreshing data using buffer and refresh method thereof | |
JPH0359458B2 (ja) | ||
US7917692B2 (en) | Method and system for using dynamic random access memory as cache memory | |
JP2006236548A (ja) | 集積回路装置 | |
JP4304176B2 (ja) | 集積回路装置 | |
KR20140088725A (ko) | 읽기 및 쓰기 접근에 따른 선택적 리프레쉬 기능을 구비한 동적 메모리 장치 및 그 선택적 리프레쉬 방법 | |
EP0535701A1 (en) | Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM) | |
US6594732B1 (en) | Computer system with memory system in which cache memory is kept clean | |
US20010034808A1 (en) | Cache memory device and information processing system | |
JPH04324187A (ja) | ダイナミックram | |
JPH04313127A (ja) | キャッシュメモリシステム | |
JPH03205680A (ja) | 行列配置の複数の記憶セルを有する記憶装置 | |
JP2001154914A (ja) | キャッシュバイパス時のデータ転送装置と方法 | |
JPH04262432A (ja) | 高速アクセスモード記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050329 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050622 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050627 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20050908 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20050908 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060516 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060809 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060919 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20061013 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090527 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20090528 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20090605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090605 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20090804 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090811 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120821 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120821 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120821 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S202 | Request for registration of non-exclusive licence |
Free format text: JAPANESE INTERMEDIATE CODE: R315201 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120821 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130821 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |