TWI494919B - 記憶體預取系統及方法 - Google Patents

記憶體預取系統及方法 Download PDF

Info

Publication number
TWI494919B
TWI494919B TW099104871A TW99104871A TWI494919B TW I494919 B TWI494919 B TW I494919B TW 099104871 A TW099104871 A TW 099104871A TW 99104871 A TW99104871 A TW 99104871A TW I494919 B TWI494919 B TW I494919B
Authority
TW
Taiwan
Prior art keywords
memory
prefetch
stacked
repository
controller
Prior art date
Application number
TW099104871A
Other languages
English (en)
Other versions
TW201037704A (en
Inventor
Joe M Jeddeloh
Original Assignee
Micron Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Micron Technology Inc filed Critical Micron Technology Inc
Publication of TW201037704A publication Critical patent/TW201037704A/zh
Application granted granted Critical
Publication of TWI494919B publication Critical patent/TWI494919B/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6022Using a prefetch buffer or dedicated prefetch cache
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Memory System (AREA)
  • Advance Control (AREA)

Description

記憶體預取系統及方法
本文中所闡述之各種實施例係關於與半導體記憶體相關聯之系統及方法以及與記憶體預取相關聯之系統及方法。
微處理器技術已經以比半導體記憶體技術之速率快之一速率演變。結果,在現代主機處理器與半導體記憶體子系統之間通常存在效能上之一不匹配,該處理器配接至該半導體記憶體子系統以接收指令及資料。舉例而言,據估計,某些高端伺服器閒置四分之三時脈來等待對記憶體請求之回應。
另外,隨著處理器核心及執行緒之數目繼續增加,軟體應用程式及作業系統技術之演變已增加了對更高密度記憶體子系統之需求。然而,當前技術記憶體子系統通常表現出效能與密度之間的一折衷。較高頻寬可限制在不超出JEDEC電氣規範之情形下於一系統中可連接之記憶卡或記憶模組之數目。
已提出對JEDEC介面之擴展,但對於未來所預期之記憶體頻寬及密度通常可發現該等擴展係不足的。缺點包括缺乏記憶體電力最佳化及介於主機處理器與記憶體子系統之間的介面之唯一性。隨著處理器及/或記憶體技術改變,後一缺點可導致對重新設計該介面之一需要。
圖1係根據本發明之各種實例性實施例之一記憶體系統100之一方塊圖。一個或多個實施例運作以在一個或多個始發裝置(例如,一個或多個處理器)與一組堆疊式陣列記憶體「儲存庫」之間大致同時傳送複數個命令、位址及/或資料傳出串流。可產生增加的記憶體系統密度、頻寬、平行性及可縮放性。
本文之多晶粒記憶體陣列實施例彙總了在先前設計中通常位於每一個別記憶體陣列晶粒上之控制邏輯。本文中稱為一「記憶體儲存庫(memory vault)」之一堆疊式晶粒群組之子區段共用共同控制邏輯。該記憶體儲存庫架構策略性地分割記憶體控制邏輯以增加能量效率同時提供已通電記憶體庫之一較精細粒度。本文之實施例亦達成一標準化主機處理器至記憶體系統介面。隨著記憶體技術之演變,該標準化介面可減少重新設計循環次數。
圖2係根據各種實例性實施例之與一邏輯晶粒202堆疊在一起之一堆疊式晶粒3D記憶體陣列200之一剖面概念圖。記憶體系統100併入有鋪砌式記憶體陣列(例如堆疊式晶粒3D記憶體陣列200)之一個或多個堆疊。多個記憶體陣列(例如,記憶體陣列203)係製作至複數個堆疊式晶粒(例如,堆疊式晶粒204)中之每一者上。
該等堆疊式晶粒中之每一者在邏輯上被劃分成多個「晶粒塊」(例如,與堆疊式晶粒204相關聯之晶粒塊205A、205B及205C)。每一晶粒塊(例如,晶粒塊205C)可包括一個或多個記憶體陣列203。在某些實施例中,每一記憶體陣列203可係組態為記憶體系統100中之一個或多個獨立記憶體庫。記憶體陣列203不受限於任一特定記憶體技術且可包括動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、快閃記憶體等。
一組堆疊式記憶體陣列晶粒塊208可包括來自該等堆疊式晶粒中之每一者之一單個晶粒塊(例如,晶粒塊212B、212C及212D,其中基礎晶粒塊隱藏於圖1中而看不到)。電力、位址及/或資料以及類似共同信號可沿「Z」維度220在例如「貫通晶圓互連件」(TWI)之傳導路徑(例如,傳導路徑224)上橫越該組堆疊式晶粒塊208。因此,堆疊式晶粒3D記憶體陣列200被分割成一組記憶體「儲存庫」(例如,記憶體儲存庫230)。每一記憶體儲存庫包括一組堆疊式晶粒塊,一個晶粒塊來自複數個堆疊式晶粒中之每一者。該儲存庫中之每一晶粒塊包括一個或多個記憶體陣列(例如,記憶體陣列240)。
圖1中展示所得組之記憶體儲存庫102。此處下文所闡述之控制、切換及通信邏輯係製作至邏輯晶粒202上。記憶體系統100包括複數個記憶體儲存庫控制器(MVC)104(例如,MVC 106)。每一MVC以通信方式以一對一關係耦合至一對應記憶體儲存庫(例如,記憶體儲存庫110)。因此,每一MVC能夠獨立於其他MVC與其各別記憶體儲存庫之間的通信而與一對應記憶體儲存庫通信。
記憶體系統100亦包括複數個可組態串列化通信鏈路介面(SCLI)112。SCLI 112被劃分成一群組傳出SCLI 113(例如,傳出SCLI 114)及一群組傳入SCLI 115。複數個SCLI 112中之每一者能夠與其他SCLI 112同時運作。SCLI 112將複數個MVC 104一起以通信方式耦合至一個或多個主機處理器114。記憶體系統100將一高度抽象之多鏈路高通量介面提呈給主機處理器114。
記憶體系統100亦可包括一矩陣開關116。矩陣開關116以通信方式耦合至複數個SCLI 112且耦合至複數個MVC 104。矩陣開關116能夠將每一SCLI交叉連接至一選定MVC。因此,主機處理器114可跨越複數個SCLI 112以一大致同時方式存取複數個記憶體儲存庫102。此架構可提供現代處理器技術(包括多核技術)所需要之處理器至記憶體頻寬。
記憶體系統100亦可包括以通信方式耦合至矩陣開關116之一記憶體組構控制暫存器117。記憶體組構控制暫存器117接受來自一組態源之記憶體組構組態參數且組態記憶體系統100之一個或多個組件以根據一可選擇模式運作。舉例而言,矩陣開關116及複數個記憶體儲存庫102中之每一者及複數個MVC 104通常可經組態以回應於單獨記憶體請求而彼此獨立地運作。此一組態可由於SCLI 112與記憶體儲存庫102之間的平行性而增強記憶體系統頻寬。
另一選擇為,記憶體系統100可經由記憶體組構控制暫存器117重新組態以致使複數個記憶體儲存庫102中之兩者或更多者之一子組及一對應子組MVC回應於一單個請求而同步運作。後一組態可用以存取一比正常寬之資料字以縮短延時,如下文進一步闡述。可藉由將一選定位元型樣載入至記憶體組構控制暫存器117中來達成其他組態。
圖3及圖4係展示根據各種實例性實施例分別與實例性封包300及400相關聯之欄位之封包圖。鑒於圖3及圖4轉至圖1,記憶體系統100亦可包括以通信方式耦合至矩陣開關116之複數個封包解碼器118(例如,封包解碼器120)。主機處理器114組譯一傳出封包122,在某些實施例中該傳出封包在結構上可類似於實例性封包300或400。亦即,傳出封包122可含納一命令欄位310、一位址欄位320及/或一資料欄位410。傳出封包122亦可含納一預取資訊欄位412以保存與記憶體儲存庫中之預取作業相關聯之預取資訊。下文參照圖5、圖5A、圖6A及圖6B闡述預取作業。轉至圖1,在主機處理器114組譯傳出封包122之後,其跨越一傳出SCLI(例如,傳出SCLI 114)將傳出封包122以下文進一步闡釋之一方式發送至封包解碼器120。
傳出SCLI 114可包括複數個傳出差動對串列路徑(DPSP)128。DPSP 128以通信方式耦合至主機處理器114且可共同地輸送傳出封包122。亦即,複數個傳出DPSP 128中之每一DPSP可以一第一資料速率輸送傳出封包122之一第一資料速率傳出子封包部分。
傳出SCLI 114亦可包括以通信方式耦合至複數個傳出DPSP 128之一解串列化器130。解串列化器130將傳出封包122之每一第一資料速率傳出子封包部分轉換為複數個第二資料速率傳出子封包。以一第二資料速率跨越第一複數個傳出單端資料路徑(SEDP)134發送該複數個第二資料速率傳出子封包。該第二資料速率比該第一資料速率慢。
傳出SCLI 114亦可包括以通信方式耦合至解串列化器130之一解多工器138。解多工器138將該複數個第二資料速率傳出子封包中之每一者轉換為複數個第三資料速率傳出子封包。跨越第二複數個傳出SEDP 142以一第三資料速率將該複數個第三資料速率傳出子封包發送至封包解碼器120。該第三資料速率比該第二資料速率慢。
封包解碼器120接收傳出封包122且抽取(例如,實例性封包300的)命令欄位310、(例如,實例性封包300的)位址欄位320及/或(例如,實例性封包400的)資料欄位。在某些實施例中,封包解碼器120解碼位址欄位320以判定一組對應記憶體儲存庫選擇信號。封包解碼器120在一介面146上將該組記憶體儲存庫選擇信號提呈給矩陣開關116。該等儲存庫選擇信號致使輸入資料路徑148切換至對應於傳出封包122之MVC 106。
現在轉至對傳入資料路徑之一論述,記憶體系統100可包括以通信方式耦合至矩陣開關116之複數個封包編碼器154(例如,封包編碼器158)。封包編碼器158可經由矩陣開關116自複數個MVC 104中之一者接收一傳入記憶體命令、一傳入記憶體位址及/或傳入記憶體資料。封包編碼器158將傳入記憶體命令、位址及/或資料編碼成一傳入封包160以供跨越一傳入SCLI 164傳輸至主機處理器114。
在某些實施例中,封包編碼器158可將傳入封包160分段成複數個第三資料速率傳入子封包。封包編碼器158可跨越第一複數個傳入單端資料路徑(SEDP)166以一第三資料速率發送該複數個第三資料速率傳入子封包。記憶體系統100亦可包括以通信方式耦合至封包編碼器158之一多工器168。多工器168可將該等第三資料速率傳入子封包之複數個子組中之每一者多工成一第二資料速率傳入子封包。多工器168跨越第二複數個傳入SEDP 170以比該第三資料速率快之一第二資料速率發送該等第二資料速率傳入子封包。
記憶體系統100可進一步包括以通信方式耦合至多工器168之一串列化器172。串列化器172將複數個子組之第二資料速率傳入子封包中之每一組彙總成一第一資料速率傳入子封包。跨越複數個傳入差動對串列路徑(DPSP)174以比該第二資料速率快之一第一資料速率將該等第一資料速率傳入子封包發送至主機處理器114。因此,跨越SCLI 112經由矩陣開關116在主機處理器114與MVC 104之間來回傳送命令、位址及資料資訊。
圖5係根據各種實例性實施例之一MVC(例如,MVC 106)及相關聯模組之一方塊圖。MVC 106可包括一可程式化儲存庫控制邏輯(PVCL)組件(例如,PVCL 510)。PVCL 510將MVC 106介接至對應記憶體儲存庫(例如,記憶體儲存庫110)。PVCL 510產生與對應記憶體儲存庫110相關聯之一個或多個庫控制信號及/或定時信號。
PVCL 510可經組態以將MVC 106調適至一選定組態或一選定技術之一記憶體儲存庫110。因此,舉例而言,最初可使用當前可用之DDR2 DRAM組態記憶體系統100。隨後可藉由重新組態PVCL 510以包括DDR3庫控制及定時邏輯來調適記憶體系統100以適應基於DDR3之記憶體儲存庫技術。
MVC 106亦可包括以通信方式耦合至PVCL 510之一記憶體定序器514。記憶體定序器514基於用以實施相關聯記憶體儲存庫110之技術執行一組記憶體技術相依之作業。舉例而言,記憶體定序器514可執行與對應記憶體儲存庫110相關聯之命令解碼作業、記憶體位址多工作業、記憶體位址解多工作業、記憶體再新作業、記憶體儲存庫訓練作業及/或記憶體儲存庫預取作業。在某些實施例中,記憶體定序器514可包含一DRAM定序器。在某些實施例中,記憶體再新作業可在一再新控制器515中始發。
記憶體定序器514可經組態以將記憶體系統100調適至一選定組態或技術之一記憶體儲存庫110。舉例而言,記憶體定序器514可經組態以與同記憶體系統100相關聯之其他記憶體定序器同步地運作。此一組態可用以回應於一單個快取線請求而將一寬資料字自多個記憶體儲存庫遞送至與主機處理器114相關聯之一快取線(圖中未顯示)。
MVC 106亦可包括一寫入緩衝器516。寫入緩衝器516可以通信方式耦合至PVCL 510以緩衝自主機處理器114到達MVC 106之資料。MVC 106可進一步包括一讀取緩衝器517。讀取緩衝器517可以通信方式耦合至PVCL 510以緩衝自對應記憶體儲存庫110到達MVC 106之資料。
MVC 106亦可包括一無序請求佇列518。無序請求佇列518建立對記憶體儲存庫110中所包括之複數個記憶體庫之一有序讀取及/或寫入作業序列。選擇該有序序列以避免對任一單個記憶體庫之依序作業以減少庫衝突且縮短讀取至寫入周轉時間。
MVC 106亦可包括一記憶體儲存庫修復邏輯(MVRL)組件524。MVRL 524可以通信方式耦合至記憶體儲存庫110以使用陣列修復邏輯526執行有缺陷記憶體陣列位址重映射作業。MVRL 524亦可使用TWI修復邏輯528執行與記憶體儲存庫110相關聯之TWI修復作業。
圖5A係根據各種實例性實施例之一記憶體系統5000之一方塊圖。記憶體系統5000可包括一組記憶體儲存庫102(例如,記憶體儲存庫110)及一組對應MVC 104(例如,MVC 106)。如先前所論述,MVC係製作於與記憶體陣列晶粒(例如,圖2之記憶體陣列晶粒204)堆疊在一起之一邏輯晶粒(例如,圖2之邏輯晶粒202)上。
以下對圖5A之論述係指實例性記憶體儲存庫110、實例性MVC 106與同記憶體儲存庫預取作業相關聯之各種結構元件之間的連接。然而,注意,下文所闡述及在圖5A上所圖解說明之連接及功能性適用於該組記憶體儲存庫102中之每一者及該組對應MVC 104中之每一者。
在記憶體系統5000之某些實施例中,記憶體儲存庫102之頻寬可超過將記憶體儲存庫102鏈接至始發記憶體請求之一裝置(例如,一主機電腦)之通信通道之頻寬。另外,來自該始發裝置之請求串流可不係連續的。此等因素可導致記憶體儲存庫102處之過量頻寬。該過量頻寬可用以執行預取作業。當記憶體儲存庫為閒置時(例如,當該記憶體儲存庫處未在正處理至該記憶體儲存庫的任何讀取請求時),可執行預取作業。另一選擇為,當該記憶體儲存庫不為閒置時,可執行預取作業。
記憶體系統5000可包括一預取控制器5006。預取控制器5006執行與記憶體儲存庫110相關聯之預取作業。記憶體系統5000亦可包括一個或多個包括於一預取快取記憶體5014中之預取緩衝器5010。預取緩衝器5010可以通信方式耦合至預取控制器5006。一組預取緩衝器5010(例如,該組預取緩衝器5018)可經分組以儲存一個或多個快取線(例如,快取線5020)之讀取資料。預取控制器5006可經組態以選擇性地啟用快取線5020中之一者或多者。
預取控制器5006可經組態以發出一預取讀取請求至記憶體儲存庫110,以使得可在記憶體儲存庫110為閒置時或在記憶體儲存庫110不為閒置時發出該預取讀取請求。在某些實施例中,可自對應於回應於一先前讀取請求而讀取之一資料字之一記憶體儲存庫位址讀取該)預取資料字。另一選擇為(或另外),可自選自發出命令至MVC 106之一始發裝置所提供之一位址範圍之一記憶體儲存庫位址讀取該等預取資料字。舉例而言,一主機電腦可規定欲在預取緩衝器5010中預取及快取之一位址範圍。
記憶體系統5000亦可包括以通信方式耦合至預取控制器5006之預取寫入邏輯5021。預取寫入邏輯5021追蹤並用寫入資料更新記憶體儲存庫110及預取緩衝器5010。
在某些運作條件下,與其他系統相比,記憶體系統5000對預取之使用可係更合意。當關於電子記憶體技術時,「局部性」係指下一記憶體請求將參考來自與先前請求相同之記憶體空間區域之資料之一可能性。與具有較小局部性之一資料請求串流相比,具有較大局部性之一記憶體儲存庫資料請求流可自預取作業獲益更多。而且,應注意預取作業在記憶體儲存庫110處消耗電力。因此,預取控制器5006可經組態以選擇性地啟用及/或停用預取作業。某些實施例可根據資料串流之預期局部性啟用/停用預取作業及/或將與記憶體儲存庫110相關聯之一選定電力預算作為目標。
記憶體系統5000可包括以通信方式耦合至預取控制器5006之預取利用邏輯5022。預取利用邏輯5022在一命中量測週期期間追蹤快取線命中之數目。當一讀取請求參考一資料字儲存於其處之一記憶體儲存庫位址且在快取記憶體中發現該資料字時,發生本申請案之上下文中之一「快取線命中」。快取控制器5006可經組態以在於命中率量測週期期間與預取快取記憶體5014相關聯之命中率低於一選定臨限值之情形下停用預取作業。可停用預取作業達一選定時間週期或直至自一始發裝置(例如一主機電腦)接收重新繼續預取作業之一命令。在某些實施例中,可在一個別快取線基礎上接通及關斷預取。
記憶體系統5000亦可包括分別位於記憶體儲存庫110處之一個或多個電壓及/或溫度感測器5026及5028。一電力監測器5032可耦合至電壓感測器5026及/或耦合至溫度感測器5028。電力監測器5032可將記憶體儲存庫110處之電力消耗之一位準之一指示提供至預取控制器5006。若預取控制器5006可經組態以在記憶體儲存庫110處之電力消耗之位準高於一第一選定臨限值之情形下停用預取作業。可在一選定時間週期期滿之後重新啟用預取作業。另一選擇為,當電力消耗之位準降至低於一第二選定臨限值時或在自一始發裝置接收到重新繼續預取之一命令時,可重新啟用預取。
記憶體系統5000可進一步包括以通信方式耦合至預取控制器5006之預取讀取邏輯5036。若MVC 106處所接收之一讀取請求參考一個或多個預取字中之一者或多者,則預取讀取邏輯5036可自預取緩衝器5010中之一者或多者讀取該等預取字。
因此,記憶體系統100;記憶體陣列200、203、240、527;晶粒202、204;晶粒塊205A、205B、205C、208、212B、212C、212D;「Z」維度220;路徑224、148;記憶體儲存庫230、102、110;MVC 104、106;SCLI 112、113、114、115、164;處理器114;矩陣開關116;暫存器117;封包300、400、122、160;封包解碼器118、120;欄位310、320、410;DPSP 128、174;解串列化器130;SEDP 134、142、166、170;解多工器138;介面146;封包編碼器154、158;多工器168;串列化器172;PVCL 510;記憶體定序器514;再新控制器515;緩衝器516、517;無序請求佇列518;MVRL 524;陣列修復邏輯526;TWI修復邏輯528;記憶體系統5000;預取控制器5006;預取緩衝器5010、5018;預取快取記憶體5014;快取線5020;預取寫入邏輯5021;預取利用邏輯5022;感測器5026、5028;電力監測器5032;及預取讀取邏輯5036在本文中可全部表徵為「模組」。
該等模組可包括記憶體系統100之架構所期望且適合各種實施例之特定實施方案之硬體電路、光學組件、單處理器電路或多處理器電路、記憶體電路、編碼於一電腦可讀媒體中之軟體程式模組及物件(但並非軟體列表)、韌體及其組合。
各種實施例之設備及系統可適用於除一高密度、多鏈路、高通量半導體記憶體子系統5000以外之應用。因此,本發明之各種實施例並不限於此。記憶體系統5000之圖解說明意欲提供對各種實施例之結構之一一般理解。該圖解說明並非意欲用作對可利用本文中所闡述結構之設備及系統之所有元件及特徵之一完整說明。
各種實施例之新穎設備及系統可包含或併入至用於電腦、通信及信號處理電路、單處理器或多處理器模組、單嵌入式處理器或多嵌入式處理器、多核處理器、資料開關及包括多層、多晶片模組之專用模組中之電子電路中。此等設備及系統可作為子組件進一步包括於各種電子系統內,例如電視、蜂巢式電話、個人電腦(例如,膝上型電腦、桌上型電腦、手持式電腦、平板電腦等)、工作站、無線電、視訊播放器、聲訊播放器(例如,MP3(動畫專家群,聲訊層3)播放器)、車輛、醫學裝置(例如,心臟監測器、血壓監測器等)、機上盒及其他電子系統。某些實施例可包括若干種方法。
圖6A及圖6B係圖解說明根據各種實例性實施例之一方法6000之流程圖。方法6000包括執行與一堆疊式晶粒記憶體系統中之一個或多個記憶體儲存庫相關聯之預取作業(例如,在圖5A之堆疊式晶粒記憶體系統5000中之記憶體儲存庫110處)。可選擇性地啟用或停用預取作業且針對每一個別記憶體儲存庫單獨地組態預取參數。在某些實施例中,可在一記憶體儲存庫管線係空時之時間預取可程式化數目個資料字。
方法6000可在區塊6002處以在一MVC處(例如,在圖5A之MVC 106處)自一始發裝置(例如,自一主機電腦)接收預取組態參數而開始。該等預取組態參數可包括一預取位址模態。此上下文中之「預取位址模態」意指欲自記憶體儲存庫預取之一位址是對應於一先前所存取之位址還是來自始發裝置所規定之一範圍之一位址。其他組態參數可包括在發生一快取命中時傳回之快取線存取參數(例如快取線之數目)。方法6000亦可包括在區塊6004處使用該等預取組態參數組態記憶體系統。
方法6000可以在區塊6010處發出一個或多個預取讀取請求至記憶體儲存庫而繼續。方法6000可在其發出一預取讀取請求之前確認該記憶體儲存庫是否為閒置。若該記憶體儲存庫為閒置(例如,當該記憶體儲存庫處未正在處理至該記憶體儲存庫的任何其他讀取請求時),則方法6000可發出預取讀取請求且起始預取作業。另一選擇為,方法6000可在該記憶體儲存庫不為閒置時發出該預取讀取請求,以使得可在接收一讀取請求時自動起始預取作業,即使該記憶體儲存庫處正在處理至該記憶體儲存庫的一個或多個其他讀取請求。
若該記憶體儲存庫自一始發裝置(例如,自一主機電腦)接收指示不執行預取作業之一預取資訊,則方法6000可跳過發出一預取讀取請求至一記憶體儲存庫(方框6010)。舉例而言,當方法6000用於圖1之記憶體系統100中時,圖1之主機處理器114可發送具有指示不執行預取作業之一預取資訊之傳出封包122。該預取資訊可含納於傳出封包122之一欄位(例如圖4之預取資訊欄位412)中。若該記憶體儲存庫自該始發裝置接收指示欲執行(或重新繼續)預取作業之一預取資訊,則其可重新繼續執行預取作業。該預取資訊可包括具有指示是欲執行(或重新繼續)還是不執行(例如,跳過或暫停)預取作業之一值之多個位元或僅一單個位元。舉例而言,若該預取資訊僅具有一單個位元且若該單個位元具有「0」之一值,則可跳過或暫停預取作業。若該單個位元具有「1」之一值,則可執行(或重新繼續)預取作業。
轉至圖6,方法6000亦可包括在區塊6014處在對應於該記憶體儲存庫之一MVC處自該記憶體儲存庫接收一個或多個預取資料字。方法6000可進一步包括在區塊6016處將該等預取資料字儲存於一預取快取記憶體之一個或多個預取緩衝器中。
方法6000可以在區塊6020處在該MVC處接收一讀取請求而繼續。方法6000可包括在區塊6024處判定該讀取請求所參考之資料目前是否在該預取快取記憶體中。若如此,則方法6000可以在區塊6028處由該預取快取記憶體服務該讀取請求從而產生一快取命中而繼續。若該讀取請求所參考之資料目前不在該預取快取記憶體中(無快取命中),則方法6000可以在區塊6032處由選定記憶體儲存庫服務該讀取請求而繼續。
方法6000亦可包括在區塊6036處在一第一時間週期期間量測與該預取快取記憶體相關聯之一命中率。方法6000可進一步包括在區塊6040處判定該快取命中率是否低於一選定臨限值。若如此,則方法6000可包括在區塊6044處停用預取作業。可停用預取作業達一選定時間週期或直至經由自該始發裝置接收之命令重新啟用預取。
在某些實施例中,方法6000可包括在區塊6050處監測與該選定記憶體儲存庫處之電力消耗相關聯之一個或多個作業參數。舉例而言,可自該記憶體儲存庫內之感測器接收一個或多個電壓量測及/或溫度量測。方法6000亦可包括在區塊6054處基於對該等作業參數之量測計算該記憶體儲存庫處之電力消耗。方法6000可進一步包括在區塊6058處判定該電力消耗是否高於一第一選定臨限值。若如此,則方法6000亦可包括在區塊6062處停用預取作業。可停用預取作業達一選定時間週期,直至電力消耗位準降低至低於一第二選定臨限值,或直至經由自該始發裝置接收之命令重新啟用預取。
應注意,可以不同於所闡述之次序之一次序執行本文所闡述之活動。亦可以重複、序列及/或平行方式執行相對於本文所識別之方法所闡述之各種活動。
可自一基於電腦之系統中之一電腦可讀媒體啟動一軟體程式以執行該軟體程式中所定義之功能。可採用各種程式設計語言以形成經設計以實施及執行本文所揭示之方法之軟體程式。可使用一物件導向語言(例如Java或C++)以一物件導向格式結構化該等程式。另一選擇為,可使用一程序語言(例如彙編語言或C語言)將該等程式結構化成一程序導向格式。軟體組件可使用熟知的機制進行通信,包括應用程式介面、過程間通信技術及遠端程序呼叫,以及其他機制。各種實施例之教示內容不限於任一特定程式設計語言或環境。
本文所闡述之設備、系統及方法可運作以在與一堆疊式晶粒記憶體系統中之一選定記憶體儲存庫相關聯之一管線係空時自該選定記憶體儲存庫預取可程式化數目個資料字。可產生位準增加之記憶體系統效能。
藉助圖解說明而非限定性方式,隨附圖式展示其中可實踐標的物之具體實施例。足夠詳細地闡述所圖解說明之實施例以使熟習此項技術者能夠實踐本文中所揭示之教示內容。可使用其他實施例且從本發明導出其他實施例,以使得可在不背離本發明之範疇之情形下做出結構及邏輯替代及改變。因此,此具體實施方式不應視為具有限定意義。各種實施例之廣度係由隨附申請專利範圍及此等申請專利範圍授權之等效內容之全部範圍界定。
本發明標的物之此等實施例可在本文中個別地或共同地由術語「發明」指代,此僅僅係出於便利性且並不意欲在事實上已揭示多於一個發明或發明性概念之情形下將本申請案自發地限制於任一單個發明或發明性概念。因此,儘管本文已圖解說明並闡述了具體實施例,但旨在達成相同目的之任一配置均可替代所展示之該等具體實施例。本發明意欲涵蓋各種實施例之任一及所有改動或變化形式。在審閱以上闡述之後,熟習此項技術者將明瞭該等上述實施例之組合及本文未具體闡述之其他實施例。
提供本發明之摘要以符合37 C.F.R. § 1.72(b),其需要將允許讀者快速探知該技術性發明之本質之摘要。提交本發明摘要係基於以下理解:其並非用於解釋或限定申請專利範圍之範疇或含義。在前述具體實施方式中,出於簡化本發明之目的將各種特徵一起集合在一單個實施例中。本發明之此方法不應理解為需要比每一技術方案中所明確陳述之更多的特徵。而是,本發明標的物可存在於少於一單個所揭示實施例之所有特徵中。因此,以下申請專利範圍藉此併入至具體實施方式中,其中每一技術方案獨立地作為一單獨實施例。
100...記憶體系統
102...記憶體儲存庫
104...記憶體儲存庫控制器(MVC)
106...記憶體儲存庫控制器(MVC)
110...記憶體儲存庫
112...串列化通信鏈路介面(SCLI)
113...傳出SCLI群組
114...傳出SCLI
115...傳入SCLI群組
116...矩陣開關
117...記憶體組構控制暫存器
118...封包解碼器
120...封包解碼器
122...傳出封包
128...傳出差動對串列路徑(DPSP)
130...解串列化器
134...傳出單端資料路徑(SEDP)
138...解多工器
142...傳出SEDP
146...介面
148...輸入資料路徑
154...封包編碼器
158...封包編碼器
160...傳入封包
164...傳入SCLI
166...傳入單端資料路徑(SEDP)
168...多工器
170...傳入SEDP
172...串列化器
174...傳入差動對串列路徑(DPSP)
200...記憶體陣列
202...晶粒
203...記憶體陣列
204...晶粒
205A...晶粒塊
205B...晶粒塊
205C...晶粒塊
208...晶粒塊
212B...晶粒塊
212C...晶粒塊
212D...晶粒塊
224...路徑
230...記憶體儲存庫
240...記憶體陣列
300...命令封包
310...命令欄位
320...位址欄位
400...資料封包
410...資料欄位
412...預取資訊欄位
510...可程式化儲存庫控制邏輯(PVCL)
514...記憶體定序器
515...再新控制器
516...寫入緩衝器
517...讀取緩衝器
518...無序請求佇列
524...記憶體儲存庫修復邏輯(MVRL)組件
526...陣列修復邏輯
527...記憶體陣列
528...貫通晶圓互連件(TWI修復)邏輯
5000...記憶體系統
5006...預取控制器
5010...預取緩衝器
5014...預取快取記憶體
5018...預取緩衝器
5020...快取線
5021...預取寫入邏輯
5022...預取利用邏輯
5026...電壓感測器
5028...溫度感測器
5032...電力監測器
5036...預取讀取邏輯
圖1係根據本發明之各種實例性實施例之一記憶體系統之一方塊圖。
圖2係根據各種實例性實施例之與一邏輯晶粒堆疊在一起之一堆疊式晶粒3D記憶體陣列之一剖面概念視圖。
圖3及圖4係展示根據各種實例性實施例之與實例性封包相關聯之欄位之封包圖。
圖5係根據各種實例性實施例之一記憶體儲存庫控制器及相關聯模組之一方塊圖。
圖5A係根據各種實例性實施例之一記憶體系統之一方塊圖。
圖6A及圖6B係圖解說明根據各種實例性實施例之一方法之流程圖。
100...記憶體系統
102...記憶體儲存庫
104...記憶體儲存庫控制器(MVC)
106...記憶體儲存庫控制器(MVC)
110...記憶體儲存庫
112...串列化通信鏈路介面(SCLI)
113...傳出SCLI
114...傳出SCLI
115...傳入SCLI
116...矩陣開關
117...記憶體組構控制暫存器
118...封包解碼器
120...封包解碼器
122...傳出封包
128...DPSP
130...解串列化器
134...傳出單端資料路徑(SEDP)
138...解多工器
142...傳出SEDP
146...介面
148...輸入資料路徑
154...封包編碼器
158...封包編碼器
160...傳入封包
164...傳入SCLI
166...傳入單端資料路徑(SEDP)
168...多工器
170...傳入SEDP
172...串列化器
174...傳入差動對串列路徑(DPSP)
510...可程式化儲存庫控制邏輯(PVCL)
514...記憶體定序器
516...寫入緩衝器
517...讀取緩衝器

