TWI518698B - 記憶體系統之電源管理 - Google Patents

記憶體系統之電源管理 Download PDF

Info

Publication number
TWI518698B
TWI518698B TW099140091A TW99140091A TWI518698B TW I518698 B TWI518698 B TW I518698B TW 099140091 A TW099140091 A TW 099140091A TW 99140091 A TW99140091 A TW 99140091A TW I518698 B TWI518698 B TW I518698B
Authority
TW
Taiwan
Prior art keywords
memory
tokens
token bucket
additional
controller
Prior art date
Application number
TW099140091A
Other languages
English (en)
Other versions
TW201131575A (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 TW201131575A publication Critical patent/TW201131575A/zh
Application granted granted Critical
Publication of TWI518698B publication Critical patent/TWI518698B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Power Sources (AREA)

Description

記憶體系統之電源管理
本發明係關於記憶體系統且係關於用於此等記憶體系統內之電力管理之系統及方法。
非揮發性記憶體系統用於各種應用中。某些非揮發性記憶體系統係嵌入一較大系統(諸如,一個人電腦、蜂巢電話或音樂播放器)中。其他非揮發性記憶體系統係以可抽換方式連接至一主機系統且可在不同主機系統之間互換。此等可抽換記憶體系統之實例包含記憶體卡及USB快閃記憶體隨身碟。包含非揮發性記憶體卡之電子電路卡已根據若干個眾所習知的標準在商業上實施。記憶體卡可與個人電腦、蜂巢式電話、個人數位助理(PDA)、數位靜態相機、數位電影攝影機、可攜式音訊播放器及其他主機電子裝置一起使用供儲存大量資料。此等卡通常含有一可再程式化非揮發性半導體記憶體胞陣列連同一控制器,該控制器控制並支援該記憶體胞陣列之操作且與該卡連接至的一主機介接。數個相同類型之卡可在經設計以接納彼類型之卡之一主機卡插槽中互換。然而,諸多電子卡標準之開發已形成不同類型之卡,該等卡在各種程度上互不相容。根據一個標準所製造之一卡通常不可與經設計以與另一標準之一卡一起操作之一主機一起使用。記憶體卡標準包含PC卡、CompactFlashTM卡(CFTM卡)、SmartMediaTM卡、MultiMediaCard(MMCTM)、安全數位(SD)卡、一miniSDTM卡、用戶身份模組(SIM)、Memory StickTM、Memory Stick Duo卡及microSD/TransFlashTM記憶體模組標準。存在數種可以商標「Cruzer」自SanDisk公司購得之USB快閃記憶體隨身碟產品。USB快閃記憶體隨身碟通常比上文所闡述之記憶體卡大且呈不同於上文所闡述之記憶體卡之形狀。
一個別記憶體胞可以稱為一單位階胞(SLC)設計之方式保存一個資料位元。在某些實施例中,一記憶體胞可以稱為一多位階胞(MLC)設計之方式保存兩個或更多個資料位元。記憶體胞可以不同方式配置。一種常見配置係形成一NAND記憶體陣列之記憶體胞串。
根據一項實例管理一記憶體系統之一方法包含:在一記憶體控制器中維持一可變信用值,該可變信用值反映可用於該記憶體系統中之記憶體操作之一電力量,該可變信用值具有反映用於該記憶體系統之一最大電力限制之一上限;在執行一記憶體操作之前,檢查該可變信用值是否指示存在可用於執行該記憶體操作之足夠電力;及更新該可變信用值以反映在執行該記憶體操作時所使用之該電力。
一方法可進一步包含檢查該可變信用值是否指示存在可用於執行一額外記憶體操作之至少一部分之足夠電力,且若存在足夠電力來執行一額外記憶體操作之至少一部分,則判定在執行該記憶體操作及該額外記憶體操作時使用之一並行度。該記憶體操作可係程式化一第一記憶體晶粒中之一第一頁且該額外記憶體操作可係程式化一第二記憶體晶粒中之一第二頁。該第一晶粒可係位於一第一記憶體晶片上且該第二晶粒可係位於一第二記憶體晶片上。該第一頁可係一下部頁且該第二頁可係一上部頁。該可變信用值可維持為一符記桶中之符記之一數目,其中週期性地添加符記至該符記桶以將符記之數目最多增加至一最大數目。該等符記可以相依於一主機裝置之一電力模式之一速率添加。當該主機裝置正依靠電池電力進行操作時,可以一較低速率添加該等符記,且當該主機裝置正依靠外部電力進行操作時,可以一較高速率添加該等符記。可將該符記桶提供為一n-位元計數器。可由透過一介面可用於該記憶體系統之一最大電力來判定該最大數目。該可變信用值可維持為一符記桶中之符記之一數目,其中以叢發方式添加符記至該符記桶。
根據一實例管理一記憶體系統中之電力使用之一方法包含:在一初始時間將一符記桶起始為含有等於一初始值之數目個符記;隨後執行一記憶體寫入操作,該記憶體寫入操作與一預定數目個符記相關聯;自該符記桶中所含有之符記之該數目減去該預定數目以使得該符記桶含有一經更新之數目個符記;及隨後根據符記之該經更新之數目來管理一額外記憶體寫入操作。
管理一記憶體系統中之電力使用之一方法亦可包含:以一預定型樣添加符記至該符記桶。該記憶體系統可係具有根據一記憶體卡標準之一主機介面之一記憶體卡。可由該記憶體卡標準之一最大電力限制判定該初始值。可由該記憶體卡標準判定該預定型樣。該記憶體系統可包含具有多位階胞之NAND快閃記憶體。
根據一實例,一可抽換非揮發性記憶體卡包含:一記憶體陣列,其含有複數個非揮發性記憶體胞;及一記憶體控制器,其維持一符記桶,該符記桶含有一定數目個符記,該記憶體控制器使該符記桶中之符記之該數目週期性地最多遞增至一限制,該記憶體控制器在一給定時間使用該符記桶中之符記之該數目來判定是否可在該記憶體陣列中執行一寫入操作。
該記憶體控制器可係一中央記憶體控制器,且該記憶體卡可包含複數個周邊記憶體控制器,每一周邊記憶體控制器根據該符記桶中之符記之該數目來管理該記憶體陣列之至少一個記憶體晶片中之資料。一記憶體卡亦可包含一額外記憶體陣列及一額外記憶體控制器,該額外記憶體控制器維持一額外符記桶,該記憶體控制器與該額外記憶體控制器交換符記以管理該記憶體陣列及該額外記憶體陣列中之寫入操作。該記憶體控制器及該額外記憶體控制器可透過一中央控制器交換符記,或可直接交換符記而無需一中間控制器。該記憶體陣列可係一NAND記憶體陣列。該記憶體陣列可包含複數個多位階胞。該記憶體卡可包含根據一記憶體卡標準之一主機介面,且可由該記憶體卡標準判定該符記桶之至少一個參數。
圖1展示根據本發明之一實施例之記憶體系統100之一實例。該記憶體系統包含一主機介面102、一記憶體控制器104及一記憶體陣列106。此等組件通常配置於提供保護免受實體損壞之一外部殼體中。亦可提供額外組件(諸如,發光二極體,LED)用於額外功能性。
在某些實例中,主機介面102遵從一標準(諸如,一記憶體卡標準或USB標準)以使得該記憶體系統可與具有一對應介面之一廣泛範圍之主機介接。通常,此等標準設定該實體介面中插針之實體配置以及每一插針之指派、所使用電壓位準,以及用於透過該介面所發送之資料及命令之協定。諸多介面包含對提供電力至一記憶體系統之一主機之一設定。舉例而言,記憶體卡及USB快閃記憶體隨身碟通常透過此一主機介面自一主機獲得其等之電力。
記憶體系統100亦包含一非揮發性記憶體陣列106。此可係一NAND快閃記憶體陣列。另一選擇為,該非揮發性記憶體陣列可係單次可程式化(OTP)記憶體、NOR快閃記憶體、磁性隨機存取記憶體(MRAM)或其他形式之非揮發性記憶體。非揮發性記憶體陣列106可係位於如所展示之一單個晶片上。讀取及寫入電路以及其他周邊電路可位於該相同晶片上。
一記憶體控制器104插入於主機介面102與非揮發性記憶體陣列106之間。記憶體控制器104管理記憶體陣列106中之資料。當主機發送資料時,記憶體控制器104判定應將該資料儲於何處並記錄其中儲存該資料之位置。在一項實例中,該記憶體控制器執行邏輯至實體映射以使得將以邏輯位址自該主機所接收之資料以由該記憶體控制器根據該記憶體陣列中之可用空間所判定之一方式映射至記憶體陣列106中之實體位置。其他功能(諸如,錯誤校正碼(ECC)功能)可由記憶體控制器104執行。此等ECC功能允許在將自記憶體陣列106讀取之資料發送至主機之前在記憶體控制器104中校正該資料中之錯誤。
記憶體主要由執行讀取、寫入及抹除操作之速率來判定記憶體系統100使用電力之速率。記憶體控制器104管理此等功能且因此判定電力使用之速率。雖然可使用各種機制來控制電力使用,但圖1之記憶體系統使用記憶體控制器104中之一符記桶108來執行此控制。符記桶108可由形成為記憶體控制器104之部分之專用硬體(其可係一專用積體電路或ASIC)來實施、透過記憶體控制器中之軟體或韌體來實施,或透過硬體與軟體之一組合來實施。在一個配置中,該符記桶實施為一計數器,其具有將該計數器起始至一初始值並根據一符記桶方案在該計數器中維持該值之韌體。
圖2展示根據一替代性實例之一記憶體系統200。在此實例中,一記憶體控制器204管理兩個單獨記憶體晶粒206a、206b中之資料。該兩個晶粒可係位於兩個在實體上分離之晶片上,或可係位於相同晶片上(亦即,位於相同矽片上)。諸如圖2中所展示之彼配置的配置係用以在一記憶體系統中以一相當廉價方式(例如,使用兩個十億位元組晶片來替代一個二十億位元組晶片)提供增加之容量之常見方式。此一配置亦可允許其中該控制器與一個晶粒通信同時佔用另一晶粒來執行一命令之某一並行操作。然而,若該兩個記憶體晶粒同時皆需要顯著電力(例如,若兩者並行地執行寫入操作),此並行操作可導致電力消耗問題。因此,電力管理係此等配置中之一特別重要問題且並行操作需要特別關注。在記憶體控制器204中使用一符記桶208來管理兩個記憶體晶粒206a、206b中之電力消耗。
圖3圖解說明可在本發明之實例中使用之一符記桶300之操作。一符記桶之操作係類似於在任一給定時間填充至一特定位準N之一桶(其中N係該桶中之符記之數目),該桶具有一最大容量b(桶可含有之符記之最大數目)。在執行一電力消耗操作之前,檢查符記桶300以查看是否有可用的充足符記來執行該操作。因此,當主機發送一寫入命令及欲寫入之某一資料時,記憶體控制器判定所涉及之個別寫入操作且針對每一寫入操作該控制器在將資料寫入於記憶體陣列中之前檢查該符記桶。以此方式,記憶體系統之操作可保持在所規定之限制內。
可以若干種方式設定電力消耗限制。該符記桶之大小b表示可在一叢發中消耗之最大電流量。在其中期望並行地程式化四個上部頁且每一頁之程式化操作使用5500 mA/微秒之一項實例中,最大電力係22000 mA/微秒且相應地選擇b。在一給定時間週期內不可能進行將使用b個以上符記之任一操作或操作組合。任何此種操作必須在一個以上時間週期上實施。必須添加符記至該符記桶以替換由於電力消耗而被移除之符記。添加此等符記之速率表示最大平均電力消耗。在圖3中,添加符記之速率係由r表示。一般而言,r相依於主機介面標準。以一速率r添加符記,或每1/r秒添加一個符記。在某些情形下,可不能或期望每1/r秒添加一個符記(例如,時脈解析度不充足),因此取而代之,每S毫秒添加一定數目個符記,該數目由(r*S)/1000給出。若符記桶已滿(亦即,若N=b),則不添加任何欲添加至該桶之符記,而是將其等丟棄(亦即,該桶無法保存b個以上符記)。圖3之符記桶可實施為一n-位元計數器,其具有用以初始化該桶且視情況添加符記之一適合常式及用以在執行一操作之前檢查該桶且隨著電力之消耗而更新該桶之另一常式。
在執行一電力消耗操作之前,檢查符記桶300中之符記之數目N以確保存在充足的符記。若可用的符記不充足,則可停止該操作。舉例而言,當一寫入需要n個符記時(其中n係電流量乘以該操作之持續時間(mA*微秒)),檢查符記桶300以查看其是否含有至少n個符記。當執行一電力消耗操作時,根據所消耗之電力減小符記桶300中之符記之數目。因此,對於需要n個符記之一寫入操作而言,使該數目減小n。類似地,對於一抹除操作而言,可使該數目減小表示在抹除一區塊或元區塊(抹除單元)時所消耗之電力之一量。且對於一讀取操作而言,可使該數目減小表示在讀取一頁時所消耗之電力之一量。在某些情形中,寫入不同頁可消耗不同之電力量(例如,上部頁寫入通常消耗多於下部頁寫入之電力)。
可如下判定速率r。
‧ 假設a係所期望之平均電流/時間單位。
‧ 假設T係所期望之求平均週期。
‧ 假設b係所允許之叢發大小。
‧ 然後將速率r設定為:
舉例而言:
‧ 假設a係100 mA。
‧ 假設T係16,000微秒。
‧ 假設b係四個D3上部頁之程式化時間(4×5500微秒)=22000微秒。
‧ 然後將速率r設定為:
圖4展示用於初始化一符記桶且在操作期間添加符記至該符記桶之一常式。初始化符記桶440,其中將該桶中之符記之該數目N設定為符記之最大數目b。然後,該常式等待一時脈循環442且檢查以查看該符記桶是否係滿的(若N=b)444。若其仍係滿的,則該常式返回以等待下一時脈循環442而不添加任何符記。若該符記桶不係滿的,則使該符記桶中之符記之數目增加(r*S)/1000 446。然後,該常式返回以等待下一時脈循環442。圖4之常式可係使用一中斷常式實施於韌體中或其可作為一計時器/計數器提供於硬體中以用於高精度計時。
圖5展示用於使用一符記桶執行寫入操作之一常式。該常式等待欲自一主機接收之一寫入命令550。然後,該常式檢查以查看該符記桶中是否存在充足的符記來進行一寫入操作552。若不存在充足的符記,則該常式停止直至該符記桶中存在充足的符記(在每一時脈循環添加更多符記)。然後,執行該寫入操作554。然後使該符記桶中之符記之數目減小556表示在該寫入操作中所消耗之電力之一數目n。然後,該常式返回以等待另一寫入命令550。應注意,圖5展示符記之數目係在執行該寫入554後減小556的,但此等步驟之次序並非係關鍵的。另一選擇為,可在該寫入操作之前或在該寫入操作期間更新符記之數目。
除判定是否可執行一特定寫入操作外,一符記桶亦可用於判定在執行多個操作時使用之一並行度。在各種記憶體系統中,可按順序或以提供增加之速度之某一重疊執行若干操作。然而,在未充分管理此等並行操作之情況下,其等可導致超過電力消耗限制。本發明之態樣係關於對並行操作之此管理以使得不超過電力消耗限制。
圖6展示在一雙晶粒記憶體陣列中串列地執行之兩個寫入操作660、662之一實例。每一寫入操作660、662花費1000微秒,使得該兩個操作花費2000微秒。在每一寫入操作中使用之電流係相同的且在整個寫入操作中恆定為75 mA。因此,平均電流(Iavg)及峰值電流(Ipeak)兩者皆係相同的(75 mA)。雖然圖6之實例提供低平均電流使用及低峰值電流,但時間(2000微秒)可能係不合意地長。
圖7展示用於在一雙晶粒記憶體陣列中執行兩個寫入操作770、772之一替代性實例。在圖7中,兩個寫入操作770、772係並行執行且因此該兩個寫入操作在1000微秒中完成(圖6之實例中所花費的時間之一半)。然而,所使用之電流(平均電流與峰值電流兩者)係先前實例(150 mA)的兩倍多。雖然通常期望較快之操作,但此增加之電流消耗可超過一預定限制。
圖8展示其中部分地並行執行(部分地重疊寫入操作)一雙晶粒記憶體陣列中之兩個寫入操作880、882之一替代性實例。在此實例中,該等寫入操作重疊達用於一寫入操作之時間之一半(亦即,其等重疊達500微秒)。因此,該兩個寫入操作花費總共1500微秒。雖然並不像完全並行操作(如圖7中所展示)一樣快,但此顯著快於完全串列操作(如圖6中所展示)。雖然所使用之峰值電流(Ipeak)係與圖7中(150 mA)相同,但平均電流(Iavg)減小(100 mA)。此部分並行操作允許以一精確方式管理速度與電力之間的折衷以使得可針對任一給定電力限制而最大化速度。
在一項實例(SD速度等級4)中,在一100 mA平均電流限制之情況下使用一20 MHz安全數位(SD)匯流排執行一測試。在該測試期間,在等待資料傳送時,記憶體陣列(例如,NAND快閃記憶體陣列)可閒置達80%之時間。假定SD匯流排傳送花費80個時間單位且該記憶體陣列中之程式化花費20個時間單位。每一記憶體晶粒在程式化期間消耗50 mA,且控制器消耗20 mA。藉由針對一短叢發而啟用雙晶粒交錯,可使性能增加0.8倍,但在叢發期間電流消耗形成峰值為130 mA。然而,由於電流係在100個時間單位上求平均,且記憶體陣列僅作用20%之時間,因此平均電流消耗係(80*30 mA+20*130 mA)/100=50 mA。此結果處於平均電流限制內。
可使用一符記桶管理部分並行操作(諸如,圖8之彼等操作)。舉例而言,當一記憶體控制器具有兩個欲執行之寫入操作時,該記憶體控制器可首先檢查以查看是否存在充足的符記來執行一個寫入操作。若存在用於一個操作的充足符記,則該記憶體控制器執行第一寫入。該記憶體控制器亦可查看該符記桶中是否存在將允許並行地執行另一寫入操作之額外符記。若存在額外符記,則可與該第一寫入操作至少部分地並行執行第二寫入操作。該符記桶中之額外符記之數目可判定所使用之並行度(重疊量)。
圖9係展示一記憶體控制器藉以在預定電力限制內管理並行寫入操作之一方案之一流程圖。最初,該記憶體控制器等待一寫入命令960。當接收到一寫入命令時,該記憶體控制器判定將如何將資料儲存於記憶體陣列中且識別可並行執行之任何個別寫入操作962。舉例而言,該記憶體控制器可判定該寫入命令涉及將填充該記憶體陣列中之兩個頁之資料且該記憶體控制器可識別兩個不同晶粒中之可用頁以使得可並行地寫入該兩個晶粒中之頁。然後,該記憶體控制器驗證存在充足的符記用於至少第一寫入操作(寫入1)964,在此實例中該第一寫入操作將係寫入第一頁。若不存在足夠符記來用於該第一寫入操作,則該過程停止同時等待額外符記。若存在充足的符記用於該第一寫入操作,則執行該第一寫入操作966。該記憶體控制器亦檢查以查看是否存在可用之額外符記968(比該第一寫入操作所需之彼等符記多之符記)。若存在可用之額外符記,則該記憶體控制器計算該等額外符記所允許之並行度970。舉例而言,該等額外符記可允許與該第一寫入操作完全並行地(100%重疊)或以某一更小之並行度(例如,50%)來執行該第二寫入操作。然後,以所允許之並行度與該第一寫入操作並行地執行該第二寫入操作(寫入2)972。當完成該第一寫入操作時,使該符記桶中之符記之數目減小反映在該第一寫入操作中所使用之電力量之一數目n 974。當執行該第二寫入操作(或該第二寫入操作之所允許部分)時,使該符記桶減小反映在該第二寫入操作中所使用之電力量之一數目n' 976。可以最大容許並行度執行寫入操作以使得在執行第一及第二寫入操作之後清空該符記桶。
雖然上述實例係指並行地寫入兩個頁,但本發明不限於任何特定數目之頁且可適用於其中並行地寫入兩個以上頁之系統。此等頁可位於兩個以上晶粒中,且此等晶粒可位於不同晶片上。此外,雖然上述實例係指操作一符記桶並對一記憶體陣列執行所有資料管理功能之一單個記憶體控制器,但亦可能有其他實施方案。
圖10展示其中一記憶體系統1000包含連接至一主機介面1003之一中央控制器1001之一配置。除了中央控制器1001外,亦存在兩個周邊控制器1005a、1005b,其等中之每一者連接至一記憶體晶片1007a、1007b(在其他實例中,每一周邊控制器可連接至兩個或更多個記憶體晶片)。中央控制器1001包含一符記桶1009且中央控制器1001管理記憶體晶片1007a、1007b中之並行操作以使得記憶體系統1000之總電力消耗維持在預定限制內。雖然資料儲存之其他態樣可由周邊記憶體控制器1005a、1005b來管理(例如,ECC、廢料收集),但在此實例中,該等周邊記憶體控制器不含有符記桶且並不判定何時准許並行操作。
圖11展示其中兩個周邊記憶體控制器1105a、1105b各自含有一符記桶1111a、1111b之一記憶體系統1100之一替代性配置。周邊記憶體控制器1105a、1105b基於其等各自之符記桶中之符記之位準而單獨地判定其等是否可繼續執行任一給定操作(在各別記憶體晶片1113a、1113b中)。在該兩個周邊記憶體控制器之間可透過中央記憶體控制器1101發生某一通信。舉例而言,可傳遞關於符記桶1111a、1111b中之每一者中之符記位準之資訊。在某些情形下,一個周邊記憶體控制器可將符記發送至另一記憶體控制器。以此方式,總電力消耗可保持在預定限制內同時允許在該記憶體系統內的何處消耗電力之靈活性。
圖12展示其中在一記憶體系統1200中未提供中央控制器之一替代性配置。提供兩個記憶體控制器1205a、1205b,每一者管理一記憶體晶片1207a、1207b中之資料。每一記憶體控制器包含一符記桶1213a、1213b。記憶體控制器可直接交換關於符記桶之資訊。在某些情形下,記憶體控制器可在其等之間傳送符記桶以使得具有多於其所需要的符記之一記憶體控制器可將該等符記傳送至需要符記之一記憶體控制器。
雖然上述實例展示可並行操作之兩個記憶體晶片,但亦可使用兩個以上記憶體晶片及兩個以上周邊記憶體控制器。一單個中央記憶體控制器可服務兩個以上此種周邊記憶體控制器。另一選擇為,兩個以上記憶體控制器可直接通信且交換符記而無需任一中央控制器。
雖然上述實例中之諸多實例係指由一主機寫入命令起始之寫入操作,但將理解,本發明之態樣亦可適用於其他操作。此等操作可包含並非由一主機寫入命令直接起始之寫入操作,諸如,作為廢料收集之部分發生之寫入操作,或目錄寫入。此等操作亦可包含抹除操作、讀取操作及在一記憶體控制器內所執行之各種操作,諸如,ECC操作。
本文中所參考之所有專利、專利申請案、論文、書籍、說明書、其他出版物、文件及事物之整體內容藉此出於所有目的以引用方式併入本文中。在所併入之出版物、文件或事物中之任一者與本文件之文字之間的一術語之定義或使用的任何不一致或衝突方面,應以本文件中術語之定義或使用為準。
雖然已相對於某些較佳實施例對本發明之各種態樣進行闡述,但應理解,本發明有權在隨附申請專利範圍之整個範疇內受到保護。
100...記憶體系統
102...主機介面
104...記憶體控制器
106...記憶體陣列
108...符記桶
200...記憶體系統
204...記憶體控制器
206a...記憶體晶粒
206b...記憶體晶粒
208...符記桶
300...符記桶
1000...記憶體系統
1001...中央控制器
1003...主機介面
1005a...周邊控制器
1005b...周邊控制器
1007a...記憶體晶片
1007b...記憶體晶片
1009...符記桶
1100...記憶體系統
1101...中央記憶體控制器
1105a...周邊記憶體控制器
1105b...周邊記憶體控制器
1111a...符記桶
1111b...符記桶
1113a...記憶體晶片
1113b...記憶體晶片
1200...記憶體系統
1205a...記憶體控制器
1205b...記憶體控制器
1207a...記憶體晶片
1207b...記憶體晶片
1213a...符記桶
1213b...符記桶
圖1展示具有一單個記憶體晶粒及一記憶體控制器之一記憶體系統;
圖2展示具有兩個記憶體晶粒及一記憶體控制器之一記憶體系統;
圖3圖解說明一符記桶之操作;
圖4展示用於添加符記至一符記桶之一演算法;
圖5展示使用一符記桶之一記憶體寫入操作;
圖6展示無重疊地串列執行寫入操作之一實例;
圖7展示完全重疊地並行執行寫入操作之一實例;
圖8展示以某一重疊部分地並行執行寫入操作之一實例;
圖9展示可如何使用一符記桶來管理兩個或更多個記憶體寫入操作;
圖10展示具有包含一符記桶之一中央記憶體控制器之一記憶體系統;
圖11展示具有一中央記憶體控制器及各自包含一符記桶之兩個周邊控制器之一記憶體系統;及
圖12展示具有各自包含一符記桶之兩個記憶體控制器之一記憶體系統。
(無元件符號說明)

Claims (24)

  1. 一種管理一記憶體系統之方法,其包括:在一記憶體控制器中維持一可變信用值,該可變信用值反映可用於該記憶體系統中之記憶體操作之一電力量,該可變信用值具有反映用於該記憶體系統之一最大電力限制之一上限;在執行一記憶體操作之前,檢查該可變信用值是否指示存在可用於執行該記憶體操作之足夠電力;更新該可變信用值以反映在執行該記憶體操作時所使用之該電力;及檢查該可變信用值是否指示存在可用於執行一額外記憶體操作之至少一部分之足夠電力,且若存在足夠電力來執行該額外記憶體操作之至少一部分,則判定在執行該記憶體操作及該額外記憶體操作時使用之一並行度,其中該並行度指示該記憶體操作及該額外記憶體操作之執行之時間(temporal)重疊量。
  2. 如請求項1之方法,其中該記憶體操作係程式化一第一記憶體晶粒中之一第一頁,且該額外記憶體操作係程式化一第二記憶體晶粒中之一第二頁。
  3. 如請求項2之方法,其中該第一記憶體晶粒係位於一第一記憶體晶片上,且該第二記憶體晶粒係位於一第二記憶體晶片上。
  4. 如請求項2之方法,其中該第一頁係一下部頁,且該第二頁係一上部頁。
  5. 如請求項1之方法,其中將該可變信用值維持為一符記桶中之符記之一數目,其中週期性地添加符記至該符記桶以將符記之該數目最多增加至一最大數目。
  6. 如請求項5之方法,其中以相依於一主機裝置之一電力模式之一速率添加該等符記。
  7. 如請求項6之方法,其中當該主機裝置正依靠電池電力進行操作時,以一較低速率添加該等符記,且當該主機裝置正依靠外部電力進行操作時,以一較高速率添加該等符記。
  8. 如請求項5之方法,其中將該符記桶提供為一n-位元計數器。
  9. 如請求項5之方法,其中由透過一介面可用於該記憶體系統之一最大電力判定該最大數目。
  10. 如請求項1之方法,其中將該可變信用值維持為一符記桶中之符記之一數目,其中以叢發方式添加符記至該符記桶。
  11. 一種管理一記憶體系統中之電力使用之方法,該方法包括:在一初始時間將一符記桶起始為含有等於一初始值之數目個符記,該等符記之數目反映可用於該記憶體系統中之記憶體操作之一電力量;隨後執行一記憶體寫入操作,該記憶體寫入操作與預定數目個符記相關聯;自該符記桶中所含有之符記之該數目減去該預定數目 以使得該符記桶含有經更新之數目個符記;及隨後根據符記之該經更新之數目來管理一額外記憶體寫入操作,管理該額外記憶體寫入操作包括檢查該符記桶是否指示存在可用於執行該額外記憶體操作之至少一部分之足夠電力,且若存在足夠電力來執行該額外記憶體操作之至少一部分,則判定在執行該記憶體操作及該額外記憶體操作時使用之一並行度,其中該並行度指示該記憶體操作及該額外記憶體操作之執行之時間重疊量。
  12. 如請求項11之方法,其進一步包括以一預定型樣添加符記至該符記桶。
  13. 如請求項12之方法,其中該記憶體系統係具有根據一記憶體卡標準之一主機介面之一記憶體卡。
  14. 如請求項13之方法,其中由該記憶體卡標準之一最大電力限制判定該初始值。
  15. 如請求項14之方法,其中由該記憶體卡標準判定該預定型樣。
  16. 如請求項11之方法,其中該記憶體系統包括具有多位階胞之NAND快閃記憶體。
  17. 一種可抽換非揮發性記憶體卡,其包括:一記憶體陣列,其含有複數個非揮發性記憶體胞;及一記憶體控制器,其維持一符記桶,該符記桶含有反映可用於該記憶卡中之若干記憶體操作之電力量之一定數目個符記,該符記桶中之該等符記之數目具有反映用 於該記憶卡之一最大電力限制之一上限,該記憶體控制器經組態以在執行一記憶體操作之前,檢查該符記桶中之該等符記之數目反映執行該記憶體操作之足夠電力,該記憶體控制器進一步經組態以更新該符記桶中之該等符記之數目以反映在執行該記憶體操作時所使用之電力,且該記憶體控制器進一步經組態以檢查該等符記之數目是否指示存在可用於執行一額外記憶體操作之至少一部分之足夠電力,且若存在足夠電力來執行該額外記憶體操作之至少一部分,則判定在執行該記憶體操作及該額外記憶體操作時使用之一並行度,其中該並行度指示該記憶體操作及該額外記憶體操作之執行之時間重疊量。
  18. 如請求項17之可抽換非揮發性記憶體卡,其中該記憶體控制器係一中央記憶體控制器,且該可抽換非揮發性記憶體卡進一步包括複數個周邊記憶體控制器,每一周邊記憶體控制器根據該符記桶中之符記之該數目來管理該記憶體陣列之至少一個記憶體晶片中之資料。
  19. 如請求項17之可抽換非揮發性記憶體卡,其進一步包括一額外記憶體陣列及一額外記憶體控制器,該額外記憶體控制器維持一額外符記桶,該記憶體控制器與該額外記憶體控制器交換符記以管理該記憶體陣列及該額外記憶體陣列中之寫入操作。
  20. 如請求項19之可抽換非揮發性記憶體卡,其中該記憶體控制器與該額外記憶體控制器透過一中央控制器交換符 記。
  21. 如請求項19之可抽換非揮發性記憶體卡,其中該記憶體控制器與該額外記憶體控制器直接交換符記而無需一中間控制器。
  22. 如請求項17之可抽換非揮發性記憶體卡,其中該記憶體陣列係一NAND記憶體陣列。
  23. 如請求項17之可抽換非揮發性記憶體卡,其中該記憶體陣列包括複數個多位階胞。
  24. 如請求項17之可抽換非揮發性記憶體卡,其進一步包括根據一記憶體卡標準之一主機介面,且其中由該記憶體卡標準判定該符記桶之至少一個參數。
TW099140091A 2009-11-20 2010-11-19 記憶體系統之電源管理 TWI518698B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/623,291 US8335123B2 (en) 2009-11-20 2009-11-20 Power management of memory systems

Publications (2)

Publication Number Publication Date
TW201131575A TW201131575A (en) 2011-09-16
TWI518698B true TWI518698B (zh) 2016-01-21

Family

ID=43734753

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099140091A TWI518698B (zh) 2009-11-20 2010-11-19 記憶體系統之電源管理

Country Status (5)

Country Link
US (1) US8335123B2 (zh)
EP (1) EP2502125B1 (zh)
KR (1) KR20120123653A (zh)
TW (1) TWI518698B (zh)
WO (1) WO2011063016A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI813990B (zh) * 2021-01-19 2023-09-01 日商鎧俠股份有限公司 可移除記憶體裝置

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8245101B2 (en) 2007-12-27 2012-08-14 Sandisk Enterprise Ip Llc Patrol function used in flash storage controller to detect data errors
US8335123B2 (en) 2009-11-20 2012-12-18 Sandisk Technologies Inc. Power management of memory systems
JP2011227664A (ja) 2010-04-19 2011-11-10 Toshiba Corp メモリシステム
US8788779B1 (en) * 2010-09-17 2014-07-22 Western Digital Technologies, Inc. Non-volatile storage subsystem with energy-based performance throttling
US20120110244A1 (en) * 2010-11-02 2012-05-03 Micron Technology, Inc. Copyback operations
JP2012118820A (ja) * 2010-12-01 2012-06-21 Canon Inc 情報処理システム
US8521981B2 (en) * 2010-12-16 2013-08-27 Microsoft Corporation Memory power tokens
US8694719B2 (en) 2011-06-24 2014-04-08 Sandisk Technologies Inc. Controller, storage device, and method for power throttling memory operations
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US8848478B2 (en) 2012-09-24 2014-09-30 Micron Technology, Inc. Power consumption control
US9134779B2 (en) * 2012-11-21 2015-09-15 International Business Machines Corporation Power distribution management in a system on a chip
US9134778B2 (en) 2012-11-21 2015-09-15 International Business Machines Corporation Power distribution management in a system on a chip
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9239751B1 (en) 2012-12-27 2016-01-19 Sandisk Enterprise Ip Llc Compressing data from multiple reads for error control management in memory systems
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9236886B1 (en) 2013-03-15 2016-01-12 Sandisk Enterprise Ip Llc Universal and reconfigurable QC-LDPC encoder
US9244763B1 (en) 2013-03-15 2016-01-26 Sandisk Enterprise Ip Llc System and method for updating a reading threshold voltage based on symbol transition information
US9262505B2 (en) * 2013-05-17 2016-02-16 Amazon Technologies, Inc. Input-output prioritization for database workload
US9159437B2 (en) 2013-06-11 2015-10-13 Sandisk Enterprise IP LLC. Device and method for resolving an LM flag issue
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9384126B1 (en) 2013-07-25 2016-07-05 Sandisk Technologies Inc. Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9235509B1 (en) 2013-08-26 2016-01-12 Sandisk Enterprise Ip Llc Write amplification reduction by delaying read access to data written during garbage collection
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9263156B2 (en) 2013-11-07 2016-02-16 Sandisk Enterprise Ip Llc System and method for adjusting trip points within a storage device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9235245B2 (en) 2013-12-04 2016-01-12 Sandisk Enterprise Ip Llc Startup performance and power isolation
US9348380B2 (en) * 2013-12-28 2016-05-24 Samsung Electronics Co., Ltd. Dynamic thermal budget allocation for memory array
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9390814B2 (en) 2014-03-19 2016-07-12 Sandisk Technologies Llc Fault detection and prediction for data storage elements
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US9582211B2 (en) 2014-04-29 2017-02-28 Sandisk Technologies Llc Throttling command execution in non-volatile memory systems based on power usage
US9575677B2 (en) 2014-04-29 2017-02-21 Sandisk Technologies Llc Storage system power management using controlled execution of pending memory commands
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9093160B1 (en) * 2014-05-30 2015-07-28 Sandisk Technologies Inc. Methods and systems for staggered memory operations
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10039492B2 (en) * 2014-06-13 2018-08-07 Verily Life Sciences, LLC Conditional storage
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
US9847662B2 (en) 2014-10-27 2017-12-19 Sandisk Technologies Llc Voltage slew rate throttling for reduction of anomalous charging current
US9916087B2 (en) 2014-10-27 2018-03-13 Sandisk Technologies Llc Method and system for throttling bandwidth based on temperature
US9880605B2 (en) 2014-10-27 2018-01-30 Sandisk Technologies Llc Method and system for throttling power consumption
US9654483B1 (en) * 2014-12-23 2017-05-16 Amazon Technologies, Inc. Network communication rate limiter
US20160372160A1 (en) * 2015-06-16 2016-12-22 Sandisk Technologies Inc. Memory System and method for power management
US9418712B1 (en) * 2015-06-16 2016-08-16 Sandisk Technologies Llc Memory system and method for power management using a token bucket
US9401184B1 (en) 2015-06-16 2016-07-26 Sandisk Technologies Llc Memory system and method for power management
US10073659B2 (en) * 2015-06-26 2018-09-11 Intel Corporation Power management circuit with per activity weighting and multiple throttle down thresholds
US10372185B2 (en) 2015-07-28 2019-08-06 Western Digital Technologies, Inc. Enhanced power control of data storage arrays
US10417218B2 (en) * 2015-12-23 2019-09-17 Intel Corporation Techniques to achieve ordering among storage device transactions
KR102531858B1 (ko) 2016-03-24 2023-05-11 에스케이하이닉스 주식회사 전력 관리를 수행하는 반도체 장치 및 그 동작 방법
US9760311B1 (en) 2016-06-23 2017-09-12 Sandisk Technologies Llc Storage system and method for adaptive thermal throttling
US10558380B2 (en) * 2016-08-09 2020-02-11 Seagate Technology Llc Active power management
US10509591B2 (en) * 2017-05-18 2019-12-17 Sandisk Technologies Llc Distributed power management for non-volatile memory controllers using average and peak power credits allocated to memory channels
US10366766B2 (en) 2017-12-12 2019-07-30 Western Digital Technologies, Inc. Power shaping and peak power reduction by data transfer throttling
US11159455B1 (en) 2018-12-28 2021-10-26 Innovium, Inc. Reducing power consumption in an electronic device
US11029746B2 (en) * 2019-05-30 2021-06-08 Micron Technology, Inc. Dynamic power management network for memory devices
US11256591B2 (en) 2020-06-03 2022-02-22 Western Digital Technologies, Inc. Die memory operation scheduling plan for power control in an integrated memory assembly
US11635794B2 (en) 2020-08-10 2023-04-25 Micron Technology, Inc. Memory sub-system temperature throttling relaxation
US11842056B2 (en) * 2021-10-25 2023-12-12 EMC IP Holding Company, LLC System and method for allocating storage system resources during write throttling

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0667766A (ja) 1992-08-21 1994-03-11 Fujitsu Ltd 携帯端末装置
GB0123416D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Non-volatile memory control
JP3634810B2 (ja) 2002-03-14 2005-03-30 三洋電機株式会社 メモリ書き替え装置
US7287170B2 (en) 2002-05-14 2007-10-23 Ati Technologies Inc. Method and apparatus for power management using system and request tokens
US7370168B2 (en) * 2003-04-25 2008-05-06 Renesas Technology Corp. Memory card conforming to a multiple operation standards
US7174469B2 (en) 2003-09-30 2007-02-06 International Business Machines Corporation Processor power and energy management
US7159082B1 (en) * 2005-10-03 2007-01-02 Hewlett-Packard Development Company, L.P. System and method for throttling memory accesses
US20070211551A1 (en) 2005-11-25 2007-09-13 Yoav Yogev Method for dynamic performance optimization conforming to a dynamic maximum current level
US7830796B2 (en) 2006-10-18 2010-11-09 Ericsson Ab Method and apparatus for traffic shaping
US7793126B2 (en) 2007-01-19 2010-09-07 Microsoft Corporation Using priorities and power usage to allocate power budget
US7818592B2 (en) 2007-04-18 2010-10-19 Globalfoundries Inc. Token based power control mechanism
US7849344B2 (en) 2007-07-20 2010-12-07 International Business Machines Corporation Method for improving accuracy in providing information pertaining to battery power capacity
US8266501B2 (en) * 2009-09-29 2012-09-11 Micron Technology, Inc. Stripe based memory operation
US8335123B2 (en) 2009-11-20 2012-12-18 Sandisk Technologies Inc. Power management of memory systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI813990B (zh) * 2021-01-19 2023-09-01 日商鎧俠股份有限公司 可移除記憶體裝置

Also Published As

Publication number Publication date
KR20120123653A (ko) 2012-11-09
US20110122691A1 (en) 2011-05-26
EP2502125B1 (en) 2015-09-30
EP2502125A1 (en) 2012-09-26
US8335123B2 (en) 2012-12-18
TW201131575A (en) 2011-09-16
WO2011063016A1 (en) 2011-05-26

Similar Documents

Publication Publication Date Title
TWI518698B (zh) 記憶體系統之電源管理
KR101923284B1 (ko) 온도 기반 플래시 메모리 시스템 유지보수
KR101699104B1 (ko) 비-휘발성 메모리를 구비한 시스템에 대한 전력 예산의 동적 할당
US9098395B2 (en) Logical block management method for a flash memory and control circuit storage system using the same
EP2850615B1 (en) Memory chip power management
US9965199B2 (en) Smart dynamic wear balancing between memory pools
US20100318724A1 (en) Flash memory control circuit, flash memory storage system, and data transfer method
US9009436B2 (en) Flushed data alignment with physical structures
US20100257308A1 (en) Host stop-transmission handling
US11334493B2 (en) Memory system and operating method thereof
Eshghi et al. Ssd architecture and pci express interface
US9383929B2 (en) Data storing method and memory controller and memory storage device using the same
CN102915273B (zh) 数据写入方法、存储器控制器与存储器储存装置
US9727453B2 (en) Multi-level table deltas
CN103914391A (zh) 数据读取方法、存储器控制器与存储器存储装置
CN102890653A (zh) 指令执行方法、存储器控制器与存储器储存装置
CN103186470B (zh) 存储器储存装置及其存储器控制器与数据写入方法
TWI644215B (zh) 用來控制一資料儲存裝置的運作之方法以及資料儲存裝置及其控制器
US11347433B2 (en) Method for performing sudden power off recovery management, associated memory device and controller thereof, and associated electronic device
US20130205066A1 (en) Enhanced write abort management in flash memory
CN104166558A (zh) 固件码载入方法、存储器控制器与存储器存储装置
CN102591738A (zh) 数据管理方法、存储器控制器与嵌入式存储器储存装置
CN112988069A (zh) 存储器管理方法、存储器存储装置及存储器控制器
US9558009B1 (en) Expedited find sector to decrease boot time
CN102456401A (zh) 区块管理方法、存储器控制器与存储器储存装置

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees