TWI604441B - 用來判斷固態硬碟之資料區塊可再使用性的固態硬碟控制電路 - Google Patents

用來判斷固態硬碟之資料區塊可再使用性的固態硬碟控制電路 Download PDF

Info

Publication number
TWI604441B
TWI604441B TW105108049A TW105108049A TWI604441B TW I604441 B TWI604441 B TW I604441B TW 105108049 A TW105108049 A TW 105108049A TW 105108049 A TW105108049 A TW 105108049A TW I604441 B TWI604441 B TW I604441B
Authority
TW
Taiwan
Prior art keywords
data
read
data block
solid state
hard disk
Prior art date
Application number
TW105108049A
Other languages
English (en)
Other versions
TW201727627A (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 瑞昱半導體股份有限公司
Publication of TW201727627A publication Critical patent/TW201727627A/zh
Application granted granted Critical
Publication of TWI604441B publication Critical patent/TWI604441B/zh

Links

Classifications

    • 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/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • 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/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • 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/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • G11C29/765Masking faults in memories by using spares or by reconfiguring using address translation or modifications in solid state disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/818Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for dual-port memories
    • 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/36Data generation devices, e.g. data inverters

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

用來判斷固態硬碟之資料區塊可再使用性的固態硬碟控制電路
本發明有關固態硬碟,尤指一種用來判斷固態硬碟之資料區塊可再使用性(reusability)的固態硬碟控制電路。
眾所周知,固態硬碟(solid state drive,SSD)裝置中所儲存的資料,會因為讀取干擾(read disturb)、超過資料保持(data retention)期限、資料區塊達到存取次數上限、或是資料區塊發生異常的提早衰退等各種原因而遺失。
現有技術只能依據抹除次數來判斷資料區塊是否已達存取次數限制,卻無法判斷資料遺失究竟是否肇因於資料區塊發生提早衰退的異常情況。倘若抹除次數未達上限、但已提早衰退的異常資料區塊繼續被用來儲存資料,將導致資料遺失的問題不斷發生,嚴重影響固態硬碟裝置的可靠度。
有鑑於此,如何有效判斷資料區塊是否發生非預期性的提早衰退情況,實為業界有待解決的問題。
本說明書提供一種用於一固態硬碟裝置中的固態硬碟控制電路的實施例,其中,該固態硬碟裝置包含一固態硬碟以及一通信介面。該固態硬碟控制電路包含:一讀寫電路,用於耦接該固態硬碟; 以及一快閃記憶體控制電路,耦接於該讀寫電路並用於耦接該通信介面,且設置成進行以下運作:透過該讀寫電路讀取該固態硬碟之一第一資料區塊中的資料,並對讀出的資料進行錯誤檢查與校正;若發現從該第一資料區塊讀出的資料具有無法校正的錯誤,則搬移該第一資料區塊中的資料;透過該讀寫電路抹除該第一資料區塊;透過該讀寫電路將測試資料寫入該第一資料區塊;等待一預定時間後,透過該讀寫電路讀取該第一資料區塊中的測試資料,並對讀出的資料進行錯誤檢查與校正;記錄該第一資料區塊的資料錯誤次數;以及根據該第一資料區塊的資料錯誤次數,判斷該第一資料區塊之可再使用性。
上述實施例的優點之一,是可準確、有效地判斷資料區塊之可再使用性。
本發明的其他優點將藉由以下的說明和圖式進行更詳細的解說。
100‧‧‧固態硬碟裝置
110‧‧‧固態硬碟
111、113、115、117‧‧‧資料區塊
120‧‧‧通信介面
130‧‧‧儲存電路
140‧‧‧固態硬碟控制電路
141‧‧‧讀寫電路
143‧‧‧快閃記憶體控制電路
210~280‧‧‧方法流程
圖1為本發明一實施例的固態硬碟裝置簡化後的功能方塊圖。
圖2為本發明一實施例之判斷固態硬碟之資料區塊可再使用性的方法簡化後的流程圖。
以下將配合相關圖式來說明本發明的實施例。在圖式中,相同的標號表示相同或類似的元件或方法流程。
圖1為本發明一實施例的固態硬碟裝置(solid state drive device,SSD device)100簡化後的功能方塊圖。固態硬碟裝置100包含一固態硬碟(SSD)110、一通信介面(communication interface)120、一儲存電路130、以及一固態硬碟控制電路(SSD controlling circuit)140。
固態硬碟110中包含多個實體資料區塊(physical data block),例如圖1中的示例性第一資料區塊111、第二資料區塊113、第三資料區塊115、及第四資料區塊117。通信介面120設置成與一主控裝置(host device,未繪示)進行資料通信。固態硬碟控制電路140則包含一讀寫電路(read and write circuit)141以及一快閃記憶體控制電路(flash memory controlling circuit)143。
如圖1所示,讀寫電路141耦接於固態硬碟110。快閃記憶體控制電路143耦接於讀寫電路141並用於耦接通信介面120及儲存電路130,且設置成控制固態硬碟110的存取運作。
實作上,通信介面120可用序列式先進附加技術(Serial Advanced Technology Attachment,SATA)介面、快速週邊組件互連(peripheral component interconnect express,PCIe)介面、或是以上兩者的組合來實現。另外,儲存電路130可獨立設置於固態硬碟控制電路140之外,也可以整合到固態硬碟控制電路140中。
為了說明上的方便,在圖1中並未繪示固態硬碟裝置100中的其他元件及相關的連接、運作、與實施方式。
以下將搭配圖2來進一步說明固態硬碟裝置100的運作方式。
圖2為本發明一實施例之判斷固態硬碟110之資料區塊可再使用性(reusability)的方法簡化後的流程圖。
在流程210中,固態硬碟控制電路140的快閃記憶體控制電路143,可透過讀寫電路141讀取固態硬碟110之一標的資料區塊中的資料,並對讀出的資料進行錯誤檢查與校正。
實作上,快閃記憶體控制電路143可設置成在透過通信介面120接收到主控裝置傳來的讀取指令時,進行圖2中的流程210,也可以 設置成在主控裝置無需存取固態硬碟110的空閒時段中主動進行流程210。因此,前述的標的資料區塊可以是主控裝置指定要讀取的資料區塊,也可以是快閃記憶體控制電路143主動選來進行測試的資料區塊。
為了方便說明起見,以下假設前述之標的資料區塊是第一資料區塊111。
若從第一資料區塊111讀出的資料沒有出現錯誤,或是雖有出現些許錯誤但都可被校正,則快閃記憶體控制電路143進行流程220。
反之,若快閃記憶體控制電路143偵測出從第一資料區塊111讀出的資料具有無法校正的錯誤,則會進行流程230及後續的區塊測試運作,以檢測第一資料區塊111是否發生異常。
在流程220中,快閃記憶體控制電路143對讀出的資料進行正常處理。例如,若快閃記憶體控制電路143是在接收到主控裝置傳來的讀取指令時進行流程210,則快閃記憶體控制電路143在流程220中可透過通信介面120將讀出的資料傳送給主控裝置。若快閃記憶體控制電路143是在空閒時段中主動進行流程210,則快閃記憶體控制電路143在流程220中也可不對讀出的資料進行任何處理。
在流程230中,快閃記憶體控制電路143可搬移第一資料區塊111中的資料至另一資料區塊中儲存,例如,第四資料區塊117。
在流程240中,快閃記憶體控制電路143可透過讀寫電路141抹除第一資料區塊111。
在流程250中,快閃記憶體控制電路143可透過讀寫電路141將測試資料寫入第一資料區塊111中。例如,快閃記憶體控制電路143可利用一第一寫入模式將測試資料寫入第一資料區塊111的所有 實體頁(physical page)中。快閃記憶體控制電路143可將前述的第一寫入模式,設置成與快閃記憶體控制電路143在流程210中所讀取的資料的原始寫入模式相同,以減少測試區塊過程中的可能變數,藉此提升資料區塊測試的準確度。
例如,假設一般資料區塊常用的寫入模式有三種,分別為每儲存單元一位元(one-bit-per-cell,1bpc)模式、每儲存單元兩位元(two-bit-per-cell,2bpc)模式、以及每儲存單元三位元(three-bit-per-cell,3bpc)模式。
在此情況下,倘若在快閃記憶體控制電路143進行流程210的時點,第一資料區塊111中的資料的原始寫入模式是1bpc模式,則快閃記憶體控制電路143在流程250中也會利用1bpc模式將測試資料寫入第一資料區塊111中。倘若第一資料區塊111中的資料的原始寫入模式是3bpc模式,則快閃記憶體控制電路143在流程250中也會利用3bpc模式將測試資料寫入第一資料區塊111中。
在流程260中,快閃記憶體控制電路143會在等待一預定時間後,透過讀寫電路141讀取第一資料區塊111中的測試資料,並對讀出的資料進行錯誤檢查與校正。
倘若在完成流程250之後就立刻開始進行流程260,則可能較難偵測出資料區塊是否發生提早衰退的異常情況。因此,快閃記憶體控制電路143可將流程260中的預定時間的長度,依據一實施例,設置為至少一分鐘,以提升資料區塊測試的正確性。另外,預定時間的長度亦可依據操作溫度或第一資料區塊111的抹除次數動態地被快閃記憶體控制電路143設置,不一定是固定的值。
在流程270中,快閃記憶體控制電路143可將第一資料區塊111的 資料錯誤次數,記錄在儲存電路130中。
在流程280中,快閃記憶體控制電路143可根據第一資料區塊111的資料錯誤次數,判斷第一資料區塊111之可再使用性。
例如,若第一資料區塊111的資料錯誤次數超過一預定臨界值,代表第一資料區塊111的硬體健康度不符合預期標準,則快閃記憶體控制電路143可將第一資料區塊111推定為是抹除次數未達上限、但已提早衰退的異常資料區塊。因此,快閃記憶體控制電路143會將第一資料區塊111判定為不具可再使用性,並將第一資料區塊111標記為該強迫汰除、不適合再用來儲存資料的資料區塊。
實作上,快閃記憶體控制電路143在進行流程280前,可至少重複進行前述流程240至270達一預定次數,以降低將第一資料區塊111誤判為異常資料區塊的機會。例如,為了提升區塊測試正確性並避免過度增加資料區塊的抹除次數,可將前述的預定次數設置為三次。另外,在接近固態硬碟110壽命終期時,快閃記憶體控制電路143可適時地調整預定次數的多寡,例如,可依據第一資料區塊111的抹除次數來決定預定次數,以避免測試次數過多導致固態硬碟110提前達到壽命終點。
快閃記憶體控制電路143在流程280中的判斷標準,則可以依據實際應用環境的需求來設置。例如,在一實施例中,只要第一資料區塊111在任一測試過程中出現無法校正的錯誤,快閃記憶體控制電路143便會將第一資料區塊111判定為不具可再使用性。
在另一實施例中,則是要第一資料區塊111在過半數的測試過程中出現無法校正的錯誤,快閃記憶體控制電路143才會將第一資料區塊111判定為不具可再使用性。
在另一實施例中,則是要第一資料區塊111在所有測試過程中都出現無法校正的錯誤,快閃記憶體控制電路143才會將第一資料區塊111判定為不具可再使用性。
如前所述,快閃記憶體控制電路143可將前述流程250中的測試資料寫入模式,設置成與在流程210中所讀取的資料的原始寫入模式相同。因此,固態硬碟控制電路140在測試不同資料區塊的可再使用性時,所使用的寫入模式可能會有所不同。
例如,假設快閃記憶體控制電路143在完成第一資料區塊111的可再使用性測試之後,又對第二資料區塊113進行前述圖2中的可再使用性測試流程。在此情況下,快閃記憶體控制電路143可在流程250中,利用一第二寫入模式將測試資料寫入第二資料區塊113的所有實體頁中,並將前述的第二寫入模式設置成與快閃記憶體控制電路143在流程210中所讀取的第二資料區塊113中的資料的原始寫入模式相同。倘若在快閃記憶體控制電路143對第二資料區塊113進行流程210的時點,第二資料區塊113中的資料的原始寫入模式是2bpc模式,則快閃記憶體控制電路143在流程250中也會利用2bpc模式將測試資料寫入第二資料區塊113中。
在前述實施例中,快閃記憶體控制電路143是利用1bpc模式或3bpc模式將測試資料寫入第一資料區塊111中。因此,固態硬碟控制電路140在測試第二資料區塊113的可再使用性時所使用的寫入模式(在本例中為2bpc模式),很明顯會與測試第一資料區塊111的可再使用性時所使用的寫入模式(在本例中為1bpc模式或3bpc模式)有所不同。這樣的作法可減少測試區塊過程中的可能變數,並提升資料區塊測試的準確度。
有關前述固態硬碟控制電路140對第一資料區塊111進行可再使用性測試的其他流程的實施方式與優點的相關說明,也適用於對第二資料區塊113進行測試的流程。為簡潔起見,在此不重複敘述。
由前述說明可知,只要快閃記憶體控制電路143將一特定資料區塊判定為不具可再使用性,代表該特定資料區塊極有可能是因各種原因而發生提早衰退的異常資料區塊。因此,快閃記憶體控制電路143會將該特定資料區塊標記為不適合再用來儲存資料的資料區塊,以避免提早衰退的異常資料區塊被繼續用來儲存資料的情況發生。
如此一來,便可有效避免異常資料區塊被用來儲存資料所造成的資料遺失問題。
以上僅為本發明的較佳實施例,凡依本發明請求項所做的均等變化與修飾,皆應屬本發明的涵蓋範圍。
100‧‧‧固態硬碟裝置
110‧‧‧固態硬碟
111、113、115、117‧‧‧資料區塊
120‧‧‧通信介面
130‧‧‧儲存電路
140‧‧‧固態硬碟控制電路
141‧‧‧讀寫電路
143‧‧‧快閃記憶體控制電路

Claims (10)

  1. 一種用於一固態硬碟裝置(100)中的固態硬碟控制電路(140),其中,該固態硬碟裝置(100)包含一固態硬碟(110)以及一通信介面(120),該固態硬碟控制電路(140)包含:一讀寫電路(141),用於耦接該固態硬碟(110);以及一快閃記憶體控制電路(143),耦接於該讀寫電路(141)並用於耦接該通信介面(120),且設置成進行以下運作:(A1)透過該讀寫電路(141)讀取該固態硬碟(110)之一第一資料區塊(111)中的資料,並對讀出的資料進行錯誤檢查與校正;(B1)若發現從該第一資料區塊(111)讀出的資料具有無法校正的錯誤,則搬移該第一資料區塊(111)中的資料;(C1)透過該讀寫電路(141)抹除該第一資料區塊(111);(D1)透過該讀寫電路(141)將測試資料寫入該第一資料區塊(111);(E1)等待一預定時間後,透過該讀寫電路(141)讀取該第一資料區塊(111)中的測試資料,並對讀出的資料進行錯誤檢查與校正,其中,該預定時間長度至少為一分鐘;(F1)記錄該第一資料區塊(111)的資料錯誤次數;以及(G1)根據該第一資料區塊(111)的資料錯誤次數,判斷該第一資料區塊(111)之可再使用性。
  2. 如請求項1所述的固態硬碟控制電路(140),其中,該快閃記憶體控制電路(143)在進行流程(G1)前,要至少重複進行流程(C1)至(F1)達一預定次數。
  3. 如請求項2所述的固態硬碟控制電路(140),其中,該預定次數為三次。
  4. 如請求項2所述的固態硬碟控制電路(140),其中,該預定次數是依據該第一資料區塊(111)的抹除次數而決定。
  5. 如請求項1所述的固態硬碟控制電路(140),其中,該快閃記憶體控制電路(143)在流程(D1)中是透過該讀寫電路(141),以一第一寫入模式將測試資料寫入該第一資料區塊(111),且該第一寫入模式與流程(A1)中所讀取的資料的寫入模式相同。
  6. 如請求項5所述的固態硬碟控制電路(140),其中,該快閃記憶體控制電路(143)另設置成進行以下運作:(A2)透過該讀寫電路(141)讀取該固態硬碟(110)之一第二資料區塊(113)中的資料,並對讀出的資料進行錯誤檢查與校正;(B2)若發現從該第二資料區塊(113)讀出的資料具有無法校正的錯誤,則搬移該第二資料區塊(113)中的資料;(C2)透過該讀寫電路(141)抹除該第二資料區塊(113);(D2)透過該讀寫電路(141)以一第二寫入模式將測試資料寫入該第二資料區塊(113);(E2)等待該預定時間後,透過該讀寫電路(141)讀取該第二資料區塊(113)中的測試資料,並對讀出的資料進行錯誤檢查與校正;(F2)記錄該第二資料區塊(113)的資料錯誤次數;以及(G2)根據該第二資料區塊(113)的資料錯誤次數,判斷該第二資料區塊(113)之可再使用性;其中,該第二寫入模式與流程(A2)中所讀取的資料的寫入模式相同,但與該第一寫入模式不同。
  7. 如請求項1所述的固態硬碟控制電路(140),其中,流程(E1)中的 該預定時間是依據溫度或該第一資料區塊(111)的抹除次數動態地被設置。
  8. 一種用於一固態硬碟裝置(100)中的固態硬碟控制電路(140),其中,該固態硬碟裝置(100)包含一固態硬碟(110)以及一通信介面(120),該固態硬碟控制電路(140)包含:一讀寫電路(141),用於耦接該固態硬碟(110);以及一快閃記憶體控制電路(143),耦接於該讀寫電路(141)並用於耦接該通信介面(120),且設置成進行以下運作:(A1)透過該讀寫電路(141)讀取該固態硬碟(110)之一第一資料區塊(111)中的資料,並對讀出的資料進行錯誤檢查與校正;(B1)若發現從該第一資料區塊(111)讀出的資料具有無法校正的錯誤,則搬移該第一資料區塊(111)中的資料;(C1)透過該讀寫電路(141)抹除該第一資料區塊(111);(D1)透過該讀寫電路(141)將測試資料寫入該第一資料區塊(111);(E1)等待一預定時間後,透過該讀寫電路(141)讀取該第一資料區塊(111)中的測試資料,並對讀出的資料進行錯誤檢查與校正,其中,該預定時間長度是依據溫度或該第一資料區塊(111)的抹除次數動態地被設置;(F1)記錄該第一資料區塊(111)的資料錯誤次數;以及(G1)根據該第一資料區塊(111)的資料錯誤次數,判斷該第一資料區塊(111)之可再使用性。
  9. 一種用於一固態硬碟裝置(100)中的固態硬碟控制電路(140),其中,該固態硬碟裝置(100)包含一固態硬碟(110)以及一通信介面(120),該固態硬碟控制電路(140)包含: 一讀寫電路(141),用於耦接該固態硬碟(110);以及一快閃記憶體控制電路(143),耦接於該讀寫電路(141)並用於耦接該通信介面(120),且設置成進行以下運作:(A1)透過該讀寫電路(141)讀取該固態硬碟(110)之一第一資料區塊(111)中的資料,並對讀出的資料進行錯誤檢查與校正;(B1)若發現從該第一資料區塊(111)讀出的資料具有無法校正的錯誤,則搬移該第一資料區塊(111)中的資料;(C1)透過該讀寫電路(141)抹除該第一資料區塊(111);(D1)透過該讀寫電路(141)將測試資料寫入該第一資料區塊(111);(E1)等待一預定時間後,透過該讀寫電路(141)讀取該第一資料區塊(111)中的測試資料,並對讀出的資料進行錯誤檢查與校正;(F1)記錄該第一資料區塊(111)的資料錯誤次數;以及(G1)根據該第一資料區塊(111)的資料錯誤次數,判斷該第一資料區塊(111)之可再使用性;其中,該快閃記憶體控制電路(143)在進行流程(G1)前,要至少重複進行流程(C1)至(F1)達一預定次數。
  10. 一種用於一固態硬碟裝置(100)中的固態硬碟控制電路(140),其中,該固態硬碟裝置(100)包含一固態硬碟(110)以及一通信介面(120),該固態硬碟控制電路(140)包含:一讀寫電路(141),用於耦接該固態硬碟(110);以及一快閃記憶體控制電路(143),耦接於該讀寫電路(141)並用於耦接該通信介面(120),且設置成進行以下運作:(A1)透過該讀寫電路(141)讀取該固態硬碟(110)之一第一資料區 塊(111)中的資料,並對讀出的資料進行錯誤檢查與校正;(B1)若發現從該第一資料區塊(111)讀出的資料具有無法校正的錯誤,則搬移該第一資料區塊(111)中的資料;(C1)透過該讀寫電路(141)抹除該第一資料區塊(111);(D1)透過該讀寫電路(141)將測試資料寫入該第一資料區塊(111);(E1)等待一預定時間後,透過該讀寫電路(141)讀取該第一資料區塊(111)中的測試資料,並對讀出的資料進行錯誤檢查與校正;(F1)記錄該第一資料區塊(111)的資料錯誤次數;以及(G1)根據該第一資料區塊(111)的資料錯誤次數,判斷該第一資料區塊(111)之可再使用性;其中,該快閃記憶體控制電路(143)在流程(D1)中是透過該讀寫電路(141),以一第一寫入模式將測試資料寫入該第一資料區塊(111),且該第一寫入模式與流程(A1)中所讀取的資料的寫入模式相同。
TW105108049A 2016-01-29 2016-03-16 用來判斷固態硬碟之資料區塊可再使用性的固態硬碟控制電路 TWI604441B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610065328.0A CN107025941A (zh) 2016-01-29 2016-01-29 固态硬盘控制电路

Publications (2)

Publication Number Publication Date
TW201727627A TW201727627A (zh) 2017-08-01
TWI604441B true TWI604441B (zh) 2017-11-01

Family

ID=59386210

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105108049A TWI604441B (zh) 2016-01-29 2016-03-16 用來判斷固態硬碟之資料區塊可再使用性的固態硬碟控制電路

Country Status (3)

Country Link
US (1) US20170221584A1 (zh)
CN (1) CN107025941A (zh)
TW (1) TWI604441B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI696916B (zh) * 2018-09-07 2020-06-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法
US10896004B2 (en) 2018-09-07 2021-01-19 Silicon Motion, Inc. Data storage device and control method for non-volatile memory, with shared active block for writing commands and internal data collection
US11036414B2 (en) 2018-09-07 2021-06-15 Silicon Motion, Inc. Data storage device and control method for non-volatile memory with high-efficiency garbage collection
US11199982B2 (en) 2018-09-07 2021-12-14 Silicon Motion, Inc. Data storage device and control method for non-volatile memory

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109461469A (zh) * 2018-10-30 2019-03-12 新华三技术有限公司 一种测试方法及装置
CN109521969B (zh) * 2018-11-20 2020-10-16 苏州浪潮智能科技有限公司 一种固态硬盘数据回收方法、装置和计算机可读存储介质
CN109979508A (zh) * 2019-03-15 2019-07-05 合肥沛睿微电子股份有限公司 固态硬盘装置与相关的固态硬盘控制电路
CN112599181A (zh) * 2020-12-11 2021-04-02 深圳市时创意电子有限公司 一种闪存芯片分析方法、装置、电子设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101567220B (zh) * 2008-04-22 2016-08-24 群联电子股份有限公司 闪存的损坏区块辨识方法、储存系统及其控制器
US20090327581A1 (en) * 2008-06-30 2009-12-31 Coulson Richard L Nand memory
TWI459393B (zh) * 2011-01-19 2014-11-01 Phison Electronics Corp 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置
CN103514096B (zh) * 2012-06-18 2016-06-08 群联电子股份有限公司 数据储存方法、存储器控制器与存储器储存装置
CN103927128B (zh) * 2013-07-11 2017-03-01 威盛电子股份有限公司 数据储存装置以及快闪存储器控制方法
CN104934066B (zh) * 2014-03-19 2018-03-27 安华高科技通用Ip(新加坡)公司 Nand闪存中的读取干扰处理
CN105005450B (zh) * 2014-04-25 2018-11-02 群联电子股份有限公司 数据写入方法、存储器存储装置及存储器控制电路单元
KR102179829B1 (ko) * 2014-07-10 2020-11-18 삼성전자주식회사 런 타임 배드 셀을 관리하는 스토리지 시스템

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI696916B (zh) * 2018-09-07 2020-06-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法
US10896004B2 (en) 2018-09-07 2021-01-19 Silicon Motion, Inc. Data storage device and control method for non-volatile memory, with shared active block for writing commands and internal data collection
US11036414B2 (en) 2018-09-07 2021-06-15 Silicon Motion, Inc. Data storage device and control method for non-volatile memory with high-efficiency garbage collection
US11199982B2 (en) 2018-09-07 2021-12-14 Silicon Motion, Inc. Data storage device and control method for non-volatile memory
TWI768346B (zh) * 2018-09-07 2022-06-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法

Also Published As

Publication number Publication date
CN107025941A (zh) 2017-08-08
US20170221584A1 (en) 2017-08-03
TW201727627A (zh) 2017-08-01

Similar Documents

Publication Publication Date Title
TWI604441B (zh) 用來判斷固態硬碟之資料區塊可再使用性的固態硬碟控制電路
US8086919B2 (en) Controller having flash memory testing functions, and storage system and testing method thereof
TWI566253B (zh) 用來管理一記憶裝置之方法以及記憶裝置與控制器
TWI419308B (zh) 半導體儲存裝置、非揮發性半導體記憶體測試方法、及媒體
TWI493553B (zh) 根據環境溫度資訊來執行平均抹寫程序之方法及其快閃記憶體裝置
US8732519B2 (en) Method for using bad blocks of flash memory
TWI389122B (zh) 用來存取一快閃記憶體之方法以及相關之記憶裝置及其控制器
US20070170268A1 (en) Memory cards, nonvolatile memories and methods for copy-back operations thereof
US11030096B2 (en) Method of identifying and preparing a key block in a flash memory system and memory controller therefor
KR101547317B1 (ko) 스토리지 테스트 장치에서 로직 블록 어드레스와 데이터 버퍼 주소를 이용한 불량 블록 검출 시스템
KR101522293B1 (ko) 복수개의 스토리지를 개별 제어 가능한 테스트 장치
US10832784B2 (en) Pre-program read to counter wordline failures
US11984181B2 (en) Systems and methods for evaluating integrity of adjacent sub blocks of data storage apparatuses
US20070294588A1 (en) Performing a diagnostic on a block of memory associated with a correctable read error
CN112700815A (zh) 管理针对临时操作条件的块引退
TWI420313B (zh) 資料管理方法、記憶體控制器與嵌入式記憶體儲存裝置
KR20160074025A (ko) 데이터 저장 장치의 동작 방법
CN112447255B (zh) 存储器子系统的读取电压辅助制造测试
TWI473103B (zh) 快閃記憶體儲存裝置及其不良儲存區域的判定方法
US11023138B2 (en) Management operations in predictable latency mode
JP2010067098A (ja) 情報処理装置、情報処理方法および情報処理プログラム
TW201608475A (zh) 非揮發性記憶體裝置之損耗平均管理方法
TWI528375B (zh) 快閃記憶體轉接器的控制器及使用該控制器的快閃記憶體儲存裝置
TWI717952B (zh) 獨立橋接測試方法
JP2007272551A (ja) キャッシュメモリ制御装置、方法及びプログラム並びにディスクアレイ装置