Claims (39)

  1. 一種記憶體系統,其包含:一記憶體儲存庫,其包含複數個堆疊式記憶體陣列,該等複數個堆疊式記憶體陣列之每一記憶體陣列位於複數個堆疊式記憶體晶粒中之一者上,其中該等複數個堆疊式記憶體晶粒之每一記憶體晶粒包含多個記憶體陣列,且該記憶體儲存庫之該等複數個堆疊式記憶體陣列之每一記憶體陣列為該多個記憶體陣列之一者;一記憶體儲存庫控制器(MVC),其位於與該等堆疊式記憶體晶粒堆疊在一起之一邏輯晶粒上且以通信方式耦合至該記憶體儲存庫,以提供與該記憶體儲存庫相關聯之控制、切換或通信邏輯中之至少一者;及一預取控制器,其用以執行與該記憶體儲存庫相關聯之預取作業。
  2. 如請求項1之記憶體系統,其進一步包含:至少一個預取緩衝器,其位於一預取快取記憶體處,以通信方式耦合至該預取控制器以儲存至少一個快取線之讀取資料。
  3. 如請求項2之記憶體系統,其中該預取快取記憶體包含複數個組預取緩衝器,每一組預取緩衝器包含一快取線。
  4. 如請求項3之記憶體系統,其中該預取控制器經組態以選擇性地啟用至少一個快取線。
  5. 如請求項1之記憶體系統,其中該預取控制器經組態以 在該記憶體儲存庫為閒置時發出一預取讀取請求至該記憶體儲存庫。
  6. 如請求項5之記憶體系統,其中該預取控制器經組態以自對應於回應於一先前讀取請求而自該記憶體儲存庫讀取之一資料字之一記憶體儲存庫位址讀取至少一個預取資料字。
  7. 如請求項5之記憶體系統,其中該預取控制器經組態以自選自發出命令至該MVC之一始發裝置所提供之一位址範圍之一記憶體儲存庫位址讀取該至少一個預取資料字。
  8. 如請求項1之記憶體系統,其中該預取控制器經組態以選擇性地啟用諸預取作業。
  9. 如請求項1之記憶體系統,其進一步包含:預取利用邏輯,其以通信方式耦合至該預取控制器以在一選定時間週期期間追蹤快取線命中之一數目。
  10. 如請求項1之記憶體系統,其中該預取控制器經組態以在與一預取快取記憶體相關聯之一命中率低於一選定臨限值之情形下停用該等預取作業達一第一選定時間週期。
  11. 如請求項10之記憶體系統,其中該預取控制器經組態以停用該等預取作業達一第二選定時間週期或直至自一始發裝置接收重新繼續該等預取作業之一命令中之至少一者。
  12. 如請求項1之記憶體系統,其進一步包含: 預取寫入邏輯,其以通信方式耦合至該預取控制器以用寫入資料更新該記憶體儲存庫及該預取緩衝器。
  13. 如請求項1之記憶體系統,其進一步包含:預取讀取邏輯,其以通信方式耦合至該預取控制器以在該MVC處所接收之一讀取請求參考至少一個預取字之情形下自至少一個預取緩衝器讀取至少一個預取字。
  14. 如請求項1之記憶體系統,其進一步包含:一電壓感測器或一溫度感測器中之至少一者,其位於該記憶體儲存庫處;及一電力監測器,其耦合至該電壓感測器或溫度感測器以將對該記憶體儲存庫處之電力消耗之一位準之一指示提供至該預取控制器。
  15. 如請求項14之記憶體系統,其中該預取控制器經組態以在該記憶體儲存庫處之電力消耗之該位準高於一第一選定臨限值之情形下停用諸預取作業。
  16. 如請求項15之記憶體系統,其中該預取控制器經組態以在一選定時間週期、電力消耗之該位準降至低於一第二選定臨限值或自一始發裝置接收到重新繼續該等預取作業之一命令中之至少一者之後重新啟用該等預取作業。
  17. 如請求項1之記憶體系統,其中該預取控制器經組態以執行根據資料串流在該記憶體系統中之局部性啟用及停用該等預取作業中之至少一者。
  18. 一種記憶體系統,其包含:一記憶體儲存庫,其包含複數個堆疊式記憶體陣列, 該等複數個堆疊式記憶體陣列之每一記憶體陣列位於複數個堆疊式記憶體晶粒中之一者上,其中該等複數個堆疊式記憶體晶粒之每一記憶體晶粒包含多個記憶體陣列,且該記憶體儲存庫之該等複數個堆疊式記憶體陣列之每一記憶體陣列為該多個記憶體陣列之一者;一記憶體儲存庫控制器(MVC),其位於與該等堆疊式記憶體晶粒堆疊在一起之一邏輯晶粒上且以通信方式耦合至該記憶體儲存庫以提供與該記憶體儲存庫相關聯之控制、切換或通信邏輯中之至少一者;一預取控制器,其用以發出一預取讀取請求至該記憶體儲存庫;及至少一個預取緩衝器,其用以儲存與該預取讀取請求相關聯之至少一個預取資料字。
  19. 如請求項18之記憶體系統,其進一步包含:預取利用邏輯,其以通信方式耦合至該預取控制器以在一選定時間週期期間追蹤快取線命中之一數目。
  20. 如請求項18之記憶體系統,其中該預取控制器經組態以在一快取線命中率大於一選定率時執行諸預取作業。
  21. 如請求項18之記憶體系統,其中該預取控制器經組態以在該記憶體儲存庫為閒置時執行諸預取作業。
  22. 如請求項18之記憶體系統,其中該預取控制器經組態以執行啟用及停用與該記憶體儲存庫相關聯之諸預取作業中之至少一者以將該記憶體儲存庫之一選定電力預算作為目標。
  23. 一種運作一記憶體系統之方法,其包含:執行與一堆疊式晶粒記憶體系統中之一選定記憶體儲存庫相關聯之諸預取作業,該選定的記憶體儲存庫包含複數個堆疊式記憶體陣列,該等複數個堆疊式記憶體陣列之每一記憶體陣列位於複數個堆疊式記憶體晶粒中之一者上,其中該等複數個堆疊式記憶體晶粒之每一記憶體晶粒包含多個記憶體陣列,且該選定的記憶體儲存庫之該等複數個堆疊式記憶體陣列之每一記憶體陣列為該多個記憶體陣列之一者。
  24. 如請求項23之方法,其進一步包含:發出一預取讀取請求至該選定記憶體儲存庫;在對應於該選定記憶體儲存庫之一記憶體儲存庫控制器(MVC)處自該選定記憶體儲存庫接收一預取資料字;及將該預取資料字儲存於一預取快取記憶體處之一預取緩衝器中。
  25. 如請求項24之方法,其中當該選定記憶體儲存庫未正在處理至該選定記憶體儲存庫的任何其他讀取請求時發出該預取讀取請求。
  26. 如請求項24之方法,其進一步包含:在該MVC處接收一讀取請求;若可用則由該預取快取記憶體服務該讀取請求,從而產生一快取命中;及若不存在一快取命中,則由該選定記憶體儲存庫服務該讀取請求。
  27. 如請求項24之方法,其進一步包含:在一第一時間週期期間量測與該預取快取記憶體相關聯之一命中率;判定該命中率是否低於一臨限值命中率;及在該命中率低於該臨限值命中率之情形下,停用該等預取作業。
  28. 如請求項27之方法,其中停用該等預取作業達一選定時間週期或直至自一始發裝置接收重新繼續該等預取作業之一命令中之至少一者。
  29. 如請求項23之方法,其進一步包含:將該堆疊式晶粒記憶體系統組態為一多儲存庫記憶體系統;及在每一記憶體儲存庫處獨立地執行該等預取作業。
  30. 如請求項23之方法,其進一步包含:確認該選定記憶體儲存庫為閒置。
  31. 如請求項23之方法,其進一步包含:監測與該選定記憶體儲存庫處之電力消耗相關聯之至少一個作業參數;基於對該至少一個作業參數之量測計算該選定記憶體儲存庫處之該電力消耗;判定該電力消耗是否高於一第一選定臨限值;及在該選定記憶體儲存庫處之該電力消耗高於該第一選定臨限值之情形下,停用該等預取作業。
  32. 如請求項31之方法,其中停用該等預取作業達一選定時 間週期、直至該電力消耗降低至低於一第二選定臨限值或直至自一始發裝置接收重新繼續該等預取作業之一命令中之至少一者。
  33. 如請求項31之方法,其中監測該至少一個作業參數包含自該記憶體儲存庫內之感測器接收電壓位準量測或溫度量測中之至少一者。
  34. 一種運作一記憶體系統之方法,其包含:當與一堆疊式晶粒記憶體系統中之一選定記憶體儲存庫相關聯之一管線係空時,自該選定記憶體儲存庫預取可程式化數目個資料字,該選定的記憶體儲存庫包含複數個堆疊式記憶體陣列,該等複數個堆疊式記憶體陣列之每一記憶體陣列位於複數個堆疊式記憶體晶粒中之一者上,其中該等複數個堆疊式記憶體晶粒之每一記憶體晶粒包含多個記憶體陣列,且該選定的記憶體儲存庫之該等複數個堆疊式記憶體陣列之每一記憶體陣列為該多個記憶體陣列之一者。
  35. 如請求項34之方法,其進一步包含:發出至少一個預取讀取請求至該選定記憶體儲存庫;對於每一預取讀取請求,在對應於該選定記憶體儲存庫之一記憶體儲存庫控制器(MVC)處自該選定記憶體儲存庫接收一預取資料字;將至少一個預取資料字儲存於一預取快取記憶體處之至少一個預取緩衝器中;在該MVC處接收至少一個讀取請求; 若可用則由該預取快取記憶體服務該至少一個讀取請求,從而產生至少一個快取命中;及若不存在該至少一個快取命中,則由該選定記憶體儲存庫服務該至少一個讀取請求。
  36. 如請求項35之方法,其進一步包含:在該MVC處自一始發裝置接收諸預取組態參數;及根據該等預取組態參數組態該堆疊式晶粒記憶體系統。
  37. 如請求項36之方法,其中該等預取組態參數包括回應於一讀取資料請求而擷取之一預取位址模態或快取線之一數目中之至少一者。
  38. 如請求項35之方法,其進一步包含:在一第一時間週期期間量測與該預取快取記憶體相關聯之一命中率;判定該命中率是否低於一臨限值命中率;及在該命中率低於該臨限值命中率之情形下,在一第二時間週期期間停用該等預取作業。
  39. 如請求項34之方法,其進一步包含:監測該選定記憶體儲存庫處之一電壓位準或一溫度中之至少一者;基於對該電壓及/或溫度之量測判定該選定記憶體儲存庫處之電力消耗;在該選定記憶體儲存庫處之該電力消耗高於一第一選定臨限值之情形下,停用該等預取作業;及 在該電力消耗降低至低於一第二選定臨限值之情形下,重新啟用該等預取作業。
