TW201917558A - 使由於記憶體子系統中的刷新操作引起的效能降級最小化 - Google Patents

使由於記憶體子系統中的刷新操作引起的效能降級最小化 Download PDF

Info

Publication number
TW201917558A
TW201917558A TW107118630A TW107118630A TW201917558A TW 201917558 A TW201917558 A TW 201917558A TW 107118630 A TW107118630 A TW 107118630A TW 107118630 A TW107118630 A TW 107118630A TW 201917558 A TW201917558 A TW 201917558A
Authority
TW
Taiwan
Prior art keywords
volatile memory
memory subsystem
refresh
dynamic volatile
performance
Prior art date
Application number
TW107118630A
Other languages
English (en)
Inventor
德斯特塔密歐 千
正元 徐
麥可華勁 羅
Original Assignee
美商高通公司
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 美商高通公司 filed Critical 美商高通公司
Publication of TW201917558A publication Critical patent/TW201917558A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40618Refresh operations over multiple banks or interleaving
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40603Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40626Temperature related aspects of refresh operations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4094Bit-line management or control circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

揭示用於使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的技術。在一態樣中,耦合到動態揮發性記憶體子系統的刷新排程器產生批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的識別,並向該動態揮發性記憶體子系統發出批量記憶體刷新命令。

Description

