TW526491B - Method and apparatus for refreshing data in DRAM cache memory - Google Patents
Method and apparatus for refreshing data in DRAM cache memory Download PDFInfo
- Publication number
- TW526491B TW526491B TW090122244A TW90122244A TW526491B TW 526491 B TW526491 B TW 526491B TW 090122244 A TW090122244 A TW 090122244A TW 90122244 A TW90122244 A TW 90122244A TW 526491 B TW526491 B TW 526491B
- Authority
- TW
- Taiwan
- Prior art keywords
- address
- sub
- update
- data
- array
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 208
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000003491 array Methods 0.000 claims description 33
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 claims 1
- 210000004556 brain Anatomy 0.000 claims 1
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000001934 delay Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 239000003990 capacitor Substances 0.000 description 2
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 241000237509 Patinopecten sp. Species 0.000 description 1
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 235000020637 scallop Nutrition 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
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Dram (AREA)
- Memory System (AREA)
Description
526491 A7 ______ B7 五、發明説明(1 ) !_·發明範_ 本發明有關於電腦系統中的快取記憶體,a尤其有關於 一種在無更新不順之下更新動態隨機存取記憶體(DRAM 快取記憶體的方法及裝置。 1.前案說明 裝 在一般電腦系統中,存在記憶體階例以支援具資料儲存 功能之中央處理器(CPU),在電腦中最常作為主記憶體使 用的i己憶體元件是動態隨機存取記憶體(DRAM),這是因 為DRAM的成本較低且密度較高,利於在電腦系統的小區 域中儲存大量的資料,惟,儲存在DRAM中的資料必須周 期性的更新,否則因為DRAM記憶格中電荷的洩露而使資 料流失。因此可比較在dram中更新資料所需的高系統成 本與速度減慢的優劣。 線 當必須用較慢記憶體與快速處理器作介面時,整體系統 速度會減慢因為處理器周期比記憶體的資料位址存取時間 快,一種處理此一情況的方法是使用高速内建的快取記憶 體以減少存取慢速記憶體(即電腦系統的主記憶體)的有效 時間。 快取記憶體是緩衝器以保存從較大且一般較慢的主記憶 月豆中選擇的'^料’以便處理益能更快的從選擇資料中擷取 所茜資料。快取記憶體是根據以下原理,即在任何時間某 一資料與其他資料相比具有較高機率被處理器選擇β若處 理器要使用的高機率資料儲存在較快存取時間的快取記憶 體中,則會增加存取資料的平均速度,因此一般較小且比 -4 - 本紙張尺度適用中國國家標準(CNS) Α4规格(210X 297公釐) 526491 A7 B7 五、發明説明(2 ) 主圮憶體快的快取記憶體即用以儲存主記憶體的最常存取 資料。 在現代電腦處理系統的記憶體階層中,快取記憶體一般 在最向層處理器(即中央處理器(cpu))的下面,通常快取 记憶體分成複數個層,例如層丨快取記憶體(L丨)及層2快取 曰己憶體(L 2 ),這些層之一(如層i快取記憶體[丨)可以與 CPU在同一晶片上,因此稱為晶片上,此種晶片上一般設 置有靜®隨機存取記憶體(SRAM)其具有較低密度但是速 度較同。快取記憶體的其他層(如層2快取記憶體[2 )可以 與cpu分開設置且配有DRAM其具有較高密度但是速度較 低。使用鬲密度DRAM作為電腦系統處理器的快取記憶體 即可棱供大型快取記憶體,以便能減少快取記憶體失誤率 (如以下解釋)。 因為間置一段時間後儲存在DRAM中的資料即流失,所 以DRAM需要更新周期以便將資料回存到dram,中 的記憶格必須在一定時間周期内周期性的更新,此時間周 /、月稱為保存時間,依技術及晶片溫度而定,保存時間的範 圍從數亳秒到數百毫秒,藉由存取記憶體陣列中的各列, '人列即可更新資料,當存取的記憶體陣列要更新時, 即讀取儲存在陣列中記憶格的資料以感測放大器,且接著 寫回到記憶格。因此將對應各記憶格的電容器再充電到其 初始值,在DRAM中所需的這種更新周期會產生大的延 遲,因為當記憶體陣列的列在更新周期的中間時,不能在 DRAM中存取資料。換言之,在更新DRAM快取記憶體的記 本纸張尺奴財Α4·(21()Χ297公爱)_ 526491
憶格時’在减憶體區域中不能發生其他操作,此不動時 間使得在.電腦系統的記憶體存取資料的有效速度減慢,雖 ;、、:在陕取记匕的圮憶袼中使用高品質電容器可減少資料 更新時間’但是資料更新的要求仍是在電腦系統中導致時 序延遲的主要因素。 授予Leung的美國專利6,〇28,8〇4號揭示一種上述問題的解 決万法,該專利敘述一種操作DRAM快取記憶體的峰頻率 方法居頻率同於CPU的峰外部存取頻率,DRAM更新操作 的更新周期可以是隱藏的,以便記憶體系統出現在外部如 同SRAM,惟,這種習用系統的缺點是種習用電腦系統忡 使用的DRAM快取記憶體必須能比cpu的操作速度快,而這 實際上是極難,而且即使可行成本也極高。 因此需要一種更新儲存在DRAM快取記憶體中資料的改 良方法以消除過多的延遲。 發明目的及總結 本發明的目的是提供一種在無更新不順之下更新電腦系 統中快取記憶體之資料的方法及裝置。 為了達成上述及其他目的,本發明提供一種在快取記憶 體中更新資料之方法,該記憶體可由一電腦系統中之處理 器存取,其中該方法包括以下步驟:(a)以儲存在快取記 憶體中之TAG位址確認處理器之請求位址;(b)在步驟(a) 確認出請求位址時,存取對應請求位址之字線其在複數個 快取記憶體之子陣列之一中;(c)產生更新位址以更新複 數個子陣列中之資料,其不在快取記憶體之子陣列中,其 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 線 526491
裝 中各更新位址^址-對應字線,其在_子陣列以外之複數 個子陣列之每一者中;及⑷在字線上執行讀寫操作,該 字線由_子陣列中之請求位址存取,同時更新—子陣列以 外複數個子陣列中之資料。最好同時執行相對於一子陣列 之讀寫操作及更新一子陣列以外複數個子陣列中之資料。 上述方法之步驟(a)包括以下步驟:儲存丁八(}位址在一丁 AG 死憶體中,各TAG位址與儲存在快取記憶體中之對應字線 資料結合;比較請求位址與TAG位址;及選擇與請求位址 相同之TAG位址。上述方法之步驟⑷包括以下步驟:藉由 追蹤子陣列之字線而提供一子陣列外複數個子陣列之每一 者 < 資料更新時序,及當更新子陣列中之資料時,重設一 子陣列以外複數個子陣列之每一者之資料更新時序。 訂 線 本發明也提供一種更新快取記憶體中資料之裝置,該快 取記憶體可由一電腦系統中之處理器存取,其中該裝置包 括:一記憶體控制器以偵測處理器之請求位址;一比較器 以比較記憶體控—制器偵測到之請求位址與儲存在快取記憶 體中資料結合之位址;及一更新控制器當比較器找到與請 求位址相同之位址時,即產生更新位址以更新儲存在快取 記憶體中之資料,其中請求位址存取快取記憶體之第一子 陣歹j中之子線,而各資料位址存取第一子陣列以外各子陣 列中之對應字線。比較器最好從快取記憶體中之丁AG記憶 體中接收TAG位址,而各TAG位址與儲存在快取記憶體之 資料5己憶體中之部分資料結合。本發明的更新控制器最好 包括更新位址產生器以產生更新位址,各更新位址產生器 526491 A7
:第-子陣列以外之各子陣列結合以產生一更新位址以 更新儲存在第一子陣列以外一 廄 ..^ 丁 M D卜對應子陣財之資料,而且 也^括-更新計數器以提供第_子陣列以外—對應子陣列 =新時序。當更新子陣列中之資料時,該子陣列與更新 梢器結合,更新計數器即重設更新時序為—初始值。 ^下本發明實例的詳細說明配合附圖即可更明了本發明 的這些及其他目的,特徵及優點。 世圖簡軍諸明 以下參考附圖及較佳貫例而詳細說明本發明。 圖1疋電腦系統中記憶體配置的方塊圖,其中適用本發 明的較佳實例; 天 圖2的方塊圖說明圖1的快取記憶體; 圖3的流程圖說明一種根據本發明更新快取記憶體的方 法;及 圖4的方塊圖說明根據本發明的快取記憶體的子陣列及 資料更新操作。- 較佳實例說明 以下揭示本發明的詳細實例,惟,本文揭示的特定結構 及功能細節只是在說明本發明較佳實例,相同的更新概念 可適用在任何快取層的任何動態隨機存取記憶體 (DRAM)。 一種用於電腦系統的快取記憶體包括大型主記憶體是結 合快取記憶體’結合快取記憶體包括2種記憶體類型:資 料記憶體及TAG記憶體,資料記憶體儲存快取線它是主記 本紙張尺度適用中國國家標準(CNS)A4規格(21〇X297公釐) 526491 A7 _— ______ B7 五、發明説明(6 ) 憶體的固定區域(如字線),而TAG記憶體(或目錄記憶體) 儲存各快取線的位址其儲存已在資料記憶體中。 參考圖1 ’其中顯示一方塊圖以說明根據本發明的電腦 系統的記憶體結構,電腦系統包括一中央處理器(cpu) j i 其具有一晶片上快取記憶體(L丨快取)丨3,一主記憶體 1 5 ’ CPU匯泥排1 7 ’記憶體控制器丨8以控制cpu匯流排1 7 上的資料交通,及一第二層快取記憶體(L 2快取)丨9。 第一層快取記憶體1 3與CPU 1 1整合相同的晶片上,第一 … 層快取記憶體1 3較快因為它以高頻寬與CPU 1 1整合,且線
長較短因而避免與傳送信號到外部晶片及/或從外部晶片 接收信號相關的任何延遲,第二層快取記憶體丨9在與CPU 不同的晶片上,且具有比第一層快取記憶體i 3大但是比主 記憶體1 5小的容量。 快取記憶體1 3,1 9作為CPU 1 1與主記憶體1 5之間的緩 衝器,在各快取記憶體1 3,1 9中,資料字儲存在快取記憶 月豆且組合成數個-小頁稱為快取區或快取線。快取記憶體的 内容是一組主記憶體區的複製,各快取線標示有一 TAG位 址’因此各快取線知道快取線屬於主記憶體的那一部分, 配給對應快取線的TAG位址(其可以是非連續)儲存在稱為 TAG記憶體或目錄的特別記憶體中。 在弟一層快取记fe體1 3中’當CPU 1 1請求位址以存取某 一資料時’凊求的位址即與儲存在第一層快取記憶體1 3的 TAG記憶體中的TAG位址比較(圖2),若在TAG記憶體的 TAG位址中發現請求的位址,則判定對應該請求位址的資 本紙張尺度適用中國國家標準(CNS) A4规格(210 X 297公釐) 裝 訂 線 526491 A7 ___ _ B7____ 五、發明説明(7 ) 料是在快取記憶體1 3中,這稱為命中。在快取記憶體1 3中 找到該請.求位址的資料時,資料即傳送到CPU 11,TAG記憶 體也包括偏移位址以找出快取記憶體1 3中的資料,在快取 記憶體中找出資料是習用的,因而在此省去其詳細說明。 換言之,若未在快取記憶體1 3的TAG記憶體中找到請求 的位址,則判定對應該請求位址的資料不在快取記憶體1 3 中,這稱為失誤。當失誤發生在第一層快取記憶體1 3時, 請求的位址即傳送到低層記憶體,如第二層快取記憶體 1 9。第二層快取記憶體中的資料存取過程詳如以下所述, 若失誤發生在第二層快取記憶體1 9 (即資料不在第二層快 取記憶體),則傳送請求的位址存取第三層快取記憶體(若 有)或主記憶體。 在圖1,因為電腦系統最好在第一層快取記憶體1 3中使 用SRAM以及在第二層快取記憶體1 9中使用DRAM,所以第 一層快取記憶體1 3中不需要資料更新過程❶因此以第二層 快取記憶體1 9來·說明根據本發明的更新資料方法。惟,該 注意的是本發明適用於階層電腦系統中使用的任何DRAM 快取記憶體以支援主記憶體。 參考圖2,第二層快取記憶體1 9包括資料記憶體19ι及 TAG記憶體192,資料記憶體191儲存有較可能被CPU 11 (圖 1)選擇的資料,而TAG記憶體192儲存的TAG位址各定址儲 存在資料記憶體191中資料的對應快取線。 如上所述,當失誤發生在第一層快取記憶體1 3 (圖!) 時,CPU請求的位址即載入Cpu匯流排1 7控制器(圖1 )以便 -10- 本纸張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 線 526491 A7 B7 五、發明説明(8 ) 傳送到第二快取記憶體1 9。記憶體控制器1 8 (圖1 )從CPU 匯流排接收請求的位址且傳送請求的位址到包括在TAG更 新控制器194中的TAG比較器193。TAG比較器193比較請求 的位址與快取記憶體1 9的TAG記.憶體TAG 192提供的TAG位 址。若在TAG記憶體的TAG位址中找到請求的位址(即發生 命中),則由CPU在資料記憶體19 1中存取對應該請求位址 (選擇TAG位址)的快取線。若未在TAG記憶體的TAG位址 中找到請求的位址(即發生失誤),則傳送請求位址到主記 憶體1 5 (圖1)以找出一字線其對應主記憶體中的請求位 址0 提供TAG更新控制器194以更新儲存在DRAM快取記憶體 1 9的資料記憶體191中的資料,使用TAG更新控制器194以 映射出一歷史性性以追縱多個記憶體位址各需要一資料更 新過程。藉由使用TAG更新控制器194,資料更新過程即不 會產生延遲,為了執行資料更新過程,丁AG更新控制器194 也包括更新位址產生器320及更新計數器322,資料更新過 程的詳細說明如以下。 參考圖3 ’提供一流程圖以說明根據本發明在dram快取 ?己憶體(如圖1的第二層快取記憶體1 9)中更新資料的方 法。適種由CPU判定是否有外部位址請求以便在字線上執 行讀寫操作,其對應快取記憶體中的請求位址(步驟3〇2), 換T之,判定CPU是否請求在快取記憶體的字線上讀取或 寫入資料,以便將表示字線的位址載入cpu匯流排。若 CPU不請求位址,則執行正常的資料更新操作(步驟)。 在正¥更新操作中,依此更新儲存在快取記憶體的資料以
526491
便有送更新快取記憶體的記憶體陣列,包括在TAG更新控 制器194 (圖2 )中的更新位址產生器320產生至少一更新位址 以便根據更新計數器322(圖2)提供的更新時脈而更新資料 其在快取記憶體的子陣列的對應字線中。例如在某一段時 間可同時更新快取記憶體中每一子陣列的字線。因而在此 例中’各子陣列不需要更新位址產生器,以下參考圖4以 詳細說明快取記憶體中子陣列的更新位址產生。 若CPU有請求位址,即中止正常更新操作的更新周期(步 驟306),中止快取記憶體的正常更新操作時,即傳送請求 的更新位址到TAG更新控制器,TAG更新控制器控制命中 與失誤比較它是使用TAG比較器193 (圖2)及TAG記憶體 192(圖2)而執行(步驟307)。在命中與失誤比較中,命中是 指在快取記憶體中找到CPU請求的資料,而失誤是指未在 快取記憶體中找到請求的資料因而到主記憶體以存取資 料。為了判定命中或失誤,TAG比較器比較請求位址與儲 存在TAG記憶體中的TAG位址,且判定是否在TAG位址中 找到請求的位址。 在執行命中與失誤比較時’若未在TAG記憶體的丁AG位 址中找到請求的位址(即在步驟3〇8中無命中),則傳送請求 的位址到主記憶體。使用請求的位址以表示主記憶體中的 字線,記憶體㈣器18(圖1)即存取字線以執行讀寫操作 其由王記憶體的字線上的CPU請求(步驟310)。執行讀寫操 作時,記憶體控制器即執行快取記憶體的^更新操= (步驟304),記憶體控制器也將執行讀寫操作的位址傳送到 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公 526491
更新位址產生器32〇,以便不必再更新這些位址中儲存的 資料。 執仃命中與失誤比較時,若未在.TAG記憶體的TAG位址 中找到請求位址(即在步驟308命中),則更新位址產生器 產生f夬取$己彳思體中的其他子陣列的更新位址,它不是 具有凊求位址的子陣列(步驟312)。快取記憶體具有多個子 陣列,而各子陣列中的資料是由不同字線位址定址。當命 中時,可以用請求位址(或選擇的TAG位址)來存取快取記 憶體的子陣列中的字線。在該例中,請求位址成為一存取 位址以存取子陣列中的對應字線。而且,當命中時,更新 位址產生器320即產生更新位址以更新快取記憶體的其他 子陣列中的資料,它不是具有用於CPU讀寫操作的字線的 子陣列。各更新位址可定址要更新的各子陣列中的字線 (詳如圖4所述)。 例如更新位址產生器320儲存優先指數,更新指數及字 線位址以便各字線位址具有對應的優先指數及更新指數。 優先指數指示更新位址產生器32〇中對應字線位址的替代 優先順序,更新指數指示資料可靠度(即髒位元或非有效 位元),字線位址在與快取記憶體相同的位址,其中在記 憶體控制器控制下執行CPU的讀寫操作請求。 得到更新位址產生器320的更新位址時,即分別使用cpu 的請求位址(即存取位址)及内部產生的更新位址而同時執 行cpu請求的讀寫操作及資料更新操作(步驟314)。在快取 記憶體的予陣列中執行資料更新操作,該子陣列不是其資 ^___ -13« 本紙張尺度適用中國國家標準(CNS) A4規格(21〇X297公I) 裝 訂 線 526491 A7 B7 五、發明説明 料對應存取位址的子陣列且加以儲存。在快取記憶體中執 行謂寫及資料更新操作時,在子陣列的存取位址中的存取 資料過私執行與各更新位址DRAM更新資料過程的執行是 同時的,其分別提供給子陣列,它不是提供存取位址的子 陣列。結果,可大幅減少(或完全消除)習用資料更新需求 所產生的延遲。 參考圖4的方塊圖其說明快取記憶體的配置及快取記憶 體的字線位址,DRAM快取記憶體具有多個子陣列各具有 一感測放大器,由對應字線位址存取各子陣列中儲存的資 料,例如圖4的快取記憶體具有4個子陣列4丨到44各具有 一感測放大器排401到404 ,假設一字線在第一子陣列4丨其 中要執行CPU請求的讀寫操作,則提供對應字線的存取位 址給第一子陣列41,同時更新位址產生器32〇α·32〇(:分別在 第二到第四子陣列42到44產生第_到第三更新位址。雖然 用第一子陣列41中的存取位址存取對應字線以執行cpu請 求的讀寫操作,’即分別用第_到第三更新位址存取第二到 第四子陣列42到44中的對應字線以更新對應字線的資料。 換言之,在資料更新操作中,用第一到第三更新位址存取 快取記憶體的第二到第四子陣列42到44中的字線資料。例 如包括在TAG更新控制器194中的第一到第三更新位址產生 器320A-320 C分別從第一到第三更新計數器322八_32兀接收一 更新時脈,且分別在第二到第四子陣列42到44中產生第一 到第三更新位址。在4個子陣列41到44的情況中,如由位 址的前2數字識別各子陣列以存取子陣列中的字線。換言 本纸張尺度適用中國國家標準(CNS) A4規格(210 X 297公董) 裝 訂 線 526491 A7 ____ B7 五、發明説明(12 ) 之’字線位址的前2數字是‘〇〇,,‘〇1,,‘1〇,,或‘11,, 其分別表示第一子陣列4 1,第二子陣列42,第三子陣列 4 3或第四子陣列4 4。 在讀寫操作中,用存取位址存取第一子陣列4 1中的字線 貝料’而已產生用以更新第一子陣列4 1的更新位址必須保 存直到次一時段以執行更新操作。換言之,當cplJ存取任 何其他3個子陣列4 2到4 4時,即在第一子陣列4 1執行資料 更新過程。惟,更新位址產生器提供的更新位址僅更新在 良好可更新情況下的資料。若CPU增加時間以繼續存取第 一子陣列4 1的某一部分,則儲存在第一子陣列4 1的其他部 分中的資料會變髒,以便當CPU需要它時必須從主記憶體 替代該資料。亦即,必須從主記憶體複製回資料用於已老 化而且處於不可更新情況的那些鱗資料,惟,對於多個子 陣列而言這種高度不均一存取的機率是極小的。 更新位址產生器320最好包括更新計數器322其提供各子 陣列的字線的更~新時序及位址,其中要執行更新操作。例 如更新計數器322追蹤要更新的各子陣列的字線位址,當 更新一字線資料時,更新計數器322產生子陣列的次一位 址用以更新。當更新子陣列中的所有字線時,更新計數器 322會重設為0且在次更新周期再度更新第一字線。含鱗位 元的字線位址,其已在一段預設時間未更新或存取,則也 1己錄在TAG記憶體,而且當快取記憶體不主動執行讀寫操 作時即藉由從主記憶體傳送資料而更新。因為追縦且記錄 各字線位址的時序資訊,所以可偵測到含鱗位元的字線位 -15- ^紙張尺度適用中國國家標準(CNS) A4規格(210X297公--- 526491
址。接著藉由傳送信號以清潔字線位址的髒資料,該位址 具有主記憶體的資料,以更新財線位址的資料。要清潔 的鱗貝料在-些子陣列巾,它不是根據㈤請求而存 料的子陣列。 、 假設DRAM快取記憶體具“個子陣列各儲存可由字線位 址存取的資料,則同時執行子陣列的讀寫操作及^個子 陣列的資料更新操作。換言之,不、需要額外時間以執行快 取記憶體中η]個子陣列的資料更新操作,因此在〇讀快 取記憶體中資料更新操作所需的時間不會在㈣中產生延 遲。 已說明-種在無更新不順之下更新DRAM快取記憶體中 資料的方法,根據上述教示如熟於此技術者了解的有各種 改良及變化,因此要了解的是在後附申請專利的範圍下, 可以用上述以外的方式實施本發明。 __ -16 - 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 線
Claims (1)
- ABCD 526491 六、申請專利範圍 1· 一種在快取記憶體中更新資料之方法,該記憶體可由一 私腦系統中之處理器存取,該方法包括以下步驟: (a) 以儲存在快取兄丨思體中之τ a G位址確認處理器之 請求位址; (b) 在步驟(a)確逐出請求位址時,存取對應在複數個 快取記憶體之子陣列之一中之請求位址之字線; (c) 產生更新位址以更新複數個子陣列中之資料,並 不在快取記憶體之子陣列中,其中各更新位址定址一對 應字線,其在一子陣列以外之複數個子陣列之每一 中;及 (d) 在年線上執行謂寫操作,該字線由广子陣列中之 清求位址存取,同時更新一子陣列以外複數個子陣列中 之資料。 2·如申請專利範圍第1項之方法,其中同時執行相對於一 子陣列之讀寫操作及更新一子睁列以外複數個子陣列中 之資料。 ~ 3·如申請專利範圍第1項之方法,其中步驟(a)包括以下步 驟: 儲存TAG位址在一 TAG記憶體中,各tag位址與儲 存在快取記憶體中之對應字線資料結合; 比較請求位址與TAG位址;及 選擇與請求位址相同之T A G位址。 4.如申請專利範圍第3項之方法,更包括以下步驟:當請 求位址與TAG記憶體中之TAG位址不同時,之對於快 -17- 本紙張尺度適用中國國家橾準(CNS) A4規格(21〇χ297公釐) 裝 訂 線 526491,取記憶體中之資料執行一正常更新操作。 5·如申請專利範圍第1項之方法,其中步驟⑷包括以下步 驟·在-子陣列以外之複數個子陣列中用更新位址同時 存取子、’泉’各更新位址與—子陣列以外複數個子陣列之 對應者結合。 6. 如申請專利範固第η之方法,”步驟⑷包括以下步 驟:藉由追料陣列之字線而提供—子陣列以外複數個 子陣列之每一者之資料更新時序 7. 如申請專利範圍第6項之方法,更包括以下步驟:备更 新子㈣中之資料時,重設_子陣列以外複數個子;列 之每一者之資料更新時序。 8. 如申請專利範固第卜負之方法,其中各更新位址包括: -優先指數以表示-對應更新位址中資料之替代優先順 序,及-字線位址以定址快取記憶體之對應子陣列中之 字線。 裝 訂 線 9·如申請專利範圍第8項之方法,其中各更新位址包括— 更新指數以指示一對應字線資料之資料可靠度。 10. -種在快取記憶體中更新資料之方法,該記憶體可由一 電腦系統中之處理器存取,該方法包括以下步驟: (e) 偵測處理器之請求位址; (f) 當偵測到請求位址時即中止一正常更新操作,其 中依序有送更新快取記憶體之複數個子陣列中儲存之資 料; 貝 (g) 比較請求位址與先前儲存在一記憶體中之位址, -18 - D8 六、申請專利範圍 •記憶體中之位址與快取記憶體中之資料結合其具有較高 被處理器選擇之機率; (h) 產生更新位址以更新儲存在快取記憶體中之資 料’各更新位址係根據對應更新位址之資料年齡而產 生,及 (i) 在請求位址存取之字線上執行讀寫操作及在更新 位址存取之字線上更新資料,其中同時執行讀寫操作及 更新資料。 u·如申請專利範圍第10項之方法,其中步驟(i)包括以下 步驟: 提供請求位址到快取記憶體之子陣列以存取字線,其 上執行讀窝操作;及 提供更新位址到複數個子陣列,其非提供請求位址之 子陣列,其中各更新位址存取一對應字線其在子陣列以 外複數個子陣列之每一者中。 12·—種更新快取記憶體中資料之裝置,該快取記憶體可由 一電腦系統中之處理器存取,該裝置包括: 一記憶體控制器以偵測處理器之請求位址; 一比較器以比較記憶體控制器偵測到之請求位址與儲 存在快取記憶體中資料結合之位址;及 一更新控制器當比較器找到與請求位址相同之位址 時’即產生更新位址以更新儲存在快取記憶體中之資 料,其中請求位址存取快取記憶體之第一子陣列中之字 線,而各資料位址存取第一子陣列以外各子陣列中之對 -19- 526491 A8 B8 C8 D8申請專利範圍 .應字線。 ^如申請專利範圍第12項之裝置,其中比較器從快取記憶 體中之TAG記憶體接收TAG位址,而各TAG位址與儲 存在快取記憶體之資料記憶體中之部分資料結合。 14.如申請專利範圍第1 3項之裝置,其中快取記憶體之資料 記憶體儲存之資料具有較高被處理器選擇之機率。 Κ如申請專利範圍第丨2項之裝置,其中更新控制器包括複 數個更新位址產生器以產生更新位址,其中各更新位址 產生器與第一子陣列以外之各子陣列結合且產生一更新 位址,以更新儲存在第一子陣列以外一對應子陣列中之 資料。 16·如申請專利範圍第15項之裝置,其中複數個更新位址產 生器之每一者包括一更新計數器以提供第一子陣列以外 一對應子陣列之更新時序。 Π·如申請專利範圍第16項之裝置,其中當更新子陣列中之 資料時,該子陣列與更新計數器結合,更新計數器即重 設更新時序為一初始值。 18·如申請專利範圍第12項之裝置,其中更新控制器提供更 新位址到第一子陣列以外之子陣列,同時提供請求位址 到第一子陣列。 •20- 本纸張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 裝 訂 線
Applications Claiming Priority (1)
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 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW526491B true TW526491B (en) | 2003-04-01 |
Family
ID=24649505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW090122244A TW526491B (en) | 2000-09-12 | 2001-09-07 | Method and apparatus for refreshing data in DRAM cache memory |
Country Status (3)
Country | Link |
---|---|
US (1) | US6697909B1 (zh) |
JP (1) | JP4360766B2 (zh) |
TW (1) | TW526491B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9262466B2 (en) | 2013-11-25 | 2016-02-16 | Institute For Information Industry | Data processor and a data processing method |
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 |
Families Citing this family (42)
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 |
US7617356B2 (en) * | 2002-12-31 | 2009-11-10 | Intel Corporation | Refresh port for a dynamic memory |
KR100522431B1 (ko) * | 2003-04-30 | 2005-10-20 | 주식회사 하이닉스반도체 | 리프레쉬 동작이 향상된 고속 데이터 억세스를 위한반도체 메모리 장치 |
KR100543932B1 (ko) * | 2003-04-30 | 2006-01-23 | 주식회사 하이닉스반도체 | 초기화 동작시간이 감소된 태그블럭을 구비하는 반도체 메모리 장치 및 그의 구동방법 |
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 |
TWI267855B (en) * | 2004-09-25 | 2006-12-01 | Samsung Electronics Co Ltd | System and method for controlling the access and refresh of a memory |
KR100564633B1 (ko) * | 2004-09-25 | 2006-03-28 | 삼성전자주식회사 | 향상된 동작 성능을 가지는 반도체 메모리 장치 및 이에대한 액세스 제어 방법 |
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 |
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 |
KR20090116088A (ko) * | 2008-05-06 | 2009-11-11 | 삼성전자주식회사 | 정보 유지 능력과 동작 특성이 향상된 커패시터리스 1t반도체 메모리 소자 |
KR101308048B1 (ko) * | 2007-10-10 | 2013-09-12 | 삼성전자주식회사 | 반도체 메모리 장치 |
GB0722707D0 (en) * | 2007-11-19 | 2007-12-27 | St Microelectronics Res & Dev | Cache memory |
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 |
US8108609B2 (en) * | 2007-12-04 | 2012-01-31 | International Business Machines Corporation | Structure for implementing dynamic refresh protocols for DRAM based cache |
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 |
US7882302B2 (en) * | 2007-12-04 | 2011-02-01 | International Business Machines Corporation | Method and system for implementing prioritized refresh of DRAM based cache |
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 |
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 | 삼성전자 주식회사 | 리프레쉬 주기 정보를 저장하는 반도체 메모리 장치 및 그 동작방법 |
US9032141B2 (en) | 2012-11-30 | 2015-05-12 | Intel Corporation | Row hammer monitoring based on stored row hammer threshold value |
US8982654B2 (en) | 2013-07-05 | 2015-03-17 | Qualcomm Incorporated | DRAM sub-array level refresh |
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 |
KR102373544B1 (ko) | 2015-11-06 | 2022-03-11 | 삼성전자주식회사 | 요청 기반의 리프레쉬를 수행하는 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법 |
WO2018100363A1 (en) * | 2016-11-29 | 2018-06-07 | Arm Limited | Memory address translation |
JP7049338B2 (ja) * | 2016-11-29 | 2022-04-06 | アーム・リミテッド | タグマッチングコマンドに応答する記憶回路 |
US10394719B2 (en) * | 2017-01-25 | 2019-08-27 | Samsung Electronics Co., Ltd. | Refresh aware replacement policy for volatile memory cache |
US10437708B2 (en) | 2017-01-26 | 2019-10-08 | Bank Of America Corporation | System for refreshing and sanitizing testing data in a low-level environment |
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 |
US10831673B2 (en) | 2017-11-22 | 2020-11-10 | Arm Limited | Memory address translation |
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 (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9262466B2 (en) | 2013-11-25 | 2016-02-16 | Institute For Information Industry | Data processor and a data processing method |
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 |
Also Published As
Publication number | Publication date |
---|---|
US6697909B1 (en) | 2004-02-24 |
JP4360766B2 (ja) | 2009-11-11 |
JP2002150771A (ja) | 2002-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW526491B (en) | Method and apparatus for refreshing data in DRAM cache memory | |
US6757784B2 (en) | Hiding refresh of memory and refresh-hidden memory | |
JP3807582B2 (ja) | 情報処理装置及び半導体装置 | |
US6415364B1 (en) | High-speed memory storage unit for a multiprocessor system having integrated directory and data storage subsystems | |
US6304945B1 (en) | Method and apparatus for maintaining cache coherency in a computer system having multiple processor buses | |
US7962695B2 (en) | Method and system for integrating SRAM and DRAM architecture in set associative cache | |
JP3715837B2 (ja) | バンク・ビット割り当て方法 | |
US6389514B1 (en) | Method and computer system for speculatively closing pages in memory | |
US6151664A (en) | Programmable SRAM and DRAM cache interface with preset access priorities | |
JPH0652633B2 (ja) | メモリ・サブシステム | |
US7925857B2 (en) | Method for increasing cache directory associativity classes via efficient tag bit reclaimation | |
US7117312B1 (en) | Mechanism and method employing a plurality of hash functions for cache snoop filtering | |
US7325102B1 (en) | Mechanism and method for cache snoop filtering | |
CN116250041A (zh) | 用于dram的刷新管理列表 | |
US6535966B1 (en) | System and method for using a page tracking buffer to reduce main memory latency in a computer system | |
US7328311B2 (en) | Memory controller controlling cashed DRAM | |
US20060190678A1 (en) | Static random access memory (SRAM) compatible, high availability memory array and method employing synchronous dynamic random access memory (DRAM) in conjunction with a single DRAM cache and tag | |
JP3362775B2 (ja) | Dram及びdramのデータ・アクセス方法 | |
US6222786B1 (en) | Dynamic random access memory with write-without-restore and systems and methods using the same | |
EP0535701A1 (en) | Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM) | |
CN113597599A (zh) | 具有高速缓存模式的dram部件的系统应用 | |
US11462266B1 (en) | Mitigating write disturbance errors of phase-change memory module | |
EP1523712B1 (en) | A system, apparatus, and method for a flexible dram architecture | |
US20140195729A1 (en) | Memory Having Improved Reliability for Certain Data Types | |
US20240086325A1 (en) | DRAM Cache with Stacked, Heterogenous Tag and Data Dies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent | ||
MM4A | Annulment or lapse of patent due to non-payment of fees |