TW202403750A - 儲存模組及其操作方法、以及記憶體系統 - Google Patents
儲存模組及其操作方法、以及記憶體系統 Download PDFInfo
- Publication number
- TW202403750A TW202403750A TW112116705A TW112116705A TW202403750A TW 202403750 A TW202403750 A TW 202403750A TW 112116705 A TW112116705 A TW 112116705A TW 112116705 A TW112116705 A TW 112116705A TW 202403750 A TW202403750 A TW 202403750A
- Authority
- TW
- Taiwan
- Prior art keywords
- read
- prefetch
- host
- cache
- size
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000013507 mapping Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 28
- 230000002093 peripheral effect Effects 0.000 description 13
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 11
- 102100021568 B-cell scaffold protein with ankyrin repeats Human genes 0.000 description 7
- 101000971155 Homo sapiens B-cell scaffold protein with ankyrin repeats Proteins 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000009974 thixotropic effect Effects 0.000 description 7
- 101150047304 TMOD1 gene Proteins 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 102100033040 Carbonic anhydrase 12 Human genes 0.000 description 4
- 101000867855 Homo sapiens Carbonic anhydrase 12 Proteins 0.000 description 4
- 230000035772 mutation Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 102100033029 Carbonic anhydrase-related protein 11 Human genes 0.000 description 3
- 101000867841 Homo sapiens Carbonic anhydrase-related protein 11 Proteins 0.000 description 3
- 101001075218 Homo sapiens Gastrokine-1 Proteins 0.000 description 3
- 102100033041 Carbonic anhydrase 13 Human genes 0.000 description 2
- 101000867860 Homo sapiens Carbonic anhydrase 13 Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101100011863 Arabidopsis thaliana ERD15 gene Proteins 0.000 description 1
- 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
- 101100191082 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GLC7 gene Proteins 0.000 description 1
- 101100274406 Schizosaccharomyces pombe (strain 972 / ATCC 24843) cid1 gene Proteins 0.000 description 1
- 101100348376 Schizosaccharomyces pombe (strain 972 / ATCC 24843) mra1 gene Proteins 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0607—Interleaved addressing
-
- 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
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6026—Prefetching based on access pattern detection, e.g. stride based prefetch
Abstract
本發明提供一種操作儲存模組的方法,包含:基於關於自主機接收到的預取大小的資訊而設定特性值;以及基於自主機接收到的一個預取讀取命令而以快取線為單位執行連續讀取操作。
Description
實施例是關於一種半導體記憶體裝置,且更具體而言是關於一種能夠支援預取功能的儲存模組及其操作方法。
[相關申請案的交叉參考]
本申請案主張2022年7月14日在韓國智慧財產局申請的韓國專利申請案第10-2022-0087189號的優先權,所述申請案的揭露內容以全文引用的方式併入本文中。
半導體記憶體裝置大部分分類為揮發性半導體記憶體裝置及非揮發性半導體記憶體裝置。揮發性半導體記憶體裝置的讀取及寫入速度較快,但在不向其中供應電力時丟失儲存於其中的資料。揮發性半導體記憶體裝置可進一步劃分成動態隨機存取記憶體(dynamic random access memory;DRAM)及靜態隨機存取記憶體(static random access memory;SRAM)。
處理器的預取功能或硬體預取功能為補償由分配至處理器的快取記憶體與硬體中的DRAM之間的速度差所引起的時間延遲的功能。換言之,利用處理器的快取記憶體的速度比DRAM的速度更快的實情,預取功能預先將預期待使用的資料自DRAM帶至快取記憶體。
待藉由預取功能儲存於快取記憶體中的資料的大小大體上具有固定大小而無關於工作量。另外,為執行預取操作,主機需要傳輸多個讀取命令,且因此出現讀取至讀取間隙。此為歸因於雙倍資料速率(double data rate;DDR)時脈的不必要消耗及增加的等待時間而造成性能降級的因素。
一個態樣為提供一種能夠動態地判定待預取的資料的大小及防止讀取至讀取間隙的出現以使得根據工作量展現最佳性能的儲存模組。
根據一或多個實施例的一態樣,提供一種方法,所述方法包括:基於關於自主機接收到的預取大小所資訊而設定特性值;以及基於自主機接收到的一個預取讀取命令而以快取線為單位對儲存模組執行連續讀取操作。
根據一或多個實施例的另一態樣,提供一種儲存模組,所述儲存模組包括:記憶體裝置,包含揮發性記憶體;以及記憶體控制器,經組態以控制記憶體裝置。記憶體控制器包含:控制模組,經組態以解碼自主機接收到的設定命令以識別關於預取大小的資訊及基於預取大小而判定待連續地執行的讀取操作的數目;以及暫存器,經組態以儲存關於待連續地執行的讀取操作的數目的資訊。
根據一或多個實施例的另一態樣,提供一種記憶體系統,所述記憶體系統包括:主機,經組態以判定待預取至快取記憶體中的快取線的數目;以及儲存模組,包含揮發性記憶體,且經組態以自主機接收快取線的數目且基於快取線的數目而判定待連續地執行的讀取操作的數目,其中儲存模組基於自主機接收到的一個預取讀取命令而以快取線為單位連續地執行讀取操作。
在下文中,可在所屬領域中具通常知識者可容易地實施各種實施例的此程度上詳細且清楚地描述各種實施例。
圖1為示出根據一些實施例的記憶體系統的實例的方塊圖。
根據一些實施例的記憶體系統1000A可包含儲存模組1100及主機1200,且可支援動態預取操作。動態預取操作意謂主機1200根據工作量動態地判定預取大小,且儲存模組1100基於由主機1200判定的預取大小而執行讀取操作。藉由支援動態預取操作,記憶體系統1000A可根據快取記憶體中的工作量儲存能夠展現最佳性能的大小的資料。
在一些實施例中,記憶體系統1000A可支援單一預取讀取操作。單一預取讀取操作是指基於自主機1200接收到的一個預取讀取命令而以快取線為單位連續地執行讀取操作。藉由支援單一預取讀取操作,根據一些實施例的記憶體系統1000A可防止讀取至讀取間隙出現。因此,不僅可最小化等待時間,而且可最小化電力消耗。
參考圖1,記憶體系統1000A包含儲存模組1100及主機1200。
儲存模組1100可與主機1200通信,且可回應於主機1200的請求而寫入資料或讀取資料。
儲存模組1100可根據來自主機1200的請求而執行單一預取讀取操作。舉例而言,儲存模組1100可自主機1200接收一個預取讀取命令(在下文中,『PRD』)且可基於接收到的命令而以快取線為單位連續地執行讀取操作。為此目的,儲存模組1100可包含記憶體裝置1110及記憶體控制器1120。
記憶體裝置1110可包含揮發性記憶體。舉例而言,記憶體裝置1110可包含動態RAM(DRAM)。在此情況下,DRAM可為時脈同步DRAM,諸如同步DRAM(synchronous DRAM;SDRAM)。舉例而言,DRAM可為同步DRAM(SDRAM)、雙倍資料速率SDRAM(Double Data Rate SDRAM;DDR SDRAM)或低電力雙倍資料速率SDRAM記憶體(Low Power Double Data Rate SDRAM;LPDDR SDRAM)。此外,記憶體裝置1110可包含揮發性記憶體,諸如記憶體匯流排DRAM(RAMbus DRAM;RDRAM)、靜態RAM(SRAM)等。
記憶體控制器1120可自主機1200接收一個預取讀取命令PRD。記憶體控制器1120可控制儲存模組1100以使得基於一個預取讀取命令PRD而以快取線為單位連續地執行讀取操作。記憶體控制器1120可包含控制模組1121及暫存器1122。
控制模組1121可與主機1200交換命令及/或資料。舉例而言,控制模組1121可經由各種介接方法與主機1200交換資料,諸如:先進技術附接(advanced technology attachment;ATA)、序列ATA(serial ATA;SATA)、外部SATA(external SATA;e-SATA)、小型電腦小型介面(small computer small interface;SCSI)、串列附接SCSI(serial attached SCSI;SAS)、周邊組件互連(peripheral component interconnection;PCI)、快速PCI(PCI express;PCIe)、快速NVM(NVM express;NVMe)、IEEE1394、通用串列匯流排(universal serial bus;USB)、安全數位(secure digital;SD)卡、多媒體卡(multi-media card;MMC)、嵌入式多媒體卡(embedded multi-media card;eMMC)、通用快閃儲存裝置(universal flash storage;UFS)、嵌入式通用快閃儲存裝置(embedded UFS;eUFS)及/或CF(compact flash;CF)卡介面。
控制模組1121可自主機1200接收關於預取大小的資訊。舉例而言,控制模組1121可接收設定命令,諸如模式暫存器設定(mode register set;MRS)命令或模式暫存器寫入(mode register write;MRW)命令,且可解碼設定命令以辨識預取大小。控制模組1121可判定基於所辨識預取大小而待連續地執行的讀取操作的數目。
在一些實施例中,控制模組1121可自主機1200接收雙態觸變模式資訊。雙態觸變模式資訊可指示是否對多個庫群組中的相同庫群組連續地執行讀取操作或對多個庫群組中的不同庫群組連續地執行讀取操作。控制模組1121可基於雙態觸變模式資訊而使用對應於第一存取時間tCCD_L的脈寬或對應於第二存取時間tCCD_S的脈寬執行讀取操作。第一存取時間tCCD_L可為對應於相同庫群組的存取時間,且第二存取時間tCCD_S可為對應於不同庫群組的存取時間。換言之,第一存取時間tCCD_L是指用於在存取選定庫群組之後存取相同庫群組的存取時間,且第二存取時間tCCD_S是指用於在存取選定庫群組之後存取不同庫群組的存取時間。
暫存器1122可儲存與單一預取讀取操作相關的資訊。舉例而言,暫存器1122可儲存關於待連續地執行的讀取操作的數目的資訊。在一些實施例中,暫存器1122可儲存雙態觸變模式資訊。
繼續參考圖1,主機1200可執行預先自儲存模組1100提取預期待使用的資料且將資料儲存於主機1200中的預取操作。特別地,在一些實施例中,主機1200可執行根據工作量判定最佳預取大小的動態預取操作。為此目的,主機1200可包含處理器1210、快取記憶體1220以及預取大小決策模組1230。
處理器1210可執行各種算術運算及/或處理操作。舉例而言,處理器1210可使用儲存於快取記憶體1220中的資料來執行算術運算及/或處理操作。當快取記憶體1220中不需要資料時,處理器1210可使用儲存於儲存模組1100中的資料來執行算術運算及/或處理操作。
快取記憶體1220可儲存由處理器1210使用的資料。快取記憶體1220可包含例如相較於構成儲存模組1100的記憶體具有較快輸入/輸出速度的記憶體。舉例而言,快取記憶體1220可包含SRAM,且儲存模組1100可包含DRAM。由於由處理器1210使用的資料預先儲存於快取記憶體1220中,因此處理器1210的處理速度可增加。
快取記憶體1220可以快取線(在下文中,『CL』)為單位儲存資料。在一些實施例中,快取線CL可具有例如64個位元組的大小,所述大小是由DRAM形成的記憶體裝置1110的輸入/輸出單元。舉例而言,當快取線CL的大小為64個位元組且快取線CL的數目為7時,快取記憶體1220可儲存總共448個位元組的資料。然而,此僅為實例,且在一些實施例中,可不同地設定快取線CL的大小,諸如32個位元組或128個位元組。
預取大小決策模組1230可藉由預取操作判定待儲存於快取記憶體1220中的資料的總大小。舉例而言,當資料以快取線CL為單位儲存於快取記憶體1220中時,預取大小決策模組1230可判定快取線CL的數目以判定待儲存於快取記憶體1220中的總資料的大小。
在一些實施例中,預取大小決策模組1230可根據待由處理器1210執行的工作量不同地設定快取線CL的數目。亦即,預取大小決策模組1230可根據工作量不同地判定快取線CL的數目,使得處理器1210可展現最佳性能。舉例而言,預取大小決策模組1230可根據工作量基於快取命中比率而判定快取線CL的數目。經由此動態預取操作,處理器1210可針對各工作量展現最佳性能。
如上文所描述,根據一些實施例的記憶體系統1000A可藉由支援動態預取操作根據工作量展現最佳性能,且可藉由支援單一預取讀取操作而防止讀取至讀取間隙出現,藉此最小化等待時間及電力消耗。
圖2為示出根據一些實施例的圖1的主機1200的實例的方塊圖。參考圖2,主機1200可包含處理器1210、快取記憶體1220以及預取大小決策模組1230。
處理器1210可實施為多處理器系統。亦即,處理器1210可經實施以包含多個中央處理單元(central processing unit;CPU)核心1211至中央處理單元核心121n。然而,此僅為實例,且在一些實施例中,處理器1210可實施為僅包含一個CPU的單處理器系統。
快取記憶體1220可實施為具有快取階層。快取階層的各層級可稱為快取層級。舉例而言,快取記憶體1220可包含L1快取1221_1至L1快取1221_n及L2快取1222。
L1快取1221_1至L1快取1221_n接近處理器1210安置,且可為比L2快取1222更小且更快的快取。一個L1快取可為僅分配至一個CPU核心的私用快取。因此,一個L1快取的儲存資料可僅由對應CPU核心存取。亦即,在具有多個CPU核心1211至CPU核心121n的組態中,L1快取1221_1至L1快取1221_n中的各別一者可分配至多個CPU核心1211至CPU核心121n中的各者,且因此L1快取1221_1可分配為CPU核心1211的私用快取,且L1快取1221_2可分配為CPU核心1212的私用快取等。
L2快取1222更遠離處理器1210安置,且可為比L1快取1221_1至L1快取1221_n更大且更慢的快取。L2快取1222可為由多個CPU核心1211至CPU核心121n共用的共用快取。
儘管圖2示出L1快取1221_1至L1快取1221_n及L2快取1222的兩層級快取階層,但實施例不限於此。舉例而言,快取記憶體1220可進一步包含L3快取及/或L4快取。
一般而言,當處理器1210請求存在於快取記憶體1220中的資料時,請求稱為快取命中,且當處理器1210請求不存在於快取記憶體1220中的資料時,請求稱為快取未命中。由於對快取命中的存取請求可比對快取未命中的存取請求處理得快得多,因此具有用於增加快取命中比率的解決方案是有利的。
為了增加快取命中比率,根據一些實施例的預取大小決策模組1230可根據工作量不同地設定待預先儲存於快取記憶體1220中的資料的大小。舉例而言,當快取線CL的大小固定至32個位元組、64個位元組或128個位元組時,預取大小決策模組1230可根據工作量不同地設定快取線CL的數目以不同地設定待儲存於快取記憶體1220中的資料的大小。舉例而言,考慮到資料的時序局部性、空間局部性或順序局部性,預取大小決策模組1230可根據工作量設定快取線CL的數目。如上文所描述,藉由根據工作量不同地設定待預取的資料的大小,可最佳化記憶體系統的性能。
圖3為示出根據一些實施例的圖1的記憶體控制器1120的實例的方塊圖。參考圖3,記憶體控制器1120可包含控制模組1121及暫存器1122,且控制模組1121可包含MRS控制器1121_1及PRD控制器1121_2。
MRS控制器1121_1可自主機1200接收與預取操作相關的設定命令,且可藉由解碼設定命令來設定連續讀取操作的數目(the number of consecutive read operation;NCR)。在此情況下,一個讀取操作可以快取線CL為單位讀取資料。舉例而言,當快取線CL的大小為64個位元組且突發長度『BL』為16時,一個讀取操作可執行4個循環。此讀取操作可稱為例如突發讀取操作。在此情況下,當自主機1200請求的快取線CL的數目為7時,MRS控制器1121_1可將連續讀取操作的數目NCR設定為7。MRS控制器1121_1可將關於連續讀取操作的數目NCR的資訊儲存於暫存器1122中。
MRS控制器1121_1可解碼設定命令以識別關於雙態觸變模式TM的資訊。舉例而言,當雙態觸變模式啟用時,MRS控制器1121_1設定為連續地執行與不同庫群組相關聯的讀取操作,且可基於第二存取時間tCCD_S而執行連續讀取操作。作為另一實例,當雙態觸變模式停用時,MRS控制器1121_1設定為連續地執行與相同庫群組相關聯的讀取操作,且可基於第一存取時間tCCD_L而執行連續讀取操作。MRS控制器1121_1可將關於雙態觸變模式TM及/或存取時間tCCD的資訊儲存於暫存器1122中。
設定命令可具有任何形式,只要設定命令為用於設定與刷新操作相關的模式暫存器的信號。舉例而言,設定命令可為DDR4中的模式暫存器設定(MRS)命令或DDR5中的模式暫存器寫入(MRW)命令。
繼續參考圖3,PRD控制器1121_2可自主機1200接收預取讀取命令PRD。PRD控制器1121_2可自暫存器1122接收預取資訊PFI。在此情況下,預取資訊PFI可包含關於連續讀取操作的數目NCR、雙態觸變模式TM及/或存取時間tCCD的資訊。PRD控制器1121_2可基於預取資訊PFI而輸出用於控制相對於記憶體裝置1110的讀取操作的控制信號CTRL。
PRD控制器1121_2可對讀取操作的數目進行計數。當連續讀取操作的數目NCR達至臨限數目時,PRD控制器1121_2可結束讀取操作。在一些實施例中,臨限數目可為預設的。
圖4為示出根據一些實施例的圖1的記憶體裝置1110的實例的方塊圖。
參考圖4,記憶體裝置1110可包含第一庫群組BG1及第二庫群組BG2。第一庫群組BG1及第二庫群組BG2中的各者可包含第一庫BANK1至第n庫BANKn。第一庫群組BG1及第二庫群組BG2中的第一庫BANK1至第n庫BANKn中的各者可具有相同結構且可以相同方式操作。
第一庫BANK1至第n庫BANKn中的各者可包含記憶體胞元。記憶體胞元可用以儲存自主機1200傳送的資料。舉例而言,記憶體胞元可為揮發性記憶體胞元,諸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM、RDRAM、SRAM等。
記憶體裝置1110可更包含周邊電路1111。周邊電路1111可自主機1200接收命令CMD、位址ADDR以及時脈信號CK。周邊電路1111可自第一庫群組BG1及第二庫群組BG2中的第一庫BANK1至第n庫BANKn當中選擇由位址ADDR指示的庫。周邊電路1111可控制選定庫以相對於由選定庫的記憶體胞元當中的位址ADDR指示的記憶體胞元執行由命令CMD指示的操作,舉例而言,寫入操作或讀取操作。
周邊電路1111可包含經組態以與主機1200交換資料信號DQ及資料選通信號DQS的輸入/輸出電路1112。資料選通信號DQS可提供時序以鎖存資料信號DQ。
周邊電路1111可更包含經組態以回應於命令CMD、位址ADDR及/或時脈信號CK而控制選定庫的控制邏輯1113。
在一些實施例中,周邊電路1111可自PRD控制器1121_2接收控制信號CTRL。周邊電路1111可回應於控制信號CTRL而控制記憶體裝置1110執行單一預取讀取操作。
更詳細地,當自主機1200接收到預取讀取命令PRD時,PRD控制器1121_2(參考圖3)可基於儲存於暫存器1122(參考圖3)中的預取資訊PFI而產生用於控制相對於記憶體裝置1110的讀取操作的控制信號CTRL,且可將所產生控制信號CTRL傳送至周邊電路1111。
當雙態觸變模式啟用時,周邊電路1111可回應於控制信號CTRL而控制記憶體裝置1110以第二存取時間tCCD_S的間隔交替地執行相對於第一庫群組BG1及第二庫群組BG2的讀取操作。在此情況下,可以快取線CL為單位執行讀取操作。讀取資料可暫時儲存於輸入/輸出電路1112中,且可與待傳送至主機1200的時脈信號CK同步。
當雙態觸變模式停用時,周邊電路1111可回應於控制信號CTRL而以第一存取時間tCCD_L的間隔控制記憶體裝置1110對相同庫群組連續地執行讀取操作。換言之,記憶體裝置1110可對第一庫群組BG1中的第一庫BANK1至第n庫BANKn或對第二庫群組BG2中的第一庫BANK1至第n庫BANKn連續地執行讀取操作。在此情況下,可以快取線CL為單位執行讀取操作。讀取資料可暫時儲存於輸入/輸出電路1112中,且可與待傳送至主機1200的時脈信號CK同步。
在單一預取讀取操作中,預取讀取命令PRD可僅自主機1200輸入一次。亦即,當單一預取讀取操作開始時僅輸入預取讀取命令PRD一次,且此後,直至單一預取讀取操作完成為止可不輸入額外預取讀取命令PRD或讀取命令。因此,防止歸因於多個命令而出現讀取至讀取間隙,使得不僅可最小化等待時間,而且可最小化電力消耗。
如圖1至圖4中所示出,根據一些實施例的記憶體系統1000A可根據工作量不同地設定快取線CL的數目。因此,可改良記憶體系統1000A的性能。在一些實施例中,記憶體系統1000A可基於一個預取讀取命令而連續地執行讀取操作。因此,可防止出現讀取至讀取間隙,且因此可最小化等待時間及電力消耗。
圖5為示出根據一些實施例的圖1的記憶體系統1000A的操作的實例的流程圖。
在操作S110中,主機1200可根據工作量判定預取大小。舉例而言,當快取線CL的單位固定時,主機1200可根據工作量判定待預先儲存於快取記憶體1220(參考圖1)中的快取線CL的數目。
主機1200可基於快取線CL的經判定數目而判定模式暫存器值,且在操作S120中,主機可經由命令(command;CMD)匯流排將包含經判定模式暫存器值的設定命令傳送至儲存模組1100。舉例而言,設定命令可為DDR4的MRS命令或DDR5的MRW命令。
在操作S130中,儲存模組1100可基於模式暫存器值而設定單一預取讀取操作的組態。舉例而言,儲存模組1100可解碼模式暫存器值且可基於經解碼模式暫存器值而設定用於單一預取讀取操作的特性值。舉例而言,儲存模組1100可設定關於待連續地執行的讀取操作的數目、雙態觸變模式TM及/或存取時間tCCD的資訊,且可將資訊儲存於暫存器1122(參考圖3)中。
在操作S140中,主機1200可經由CMD匯流排將預取讀取命令PRD傳送至儲存模組1100。舉例而言,可使用僅一個位元來實施預取讀取命令PRD。在一些實施例中,預取讀取命令PRD可僅傳送至儲存模組1100一次,而不管主機1200判定的快取線CL的數目及/或儲存模組1100中待執行的讀取操作的數目。
在操作S150中,儲存模組1100可基於預取讀取命令PRD而執行單一預取讀取操作。舉例而言,當快取線CL的經判定數目為『n』時,可基於一個預取讀取命令PRD而執行『n』個連續讀取操作。
在操作S160中,儲存模組1100可經由資料匯流排將讀取資料傳送至主機1200。舉例而言,儲存模組1100可將讀取資料暫時儲存於輸入/輸出電路1112(圖4)中,且接著與DDR時脈同步依序將讀取資料傳送至主機1200。
圖6為更詳細地示出根據一些實施例的圖5的操作S150中的單一預取讀取操作的流程圖。
在操作S151中,儲存模組1100可解碼預取讀取命令PRD。
在操作S152中,儲存模組1100判定是否相對於不同庫群組執行讀取操作。舉例而言,儲存控制器1100可識別雙態觸變模式TM且識別是否相對於不同庫群組執行讀取操作。
當雙態觸變模式TM啟用時,儲存模組1100在不同庫群組之間執行讀取操作。詳言之,在操作S153中,儲存模組1100可基於對應於第二存取時間tCCD_S的脈寬而交替地執行相對於不同庫群組的讀取操作。在此情況下,各庫群組的讀取順序可以行步幅方案執行。舉例而言,當由主機1200判定的快取線CL的數目為『n』時,以快取線CL為單位執行『n』個讀取操作,且因此,可自不同庫群組讀取對應於n*快取線CL的總大小的資料。
當雙態觸變模式TM停用時,儲存模組1100對相同庫群組執行讀取操作。詳言之,在操作S154中,儲存模組1100可基於對應於長於第二存取時間tCCD_S的第一存取時間tCCD_L的脈寬而連續地執行相對於相同庫群組中的庫的讀取操作。在此情況下,各庫群組的讀取順序可以行步幅方案執行。
如圖5及圖6中所描述,根據一些實施例的記憶體系統1000A可基於一個預取讀取命令PRD而讀取對應於『n』個快取線CL的資料,且可將讀取資料儲存於快取記憶體中。一般而言,為將對應於『n』個快取線CL的資料儲存於快取記憶體中,主機需要經由命令(CMD)匯流排將『n』個讀取命令傳送至儲存模組。相比之下,根據一些實施例的記憶體系統1000A可使用一個預取讀取命令PRD來讀取對應於『n』個快取線CL的資料,且可將讀取資料儲存於快取記憶體中。因此,由於不必要使用多個讀取命令,因此可增加CMD匯流排的使用效率。所需電力可藉由減少命令的數目而減少。防止讀取至讀取間隙的出現,使得等待時間可減少。
圖7及圖8為用於描述根據一些實施例的圖6的操作S120及操作S130中的設定命令傳送及設定操作的圖。詳言之,圖7為示出傳送及設定設定命令的操作的實例的時序圖,且圖8為示出設定命令中設定的模式暫存器值的實例的圖。
參考圖7,時間T0至時間Ta0可處於舊設定狀態。
在時間Ta0處,主機1200可將設定命令MRS提供至儲存模組1100。舉例而言,在DDR4中,當所有庫處於閒置狀態時,主機1200可將設定命令MRS提供至儲存模組1100。
在時間Ta0至時間Tb1處,主機1200不提供非設定命令。在此情況下,非設定命令可指除設定命令MRS以外的命令。舉例而言,非設定命令可為主動/讀取/寫入命令。此類時間Ta0至時間Tb1可稱為更新延遲時間tMOD。在更新延遲時間tMOD期間,儲存模組1100可解碼設定命令MRS、可識別關於單一預取讀取操作的資訊且可設定單一預取讀取操作。
此後,在時間Tb1之後,儲存模組1100可接收非設定命令。
在一些實施例中,儘管未單獨示出,但如在上述描述中,可執行DDR5的模式暫存器設定程序。舉例而言,當所有庫在正常操作期間處於閒置狀態時,主機1200可將設定命令MRW提供至儲存模組1100。主機1200在更新延遲時間tMOD期間不將非設定命令提供至儲存模組1100。在更新延遲時間tMOD期間,儲存模組1100設定單一預取讀取操作。在更新延遲時間tMOD過去之後,儲存模組1100可接收非設定命令。
在圖8A中,當設定命令為DDR4的MRS命令時,示出MRS命令的各別信號(CKE、CS_n、RAS_n、CAS_n、WE_n、BG0至BG1、BA0至BA1、C2至C0、A12、A17、A14、A11、A10、A0至A9等)的邏輯值。此處,『H』表示邏輯高,『L』表示邏輯低,『BG』表示庫群組位址,『BA』表示庫位址,『X』表示『H』或『L』或表示值未定義(亦即,無關(don’t care)),諸如浮置狀態,且『V』表示定義為『H』或『L』的邏輯位準。OP碼表示操作碼。
在圖8B中,當設定命令為DDR5的MRW命令時,示出MRW命令的各別信號(CS_n及CA0至CA13)的邏輯值。此處『H』表示邏輯高,『L』表示邏輯低,MRA0至MRA7表示模式暫存器位址,且『V』表示定義為『H』或『L』的邏輯位準。OP0至OP7表示操作碼。
參考圖8A及圖8B,藉由使用DDR4的MRS命令的操作碼(OP碼)或DDR5的MRW命令的操作碼(OP0至OP7),可表示與單一預取讀取操作相關的資訊。舉例而言,與設定命令中的單一預取讀取操作相關的資訊可如圖8C中所示出。
參考圖8C,操作碼可為例如5個位元OP[4:0]。
舉例而言,OP[3:0]可指示由主機1200判定的快取線CL的數目。待儲存於快取記憶體1220(參考圖1)中的快取線CL的數目可取決於寫入於OP[3:0]中的資料0000至資料1111而變化。當以快取線CL為單位執行儲存模組1100的讀取操作時,寫入於OP[3:0]中的資料0000至資料1111可對應於待在儲存模組1100中連續地執行的讀取操作的數目NCR。
作為實例,OP[4]可指示雙態觸變模式TM。舉例而言,當OP[4]的資料為『1』時,雙態觸變模式TM可處於作用中狀態。在此情況下,儲存模組1100可以第二存取時間tCCD_S的間隔對不同庫群組交替地執行讀取操作。作為另一實例,當OP[4]的資料為『0』時,雙態觸變模式TM可處於非作用中狀態。在此情況下,儲存模組1100可以第一存取時間tCCD_L的間隔連續地執行相對於相同庫群組中的庫的讀取操作。
圖9A至圖9B為用於描述根據一些實施例的操作S140中的預取讀取命令PRD的傳送操作的實例的圖。
在圖9A中,當命令為DDR4的讀取命令時,示出讀取命令的各別信號(CAS_n、A17、A13、A11等)的邏輯值。此處,『H』表示邏輯高,『L』表示邏輯低,『X』表示『H』或『L』或表示值未定義(亦即,無關),諸如浮置狀態。
如圖9A中所示出,信號A17、信號A13以及信號A11可定義於DDR4中。在一些實施例中,可使用未定義的A17信號、A13信號以及A11信號中的任一者來傳送預取讀取命令PRD。舉例而言,可使用具有1位元的A17信號來傳送預取讀取命令PRD。由於預取讀取命令PRD僅使用一個位元,因此可最小化CMD匯流排的額外負荷。
在圖9B中,當命令為DDR5的讀取命令時,示出讀取命令的各別信號(CS_n、CA0至CA12等)的邏輯值。
如圖9B中所示出,信號CA9、信號CA11以及信號CA12可不定義於DDR5中。在一些實施例中,可使用未定義CA9信號、CA11信號以及CA12信號中的任一者來表示預取讀取命令PRD。由於預取讀取命令PRD僅使用一個位元,因此即使當記憶體系統1000A支援DDR5時,亦可最小化CMD匯流排的額外負荷。
圖10及圖11A至圖11B為用於描述操作S150中的單一預取讀取操作的實例的比較圖。詳言之,圖10示出根據一些實施例的相對於不同庫群組的單一預取讀取操作。在圖11A中,示出先前技術預取讀取操作的時序圖,且在圖11B中,藉助於實例示出根據一些實施例的單一預取讀取操作的時序圖。
參考圖10,可回應於預取讀取命令PRD而執行單一預取讀取操作。當雙態觸變模式TM啟用時,交替地執行相對於不同庫群組的讀取操作,使得可執行單一預取讀取操作。舉例而言,假定執行『n』個連續讀取操作。在此情況下,可對第一庫群組BG1執行對應於第一快取線CL1的資料大小的讀取操作,且此後,可對第二庫群組BG2執行對應於第二快取線CL2的資料大小的讀取操作。以此方式,可在第一庫BG1與第二庫BG2之間交替地執行對應於第一快取線CL1至第n快取線CLn的資料大小的讀取操作。
各庫群組的讀取操作可以行步幅方案執行。舉例而言,當對第一庫群組BG1或第二庫群組BG2執行讀取操作時,可在自左至右的一個方向上依序執行讀取操作。
基於多個讀取命令RD而執行先前技術預取讀取操作。舉例而言,如圖11A中所示出,儲存模組自主機接收『n』個讀取命令,且基於而『n』個讀取命令而執行『n』個讀取操作。在此情況下,間隙或時序氣泡可存在於藉由鄰近讀取命令讀取的資料之間。舉例而言,讀取至讀取間隙出現在對應於藉由第一讀取命令RD1讀取的第一快取線CL1的資料與對應於藉由第二讀取命令RD2讀取的第二快取線CL2的資料之間。此讀取至讀取間隙不僅不必要地消耗儲存模組的DDR時脈,但亦歸因於等待時間的增加而造成主機的性能降級。
如圖11B中所示出,可基於一個預取讀取命令PRD而執行根據一些實施例的單一預取讀取操作。因此,防止歸因於多個讀取命令的讀取至讀取間隙的出現,且因此,亦可防止DDR時脈的不必要消耗及等待時間的增加。在一些實施例中,由於僅一個命令PRD經由CMD匯流排傳送,亦可防止介面上的命令匯流排的損失。在一些實施例中,由於僅產生一個命令PRD而不需要產生多個讀取命令,總電力消耗亦可減少。
可以各種方式實施根據一些實施例的單一預取讀取操作。在下文中,將更詳細地描述根據一些實施例的單一預取讀取操作的各種修改。
圖12A為示出根據一些實施例的支援用於不同庫群組的連續讀取操作的單一預取讀取操作的實例的圖。舉例而言,在圖12A中,可支援DDR4,突發長度BL可為8,第二存取時間tCCD_S可為4,且讀取延遲(在下文中,『RL』)可為11。儘管未示出,但1tCK或2tCK可應用於前置碼。
參考圖12A,在時間T0處,可經由CMD匯流排將預取讀取命令PRD自主機1200(參考圖1)提供至儲存模組1100(參考圖1)。在此情況下,可一起提供目標位址。目標位址可包含用於目標庫群組的位址及用於目標庫的位址。舉例而言,目標庫群組可為第一庫群組BG1,且目標庫位址可為第一庫行『庫行1』。
由於讀取延遲RL為11,因此可在從時間T0起經過11個時脈的時間T11讀取相對於第一庫群組BG1的資料。在此情況下,讀取資料的大小可對應於8個突發長度BL,且可對應於快取記憶體1220的快取線CL的大小(參考圖1)。
由於第二存取時間tCCD_S設定為4,因此可基於4個時脈改變執行讀取操作的庫群組。舉例而言,在自時間T0起經過4個時脈的時間T4時,執行讀取操作的庫群組可自第一庫群組BG1改變至第二庫群組BG2。
由於讀取延遲RL為11,因此可在自時間T4起經過11個時脈的時間T15讀取相對於第二庫群組BG2的資料。在此情況下,讀取資料的大小可對應於8個突發長度BL,且可對應於快取記憶體1220的快取線CL的大小(參考圖1)。以此方式,可以快取線CL為單元自第一庫群組BG1及第二庫群組BG2交替地讀取資料。
在第一庫群組BG1及第二庫群組BG2中的各者中,可以行步幅方案讀取資料。亦即,在各庫群組中,可在自左至右(或自右向左)的一個方向上依序選定行位址。因此,不需要除目標位址以外的額外位址,且因此,可防止命令匯流排在介面上的損失及讀取至讀取間隙的出現。
圖12B為示出根據一些實施例的支援用於不同庫群組的連續讀取操作的單一預取讀取操作的另一實例的圖。舉例而言,在圖12B中,可支援DDR4,突發長度BL可為8,第二存取時間tCCD_S可為4,且讀取延遲『RL』可為11。同時,儘管未示出,但1tCK或2tCK可應用於前置碼。圖12A的單一預取讀取操作與圖12B的單一預取讀取操作彼此類似。因此,出於簡潔起見,下文將省略額外描述以避免冗餘。
圖12B的單一預取讀取操作可支援即時處理(On The Fly;OTF)模式。舉例而言,在第一庫群組BG1的讀取操作中,可讀取對應於突發長度BL為8的資料,且在第二庫群組BG2的讀取操作中,可讀取對應於突發突變BC為4的資料。舉例而言,可在時間T11至時間T15讀取第一庫群組BG1的資料,且可在時間T15至時間T17讀取第二庫群組BG2的資料。
由於讀取延遲RL為11,且第二存取時間tCCD_S設定為4,因此在讀取對應於突發突變BC為4的資料之後,可不讀取資料或可讀取虛設資料。舉例而言,在時間T17至時間T19可不讀取資料或可讀取虛設資料。
在此情況下,在時間T11至時間T15讀取的資料可對應於快取記憶體1220的第一快取線CL1,且在時間T15至時間T19讀取的資料可對應於快取記憶體1220的第二快取線CL2。
以此方式,根據一些實施例的單一預取讀取操作可支援不同庫群組的讀取(BL8)至讀取(BC4)OTF模式。
圖12C為示出根據一些實施例的支援用於不同庫群組的連續讀取操作的單一預取讀取操作的另一實例的圖。舉例而言,在圖12C中,可支援DDR4,突發長度BL可為8,第二存取時間tCCD_S可為4,且讀取延遲『RL』可為11。儘管未示出,但1tCK或2tCK可應用於前置碼。圖12C的單一預取讀取操作與圖12B的單一預取讀取操作彼此類似。因此,出於簡潔起見,下文將省略額外描述以避免冗餘。
儘管圖12B的單一預取讀取操作支援讀取(BL8)至讀取(BC4)OTF模式,但圖12C的單一預取讀取操作可支援讀取(BC4)至讀取(BL8)OTF模式。
舉例而言,可在時間T11至時間T13讀取第一庫群組BG1的資料,且可在時間T15至時間T19讀取第二庫群組BG2的資料。在時間T13至時間T15可不讀取資料或可讀取虛設資料。在此情況下,在時間T11至時間T15讀取的資料可對應於快取記憶體1220的第一快取線CL1,且在時間T15至時間T19讀取的資料可對應於快取記憶體1220的第二快取線CL2。
以此方式,根據一些實施例的單一預取讀取操作可支援不同庫群組的讀取(BC4)至讀取(BL8)OTF模式。
圖12D為示出根據一些實施例的支援用於不同庫群組的連續讀取操作的單一預取讀取操作的另一實例的圖。舉例而言,在圖12D中,可支援DDR4,突發長度BL可為8,第二存取時間tCCD_S可為4,且讀取延遲『RL』可為11。儘管未示出,但1tCK或2tCK可應用於前置碼。圖12D的單一預取讀取操作與圖12A的單一預取讀取操作彼此類似。因此,出於簡潔起見,下文將省略額外描述以避免冗餘。
圖12D的單一預取讀取操作可支援資料匯流排反相(data bus inversion;DBI)模式。DBI是指在待傳輸的資料中的『0』的數目大於『1』的數目時藉由利用在傳輸『1』的資料時電力消耗較低的實情來反相及傳輸各資料位元的函式。對此,可另外提供DBI_n接腳。因此,根據一些實施例的單一預取讀取操作亦可支援用於不同庫群組的DBI模式。
圖12E為示出根據一些實施例的支援用於不同庫群組的連續讀取操作的單一預取讀取操作的另一實例的圖。舉例而言,在圖12E中,可支援DDR5,且突發長度BL可為16。圖12E的單一預取讀取操作與圖12A的單一預取讀取操作彼此類似。因此,出於簡潔起見,下文將省略額外描述以避免冗餘。
參考圖12E,自時間t0至時間t1,可經由CMD匯流排將單一預取讀取命令PRD自主機1200提供至儲存模組1100。在此情況下,在時間t0處,可一起提供目標位址。目標位址可包含用於目標庫群組的位址及用於目標庫的位址。可基於預取讀取命令PRD及目標位址而執行相對於第一庫群組BG1的讀取操作。
當第二存取時間tCCD_S經過時,目標庫群組可自第一庫群組BG1改變至第二庫群組BG2。此後,可對第二庫群組BG2執行讀取操作。
在第一庫群組BG1及第二庫群組BG2中的各者中,可以行步幅方案讀取資料。以此方式,根據一些實施例的單一預取讀取操作亦可應用於DDR5。
圖12F為示出根據一些實施例的支援用於相同庫群組的連續讀取操作的單一預取讀取操作的另一實例的圖。舉例而言,在圖12F中,可支援DDR5,且突發長度BL可為16。圖12F的單一預取讀取操作與圖12E的單一預取讀取操作彼此類似。因此,出於簡潔起見,下文將省略額外描述以避免冗餘。
不同於其中對不同庫群組執行讀取操作的圖12E,圖12F的讀取操作可對相同庫群組中的庫執行。舉例而言,當雙態觸變模式TM停用時,可執行單一庫群組的讀取操作。
在此情況下,可基於對應於第一存取時間tCCD_L的脈寬而執行相同庫群組的連續讀取操作。舉例而言,第一存取時間tCCD_L可設定為長於圖12E的第二存取時間tCCD_S。在一些實施例中,可以行步幅方案執行選定庫群組的讀取操作的次序。
因此,根據一些實施例的單一預取讀取操作可應用於相同庫群組。
圖13為示出根據一些實施例的記憶體系統1000B的實例的方塊圖。圖13的記憶體系統1000B類似於圖1的記憶體系統1000A。因此,使用相同或類似附圖標號標示相同或類似組件,且下文將省略額外描述以避免冗餘。
參考圖13,記憶體系統1000B可包含儲存模組1100及主機1200_1。主機1200_1包含:處理器1210、快取記憶體1220、預取大小決策模組1230及系統位址映射管理器1240,且儲存模組1100包含記憶體裝置1110及記憶體控制器1120。
相較於圖1的記憶體系統1000A,圖13的記憶體系統1000B可更包含系統位址映射管理器1240。系統位址映射管理器1240可組態系統位址映射。系統位址映射管理器1240可參考系統位址映射來解譯自儲存模組1100接收到的資料。因此,相對於自儲存模組1100接收到的資料的準確解譯是可能的,且因此可改良記憶體系統1000B的總體性能。
圖14為示出根據一些實施例的由系統位址映射管理器1240組態的系統位址映射的實例。圖14示出相對於不同庫群組的對應於單一預取讀取操作的系統位址映射。
參考圖14,系統位址映射可沿著行步幅方向自右向左依序組態。在一些實施例中,為了反映庫群組BG是基於記憶體裝置1110中的快取線CL的大小或第二存取時間tCCD_S而交替地選定的,系統位址映射亦可指示庫群組是基於快取線CL的大小或第二存取時間tCCD_S而交替地選定的。舉例而言,假定快取線CL的大小為64個位元組,且10個讀取操作在儲存模組1100中連續地執行。在此情況下,系統位址映射可經組態以指示庫群組在目標位址、目標位址+0x40、目標位址+0x80、目標位址+0xC0、目標位址+0x100、目標位址+0x140、目標位址+0x180、目標位址+0x1C0、目標位址+0x200、目標位址+0x240處改變。
因此,系統位址映射包含關於自儲存模組1100接收到的資料的位址的資訊,且因此,對自儲存模組1100接收到的資料的準確解譯是可能的,使得可改良記憶體系統1000B的總體性能。
根據一些實施例,儲存模組可藉由動態地判定待根據工作量預取的資料的大小及僅傳輸一個預取讀取命令來防止讀取至讀取間隙的出現。因此,可改良記憶體系統的性能。
以上描述為用於進行本揭露的特定實施例。其中簡單地改變或容易地改變的設計的實施例可包含於本揭露以及上文所描述的實施例中。在一些實施例中,藉由使用上述實施例易於改變及實施的技術可包含於本揭露中。儘管已參考本揭露的實施例描述揭露,但所屬領域的技術人員將顯而易見,可在不脫離如以下申請專利範圍中所闡述的本揭露的精神及範疇的情況下對本揭露作出各種改變及修改。
1000A、1000B:記憶體系統
1100:儲存模組
1110:記憶體裝置
1111:周邊電路
1112:輸入/輸出電路
1113:控制邏輯
1120:記憶體控制器
1121:控制模組
1121_1:MRS控制器
1121_2:PRD控制器
1122:暫存器
1200、1200_1:主機
1210:處理器
1211、1212…121n:中央處理單元核心
1220:快取記憶體
1221_1、1221_2、1221_n:L1快取
1222:L2快取
1230:預取大小決策模組
1240:系統位址映射管理器
A0、A9、A10、A11、A13、A14、A17、BA0、BA1、BG0、BG1、CA0、CA1、CA2、CA3、CA4、CA5、CA6、CA7、CA8、CA9、CA11、CA12、CA13、CAS_n、CAS_n、RAS_n、WE_n:信號
A10、AP:自動預充電
A12、BC_n:突發突變信號
ACT_n:有效信號
ADDR:位址
BA:庫位址
BANK1:第一庫
BANK2:第二庫
BANK3:第三庫
BANKn:第n庫
BC:突發突變
BG:庫群組
BG1:第一庫群組
BG2:第二庫群組
BL:突發長度
C0、C1、C2:晶片識別符/行位址的位元
C4:行位址的位元
CA10:命令/寫入信號
CA9:數位射頻記憶體(DRFM)信號
CID0、CID1:記憶體晶粒的識別符
CK:時脈信號
CK_t、CK_c:差動時脈信號
CKE:時脈啟用信號
CL:快取線
CL1:第一快取線
CL2:第二快取線
CL3:第三快取線
CL4:第四快取線
CLn:第n快取線
CLn-1:第n-1快取線
CLn-2:第n-2快取線
CMD:命令
CS_n:晶片選擇信號
CTRL:控制信號
DES:取消選擇命令/設備取消選擇命令
Dout1~Dout8:資料
DQ:資料信號
DQS:資料選通信號
H:邏輯高
L:邏輯低
MRA0、MRA1、MRA2、MRA3、MRA4、MRA5、MRA6、MRA7:模式暫存器位址
MRS、MRW:設定命令
OP0、OP1、OP2、OP3、OP4、OP5、OP6、OP7:操作碼
PFI:預取資訊
PRD:預取讀取命令
PRD:預取讀取命令
R2、R3:列位址的位元
RD:讀取命令
RD1:第一讀取命令
RD2:第二讀取命令
RD3:第三讀取命令
RD4:第四讀取命令
RDn:第n讀取命令
RL:讀取延遲
S110、S120、S130、S140、S150、S151、S152、S153、S154、S160:操作
t0、t1、T0、T1、T2、T3、T4、T5、T6、T7、T8、T9、T10、T11、T12、T13、T14、T15、T16、T17、T18、T19、T20、Ta0、Ta1、Ta2、Ta3、Ta4、Tb0、Tb1、Tb2、Tb3:時間
Tccd:存取時間
tCCD_L:第一存取時間
tCCD_S:第二存取時間
tDBI:資料匯流排反相時間
TM:雙態觸變模式
tMOD:更新延遲時間
V:邏輯位準
X:未定義
將自結合隨附圖式進行的以下詳細描述更清楚地理解以上及其他態樣,在隨附圖式中:
圖1為示出根據一些實施例的記憶體系統的實例的方塊圖。
圖2為示出根據一些實施例的圖1的記憶體系統的主機的實例的方塊圖。
圖3為示出根據一些實施例的圖1的記憶體系統的記憶體控制器的實例的方塊圖。
圖4為示出根據一些實施例的圖1的記憶體系統的記憶體裝置的實例的方塊圖。
圖5為示出根據一些實施例的圖1的記憶體系統的操作的實例的流程圖。
圖6為更詳細地示出根據一些實施例的圖5的流程圖中的單一預取讀取操作的流程圖。
圖7為示出根據一些實施例的傳送及設定設定命令的操作的實例的時序圖。
圖8A至圖8C為示出根據一些實施例的設定命令中設定的模式暫存器值的實例的圖。
圖9A及圖9B為用於描述根據一些實施例的預取讀取命令的傳送操作的實例的圖。
圖10、圖11A以及圖11B為用於描述根據一些實施例的單一預取讀取操作的實例的比較圖。
圖12A至圖12F為示出根據一些實施例的單一預取讀取操作的各種實例的圖。
圖13為示出根據一些實施例的記憶體系統的實例的方塊圖。
圖14為示出根據一些實施例的由系統位址映射管理器組態的系統位址映射的實例。
1100:儲存模組
1200:主機
S110、S120、S130、S140、S150、S160:操作
Claims (20)
- 一種方法,包括: 基於關於自主機接收到的預取大小的資訊而設定特性值;以及 基於自所述主機接收到的一個預取讀取命令而以快取線為單位對儲存模組執行連續讀取操作。
- 如請求項1所述的方法,其中執行所述連續讀取操作包括: 基於存取時間而相對於多個庫群組當中的不同庫群組連續地執行所述連續讀取操作。
- 如請求項2所述的方法,其中相對於所述不同庫群組連續地執行所述連續讀取操作包括: 相對於所述多個庫群組中的第一庫群組讀取對應於快取線的大小的資料;以及 以所述存取時間之間隔,相對於所述多個庫群組中的不同於所述第一庫群組的第二庫群組讀取對應於所述快取線的所述大小的資料。
- 如請求項3所述的方法,其中基於行步幅方案而在一個方向上依序執行相對於所述第一庫群組及所述第二庫群組的讀取操作。
- 如請求項2所述的方法,其中相對於所述不同庫群組連續地執行所述連續讀取操作包括: 相對於所述多個庫群組中的第一庫群組讀取第一大小的資料;以及 以所述存取時間的間隔,相對於所述多個庫群組中的不同於所述第一庫群組的第二庫群組讀取小於所述第一大小的第二大小的資料,以及 其中所述第一大小為與快取線的大小相同的大小。
- 如請求項2所述的方法,其中相對於所述不同庫群組連續地執行所述連續讀取操作包括: 相對於所述多個庫群組中的第一庫群組讀取第一大小的資料;以及 以所述存取時間的間隔,相對於所述多個庫群組中的不同於所述第一庫群組的第二庫群組讀取大於所述第一大小的第二大小的資料,以及 其中所述第二大小為與快取線的大小相同的大小。
- 如請求項1所述的方法,其中執行所述連續讀取操作包括: 基於存取時間而相對於相同庫群組中的庫連續地執行所述連續讀取操作。
- 如請求項1所述的方法,其中所述一個預取讀取命令由『1』位元實施。
- 如請求項1所述的方法,其中所述特性值包含與待連續地執行的所述連續讀取操作的數目相關的特性值。
- 如請求項9所述的方法,其中所述特性值包含與是否將對多個庫群組中的相同庫群組執行讀取操作或是否將對所述多個庫群組中的不同庫群組執行讀取操作相關的特性值。
- 如請求項1所述的方法,其中關於所述預取大小的所述資訊經由模式暫存器設定(MRS)命令或模式暫存器寫入(MRW)命令自所述主機傳送,以及 其中,在用於設定所述特性值的更新延遲時間期間,不自所述主機傳輸非設定命令。
- 一種儲存模組,包括: 記憶體裝置,包含揮發性記憶體;以及 記憶體控制器,經組態以控制所述記憶體裝置,以及 其中所述記憶體控制器包含: 控制模組,經組態以解碼自主機接收到的設定命令以識別關於預取大小的資訊及基於所述預取大小而判定待連續地執行的讀取操作的數目;以及 暫存器,經組態以儲存關於待連續地執行的讀取操作的所述數目的資訊。
- 如請求項12所述的儲存模組,其中所述記憶體裝置包含多個庫群組, 其中所述控制模組解碼所述設定命令以識別關於與所述多個庫群組中的將執行讀取操作的庫群組相關的雙態觸變模式的資訊,以及 其中所述暫存器儲存關於所述雙態觸變模式的所述資訊。
- 如請求項13所述的儲存模組,其中所述控制模組基於自所述主機接收到的一個預取讀取命令而輸出用於對所述記憶體裝置執行所述讀取操作的控制信號,以及 其中所述控制信號是基於關於待連續地執行的讀取操作的所述數目的所述資訊及關於所述雙態觸變模式的所述資訊而產生的。
- 如請求項14所述的儲存模組,其中當所述雙態觸變模式啟用時,所述記憶體裝置基於所述控制信號而對所述多個庫群組中的不同庫群組交替地執行所述讀取操作。
- 如請求項15所述的儲存模組,其中用於所述不同庫群組中的各者的所述讀取操作基於行步幅方案而執行。
- 如請求項14所述的儲存模組,其中當所述雙態觸變模式停用時,所述記憶體裝置基於所述控制信號而對所述多個庫群組中的相同庫群組的庫連續地執行所述讀取操作。
- 一種記憶體系統,包括: 主機,經組態以判定待預取至快取記憶體中的快取線的數目;以及 儲存模組,包含揮發性記憶體,且經組態以自所述主機接收快取線的所述數目且基於快取線的所述數目而判定待連續地執行的讀取操作的數目, 其中所述儲存模組基於自所述主機接收到的一個預取讀取命令而以所述快取線為單位連續地執行讀取操作。
- 如請求項18所述的記憶體系統,其中所述主機包含: 處理器; 快取記憶體,分配至所述處理器;以及 預取大小決策模組,經組態以基於待由所述處理器執行的工作量而判定待預取的快取線的所述數目。
- 如請求項19所述的記憶體系統,其中所述主機更包含: 系統位址映射管理器,經組態以管理與自所述儲存模組接收到的資料相關聯的位址資訊。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0087189 | 2022-07-14 | ||
KR1020220087189A KR20240009812A (ko) | 2022-07-14 | 2022-07-14 | 프리페치 기능을 지원하는 스토리지 모듈 및 그것의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202403750A true TW202403750A (zh) | 2024-01-16 |
Family
ID=87245591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112116705A TW202403750A (zh) | 2022-07-14 | 2023-05-05 | 儲存模組及其操作方法、以及記憶體系統 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240020235A1 (zh) |
EP (1) | EP4307128A1 (zh) |
KR (1) | KR20240009812A (zh) |
CN (1) | CN117407323A (zh) |
TW (1) | TW202403750A (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160092383A1 (en) * | 2014-09-26 | 2016-03-31 | Kuljit S. Bains | Common die implementation for memory devices |
US9870325B2 (en) * | 2015-05-19 | 2018-01-16 | Intel Corporation | Common die implementation for memory devices with independent interface paths |
JP2016218721A (ja) * | 2015-05-20 | 2016-12-22 | ソニー株式会社 | メモリ制御回路およびメモリ制御方法 |
US20160378366A1 (en) * | 2015-06-24 | 2016-12-29 | Intel Corporation | Internal consecutive row access for long burst length |
KR102412609B1 (ko) * | 2017-11-03 | 2022-06-23 | 삼성전자주식회사 | 내부 커맨드에 따른 어드레스에 대한 저장 및 출력 제어를 수행하는 메모리 장치 및 그 동작방법 |
US10372330B1 (en) * | 2018-06-28 | 2019-08-06 | Micron Technology, Inc. | Apparatuses and methods for configurable memory array bank architectures |
KR20200039930A (ko) * | 2018-10-08 | 2020-04-17 | 삼성전자주식회사 | 인-메모리 프리페칭을 수행하는 메모리 장치 및 이를 포함하는 시스템 |
-
2022
- 2022-07-14 KR KR1020220087189A patent/KR20240009812A/ko unknown
-
2023
- 2023-04-25 US US18/139,112 patent/US20240020235A1/en active Pending
- 2023-05-05 TW TW112116705A patent/TW202403750A/zh unknown
- 2023-07-11 EP EP23184639.5A patent/EP4307128A1/en active Pending
- 2023-07-14 CN CN202310865352.2A patent/CN117407323A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN117407323A (zh) | 2024-01-16 |
US20240020235A1 (en) | 2024-01-18 |
EP4307128A1 (en) | 2024-01-17 |
KR20240009812A (ko) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107068175B (zh) | 易失性存储器设备、其信息提供方法及其刷新控制方法 | |
TWI434286B (zh) | 具擴充模式之固態儲存元件控制器及其運作方法 | |
US7441070B2 (en) | Method for accessing a non-volatile memory via a volatile memory interface | |
US20080010420A1 (en) | Method for Accessing Control Registers via a Memory Device | |
JP2000021160A (ja) | 半導体集積回路及びデータ処理システム | |
US20080010419A1 (en) | System and Method for Issuing Commands | |
KR20160116533A (ko) | 리프레쉬 동작을 관리하는 메모리 콘트롤러, 메모리 시스템 및 그 동작방법 | |
JP7216247B1 (ja) | バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法 | |
US20080007569A1 (en) | Control protocol and signaling in a new memory architecture | |
US7328311B2 (en) | Memory controller controlling cashed DRAM | |
JP2004288225A (ja) | Dram及びアクセス方法 | |
US6829195B2 (en) | Semiconductor memory device and information processing system | |
EP1248267A2 (en) | Semiconductor memory device and information processing system | |
JP2016062505A (ja) | メモリ制御回路および半導体記憶装置 | |
TW202403750A (zh) | 儲存模組及其操作方法、以及記憶體系統 | |
US20240020234A1 (en) | Storage module supporting single serialized write interfacing scheme and operation method thereof | |
JPH08328949A (ja) | 記憶装置 | |
US6433786B1 (en) | Memory architecture for video graphics environment | |
US11887692B2 (en) | Electronic device, operation method of host, operation method of memory module, and operation method of memory device | |
EP4089678B1 (en) | Electronic device, operation method of host, operation method of memory module, and operation method of memory device | |
US11797450B2 (en) | Electronic device, system-on-chip, and operating method thereof | |
KR20040008709A (ko) | 고속 데이터 억세스를 위한 디램 | |
KR20240013495A (ko) | 메모리 장치 및 그 리프레시 방법 | |
JP4772975B2 (ja) | 半導体記憶装置 | |
KR20170093053A (ko) | 리프레시 정보 생성기를 포함하는 휘발성 메모리 장치 및 전자 장치, 그것의 정보 제공 방법, 그리고 그것의 리프레시 제어 방법 |