使由於記憶體子系統中的刷新操作引起的效能降級最小化
本案的各態樣大體而言係關於使由於記憶體子系統中的刷新操作引起的效能降級最小化。
技術進步已產生越來越小且越來越強大的計算設備。例如,各種各樣的電子設備(包括無線電話,諸如行動和智慧型電話、平板以及膝上型電腦)較小、輕量且易於由使用者攜帶。該等設備可在無線網路上傳達語音和資料封包。另外,許多此類設備併入附加功能性,諸如數位相機、數碼攝像機、數位記錄器以及音訊檔案播放機。同樣,此類設備可以處理可執行指令,包括可被用於存取網際網路的軟體應用程式,諸如網頁瀏覽器應用程式。如此,該等設備可包括顯著的計算能力。
電子設備常常包括動態隨機存取記憶體(DRAM)子系統,這是最廣泛使用的電腦記憶體類型之一。DRAM子系統可在功率節省模式(例如,睡眠模式或待機模式)中花費大量的時間。使用DRAM子系統的電子設備可使用「刷新」操作在此種功率節省模式期間保持DRAM的內容被刷新。刷新是如下的程序:週期性地從DRAM的一區域(例如,一行)讀取資訊並立即將所讀取的資訊重寫到相同的區域而沒有修改,以用於保留資訊的目的。刷新是在DRAM子系統的操作期間發生的後臺維護程序,並且事實是該類記憶體的定義特性。
刷新是DRAM的必要但不期望的特徵,其消耗附加的功率並使效能降級。這在較高的溫度下是特別有問題的,這是因為必須增加刷新率來補償在較高溫度下發生的DRAM子系統的洩漏和快速單元電壓下降。增加刷新率消耗更多時間並且因此減少DRAM子系統可以花費在攜帶任務模式訊務上的時間量。如此,DRAM子系統的頻寬與DRAM子系統的溫度逆相關。
另外,在其他情形相同的情況下,隨著DRAM子系統的記憶體密度增加,將存在所需要的刷新量的成比例增加以及對任務模式訊務的類似降級。如此,期望使由於DRAM子系統中的刷新操作引起的效能降級最小化。
以下提供了與本文所揭示的一或多個態樣相關的簡化概述。如此,以下概述既不應被視為與所有構想的態樣相關的詳盡縱覽,以下概述亦不應被認為識別與所有構想的態樣相關的關鍵性或決定性要素或圖示與任何特定態樣相關聯的範圍。相應地,以下概述的唯一目的是在以下提供的詳細描述之前以簡化形式呈現與關於本文所揭示的機制的一或多個態樣相關的某些概念。
在一態樣中,一種用於使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的方法包括:由耦合到該動態揮發性記憶體子系統的刷新排程器產生批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的識別,以及由該刷新排程器向該動態揮發性記憶體子系統發出該批量記憶體刷新命令。
在一態樣中,一種用於使由於刷新操作引起的效能降級最小化的裝置包括:動態揮發性記憶體子系統,該動態揮發性記憶體子系統具有一或多個組並被配置成接收批量記憶體刷新命令,其中該批量記憶體刷新命令識別要刷新的該一或多個組之每一者組的複數個行,並且進一步被配置成基於該批量記憶體刷新命令來刷新該一或多個組之每一者組的該複數個行。
在一態樣中,一種用於使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的裝置包括:耦合到該動態揮發性記憶體子系統的刷新排程器,該刷新排程器被配置成:產生批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的識別;及向該動態揮發性記憶體子系統發出該批量記憶體刷新命令。
在一態樣中,一種儲存用於使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的電腦可執行指令的非暫態電腦可讀取媒體,包括:包含以下各項的電腦可執行指令:指示耦合到該動態揮發性記憶體子系統的刷新排程器產生批量記憶體刷新命令的至少一條指令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的識別,以及指示該刷新排程器向該動態揮發性記憶體子系統發出該批量記憶體刷新命令的至少一條指令。
在一態樣中,一種用於使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的裝置包括:耦合到該動態揮發性記憶體子系統的用於排程刷新命令的構件,該用於排程刷新命令的構件被配置成:產生批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的識別,以及向該動態揮發性記憶體子系統發出該批量記憶體刷新命令。
基於附圖和詳細描述,與本文所揭示的各態樣相關聯的其他目標和優點對本領域技藝人士而言將是顯而易見的。
揭示用於使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的技術。在一態樣中,耦合到動態揮發性記憶體子系統的刷新排程器產生批量記憶體刷新命令,該批量記憶體刷新命令包括動態揮發性記憶體子系統的要刷新的一或多個組(bank)之每一者組的複數個行的識別,並向動態揮發性記憶體子系統發出批量記憶體刷新命令。
本案的更具體態樣在以下針對出於說明目的提供的各種實例的描述和相關附圖中提供。可以設計替代態樣而不脫離本案的範圍。另外,本案的眾所周知的態樣可能不被詳細描述或可能被省去以免混淆更為相關的細節。
本領域技藝人士將瞭解,以下描述的資訊和信號可使用各種不同技術和技藝中的任何一種來表示。例如,貫穿以下描述可能被述及的資料、指令、命令、資訊、信號、位元、符號以及碼片可部分地取決於特定應用、部分地取決於所期望的設計、部分地取決於對應技術等而由電壓、電流、電磁波、磁場或磁粒子、光場或光粒子,或其任何組合表示。
此外,許多態樣以將由例如計算設備的元件執行的動作序列的形式來描述。將認識到,本文中所描述的各種動作能由專用電路(例如,特殊應用積體電路(ASICs))、由正被一或多個處理器執行的程式指令,或由該兩者的組合來執行。另外,對於本文中所描述的每個態樣,任何此類態樣的對應形式可被實施為例如「被配置成執行所描述的動作的邏輯」。
如上文提到的,期望使由於DRAM子系統中的刷新操作引起的效能降級最小化。用於減少在刷新期間花費的時間量的現有方法包括每組刷新(per-bank refresh)和緊縮式刷新(pull-in refresh)。在每組刷新方案中,DRAM被細分成多個「組」並一次刷新一個組。在此種刷新操作期間,正在經歷刷新的該一或多個組不可用於讀和寫。例如,當第二組(例如,組「B」)正在攜帶訊務時,可以刷新第一組(例如,組「A」)。然而,該辦法高度取決於訊務並偏好跨所有組均勻分佈的資料。對於跨所有組分佈不均勻的資料,會出現組訊務的「熱點」,這會導致甚至更差的效能降級。當此種降級出現時,本文所描述的技術可以幫助改善每組刷新的效能。
緊縮式刷新是用於減少在刷新期間花費的時間量的另一種現有方法。在緊縮式刷新方案中,刷新命令是緊挨著發出的。這允許記憶體控制器順序地發出兩個或更多個刷新命令。一種改善的緊縮式刷新藉由消除與發出和處理多個刷新命令相關聯的管理負擔將進一步受益,如本文進一步揭示的。
如此,仍存在對使由於DRAM子系統中的刷新操作引起的效能降級最小化的持續需求。因此,在一態樣中,為了改善DRAM子系統中的效能,可以將多個刷新命令一起集束成單個批量刷新命令。以此方式,使用單個批量刷新命令來引動多個刷新操作,而不是如緊縮式刷新方案中一樣,向DRAM子系統發出刷新命令的序列以使該DRAM子系統執行刷新操作的對應序列。DRAM子系統可以在內部減少並且並行化刷新管理負擔,這是因為該DRAM子系統對一批多個操作進行處理,這增加了讀和寫的可用時間。
另外,片上系統(SoC)可以基於高頻寬及/或低潛時當前是否被請求/需要來選擇性地實現何時要使用批量刷新。更具體而言,SoC在正常頻寬條件下(當高頻寬未被請求/需要時)及/或在低潛時條件下(當潛時關鍵效能被請求/需要時)可以去能批量刷新。
圖1圖示了根據本案的至少一個態樣的包括SoC 1和DRAM子系統200的示例性系統100。SoC 1包括在SoC匯流排2上通訊地耦合的DRAM記憶體控制器60、儲存記憶體控制器70、靜態隨機存取記憶體(SRAM)30、唯讀記憶體(ROM)40、處理器20和處理器21。DRAM記憶體控制器60包括刷新排程器61。刷新排程器61包括邏輯(例如,電路),該邏輯決定何時要發出刷新命令,並且如本文將進一步描述的,要發出批量刷新命令還是「正常」(亦即,不是批量的)刷新命令,及/或產生刷新命令以發送給DRAM子系統200。
儲存記憶體控制器70在儲存匯流排7上通訊地耦合到儲存記憶體300。儲存記憶體300可以是本領域已知的任何類型的非揮發性記憶體,諸如快閃記憶體、電子可抹除可程式設計唯讀記憶體(EEPROM)、固態驅動器(SSD)、硬碟機(HDD)等等。
程式10在處理器20上執行並且程式11在處理器21上執行。程式10和11可以是分開執行的程式/應用程式、相同程式的不同可執行執行緒、不同的可執行物件,或者任何其他可執行代碼,如本領域已知的。處理器20和21可以是ASIC、現場可程式閘陣列(FPGAs)、數位訊號處理器(DSPs)、微控制器、微處理器、中央處理單元、圖形處理單元、視訊處理單元、神經處理單元、網路路由處理器、通訊處理器、數據機、單個處理器的分開的核心,或者可被包括在SoC中的本領域已知的任何其他類型的處理設備。另外,儘管圖1圖示了兩個處理器,但如將瞭解的,可以存在多於或少於兩個處理器,並且兩個處理器的實例僅是出於說明目的。
典型的DRAM子系統200包括實體層(PHY)模組263、在全域輸入/輸出(i/o)介面201上通訊地耦合到感測放大器和鎖存器模組(被圖示為「感測放大器鎖存器」)265的解碼和控制模組264、在陣列輸入/輸出介面202上通訊地耦合到「感測放大器鎖存器」模組265的DRAM單元陣列210、以及溫度感測器280。DRAM子系統200在DRAM匯流排6上通訊地耦合到SoC 1。DRAM匯流排6將資料6d和位址/控制資訊6c載送到PHY模組263。如圖1中所圖示的,可以有在DRAM匯流排6上耦合到SoC 1的多個DRAM子系統200。注意,儘管DRAM子系統200被圖示為與SoC 1分開,但如將瞭解的,DRAM子系統200可以是SoC 1的元件。另外,處理器20和21可被稱為DRAM子系統200的「客戶端」。
DRAM單元陣列210可被組織成多個組及/或多個組群(例如,2、4或8個組群,每個組群4或8個組)。每個組包括儲存資料的可定址記憶體位置(例如,行、列、位元等等的階層)。位址可由組位址部分、行位址部分、以及列位址部分構成。組位址部分可由多個位元構成以選擇特定的記憶體組(例如,4位以從16個組中選擇)。行位址部分可類似地由多個位元構成以識別記憶體組的特定行(例如,13位元以從8192行中選擇)。列位址部分可類似地由多個位元(例如,9位元)構成以選擇所選行內的起始位址來執行讀/寫短脈衝事務。或者,DRAM單元陣列210可被構造為行和列的關係表。
典型地,為了讀取或寫入資料,包含要被讀/寫的位址的行必須首先被取得並儲存在感測放大器鎖存器265中,這被稱為「啟用」。針對將被讀/寫的任何組執行啟用。一旦組中的行被啟用,該行現在就「打開」,並且感測放大器鎖存器265保持被請求啟用的行(有時亦被稱為「頁」)。在打開時,可發生對行內的任何位置(例如,任何列位址)的任何次數的讀或寫。當對打開的行的讀/寫完成時,或者當要存取相同組內的不同行時,則藉由使感測放大器鎖存器265將其資料傳遞返回到單元陣列210中(其被稱為「預充電」)來「關閉」該行。僅在對第一行預充電完成之後才能夠開始第二行的啟用。
刷新是打開一行、隨後立即對其預充電的動作;感測放大器鎖存器265接收行內容,並且在這樣做時,當發生預充電時恢復行之每一者位元的全電壓和電荷。可在個體組上或在所有組上完成刷新。由於組中存在多個行(例如,8192),因此DRAM子系統200中的循環刷新位址計數器在接收到SoC的刷新命令之後遞增,以確保每一行被刷新。在批量刷新的情況下,可以使用單個命令來刷新多個行(例如,所有組中或者單個(每)組中的2x或4x)。單個批量刷新命令使得多個行被刷新並且對應的刷新位址計數器值被增加。
在一態樣中,刷新排程器61可包括預充電命令邏輯以管理對DRAM單元陣列210的各部分的預充電。更具體而言,刷新排程器61可產生一或多個預充電命令以及一或多個刷新命令以將DRAM單元陣列210的一或多個單元置於刷新狀態。
注意,儘管圖1圖示了DRAM子系統200,但本文所描述的技術可在利用刷新操作的任何動態揮發性記憶體(例如,eDRAM)中實施。DRAM和DRAM子系統200僅是動態揮發性記憶體子系統的實例。此外,儘管圖1圖示了SoC 1和DRAM子系統200的特定佈置,但如將瞭解的,該佈置是示例性的,並且其他佈置是可能的,如本領域已知的。
此外,如將瞭解的,圖1中所圖示的各模組的功能性可按與本文的教示一致的各種方式來實施。在一些設計中,該等模組的功能性可被實施為一或多個電子元件(例如,積體電路)。在一些設計中,該等模組的功能性可被實施為可執行軟體模組。因此,不同模組的功能性可以例如實施為積體電路的不同子集、軟體模組集合的不同子集,或其組合。同樣,將瞭解,(例如,積體電路及/或軟體模組集合的)給定子集可以提供多於一個模組的功能性的至少一部分。
在處理器20和21上執行的程式10和11可能需要與DRAM子系統200不同的效能位準。效能角可以是低頻寬、高頻寬、潛時關鍵、潛時非關鍵,及其組合。DRAM記憶體控制器60從處理器20和21接收對期望效能位準的指示,並使用該資訊來選擇DRAM子系統200中的刷新的操作頻率。刷新排程器61亦使用所請求的效能位準和來自溫度感測器280的溫度來決定要利用正常刷新還是批量刷新。
在一態樣中,為了指示期望的效能位準,處理器20和21可以「票決」以週期性地或在事件改變之後請求需要的頻寬或請求需要的潛時。來自處理器20和21的票決可以是表示每個處理器對頻寬和對潛時的需要的任意數位元。可以對票決加權(從而計及一個處理器相對於另一處理器的任何優先順序,並且亦取決於主動票決的處理器的數目而對其進行正規化)並隨後求和,以建立可以用於決定DRAM刷新模式(正常或批量)的頻寬效能索引和分開的潛時效能索引。求和可由硬體加法器以及捨入/截短來執行,或者替換地由檢視表或由韌體來執行。若由檢視表或韌體來執行,則可藉由允許更多的復函數(例如,二次、對數等等)被併入求和中、並且亦允許對檢視表或韌體的改變/更新來改善多功能性。注意,該等索引亦可被用於其他目的,諸如時鐘頻率和電壓調節。
若頻寬效能索引超過閾值,則高頻寬(例如,以較快的時鐘頻率來操作DRAM子系統200及/或實現附加的記憶體通道)正被請求。若潛時關鍵索引超過閾值(或者替換地若原始潛時索引降至低於閾值),則低潛時(例如,以較快的時鐘頻率來操作DRAM子系統200及/或使用較低的潛時設置來操作DRAM子系統200)正被請求。DRAM子系統200中的溫度感測器280可以類似地與溫度閾值進行比較。DRAM子系統200的溫度是重要的,這是因為在較高的溫度下會更頻繁地刷新DRAM子系統200。可對各索引進行優先順序排序,以使得潛時關鍵效能具有超過高頻寬效能的優先順序,並且高頻寬效能具有超過溫度的優先順序。刷新在預充電、刷新和啟用操作期間可以使讀/寫訊務匱乏,因此監視如所描述的潛時、頻寬和溫度索引並作出反應是有益的。
潛時、頻寬和溫度是在決定要利用正常還是批量刷新時最具影響的因素。然而,可以存在能夠提供進一步改善的次要度量,諸如內部快取記憶體的命中率(例如,高的快取記憶體命中率將減少頻寬及/或潛時票決)、電池的充電狀態(例如,低充電狀態將減少頻寬及/或潛時票決)、整體系統溫度(例如,在一個或多個其他位置的高溫度指示已到達的熱容量將減少頻寬及/或潛時票決)等等。在決定要利用正常還是批量刷新時可以監視並考慮該等因素。或者,對於較低複雜度的系統,可以實施較少的索引以使成本最小化。例如,可以僅使用潛時索引來在正常或批量刷新之間選擇。
圖2圖示了根據本案的至少一個態樣的用於決定要利用正常還是批量刷新命令的示例性方法220。方法220可由刷新排程器61來執行。在222處,刷新排程器61從處理器20和21中的一者或多者接收一或多個效能票決。例如,在處理器20和21各自以相同的週期性間隔來票決的情況下,刷新排程器61可在222處從每個處理器20和21接收票決。然而,在處理器20和21基於事件的發生來票決的情況下,刷新排程器61可在222處從處理器20接收票決並在不同的時間從處理器21接收票決。無論哪種方式,當刷新排程器61接收到票決時(例如,在222處),傳入的票決被加權並相加到頻寬效能索引和潛時效能索引的當前值。
效能票決可以是用於增加頻寬、減少頻寬、增加潛時,或減少潛時的票決。由此,例如,處理器20或21可票決以在其執行的潛時關鍵時段期間減小潛時,並隨後票決以在其執行的非潛時關鍵時段期間增加潛時。以此方式,不需要重置頻寬效能索引或潛時效能索引。或者,在處理器20或21僅票決以增加頻寬或減小潛時的情況下,頻寬效能索引和潛時效能索引例如可以週期性地或在程式10或11的執行終止之後被重置。
在224處,刷新排程器61決定由溫度感測器280報告的DRAM子系統200的溫度是否超過閾值。若為是,則在226處,刷新排程器61決定高頻寬效能是否已被請求。在一態樣中,若頻寬效能索引超過閾值(在222處接收到的(諸)票決被加權並相加在一起之後),則高頻寬效能正被請求。若高頻寬效能正被請求,則在228處,刷新排程器61決定潛時關鍵效能是否已被請求。在一態樣中,若潛時效能索引超過閾值(在222處接收到的(諸)票決被加權並相加在一起之後),則潛時關鍵效能正被請求。若潛時關鍵效能未被請求,則在230處,刷新排程器61使用批量刷新模式。然而,若溫度不超過閾值,高頻寬效能未被請求,或者潛時關鍵效能正被請求,則在232處,刷新排程器61使用正常刷新模式。
圖3圖示了由本案的批量刷新模式實施的效能改善的實例。如圖3中所圖示的,正常刷新命令310包括預充電(P)欄位、識別DRAM單元陣列210的要被刷新的部分(例如,組的行或者每個組的相同行)的刷新(R)欄位、以及複數個啟用(A)欄位。由刷新排程器61發出並在DRAM匯流排6上傳送的刷新命令310連同DRAM子系統200內的內部P、R和A處理消耗等效於Z的資料長度的時間量,並且之後跟隨有在DRAM匯流排6上傳送的具有W的資料長度的資料訊務。使用正常刷新命令310來識別DRAM單元陣列210中要被刷新的兩個部分佔用Z+Z或即2Z的資料長度。
相比之下,用於識別DRAM單元陣列210中與兩個正常刷新命令310相同的兩個部分的批量刷新命令320包括預充電(P)欄位、識別DRAM單元陣列210中要被刷新的兩個部分的兩個刷新(R)欄位、以及複數個啟用(A)欄位。此種批量刷新命令320的等效資料長度是2Z-Y,其中Y是預充電(P)欄位和該複數個啟用(A)欄位的長度。更具體而言,兩個正常刷新命令針對每個刷新(R)欄位各自需要一預充電(P)欄位和該複數個啟用(A)欄位的管理負擔,而由於批量刷新命令320是單個刷新命令,因此其僅包括一個預充電(P)欄位和一份該複數個啟用(A)欄位的管理負擔。由此,儘管具有兩個刷新(R)欄位,但批量刷新命令320具有與單個正常刷新命令310相同的管理負擔。如圖3中所圖示的,藉由發出具有兩個刷新(R)欄位的批量刷新命令320,DRAM匯流排6上的訊務量增加了Y。
更一般而言,批量刷新命令(諸如批量刷新命令320)具有與正常刷新命令(諸如正常刷新命令310)相同的管理負擔,而不管批量刷新命令中的刷新(R)欄位的數目如何。這使DRAM匯流排6的頻寬增加了對應數目的正常刷新命令原本將需要的管理負擔。
注意,預充電(P)和啟用(A)欄位並不總是存在;其是回應於讀/寫DRAM子系統200中的行的需要而產生的(通常與DRAM匯流排6上的訊務量成比例)。
圖4圖示了根據本案的至少一個態樣的示例性正常刷新命令真值表410和示例性批量刷新命令真值表420。在圖4中,「H」指示被設置的位元(通常被稱為「1」),「L」指示未被設置的位元(通常被稱為「0」),「V」指示要麼被設置的位元要麼未被設置的位元,「X」是「1」、「0」或無效(亦即,既非1亦非0),「CS」表示「晶片選擇」,並且「CA」表示「命令位址」。
參照圖4,若批量刷新命令真值表420中的「2X」或「4X」個批量刷新標誌位元為非零,則每個批量刷新命令執行批量刷新操作。值「2x」和「4x」指示DRAM單元陣列210的組中要刷新的行數。刷新排程器61可以刷新例如一個組、多個組或所有組的一行、兩行或四行。更具體而言,刷新排程器61可以發出批量刷新命令以刷新一個組的一行、兩行或四行、組群之每一者組的一行、兩行或四行,或者所有組的一行、兩行或四行。
例如,參照圖4,在所有組刷新標誌位元(AB)和2X批量刷新標誌位元被設置(H)並且4X批量刷新標誌位元未被設置(L)的情況下,批量刷新命令指示DRAM子系統200應當執行「雙倍批量所有組」刷新操作(亦即,DRAM單元陣列210的每個組的兩個部分(例如,行))。作為另一實例,在所有組刷新標誌位元(AB)和4X批量刷新標誌位元被設置(H)並且2X批量刷新標誌位元未被設置(L)的情況下,批量刷新命令指示DRAM子系統200應當執行「四倍批量所有組」刷新操作(亦即,DRAM單元陣列210的每個組的四個部分(例如,行))。
作為又一實例,仍然參照圖4,在所有組刷新標誌位元(AB)和4X批量刷新標誌位元未被設置(L)並且2X批量刷新標誌位元被設置(H)的情況下,批量刷新命令指示DRAM子系統200應當執行「雙倍批量每組」刷新操作。更具體而言,使用批量刷新命令420中所包含的組位址BA3、BA2、BA1和BA0的二進位值將指示正被刷新的特定組(例如,二進位串「1111」將指示組15,並且「0000」將指示組0)。對於2X,將在一批中刷新兩行。
作為另一實例,再次參照圖4,在所有組刷新標誌位元(AB)和2X批量刷新標誌位元未被設置(L)並且4X批量刷新標誌位元被設置(H)的情況下,批量刷新命令指示DRAM子系統200應當執行「四倍批量每組」刷新操作。在該情形中,使用批量刷新命令420中所包含的組位址BA3、BA2、BA1和BA0的二進位值將指示正被刷新的特定組(例如,二進位串「1111」將指示組15,並且「0000」將指示組0)。對於4X,將在一批中刷新四行。
注意,圖4中所示的真值表是命令位元指派的一個實例。如將瞭解的,替代地可選擇位元的其他置換。例如,兩個位元2X和4X可以替代地映射到4X和8X,或者可以是對應於在單批中執行的任何多個刷新的任何映射。此外,其在批量刷新命令420以及解碼內的位置(「H」相對於「L」)可被移動或改變以容適具有更多或更少CA位元(例如,圖4中的5個CA位元相對於7個CA位元)的命令真值表。
圖5是圖示了由本案的批量刷新命令提供的改善的表500。參照圖5,若2X或4X批量刷新操作由刷新命令賦能,則DRAM子系統200可以藉由消除複製的刷新命令解碼和邏輯延遲並改善DRAM內部刷新排程來減小刷新循環時間(tRFC)而不會對其峰值刷新功率或功率網路有任何影響。例如,使用現有的緊縮式刷新來執行兩個所有組刷新(表500的行1的兩倍)花費2*280奈秒(nsec)或即560nsec,而使用單個2x批量所有組刷新(表500的行3)花費500nsec,從而得到60nsec的節省。類似地,使用4x批量所有組刷新(表500的行4)花費1000nsec,這與緊縮四個所有組刷新(表1的行1的四倍)(其花費4*280nsec)相比節省120nsec。
對於所有組刷新,節省源自對命令處理複製的消除。此外,所有組刷新節省可伴隨有增加的成本,這是因為DRAM功率網路通常被設計成提供剛好足夠的功率來同時刷新DRAM子系統200中的所有組。然而,對於每組刷新,節省甚至更大,因為DRAM子系統200的功率網路可以容易地處置來自刷新多個行的功率要求。例如,使用現有的緊縮式刷新來執行四個每組刷新(表500的行2的四倍)花費4*140nsec或即560nsec,而使用單個4x批量每組刷新(表5的行6)花費145nsec,從而得到415nsec的節省。注意,該等時序值表示對於基於一般DRAM內部架構的DRAM子系統而言可能典型的值,並且進一步的改善是可能的。
圖6是圖示了使由於動態揮發性記憶體子系統(諸如DRAM子系統200)中的刷新操作引起的效能降級最小化的示例性方法600的流程圖。方法600可由例如刷新排程器61來執行。
在610處,刷新排程器61產生批量記憶體刷新命令(例如,批量刷新命令320),該批量記憶體刷新命令包括動態揮發性記憶體子系統(例如,DRAM子系統200)的要刷新的一或多個組之每一者組的複數個行的識別(例如,如由批量刷新命令真值表420的CA4或CA5欄位所識別的)。如上文論述的,動態揮發性記憶體子系統的要刷新的該一或多個組可包括動態揮發性記憶體子系統的多個組、動態揮發性記憶體子系統的所有組,或者動態揮發性記憶體子系統的單個組。該複數個行可包括兩行或四行。
在620處,刷新排程器61向動態揮發性記憶體子系統發出批量記憶體刷新命令,該動態揮發性記憶體子系統在對應於DRAM子系統200的情況下根據指令刷新DRAM單元陣列210。
在一態樣中,在610處產生批量記憶體刷新命令可以基於動態揮發性記憶體子系統的溫度大於溫度閾值、高頻寬效能正被請求,或者潛時關鍵效能未被請求,如上文參照圖3所論述的。在一態樣中,刷新排程器61可從動態揮發性記憶體子系統的一或多個客戶端(例如,處理器20和21)接收指示高頻寬效能是否被請求的一或多個票決,藉由對來自該一或多個客戶端的該一或多個票決求和來計算頻寬效能索引,並基於頻寬效能索引大於高頻寬閾值來決定高頻寬效能正被請求。
在一態樣中,刷新排程器61可從動態揮發性記憶體子系統的一或多個客戶端接收指示潛時關鍵效能是否被請求的一或多個票決,藉由對來自該一或多個客戶端的該一或多個票決求和來計算潛時效能索引,並基於潛時效能索引小於低潛時閾值來決定潛時關鍵效能未被請求。如上文參照圖3所論述的,潛時關鍵效能未被請求可具有比高頻寬效能正被請求更高的優先順序,並且高頻寬效能正被請求可具有比動態揮發性記憶體子系統的溫度大於溫度閾值更高的優先順序。
應當理解,本文中使用諸如「第一」、「第二」等指定對元素的任何引述一般不限定該等元素的數量或次序。確切而言,該等指定可在本文中用作區別兩個或更多個元素或者元素實例的便捷方法。因此,對第一元素和第二元素的引述並不意謂這裡可採用僅兩個元素或者第一元素必須以某種方式位於第二元素之前。同樣,除非另外聲明,否則一組元素可包括一或多個元素。另外,在說明書或請求項中使用的「A、B,或C中的至少一者」或「A、B,或C中的一或多個」或「包括A、B和C的群組中的至少一個」形式的術語意謂「A或B或C或該等元素的任何組合」。例如,此術語可以包括A,或者B,或者C,或者A和B,或者A和C,或者A和B和C,或者2A,或者2B,或者2C、等等。
鑒於以上描述和解釋,本領域技藝人士將瞭解,結合本文中所揭示的態樣描述的各種說明性邏輯區塊、模組、電路和演算法步驟可被實施為電子硬體、電腦軟體,或該兩者的組合。為清楚地說明硬體與軟體的該可互換性,各種說明性元件、方塊、模組、電路、以及步驟在上文是以其功能性的形式作一般化描述的。此類功能性是被實施為硬體還是軟體取決於特定應用和施加於整體系統的設計約束。技藝人士可針對每種特定應用以不同方式來實施所描述的功能性,但此類實施決策不應被解讀為致使脫離本案的範圍。
因此將瞭解,例如裝置或裝置的任何元件可被配置成(或者使其能操作用於或適配成)提供如本文所教示的功能性。這可以例如藉由以下方式達成:藉由製造(例如,製作)該裝置或元件以使其將提供該功能性;藉由程序式設計該裝置或元件以使其將提供該功能性;或經由使用某種其他合適的實施技術。作為一個實例,積體電路可被製作成提供必需的功能性。作為另一實例,積體電路可被製作成支援必需的功能性並且隨後(例如,經由程式設計)被配置成提供必需的功能性。作為又一實例,處理器電路可執行用於提供必需的功能性的代碼。
此外,結合本文所揭示的態樣描述的方法、序列及/或演算法可直接在硬體中、在由處理器執行的軟體模組中,或在該兩者的組合中體現。軟體模組可常駐在RAM、快閃記憶體、ROM、EEPROM、暫存器、硬碟、可移除磁碟、CD-ROM或本領域中所知的任何其他形式的儲存媒體中。示例性儲存媒體耦合到處理器以使得該處理器能從該儲存媒體讀取資訊,且向該儲存媒體寫入資訊。在替代方案中,儲存媒體可被整合到處理器(例如,快取記憶體)。
因此,亦將瞭解,例如,本案的某些態樣可以包括實施用於使由於如本文所描述的動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的方法的電腦可讀取媒體。
儘管前面的揭示圖示各種說明性態樣,但是應當注意,可對所圖示的實例作出各種改變和修改而不會脫離如所附請求項定義的範圍。本案無意被僅限定於具體圖示的實例。例如,除非另有說明,否則根據本文中所描述的本案的各態樣的方法請求項中的功能、步驟及/或動作無需以任何特定次序執行。此外,儘管某些態樣可能是以單數來描述或主張權利的,但是複數亦是已構想了的,除非顯式地聲明瞭限定於單數。
1‧‧‧片上系統(SoC)
2‧‧‧SoC匯流排
6‧‧‧DRAM匯流排
6c‧‧‧位址/控制資訊
6d‧‧‧資料
7‧‧‧儲存匯流排
10‧‧‧程式
11‧‧‧程式
20‧‧‧處理器
21‧‧‧處理器
30‧‧‧靜態隨機存取記憶體(SRAM)
40‧‧‧唯讀記憶體(ROM)
60‧‧‧DRAM記憶體控制器
61‧‧‧刷新排程器
70‧‧‧儲存記憶體控制器
100‧‧‧系統
200‧‧‧DRAM子系統
201‧‧‧全域輸入/輸出(i/o)介面
202‧‧‧陣列輸入/輸出介面
210‧‧‧DRAM單元陣列
220‧‧‧方法
222‧‧‧操作
224‧‧‧操作
226‧‧‧操作
228‧‧‧操作
230‧‧‧操作
232‧‧‧操作
263‧‧‧實體層(PHY)模組
264‧‧‧解碼和控制模組
265‧‧‧感測放大器鎖存器
280‧‧‧溫度感測器
300‧‧‧儲存記憶體
310‧‧‧正常刷新命令
320‧‧‧批量刷新命令
410‧‧‧正常刷新命令真值表
420‧‧‧批量刷新命令真值表
500‧‧‧表
600‧‧‧方法
610‧‧‧操作
620‧‧‧操作
呈現附圖以幫助描述本案的各個態樣,並且提供該等附圖僅僅是為瞭圖示該等態樣而非對其進行限制。
圖1圖示了根據本案的至少一個態樣的示例性系統。
圖2圖示了根據本案的至少一個態樣的用於決定要利用正常還是批量刷新命令的示例性方法。
圖3圖示了由本案的批量刷新模式實現的效能改善的實例。
圖4圖示了根據本案的至少一個態樣的示例性正常刷新命令真值表和示例性批量刷新命令真值表。
圖5是圖示了由本案的批量刷新命令提供的改善的表。
圖6是圖示了使由於動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的示例性方法的流程圖。
國內寄存資訊 (請依寄存機構、日期、號碼順序註記) 無
國外寄存資訊 (請依寄存國家、機構、日期、號碼順序註記) 無

