TWI840678B - 記憶體系統、資訊處理系統及主機裝置 - Google Patents

記憶體系統、資訊處理系統及主機裝置 Download PDF

Info

Publication number
TWI840678B
TWI840678B TW110123130A TW110123130A TWI840678B TW I840678 B TWI840678 B TW I840678B TW 110123130 A TW110123130 A TW 110123130A TW 110123130 A TW110123130 A TW 110123130A TW I840678 B TWI840678 B TW I840678B
Authority
TW
Taiwan
Prior art keywords
controller
memory
power consumption
memory system
host device
Prior art date
Application number
TW110123130A
Other languages
English (en)
Other versions
TW202238324A (zh
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
Priority claimed from JP2021047518A external-priority patent/JP2022146519A/ja
Application filed by 日商鎧俠股份有限公司 filed Critical 日商鎧俠股份有限公司
Publication of TW202238324A publication Critical patent/TW202238324A/zh
Application granted granted Critical
Publication of TWI840678B publication Critical patent/TWI840678B/zh

Links

Images

Abstract

若根據一實施形態,則提供一種主機裝置可控制耗費電力量的記憶體系統、資訊處理系統、及可控制記憶體系統的耗費電力量的主機裝置。
一實施形態的記憶體系統是可連接至主機裝置。記憶體系統是具備非揮發性記憶體、及控制非揮發性記憶體的控制器。控制器是按照來自主機裝置的第1指示,抑制記憶體系統的耗費電力量。

Description

記憶體系統、資訊處理系統及主機裝置
本實施形態是有關記憶體系統、資訊處理系統及主機裝置。
[關聯申請案]
本案享有以日本專利申請案2021-47518號(申請日:2021年3月22日)作為基礎申請案的優先權。本案是藉由參照此基礎申請案而包含基礎申請案的全部的內容。
SSD(Solid State Drive)等的記憶體系統是具備控制器及非揮發性記憶體。控制器是按照來自主機裝置的要求,控制將從非揮發性記憶體讀出的資料往主機裝置發送的處理,或將從主機裝置接收的資料往非揮發性記憶體寫入的處理等。進一步,控制器是實行在非揮發性記憶體內使資料移動的轉記(transcription)處理等。在記憶體系統中,不僅主機裝置與非揮發性記憶體之間的資料的收發,在轉記處理中也耗費電力。
若根據一實施形態,則以提供一種主機裝置可控制耗費電力量的記憶體系統、資訊處理系統、及可控制記憶體系統的耗費電力量的主機裝置為目的。
若根據一實施形態,則記憶體系統是可連接至主機裝置。記憶體系統是具備:非揮發性記憶體、及控制非揮發性記憶體的控制器。控制器是按照來自主機裝置的第1指示,抑制記憶體系統的耗費電力量。
1:記憶體系統
2:主機裝置
3:通訊介面
4:區分
5:電源裝置
6:電力供給線
10:資訊處理系統
100:控制器
101:處理器
102:主介面
103:RAM
104:緩衝記憶體
105:記憶體介面
106:內部匯流排
200:NAND記憶體
201:記憶體晶片
210:周邊電路
211:記憶格陣列
212:NAND串
300:記憶體匯流排
400:電源電路
401:測定電路
[圖1]是表示第1實施形態的資訊處理系統的構成之一例的模式性的圖。
[圖2]是表示第1實施形態的記憶體晶片的構成之一例的模式性的圖。
[圖3]是表示第1實施形態的區塊的電路構成的模式性的圖。
[圖4]是說明第1實施形態的各種的記憶模式的各區分的圖。
[圖5]是表示第1實施形態的區塊的狀態遷移之一例的圖。
[圖6]是用以說明在第1實施形態的主機裝置與記憶體系統之間被轉送的資訊之一例的圖。
[圖7]是用以說明第1實施形態的轉記處理之一例的垃圾回收的動作之一例的流程圖。
[圖8]是用以說明第1實施形態的轉記處理的別的一例 的驅逐的動作之一例的流程圖。
[圖9]是用以說明第1實施形態的動作模式的遷移的動作之一例的流程圖。
[圖10]是用以說明第2實施形態的垃圾回收之轉記源的區塊BLK的選擇方法之一例的圖。
[圖11]是用以說明第2實施形態的動作模式的遷移的動作之一例的流程圖。
[圖12]是表示第3實施形態的控制器所產生的耗費電力量計畫之一例的模式性的圖。
[圖13]是用以說明第3實施形態的動作模式的遷移的動作之一例的流程圖。
[圖14]是表示第3實施形態的記憶體系統的構成之一例的模式性的圖。
[圖15]是用以說明第3實施形態的記憶體系統接收關於耗費電力的資訊的方法之一例的圖。
[圖16(A)及16(B)]是用以說明第3實施形態的耗費電力量計畫的變更例的圖。
[圖17]是表示第4實施形態的控制器所產生的耗費電力量計畫之一例的模式性的圖。
[圖18]是用以說明第4實施形態的動作模式的遷移的動作之一例的流程圖。
[圖19]是用以說明第5實施形態的動作模式的遷移的動作之一例的流程圖。
[圖20]是表示在第6實施形態的記憶體系統的電力量 限制模式的動作之一例的流程圖。
[圖21]是表示在第7實施形態的記憶體系統的電力量限制模式的動作之一例的流程圖。
[圖22]是表示在第8實施形態的記憶體系統的電力量限制模式的動作之一例的流程圖。
[圖23]是用以說明第9實施形態的記憶體系統對於主機裝置發送動作狀態資訊的方法之一例的圖。
以下參照附圖,詳細說明實施形態的記憶體系統、資訊處理系統及主機裝置。另外,本發明並非是藉由該等的實施形態來限定者。
(第1實施形態)
圖1是表示第1實施形態的資訊處理系統10的構成之一例的模式性的圖。
資訊處理系統10是例如各種電腦或伺服器等。各種電腦之中可攜式的電腦是筆記(laptop)型的個人電腦、行動電話、智慧型手機、可攜式的音樂撥放器、攝像裝置、等。主機裝置2是例如在資訊處理系統10所具備的處理器。記憶體系統1是例如SSD。記憶體系統1是亦可被外部連接於各種電腦或伺服器等。
記憶體系統1是以通訊介面3來與主機裝置2連接。主機裝置2是可利用記憶體系統1作為資料的儲存器。通訊介 面3的規格是不被限定於特定的規格。例如,可採用SAS(Serial Attached SCSI)、SATA(Serial ATA)、PCI express(PCIe、註冊商標)、或NVM express(NVMe、註冊商標)等作為通訊介面3的規格。
記憶體系統1是從主機裝置2接受存取指令(例如寫入指令或讀取指令)。記憶體系統1是按照寫入指令,記憶被要求寫入的使用者資料。記憶體系統1是按照讀取指令,將被要求讀取的使用者資料發送至主機裝置2。
另外,存取指令是包含邏輯位址。記憶體系統1是對主機裝置2提供邏輯性的位址空間。邏輯位址是表示該位址空間的位置。主機裝置2是藉由使用邏輯位址,指定寫入使用者資料的位置或進行使用者資料的讀出的位置。亦即,邏輯位址是由主機裝置2指定的位置資訊。
記憶體系統1是具備控制器100及NAND記憶體200。控制器100是藉由記憶體匯流排300來連接至NAND記憶體200。NAND記憶體200是非揮發性記憶體之一例。
控制器100是實行NAND記憶體200的控制。
控制器100是由主機裝置2將被要求寫入的資料寫入至NAND記憶體200,或由主機裝置2將被要求讀取的資料從NAND記憶體200讀取而傳送至主機裝置2。亦即,控制器100是實行主機裝置2與NAND記憶體200之間的資料轉送。將主機裝置2與NAND記憶體200之間的資料轉送記載為主存取處理。
進一步,控制器100是在NAND記憶體200內實行轉記 資料的轉記處理。轉記處理是包含垃圾回收(garbage collection)或驅逐(eviction)等。有關轉記處理的詳細後述。
控制器100是具備處理器101、主介面(主I/F)102、RAM(Random Access Memory)103、緩衝記憶體104、記憶體介面(記憶體I/F)105及內部匯流排106。處理器101、主I/F102、RAM103、緩衝記憶體104及記憶體I/F105是被電性連接至內部匯流排106。
另外,控制器100是可構成為SoC(System-on-a-Chip)。或,控制器100是可藉由複數的晶片來構成。RAM103或緩衝記憶體104是亦可被配置於控制器100的外部。
主I/F102是將從主機裝置2接受的存取指令及使用者資料等輸出至內部匯流排106。使用者資料是經由內部匯流排106來發送至緩衝記憶體104。
又,主I/F102是將從NAND記憶體200讀出的使用者資料及來自處理器101的應答等發送至主機裝置2。
緩衝記憶體104是作為在主機裝置2與NAND記憶體200之間的資料轉送用的緩衝機能的記憶體。緩衝記憶體104是例如藉由SRAM(Static Random Access Memory)或SDRAM(Synchronous Dynamic Random Access Memory)等的揮發性記憶體所構成。另外,構成緩衝記憶體104的記憶體的種類是不被限定於該等。緩衝記憶體104是亦可藉由任意的種類的非揮發性記憶體來構成。
記憶體I/F105是根據來自處理器101的指示,控制將 使用者資料等寫入至NAND記憶體200的處理及從NAND記憶體200讀取的處理。
處理器101是可實行電腦程式的電路。處理器101是例如CPU(Central Processing Unit)。處理器101是根據預先被儲存於預定位置(例如NAND記憶體200)的韌體程式,統括性地控制控制器100的各構成要素,藉此實現包含主存取處理及轉記處理的各種的處理。
另外,處理器101所實行的處理的一部分或全部是亦可藉由硬體電路來實行。處理器101所實行的處理的一部分或全部是亦可藉由FPGA(Field-Programmable Gate Array)或ASIC(Application Specific Integrated Circuit)來實行。
RAM103是對處理器101提供緩衝、快取或作為工作記憶體的機能。RAM103是藉由DRAM(Dynamic Random Access Memory)、SRAM或該等的組合所構成。另外,構成RAM103的記憶體的種類是不限定於該等。
另外,控制器100是可替代該等的構成要素,或該等的構成要素之外,再加上任意的構成要素。例如,控制器100是亦可具備對於使用者資料進行預定的處理(例如編碼或解碼)的電路。
NAND記憶體200是可非揮發性記憶使用者資料等。NAND記憶體200是藉由1個以上的記憶體晶片201來構成。在此,NAND記憶體200是藉由4個的記憶體晶片201-0,201-1,201-2,201-3來構成,作為一例。記憶體晶片201是NAND型快閃記憶體的記憶體晶片。
圖2是表示第1實施形態的記憶體晶片201的構成之一例的模式性的圖。記憶體晶片201是具備周邊電路210及記憶格陣列211。
記憶格陣列211是分別具備複數的非揮發性記憶格電晶體的集合的複數的區塊BLK(BLK0、BLK1、BLK2、...)。各區塊BLK是分別具備與字元線及位元線建立關聯的記憶格電晶體的集合的複數的串單元SU(SU0、SU1、SU2、...)。串單元SU的各者是具備串聯複數的記憶格電晶體的複數的NAND串212。另外,串單元SU內的NAND串212的數量為任意。
周邊電路210是例如包含行解碼器、列解碼器、感測放大器、閂鎖電路及電壓產生電路。周邊電路210是按照來自控制器100的指示,對於記憶格陣列211實行對應於該指示的動作。來自控制器100的指示是包含寫入、讀取及抹除。
圖3是表示第1實施形態的區塊BLK的電路構成的模式性的圖。另外,各區塊BLK是具有同一的構成。區塊BLK是具有例如4個的串單元SU0~SU3。各串單元SU是包含複數的NAND串212。
NAND串212的各者是包含例如64個的記憶格電晶體MT(MT0~MT63)及選擇電晶體ST1、ST2。記憶格電晶體MT是具備控制閘極及電荷蓄積層,非揮發地保持資料。而且,64個的記憶格電晶體MT(MT0~MT63)是被串聯於選擇電晶體ST1的源極與選擇電晶體ST2的汲極之間。另 外,記憶格電晶體MT是亦可為在電荷蓄積層使用絕緣膜的MONOS型,或亦可為在電荷蓄積層使用導電膜的FG型。又,NAND串212內的記憶格電晶體MT的個數是不被限定於64個。
串單元SU0~SU3各個的選擇電晶體ST1的閘極是被連接至各個的選擇閘極線SGD0~SGD3。相對於此,串單元SU0~SU3各個的選擇電晶體ST2的閘極是被共通連接至例如選擇閘極線SGS。串單元SU0~SU3各個的選擇電晶體ST2的閘極是亦可被連接至每串單元SU不同的選擇閘極線SGS0~SGS3(未圖示)。位於相同的區塊BLK內的各記憶格電晶體MT0~MT63的控制閘極是被共通連接至各個的字元線WL0~WL63。
位於串單元SU內的各NAND串212的選擇電晶體ST1的汲極是被連接至各個不同的位元線BL(BL0~BL(L-1),L是2以上的自然數)。又,位元線BL是在複數的區塊BLK間共通連接位於各串單元SU內的1個NAND串212。又,各選擇電晶體ST2的源極是被共通連接至源極線SL。
亦即串單元SU是分別被連接至不同的位元線BL,且被連接至相同的選擇閘極線SGD之複數的NAND串212的集合。又,區塊BLK是將字元線WL設為共通之複數的串單元SU的集合。而且,記憶格陣列211是將至少1條位元線BL設為共通之複數的區塊BLK的集合。
利用周邊電路210的寫入及讀取是可對於被連接至1個串單元SU的1條字元線WL的記憶格電晶體MT一併實行。 將在寫入及讀取時,一併被選擇的記憶格電晶體MT的群記載為記憶格群組MCG。而且,將被寫入至1個記憶格群組MCG或被讀取的1位元的資料的集合的單位記載為頁。
利用周邊電路210的抹除是以區塊BLK單位實行。亦即,被儲存於1個區塊BLK的全部的資料是被匯集抹除。
另外,記憶格陣列211的構成是不被限定於圖2及圖3所示的構成。例如,記憶格陣列211是亦可具有二維或三維地配列NAND串212的構成。
在對記憶格陣列211的寫入中,周邊電路210是在構成寫入去處的頁之各記憶格電晶體MT的電荷蓄積層中注入對應於資料的量的電荷。然後,在來自記憶格陣列211的讀取中,周邊電路210是從構成讀取對方的頁之各記憶格電晶體MT讀出對應於在電荷蓄積層所蓄積的電荷量之資料。
各記憶格電晶體MT是可保持n(n≧1)位元的值。n為1的模式是被稱為SLC(Single Level Cell)。當n位元的值被保持於各記憶格電晶體MT時,每記憶格群組MCG的記憶容量是等於n頁分的大小。n為2的模式是被稱為MLC。n為3的模式是被稱為TLC。n為4的模式是被稱為QLC(Quad Level Cell)。將在1記憶格保持n位元的值之該等的模式記載為記憶模式。
各記憶格電晶體MT的臨界值電壓是藉由周邊電路210被控制在一定的範圍內。臨界值電壓的可控制的範圍是被分割成2的n乘方的數的區分,在各區分分配各個不同的n 位元的值。
圖4是說明第1實施形態的各種的記憶模式的各區分的圖。如圖4所示般,臨界值電壓的範圍(可控制的範圍)是被分割成複數的區分4。例如,SLC的情況,臨界值電壓的範圍是被分割成2個的區分4。MLC的情況,臨界值電壓的範圍是被分割成4個的區分4。TLC的情況,臨界值電壓的範圍是被分割成8個的區分4。QLC的情況,臨界值電壓的範圍是被分割成16個的區分4。被保持於1記憶格的值的位元數越多,各區分4的範圍越窄。在各區分4分配值。SLC的情況,在低電壓側的區分4分配值“1”,在高電壓側的區分4分配值“0”。MLC的情況,在最低電壓側的區分4分配值“11”,在其他的3個區分4,依電壓的順序,分別分配“01”、“00”、“10”。另外,往各區分4的值的分配方法是不被限定於上述的例子。另外,之後,有將n亦即被保持於1個記憶格電晶體MT的值的位元數記載為位準數的情形。
在對於記憶格陣列211的寫入中,周邊電路210是在構成寫入去處的頁之各記憶格電晶體MT的電荷蓄積層中注入對應於分配寫入對象的資料的區分4之量的電荷。在來自記憶格陣列211的讀取中,周邊電路210是判定構成讀取對方的頁之各記憶格電晶體MT的臨界值電壓所屬的區分4,以被分配於藉由判定而取得的區分4之資料作為讀取資料輸出。
在對於記憶格陣列211的抹除中,周邊電路210是在記憶格陣列211的基板側施加抹除電壓。而且,周邊電路210 是使抹除對象的區塊BLK的全部的字元線WL導通成接地電位。於是,在被選擇的區塊BLK內的各記憶格電晶體MT中,被積蓄於電荷蓄積層的電荷會被放電。其結果,被選擇的區塊BLK內的各記憶格電晶體MT的狀態是遷移至視為資料被抹除的狀態(亦即最低電壓側的區分4)。
記憶體系統1是可被構成為只可在單一的記憶模式讀取及寫入。或,記憶體系統1是可被構成為在動作中切換記憶模式。當記憶模式的切換為可能時,切換的單位的記憶區域的範圍是任意。例如,記憶體系統1是亦可為能以區塊BLK單位切換記憶模式。
當記憶體系統1被構成為可切換動作中的記憶模式時,記憶體系統1所具備的記憶區域之中的一部分(例如一部分的區塊BLK)的記憶模式被固定於第1記憶模式,其他的一部分(例如其他的一部分的區塊BLK)的記憶模式被固定於與第1記憶模式不同的第2記憶模式,記憶體系統1是亦可按照所欲使用的記憶模式來選擇寫入去處的區塊BLK。或,記憶體系統1是亦可被構成為在動作中,在複數的記憶模式之間變更記憶區域(例如各區塊BLK)的記憶模式。
在之後的說明中,記憶體系統1是被構成為可在SLC與TLC之間切換記憶模式,作為一例。
接著,說明有關區塊BLK的狀態遷移。圖5是表示第1實施形態的區塊BLK的狀態遷移之一例的圖。剖面線的箭號是表示區塊BLK的狀態遷移,實線的箭號是表示資料的 移動。
作為區塊BLK的狀態,至少有開放區塊、主動區塊及自由區塊。1個以上的主動區塊是構成主動區塊池(pool),1個以上的自由區塊是構成自由區塊池。
所謂開放區塊是資料的寫入途中的區塊。亦即,開放區塊是處於留下可寫入資料的區域的狀態的區塊。
主動區塊是資料的寫入結束的區塊之中的無法再利用的區塊。資料的寫入結束的區塊之中的儲存有效的使用者資料的區塊是作為主動區塊管理。所謂再利用是意指使遷移至開放區塊。
自由區塊是未儲存有效的使用者資料的區塊。自由區塊是可再利用的區塊。
例如,在開放區塊寫入1區塊BLK份的資料之後,該開放區塊是遷移至主動區塊。被儲存於主動區塊的資料是有效的狀態及無效的狀態的其中的任一個。
在主動區塊儲存某資料(記載為第1資料)的狀態下,與從主機裝置2送來第1資料時被指定的邏輯位址值相同的邏輯位址值被指定而第2資料送來時,控制器100是在開放區塊的空的頁寫入第2資料,以被儲存於主動區塊的第1資料作為無效的資料管理。因此,可在被儲存於主動區塊的資料中混在有效的使用者資料及無效的使用者資料。
另外,將主機裝置2指定與傳送舊的資料至記憶體系統1時指定的邏輯位址值相同的邏輯位址值而傳送新的資料的情形記載為重寫(rewrite)。
主動區塊是藉由垃圾回收來遷移至自由區塊。垃圾回收是意指將被儲存於主動區塊即區塊BLK之有效的資料轉記(transcribe)至開放區塊即區塊BLK,使被儲存於轉記源的區塊BLK之全部的資料無效化的處理。藉此,轉記源的區塊BLK是從主動區塊遷移至自由區塊。另外,轉記可換說是轉送或移動。
自由區塊是被儲存的資料被抹除之後,遷移至開放區塊。
另外,所謂資料有效是意指儲存該資料的位置與那個的邏輯位址值建立對應。所謂資料無效是意指儲存該資料的位置與那個的邏輯位址值皆未建立對應。又,所謂「空的」狀態,在此是意指無效的資料及有效的資料的哪個皆未被記憶的狀態。亦即,空的頁是資料的寫入可能的空區域。另外,區塊BLK內的位置與邏輯位址值的對應關係是控制器100所維持及更新。
為了主存取處理及轉記處理的各者,亦可個別準備開放區塊。亦可準備主存取處理用的開放區塊及轉記處理用的開放區塊。當記憶模式的切換可為區塊BLK單位時,開放區塊是亦可按每個記憶模式準備。
轉記處理是除了垃圾回收以外,還包含驅逐。驅逐是在記憶體系統1被構成為可使用2個以上的不同的記憶模式時被實行。
例如思考有關被構成為可在第1記憶模式與位準數比第1記憶模式更小的第2記憶模式之間切換寫入時的記憶模 式之記憶體系統。在如此的記憶體系統中,在第2記憶模式的寫入的情況,相較於在第1記憶模式的寫入的情況,需要較多的容量的記憶區域。因此,若進行在第2記憶模式的寫入,則相較於進行在第1記憶模式的寫入的情況,自由區塊的耗費量會變多,且可寫入至記憶體系統的合計的資料量會變少。於是,控制器是若在第2記憶模式的資料的寫入完了,則之後實行讀出該資料,將讀出後的該資料以第1記憶模式寫回之處理。藉此,自由區塊的數量會恢復,且可寫入至記憶體系統的合計的資料量會恢復。驅逐是在第2記憶模式的資料的寫入完了之後,讀出該資料,將讀出後的該資料以第1記憶模式寫回之處理。
在驅逐中,例如,選擇以第2記憶模式寫入資料的主動區塊作為轉記源,從被選擇的轉記源讀出有效資料。然後,被讀出的有效資料是以第1記憶模式寫入至其他的區塊BLK(開放區塊)。若轉記源的區塊BLK內的全部的有效的資料的移動完了,則轉記源的區塊BLK是從主動區塊遷移至自由區塊。因此,藉由驅逐,也會產生自由區塊。
主機裝置2是有所欲控制記憶體系統1的耗費電力量的情況。例如當資訊處理系統10為具備電池的可攜式的電腦時,可思考藉由資訊處理系統10是否被連接至電源等,控制記憶體系統1的耗費電力量。當資訊處理系統10被連接至電源時,資訊處理系統10是可使用來自電源的豐富的電力,因此可將記憶體系統1所必要的電力量充分地供給至記憶體系統1。當資訊處理系統10未被連接至電源,藉由 被儲存於電池的能量來動作時,資訊處理系統10是相較於資訊處理系統10被連接至電源的情況,減少供給至記憶體系統1的電力量。
在實施形態中,記憶體系統1是被構成可從主機裝置2接受關聯於電力量的資訊。在第1實施形態中,記憶體系統1是接受電力量限制指示,作為關聯於電力量的資訊之一例。記憶體系統1的動作模式是若接受電力量限制指示,則遷移至耗費電力量會被抑制的動作模式。另外,將未抑制耗費電力量的動作模式記載為通常模式。將抑制耗費電力量的動作模式記載為電力量限制模式。
控制器100是在電力量限制模式中,相較於通常模式的情況,減少轉記處理的處理量。減少轉記處理的處理量的方法是不被限定於特定的方法。
就一例而言,控制器100是使轉記處理的實行頻率在通常模式及電力量限制模式不同。亦即,控制器100是將電力量限制模式的轉記處理的實行頻率設為比通常模式的轉記處理的實行頻率更低。在電力量限制模式中,相較於通常模式的情況,轉記處理的實行頻率減低的部分,減少了轉記處理的處理量。在電力量限制模式中,相較於通常模式的情況,轉記處理的處理量減少的部分,抑制記憶體系統1的耗費電力量。
就別的例子而言,控制器100是使轉記處理的開始條件在通常模式及電力量限制模式不同。例如,當自由區塊的數量低於判定臨界值為垃圾回收(或驅逐)的開始條件 時,使用在通常模式及電力量限制模式不同的值作為判定臨界值。具體而言,控制器100是在通常模式中,使用第1設定值作為判定臨界值,在電力量限制模式中,使用比第1設定值更小的第2設定值作為判定臨界值。藉此,在電力量限制模式中,相較於通常模式的情況,垃圾回收(或驅逐)會難被實行,垃圾回收(或驅逐)的處理量減少。在電力量限制模式中,相較於通常模式的情況,垃圾回收(或驅逐)的處理量減少的部分,抑制記憶體系統1的耗費電力量。
在電力量限制模式中成為處理量被減少的對象的處理是亦可為全部的轉記處理,或亦可為僅一部分的轉記處理。例如,亦可僅垃圾回收為對象,或亦可僅驅逐為對象,或亦可雙方為對象。
如此,控制器100是實行對應於動作模式的動作。亦即,記憶體系統1的動作模式是可思考成控制器100的動作模式。以後,控制器100的動作模式是意思記憶體系統1的動作模式。
接著,說明第1實施形態的資訊處理系統10的動作。
圖6是用以說明在第1實施形態的主機裝置2與記憶體系統1之間轉送的資訊之一例的圖。另外,在圖6的說明中,在初期狀態中,記憶體系統1的動作模式是通常模式。
主機裝置2是可對於處於通常模式的記憶體系統1實行資料的讀取或資料的寫入(S101)。主機裝置2是所欲使記 憶體系統1的動作模式遷移至電力量限制模式時,對記憶體系統1發送電力量限制指示(S102)。
例如就NVMe(註冊商標)等而言,不是對於全部的指令值定義實際的動作。廠商(vendor)可將動作未定義的指令值分配給任意的動作。如此的廠商可分配給任意的動作之指令值是被稱為廠商指定參數(vendor specific)。廠商是可將依據通訊介面3的規格而準備的廠商指定參數的指令值分配給電力量限制指示。在後述的電力量限制解除指示也可分配廠商指定參數的別的指令值。
或,電力量限制指示(及電力量限制解除指示)是亦可被編入成通訊介面3的規格。
或,主機裝置2與記憶體系統1是以用以轉送電力量限制指示(及電力量限制解除指示)的專用的訊號線來連接,主機裝置2是亦可經由該專用的訊號線來將電力量限制指示(及電力量限制解除指示)發送至記憶體系統1。
記憶體系統1是若接受電力量限制指示,則從通常模式遷移至電力量限制模式。主機裝置2是可對於電力量限制模式的記憶體系統1實行資料的讀取或資料的寫入(S103)。
主機裝置2是所欲使記憶體系統1的動作模式從電力量限制模式回到通常模式時,對記憶體系統1發送電力量限制解除指示(S104)。記憶體系統1是若接受電力量限制解除指示,則從電力量限制模式遷移至通常模式。主機裝置2是可對於通常模式的記憶體系統1實行資料的讀取或資料 的寫入(S105)。
之後,主機裝置2及記憶體系統1是可重複與S101~S105同樣的動作。
圖7是用以說明第1實施形態的轉記處理之一例的垃圾回收的動作之一例的流程圖。
控制器100是判定是否實行垃圾回收(S201)。是否實行垃圾回收的判定的方法是不被限定於特定的方法。例如前述般,控制器100是可根據自由區塊的數量與判定臨界值的比較來判定是否實行垃圾回收。或,控制器100是可以垃圾回收的實行頻率成為預定的頻率之方式判定是否實行垃圾回收。
被判定成不實行垃圾回收時(S201:No),控制器100是再度實行S201的判定處理。
被判定成實行垃圾回收時(S201:Yes),控制器100是選擇1個主動區塊作為轉記源的區塊BLK(S202)。
然後,控制器100是將被儲存於轉記源的區塊BLK的全部的有效的資料轉記至轉記去處的區塊BLK(S203)。亦即,控制器100是將被儲存於轉記源的區塊BLK的全部的有效的資料拷貝至轉記去處的區塊BLK,使轉記源的儲存的全部的資料無效化。藉此,被儲存於轉記源的區塊BLK的有效的資料是被轉記至轉記去處的區塊BLK。另外,轉記去處的區塊BLK是作為開放區塊設定的區塊BLK。
然後,控制器100是將轉記源的區塊BLK設定於自由區塊(S204)。
然後,控制會轉移至S201。
圖8是用以說明第1實施形態的轉記處理的別的一例的驅逐的動作之一例的流程圖。
控制器100是判定是否實行驅逐(S301)。是否實行驅逐的判定的方法是不被限定於特定的方法。例如前述般,控制器100是可根據自由區塊的數量與判定臨界值的比較來判定是否實行驅逐。或,控制器100是可以驅逐的實行頻率成為預定的頻率之方式判定是否實行垃圾回收。
被判定成不實行驅逐時(S301:No),控制器100是再度實行S301的判定處理。
被判定成實行驅逐時(S301:Yes),控制器100是選擇以SLC模式寫入資料的1個主動區塊作為轉記源的區塊BLK(S302)。
然後,控制器100是以TLC模式來將被儲存於轉記源的區塊BLK的全部的有效的資料轉記至轉記去處的區塊BLK(S303)。亦即,控制器100是以TLC模式來將被儲存於轉記源的區塊BLK的全部的有效的資料寫入至轉記去處的區塊BLK,使轉記源的儲存的全部的資料無效化。藉此,被儲存於轉記源的區塊BLK的有效的資料是被轉記至轉記去處的區塊BLK。另外,轉記去處的區塊BLK是作為開放區塊設定的區塊BLK,且資料以TLC模式寫入的區塊BLK。
然後,控制器100是將轉記源的區塊BLK設定成自由區塊(S304)。
然後,控制會轉移至S301。
圖9是用以說明第1實施形態的動作模式的遷移的動作之一例的流程圖。另外,在圖9的說明中,在初期狀態的記憶體系統1的動作模式是設為通常模式。
控制器100是判定是否從主機裝置2接受了電力量限制指示(S401)。當被判定成未接受電力量限制指示時(S401:No),控制器100是再度實行S401的判定處理。
當被判定成接受了電力量限制指示時(S401:Yes),控制器100是從通常模式遷移至電力量限制模式(S402)。亦即,控制器100是減低轉記處理的處理量。
S402之後,控制器100是判定是否從主機裝置2接受了電力量限制解除指示(S403)。當被判定成未接受電力量限制解除指示時(S403:No),控制器100是再度實行S403的判定處理。
當被判定成接受了電力量限制解除指示時(S403:Yes),控制器100是從電力量限制模式遷移至通常模式(S404)。亦即,控制器100是解除轉記處理的處理量的減低。
然後,控制會轉移至S401。
另外,在以上的說明中,記憶體系統1是按照電力量限制解除指示來從電力量限制模式遷移至通常模式。用以從電力量限制模式遷移至通常模式的啟動(trigger)是不只被限定於電力量限制解除指示的接受。控制器100是亦可自律地使記憶體系統1的動作模式從電力量限制模式遷移至通常模式。例如,當記憶體系統1的動作模式遷移至電 力量限制模式之後的經過時間到達預定時間時,控制器100是亦可使記憶體系統1的動作模式從電力量限制模式遷移至通常模式。或,控制器100是在難以繼續轉記處理的處理量的減低時,亦可使記憶體系統1的動作模式從電力量限制模式遷移至通常模式。
如以上所述般,若根據第1實施形態,則控制器100是可實行在主機裝置2與NAND記憶體200之間轉送資料的資料轉送處理、及在NAND記憶體200內轉記資料的轉記處理。然後,控制器100是按照來自主機裝置2的電力量限制指示,減少轉記處理的處理量。
藉由記憶體系統1被構成如上述般,利用主機裝置2之記憶體系統1的耗費電力量的控制成為可能。
(第2實施形態)
在第2實施形態中,轉記處理之中的垃圾回收的動作會在通常模式與電力量限制模式不同。更具體而言,在垃圾回收中選擇轉記源的區塊BLK的方針(policy)會在通常模式與電力量限制模式不同。在第2實施形態中,針對與第1實施形態不同的點進行說明,有關與第1實施形態相同的點則是省略說明或簡略說明。另外,第2實施形態是可與第1實施形態併用。
圖10是用以說明第2實施形態的垃圾回收的轉記源的區塊BLK的選擇方法之一例的圖。
在圖10中描繪複數(在此是6個為例)的區塊BLK。該6 個的區塊BLK是主動區塊,記憶體系統1的主動區塊是設為該6個的區塊BLK全部。並且,在圖10中,6個的區塊BLK會依遷移至主動區塊的時刻(換言之,最後資料被寫入的時刻)的順序配列。將6個的區塊BLK記載為區塊BLKa~BLKf。在此,區塊BLKa為遷移至主動區塊的時刻最新,依區塊BLKa、區塊BLKb、區塊BLKc、區塊BLKd、區塊BLKe的順序,遷移至主動區塊的時刻新。在區塊BLKa~BLKf的各者中,斜線部的面積是對應於被儲存的有效的資料的量。
控制器100(例如處理器101)是記錄各區塊BLK成為主動區塊的時刻的順序及被儲存於各區塊BLK的有效的資料的量,隨時更新記錄的內容。
在電力量限制模式中,控制器100是選擇被儲存的有效的資料的量最少的區塊BLK作為垃圾回收的轉記源的區塊BLK。在圖10的例子中,控制器100是例如分別選擇主動區塊的6個的區塊BLKa~BLKf之中的區塊BLKc作為轉記源的區塊BLK。
在垃圾回收中,藉由有效的資料從轉記源的區塊BLK移動至轉記去處的區塊BLK,可將轉記源的區塊BLK設為自由區塊。由於被儲存於轉記源的區塊BLK的有效的資料的量越少,為了產生1個自由區塊而被移動的資料的量越少,因此為了產生1個自由區塊所必要的電力量少。在電力量限制模式中,藉由選擇被儲存的有效的資料的量最少的區塊BLK作為垃圾回收的轉記源的區塊BLK,垃圾回收 所要的電力量會被抑制。
另外,在電力量限制模式中,亦可有不一定選擇被儲存的有效的資料的量最少的區塊BLK作為轉記源的區塊BLK的情況。
例如,控制器100是亦可記錄被儲存於各區塊BLK的有效的資料的量作為非正確的粗的粒度的數值資訊。如此的情況,可找出被儲存的有效的資料的量少的區塊BLK。
就別的例子而言,亦可在藉由控制器100記錄的被儲存於各區塊BLK的有效的資料的量的更新的時機與被儲存於各區塊BLK的有效的資料的量的變動的時機之間有遲緩。在如此的情況中也可找出被儲存的有效的資料的量少的區塊BLK。
在該等的例子中,可優先選擇被儲存的有效的資料的量少的區塊BLK作為轉記源的區塊BLK。在電力量限制模式中,轉記源的區塊BLK的選擇方法是可各式各樣地變更,只要優先選擇被儲存的有效的資料的量少的區塊BLK作為轉記源的區塊BLK。
就優先選擇被儲存的有效的資料的量少的區塊BLK作為轉記源的區塊BLK的方法的別的例子而言,可思考控制器100先記憶對於1個區塊BLK的容量充分小的量作為臨界值,根據被儲存的有效的資料的量與該臨界值的比較來選擇垃圾回收的轉記源的區塊BLK的方法。控制器100是亦可尋找被儲存的有效的資料的量比該臨界值更少的區塊BLK,選擇最初找到的區塊BLK作為垃圾回收的轉記源的 區塊BLK。
在通常模式中,控制器100(例如處理器101)是選擇遷移至主動區塊的時刻最舊的區塊BLK,換言之最後寫入資料的時刻最舊的區塊BLK,作為垃圾回收的轉記源的區塊BLK。在圖10的例子中,控制器100是選擇區塊BLKf作為轉記源的區塊BLK。
資料以有效的狀態留在成為主動區塊的時刻舊的區塊BLK,是意思長期間,該資料的重寫不被實行。將如此有長期間被維持有效的狀態的傾向的資料的狀態記載為冷(cold)。相對於此,將有短期間進行重寫而形成無效的傾向的資料的狀態記載為熱(hot)。
對於冷的資料之重寫是今後也暫時不被實行的可能性高。因此,若選擇遷移至主動區塊的時刻最舊的區塊BLK作為垃圾回收的轉記源的區塊BLK,則可將冷的資料彙整於幾個的區塊BLK。若將冷的資料彙整於幾個的區塊BLK,則全區塊BLK的利用效率會提升,藉此將來可使垃圾回收的效率提升。
另外,在通常模式中,亦可不一定要選擇最後寫入資料的時刻最舊的區塊BLK作為垃圾回收的轉記源的區塊BLK。
例如,控制器100是在通常模式中,可選擇最後寫入資料的時刻舊的區塊BLK優先作為垃圾回收的轉記源的區塊BLK。
或,在通常模式中,控制器100是亦可根據在有關最 後寫入資料的時刻之條件追加任意的條件之複雜的判定來選擇垃圾回收的轉記源的區塊BLK。例如,控制器100是亦可選擇最後寫入資料的時刻舊的幾個的區塊BLK之中的被儲存的有效的資料的量盡可能少的區塊BLK,作為垃圾回收的轉記源的區塊BLK。
圖11是用以說明第2實施形態的動作模式的遷移的動作之一例的流程圖。
在圖11的說明中,控制器100是在電力量限制模式中,選擇被儲存的有效的資料的量最少的區塊BLK作為垃圾回收的轉記源的區塊BLK,作為一例。又,控制器100是在通常模式中,選擇最後寫入資料的時刻最舊的區塊BLK作為垃圾回收的轉記源的區塊BLK,作為一例。並且,在圖11的初期狀態中,記憶體系統1的動作模式是設為通常模式。
控制器100(例如處理器101)是判定記憶體系統1是否從主機裝置2接受了電力量限制指示(S501)。當被判定成記憶體系統1未接受電力量限制指示時(S501:No)、控制器100是再度實行S501的判定處理。
當被判定成記憶體系統1接受了電力量限制指示時(S501:Yes),控制器100是遷移至電力量限制模式(S502)。在電力量限制模式中,控制器100是使用選擇被儲存的有效的資料的量最少的區塊BLK作為垃圾回收的轉記源之方針。
S502之後,控制器100是判定是否從主機裝置2接受了 電力量限制解除指示(S503)。當被判定成未接受電力量限制解除指示時(S503:No),控制器100是再度實行S503的判定處理。
當被判定成接受了電力量限制解除指示時(S503:Yes),控制器100是遷移至通常模式(S504)。在通常模式中,控制器100是使用選擇最後寫入資料的時刻最舊的區塊BLK作為垃圾回收的轉記源之方針。
然後,控制會轉移至S501。
如此,在第2實施形態中,控制器100是在電力量限制模式中,按照只根據被儲存的有效的資料的量之方針來選擇垃圾回收的轉記源的區塊BLK。又,控制器100是在通常模式中,按照與電力量限制模式的方針不同的方針來選擇垃圾回收的轉記源的區塊BLK。
更具體而言,控制器100是在電力量限制模式中,越是被儲存的有效的資料的量少的區塊BLK,越是優先作為轉記源的區塊選擇。
因此,在電力量限制模式中,可減少為了產生1個自由區塊而被移動的資料的量,因可抑制垃圾回收所要的電力量。其結果,在電力量限制模式中,可抑制記憶體系統1的耗費電力量。
進一步,控制器100是在通常模式中,可根據最後被寫入的時刻來選擇垃圾回收的轉記源的區塊BLK。
如此的情況,由於可例如將冷的資料彙整於幾個的區塊BLK,因此垃圾回收的效率將來會提升。另外,如前述 般,在通常模式中選擇轉記源的區塊BLK的方針是不被限定於此例。
(第3實施形態)
在第3實施形態中,控制器100是根據來自主機裝置2的指示而產生有關耗費電力量的計畫(記載為耗費電力量計畫)。然後,控制器100是以耗費電力量的推移會符合耗費電力量計畫之方式,使記憶體系統1的動作模式實行電力量限制模式與通常模式之間的切換。
之後,說明有關第3實施形態。在第3實施形態中,說明有關與第1實施形態不同的點,有關與第1實施形態相同的點是省略說明或簡略說明。
控制器100是具體而言,從主機裝置2,除了電力限制指示以外,可接受預定耗費電力量及計畫期間。記憶體系統1從主機裝置2接受的預定耗費電力量是第1值之一例。記憶體系統1從主機裝置2接受的計畫期間是第2值之一例。
計畫期間是規定在電力量限制模式的動作可能的期間。例如,若計畫期間為「30分鐘」,則從計畫期間的開始時刻到經過30分鐘的期間,根據耗費電力量計畫,實行記憶體系統1的動作模式在電力量限制模式與通常模式之間的切換。
另外,從主機裝置2接受的計畫期間是亦可為直接表示計畫期間的長度的數值資訊。從主機裝置2接受的計畫期間是亦可為表示計畫期間的開始時刻的數值資訊及表示 結束時刻的數值資訊的一對。從主機裝置2接受的計畫期間是亦可為表示結束時刻的數值資訊。當從主機裝置2接受的計畫期間為表示結束時刻的數值資訊時,計畫期間的開始時刻的特定方法是任意。例如,控制器100是可被構成為以電力量限制指示作為計畫期間的開始的指示。
或,複數的數值資訊會預先被設定於控制器100,複數的數值資訊的各者是可作為計畫期間設定的數值資訊,亦可與識別符建立對應。而且,主機裝置2是亦可藉由發送識別符來從複數的數值資訊選擇作為計畫期間設定的數值資訊。
預定耗費電力量是規定在計畫期間內可耗費的電力量。
另外,從主機裝置2接受的預定耗費電力量是亦可為直接表示預定耗費電力量的數值資訊。
或,複數的數值資訊會預先被設定於控制器100,複數的數值資訊的各者是可作為預定耗費電力量設定的數值資訊,亦可與識別符建立對應。而且,主機裝置2是亦可藉由發送識別符來從複數的數值資訊選擇作為預定耗費電力量設定的數值資訊。
控制器100是根據預定耗費電力量及計畫期間,作成耗費電力量計畫。
圖12是表示第3實施形態的控制器100所產生的耗費電力量計畫之一例的模式性的圖。橫軸是表示計畫期間開始之後的經過時間。縱軸是表示計畫期間開始之後的耗費電 力量。在圖12的例子中,預定耗費電力量是1000mWh,計畫期間是設為30分鐘。
點線是表示耗費電力量計畫。就此例而言,是以耗費電力量會從0mWh到1000mWh對於時間線性地增加的方式產生耗費電力量計畫。而且,以在計畫期間的結束時,亦即計畫期間開始之後經過30分鐘的時機,計畫期間開始之後的耗費電力量會成為1000mWh的方式決定耗費電力量的梯度。
控制器100是按照電力量限制指示,開始根據耗費電力量計畫的電力量的控制。更具體而言,控制器100是因應所需使記憶體系統1的動作模式遷移至電力量限制模式,藉此控制記憶體系統1的耗費電力量,使實際的耗費電力量的推移盡可能不會超過耗費電力量計畫所示的推移。亦即,耗費電力量計畫是規定耗費電力量的上限值的推移。
控制器100是以耗費電力量的推移不會超過依據耗費電力量計畫而規定的上限值的推移之方式實行動作模式的切換,藉此可抑制記憶體系統1的耗費電力量,使在計畫期間不會超過預定耗費電力量。
在圖12中,顯示在記憶體系統1的實際的耗費電力量的推移之一例(參照實線)。可讀取藉由上述的控制,以實際的耗費電力量的推移不會超過依據耗費電力量計畫而規定的上限值的推移之方式控制的情形。
圖13是用以說明第3實施形態的動作模式的遷移的動 作之一例的流程圖。
控制器100是判定記憶體系統1是否從主機裝置2接受了預定耗費電力量、計畫期間及電力限制指示(S601)。
當記憶體系統1未從主機裝置2接受預定耗費電力量、計畫期間及電力限制指示時(S601:No),控制器100是再度實行S601的處理。
當記憶體系統1從主機裝置2接受預定耗費電力量、計畫期間及電力限制指示時(S601:Yes),控制器100是根據預定耗費電力量及計畫期間,產生耗費電力量計畫(S602)。
接著,控制器100是按照已經接受的電力限制指示,開始電力量的控制。亦即,控制器100是開始計畫期間(S603)。
在計畫期間,控制器100是根據計畫期間開始之後的耗費電力量與依據耗費電力量計畫而規定的上限值的比較來決定動作模式。
更具體而言,控制器100是計算計畫期間開始之後到現在的經過時間(記載為時間t)所經過的時間點之依據耗費電力量計畫而規定的耗費電力量的上限值E(t)(S604)。
E(t)是例如使用下列的式(1)來計算。另外,在此,耗費電力量計畫是以利用圖12說明的方法產生,作為一例。
E(t)=Ep*t/tp‧‧‧(1)
在此,Ep是預定耗費電力量,tp是計畫期間的長度。在式(1)中,t是取0以上且tp以下的值。
接著,控制器100是判定計畫期間開始之後的耗費電力量(記載為Ec)是否比E(t)更少(S605)。
當Ec比E(t)更少時(S605:Yes),控制器100是以通常模式動作(S606)。當Ec不比E(t)更少時(S605:No),控制器100是以電力量限制模式動作(S607)。
S606或S607之後,控制器100是判定計畫期間的結束時機是否到來(S608)。當計畫期間的結束時機未到來時(S608:No),控制器100是再度實行S604的處理。當計畫期間的結束時機到來時(S608:Yes),控制器100是結束計畫期間(S609)。亦即,當控制器100的動作模式為電力量限制模式時,控制器100是遷移至通常模式。當控制器100的動作模式為通常模式時,控制器100是繼續在通常模式的動作。藉由S609,一連串的動作結束。
另外,第3實施形態的控制器100的通常模式的動作是亦可與第1實施形態的控制器100的通常模式的動作或第2實施形態的控制器100的通常模式的動作相同。
第3實施形態的控制器100的電力量限制模式的動作是亦可與第1實施形態的控制器100的電力量限制模式的動作或第2實施形態的控制器100的電力量限制模式的動作相同。
S604~S608的迴路(loop)處理是對於計畫期間以充分短的時間間隔重複。因此,藉由重複該迴路處理,以耗費電力量的推移盡可能不會超過作為耗費電力量計畫設定的推移之方式實行動作模式的切換。其結果,耗費電力量會被 抑制,使計畫期間的耗費電力量不會超過預定耗費電力量。
另外,以上說明了,當Ec與E(t)相等時,控制器100是以電力量限制模式動作。Ec與E(t)相等時的處理是不被限定於此。Ec與E(t)相等時,控制器100是亦可以通常模式動作。
又,控制器100取得本身的耗費電力量的方法是不被限定於特定的方法。
就一例而言,可思考在記憶體系統1設置用以監視耗費電力的電路。圖14是表示第3實施形態的記憶體系統1的構成之一例的模式性的圖。另外,在圖14中,有關與含在第1實施形態的構成相同的構成是省略圖示。
如圖14所示般,資訊處理系統10是具備電源裝置5。記憶體系統1是除了控制器100與NAND記憶體200之外,還具備電源電路400。電源電路400是藉由電力供給線6來連接至電源裝置5。電源電路400是根據從電源裝置5經由電力供給線6供給的電力來產生用以使控制器100及NAND記憶體200動作的電力,將產生的電力供給至控制器100及NAND記憶體200。
而且,電源電路400是具備測定電路401。測定電路401是測定記憶體系統1的耗費電力。利用測定電路401的測定結果是被發送至控制器100。控制器100是根據取得的測定結果來計算耗費電力量。
測定電路401是亦可被設在記憶體系統1的基板(未圖 示)。如此的情況,測定電路401是例如測定流動於基板的電流量。利用測定電路401的測定結果是被發送至控制器100。控制器100是根據取得的測定結果及定格電壓來計算耗費電力量。
就別的例子而言,對NAND記憶體200的每1次的寫入所耗費的電力量、自NAND記憶體200的每1次的讀取所耗費的電力量、在通訊介面3中每單位大小的資料的轉送所耗費的電力量、各構成要素在穩定狀態中耗費的電力量等的參數會預先被儲存於預定的位置(例如NAND記憶體200)。然後,控制器100是根據該等的參數、各記憶體晶片201所實際實行的讀取的次數、各記憶體晶片201所實際實行的寫入的次數、及經由通訊介面3的資料的轉送量等,來計算在記憶體系統1的耗費電力量。
再就別的例子而言,記憶體系統1是亦可被構成為有關記憶體系統1的耗費電力的資訊會從主機裝置2輸入。
圖15是用以說明第3實施形態的記憶體系統1接收關於耗費電力的資訊的方法之一例的圖。
如圖15所示般,主機裝置2是首先發送預定耗費電力量、計畫期間及電力限制指示(S701)。於是,在記憶體系統1中,控制器100開始計畫期間(S702)。在計畫期間,是在主機裝置2與記憶體系統1之間實行資料的收發的空隙,主機裝置2將耗費電力資訊發送至記憶體系統1(S703)。
耗費電力資訊是亦可為發送耗費電力資訊的時機的記憶體系統1的耗費電力。耗費電力資訊是亦可為在預定的 時機之後在記憶體系統1被耗費的電力量。預定的時機是例如亦可為計畫期間的開始時機,或亦可為前次發送耗費電力資訊的時機,或亦可為該等以外的時機。耗費電力資訊是亦可為流動於記憶體系統1的電流量。亦即,耗費電力資訊是可供記憶體系統1計算耗費電力量之關於耗費電力的任意的物理量。
耗費電力資訊的發送是可藉由使用任意的指令來發送。例如,1個廠商指定參數的指令亦可作為耗費電力資訊的發送用的指令分配。耗費電力資訊的發送用的指令亦可被編入至通訊介面3的規格。主機裝置2與記憶體系統1是以為了轉送耗費電力資訊的專用的訊號線來連接,主機裝置2是亦可經由該專用的訊號線來將耗費電力資訊發送至記憶體系統1。
從主機裝置2往記憶體系統1的耗費電力資訊的發送是定期性地或在任意的時機實行1次以上。控制器100是可根據從主機裝置2接收的耗費電力資訊來計算耗費電力量。
若計畫期間結束(S704),則主機裝置2是可結束耗費電力資訊的發送。
另外,主機裝置2是亦可在計畫期間以外的期間也發送耗費電力資訊。又,亦可記憶體系統1將耗費電力資訊的要求發送至主機裝置2,主機裝置2按照該要求來進行耗費電力資訊的發送。用以主機裝置2將耗費電力資訊發送至記憶體系統1的方法是可各式各樣地變更。
另外,主機裝置2是亦可不一起發送預定耗費電力 量、計畫期間及電力量限制指示。記憶體系統1是亦可被構成為可在與電力量限制指示不同的時機接受預定耗費電力量、計畫期間或其雙方。
例如,記憶體系統1是從主機裝置2接受預定耗費電力量及計畫期間。然後,記憶體系統1是若接受電力量限制指示,則亦可按照該電力量限制指示來開始計畫期間。
以上是說明圖12的點線所示的耗費電力量計畫,作為耗費電力量計畫之一例。耗費電力量計畫是不被限定於圖12所舉的例子。進一步,記憶體系統1是亦可被構成為在計畫期間中可變更耗費電力量計畫。例如,控制器100是亦可在計畫期間中的任意的時機,重新產生從已經耗費的電力量到預定耗費電力量為止對於時間線性地增加耗費電力量的上限值之類的耗費電力量計畫,開始根據重新產生的耗費電力量計畫的動作。亦即,控制器100是在計畫期間中再產生耗費電力量計畫。控制器100是亦可在計畫期間中的各個不同的複數的時機進行耗費電力量計畫的再產生。主機裝置2是亦可對記憶體系統1指示耗費電力量計畫的再產生的時機。
又,主機裝置2是亦可在計畫期間中適當指示耗費電力量計畫的變更。
又,當讀取或寫入集中於計畫期間的前半而估計電力耗費會在計畫期間的前半變大時,控制器100是亦可在計畫期間的前半使耗費電力量的上限值比較寬裕。
圖16是用以說明第3實施形態的耗費電力量計畫的變 更例的圖。例如,在計畫期間的前半,來自主機裝置2的存取量變多(heavy)等,因而有如圖16的(A)所示般,實際的耗費電力量的推移接近或超過依據當初產生的耗費電力量計畫所規定的上限值的推移的情況。如此的情況,由於依據耗費電力量計畫而規定的上限值成為瓶頸,因此主機裝置2與記憶體系統1之間的存取的性能會被抑制。
於是,控制器100是如圖16的(B)的點線所示般,將耗費電力量計畫變更成以耗費電力量的上限值的推移非零的正的值作為切片具有的1次函數。藉此,如圖16的(B)的實線所示般,藉由來自主機裝置2的存取量變多(heavy),即使在計畫期間的前半,電力耗費大,耗費電力量依上限值而被抑制的情形也會被防止。亦即,在計畫期間的前半,主機裝置2與記憶體系統1之間的存取的性能被抑制的情形會被防止。
耗費電力量計畫的變更的啟動(trigger)是任意。亦可主機裝置2發送使用使計畫期間的前半的耗費電力量的上限值比較寬裕的函數的指示,控制器100按照該指示來變更耗費電力計畫。或,控制器100是亦可當檢測出實際的耗費電力量的推移接近或超過依據當初產生的耗費電力量計畫所規定的上限值的推移時,自律地變更耗費電力計畫。
又,控制器100是亦可不在計畫期間的開始時產生圖16的(B)的點線所示般的耗費電力量計畫,進行耗費電力量計畫的變更。
又,圖16的(B)所示的耗費電力量計畫的函數是在計畫期間的前半使耗費電力量的上限值比較寬裕的函數之一例。亦可採用幕函數,作為在計畫期間的前半使耗費電力量的上限值比較寬裕的函數。
如此,若根據第3實施形態,則控制器100是從主機裝置2接受預定耗費電力量及計畫期間。而且,控制器100是按照電力量限制指示,以計畫期間的耗費電力量不會超過預定耗費電力量的方式控制記憶體系統1的耗費電力量。
因此,主機裝置2是可在被限定的期間以被限定的電力量來使記憶體系統1動作。
例如,有資訊處理系統10為具備記憶體系統1、揮發性記憶體及電池之可攜式的電腦的情況。主機裝置2是藉由被儲存於電池的電力來驅動,且當電池的剩餘的電力量貧乏時,使用該剩餘的電力量來將揮發性記憶體的內容保存於非揮發性記憶體,亦即此情況是記憶體系統1。此動作是被稱為PLP(Power Loss Protection)。就PLP而言,由於電池的剩餘的電力量貧乏,因此希望將記憶體系統1的耗費電力量抑制至對應於電池的剩餘的電力量的電力量。
第3實施形態的記憶體系統1是可動作為:在計畫期間,耗費電力量不會超過預定耗費電力量。因此,主機裝置2是只要根據電池的剩餘的電力量來決定預定耗費電力量及計畫期間,與電力量限制指示一起將預定耗費電力量及計畫期間發送至記憶體系統1,便可使用貧乏的電力量來實現PLP的動作。
又,若根據第3實施形態,則控制器100是根據預定耗費電力量及計畫期間來產生規定耗費電力量的上限值的推移之耗費電力量計畫,按照電力量限制指示,根據耗費電力量計畫來抑制記憶體系統1的耗費電力量。
因此,可以計畫期間的耗費電力量不會超過預定耗費電力量之方式控制記憶體系統1的耗費電力量。
又,若根據第3實施形態,則控制器100是可以通常模式及比通常模式更耗費電力量少的電力量限制模式來動作。而且,控制器100是根據耗費電力量計畫來實行通常模式與電力量限制模式之間的切換。
因此,可以計畫期間的耗費電力量不會超過預定耗費電力量之方式控制記憶體系統1的耗費電力量。
又,若根據第3實施形態,則控制器100是可被構成為可接受來自主機裝置2的耗費電力量資訊,根據該耗費電力量資訊來取得記憶體系統1的耗費電力量。
如此的情況,不需要將測定耗費電力量的物理量的電路設在記憶體系統1。
另外,結束計畫期間的條件是不只被限定於從主機裝置2作為第2值指定的長度經過。例如,控制器100是亦可在計畫期間中若接受電力量限制解除指示,則結束計畫期間。
(第4實施形態)
在第3實施形態的耗費電力量計畫中,規定耗費電力 量的上限值的推移作為時間的函數。在第4實施形態的耗費電力量計畫中,規定耗費電力量的上限值的推移作為從主機裝置2轉送至NAND記憶體200的資料的量的函數。將從主機裝置2轉送至NAND記憶體200的資料的量記載為主(host)寫入量。
之後,說明有關與第3實施形態不同的點。有關與第3實施形態相同的點是省略說明或簡略說明。
在第4實施形態中,記憶體系統1是可從主機裝置2接受預定耗費電力量及預定主寫入量。預定主寫入量是第2值的別的一例。控制器100是根據預定耗費電力量及預定主寫入量來產生耗費電力量計畫。
圖17是表示第4實施形態的控制器100所產生的耗費電力量計畫之一例的模式性的圖。在圖17中,橫軸是表示計畫期間開始之後的主寫入量。縱軸是表示計畫期間開始之後的耗費電力量。在圖17的例子中,預定耗費電力量是1000mWh,預定主寫入量是50GB。
點線是表示耗費電力量計畫。就此例而言,是以耗費電力量會從0mWh到1000mWh對於主寫入量線性地增加的方式產生耗費電力量計畫。而且,以在計畫期間的結束時,亦即計畫期間開始之後的主寫入量到達50GB的時機,計畫期間開始之後的耗費電力量會成為1000mWh的方式決定耗費電力量的梯度。
控制器100是按照電力量限制指示,開始根據耗費電力量計畫的電力量的控制。更具體而言,控制器100是因 應所需使記憶體系統1的動作模式遷移至電力量限制模式,藉此控制記憶體系統1的耗費電力量,使實際的耗費電力量的推移盡可能不會超過依據耗費電力量計畫而規定的上限值的推移。
在圖17中顯示在記憶體系統1的實際的耗費電力量的推移之一例(參照實線)。可讀取藉由上述的控制,實際的耗費電力量的推移被控制成不會超過依據耗費電力量計畫所規定的上限值的推移的情形。
圖18是用以說明第4實施形態的動作模式的遷移的動作之一例的流程圖。
控制器100是判定記憶體系統1是否從主機裝置2接受了預定耗費電力量、預定主寫入量及電力限制指示(S801)。
當記憶體系統1未從主機裝置2接受預定耗費電力、預定主寫入量及電力限制指示時(S801:No),控制器100是再度實行S801的處理。
當記憶體系統1從主機裝置2接受預定耗費電力、預定主寫入量及電力限制指示時(S801:Yes),控制器100是根據預定耗費電力量及預定主寫入量,產生耗費電力量計畫(S802)。
接著,控制器100是按照已經接受的電力限制指示,開始電力量的控制。亦即,開始計畫期間(S803)。
在計畫期間,控制器100是根據計畫期間開始之後的耗費電力量與耗費電力量計畫的比較來決定動作模式。
更具體而言,控制器100是首先計算依據耗費電力量計畫所規定的耗費電力量的上限值E(W)(S804)。
E(W)是例如使用下列的式(2)來計算。另外,在此,耗費電力量計畫是以利用圖17說明的方法產生,作為一例。
E(W)=Ep*W/Wp‧‧‧(2)
在此,W是計畫期間開始之後到現在的主寫入量。Ep是預定耗費電力量,Wp是預定主寫入量。在式(2)中,W是取0以上Wp以下的值。
接著,控制器100是判定計畫期間開始之後到現在的耗費電力量Ec是否比E(W)更小(S805)。Ec的取得方法是不被限定於特定的方法。Ec是以和第3實施形態同樣的方法取得。
當Ec比E(W)更小時(S805:Yes),控制器100是以通常模式動作(S806)。當Ec不比E(W)更小時(S805:No),控制器100是以電力量限制模式動作(S807)。
S806或S807之後,控制器100是判定W是否到達Wp(S808)。當W未到達Wp時(S808:No),控制器100是再度實行S804的處理。當W到達Wp時(S808:Yes),控制器100是結束計畫期間(S809)。亦即,當控制器100的動作模式為電力量限制模式時,控制器100是遷移至通常模式。當控制器100的動作模式為通常模式時,控制器100是繼續在通常模式的動作。藉由S809,一連串的動作結束。
另外,第4實施形態的控制器100的通常模式的動作是 亦可與第1實施形態的控制器100的通常模式的動作或第2實施形態的控制器100的通常模式的動作相同。
第4實施形態的控制器100的電力量限制模式的動作是亦可與第1實施形態的控制器100的電力量限制模式的動作或第2實施形態的控制器100的電力量限制模式的動作相同。
從S804到S808的迴路處理是例如以預定的時間間隔重複。預定的時間間隔是相相較於計畫期間的長度,充分地短。因此,藉由重複從S804到S808的迴路處理,實行動作模式的切換,使耗費電力量盡可能不超過作為耗費電力量計畫設定的上限值。其結果,可邊抑制耗費電力量使耗費電力量不超過預定耗費電力量,邊實行作為預定主寫入量設定的量的資料的寫入。
另外,以上說明了,當Ec與E(W)相等時,控制器100是以電力量限制模式動作。Ec與E(W)相等時的處理是不被限定於此。Ec與E(W)相等時,控制器100是亦可以通常模式動作。
又,耗費電力量計畫是不被限定於圖17所舉的例子。可採用任意的函數,作為表示耗費電力量計畫的函數。
進一步,記憶體系統1是亦可被構成為可在計畫期間中變更耗費電力量計畫。例如,控制器100是亦可以在計畫期間中從已耗費的電力量到預定耗費電力量為止,對於主寫入量,耗費電力量的上限值線性地增加的方式,再產生耗費電力量計畫。
又,主機裝置2是亦可在計畫期間中適當指示耗費電力量計畫的變更。
又,控制器100是若在計畫期間中接受電力量限制解除指示,則亦可按照電力量限制解除指示來結束計畫期間。
又,主機裝置2是亦可不一起發送預定耗費電力量、預定主寫入量及電力量限制指示。記憶體系統1是亦可被構成為可在與電力量限制指示不同的時機接受預定耗費電力量、預定主寫入量或其雙方。
如此,若根據第4實施形態,則控制器100是從主機裝置2接受預定耗費電力量及預定主寫入量。而且,控制器100是以耗費電力量不會超過預定耗費電力量的方式轉送作為預定主寫入量指定的量的資料。
因此,主機裝置2是可在被限制的期間轉送被限制的量的資料。
第4實施形態的技術是與第3實施形態同樣,可助於PLP。例如,主機裝置2是只要根據電池的剩餘的電力量來決定預定耗費電力量及預定主寫入量,與電力量限制指示一起將預定耗費電力量及預定主寫入量發送至記憶體系統1,便可使用貧乏的電力量來實現PLP的動作
另外,就以上所述的例子而言,記憶體系統1是被構成為可根據主寫入量來控制耗費電力量。記憶體系統1是亦可被構成為可根據從NAND記憶體200轉送至主機裝置2的資料的量(記載為主讀取量)來控制耗費電力量。
例如,記憶體系統1是可從主機裝置2接受預定耗費電力量及預定主讀取量。控制器100是亦可根據預定耗費電力量及預定主讀取量來產生以耗費電力量的上限值作為主讀取量的函數定義的耗費電力量計畫,根據主讀取量及耗費電力量計畫來控制耗費電力量。
或,記憶體系統1是亦可根據主寫入量及主讀取量的雙方來控制耗費電力量。控制器100是根據預定耗費電力量、預定主讀取量及預定主寫入量來產生以耗費電力量的上限值作為主讀取量及主寫入量的函數定義的耗費電力量計畫,根據主讀取量、主寫入量及耗費電力量計畫來控制耗費電力量。
之後,有將主寫入量、主讀取量或其雙方總稱為主存取量的情況。
(第5實施形態)
在第3及第4實施形態中,當耗費電力量比依據耗費電力量計畫而規定的上限值更小時,控制器100是將記憶體系統1的動作模式設為通常模式。在第5實施形態中,控制器100是當耗費電力量比上限值更顯著小時,將記憶體系統1的動作模式設為比通常模式更增加轉記處理的處理量的模式。亦即,控制器100是利用可豐富使用的電力量來使轉記處理的處理量增加。將比通常模式更增加轉記處理的處理量的模式記載為大電力模式(high power mode)。
轉記處理的處理量的增加方法是不被限定於特定的方 法。例如,控制器100是在大電力模式中,亦可將轉記處理的實行頻率設為比通常模式的轉記處理的實行頻率更高。
或,控制器100是使轉記處理的開始條件在大電力模式及通常模式不同。例如,當自由區塊的數量低於判定臨界值為垃圾回收(或驅逐)的開始條件時,使用在大電力模式及通常模式不同的值作為判定臨界值。具體而言,控制器100是在通常模式中,使用第1設定值作為判定臨界值,在大電力模式中,使用比第1設定值更大的第3設定值作為判定臨界值。藉此,在大電力模式中是垃圾回收(或驅逐)的處理量會增加。
之後,說明有關第5實施形態。在此例如,耗費電力量計畫是與第3實施形態同樣,以耗費電力量的上限值作為時間的函數定義。
圖19是用以說明第5實施形態的動作模式的遷移的動作之一例的流程圖。另外,第5實施形態的電力量的動作是在S605的處理之後追加S901及S902的點,與圖13所示的第3實施形態的電力量的動作不同。以下,針對與第3實施形態的電力量的動作不同的點進行說明。
在S605的判定處理中,當被判定成Ec比E(t)更小時(S605:Yes),控制器100是判定依據耗費電力量計畫而規定的耗費電力量的上限值E(t)與實際的耗費電力量Ec的差分,亦即(E(t)-Ec)是否比關於電力量的臨界值Eth更大(S901)。Eth是預先被設定的正的實數。
當(E(t)-Ec)比Eth更大時(S901:Yes),控制器100是以大電力模式動作(S902)。當(E(t)-Ec)不比Eth更大時(S901:No),控制器100是以通常模式動作(S606)。
S902、S606或S607之後,控制器100是實行S608的判定處理。
另外,以上說明,當(E(t)-Ec)與Eth相等時,控制器100是以通常模式動作。(E(t)-Ec)與Eth相等時的處理是不被限定於此。當(E(t)-Ec)與Eth相等時,控制器100是亦可以大電力模式動作。
並且,在第5實施形態中也是主機裝置2亦可不一起發送預定耗費電力量、計畫期間及電力量限制指示。記憶體系統1是亦可被構成為可在與電力量限制指示不同的時機接受預定耗費電力量、計畫期間或其雙方。
如此,若根據第5實施形態,則控制器100是被構成為可在通常模式、電力量限制模式、及轉記處理的處理量比通常模式更多的大電力模式之間進行動作模式的切換。控制器100是根據耗費電力量計畫來實行動作模式的切換。
可豐富地利用電力量時,藉由使轉記處理的處理量增加,可增加自由區塊的數量。若自由區塊的數量變多,則可持續拉長在電力量限制模式的動作。
另外,以上,耗費電力量計畫是以耗費電力量的上限值作為時間的函數定義。第5實施形態是耗費電力量計畫即使如第4實施形態般,以耗費電力量的上限值作為主存取量(主寫入量、主讀取量、或其雙方)的函數定義時也可 適用。
(第6實施形態)
一般,就被保持於1個記憶格電晶體MT的值的位元數(亦即前述的位準(level)數)小的記憶模式而言,相較於位準數大的記憶模式,可以更少的時間寫入及讀取,且寫入及讀取所耗費的耗費電力也更少。
然而,就位準數小的記憶模式而言,相較於位準數大的記憶模式,自由區塊的耗費量多。若因為在位準數小的記憶模式的寫入繼續而自由區塊枯竭,則需要實行驅逐。一旦驅逐被實行,則耗費電力會按照驅逐的處理量而增加。
於是,只要在自由區塊的數量充分時以位準數小的記憶模式來進行寫入,即使是抑制包含驅逐的轉記處理的處理量的狀態,雖一時但可進一步抑制耗費電力量。
若根據第6實施形態,則記憶體系統1是可由SLC模式及TLC模式之中來切換寫入時的記憶模式,作為一例。然後,控制器100是在電力量限制模式中,當自由區塊的數量充分時,以SLC模式來實行資料的寫入。在電力量限制模式中,當自由區塊的數量不充分時,控制器100是以TLC模式來實行資料的寫入。
另外,第6實施形態是與第3實施形態、第4實施形態、及第5實施形態的任一個也可併用。在此說明有關與第3實施形態併用的例子,作為一例。
圖20是表示在第6實施形態的記憶體系統1的電力量限制模式的動作之一例的流程圖。
在電力量限制模式中,控制器100是對於計畫期間的剩餘時間判定自由區塊的數量是否充分(S1001)。
S1001的判定的具體的方法是不被限定於特定的方法。就一例而言,當自由區塊的數量比按照計畫期間的剩餘時間而決定的臨界值更大時,控制器100是判定成對於計畫期間的剩餘時間,自由區塊的數量充分。當自由區塊的數量比按照計畫期間的剩餘時間而決定的臨界值更小時,控制器100是判定成對於計畫期間的剩餘時間,自由區塊的數量不充分。當自由區塊的數量與按照計畫期間的剩餘時間而決定的臨界值相等時,控制器100是亦可判定成對於計畫期間的剩餘時間,自由區塊的數量充分,或亦可判定成對於計畫期間的剩餘時間,自由區塊的數量不充分。
按照計畫期間的剩餘時間而決定的臨界值是例如與計畫期間的剩餘時間成比例的臨界值。按照計畫期間的剩餘時間而決定的臨界值的計算方法是不被限定於此。按照計畫期間的剩餘時間而決定的臨界值是第3值之一例。
對於計畫期間的剩餘時間,當自由區塊的數量充分時(S1001:Yes),控制器100是將記憶體系統1的動作模式設為第1電力量限制模式(S1002)。在第1電力量限制模式中,控制器100是除了在第1實施形態或第2實施形態所述的電力量限制模式的動作之外,對於NAND記憶體200寫入 資料時是以SLC模式來進行資料的寫入。
對於計畫期間的剩餘時間,當自由區塊的數量不充分時(S1001:No),控制器100是將記憶體系統1的動作模式設為第2電力量限制模式(S1003)。在第2電力量限制模式中,控制器100是除了在第1實施形態或第2實施形態所述的電力量限制模式的動作之外,加上對於NAND記憶體200寫入資料時是以TLC模式進行資料的寫入。
S1002或S1003之後,控制器100是判定是否結束在電力量限制模式的動作(S1004)。亦即,控制器100是判定是否使記憶體系統1的動作模式從電力量限制模式遷移至其他的模式(例如通常模式)。動作模式的遷移的條件是與在第3實施形態所述的條件相同,所以在此是省略說明。
不結束在電力量限制模式的動作時(S1004:No),控制器100是再度實行S1001的處理。結束在電力量限制模式的動作時(S1004:Yes),控制器100是結束在電力量限制模式的動作。
如此,在第6實施形態中,控制器100是按照耗費電力量計畫,形成電力量限制模式的期間,減少位準數,亦即減少被儲存於1個記憶格電晶體MT的資料的位元數,藉此可抑制記憶體系統1的耗費電力量。
因此,相較於不減少位準數的情況,可進一步抑制耗費電力量。
並且,在第6實施形態中,控制器100是當自由區塊的數量比第3值(上述的例子是對應於剩餘時間而決定的臨界 值)更小時,以每1個的記憶格電晶體寫入第1位元數的資料的模式(上述的例子是TLC模式)來寫入資料。控制器100是當自由區塊的數量比第3值(上述的例子是對應於剩餘時間而決定的臨界值)更大時,以每1個的記憶格電晶體寫入比第1位元數更少的第2位元數的資料的模式(上述的例子是SLC模式)來寫入資料。
因此,相較於不減少位準數時,可進一步抑制耗費電力量。
另外,如前述般,第6實施形態是取代第3實施形態而與第4實施形態也可併用。當第6實施形態與第4實施形態併用時,控制器100是在S1001中,對於剩餘的主寫入量,亦即從預定主存取量減算計畫期間開始之後的主存取量而取得的量,判定自由區塊的數量是否充分。另外,預定主存取量是從主機裝置2作為第2值接受的預定主寫入量、預定主讀取量、或該等雙方,在耗費電力量計畫的產生所使用的量。對於剩餘的主存取量,當自由區塊的數量充分時,控制器100是實行S1002的處理。對於剩餘的主存取量,當自由區塊的數量不充分時,控制器100是實行S1003的處理。
對於剩餘的主存取量,是否自由區塊的數量充分的判定方法是不被限定於特定的方法。例如,當自由區塊的數量比將剩餘的主存取量換算成區塊BLK的數量而取得的臨界值更少時,控制器100是判定成對於剩餘的主存取量,自由區塊的數量不充分。當自由區塊的數量比將剩餘的主 存取量換算成區塊BLK的數量而取得的臨界值更多時,控制器100是判定成對於剩餘的主存取量,自由區塊的數量充分。當自由區塊的數量與將剩餘的主存取量換算成區塊BLK的數量而取得的臨界值相等時,控制器100是亦可判定成對於剩餘的主存取量,自由區塊的數量充分,或亦可判定成對於剩餘的主存取量,自由區塊的數量不充分。
將剩餘的主存取量換算成區塊BLK的數量而取得的臨界值是第3值的別的一例。另外,第3值是不被限定於此。
另外,第6實施形態是與第5實施形態也可併用。亦即,控制器100是可按照耗費電力量計畫來以大電力模式動作。
在第6實施形態中,在通常模式(及大電力模式)中被使用於資料的寫入的記憶模式為任意。在通常模式(及大電力模式)中,由於可利用豐富的電力,因此控制器100是亦可以TLC模式來進行資料的寫入。
(第7實施形態)
主機裝置2是在對記憶體系統1要求使用者資料的寫入時,可發送寫入對象的使用者資料的屬性資訊。將此屬性資訊記載為資料顏色(data color)。在第7實施形態中,主機裝置2是可依據資料顏色來對記憶體系統1指示寫入對象的使用者資料為熱或冷。之後,將主機裝置2對於記憶體系統1發送的寫入對象的使用者資料記載為寫入資料。
當資料以SLC模式寫入時,需要之後對於該資料驅 逐。然而,以SLC模式寫入的資料在驅逐的實行前形成無效時,關於該資料的驅逐的實行變不需要,驅逐所要的電力量會被削減。
在第7實施形態中,控制器100是在電力量限制模式中,藉由SLC模式來將依據資料顏色而顯示熱的寫入資料寫入至記憶體晶片201。藉此,相較於藉由TLC模式來將該寫入資料寫入至記憶體晶片201時,可抑制寫入所要的電力量。然後,若以SLC模式寫入之依據資料顏色而顯示熱的寫入資料在驅逐被實行之前形成無效而該寫入資料的驅逐不需要的話,則驅逐所要的電力量會被削減,其結果,進一步的電力量的抑制成為可能。
另外,第7實施形態是與第3實施形態~第5實施形態的任一個也可併用。
圖21是表示在第7實施形態的記憶體系統1的電力量限制模式的動作之一例的流程圖。在第7實施形態的電力量限制模式中,控制器100是除了第3實施形態~第5實施形態的電力量限制模式的動作之外,還實行圖21說明的一連串的動作。
在電力量限制模式中,控制器100是判定記憶體系統1是否從主機裝置2接受了寫入指令(S1101)。當記憶體系統1未從主機裝置2接受寫入指令時(S1101:No),控制器100是再度實行S1101的處理。
當記憶體系統1從主機裝置2接受寫入指令時(S1101:Yes),控制器100是判定記憶體系統1是否與該寫入指令一 起從主機裝置2接受了資料顏色(S1102)。
當記憶體系統1從主機裝置2接受了資料顏色時(S1102:Yes),控制器100是判定該資料顏色是否顯示「熱」(S1103)。當該資料顏色為顯示「熱」時(S1103:Yes),控制器100是將依據接受的寫入指令而被要求寫入的資料以SLC模式來寫入至記憶體晶片201(S1104)。
當記憶體系統1未與寫入指令一起接受資料顏色時(S1102:No),或記憶體系統1與寫入指令一起接受未顯示「熱」的資料顏色時(S1103:No),控制器100是將依據接受的寫入指令而被要求寫入的資料以TLC模式來寫入至記憶體晶片201(S1105)。
S1104或S1105之後,控制器100是判定是否結束在電力量限制模式的動作(S1106)。亦即,控制器100是判定是否使記憶體系統1的動作模式從電力量限制模式遷移至其他的模式(例如通常模式)。動作模式的遷移的條件是如在其他的實施形態所述般,所以在此是省略說明。
當不結束在電力量限制模式的動作時(S1106:No),控制器100是再度實行S1101的處理。當結束在電力量限制模式的動作時(S1106:Yes),控制器100是結束在電力量限制模式的動作。
如此,若根據第7實施形態,則控制器100是在電力量限制模式中,以對應於由主機裝置2指示的資料顏色的記憶模式來將寫入資料寫入至NAND記憶體200。
因此,例如當主機裝置2將短時間有重寫的可能性的 資料發送至記憶體系統1時,只要對記憶體系統1通知該資料為熱,便在記憶體系統1中可減少驅逐的處理量的可能性會變高,可進一步抑制耗費電力量的可能性變高。
又,主機裝置2是在PLP中,從揮發性記憶體發送資料至記憶體系統1時,亦可通知該資料為熱。該情況,資料的寫入所要的時間會被縮短,且可減低資料的寫入所要的耗費電力量。
又,資訊處理系統10是有可實行休止狀態的情況。休止狀態是將揮發性記憶體的資料完整保存於非揮發性記憶體(在此是例如記憶體系統1)而成為電源OFF狀態,其次被起動時,將被保存的資料從非揮發性記憶體原封不動復原至揮發性記憶體的機能。藉由休止狀態,可迅速地恢復至成為電源OFF狀態之前的狀態。
在休止狀態中被保存於記憶體系統1的資料是其次被起動之後不要。因此,可思考在休止狀態中被保存於記憶體系統1的資料為熱。主機裝置2是在休止狀態中將資料發送至記憶體系統1時,亦可通知該資料為熱。該情況,資料的寫入所要的時間會被縮短,且可減低資料的寫入所要的耗費電力量。
(第8實施形態)
在第7實施形態中,控制器100是根據資料顏色來進行記憶模式的選擇。控制器100是不僅資料顏色,亦可根據自由區塊的數量來進行記憶模式的選擇。
第8實施形態是與第3實施形態~第5實施形態的任一個也可併用。在此說明有關第8實施形態與第3實施形態併用時的動作,作為一例。
圖22是表示在第8實施形態的記憶體系統1的電力量限制模式的動作之一例的流程圖。
在第8實施形態的記憶體系統1的電力量限制模式的動作是在S1103的判定處理之後追加S1201的判定處理的點,與圖21所示的第7實施形態的動作不同。以下,針對與第7實施形態不同的點進行說明。
在S1103的判定處理中被判定成Yes時,亦即與寫入指令一起接受的資料顏色顯示「熱」時,控制器100是對於計畫期間的剩餘時間,判定自由區塊的數量是否充分(S1201)。
S1201的處理是與例如在第6實施形態中利用圖20說明的S1001的處理相同。亦即,控制器100是根據自由區塊的數量與第3值的比較,對於計畫期間的剩餘時間,判定自由區塊的數量是否充分。當自由區塊的數量比第3值更少時,控制器100是對於計畫期間的剩餘時間,判定成自由區塊的數量不充分。當自由區塊的數量比第3值更多時,控制器100是對於計畫期間的剩餘時間,判定成自由區塊的數量充分。當自由區塊的數量與第3值相等時,控制器100是對於計畫期間的剩餘時間,亦可判定成自由區塊的數量充分,或對於計畫期間的剩餘時間,亦可判定成自由區塊的數量不充分。
對於計畫期間的剩餘時間,自由區塊的數量為充分時(S1201:Yes),控制器100是將依據接受的寫入指令而要求寫入的資料以SLC模式寫入至記憶體晶片201(S1104)。對於計畫期間的剩餘時間,自由區塊的數量不充分時(S1201:No),控制器100是將依據接受的寫入指令而要求寫入的資料以TLC模式寫入至記憶體晶片201(S1105)。
另外,如前述般,第8實施形態是取代第3實施形態而與第4實施形態也可併用。當第8實施形態與第4實施形態併用時,控制器100是在S1001中,例如對於剩餘的主寫入量,亦即從預定主存取量減算計畫期間開始之後的主存取量而取得的量,判定自由區塊的數量是否充分。
第8實施形態是與第5實施形態也可併用。亦即,控制器100是可按照耗費電力量計畫來以大電力模式動作。
如此,若根據第8實施形態,則在電力量限制模式中,控制器100是如其次般動作。亦即,當從主機裝置2通知的資料顏色為對應於TLC模式的資料顏色亦即冷時,控制器100是以TLC模式來將寫入資料寫入至NAND記憶體200。當從主機裝置2通知的資料顏色為對應於SLC模式的資料顏色亦即熱,且自由區塊的數量比第3值更少時,控制器100是以TLC模式來將寫入資料寫入至NAND記憶體200。從主機裝置2通知的資料顏色為對應於SLC模式的資料顏色亦即熱,且自由區塊的數量比第3值更多時,控制器100是以SLC模式來將寫入資料寫入至NAND記憶體200。
控制器100是即使從主機裝置2接受了寫入資料為熱的 意旨的通知時,當剩餘的自由區塊的數量沒有充裕時是以TLC模式來將寫入資料寫入至NAND記憶體200。藉此,可防止在計畫期間中自由區塊枯竭而驅逐的實行形成必要的情形。
(第9實施形態)
在幾個的實施形態中,就以電力量限制模式動作而言,控制器100是減低轉記處理的處理量,或在對NAND記憶體200寫入資料時使用位準數少的記憶模式。然而,若在電力量限制模式中減低轉記處理的處理量或使用位準數少的記憶模式,則相較於通常模式,自由區塊的數量的減少速度變快。若自由區塊枯竭,則控制器100是難以繼續在電力量限制模式的動作。
在第9實施形態中,記憶體系統1是可對於主機裝置2,發送關聯於耗費電力量的抑制的可否的狀態(status)資訊。將此狀態資訊記載為關聯資訊。
主機裝置2是可將關聯資訊利用於使記憶體系統1以電力量限制模式來動作的時機、使記憶體系統1以電力量限制模式來動作的期間、計畫期間的開始時機、或計畫期間等的決定。
關聯資訊是例如表示在電力量限制模式的動作可能的期間(或可作為計畫期間設定的期間)的最大值之數值資訊。控制器100是根據自由區塊的數量等,計算在電力量限制模式的動作可能的期間(或可作為計畫期間設定的期 間)的最大值,以該最大值作為關聯資訊發送至主機裝置2。
就別的例子而言,關聯資訊是自由區塊的數量。控制器100是以自由區塊的數量作為關聯資訊發送至主機裝置2。主機裝置2是根據作為關聯資訊接收的自由區塊的數量,計算在電力量限制模式的動作可能的期間(或可作為計畫期間設定的期間)的最大值。
進一步就別的例子而言,關聯資訊是亦可為表示在電力量限制模式的動作(或計畫期間的開始)的可否之二元(binary)資訊。或,關聯資訊是亦可為表示禁止在電力量限制模式的動作(或計畫期間的開始)的期間的長度的數值資訊。或,關聯資訊是亦可為可作為預定耗費電力量設定的最大值。
如此,關聯資訊的內容是可任意地構成。
圖23是用以說明第9實施形態的記憶體系統1對於主機裝置2發送關聯資訊的方法之一例的圖。在圖23的說明中,表示可作為計畫期間設定的期間的最大值之數值資訊,作為一例。
主機裝置2是對於記憶體系統1,首先,發送關聯資訊輸出指示(S1301)。
關聯資訊輸出指示是可藉由使用任意的指令來發送。例如,廠商指定參數的指令值亦可作為關聯資訊輸出指示的發送用的指令分配。關聯資訊輸出指示的發送用的指令亦可被編入至通訊介面3的規格。主機裝置2與記憶體系統 1是以為了轉送關聯資訊輸出指示的專用的訊號線來連接,主機裝置2是亦可經由該專用的訊號線來將關聯資訊輸出指示發送至記憶體系統1。
在記憶體系統1中,控制器100是按照關聯資訊輸出指示,計算關聯資訊(此例是可作為計畫期間設定的期間的最大值tmax)(S1302)。例如,控制器100是取得在現時間點的自由區塊的數量,根據取得的自由區塊的數量,計算可作為計畫期間設定的期間的最大值。
然後,控制器100是以藉由計算所取得的最大值作為關聯資訊發送至主機裝置2(S1303)。
主機裝置2是決定比tmax更短的期間作為計畫期間(S1304),將預定耗費電力量、決定的計畫期間、及電力量限制指示發送至記憶體系統1(S1305)。
另外,如前述般,控制器100是可發送在電力量限制模式的動作可能的期間的最大值、現在的自由區塊的數量、表示電力量限制模式的動作是否可能的二元資訊、表示計畫期間的設定是否可能的二元資訊、表示禁止在電力量限制模式的動作的期間的長度的數值資訊、表示禁止計畫期間的開始的期間的長度的數值資訊、可作為預定耗費電力量設定的最大值、或該等的全部或一部分的組合,作為關聯資訊。
另外,第9實施形態是可與第1~第8實施形態的任一個也可併用。關聯資訊的內容是可按照與第9實施形態併用的實施形態來各式各樣地變更。
如此,在第9實施形態中,控制器100是按照來自主機裝置2的關聯資訊輸出指示,將關聯耗費電力量的抑制的可否的資訊即關聯資訊發送至主機裝置2。
因此,主機裝置2是可判斷記憶體系統1可否遷移至電力量限制模式、記憶體系統1可以電力量限制模式動作的期間、可否在記憶體系統1使計畫期間開始、可作為計畫期間設定的期間等。
(變形例)
記憶體系統1的控制器100是亦可不將關聯資訊發送至主機裝置2。
例如,記憶體系統1的控制器100是亦可被構成為離接受電力量限制解除指示的時機預定的期間,即使接受電力量限制指示,也不實行對應於電力量限制指示的動作。或,記憶體系統1的控制器100是離接受電力量限制解除指示的時機預定的期間,即使接受電力量限制指示,也不開始對應於電力量限制指示的動作,取而代之,亦可將不實行對應於電力量限制指示的動作的意旨發送至主機裝置2。
或,記憶體系統1的控制器100是亦可被構成為離計畫期間的結束時機預定的期間,即使接受電力量限制指示,也不實行對應於電力量限制指示的動作。記憶體系統1的控制器100是離計畫期間的結束時機預定的期間,即使接受電力量限制指示,也不開始對應於電力量限制指示的動 作,取而代之,亦可將不實行對應於電力量限制指示的動作的意旨發送至主機裝置2。
(第10實施形態)
主機裝置2是可對於第1~第9實施形態的記憶體系統1,根據任意的判斷,發送各種指示(電力量限制指示、電力量限制解除指示、或關聯資訊輸出指示等)或各種資訊(預定耗費電力量、計畫期間或預定主存取量等)。
例如,當資訊處理系統10為可攜式的電腦時,主機裝置2是可根據資訊處理系統10是否從電源接受電力供給,來發送電力量限制指示。
或,主機裝置2是學習預定的期間(例如1日或1週等)的操作員的資訊處理系統10的用法。作為操作員的資訊處理系統10的用法而學習的資訊,具體而言,是工作負荷的變化、資訊處理系統10對電源的連接/切斷的時機、或電池的容量的時間變化的履歷等。主機裝置2是根據藉由學習而取得的資訊,預測有關資訊處理系統10的電力的今後的狀況。然後,主機裝置2是根據預測,將各種指示或各種資訊發送至記憶體系統1。
就一例而言,即使來自電源的電力供給中斷時,當工作負荷輕,且主機裝置2預測來自電源的電力供給立即重啟時,主機裝置2是不實行電力量限制指示的發送,使記憶體系統1的動作維持於通常模式。
就別的例子而言,即使資訊處理系統10從電源接受電 力供給時,當主機裝置預測來自電源的電力供給立即中斷時,主機裝置2是藉由將電力量限制指示發送至記憶體系統1,來抑制記憶體系統1的耗費電力量,將被抑制的部分的電力量用於對電池的充電。
如此,主機裝置2是可根據任意的判斷,實行記憶體系統1的耗費電力量的控制。
若根據第1~第10實施形態,則記憶體系統1是具備非揮發性記憶體的NAND記憶體200、及控制NAND記憶體200的控制器100。控制器100是按照來自主機裝置2的電力量限制指示,抑制記憶體系統1的耗費電力量。
因此,主機裝置2可控制耗費電力量。
說明了本發明的幾個的實施形態,但該等的實施形態是舉例提示者,未意圖限定發明的範圍。該等新穎的實施形態是可以其他各種的形態實施,可在不脫離發明的要旨的範圍進行各種的省略、置換、變更。該等實施形態或其變形是若含在發明的範圍或主旨中,則同樣含在申請專利範圍記載的發明及其均等的範圍中。

Claims (15)

  1. 一種記憶體系統,係可連接至主機裝置的記憶體系統,其特徵為具備:非揮發性記憶體;及控制前述非揮發性記憶體的控制器,前述控制器,係從前述主機裝置接收第1指示、第1值及第2值時,以對應於前述第2值的期間的前述記憶體系統的耗費電力量不會超過對應於前述第1值的量之方式控制前述耗費電力量。
  2. 一種記憶體系統,係可連接至主機裝置的記憶體系統,其特徵為具備:非揮發性記憶體;及控制前述非揮發性記憶體的控制器,前述控制器,係在前述主機裝置與前述非揮發性記憶體之間轉送資料,從前述主機裝置接收第1指示、第1值及關於前述主機裝置與前述非揮發性記憶體之間的資料轉送量的第2值時,以前述記憶體系統的耗費電力量不會超過對應於前述第1值的量之方式控制對應於前述主機裝置與前述非揮發性記憶體之間的前述第2值的量的資料轉送。
  3. 如請求項1或請求項2記載的記憶體系統,其中,前述控制器,係實行:在前述主機裝置與前述非揮發性記憶體之間轉送資料的第1處理;及 在前述非揮發性記憶體內轉記資料的第2處理,按照前述第1指示來減少前述第2處理的處理量。
  4. 如請求項1或請求項2記載的記憶體系統,其中,前述非揮發性記憶體,係具備複數的區塊,該複數的區塊係被儲存於各者的資料會一併被抹除,前述控制器,係實行垃圾回收,當接受了前述第1指示時,按照只根據被儲存的有效的資料的量之第1方針,從前述複數的區塊之中選擇前述垃圾回收的轉記源的區塊,當未接受前述第1指示時,按照與前述第1方針不同的第2方針,從前述複數的區塊之中選擇前述垃圾回收的轉記源的區塊。
  5. 如請求項4記載的記憶體系統,其中,前述第1方針,係越是前述複數的區塊之中的被儲存的有效的資料的量少的區塊,越是優先作為前述轉記源的區塊選擇之方針。
  6. 如請求項4記載的記憶體系統,其中,前述第2方針,係根據最後被寫入的時刻,從前述複數的區塊之中選擇前述垃圾回收的轉記源的區塊之方針。
  7. 如請求項1或請求項2記載的記憶體系統,其中,前述控制器,係根據前述第1值及前述第2值來產生規定前述耗費電力量的上限值的推移之電力量計畫,按照前述第1指示,根據前述電力量計畫來控制前述耗費電力量。
  8. 如請求項7記載的記憶體系統,其中,前述控制器,係可以包含第1動作模式及比前述第1動作模式更耗費電力量少的第2動作模式之複數的動作模式來動作,根據前述電力量計畫來實行前述複數的動作模式之間的切換。
  9. 如請求項8記載的記憶體系統,其中,前述控制器,係實行:在前述主機裝置與前述非揮發性記憶體之間轉送資料的第1處理;及在前述非揮發性記憶體內轉記資料的第2處理,前述複數的動作模式,係更包含:前述第2處理的處理量比前述第1動作模式更多的第3動作模式。
  10. 如請求項1或請求項2記載的記憶體系統,其中,前述控制器,係接收有關來自前述主機裝置的前述耗費電力量的第1資訊,根據前述第1資訊來取得前述耗費電力量。
  11. 如請求項1或請求項2記載的記憶體系統,其中,前述非揮發性記憶體,係分別具備複數的記憶格電晶體,前述複數的記憶格電晶體的各者,係被構成為被儲存的資料的位元數可變,前述控制器,係藉由減少寫入至寫入去處的記憶格電晶體的資料的位元數,抑制前述耗費電力量。
  12. 如請求項11記載的記憶體系統,其中,前述複數的記憶格電晶體,係被分割成複數的區塊,該複數的區塊係被儲存於各者的資料會一併被抹除,前述控制器,係當前述複數的區塊之中的自由區塊的數量比第3值更小時,在寫入去處的記憶格電晶體寫入第1位元數的資料,當前述複數的區塊之中的自由區塊的數量比前述第3值更多時,在寫入去處的記憶格電晶體寫入比前述第1位元數更少的第2位元數的資料。
  13. 如請求項8記載的記憶體系統,其中,前述非揮發性記憶體,係分別具備複數的記憶格電晶體,前述複數的記憶格電晶體的各者,係被構成為被儲存的資料的位元數可變,前述控制器,係在前述第2動作模式中,接受來自前述主機裝置的通知,將對應於前述通知的位元數的資料寫入至寫入去處的記憶格電晶體。
  14. 如請求項8記載的記憶體系統,其中,前述非揮發性記憶體,係分別具備複數的記憶格電晶體,前述複數的記憶格電晶體的各者,係被構成為被儲存的資料的位元數可變,前述複數的記憶格電晶體,係被分割成複數的區塊,該複數的區塊係被儲存於各者的資料會一併被抹除, 前述控制器,係在前述第2動作模式中,從前述主機裝置接受通知,當前述通知對應於第1位元數時,將前述第1位元數的資料寫入至寫入去處的記憶格電晶體,當前述通知對應於比前述第1位元數更小的第2位元數,且前述複數的區塊之中的自由區塊的數量比第3值更小時,將前述第1位元數的資料寫入至寫入去處的記憶格電晶體,當前述通知對應於前述第2位元數,且前述複數的區塊之中的自由區塊的數量比前述第3值更大時,將前述第2位元數的資料寫入至寫入去處的記憶格電晶體。
  15. 如請求項1或請求項2記載的記憶體系統,其中,前述控制器,係按照來自前述主機裝置的第2指示,將關聯於前述耗費電力量的抑制的可否之資訊發送至前述主機裝置。
TW110123130A 2021-03-22 2021-06-24 記憶體系統、資訊處理系統及主機裝置 TWI840678B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021047518A JP2022146519A (ja) 2021-03-22 2021-03-22 メモリシステム、情報処理システム、およびホスト装置
JP2021-047518 2021-03-22

Publications (2)

Publication Number Publication Date
TW202238324A TW202238324A (zh) 2022-10-01
TWI840678B true TWI840678B (zh) 2024-05-01

Family

ID=

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190179747A1 (en) 2017-12-11 2019-06-13 SK Hynix Inc. Apparatus and method for operating garbage collection using host idle

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190179747A1 (en) 2017-12-11 2019-06-13 SK Hynix Inc. Apparatus and method for operating garbage collection using host idle

Similar Documents

Publication Publication Date Title
US20240103769A1 (en) Data Writing Method and Storage Device
CN105808156B (zh) 将数据写入固态硬盘的方法及固态硬盘
JP7366795B2 (ja) メモリシステムおよび制御方法
KR102147359B1 (ko) 비휘발성 메모리 장치의 관리 방법 및 비휘발성 메모리 장치
KR101257691B1 (ko) 메모리 컨트롤러 및 이의 데이터 관리방법
US8463826B2 (en) Incremental garbage collection for non-volatile memories
US10229049B2 (en) Storage system that performs host-initiated garbage collection
KR102351660B1 (ko) 전력 관리 메커니즘을 갖는 솔리드 스테이트 메모리 시스템 및 그것의 동작 방법
US20150046636A1 (en) Storage device, computer system and methods of operating same
US10452280B2 (en) Hybrid storage system employing reconfigurable memory
KR20160027805A (ko) 비휘발성 메모리 장치를 위한 가비지 컬렉션 방법
JP2012069100A (ja) 不揮発性メモリを有するシステムの電力バジェットの動的な割り当て
US11132143B2 (en) Universal flash storage (UFS) device and computing device and computing device including storage UFS device for reporting buffer size based on reuse time after erase
JP2020035128A (ja) メモリシステム
CN112506438B (zh) 一种映射表管理方法及固态硬盘
CN108369818A (zh) 一种闪存设备的刷新方法和装置
JP2011145838A (ja) 記憶装置管理装置および記憶装置の管理方法
KR102635689B1 (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
CN115113806A (zh) 存储***、信息处理***以及主机装置
JP2011210247A (ja) 不揮発性記憶装置、アクセス装置及び不揮発性記憶システム
JP2019148913A (ja) メモリシステム
TWI840678B (zh) 記憶體系統、資訊處理系統及主機裝置
US10346040B2 (en) Data merging management method based on data type, memory storage device and memory control circuit unit
US20130073796A1 (en) Memory controller
KR20210012123A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법