TW099104871A 2009-02-13 2010-02-12 記憶體預取系統及方法 TWI494919B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/371,389 US8364901B2 (en) 2009-02-13 2009-02-13 Memory prefetch systems and methods

Publications (2)

Publication Number Publication Date
TW201037704A TW201037704A (en) 2010-10-16
TWI494919B true TWI494919B (zh) 2015-08-01

Family

ID=42560878

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099104871A TWI494919B (zh) 2009-02-13 2010-02-12 記憶體預取系統及方法

Country Status (7)

Country Link
US (3) US8364901B2 (zh)
EP (1) EP2396790B1 (zh)
JP (2) JP2012518229A (zh)
KR (2) KR101865331B1 (zh)
CN (1) CN102349109B (zh)
TW (1) TWI494919B (zh)
WO (1) WO2010093921A2 (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7978721B2 (en) * 2008-07-02 2011-07-12 Micron Technology Inc. Multi-serial interface stacked-die memory architecture
US8364901B2 (en) * 2009-02-13 2013-01-29 Micron Technology, Inc. Memory prefetch systems and methods
US8018752B2 (en) * 2009-03-23 2011-09-13 Micron Technology, Inc. Configurable bandwidth memory devices and methods
US9123552B2 (en) 2010-03-30 2015-09-01 Micron Technology, Inc. Apparatuses enabling concurrent communication between an interface die and a plurality of dice stacks, interleaved conductive paths in stacked devices, and methods for forming and operating the same
US8583894B2 (en) * 2010-09-09 2013-11-12 Advanced Micro Devices Hybrid prefetch method and apparatus
GB2493191A (en) * 2011-07-28 2013-01-30 St Microelectronics Res & Dev Cache arrangement with data pre-fetching requests having different quality of services
US20130262826A1 (en) * 2011-10-06 2013-10-03 Alexander Gendler Apparatus and method for dynamically managing memory access bandwidth in multi-core processor
KR20140065678A (ko) * 2012-11-20 2014-05-30 에스케이하이닉스 주식회사 반도체 장치 및 이를 이용한 반도체 장치의 동작 방법
US20140181415A1 (en) * 2012-12-21 2014-06-26 Advanced Micro Devices, Inc. Prefetching functionality on a logic die stacked with memory
CN103915111B (zh) * 2013-01-09 2016-08-10 华邦电子股份有限公司 存储器装置及其电源调整方法
US9183055B2 (en) * 2013-02-07 2015-11-10 Advanced Micro Devices, Inc. Selecting a resource from a set of resources for performing an operation
US9679615B2 (en) * 2013-03-15 2017-06-13 Micron Technology, Inc. Flexible memory system with a controller and a stack of memory
CN105229619B (zh) * 2013-05-16 2021-05-07 超威半导体公司 具有指定区域存储器访问调度的存储器系统
US11074169B2 (en) * 2013-07-03 2021-07-27 Micron Technology, Inc. Programmed memory controlled data movement and timing within a main memory device
US11768689B2 (en) * 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging
JP6287493B2 (ja) * 2014-03-31 2018-03-07 富士通株式会社 情報処理装置、転送装置、および制御方法
US10824335B2 (en) * 2014-07-14 2020-11-03 Western Digital Technologies, Inc. Device and method to store predicted data at a host memory
KR102130578B1 (ko) 2014-12-02 2020-07-06 에스케이하이닉스 주식회사 반도체 장치
US10055384B2 (en) 2016-12-31 2018-08-21 Entefy Inc. Advanced zero-knowledge document processing and synchronization
US10114981B2 (en) * 2016-12-31 2018-10-30 Intel Corporation Architecture for telemetry and adaptive lifetime control of integrated circuits
US9792958B1 (en) 2017-02-16 2017-10-17 Micron Technology, Inc. Active boundary quilt architecture memory
US10831391B2 (en) * 2018-04-27 2020-11-10 EMC IP Holding Company LLC Method to serve restores from remote high-latency tiers by reading available data from a local low-latency tier in a deduplication appliance
US10929062B2 (en) * 2018-11-07 2021-02-23 International Business Machines Corporation Gradually throttling memory due to dynamic thermal conditions
KR20200114481A (ko) * 2019-03-28 2020-10-07 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법
US11455098B2 (en) * 2019-12-26 2022-09-27 Micron Technology, Inc. Host techniques for stacked memory systems
US11422934B2 (en) 2020-07-14 2022-08-23 Micron Technology, Inc. Adaptive address tracking
US11409657B2 (en) 2020-07-14 2022-08-09 Micron Technology, Inc. Adaptive address tracking
KR20220117747A (ko) 2021-02-17 2022-08-24 삼성전자주식회사 데이터 프리페치 제어 기능을 갖는 스토리지 컨트롤러, 스토리지 컨트롤러의 동작 방법, 및 스토리지 장치의 동작 방법
US20230169008A1 (en) * 2021-11-30 2023-06-01 Red Hat, Inc. Managing prefetching operations for drives in distributed storage systems

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594730B1 (en) * 1999-08-03 2003-07-15 Intel Corporation Prefetch system for memory controller
US20040123043A1 (en) * 2002-12-19 2004-06-24 Intel Corporation High performance memory device-state aware chipset prefetcher
US20050152210A1 (en) * 2003-12-24 2005-07-14 Park Youn-Sik Synchronous dynamic random access memory devices having dual data rate 1 (DDR1) and DDR2 modes of operation and methods of operating same
US20050257005A1 (en) * 2004-05-14 2005-11-17 Jeddeloh Joseph M Memory hub and method for memory sequencing
US20060164882A1 (en) * 2004-12-23 2006-07-27 Robert Norman Storage controller using vertical memory
US20070005902A1 (en) * 2004-12-07 2007-01-04 Ocz Technology Group, Inc. Integrated sram cache for a memory module and method therefor
US20070204106A1 (en) * 2006-02-24 2007-08-30 James Donald Adjusting leakage power of caches
US20070220207A1 (en) * 2006-03-14 2007-09-20 Bryan Black Transferring data from stacked memory
US7426144B2 (en) * 2005-09-16 2008-09-16 Elpida Memory Inc. Semiconductor storage device

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS615357A (ja) * 1984-06-07 1986-01-11 Fujitsu Ltd デ−タ処理装置
JP2631603B2 (ja) 1992-06-29 1997-07-16 川崎製鉄株式会社 金属ストリップの巻取装置
JP3548616B2 (ja) * 1995-01-20 2004-07-28 株式会社日立製作所 情報処理装置
US5809529A (en) * 1995-08-23 1998-09-15 International Business Machines Corporation Prefetching of committed instructions from a memory to an instruction cache
JPH1196081A (ja) * 1997-09-22 1999-04-09 Chishiki Joho Kenkyusho:Kk 記憶装置の制御方法および記憶装置ならびに記憶装置の製造方法
JP2001014840A (ja) 1999-06-24 2001-01-19 Nec Corp 複数ラインバッファ型メモリlsi
KR100449721B1 (ko) * 2002-05-20 2004-09-22 삼성전자주식회사 서로 다른 데이터 버스 폭을 갖는 장치들을 위한인터페이스 및 이를 이용한 데이터 전송방법
US7133972B2 (en) * 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7167954B2 (en) * 2002-09-09 2007-01-23 Broadcom Corporation System and method for caching
JP2004118305A (ja) * 2002-09-24 2004-04-15 Sharp Corp キャッシュメモリ制御装置
US7233880B2 (en) * 2003-09-11 2007-06-19 Intel Corporation Adaptive cache algorithm for temperature sensitive memory
JP4444770B2 (ja) * 2004-09-14 2010-03-31 シャープ株式会社 メモリ装置
US20080126690A1 (en) * 2006-02-09 2008-05-29 Rajan Suresh N Memory module with memory stack
US7283418B2 (en) * 2005-07-26 2007-10-16 Micron Technology, Inc. Memory device and method having multiple address, data and command buses
WO2007095080A2 (en) * 2006-02-09 2007-08-23 Metaram, Inc. Memory circuit system and method
JP2008140220A (ja) * 2006-12-04 2008-06-19 Nec Corp 半導体装置
US8032711B2 (en) * 2006-12-22 2011-10-04 Intel Corporation Prefetching from dynamic random access memory to a static random access memory
US7917702B2 (en) * 2007-07-10 2011-03-29 Qualcomm Incorporated Data prefetch throttle
US20100121994A1 (en) * 2008-11-10 2010-05-13 International Business Machines Corporation Stacked memory array
US8364901B2 (en) * 2009-02-13 2013-01-29 Micron Technology, Inc. Memory prefetch systems and methods

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594730B1 (en) * 1999-08-03 2003-07-15 Intel Corporation Prefetch system for memory controller
US20040123043A1 (en) * 2002-12-19 2004-06-24 Intel Corporation High performance memory device-state aware chipset prefetcher
US20050152210A1 (en) * 2003-12-24 2005-07-14 Park Youn-Sik Synchronous dynamic random access memory devices having dual data rate 1 (DDR1) and DDR2 modes of operation and methods of operating same
US20050257005A1 (en) * 2004-05-14 2005-11-17 Jeddeloh Joseph M Memory hub and method for memory sequencing
US20070005902A1 (en) * 2004-12-07 2007-01-04 Ocz Technology Group, Inc. Integrated sram cache for a memory module and method therefor
US20060164882A1 (en) * 2004-12-23 2006-07-27 Robert Norman Storage controller using vertical memory
US7426144B2 (en) * 2005-09-16 2008-09-16 Elpida Memory Inc. Semiconductor storage device
US20070204106A1 (en) * 2006-02-24 2007-08-30 James Donald Adjusting leakage power of caches
US20070220207A1 (en) * 2006-03-14 2007-09-20 Bryan Black Transferring data from stacked memory

Also Published As

Publication number Publication date
EP2396790A4 (en) 2013-10-30
KR101865331B1 (ko) 2018-06-08
JP6127038B2 (ja) 2017-05-10
KR102030946B1 (ko) 2019-10-10
EP2396790A2 (en) 2011-12-21
US8607002B2 (en) 2013-12-10
US20100211745A1 (en) 2010-08-19
US20140156946A1 (en) 2014-06-05
JP2012518229A (ja) 2012-08-09
US8990508B2 (en) 2015-03-24
TW201037704A (en) 2010-10-16
WO2010093921A3 (en) 2010-10-28
US20130145098A1 (en) 2013-06-06
CN102349109B (zh) 2015-08-26
KR20110127193A (ko) 2011-11-24
CN102349109A (zh) 2012-02-08
EP2396790B1 (en) 2017-08-23
JP2015079524A (ja) 2015-04-23
US8364901B2 (en) 2013-01-29
KR20180063372A (ko) 2018-06-11
WO2010093921A2 (en) 2010-08-19

Similar Documents

Publication Publication Date Title
TWI494919B (zh) 記憶體預取系統及方法
JP6050587B2 (ja) 可変式メモリリフレッシュ装置および方法
TWI505089B (zh) 監控記憶體系統之系統及方法
US20180358111A1 (en) Switched interface stacked-die memory architecture
US8806131B2 (en) Multi-serial interface stacked-die memory architecture
WO2017146821A1 (en) Supporting multiple memory types in a memory slot
JP2008186457A (ja) ハブ装置、プリフェッチ・モードを選択するための方法、メモリ・システム及びメモリ・サブシステム
CN102646446A (zh) 硬件动态高速缓存电源管理