TWI419159B - 記憶體系統 - Google Patents

記憶體系統 Download PDF

Info

Publication number
TWI419159B
TWI419159B TW098105314A TW98105314A TWI419159B TW I419159 B TWI419159 B TW I419159B TW 098105314 A TW098105314 A TW 098105314A TW 98105314 A TW98105314 A TW 98105314A TW I419159 B TWI419159 B TW I419159B
Authority
TW
Taiwan
Prior art keywords
data
management information
unit
memory
written
Prior art date
Application number
TW098105314A
Other languages
English (en)
Other versions
TW200947439A (en
Inventor
Junji Yano
Hidenori Matsuzaki
Kosuke Hatsuda
Original Assignee
Toshiba Kk
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 Toshiba Kk filed Critical Toshiba Kk
Publication of TW200947439A publication Critical patent/TW200947439A/zh
Application granted granted Critical
Publication of TWI419159B publication Critical patent/TWI419159B/zh

Links

Classifications

    • 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
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • 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/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • G06F11/141Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Description

記憶體系統
本發明係關於一種利用一非揮發性半導體儲存器件的記憶體系統。
某些個人電腦(PC)利用硬碟器件作為次要儲存器件。在此類PC中,已知用於備份已儲存於硬碟器件內之資料以防止資料由於某一故障變得無效的技術。例如,當偵測到改變硬碟器件內之資料的動作時,拍攝變化前之資料的備份複本之快照並且產生對資料作出之變化的日誌。接著,用於拍攝新快照、無效化在拍攝新快照前於過去拍攝之日誌以及產生新日誌之處理在每一預定時間重複(例如,參見美國專利申請公開案第2006/0224636號)。在資料由於某一原因變得無效的情形中,可藉由參考快照及日誌恢復資料。
近年來,作為非揮發性半導體儲存器件之NAND快閃記憶體的容量已急劇增加。結果,包括具有作為次要儲存器件的NAND快閃記憶體之記憶體系統的PC已投入實際使用。
然而,美國專利申請公開案第2006/0224636號內所揭示之技術無法如儲存於具有作為次要儲存器件之硬碟器件的個人電腦內之資料的備份情形一樣應用於儲存於具有作為次要儲存器件之NAND快閃記憶體的此一個人電腦內之資料的備份。此係由於利用可在一記憶體單元內儲存等於或大於2位元的複數個資料(多值資料)之多值記憶體技術以增加NAND快閃記憶體之容量。
組態多值記憶體之記憶體單元具有場效電晶體結構,其具有一堆疊閘極結構,其中在通道區域上依序堆疊閘極絕緣膜、浮動閘極電極、閘極間絕緣膜及控制閘極電極,並且可依據累積於浮動閘極電極內之電子數目設定複數個臨限電壓。為了使基於複數個臨限電壓實行多值儲存成為可能,需要使對應於一資料之臨限電壓的分佈極端狹窄。
例如,作為可儲存四個值之多值記憶體,存在一多值記憶體,其包括一記憶體單元內之一較低序位頁面及一較高序位頁面並且藉由在各別頁面內寫入1位元資料儲存2個位元(四個值)。在將資料寫入於此一多值記憶體內的方法中,在將資料寫入於第一記憶體單元之較低序位頁面內後,將資料寫入於鄰近第一記憶體單元之記憶體單元(第二記憶體單元)的較低序位頁面內。在將資料寫入於此鄰近記憶體單元內後,將資料寫入於第一記憶體單元之較高序位頁面內(例如,參見JP-A 2004-192789(KOKAI))。
然而,在此一多值記憶體內,其中先前已寫入資料的第一記憶體單元之臨限電壓由於其中稍後寫入資料並且鄰近第一記憶體單元的第二記憶體之臨限電壓而波動。因此,在多值記憶體內,可能發生較低序位頁面破壞,其中正在將資料寫入於特定記憶體單元之較高序位頁面內時若由於(例如)電源供應之異常隔離(以下稱為短暫破壞)暫停寫入,其中先前寫入資料的較低序位頁面內之資料亦破壞。
因此,在具有作為次要儲存器件之NAND快閃記憶體的個人電腦內,例如,當由於將日誌寫入於特定記憶體單元之較高序位頁面內時的短暫破壞發生較低序位頁面資料破壞時,如美國專利申請公開案第2006/0224636號中所揭示,存在一問題,即,不僅當前正在寫入之資料破壞,甚至其中當前正在寫入資料的記憶體單元之較低序位頁面內的資料亦破壞並且無法恢復資料。換言之,存在一問題,即,針對包括具有作為次要儲存器件之NAND快閃記憶體的記憶體系統之個人電腦使用美國專利公開案第2006/0224636號中所揭示之技術拍攝備份的方法不足以將個人電腦之狀態恢復至短暫破壞前之狀態。
尤其,當在寫入於特定記憶體電晶體之較高序位頁面內期間發生短暫破壞後下一次開始記憶體系統時,在傳統方法中,無法將記憶體系統之狀態重設至短暫破壞發生前之最新狀態。未提出當短暫破壞發生時用於將記憶體系統恢復至最新狀態的處理。
依據本發明之具體實施例之一記憶體系統包含:一揮發性第一儲存單元;一非揮發性第二儲存單元,其中配置可儲存多值資料之複數個記憶體單元,該等記憶體單元具有複數個頁面;以及一控制器,其經由第一儲存單元在主機裝置與第二儲存單元之間實行資料傳送,將包括在記憶體系統之啟動操作期間儲存於第二儲存單元內之資料的儲存位置之管理資訊儲存於第一儲存單元內,以及在更新已儲存管理資訊時基於已儲存管理資訊在第一及第二儲存單元內實行資料管理。該控制器包括一保存處理單元,在以單次寫入方式將資料寫入於第二儲存單元內之前,若在具有寫入該資料之一頁面之一相同記憶體單元中之一較低序位頁面內已有資料寫入時,該保存處理單元備份較低序位頁面之資料;以及一破壞資訊恢復處理單元,當破壞較低序位頁面內之資料時,其使用藉由保存處理單元備份之資料恢復破壞資料。
下面參考附圖來詳細解釋依據本發明之一記憶體系統之示範性具體實施例。本發明並不受此具體實施例限制。
依據本發明之具體實施例的記憶體系統包括非揮發性半導體儲存器件並且係用作主機裝置(例如個人電腦)之次要儲存器件(SSD:固態驅動器)。記憶體系統具有儲存藉由欲寫入之主機裝置請求的資料並且讀出藉由欲讀出之主機裝置請求的資料以及將資料輸出至主機裝置的功能。圖1係依據本具體實施例之記憶體系統10之組態之範例的方塊圖。此記憶體系統10包括作為第一儲存單元之DRAM(動態隨機存取記憶體)11、作為第二儲存單元之NAND快閃記憶體(以下係「NAND記憶體」)12、電源供應電路13及作為控制器之驅動控制單元14。
DRAM 11係用作用於資料傳送、管理資訊記錄之儲存單元或者一工作區域。明確而言,當將DRAM 11用作用於資料傳送之儲存單元時,DRAM 11係用於在將資料寫入於NAND記憶體12內前暫時儲存藉由欲寫入之主機裝置請求的資料,並且DRAM 11係用於從NAND記憶體12讀出藉由欲讀出之主機裝置請求的資料,以及暫時儲存讀取之資料。當將DRAM 11用作用於管理資訊記錄之儲存單元時,DRAM 11係用於儲存管理資訊,其係用於管理儲存於DRAM 11及NAND記憶體12內之資料的儲存位置。當將DRAM 11用作用於工作區域之儲存單元時,例如,DRAM 11係在當恢復管理資訊時使用的日誌之擴展期間使用。
NAND記憶體12係用作用於在其中儲存資料之儲存單元。明確而言,NAND記憶體12在其中儲存藉由主機裝置指定之資料,在其中儲存藉由DRAM 11管理的用於備份之管理資訊,以及在其中儲存記憶體系統10之管理程式(韌體)。在圖1中,已顯示包括四個通道對應儲存區域120A至120D之NAND記憶體12作為範例。通道對應儲存區域120A至120D之每一者包括兩個封裝121,其各包括具有預定大小(例如,2GB)之儲存容量的八個晶片122。經由驅動控制單元14及匯流排15A至15D連接通道對應儲存區域120A至120D。連接至通道對應儲存區域120A至120D之每一者的匯流排15A至15D中之每一匯流排形成一通道。
電源供應電路13接收外部電源供應並且產生欲從外部電源供應供應至記憶體系統10之各別單元的複數個內部電源供應。電源供應電路13偵測外部電源供應之狀態,即上升邊緣或下降邊緣,基於已偵測狀態產生通電重設信號,並且輸出通電重設信號至驅動控制單元14。
驅動控制單元14控制DRAM 11及NAND記憶體12。如稍後所詳細解釋,例如,驅動控制單元14依據來自電源供應電路13之通電重設信號實行用於管理資訊之恢復處理以及用於管理資訊之儲存處理。驅動控制單元14經由ATA介面(I/F)傳輸資料至主機裝置及從主機裝置接收資料,並且經由RS232C I/F傳輸資料至除錯裝置及從除錯裝置接收資料。另外,驅動控制單元14輸出控制信號,其用於針對提供於記憶體系統10之外部上的狀態顯示器控制LED之開/關。
下文詳細解釋NAND記憶體12之組態。NAND記憶體12係藉由在基板上排列複數個區塊加以組態,其係資料抹除之單位。圖2係NAND記憶體12之任意區塊的組態之範例的電路圖。在圖2中,將左右方向設定為X方向,並且將垂直於X方向之方向設定為Y方向。
NAND記憶體12之每一區塊BLK包括(m+1)(m係等於或大於0之整數)個NAND字串NS,其係沿X方向依序排列。每一NAND字串NS具有(n+1)(n係等於或大於0之整數)個記憶體單元電晶體MT0至MTn,其共用在Y方向上彼此鄰近之記憶體單元電晶體MT間的擴散區域(源極區域或汲極區域)。另外,記憶體單元電晶體MT0至MTn係在Y方向上串聯連接。此外,將選擇電晶體ST1及ST2配置於(n+1)個記憶體電晶體MT0至MTn之一列之兩端。
每一記憶體單元電晶體MT0至MTn係具有形成於半導體基板上之堆疊閘極結構的場效電晶體。堆疊閘極結構包括一電荷累積層(浮動閘極電極),其係經由閘極絕緣膜形成於半導體基板上;以及一控制閘極電極,其係經由閘極間絕緣膜形成於電荷累積層上。另外,記憶體單元電晶體MT0至MTn係多值記憶體,其中臨限電壓依據累積於浮動閘極電極內之電子的數目改變並且可根據臨限電壓內之差異儲存兩個或兩個以上位元資料。以下解釋中假定記憶體單元電晶體MT0至MTn係可儲存四進制值之多值記憶體。然而,記憶體單元電晶體MT0至MTn可係多值記憶體,其可儲存大於四進制值之值。
將字線WL0至WLn分別連接至每一NAND字串NS之記憶體單元電晶體MT0至MTn的控制閘極電極。NAND字串NS之每一者內的記憶體單元電晶體MTi(i=0至n)係藉由相同字線(i=0至n)共同連接。換言之,將存在於區塊BLK內之相同列上的記憶體單元電晶體MTi之控制閘極電極連接至相同字線WLi。明確而言,連接至相同字線WLi的(m+1)個記憶體單元電晶體MTi之群組係形成一頁面之單位。在可儲存四進制值之多值記憶體的情形中,連接至相同字線WLi之記憶體單元電晶體MTi的群組形成兩個頁面。當其中首先寫入資料的頁面係設定為較低序位頁面並且其中接下來寫入資料的頁面係設定為較高序位頁面時,在NAND記憶體12內,以頁面單位實行資料之寫入及讀出。
將位元線BLO至BLm分別連接至一區塊BLK內之(m+1)個選擇電晶體ST1的汲極。選擇閘極線SGD係共同連接至每一NAND字串NS之選擇電晶體ST1的閘極。將選擇電晶體ST1之源極連接至記憶體單元電晶體MT0的汲極。同樣,將源極線SL共同連接至一區塊BLK內之(m+1)個選擇電晶體ST2的源極。選擇閘極線SGS係共同連接至每一NAND字串NS之選擇電晶體ST2的閘極。將選擇電晶體ST2之汲極連接至記憶體單元電晶體MTn的源極。
儘管圖式中未顯示,一區塊BLK內之位元線BLj(j=0至m)共同連接其他區塊BLK之位元線BLj間的選擇電晶體ST1之汲極。換言之,藉由相同位元線BLj連接區塊BLK內之相同行內的NAND字串NS。
在NAND記憶體12內,如上所解釋,用於寫入及讀出之最小單位係連接至相同字線WLi之記憶體單元電晶體MTi群組內的一頁面,而用於抹除之最小單位係包括預定數目之頁面的一區塊(以下稱為實體區塊)。複數個區塊形成平面,而複數個平面形成一通道對應儲存區域120A至120D。複數個通道對應儲存區域120A至120D形成一NAND記憶體12。在下文解釋之範例中,假定通道數目為四且平面數目為二。
在此記憶體系統內,通道對應儲存區域120A至120D係以複數形式彼此平行地連接至驅動控制單元14。因此,可能平行地致動複數個通道,或一次僅致動一通道。
可依據驅動控制單元14之設定以預定數目之實體區塊為單位實行寫入及讀出處理或可實行抹除。在此情形中一組預定數目之實體區塊稱為邏輯區塊。
接下來解釋DRAM 11及NAND記憶體12之功能組態。圖3A係DRAM 11之功能組態的示意圖,而圖3B係NAND記憶體12之功能組態的示意圖。如圖3A內所示,DRAM 11包括寫入快取區域,其中儲存藉由欲寫入之主機裝置請求的資料;讀取快取區域RC,其中儲存藉由欲讀出之主機裝置請求的資料;暫時儲存區域111,其中儲存管理資訊,其用於管理儲存於DRAM 11及NAND記憶體12內之資料的儲存位置;以及工作區域112,其係在恢復管理資訊時使用。
如圖3B內所示,NAND記憶體12包括資料儲存區域125,其中儲存藉由欲寫入之主機裝置請求的資料;管理資訊儲存區域126,其中儲存藉由DRAM 11之暫時儲存區域111管理的管理資訊;以及保存區域127,其中備份較低序位頁面之內容以保留自較低序位頁面資料破壞起寫入於較低序位頁面內之內容,在該較低序位頁面資料破壞中較低序位頁面係藉由在將資料寫入於記憶體單元電晶體(其中已寫入較低序位頁面)之較高序位頁面內時發生異常電源供應隔離(短暫破壞)或程式錯誤(寫入於NAND記憶體內的故障)而破壞。NAND記憶體12之資料儲存區域125係分成單次寫入區域128,其中以單次寫入方式寫入資料;以及非單次寫入區域129,其係除資料儲存區域125內之單次寫入區域128外的區域並且其中將資料共同寫入於一或預定數目之實體區塊之單位內。在此範例中,假定單次寫入區域128內之資料寫入單位係頁面大小單位,並且非單次寫入區域129內之資料寫入單位係實體區塊大小單位或與實體區塊大小單位一樣大之整數倍。因此,在資料儲存區域125內,用於儲存區塊之區域係進一步分成頁面大小單位內之區域並且加以管理。當破壞記憶體單元電晶體並且無法儲存資料時,程式錯誤發生。
下文解釋在DRAM 11之暫時儲存區域111內管理的管理資訊。圖4係用於管理儲存於記憶體系統10內之資料的層結構之範例的圖式。此處假定此資料係藉由欲寫入或讀出之主機裝置請求的資料。在記憶體系統10內,藉由三層結構實行資料管理:DRAM管理層31、邏輯NAND管理層32及實體NAND管理層33。DRAM管理層31實行DRAM 11內之資料管理,其發揮快取記憶體之作用。邏輯NAND管理層32實行NAND記憶體12內之邏輯資料管理。實體NAND管理層33實行NAND記憶體12內之實體資料管理、用於NAND記憶體12之壽命延長處理等等。
在DRAM 11之寫入快取區域WC及讀取快取區域RC內,將藉由邏輯位址(以下係「LBA(邏輯區塊位址)」)(其係藉由主機裝置之位址管理方法來管理)指定之資料儲存於DRAM 11上之預定範圍內的實體位址內(以下係「DRAM內實體位址」)。DRAM管理層31內之資料係藉由快取管理資訊41管理,其包括欲儲存之資料之LBA與DRAM內實體位址間的對應關係以及指示頁面內之區段大小單位內的資料之存在或缺少的區段旗標。
圖5以表格方式解說快取管理資訊41之範例。快取管理資訊41係用於DRAM 11之一頁面大小的一區域之一輸入項。輸入項數目等於或小於配合於寫入快取區域WC及讀取快取區域RC內的頁面數目。在輸入項之每一者內,頁面大小之資料之LBA、DRAM內實體位址及指示藉由以區段大小劃分此頁面獲得之各區域內的有效資料之位置的區段旗標係相關聯。
在NAND記憶體12內,將來自DRAM 11之資料儲存於NAND記憶體12上之預定範圍內的實體位址(以下係「NAND內實體位址」)內。在藉由多值記憶體形成之NAND記憶體12內,由於可重寫次數有限,在組態NAND記憶體12之區塊中重寫的次數係藉由欲等化之驅動控制單元14控制。換言之,當實行寫入於NAND記憶體12內之特定NAND內實體位址內的資料之更新時,驅動控制單元14實行控制以等化在組態NAND記憶體12之區塊中重寫的次數,以在不同於原始區塊之區塊內寫入資料,其反映區塊需要更新的部分,其中包括欲更新之資料並且其無效化原始區塊。
如上所解釋,在NAND記憶體12內,處理單位在用於資料之寫入及讀出處理及用於資料之抹除處理中不同。在用於資料之更新處理中,更新前資料之位置(區塊)及更新後資料之位置(區塊)不同。因此,在第一具體實施例中,除NAND內實體位址外提供在NAND記憶體12內獨立使用之NAND內邏輯位址(以下係「NAND內邏輯位址」)。
因此,邏輯NAND管理層32內之資料係藉由邏輯NAND管理資訊42管理,其指示從DRAM 11接收之頁面大小單位內之資料的LBA與NAND內邏輯位址(其指示其中儲存已接收資料的NAND記憶體12之邏輯頁面位置)間之關係以及指示具有與區塊(以下係「實體區塊」)一致之大小作為NAND記憶體12內之抹除單位的邏輯區塊之位址範圍的關係。可將複數個實體區塊之集合設定為邏輯區塊。實體NAND管理層33內之資料係藉由NAND內邏輯位址-實體位址轉換資訊(以下係「邏輯-實體轉換資訊」)管理,其包括在NAND記憶體12內作為邏輯區塊之NAND內邏輯位址與作為實體區塊之NAND內實體位址間的對應關係。
圖6以表格方式解說邏輯NAND管理資訊42之範例。圖7以表格方式解說NAND內邏輯-實體轉換資訊43之範例。如圖6內所示,邏輯NAND管理資訊42包括邏輯頁面管理資訊42a及邏輯區塊管理資訊42b。邏輯頁面管理資訊42a具有用於一頁面大小之一邏輯區域的一輸入項。各輸入項包括一頁面大小之資料的LBA、NAND內邏輯位址及指示此頁面是否有效的頁面旗標。邏輯區塊管理資訊42b包括針對NAND記憶體12之一區塊大小的邏輯區域設定之NAND內邏輯位址。
邏輯頁面管理資訊42a及邏輯區塊管理資訊42b係針對資料儲存區域125及保存區域127之每一者建立並且儲存。如圖7內所示,在NAND內邏輯-實體轉換資訊43內,NAND記憶體12之NAND內實體位址與NAND內邏輯位址係相關聯。
藉由使用該等種類之管理資訊,可建立用於主機裝置內之LBA、用於NAND記憶體12內之NAND內邏輯位址以及用於NAND記憶體12內之NAND內實體位址的對應。此使得在主機裝置與記憶體系統10之間交換資料成為可能。
藉由DRAM管理層31管理之管理資訊由於斷電等等而失去,使得此管理資訊可稱為揮發性表格。相反,若藉由邏輯NAND管理層32及實體NAND管理層33管理的管理資訊由於斷電等等而失去,失去的管理資訊阻礙記憶體系統10之成功啟動,使得需要採取措施以便即使在斷電等等之事件中也可儲存管理資訊。因此,此管理資訊可稱為非揮發性表格。
此非揮發性表格管理儲存於NAND記憶體12內之資料。若非揮發性表格不存在,則無法存取儲存於NAND記憶體12內之資訊或抹除儲存於一區域內之資料。因此,需要將非揮發性表格儲存為最新資訊以為突然斷電作準備。因此,在第一具體實施例中,包括至少非揮發性表格之管理資訊係以最新狀態儲存於NAND記憶體12之管理資訊儲存區域126內。下文解釋儲存於NAND記憶體12之管理資訊儲存區域126內的管理資訊儲存資訊。以下解釋假定僅在管理資訊儲存區域126內儲存非揮發性表格。
圖8係儲存於管理資訊儲存區域126內之管理資訊儲存資訊的內容之範例之示意圖。儲存於管理資訊儲存區域126內之管理資訊儲存資訊包括作為位於特定點之非揮發性表格之內容的快照210、當非揮發性表格及快照210(或快照210及已產生之日誌)之內容內存在變化時在改變內容後作為非揮發性表格間差異資訊的日誌220以及指示有關儲存快照210時首先獲取之快照210及日誌220之位置的指標230。快照210係藉由儲存管理資訊獲得之資訊,其包括至少在儲存於DRAM 11之暫時儲存區域111內的管理資訊中位於預定點之非揮發性表格。日誌220係在其中管理資訊改變的處理(例如,用於將資料寫入於NAND記憶體12之資料儲存區域125內的處理)前及後產生。在處理前儲存之日誌稱為預先日誌220A,而在處理後儲存之日誌稱為後日誌220B。
快照210、預先日誌220A、後日誌220B及指標230係儲存於不同區塊內。快照210係儲存於用於快照儲存之區塊內。快照210包括邏輯NAND管理資訊42及作為NAND記憶體12之管理資訊儲存區域126內之非揮發性表格的NAND內邏輯-實體轉換資訊43。一般而言,當NAND記憶體12之儲存容量等於或大於數十GB時,需要與實體區塊一樣大之整數倍之大小作為資料管理所需之管理資訊的大小。因此,此快照儲存區塊係儲存於包括複數個實體區塊之邏輯區塊內。新快照210係共同寫入於不同於用於先前儲存之快照210者的區塊內。
預先日誌220A及後日誌220B係以單次寫入方式分別儲存於預先日誌儲存區塊及後日誌儲存區塊內。即使快照210之產生改變,預先日誌220A及後日誌220B係以單次寫入方式分別連續寫入於相同預先日誌儲存區塊及相同後日誌儲存區塊內。預先日誌儲存區塊及後日誌儲存區塊之每一者包括複數個實體區塊。圖9係日誌之範例的圖式。
日誌220包括欲係變化目標之管理資訊的目標資訊、作為欲係目標資訊內之變化目標之輸入項的目標輸入項、作為欲係目標輸入項內之變化目標的項目之目標項目以及作為目標項目之變化之內容的變化內容。
指標230係儲存於指令資訊儲存區塊內。指標230僅必須係指示區塊之頂部位址的指標,其指示快照210、預先日誌220A及後日誌220B之儲存位置。然而,指示指標230內之快照210之儲存位置的一部分可係指示包括於快照210內的各別種類之管理資訊之頂部位址的一部分。當重新儲存快照210時或當改變將日誌220儲存於日誌儲存區塊內之實體區塊時更新指標230。可將預先日誌220A及後日誌220B之指標儲存於快照210內而非指令資訊儲存區塊內。
下文解釋驅動控制單元14之功能。圖10係驅動控制單元的功能組態之範例之方塊圖。驅動控制單元14包括資料管理單元141、ATA命令處理單元142、安全管理單元143、開機載入器144、初始化管理單元145及除錯支援單元146。資料管理單元141實行DRAM 11與NAND記憶體12間的資料傳送以及有關NAND記憶體12之各種功能的控制。ATA命令處理單元142基於從ATA介面接收之指令與資料管理單元141合作實行資料傳送處理。安全管理單元143與資料管理單元141及ATA命令處理單元142合作管理各種安全資訊。開機載入器144在通電期間將管理程式(韌體)從NAND記憶體12載入至未顯示之記憶體(例如,SRAM(靜態RAM))。初始化管理單元145實行驅動控制單元14內之各別控制器及電路的初始化。除錯支援單元146處理經由RS232C介面從外部供應之除錯資料。
圖11係資料管理單元141的功能組態之範例之方塊圖。資料管理單元141包括資料傳送處理單元151、管理資訊管理單元152、保存處理單元155、破壞資訊恢復處理單元156及管理資訊恢復單元157。資料傳送處理單元151實行DRAM 11與NAND記憶體12間的資料傳送。管理資訊管理單元152依據儲存於DRAM 11及NAND記憶體12內之資料的變化實行管理資訊之變化及儲存。保存處理單元155在保存區域127內保存在單次寫入區域128內之資料的單次寫入處理期間可能藉由較低序位頁面資料破壞而破壞的資料。破壞資訊恢復處理單元156使用保存區域127內之資料恢復在單次寫入區域128內之資料的單次寫入處理期間藉由較低序位頁面資料破壞而破壞的資訊。管理資訊恢復單元157基於在通電等等期間儲存於NAND記憶體12內之管理資訊恢復最新管理資訊。
管理資訊管理單元152包括管理資訊寫入單元153及管理資訊儲存單元154。當依據藉由資料傳送處理單元151對儲存於DRAM 11或NAND記憶體12內之資料的變化處理需要管理資訊之更新時,管理資訊寫入單元153實行儲存於DRAM 11內之管理資訊的更新。
當記憶體系統10滿足預定條件時,管理資訊儲存單元154在NAND記憶體12之管理資訊儲存區域126內儲存管理資訊作為快照210或儲存欲在管理資訊內更新之資訊作為日誌220。當依據快照210或日誌220(預先日誌220A及後日誌220B)之儲存改變寫入指標230之位置時,管理資訊儲存單元154亦實行用於指標230之更新處理。
當滿足關於記憶體系統10之預定條件時,藉由管理資訊儲存單元154實行快照210之儲存。例如,當提供以在NAND記憶體12之管理資訊儲存區域126內儲存日誌220(預先日誌220A及後日誌220B)的日誌儲存區域變滿時(即,該區域完全充滿資料),實行快照210之儲存。
在NAND記憶體12上之資料更新(當需要寫入於NAND記憶體12內之資料時)期間,其涉及儲存於DRAM 11內之管理資訊(非揮發性表格)的更新,藉由管理資訊儲存單元154實行日誌220(預先日誌220A及後日誌220B)之儲存。
當藉由資料傳送處理單元151或管理資訊儲存單元154將寫入資料寫入於單次寫入區域128內時,若其中寫入該寫入資料之頁面係與用於其中已寫入資料的已寫入頁面者相同的記憶體單元電晶體之不同頁面(較高序位頁面),則保存處理單元155實行用於將儲存於已寫入頁面內之已寫入資料儲存於保存區域127內以為較低序位頁面資料破壞之發生作準備,其係由於寫入資料之寫入期間的短暫破壞或程式錯誤之發生。
圖12A至12D係記憶體單元內之資料及記憶體單元之臨限電壓與NAND記憶體內之寫入順序間的關係之範例之圖式。圖13A至13E係用於解釋單次寫入處理期間的較低序位頁面資料破壞之圖式。首先,當實行抹除操作時將記憶體單元內之資料設定至「0」。其後,如圖12A內所示,當實行較低序位頁面內之寫入時,記憶體單元內之資料改變至資料「0」及資料「2」。如圖12B內所示,在較高序位頁面內之寫入前,將等於或低於實際資料之臨限電壓的資料寫入於鄰近單元內。接著,藉由寫入單元內之資料擴展資料「2」之臨限值的分佈。之後,當寫入較高序位頁面之資料時,記憶體單元內之資料改變至資料「0」至「3」,其具有如圖12C內所示之原始臨限電壓。在本具體實施例中,記憶體單元內之資料係從低至高臨限電壓加以定義。
下文解釋NAND記憶體12內之寫入處理。如圖12D內所示,針對來自靠近區塊內之源極線的記憶體單元之各頁面實行寫入操作。在圖12D中,為了便於解釋,顯示四個字線。
在第一寫入(藉由圍繞的1指示)中,將1位元資料寫入於記憶體單元1之較低序位頁面內。在第二寫入(藉由圍繞的2指示)中,將1位元資料寫入於在字線方向上鄰近記憶體單元1之記憶體單元2的較低序位頁面內。在第三寫入(藉由圍繞的3指示)中,將1位元資料寫入於在位元線方向上鄰近記憶體單元1之記憶體單元3的較低序位頁面內。在第四寫入(藉由圍繞的4指示)中,將1位元資料寫入於對角地鄰近記憶體單元1之記憶體單元4的較低序位頁面內。
在第五寫入(藉由圍繞的5指示)中,將1位元資料寫入於記憶體單元1之較高序位頁面內。在第六寫入(藉由圍繞的6指示)中,將1位元資料寫入於在字線方向上鄰近記憶體單元1之記憶體單元2的較高序位頁面內。在第七寫入(藉由圍繞的7指示)中,將1位元資料寫入於在位元線方向上鄰近記憶體單元3之記憶體單元5的較低序位頁面內。在第八寫入(藉由圍繞的8指示)中,將1位元資料寫入於對角地鄰近記憶體單元3之記憶體單元6的較低序位頁面內。
在第九寫入(藉由圍繞的9指示)中,將1位元資料寫入於記憶體單元3之較高序位頁面內。在第十寫入(藉由圍繞的10指示)中,將1位元資料寫入於在字線方向上鄰近記憶體單元3之記憶體單元4的較高序位頁面內。在第十一寫入(藉由圍繞的11指示)中,將1位元資料寫入於在位元線方向上鄰近記憶體單元5之記憶體單元7的較低序位頁面內。在第十二寫入(藉由圍繞的12指示)中,將1位元資料寫入於對角地鄰近記憶體單元5之記憶體單元8的較低序位頁面內。
在第十三寫入(藉由圍繞的13指示)中,將1位元資料寫入於記憶體單元5之較高序位頁面內。在第十四寫入(藉由圍繞的14指示)中,將1位元資料寫入於在字線方向上鄰近記憶體單元5之記憶體單元6的較高序位頁面內。在第十五寫入(藉由圍繞的15指示)中,將1位元資料寫入於記憶體單元7之較高序位頁面內。在第十六寫入(藉由圍繞的16指示)中,將1位元資料寫入於在字線方向上鄰近記憶體單元7之記憶體單元8的較高序位頁面內。
保存處理單元155儲存以上所解釋之較低序位頁面與較高序位頁面間的關係(即,可能導致較低序位頁面資料破壞之較低序位頁面與較高序位頁面間的關係)作為頁面位置資訊。
圖13A內之一實體區塊內之頁面對應於圖12A至12D。換言之,頁面1至4、7至8以及11至12係圖12A至12D內所示之較低序位頁面。頁面5至6、9至10及13至16係圖12A至12D內所示之較高序位頁面。當需要保存處理時實行的用於寫入於具有此一頁面結構之區塊內的單次寫入處理以及當不需要保存處理時實行的單次寫入處理在下文分離地解釋。在圖13A至13E中,為了便於解釋將頁面分離成較低序位頁面及較高序位頁面。然而,較低序位頁面及較高序位頁面之組合形成一實體區塊。
(1)當需要保存處理時實行的單次寫入處理 (1-1)僅在較低序位頁面內寫入資料
如圖13B內所示,當僅以單次寫入方式在較低序位頁面(例如,頁面1至4)內寫入資料時不需要保存處理。此係由於在此情形中,即使在將資料寫入於較低序位頁面內時短暫破壞發生,較低序位頁面資料破壞也不會發生。
(1-2)將資料寫入於不包括已寫入頁面之較低序位頁面及較高序位頁面內
如圖13C內所示,當將資料寫入於不包括已寫入頁面之較低序位頁面及較高序位頁面內時需要保存處理。此係由於在此情形中,將資料寫入於較低序位頁面1至4及較高序位頁面5至6內,並且由於對應於較高序位頁面5及6之較低序位頁面1及2並非已寫入頁面,較低序位頁面資料破壞不會發生。
(2)需要保存處理 (2-1)僅在較高序位頁面內寫入資料
如圖13D內所示,當僅以單次寫入方式將資料寫入於較高序位頁面內時,較低序位頁面始終係已寫入頁面。在此情形中,可能藉由其中寫入寫入資料的較高序位頁面導致較低頁面資料破壞之較低序位頁面係從頁面位置資訊計算。將儲存於較低序位頁面內之內容保存於保存區域127內。此係由於在此處理中,當在寫入於較高序位頁面內期間一短暫破壞發生,對應於其之較低序位頁面(即,與用於其中寫入資料之較高序位頁面者相同的記憶體單元電晶體之較低序位頁面)可能破壞。在圖13D內所解說之情形中,當在較高序位頁面5及6內實行寫入時,較低序位頁面1及2係從圖12A至12D內所示之頁面位置資訊保存於保存區域127內。
(2-2)將資料寫入於包括已寫入頁面之較低序位頁面及較高序位頁面內
如圖13E內所示,當將資料寫入於包括已寫入頁面之較低序位頁面及較高序位頁面內時,可能藉由其,中寫入資料中的欲寫入較高序位頁面內之資料的較高序位頁面導致較低頁面資料破壞之較低序位頁面係從頁面位置資訊計算。將儲存於較低序位頁面內之內容保存於保存區域127內。在圖13E內所解說之情形中,以單次寫入方式將資料寫入於較低序位頁面及較高序位頁面內,即頁面4至6。在此情形中,對應於寫入於較高序位頁面內的頁面5及6之較低序位頁面1及2係從圖12A至12D內所示之頁面位置資訊計算。將頁面1及2之內容保存於保存區域127內。
若在用於寫入於單次寫入區域128之較高序位頁面內的單次寫入處理期間程式錯誤或短暫破壞發生並且較低序位頁面資料破壞發生,當在程式錯誤或短暫破壞後開啟記憶體系統10之電源供應時,破壞資訊恢復處理單元156使用保存於保存區域127內之資料在較低序位頁面資料破壞發生之位置內實行用於恢復資料之處理。
當開啟記憶體系統10之電源供應時,管理資訊恢復單元157基於儲存於NAND記憶體12之管理資訊儲存區域126內之管理資訊儲存資訊實行用於管理資訊之恢復處理。明確而言,管理資訊恢復單元157依序追蹤指標230及日誌220(預先日誌220A或後日誌220B)並且決定對應於最新快照210之日誌220(預先日誌220A或後日誌220B)是否存在。當日誌220不存在時,管理資訊恢復單元157恢復DRAM 11內之快照儲存區塊內的快照210作為管理資訊。當日誌220存在時,由於異常結束(例如程式錯誤或短暫破壞)已發生,管理資訊恢復單元157從快照儲存區塊獲取快照210,從日誌儲存區塊獲取日誌220(預先日誌220A或後日誌220B),並且實行反映DRAM 11上之快照210上之日誌220的管理資訊(非揮發性表格)之恢復。
解釋用於將資料寫入於單次寫入區域128內的處理。圖14係用於將資料寫入於記憶體系統之單次寫入區域內之處理的程序之範例之流程圖。假定記憶體系統10係連接至主機裝置並且作為主機裝置之次要儲存器件操作,以及主機裝置(記憶體系統10)處於啟動狀態中。
當記憶體系統10處於開始狀態中時,保存處理單元155接收用於資料之單次寫入處理的指令(步驟S11)。保存處理單元155獲取用於欲經受單次寫入處理之資料(以下稱為寫入資料)的寫入位置(步驟S12)。其後,保存處理單元155決定已獲取寫入位置之一部分是否包括較高序位頁面並且決定對應於較高序位頁面之較低序位頁面是否係一已寫入頁面(步驟S13)。
當寫入位置之一部分包括較高序位頁面並且對應於較高序位頁面之較低序位頁面係一已寫入頁面(步驟S13處之「是」)時,保存處理單元155使用頁面位置資訊獲取較低序位頁面,其使用與用於寫入位置內之較高序位頁面者相同的記憶體單元(步驟S14)。其後,管理資訊管理單元152藉由單次寫入處理之執行決定用於管理資訊之更新排程(包括用於保存區域127內之儲存的處理)(步驟S15),並且將更新排程儲存於NAND記憶體12之管理資訊儲存區域126內作為預先日誌220A(步驟S16)。之後,保存處理單元155將儲存於在步驟S14處獲取的較低序位頁面內之資料之內容儲存於保存區域127內(步驟S17)。在以單次寫入方式將寫入資料寫入於寫入位置內(步驟S18)後,資料傳送處理單元151將後日誌220B保存於NAND記憶體12之管理資訊儲存區域126內(步驟S19),並且用於資料之單次寫入處理結束。
另一方面,當寫入位置之一部分不包括較高序位頁面時或當對應於較高序位頁面之較低序位頁面並非已寫入頁面時(步驟S13處之「否」),管理資訊管理單元152藉由單次寫入處理之執行決定用於管理資訊之更新排程(步驟S20)並且將更新排程儲存於NAND記憶體12之管理資訊儲存區域126內作為預先日誌220A(步驟S21)。之後,在以單次寫入方式將寫入資料寫入於寫入位置(步驟S22)後,資料傳送處理單元151將後日誌220B保存於NAND記憶體12之管理資訊儲存區域126內(步驟S23),並且用於資料之單次寫入處理結束。
在圖14之流程圖內所解說之處理的執行期間,一異常電源供應隔離(短暫破壞)可隨時發生。因此,寫入於NAND記憶體12內之資料及管理資訊需要始終一致。因此,設定用於保護資料之規則以在圖14內之流程圖中所解說的處理之執行期間為短暫破壞之發生作準備。圖15係解釋用於在單次寫入處理中匹配NAND記憶體內之資料及管理資訊的規則之範例之圖式。橫座標指示流逝時間t。在圖15中,在相對於以上所解釋之處理種類之任一者的用於後日誌220B之寫入處理結束(步驟S300)後,針對下一單次寫入處理實行用於預先日誌220A之寫入處理(儲存)(步驟S301)、用於寫入資料之單次寫入處理(步驟S302)及用於後日誌220B之寫入處理(儲存)(步驟S303)。
當短暫破壞自用於預先日誌220A之寫入處理(步驟S301)至用於寫入資料之單次寫入處理(步驟S302)發生時,用於將寫入資料寫入於NAND記憶體12內之處理由於短暫破壞未正確結束。在此情形中,若直至短暫破壞之發生的操作未廢除並且採用寫入於預先日誌220A內之內容作為管理資訊,則寫入實際上未寫入於NAND記憶體12內之資訊。換言之,寫入於NAND記憶體12內之資料與管理資訊之間發生失配。因此,在此情形中,直至發生短暫破壞之時間點實行的操作被廢除。廢除操作之時間跨度稱為操作廢除區段D1。
另一方面,當用於寫入資料之單次寫入處理(步驟S302)結束並且短暫破壞在用於後日誌220B之寫入處理(步驟S303)後的一階段發生時,用於將寫入資料寫入於NAND記憶體12內之處理已正確結束。在此情形中,即使直至短暫破壞之發生的操作未廢除並且採用寫入於預先日誌220A內之內容作為管理資訊,由於已將寫入資料寫入於NAND記憶體12內,不會發生問題。因此,在此情形中,決定在短暫破壞繼續之時間跨度期間執行的操作。其中決定操作之時間跨度稱為操作決策區段D2。
下文解釋在用於圖13A至13E內所示之資料的單次寫入處理期間於短暫破壞發生後用於NAND記憶體12之恢復處理。圖16及17係在短暫破壞之發生後用於寫入資料之恢復處理的範例之流程圖。如同上述解釋中,假定記憶體系統10係連接至主機裝置並且作為主機裝置之次要儲存器件操作。
首先,開啟主機裝置之電源供應並且將啟動指令發出至記憶體系統10(步驟S31)。圖10內所示之開機載入器144將未顯示之管理程式從NAND記憶體12傳送至記憶體,例如SRAM或DRAM 11(步驟S32),並且開始管理程式(步驟S33)。藉由開始管理程式,可藉由圖11中所示之資料管理單元141內的各別功能處理單元實行處理。
其後,管理資訊恢復單元157讀取NAND記憶體12之管理資訊儲存區域126內的最新指標230,並且獲取其中儲存快照210及預先日誌220A及後日誌220B之區塊之位址(步驟S34)。
管理資訊恢復單元157從在步驟S34獲取的NAND記憶體12內之位址讀取快照210,並且恢復DRAM 11之暫時儲存區域111內的快照210(步驟S35)。
管理資訊恢復單元157檢查參考NAND記憶體12內之預先日誌220A及後日誌220B之日誌的最後寫入位址,並且比較可寫入頁面位置以偵測最後寫入之日誌及用於電源供應隔離之時序(步驟S36)。之後,管理資訊恢復單元157決定短暫破壞是否已發生(步驟S37)。在決定短暫破壞是否已發生時,管理資訊恢復單元157將從針對參考快照210產生的第一預先日誌220A之寫入位置至最後寫入位置的頁面數目與以相同方式產生的第一後日誌220B之寫入位置至最後寫入位置的頁面數目相比較。當頁面數目不同時,管理資訊恢復單元157決定短暫破壞已發生。否則,管理資訊恢復單元157決定短暫破壞未發生。當頁面數目不同時,管理資訊恢復單元157比較最後寫入之日誌的內容。當內容係相同時,管理資訊恢復單元157決定短暫破壞未發生。否則,管理資訊恢復單元157決定短暫破壞已發生。
當短暫破壞未發生時(步驟S37處之「否」),管理資訊恢復單元157從在步驟S35於DRAM 11之暫時儲存區域111內恢復的快照210恢復管理資訊(步驟S38)並且恢復處理結束。
另一方面,當短暫破壞已發生時(步驟S37處之「是」),管理資訊恢復單元157決定其中短暫破壞已發生之區段是否係操作廢除區段D1(步驟S39)。當其中短暫破壞已發生之區段非操作廢除區段D1時,即,當其中短暫破壞已發生之區段係操作決策區段D2時(步驟S39處之「否」),管理資訊恢復單元157在DRAM 11之工作區域112內擴展存在於在步驟S34處獲取之儲存位置內的預先日誌220A(步驟S40)。管理資訊恢復單元157依序從最舊預先日誌220A反映快照210上之日誌,以及恢復管理資訊(步驟S41)並且恢復處理結束。
當在步驟S39中其中短暫破壞已發生之區段係操作廢除區段D1時(步驟S39處之「是」),管理資訊恢復單元157在DRAM 11之工作區域112內擴展存在於在步驟S34處獲取之儲存位置內的後日誌220B(步驟S42),並且決定是否存在以單次寫入方式寫入於保存區域127內之資料(步驟S43)。當不存在以單次寫入方式寫入於保存區域127內之資料時(步驟S43處之「否」),管理資訊恢復單元157決定是否存在以單次寫入方式寫入於單次寫入區域128內之資料(步驟S44)。當存在以單次寫入方式寫入於單次寫入區域128內之資料時(步驟S44處之「是」),其意味著電源供應隔離係用於較低序位頁面內之寫入的單次寫入處理期間之電源供應隔離;因此,管理資訊恢復單元157決定過去不存在由較低序位頁面資料破壞引起的資料破壞(步驟S45)。管理資訊恢復單元157無效化相關頁面或將相關區塊之有效頁面複製至重新保護之區塊(步驟S46)。之後,管理資訊恢復單元157從在步驟S42處擴展於DRAM 11內的最舊後日誌220B至位於廢除處理前之一階段的後日誌220B依序反映快照210上之日誌,以及恢復管理資訊(步驟S47)並且恢復處理結束。
當不存在以單次寫入方式寫入於單次寫入區域128內之資料時(步驟S44處之「否」),管理資訊恢復單元157決定短暫破壞已在實行單次寫入處理前的時間點發生(步驟S48)。因此,不需要用於單次寫入區域128內之資料的復原處理。管理資訊恢復單元157依序從在步驟S42處擴展於DRAM 11內的最舊後日誌220B反映快照210上之日誌,以及恢復管理資訊(步驟S49)並且恢復處理結束。
當存在在步驟S43處以單次寫入方式寫入於保存區域127內之資料時(步驟S43處之「是」),管理資訊恢復單元157進一步檢查是否存在以單次寫入方式寫入於單次寫入區域128內之資料(步驟S50)。當存在以單次寫入方式寫入於單次寫入區域128內之資料時(步驟S50處之「是」),其意味著電源供應隔離係用於較高序位頁面內之寫入的單次寫入處理期間之電源供應隔離;因此,管理資訊恢復單元157決定過去由於較低序位頁面資料破壞引起的資料破壞可能發生(步驟S51)。由於單次寫入區域128內之寫入處理已開始,保證用於保存區域127內之備份的處理完成。因此,管理資訊恢復單元157從保存區域127內之備份恢復單次寫入區域128內之破壞頁面,並且將頁面複製至重新保護之區塊(步驟S52)。同時,管理資訊恢復單元157依序從在步驟S42處擴展於DRAM 11內的最舊後日誌220B反映快照210上之日誌,以及恢復管理資訊(步驟S53)並且恢復處理結束。
另外,當不存在在步驟S50以單次寫入方式寫入於單次寫入區域128內之資料時(步驟S50處之「否」),短暫破壞係位於開始單次寫入區域128內之單次寫入前之一階段的短暫破壞。因此,不需要用於資料之復原處理(步驟S54)。管理資訊恢復單元157依序從在步驟S42處擴展於DRAM 11內的最舊後日誌220B反映快照210上之日誌,以及恢復管理資訊(步驟S55)並且恢復處理結束。在此情形中,管理資訊恢復單元157實行用於停用以單次寫入方式寫入於保存區域127內之頁面之內容寫入的處理。依據以上所解釋之程序,相對於單次寫入資料位於短暫破壞之發生時的恢復處理結束。
如上所解釋,依據此具體實施例,在用於寫入於包括等於或大於2位元的多值記憶體單元之NAND記憶體12內之較高序位頁面內的單次寫入處理期間,在將儲存於與經受單次寫入處理之較高序位頁面者相同的多值記憶體單元之較低序位頁面內的資料內容儲存於保存區域127內後,實行用於較高序位頁面內之寫入的處理。因此存在一效應,即使當較低序位頁面資料破壞由於寫入處理期間的短暫破壞之發生或程式錯誤之發生而發生時,可能使用儲存於保存區域127內之資料恢復藉由較低序位頁面資料破壞所破壞之資料。
在以上所解釋之範例中,形成NAND記憶體12之記憶體單元電晶體MT係等於或大於2位元之多值記憶體。然而,只要記憶體單元電晶體MT係等於或大於2位元之多值記憶體,本發明可應用於任何記憶體單元電晶體MT。在該情形中,頁面包括三個或三個以上頁面,例如較高序位頁面、中間頁面及較低序位頁面。在寫入於較高序位頁面內期間,較低序位頁面資料破壞可能發生於中間頁面及較低序位頁面內。在該情形中,將中間頁面及較低序位頁面內之資料儲存於保存區域127內。
另外,在以上解釋中,將保存區域127提供於NAND記憶體12內。然而,可將用於保存區域127之專用儲存單元提供於不同於NAND記憶體12之類型的非揮發性記憶體內。電荷累積層不限於浮動閘極類型,並且可係電荷截獲類型,其包括氮化矽膜,例如MONOS(金屬-氧化物-氮化物-氧化物-半導體)結構及其他系統。
如上所解釋,依據本發明,存在一效應,即在具有包括多值記憶體之NAND快閃記憶體的記憶體系統內,即使當短暫破壞或程式錯誤在寫入於特定記憶體單元電晶體之較高序位頁面內期間發生時,可能恢復其中已寫入資料之記憶體單元電晶體之較低序位頁面的內容。
熟習此項技術人士可易於發現額外的優點及修改。因此,本發明的廣泛態樣並不限定於本文所述的特定細節及其代表的具體實施例。因此,可進行各種修改而不脫離如藉由隨附申請專利範圍及其等效物所定義的一般發明概念之精神或範疇。
10...記憶體系統
11...DRAM(動態隨機存取記憶體)
12...NAND快閃記憶體/NAND記憶體
13...電源供應電路
14...驅動控制單元
15A至15D...匯流排
31...DRAM管理層
32...邏輯NAND管理層
33...實體NAND管理層
41...快取管理資訊
42...邏輯NAND管理資訊
42a...邏輯頁面管理資訊
42b...邏輯區塊管理資訊
43...NAND內邏輯-實體轉換資訊
111...暫時儲存區域
112...工作區域
120A至120D...通道對應儲存區域
121...封裝
122...晶片
125...資料儲存區域
126...管理資訊儲存區域
127...保存區域
128...單次寫入區域
129...非單次寫入區域
141...資料管理單元
142...ATA命令處理單元
143...安全管理單元
144...開機載入器
145...初始化管理單元
146...除錯支援單元
151...資料傳送處理單元
152...管理資訊管理單元
153...管理資訊寫入單元
154...管理資訊儲存單元
155...保存處理單元
156...破壞資訊恢復處理單元
157...管理資訊恢復單元
210...快照
220...日誌
220A...預先日誌
220B...後日誌
230...指標
BL0至BLm...位元線
BLK...區塊
D1...操作廢除區段
D2...操作決策區段
MT0至MTn...記憶體單元電晶體
NS...NAND字串
RC...讀取快取區域
SGD...選擇閘極線
SGS...選擇閘極線
SL...源極線
ST1...選擇電晶體
ST2...選擇電晶體
WC...寫入快取區域
WL0至WLn...字線
圖1係依據本發明之第一具體實施例的記憶體系統之組態之範例的方塊圖;
圖2係NAND記憶體之任意區塊的組態之範例的電路圖;
圖3A係DRAM之功能組態的示意圖,而圖3B係NAND記憶體之功能組態的示意圖;
圖4係用於管理儲存於記憶體系統內之資料的層結構之範例的圖式;
圖5解說快取管理資訊表之範例;
圖6解說邏輯NAND管理資訊表之範例;
圖7解說NAND內邏輯-實體轉換資訊表之範例;
圖8係依據第一具體實施例儲存於管理資訊儲存區域內之管理資訊儲存資訊的內容之範例之示意圖;
圖9描述日誌之範例;
圖10係圖1內所示之驅動控制單元的功能組態之範例之方塊圖;
圖11係圖11內所示之資料管理單元的功能組態之範例之方塊圖;
圖12A至12D係記憶體單元內之資料及記憶體單元之臨限電壓與NAND記憶體內之寫入順序間的關係之範例之圖式;
圖13A至13E係用於解釋單次寫入處理期間的較低序位頁面資料破壞之圖式;
圖14係用於將資料寫入記憶體系統之單次寫入區域內之處理的程序之範例之流程圖;
圖15係用於在單次寫入處理中將NAND記憶體內之資料及管理資訊對準的規則之範例之圖式;及
圖16及17係在短暫破壞之發生後用於寫入資料之恢復處理的範例之流程圖。
141...資料管理單元
151...資料傳送處理單元
152...管理資訊管理單元
153...管理資訊寫入單元
154...管理資訊儲存單元
155...保存處理單元
156...破壞資訊恢復處理單元
157...管理資訊恢復單元

Claims (15)

  1. 一種記憶體系統,其包含:一揮發性第一儲存單元;一非揮發性第二儲存單元,其中配置可儲存多值資料之複數個記憶體單元,該等記憶體單元具有複數個頁面;以及一控制器,其經由該第一儲存單元在一主機裝置與該第二儲存單元之間實行資料傳送,將包括在該記憶體系統之一啟動操作期間儲存於該第二儲存單元內的該資料之一儲存位置之管理資訊予以儲存於該第一儲存單元內,並且在更新已儲存之該管理資訊的同時,基於已儲存之該管理資訊實行該等第一及第二儲存單元內之資料管理,該控制器包括一保存處理單元,在將一第一資料寫入於該第二儲存單元內前,若在具有即將寫入該第一資料之一頁面之一相同記憶體單元中之一較低序位頁面內已有一第二資料寫入時,該保存處理單元備份該較低序位頁面之該第二資料;以及一破壞資訊恢復處理單元,當該較低序位頁面內之該第二資料被破壞時,其使用藉由該保存處理單元備份之該第二資料恢復該破壞資料。
  2. 如請求項1之記憶體系統,其中該保存處理單元基於頁面位置資訊決定是否已將該第二資料寫入於在具有將寫入該第一資料之一頁面之一相同記憶體單元中之一較低 序位頁面內,該頁面位置資訊指示用於該相同記憶體單元之不同頁面集當中的一關係。
  3. 如請求項1之記憶體系統,其中該保存處理單元在已寫入之該第二資料中備份可能在該第二儲存單元之一保存區域內被破壞的資料。
  4. 如請求項3之記憶體系統,其進一步包含:一管理資訊儲存單元,當該記憶體系統滿足一預定條件時,其將儲存於該第一儲存單元內之該管理資訊作為管理資訊儲存資訊儲存於該第二儲存單元內;以及一管理資訊恢復單元,其在該記憶體系統之該啟動操作期間,將儲存於該第二儲存單元內之該管理資訊儲存資訊中的最新管理資訊恢復於該第一儲存單元內。
  5. 如請求項4之記憶體系統,其中該管理資訊儲存資訊包括一快照,其作為位於一特定點之該管理資訊之內容;日誌,其作為當由於該第一資料之寫入而該管理資訊之內容中存在一變化時,經改變之該等內容的該管理資訊與該快照間的差異資訊,或作為該變化後之該管理資訊與該快照及一已產生日誌間的差異資訊;以及一指標,其指示該快照及有關該快照首先獲取的該日誌之該第二儲存單元內之儲存位置;該管理資訊恢復單元,其在該記憶體系統之該啟動操作期間,使用該管理資訊儲存資訊內之一最新快照、或 若該快照內存在該日誌則使用該日誌,或若存在寫入於該保存區域之該第二資料則使用該第二資料,而來將該管理資訊恢復於該第一儲存單元內。
  6. 如請求項5之記憶體系統,其中該等日誌包括在該第一資料之寫入前儲存的預先日誌,及在該第一資料之該寫入後儲存的後日誌;以及該管理資訊恢復單元將該等預先日誌及該等後日誌之任一者用於該管理資訊之恢復。
  7. 如請求項6之記憶體系統,其中當從有關一參考快照產生之該等預先日誌的一第一者的一寫入位置至一最後寫入位置的一頁面數目,與從該等後日誌之一第一者的一寫入位置至一最終寫入位置的一頁面數目相同時,該管理資訊恢復單元使用該管理資訊儲存資訊內之一最新快照將該管理資訊恢復於該第一儲存單元內。
  8. 如請求項6之記憶體系統,其中當從有關一參考快照產生之該等預先日誌的一第一者的一寫入位置至一最後寫入位置的一頁面數目與從該等後日誌之一第一者的一寫入位置至一最終寫入位置的一頁面數目不同時,以及當在該等後日誌之寫入期間一短暫破壞或一程式破壞發生時,該管理資訊恢復單元使用該管理資訊儲存資訊內之一最新快照及針對該快照儲存之所有該等預先日誌將該管理資訊恢復於該第一儲存單元內。
  9. 如請求項6之記憶體系統,其中當從有關一參考快照產生之該等預先日誌的一第一者的一寫入位置至一最後寫入位置的一頁面數目與從該等後日誌之一第一者的一寫入位置至一最終寫入位置的一頁面數目不同時,以及當在從該等預先日誌之寫入至該資料之寫入之結束的一時間跨度期間一短暫破壞或一程式破壞發生時,該管理資訊恢復單元使用該管理資訊儲存資訊內之一最新快照及通常針對該快照儲存之所有該等後日誌將該管理資訊恢復於該第一儲存單元內。
  10. 如請求項9之記憶體系統,其中該第二儲存單元具有一單次寫入區域,其中有資料寫入,且該第二儲存單元具有一非單次寫入區域,其中係將資料共同寫入於單一或一預定數目之實體區塊之單位內,以及該破壞資訊恢復處理單元依據寫入於該單次寫入區域及該非單次寫入區域內的資料之存在或缺少,來針對該單次寫入區域內之資料實行復原處理。
  11. 如請求項10之記憶體系統,其中當不存在寫入於該保存區域內的該第二資料並且存在寫入於該單次寫入區域內的該第一資料時,該破壞資訊恢復處理單元決定在寫入於一較低序位頁面之期間一短暫破壞或一程式錯誤已發生,並且實行用於使其中存在寫入的該第一資料之一頁面無效或者將其中存在寫入的該第一資料之一區塊之一 有效頁面複製至另一區塊之處理。
  12. 如請求項10之記憶體系統,其中當不存在寫入於該保存區域內之該第二資料並且亦不存在寫入於該單次寫入區域內之該第一資料時,該破壞資訊恢復處理單元不實行用於該第一資料之該復原處理。
  13. 如請求項10之記憶體系統,其中當存在寫入於該保存區域內之該第二資料並且亦存在寫入於該單次寫入區域內之該第一資料時,該破壞資訊恢復處理單元實行用於使用在該保存區域內備份之該第二資料恢復該單次寫入區域內之一破壞頁面以及將該頁面複製至另一區塊之處理。
  14. 如請求項10之記憶體系統,其中當存在寫入於該保存區域內之該第二資料並且不存在寫入於該單次寫入區域內之該第一資料時,該破壞資訊恢復處理單元不實行用於該資料之該復原處理。
  15. 如請求項1之記憶體系統,其中該第一儲存單元係一動態隨機存取記憶體(DRAM),以及該第二儲存單元係一NAND快閃記憶體。
TW098105314A 2008-02-28 2009-02-19 記憶體系統 TWI419159B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008048799A JP2009205555A (ja) 2008-02-28 2008-02-28 メモリシステム

Publications (2)

Publication Number Publication Date
TW200947439A TW200947439A (en) 2009-11-16
TWI419159B true TWI419159B (zh) 2013-12-11

Family

ID=41015905

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098105314A TWI419159B (zh) 2008-02-28 2009-02-19 記憶體系統

Country Status (7)

Country Link
US (1) US8190812B2 (zh)
EP (1) EP2248026B1 (zh)
JP (1) JP2009205555A (zh)
KR (1) KR101099804B1 (zh)
CN (1) CN101681311A (zh)
TW (1) TWI419159B (zh)
WO (1) WO2009107505A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8151060B2 (en) 2006-11-28 2012-04-03 Hitachi, Ltd. Semiconductor memory system having a snapshot function
JP2009211215A (ja) * 2008-03-01 2009-09-17 Toshiba Corp メモリシステム
JP2011048725A (ja) * 2009-08-28 2011-03-10 Panasonic Corp 不揮発性記憶装置および不揮発性メモリコントローラ
CN102053916B (zh) * 2010-12-17 2013-06-05 曙光信息产业股份有限公司 一种分配内核大片连续内存的方法
JP2012128816A (ja) 2010-12-17 2012-07-05 Toshiba Corp メモリシステム
US8745329B2 (en) * 2011-01-20 2014-06-03 Google Inc. Storing data across a plurality of storage nodes
CN102693171B (zh) * 2011-08-05 2015-11-18 新奥特(北京)视频技术有限公司 一种信息录入系统的恢复方法及系统
CN102609370B (zh) * 2012-02-06 2014-12-17 记忆科技(深圳)有限公司 防止固态硬盘数据丢失的方法及其固态硬盘
CN103377099B (zh) * 2012-04-19 2017-02-08 中国移动通信集团公司 Nfc移动终端数据备份及恢复的方法和装置
JP2013229086A (ja) * 2012-04-27 2013-11-07 Sony Corp メモリ装置、メモリ制御装置、メモリ制御方法
WO2014062191A1 (en) 2012-10-19 2014-04-24 Hewlett-Packard Development Company, L.P. Asyncrhonous consistent snapshots in persistent memory stores
KR102002826B1 (ko) 2012-12-04 2019-07-23 삼성전자 주식회사 저장 장치, 플래시 메모리 및 저장 장치의 동작 방법
US9032271B2 (en) * 2012-12-07 2015-05-12 Western Digital Technologies, Inc. System and method for lower page data recovery in a solid state drive
KR102094334B1 (ko) 2013-03-15 2020-03-27 삼성전자주식회사 비휘발성 멀티-레벨 셀 메모리 시스템 및 상기 시스템에서의 적응적 데이터 백업 방법
KR102190399B1 (ko) 2013-10-11 2020-12-11 삼성전자주식회사 신뢰성을 보장할 수 있는 불휘발성 메모리 장치의 동작 방법 및 상기 방법을 수행하는 메모리 시스템
US9245633B2 (en) 2014-01-22 2016-01-26 Htc Corporation Storage device, electronic device, and method for programming memory
US9888077B2 (en) 2014-04-22 2018-02-06 Western Digital Technologies, Inc. Metadata based data alignment in data storage systems
US9811275B2 (en) 2015-02-27 2017-11-07 Toshiba Memory Corporation Memory system and data control method
WO2016144293A1 (en) * 2015-03-06 2016-09-15 Hewlett Packard Enterprise Development Lp Controller control program
KR102405054B1 (ko) * 2015-11-27 2022-06-08 에스케이하이닉스 주식회사 메모리 장치 및 메모리 장치의 동작 방법
KR20180076605A (ko) 2016-12-28 2018-07-06 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102277728B1 (ko) * 2017-07-31 2021-07-14 삼성전자주식회사 데이터 저장 시스템, 데이터 저장 시스템의 데이터 저장 방법, 및 솔리드 스테이트 드라이브의 제조 방법
JP2020081661A (ja) * 2018-11-29 2020-06-04 キヤノン株式会社 放射線撮影システム、制御装置、制御方法及びプログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5696967A (en) * 1993-03-11 1997-12-09 Fujitsu Limited Log data management system having a plurality of processing units and a common memory
US20030033573A1 (en) * 2001-08-09 2003-02-13 Hitachi, Ltd. Memory card and memory controller
US20040042269A1 (en) * 2002-08-27 2004-03-04 Hitachi, Ltd. Nonvolatile memory apparatus
US20060041711A1 (en) * 2002-11-28 2006-02-23 Renesas Technology Corporation Memory module, memory system, and information device
US20060224636A1 (en) * 2005-04-05 2006-10-05 Microsoft Corporation Page recovery using volume snapshots and logs
US20090100290A1 (en) * 2005-08-22 2009-04-16 Matsushita Electric Industrial Co., Ltd. Memory controller, nonvolatile memory device, nonvolatile memory system, and data writing method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004062759A (ja) 2002-07-31 2004-02-26 Hitachi Ltd データベースログの管理方法、その装置およびそのプログラム
JP3935139B2 (ja) 2002-11-29 2007-06-20 株式会社東芝 半導体記憶装置
JP4805696B2 (ja) * 2006-03-09 2011-11-02 株式会社東芝 半導体集積回路装置およびそのデータ記録方式
US7945825B2 (en) * 2007-11-25 2011-05-17 Spansion Isreal, Ltd Recovery while programming non-volatile memory (NVM)
JP5010505B2 (ja) * 2008-03-01 2012-08-29 株式会社東芝 メモリシステム
JP5317689B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム
JP5198245B2 (ja) * 2008-12-27 2013-05-15 株式会社東芝 メモリシステム
JP5377175B2 (ja) * 2009-09-08 2013-12-25 株式会社東芝 コントローラ、及びデータ記憶装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5696967A (en) * 1993-03-11 1997-12-09 Fujitsu Limited Log data management system having a plurality of processing units and a common memory
US20030033573A1 (en) * 2001-08-09 2003-02-13 Hitachi, Ltd. Memory card and memory controller
US20040042269A1 (en) * 2002-08-27 2004-03-04 Hitachi, Ltd. Nonvolatile memory apparatus
US20060041711A1 (en) * 2002-11-28 2006-02-23 Renesas Technology Corporation Memory module, memory system, and information device
US20060224636A1 (en) * 2005-04-05 2006-10-05 Microsoft Corporation Page recovery using volume snapshots and logs
US20090100290A1 (en) * 2005-08-22 2009-04-16 Matsushita Electric Industrial Co., Ltd. Memory controller, nonvolatile memory device, nonvolatile memory system, and data writing method

Also Published As

Publication number Publication date
US8190812B2 (en) 2012-05-29
KR101099804B1 (ko) 2011-12-27
TW200947439A (en) 2009-11-16
EP2248026A4 (en) 2010-11-10
JP2009205555A (ja) 2009-09-10
KR20090117761A (ko) 2009-11-12
EP2248026A1 (en) 2010-11-10
EP2248026B1 (en) 2015-08-26
WO2009107505A1 (en) 2009-09-03
CN101681311A (zh) 2010-03-24
US20110185108A1 (en) 2011-07-28

Similar Documents

Publication Publication Date Title
TWI419159B (zh) 記憶體系統
US11573712B2 (en) Memory system storing management information and method of controlling same
US8285954B2 (en) Memory system managing a plurality of logs
TWI418983B (zh) 記憶體系統及控制記憶體系統之方法
US8108594B2 (en) Memory system
JP2010152514A (ja) メモリシステム
JP4551938B2 (ja) メモリシステム
JP2009211188A (ja) メモリシステム
JP2009211213A (ja) メモリシステム

Legal Events

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