TWI566094B - 資料儲存裝置及其資料更新方法 - Google Patents

資料儲存裝置及其資料更新方法 Download PDF

Info

Publication number
TWI566094B
TWI566094B TW104103674A TW104103674A TWI566094B TW I566094 B TWI566094 B TW I566094B TW 104103674 A TW104103674 A TW 104103674A TW 104103674 A TW104103674 A TW 104103674A TW I566094 B TWI566094 B TW I566094B
Authority
TW
Taiwan
Prior art keywords
page
decoding
stage
predetermined
stage decoding
Prior art date
Application number
TW104103674A
Other languages
English (en)
Other versions
TW201629770A (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
Application filed by 慧榮科技股份有限公司 filed Critical 慧榮科技股份有限公司
Priority to TW104103674A priority Critical patent/TWI566094B/zh
Priority to CN201510111030.4A priority patent/CN106033395B/zh
Priority to US14/997,916 priority patent/US10199107B2/en
Publication of TW201629770A publication Critical patent/TW201629770A/zh
Application granted granted Critical
Publication of TWI566094B publication Critical patent/TWI566094B/zh

Links

Classifications

    • 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/26Sensing or reading circuits; Data output 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3431Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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
    • G11C2029/0411Online error correction

Landscapes

  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

資料儲存裝置及其資料更新方法
本發明係關於一種記憶體裝置之資料更新方法;特別係關於一種根據電壓偏移所執行之資料更新方法。
快閃記憶體為一種普遍的非揮發性資料儲存裝置,係以電性方式抹除與程式化。以非及閘型的快閃記憶體(即NAND FLASH)為例,常用作記憶卡(memory card)、通用序列匯流排閃存裝置(USB flash device)、固態硬碟(SSD)、嵌入式快閃記憶體模組(eMMC)…等使用。
快閃記憶體(如,NAND FLASH)的儲存陣列包括複數個區塊(blocks),其中浮置閘極電晶體可用以構成快閃記憶體。浮置閘極電晶體中之浮置閘極,可捕捉的電荷以儲存資料。然而,儲存於浮置閘極之電荷會由於快閃記憶體之操作以及各種環境參數,自浮置閘極流失,造成資料保存(Data retention)之問題。
資料儲存裝置可判斷頁面之電壓分佈是否向一既定方向偏移,以判斷頁面是否發生資料保存的問題。
本發明提供一種資料儲存裝置。資料儲存裝置包括一快閃記憶體以及一控制器。控制器被設置為用以判斷快閃 記憶體中之一第一頁面是否符合一既定條件。當第一頁面符合既定條件時,控制器更新(refresh)相應於第一頁面之一區塊,其中既定條件包括第一頁面之電壓分佈向一既定方向偏移,並且既定方向是左邊。
在一實施例中,控制器係被設置為藉由一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷第一頁面之電壓分佈是否向既定方向偏移。低密度奇偶檢查錯誤校正包括複數階段解碼,並且控制器係被設置為當階段解碼中之一者成功校正第一頁面並回傳相應於負值之一校正讀取電壓時,判斷第一頁面之電壓分佈向既定方向偏移。
在另一實施例中,既定條件更包括第一頁面之電壓分佈偏移超過一既定值。控制器係被設置為藉由具有複數階段解碼之一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷第一頁面之電壓分佈偏移是否超過一既定值,其中控制器係被設置為當成功校正第一頁面之階段解碼大於一既定階段解碼時,判斷第一頁面之電壓分佈偏移超過既定值。在一實施例中,既定階段解碼係為第三階段解碼。控制器更被設置為對第一頁面進行一第一階段解碼,當第一階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第二階段解碼,當第二階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第三階段解碼,並且當第三階段解碼成功對第一頁面進行解碼並回傳具有負值之一校正讀取電壓時,判斷第一頁面之電壓分佈超過既定值並且向既定方向偏移。另外,第一階段解碼系對第一頁面重新讀取三次,第二階段解碼系對第 一頁面重新讀取五次,並且第三階段解碼系對第一頁面重新讀取七次。
又另一實施例中,控制器更被設置為根據一主機之一讀取命令對第一頁面進行一第一次讀取動作,並且當第一次讀取動作無法成功讀取第一頁面時,才進行判斷第一頁面是否符合既定條件的動作。第一讀取動作包括一錯誤校正程序(Error Correction)用以在第一讀取動作中校正第一頁面中之至少一錯誤位元。
本發明亦提供一種資料更新方法。資料更新方法包括:判斷一快閃記憶體中之一第一頁面是否符合一既定條件;以及當第一頁面符合既定條件時,更新(refresh)相應於第一頁面之一區塊,其中既定條件包括第一頁面之電壓分佈向一既定方向偏移,並且既定方向是左邊。
在一實施例中,判斷快閃記憶體中之第一頁面是否符合既定條件的步驟更包括藉由一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷第一頁面之電壓分佈是否向既定方向偏移。低密度奇偶檢查錯誤校正包括複數階段解碼,並且判斷快閃記憶體中之第一頁面是否符合既定條件的步驟更包括當階段解碼中之一者成功校正第一頁面並回傳相應於負值之一校正讀取電壓時,判斷第一頁面之電壓分佈向既定方向偏移。
在另一實施例中,既定條件更包括第一頁面之電壓分佈偏移超過一既定值。判斷快閃記憶體中之第一頁面是否符合既定條件的步驟更包括藉由包括複數階段解碼之一低密 度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷第一頁面之電壓分佈偏移是否超過一既定值,其中當成功校正第一頁面之階段解碼大於一既定階段解碼時,第一頁面之電壓分佈偏移超過既定值。在一實施例中,既定階段解碼係為第三階段解碼。上判斷快閃記憶體中之第一頁面是否符合既定條件的步驟更包括:對第一頁面進行一第一階段解碼;當第一階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第二階段解碼;當第二階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第三階段解碼;以及當第三階段解碼成功對第一頁面進行解碼並回傳具有負值之一校正讀取電壓時,判斷第一頁面之電壓分佈超過既定值並且向既定方向偏移。
又另一實施例中,資料更新方法更包括為根據一主機之一讀取命令對第一頁面進行一第一次讀取動作,其中當第一次讀取動作無法成功讀取第一頁面時,才進行判斷第一頁面是否符合既定條件的動作。第一讀取動作包括一錯誤校正程序(Error Correction)用以在第一讀取動作中校正第一頁面中之至少一錯誤位元。
100‧‧‧電子系統
120‧‧‧主機
140‧‧‧資料儲存裝置
160‧‧‧控制器
162‧‧‧運算單元
164‧‧‧永久記憶體
180‧‧‧快閃記憶體
S200-S202、S300-S308‧‧‧步驟
第1圖係本發明之一種實施例之電子系統之方塊圖。
第2圖係本發明之一種實施例之資料更新方法之流程圖。
第3圖係本發明之另一種實施例之資料更新方法之流程圖。
以下將詳細討論本發明各種實施例之裝置及使用方法。然而值得注意的是,本發明所提供之許多可行的發明概念可實施在各種特定範圍中。這些特定實施例僅用於舉例說明本發明之裝置及使用方法,但非用於限定本發明之範圍。
第1圖係本發明之一種實施例之電子系統之方塊圖。電子系統100包括一主機120以及一資料儲存裝置140。資料儲存裝置140包括一快閃記憶體180以及一控制器160,且可根據主機120所下達的命令操作。
控制器160包括一運算單元162以及一永久記憶體(如,唯讀記憶體ROM)164。永久記憶體164與所載之程式碼、資料組成韌體(firmware),由運算單元162執行,使控制器160基於該韌體控制該快閃記憶體180,其中運算單元162更包括一第一錯誤校正引擎及/或一第二錯誤校正引擎。第一錯誤校正引擎係用以在資料區段的資料發生錯誤時,對所讀取之資料區段進行一錯誤校正程序(Error Correction)。在一實施例中,第一錯誤校正引擎所執行之錯誤校正程序可為BCH錯誤校正,但本發明不限於此。第二錯誤校正引擎係用以在第一錯誤校正引擎無法將所讀取之資料區段校正為正確的資料時,對所讀取之資料區段進行另一錯誤校正。在一實施例中,第二錯誤校正引擎係為低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,但本發明不限於此。值得注意的是,第一錯誤校正引擎以及一第二錯誤校正引擎可設置於處理單元162之外,亦可同時設置於處理單元162之中,本發明不限於此。
快閃記憶體180包括複數區塊,每一區塊包括複數頁面。在一實施例中,快閃記憶體180係以頁面為單位進行讀取,並且以區塊為單位進行抹除。
值得注意的是,LDPC錯誤校正引擎可在LDPC錯誤校正的過程中,利用高斯分佈的不同級距(N2、N4、N6、N8等),追蹤(tracking)到可正確讀取資料區段的讀取電壓。BCH錯誤校正引擎則僅可根據參考細胞(reference cell)或者一重複讀取電壓表中所提供的讀取電壓,對資料進行錯誤校正。在快閃記憶體180的物理特性中,相應於頁面之電壓分佈的讀取電壓會隨著環境的變化偏移,例如溫度以及時間。在一些實施例中,控制器160根據重複讀取的次數以及錯誤位元的數量判斷頁面的資料保存(Data retention)是否已產生問題。然而,藉由重複讀取的次數以及錯誤位元的數量判斷頁面的資料保存是否產生問題的方法,容易將並未產生資料保存問題的頁面或者區塊抹除。因此,本發明之一實施例提供另一種判斷資料保存能力的方法,其中控制器160係藉由電壓分佈偏移的方向,進一步判斷頁面的資料保存(Data retention)是否已產生問題。
因此,在一實施例中,控制器160被設置為判斷快閃記憶體180中之頁面是否符合一既定條件,當頁面符合既定條件時,更新(refresh)相應於頁面之區塊,其中既定條件包括第一頁面之電壓分佈向一既定方向偏移,並且既定方向是左邊。值得注意的是,更新區塊的步驟包括將區塊中之資料寫入另一區塊,並且抹除原區塊。舉例而言,控制器160根據一主機120之一讀取命令對一第一頁面進行一第一次讀取動作。在 一實施例中,第一讀取動作包括第一錯誤校正引擎所執行之一錯誤校正程序(Error Correction),用以在第一讀取動作中校正第一頁面中之至少一錯誤位元。當第一次讀取動作無法成功讀取第一頁面時,控制器160判斷第一頁面是否符合既定條件。在判斷第一頁面是否符合既定條件的過程中,控制器160可被設置為藉由低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正(第二錯誤校正引擎),判斷第一頁面之電壓分佈是否向既定方向偏移。詳細而言,控制器160係被設置為當階段解碼中之一者成功校正第一頁面並回傳相應於負值之一校正讀取電壓時,判斷第一頁面之電壓分佈向既定方向偏移。舉例而言,相應於負值之一校正讀取電壓可為F8、F16、F24等,其中”F”代表負值,而8、16以及24代表讀取電壓偏移的程度,但本發明不限於此。其他代表負值或者代表想左偏移的電壓數值皆為相應於負值之校正讀取電壓。
在另一實施例中,既定條件更包括頁面之電壓分佈偏移超過一既定值。舉例而言,控制器160根據一主機120之一讀取命令對一第一頁面進行一第一次讀取動作。在一實施例中,第一讀取動作包括第一錯誤校正引擎所執行之一錯誤校正程序(Error Correction),用以在第一讀取動作中校正第一頁面中之至少一錯誤位元。當第一次讀取動作無法成功讀取第一頁面時,控制器160判斷第一頁面是否符合既定條件。在判斷第一頁面是否符合既定條件的過程中,控制器160可被設置為藉由低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正(第二錯誤校正引擎),判斷第一頁面之電壓分佈是否向既 定方向偏移以及是否偏移超過一既定值。詳細而言,低密度奇偶檢查錯誤校正包括複數階段解碼,其中第一階段解碼為高斯分佈之級距N4、第二階段解碼為高斯分佈之級距N6、第三階段解碼為高斯分佈之級距N8、第四階段解碼為高斯分佈之級距N10等,依此類推。另外,第一階段解碼系根據不同的讀取電壓對第一頁面重新讀取三次,第二階段解碼系根據不同的讀取電壓對第一頁面重新讀取五次,並且第三階段解碼系根據不同的讀取電壓對第一頁面重新讀取七次等,依此類推。在本發明之一實施例中,控制器160係被設置為藉由具有複數階段解碼之低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷第一頁面之電壓分佈偏移是否超過一既定值,其中控制器160係被設置為當成功校正第一頁面之階段解碼大於一既定階段解碼時,判斷第一頁面之電壓分佈偏移超過既定值。在一實施例中,既定階段解碼係為第三階段解碼。在其他實施例中,既定階段解碼亦可為第1階段解碼、第2階段解碼、第4階段解碼、第5階段解碼等,本發明不限於此。換言之,當成功校正第一頁面之階段解碼大於一第三階段解碼時,控制器160判斷第一頁面之電壓分佈偏移超過既定值。詳細而言,控制器160係被設置為對第一頁面進行一第一階段解碼,當第一階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第二階段解碼,當第二階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第三階段解碼,並且當第三階段解碼成功對第一頁面進行解碼時,讀取第三階段解碼所獲得之一校正讀取電壓。值得注意的是,當第一階段解碼或者第二階段解碼 成功解碼(校正)第一頁面時,控制器160則不更新第一頁面。在本實施例中,既定階段解碼係為第三階段解碼。因此,控制器160判斷第一頁面之電壓分佈超過既定值。接著,控制器160更用以根據校正讀取電壓的值判斷第一頁面之電壓分佈是否向既定方向(左邊)偏移。舉例而言,相應於負值之一校正讀取電壓可為F8、F16、F24等,其中”F”代表負值,而8、16以及24代表讀取電壓偏移的程度,但本發明不限於此。其他代表負值或者代表想左偏移的電壓數值皆為相應於負值之校正讀取電壓。值得注意的是,詳細的階段解碼的操作請參考下述的說明。
在第一階段解碼(N4)的過程中,控制器160對第一頁面重新讀取的動作包括:根據一預設讀取電壓對第一頁面進行第一次重新讀取;根據大於預設讀取電壓一第一既定值之讀取電壓對第一頁面進行第二次重新讀取;以及根據小於預設讀取電壓第一既定值之讀取電壓對第一頁面進行第二次重新讀取。在一實施例中,第一既定值可為8,但本發明不限於此。第一既定值可根據不同LDPC校正的設計而不同。另外,第一階段解碼可獲得一第一校正讀取電壓,其中第一校正讀取電壓是讀取電壓中較接近所偏移之電壓的一者。換言之,第一校正讀取電壓是預設讀取電壓、小於預設讀取電壓第一既定值之讀取電壓或者大於預設讀取電壓第一既定值之讀取電壓中較接近所偏移之電壓的一者。當第一校正讀取電壓無法成功讀取第一頁面時,則進行第二階段解碼。
在第二階段解碼(N6)的過程中,控制器160對第一頁面重新讀取的動作包括:根據第一校正讀取電壓對第一頁面 進行第一次重新讀取;根據大於第一校正讀取電壓一第一既定值之讀取電壓對第一頁面進行第二次重新讀取;根據小於第一校正讀取電壓第一既定值之讀取電壓對第一頁面進行第三次重新讀取;根據大於第一校正讀取電壓一第二既定值之讀取電壓對第一頁面進行第四次重新讀取;以及根據小於第一校正讀取電壓第二既定值之讀取電壓對第一頁面進行第五次重新讀取。在一實施例中,第一既定值可為8並且第二既定值為16,但本發明不限於此。第二既定值大於第一既定值,並且第一既定值以及第二既定值可根據不同LDPC校正的設計而不同。另外,第二階段解碼可獲得一第二校正讀取電壓,其中第二校正讀取電壓是讀取電壓中較接近所偏移之電壓的一者。換言之,第二校正讀取電壓是第一校正讀取電壓、小於第一校正讀取電壓第一既定值之讀取電壓、大於第一校正讀取電壓第一既定值之讀取電壓、小於第一校正讀取電壓第二既定值之讀取電壓、大於第一校正讀取電壓第二既定值之讀取電壓中較接近所偏移之電壓的一者。當第二校正讀取電壓無法成功讀取第一頁面時,則進行第三階段解碼。
在第三階段解碼(N8)的過程中,控制器160對第一頁面重新讀取的動作包括:根據第二校正讀取電壓對第一頁面進行第一次重新讀取;根據大於第二校正讀取電壓一第一既定值之讀取電壓對第一頁面進行第二次重新讀取;根據小於第二校正讀取電壓第一既定值之讀取電壓對第一頁面進行第三次重新讀取;根據大於第二校正讀取電壓一第二既定值之讀取電壓對第一頁面進行第四次重新讀取;根據小於第二校正讀取電 壓第二既定值之讀取電壓對第一頁面進行第五次重新讀取;根據大於第二校正讀取電壓一第三既定值之讀取電壓對第一頁面進行第六次重新讀取;以及根據小於第二校正讀取電壓第三既定值之讀取電壓對第一頁面進行第七次重新讀取。在一實施例中,第一既定值可為8、第二既定值為16並且第三既定值為24,但本發明不限於此。第三既定值大於第二既定值並且第二既定值大於第一既定值,並且第一既定值、第二既定值以及第三既定值可根據不同LDPC校正的設計而不同。另外,第三階段解碼可獲得一第三校正讀取電壓,其中第三校正讀取電壓是讀取電壓中較接近所偏移之電壓的一者。換言之,第三校正讀取電壓是第二校正讀取電壓、小於第二校正讀取電壓第一既定值之讀取電壓、大於第二校正讀取電壓第一既定值之讀取電壓、小於第二校正讀取電壓第二既定值之讀取電壓、大於第二校正讀取電壓第二既定值之讀取電壓、小於第二校正讀取電壓第三既定值之讀取電壓、大於第二校正讀取電壓第三既定值之讀取電壓中較接近所偏移之電壓的一者。當第三校正讀取電壓無法成功讀取第一頁面時,則進行第四階段解碼,依此類推,直到階段解碼所獲得之校正電壓可成功校正第一頁面,或者進行到第N個階段解碼。舉例而言,第N個階段解碼可為第3個階段解碼、第4個階段解碼、第5個階段解碼或者第6個階段解碼,但本發明不限於此。當第N個階段解碼也無法成功校正頁面時,控制器160則標記該頁面或者相應於頁面之區塊損壞。當成功解碼第一頁面之階段解碼大於既定階段解碼時,控制器160判斷第一頁面之電壓分佈超過既定值。接著,控制器160更 用以根據成功解碼第一頁面之階段解碼所產生的校正讀取電壓,判斷第一頁面之電壓分佈是否向既定方向(左邊)偏移。舉例而言,相應於負值之一校正讀取電壓可為F8、F16、F24等,其中”F”代表負值,而8、16以及24代表讀取電壓偏移的程度,但本發明不限於此。其他代表負值或者代表想左偏移的電壓數值皆為相應於負值之校正讀取電壓。
第2圖係本發明之一種實施例之資料更新方法之流程圖。資料更新方法適用於第1圖所示之資料儲存裝置140。在第2圖的實施例中,既定條件包括第一頁面之電壓分佈向一既定方向偏移。步驟開始於S200。
在步驟S200中,控制器160被設置為用以判斷一快閃記憶體180中之一第一頁面是否符合既定條件。換言之,控制器160被設置為用以判斷第一頁面之電壓分佈是否向一既定方向偏移。在一實施例中,既定方向是左邊。當第一頁面符合既定條件時,流程進行至步驟S202;否則,流程結束於步驟S200。在一實施例中,控制器160系藉由一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷第一頁面之電壓分佈是否向既定方向偏移。詳細而言,低密度奇偶檢查錯誤校正包括複數階段解碼,當階段解碼中之一者成功校正第一頁面並回傳相應於負值之一校正讀取電壓時,控制器160判斷第一頁面之電壓分佈向既定方向偏移。
在步驟S202中,控制器160被設置為用以更新(refresh)相應於第一頁面之一區塊。換言之,控制器160被設置為用以更新(refresh)相應於包括第一頁面之區塊。換言之,控 制器160被設置為將包括第一頁面之一第一區塊中之資料寫入另一第二區塊,並且抹除第一區塊。流程結束於步驟S202。
第3圖係本發明之另一種實施例之資料更新方法之流程圖。資料更新方法適用於第1圖所示之資料儲存裝置140。在第3圖的實施例中,既定條件包括第一頁面之電壓分佈向一既定方向偏移以及第一頁面之電壓分佈偏移超過一既定值。步驟開始於S300。
在步驟S300中,控制器160被設置為用以根據一主機120之一讀取命令對第一頁面進行一第一次讀取動作。當第一次讀取動作無法成功讀取第一頁面時,流程進行至步驟S302以藉由步驟S302以及S306判斷第一頁面是否符合一既定條件。當第一次讀取動作成功讀取第一頁面時,流程結束於步驟S300。在一實施例中,第一讀取動作包括一錯誤校正程序(Error Correction)用以在第一讀取動作中校正第一頁面中之至少一錯誤位元。舉例而言,錯誤校正程序可為由第一錯誤校正引擎所執行之BCH錯誤校正,但本發明不限於此。
接著,在步驟S302中,控制器160藉由一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,對第一頁面進行校正。值得注意的是,LDPC錯誤校正引擎可在LDPC錯誤校正的過程中,利用高斯分佈的不同級距(N2、N4、N6、N8等),追蹤(tracking)到可正確讀取資料區段的讀取電壓。詳細而言,低密度奇偶檢查錯誤校正包括複數階段解碼,其中第一階段解碼為高斯分佈之級距N4、第二階段解碼為高斯分佈之級距N6、第三階段解碼為高斯分佈之級距N8、第四階 段解碼為高斯分佈之級距N10等,依此類推。另外,第一階段解碼系根據不同的讀取電壓對第一頁面重新讀取三次,第二階段解碼系根據不同的讀取電壓對第一頁面重新讀取五次,並且第三階段解碼系根據不同的讀取電壓對第一頁面重新讀取七次等,依此類推。當低密度奇偶檢查錯誤校正成功校正第一頁面的資料時,流程進行至步驟S306。當低密度奇偶檢查錯誤無法校正成功校正第一頁面的資料時,流程進行至步驟S304。
在步驟S304中,控制器160被設置為將第一頁面標記為損壞或者將包括第一頁面之區塊標記為損壞。流程結束於步驟S304。
在步驟S306中,控制器160被設置為判斷第一頁面之電壓分佈是否向既定方向偏移以及是否偏移超過一既定值。詳細而言,低密度奇偶檢查錯誤校正包括複數階段解碼,其中第一階段解碼為高斯分佈之級距N4、第二階段解碼為高斯分佈之級距N6、第三階段解碼為高斯分佈之級距N8、第四階段解碼為高斯分佈之級距N10等,依此類推。另外,第一階段解碼系根據不同的讀取電壓對第一頁面重新讀取三次,第二階段解碼系根據不同的讀取電壓對第一頁面重新讀取五次,並且第三階段解碼系根據不同的讀取電壓對第一頁面重新讀取七次等,依此類推。當成功校正第一頁面之階段解碼大於一既定階段解碼時,控制器160判斷第一頁面之電壓分佈偏移超過既定值。在一實施例中,既定階段解碼係為第三階段解碼。在其他實施例中,既定階段解碼亦可為第1階段解碼、第2階段解碼、第4階段解碼、第5階段解碼等,本發明不限於此。換言之, 當成功校正第一頁面之階段解碼大於一第三階段解碼時,控制器160判斷第一頁面之電壓分佈偏移超過既定值。詳細而言,控制器160係被設置為對第一頁面進行一第一階段解碼,當第一階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第二階段解碼,當第二階段解碼無法成功對第一頁面進行解碼時,對第一頁面進行一第三階段解碼,並且當第三階段解碼成功對第一頁面進行解碼時,讀取第三階段解碼所獲得之一校正讀取電壓。在本實施例中,既定階段解碼係為第三階段解碼。因此,控制器160判斷第一頁面之電壓分佈超過既定值。接著,控制器160更用以根據校正讀取電壓的值判斷第一頁面之電壓分佈是否向既定方向(左邊)偏移。舉例而言,相應於負值之一校正讀取電壓可為F8、F16、F24等,其中”F”代表負值,但本發明不限於此。其他代表負值或者代表想左偏移的電壓數值皆為相應於負值之校正讀取電壓。當第一頁面之電壓分佈是向既定方向偏移以及偏移超過既定值時,流程進行至步驟S308;否則,流程結束於步驟S306。
在步驟S308,控制器160被設置為用以更新(refresh)相應於第一頁面之一區塊。換言之,控制器160被設置為用以更新(refresh)相應於包括第一頁面之區塊。換言之,控制器160被設置為將包括第一頁面之一第一區塊中之資料寫入另一第二區塊,並且抹除第一區塊。流程結束於步驟S308。
本發明所提供之資料儲存裝置140可判斷頁面之電壓分佈是否向一既定方向偏移,以判斷頁面是否發生資料保存(Data retention)的問題。
本發明之方法,或特定型態或其部份,可以以程式碼的型態存在。程式碼可儲存於實體媒體,如軟碟、光碟片、硬碟、或是任何其他機器可讀取(如電腦可讀取)儲存媒體,亦或不限於外在形式之電腦程式產品,其中,當程式碼被機器,如電腦載入且執行時,此機器變成用以參與本發明之裝置。程式碼也可透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態進行傳送,其中,當程式碼被機器,如電腦接收、載入且執行時,此機器變成用以參與本發明之裝置。當在一般用途處理單元實作時,程式碼結合處理單元提供一操作類似於應用特定邏輯電路之獨特裝置。
惟以上所述者,僅為本發明之較佳實施例而已,當不能以此限定本發明實施之範圍,即大凡依本發明申請專利範圍及發明說明內容所作之簡單的等效變化與修飾,皆仍屬本發明專利涵蓋之範圍內。另外本發明的任一實施例或申請專利範圍不須達成本發明所揭露之全部目的或優點或特點。此外,摘要部分和標題僅是用來輔助專利文件搜尋之用,並非用來限制本發明之權利範圍。
100‧‧‧電子系統
120‧‧‧主機
140‧‧‧資料儲存裝置
160‧‧‧控制器
162‧‧‧運算單元
164‧‧‧永久記憶體
180‧‧‧快閃記憶體

Claims (20)

  1. 一種資料儲存裝置,包括:一快閃記憶體;以及一控制器,響應於上述快閃記憶體中之一第一頁面符合一既定條件,更新(refresh)相應於上述第一頁面之一區塊,其中上述既定條件包括上述第一頁面之電壓分佈向一既定方向偏移,並且上述既定方向是左邊。
  2. 根據申請專利範圍第1項之資料儲存裝置,其中上述控制器係被設置為藉由一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷上述第一頁面之電壓分佈是否向上述既定方向偏移。
  3. 根據申請專利範圍第2項之資料儲存裝置,其中上述低密度奇偶檢查錯誤校正包括複數階段解碼,並且上述控制器係被設置為當上述階段解碼中之一者成功校正上述第一頁面並回傳相應於負值之一校正讀取電壓時,判斷上述第一頁面之電壓分佈向上述既定方向偏移。
  4. 根據申請專利範圍第1項之資料儲存裝置,其中上述既定條件更包括上述第一頁面之電壓分佈偏移超過一既定值。
  5. 根據申請專利範圍第4項之資料儲存裝置,其中上述控制器係被設置為藉由具有複數階段解碼之一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷上述第一頁面之電壓分佈偏移是否超過一既定值,其中上述控制器係被設置為當成功校正上述第一頁面之上述階段解碼大於一既定階段解碼時,判斷上述第一頁面之電壓分佈 偏移超過上述既定值。
  6. 根據申請專利範圍第5項之資料儲存裝置,其中上述既定階段解碼係為第三階段解碼。
  7. 根據申請專利範圍第4項之資料儲存裝置,其中上述控制器更被設置為對上述第一頁面進行一第一階段解碼,當上述第一階段解碼無法成功對上述第一頁面進行解碼時,對上述第一頁面進行一第二階段解碼,當上述第二階段解碼無法成功對上述第一頁面進行解碼時,對上述第一頁面進行一第三階段解碼,並且當上述第三階段解碼成功對上述第一頁面進行解碼並回傳具有負值之一校正讀取電壓時,判斷上述第一頁面之電壓分佈超過上述既定值並且向上述既定方向偏移。
  8. 根據申請專利範圍第7項之資料儲存裝置,其中上述第一階段解碼系對上述第一頁面重新讀取三次,上述第二階段解碼系對上述第一頁面重新讀取五次,並且上述第三階段解碼系對上述第一頁面重新讀取七次。
  9. 根據申請專利範圍第1項之資料儲存裝置,其中上述控制器更被設置為根據一主機之一讀取命令對上述第一頁面進行一第一次讀取動作,並且當上述第一次讀取動作無法成功讀取上述第一頁面時,才進行判斷上述第一頁面是否符合上述既定條件的動作。
  10. 根據申請專利範圍第9項之資料儲存裝置,其中上述第一讀取動作包括一錯誤校正程序(Error Correction)用以在上述第一讀取動作中校正上述第一頁面中之至少一錯誤位元。
  11. 一種資料更新方法,包括:響應於一快閃記憶體中之一第一頁面符合一既定條件,更新(refresh)相應於上述第一頁面之一區塊,其中上述既定條件包括上述第一頁面之電壓分佈向一既定方向偏移,並且上述既定方向是左邊。
  12. 根據申請專利範圍第11項之資料更新方法,更包括判斷上述第一頁面是否符合一既定條件,其中上述判斷上述快閃記憶體中之上述第一頁面是否符合上述既定條件的步驟更包括藉由一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷上述第一頁面之電壓分佈是否向上述既定方向偏移。
  13. 根據申請專利範圍第12項之資料更新方法,其中上述低密度奇偶檢查錯誤校正包括複數階段解碼,並且上述判斷上述快閃記憶體中之上述第一頁面是否符合上述既定條件的步驟更包括當上述階段解碼中之一者成功校正上述第一頁面並回傳相應於負值之一校正讀取電壓時,判斷上述第一頁面之電壓分佈向上述既定方向偏移。
  14. 根據申請專利範圍第11項之資料更新方法,其中上述既定條件更包括上述第一頁面之電壓分佈偏移超過一既定值。
  15. 根據申請專利範圍第14項之資料更新方法,更包括判斷上述第一頁面是否符合一既定條件,其中上述判斷上述快閃記憶體中之上述第一頁面是否符合上述既定條件的步驟更包括藉由包括複數階段解碼之一低密度奇偶檢查(Low-density parity-check code,LDPC)錯誤校正,判斷上 述第一頁面之電壓分佈偏移是否超過一既定值,其中當成功校正上述第一頁面之上述階段解碼大於一既定階段解碼時,上述第一頁面之電壓分佈偏移超過上述既定值。
  16. 根據申請專利範圍第15項之資料更新方法,其中上述既定階段解碼係為第三階段解碼。
  17. 根據申請專利範圍第14項之資料更新方法,更包括判斷上述第一頁面是否符合一既定條件,其中上述判斷上述快閃記憶體中之上述第一頁面是否符合上述既定條件的步驟更包括:對上述第一頁面進行一第一階段解碼;當上述第一階段解碼無法成功對上述第一頁面進行解碼時,對上述第一頁面進行一第二階段解碼;當上述第二階段解碼無法成功對上述第一頁面進行解碼時,對上述第一頁面進行一第三階段解碼;以及當上述第三階段解碼成功對上述第一頁面進行解碼並回傳具有負值之一校正讀取電壓時,判斷上述第一頁面之電壓分佈超過上述既定值並且向上述既定方向偏移。
  18. 根據申請專利範圍第17項之資料更新方法,其中上述第一階段解碼系對上述第一頁面重新讀取三次,上述第二階段解碼系對上述第一頁面重新讀取五次,並且上述第三階段解碼系對上述第一頁面重新讀取七次。
  19. 根據申請專利範圍第11項之資料更新方法,更包括:根據一主機之一讀取命令對上述第一頁面進行一第一次讀取動作;以及 當上述第一次讀取動作無法成功讀取上述第一頁面時,判斷上述第一頁面是否符合上述既定條件。
  20. 根據申請專利範圍第19項之資料更新方法,其中上述第一讀取動作包括一錯誤校正程序(Error Correction)用以在上述第一讀取動作中校正上述第一頁面中之至少一錯誤位元。
TW104103674A 2015-02-04 2015-02-04 資料儲存裝置及其資料更新方法 TWI566094B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW104103674A TWI566094B (zh) 2015-02-04 2015-02-04 資料儲存裝置及其資料更新方法
CN201510111030.4A CN106033395B (zh) 2015-02-04 2015-03-13 数据储存装置及其数据更新方法
US14/997,916 US10199107B2 (en) 2015-02-04 2016-01-18 Data storage device and data refresh method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW104103674A TWI566094B (zh) 2015-02-04 2015-02-04 資料儲存裝置及其資料更新方法

Publications (2)

Publication Number Publication Date
TW201629770A TW201629770A (zh) 2016-08-16
TWI566094B true TWI566094B (zh) 2017-01-11

Family

ID=56554620

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104103674A TWI566094B (zh) 2015-02-04 2015-02-04 資料儲存裝置及其資料更新方法

Country Status (3)

Country Link
US (1) US10199107B2 (zh)
CN (1) CN106033395B (zh)
TW (1) TWI566094B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111880736B (zh) * 2020-07-28 2022-08-16 苏州浪潮智能科技有限公司 一种固态硬盘访问方法、装置、设备及介质
CN112558871B (zh) * 2020-12-11 2022-12-20 成都佰维存储科技有限公司 闪存数据保存分析方法、装置、可读存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102483952A (zh) * 2009-11-06 2012-05-30 株式会社东芝 存储系统
TW201403318A (zh) * 2012-07-02 2014-01-16 Infomicro Electronics Shenzhen Ltd 具耐用轉換層並能轉移暫存讓記憶體耐磨損的硬碟驅動器
US20140059396A1 (en) * 2012-08-27 2014-02-27 Kabushiki Kaisha Toshiba Memory system having nand-type flash memory and memory controller used in the system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4256198B2 (ja) * 2003-04-22 2009-04-22 株式会社東芝 データ記憶システム
JP2008117471A (ja) * 2006-11-02 2008-05-22 Toshiba Corp 不揮発性半導体記憶装置及び不揮発性メモリシステム
FR2914447B1 (fr) * 2007-03-28 2009-06-26 St Microelectronics Sa Dispositif electronique de decalage de donnees en particulier pour du codage/decodage avec un code ldpc
US8681569B2 (en) * 2012-02-22 2014-03-25 Silicon Motion, Inc. Method for reading data stored in a flash memory according to a threshold voltage distribution and memory controller and system thereof
CN104167220B (zh) * 2013-05-16 2018-06-15 群联电子股份有限公司 数据读取方法、控制电路、存储器模块与存储器存储装置
KR102070667B1 (ko) * 2013-08-26 2020-01-29 삼성전자주식회사 비휘발성 메모리 장치의 구동 방법
US8713399B1 (en) * 2013-10-10 2014-04-29 Antcor S.A. Reconfigurable barrel shifter and rotator
US9208083B2 (en) * 2013-12-04 2015-12-08 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method to interleave memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102483952A (zh) * 2009-11-06 2012-05-30 株式会社东芝 存储系统
TW201403318A (zh) * 2012-07-02 2014-01-16 Infomicro Electronics Shenzhen Ltd 具耐用轉換層並能轉移暫存讓記憶體耐磨損的硬碟驅動器
US20140059396A1 (en) * 2012-08-27 2014-02-27 Kabushiki Kaisha Toshiba Memory system having nand-type flash memory and memory controller used in the system

Also Published As

Publication number Publication date
US20160225460A1 (en) 2016-08-04
US10199107B2 (en) 2019-02-05
CN106033395A (zh) 2016-10-19
CN106033395B (zh) 2019-11-22
TW201629770A (zh) 2016-08-16

Similar Documents

Publication Publication Date Title
US10474529B2 (en) Error checking and correcting decoding method and apparatus
US9257204B2 (en) Read voltage setting method, and control circuit, and memory storage apparatus using the same
KR101576102B1 (ko) 플래시 메모리의 블록으로부터 데이터를 판독하는 방법 및 관련 메모리 장치
US9543983B2 (en) Decoding method, memory storage device and memory control circuit unit
US9025374B2 (en) System and method to update read voltages in a non-volatile memory in response to tracking data
US8996950B2 (en) Erasure correction using single error detection parity
US10067824B2 (en) Error processing method, memory storage device and memory controlling circuit unit
TWI523025B (zh) 資料儲存裝置及其錯誤校正方法
TWI512732B (zh) 解碼方法、記憶體儲存裝置與非揮發性記憶體模組
US9514848B2 (en) Solid state drive and associated error check and correction method
US9312885B2 (en) Nonvolatile semiconductor memory system error correction capability of which is improved
TWI571742B (zh) 資料儲存裝置及資料維護方法
US8316279B2 (en) Method of estimating and correcting errors in memory cells
KR20130027138A (ko) 에러 정정 방법 및 이를 이용하는 메모리 장치
TWI741128B (zh) 記憶體系統及用於操作半導體記憶體裝置的方法
TWI501245B (zh) 資料讀取方法、控制電路、記憶體模組與記憶體儲存裝置
TWI566094B (zh) 資料儲存裝置及其資料更新方法
KR20220072380A (ko) 컨트롤러 및 컨트롤러의 동작방법
US10019186B2 (en) Data maintenance method for error control and data storage device using the same
TWI527050B (zh) 資料儲存裝置及其錯誤校正方法以及資料讀取方法
US20230298685A1 (en) Memory system and method
TWI515729B (zh) 資料儲存裝置及其錯誤校正方法