Claims (30)

  1. 一種用於使由於一動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的方法,該方法包括以下步驟: 由耦合到該動態揮發性記憶體子系統的一刷新排程器產生一批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的一識別;及 由該刷新排程器向該動態揮發性記憶體子系統發出該批量記憶體刷新命令。
  2. 如請求項1所述之方法,其中該動態揮發性記憶體子系統的要刷新的該一或多個組包括該動態揮發性記憶體子系統的多個組、該動態揮發性記憶體子系統的所有組,或者該動態揮發性記憶體子系統的一單個組。
  3. 如請求項1所述之方法,其中該複數個行包括兩行或四行。
  4. 如請求項1所述之方法,其中該批量記憶體刷新命令包括一預充電欄位、該複數個行的該識別、以及複數個啟用欄位。
  5. 如請求項1所述之方法,其中產生該批量記憶體刷新命令之步驟基於該動態揮發性記憶體子系統的一溫度大於一溫度閾值、高頻寬效能正被請求,或者潛時關鍵效能未被請求。
  6. 如請求項5所述之方法,進一步包括以下步驟: 從該動態揮發性記憶體子系統的一或多個客戶端接收指示高頻寬效能是否被請求的一或多個票決; 藉由對來自該一或多個客戶端的該一或多個票決求和來計算一頻寬效能索引;及 基於該頻寬效能索引大於一高頻寬閾值,決定高頻寬效能正被請求。
  7. 如請求項5所述之方法,進一步包括以下步驟: 從該動態揮發性記憶體子系統的一或多個客戶端接收指示潛時關鍵效能是否正被請求的一或多個票決; 藉由對來自該一或多個客戶端的該一或多個票決求和來計算一潛時效能索引;及 基於該潛時效能索引小於一低潛時閾值,決定潛時關鍵效能未被請求。
  8. 如請求項7所述之方法,其中該一或多個客戶端中的至少一者包括耦合到該動態揮發性記憶體子系統的一處理器。
  9. 如請求項5所述之方法,其中潛時關鍵效能未被請求具有比高頻寬效能正被請求更高的一優先順序,並且其中高頻寬效能正被請求具有比該動態揮發性記憶體子系統的溫度大於該溫度閾值更高的優先順序。
  10. 如請求項1所述之方法,其中該動態揮發性記憶體子系統包括一動態隨機存取記憶體(DRAM)子系統。
  11. 如請求項1所述之方法,其中該方法是在耦合到該動態揮發性記憶體子系統的一片上系統(SoC)中被執行的。
  12. 一種用於使由於刷新操作引起的效能降級最小化的裝置,包括: 一動態揮發性記憶體子系統,該動態揮發性記憶體子系統具有一或多個組並被配置成接收一批量記憶體刷新命令,其中該批量記憶體刷新命令識別要刷新的該一或多個組之每一者組的複數個行,並且進一步被配置成基於該批量記憶體刷新命令來刷新該一或多個組之每一者組的該複數個行。
  13. 如請求項12所述之裝置,進一步包括: 一匯流排;及 一主機,該主機被配置成:經由該匯流排向該動態揮發性記憶體子系統提供該批量記憶體刷新命令。
  14. 如請求項12所述之裝置,其中該動態揮發性記憶體子系統的要刷新的該一或多個組包括該動態揮發性記憶體子系統的多個組、該動態揮發性記憶體子系統的所有組,或者該動態揮發性記憶體子系統的一單個組。
  15. 如請求項12所述之裝置,其中該複數個行包括兩行或四行。
  16. 如請求項12所述之裝置,其中對該批量記憶體刷新命令的接收基於該動態揮發性記憶體子系統的一溫度大於一溫度閾值、高頻寬效能正被請求,或者潛時關鍵效能未被請求。
  17. 一種用於使由於一動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的裝置,該裝置包括: 耦合到該動態揮發性記憶體子系統的一刷新排程器,該刷新排程器被配置成: 產生一批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的一識別;及 向該動態揮發性記憶體子系統發出該批量記憶體刷新命令。
  18. 如請求項17所述之裝置,進一步包括: 一匯流排;及 該動態揮發性記憶體子系統,該動態揮發性記憶體子系統被配置成:經由該匯流排從該刷新排程器接收該批量記憶體刷新命令。
  19. 如請求項18所述之裝置,其中該動態揮發性記憶體子系統的要刷新的該一或多個組包括該動態揮發性記憶體子系統的多個組、該動態揮發性記憶體子系統的所有組,或者該動態揮發性記憶體子系統的一單個組。
  20. 如請求項18所述之裝置,其中該複數個行包括兩行或四行。
  21. 如請求項18所述之裝置,其中該批量記憶體刷新命令包括一預充電欄位、該複數個行的該識別、以及複數個啟用欄位。
  22. 如請求項18所述之裝置,其中該刷新排程器基於該動態揮發性記憶體子系統的一溫度大於一溫度閾值、高頻寬效能正被請求,或者潛時關鍵效能未被請求來產生該批量記憶體刷新命令。
  23. 如請求項22所述之裝置,其中該刷新排程器被進一步配置成: 從該動態揮發性記憶體子系統的一或多個客戶端接收指示高頻寬效能是否被請求的一或多個票決; 藉由對來自該一或多個客戶端的該一或多個票決求和來計算一頻寬效能索引;及 基於該頻寬效能索引大於一高頻寬閾值,決定高頻寬效能正被請求。
  24. 如請求項22所述之裝置,其中該刷新排程器被進一步配置成: 從該動態揮發性記憶體子系統的一或多個客戶端接收指示潛時關鍵效能是否被請求的一或多個票決; 藉由對來自該一或多個客戶端的該一或多個票決求和來計算一潛時效能索引;及 基於該潛時效能索引小於一低潛時閾值,決定潛時關鍵效能未被請求。
  25. 如請求項24所述之裝置,其中該一或多個客戶端中的至少一者包括耦合到該動態揮發性記憶體子系統的一處理器。
  26. 如請求項22所述之裝置,其中潛時關鍵效能未被請求具有比高頻寬效能正被請求更高的一優先順序,並且其中高頻寬效能正被請求具有比該動態揮發性記憶體子系統的溫度大於該溫度閾值更高的優先順序。
  27. 如請求項18所述之裝置,其中該動態揮發性記憶體子系統包括一動態隨機存取記憶體(DRAM)子系統。
  28. 如請求項18所述之裝置,其中該刷新排程器是耦合到該動態揮發性記憶體子系統的一片上系統(SoC)的一元件。
  29. 一種用於使由於一動態揮發性記憶體子系統中的刷新操作引起的效能降級最小化的裝置,該裝置包括: 耦合到該動態揮發性記憶體子系統的用於排程刷新命令的構件,該用於排程刷新命令的構件被配置成: 產生一批量記憶體刷新命令,該批量記憶體刷新命令包括該動態揮發性記憶體子系統的要刷新的一或多個組之每一者組的複數個行的一識別;及 向該動態揮發性記憶體子系統發出該批量記憶體刷新命令。
  30. 如請求項29所述之裝置,其中該動態揮發性記憶體子系統的要刷新的該一或多個組包括該動態揮發性記憶體子系統的多個組、該動態揮發性記憶體子系統的所有組,或者該動態揮發性記憶體子系統的一單個組。
TW107118630A 2017-07-24 2018-05-31 使由於記憶體子系統中的刷新操作引起的效能降級最小化 TW201917558A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/658,370 US20190026028A1 (en) 2017-07-24 2017-07-24 Minimizing performance degradation due to refresh operations in memory sub-systems
US15/658,370 2017-07-24

Publications (1)

Publication Number Publication Date
TW201917558A true TW201917558A (zh) 2019-05-01

Family

ID=62631174

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107118630A TW201917558A (zh) 2017-07-24 2018-05-31 使由於記憶體子系統中的刷新操作引起的效能降級最小化

Country Status (3)

Country Link
US (1) US20190026028A1 (zh)
TW (1) TW201917558A (zh)
WO (1) WO2019022837A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11281604B2 (en) * 2020-02-28 2022-03-22 Micron Technology, Inc. Multiple memory type shared memory bus systems and methods
KR102832884B1 (ko) * 2020-11-09 2025-07-09 삼성전자주식회사 메모리 장치, 스토리지 모듈, 호스트 및 이들의 동작 방법
US20230064822A1 (en) * 2021-09-01 2023-03-02 Micron Technology, Inc. Temperature controlled media management operations at a memory sub-system
KR20230046356A (ko) 2021-09-29 2023-04-06 삼성전자주식회사 메모리 장치, 메모리 장치의 동작 방법, 그리고 메모리 장치를 포함하는 전자 장치
US12106793B2 (en) * 2022-12-14 2024-10-01 Qualcomm Incorporated Batching aware techniques for refreshing memory devices
US12265712B2 (en) * 2023-08-09 2025-04-01 Qualcomm Incorporated Dynamic DDR scaling and use case management based on DDR refresh rate and size
US12406716B2 (en) * 2023-12-05 2025-09-02 Nxp Usa, Inc. Refresh operations in embedded dynamic random access memories (DRAMs)
US20250217051A1 (en) * 2023-12-28 2025-07-03 Qualcomm Incorporated Merged memory commands for improved bus utilization in volatile memory

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7206244B2 (en) * 2004-12-01 2007-04-17 Freescale Semiconductor, Inc. Temperature based DRAM refresh
US9286965B2 (en) * 2010-12-03 2016-03-15 Rambus Inc. Memory refresh method and devices
US8775725B2 (en) * 2010-12-06 2014-07-08 Intel Corporation Memory device refresh commands on the fly
US9355704B2 (en) * 2012-12-28 2016-05-31 Mediatek Inc. Refresh method for switching between different refresh types based on at least one parameter of volatile memory and related memory controller
US9490002B2 (en) * 2014-07-24 2016-11-08 Rambus Inc. Reduced refresh power
US20160239442A1 (en) * 2015-02-13 2016-08-18 Qualcomm Incorporated Scheduling volatile memory maintenance events in a multi-processor system
US9728245B2 (en) * 2015-02-28 2017-08-08 Intel Corporation Precharging and refreshing banks in memory device with bank group architecture
KR102372888B1 (ko) * 2015-06-15 2022-03-10 삼성전자주식회사 저장 장치의 온도별 데이터 관리 방법
US9659626B1 (en) * 2015-12-26 2017-05-23 Intel Corporation Memory refresh operation with page open
US9953694B2 (en) * 2016-06-06 2018-04-24 Intel Corporation Memory controller-controlled refresh abort

Also Published As

Publication number Publication date
US20190026028A1 (en) 2019-01-24
WO2019022837A1 (en) 2019-01-31

Similar Documents

Publication Publication Date Title
TW201917558A (zh) 使由於記憶體子系統中的刷新操作引起的效能降級最小化
Bhati et al. DRAM refresh mechanisms, penalties, and trade-offs
US9293188B2 (en) Memory and memory controller for high reliability operation and method
JP6227774B2 (ja) Dramサブアレイレベルリフレッシュ
JP2016526750A (ja) Dramサブアレイレベル自律リフレッシュメモリコントローラの最適化
US8560767B2 (en) Optimizing EDRAM refresh rates in a high performance cache architecture
CN101981548B (zh) 借助细粒度的预充电管理来提高存储器吞吐量
US8489807B2 (en) Techniques for performing refresh operations in high-density memories
KR20160116533A (ko) 리프레쉬 동작을 관리하는 메모리 콘트롤러, 메모리 시스템 및 그 동작방법
CN114388024B (zh) 具有经改进命令/地址总线利用的存储器
US6859407B1 (en) Memory with auto refresh to designated banks
US11437087B2 (en) Method and apparatus for accumulating and storing respective access counts of word lines in memory module
WO2017092282A1 (zh) 一种用于DRAM或eDRAM刷新的装置及其方法
WO2024072725A1 (en) Directed refresh management for dram
KR102833276B1 (ko) 반도체 메모리 장치를 포함하는 메모리 시스템
CN115374030A (zh) 具有存储器发起的命令插入的存储器以及相关联系统、装置和方法
CN102567243B (zh) 存储设备的刷新处理方法和存储设备
TWI254311B (en) Enhanced refresh circuit and method for reduction of dram refresh cycle
US12488824B2 (en) Memory with deterministic worst-case row address servicing, and associated systems, devices, and methods
US12019879B2 (en) Multi-level cell memory management
US12455688B2 (en) Memory management technology and computer system
JP2025135735A (ja) 半導体記憶装置
CN120260640A (zh) 存储器装置、存储器系统和操作存储器装置的方法
TW202605820A (zh) 記憶體裝置及其操作方法
CN119127728A (zh) 数据访问方法、装置、电子设备及存储介质