CN106569735B - 数据储存装置及数据维护方法 - Google Patents
数据储存装置及数据维护方法 Download PDFInfo
- Publication number
- CN106569735B CN106569735B CN201510713909.6A CN201510713909A CN106569735B CN 106569735 B CN106569735 B CN 106569735B CN 201510713909 A CN201510713909 A CN 201510713909A CN 106569735 B CN106569735 B CN 106569735B
- Authority
- CN
- China
- Prior art keywords
- page
- mentioned
- data
- word
- line
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 53
- 238000013500 data storage Methods 0.000 title abstract description 4
- 238000012423 maintenance Methods 0.000 title description 2
- 230000015654 memory Effects 0.000 claims abstract description 45
- 230000005540 biological transmission Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
- G11C16/28—Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
- G11C29/4401—Indication or identification of errors, e.g. for repair for self repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/80—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
- G11C29/816—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
- G11C29/82—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
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)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
本发明提供一种数据储存装置。数据储存装置包括一快闪存储器以及一控制器。快闪存储器包括多个页面以及多条字元线,其中每一字元线用以控制至少两个页面。控制器用以根据一读取命令对页面中的一第一页面进行读取,并且当字元线中用以控制第一页面的一第一字元线没有关闭时,将一冗余数据(dummy data)写入第一字元线所控制的其他页面。
Description
技术领域
本发明有关于一种存储器装置的数据维护方法;特别有关于读取数据的数据维护方法。
背景技术
快闪存储器为一种普遍的非挥发性数据储存装置,以电性方式抹除与程序化。以与非门型的快闪存储器(即NAND FLASH)为例,常用作记忆卡(memory card)、通用串行总线闪存装置(USB flash device)、固态硬碟(SSD)、嵌入式快闪存储器模组(eMMC)…等使用。
快闪存储器(如,NAND FLASH)的储存阵列包括多个区块(blocks),其中浮置栅极晶体管可用以构成快闪存储器。浮置栅极晶体管中的浮置栅极,可捕捉的电荷以储存数据。然而,储存于浮置栅极的电荷会由于快闪存储器的操作以及各种环境参数,自浮置栅极流失,造成数据保存(Data retention)的问题。
发明内容
本发明所提供的数据储存装置以及数据维护方法,可藉由将冗余数据写入未关闭的字元线的其他页面,使得减少为关闭的字元线所控制的页面的错误位元数。
本发明提供一种数据储存装置。数据储存装置包括一快闪存储器以及一控制器。快闪存储器包括多个页面以及多条字元线,其中每一字元线用以控制至少两个页面。控制器用以根据一读取命令对页面中的一第一页面进行读取,并且当字元线中用以控制第一页面的一第一字元线没有关闭时,将一冗余数据(dummy data)写入第一字元线所控制的其他页面。其中,控制器更用以在将冗余数据写入第一字元线所控制的其他页面后,重新对第一页面进行读取。控制器还用以在第一页面被成功读取后响应于读取命令将所读取的第一页面的数据传送至一主机。
在一实施例中,控制器当第一页面无法被成功读取时,才进行将冗余数据写入第一字元线所控制的其他页面的步骤。
另外,控制器还用以根据一重复读取表中的多读取电压对第一页面进行读取,并且在读取电压皆无法成功读取第一页面时才进行将冗余数据写入第一字元线所控制的其他页面的步骤。
本发明亦提供一种数据维护方法,适用于具有一快闪存储器的一数据储存装置,其中快闪存储器包括多个页面以及多条字元线,每一字元线用以控制至少两个页面。数据维护方法包括:接收一读取命令,其中读取命令指示对页面中的一第一页面进行读取;以及当字元线中用以控制第一页面的一第一字元线没有关闭时,将一冗余数据(dummy data)写入第一字元线所控制的其他页面。数据维护方法还包括在将冗余数据写入第一字元线所控制的其他页面后,重新对第一页面进行读取;以及在第一页面被成功读取后响应于读取命令将所读取的第一页面的数据传送至一主机。
在一实施例中当第一页面无法被成功读取时,才进行将冗余数据写入第一字元线所控制的其他页面的步骤。
又另一实施例中,数据维护方法还包括根据一重复读取表中的多读取电压对第一页面进行读取,并且在读取电压皆无法成功读取第一页面时才进行将冗余数据写入第一字元线所控制的其他页面的步骤。
附图说明
图1是本发明的一种实施例的电子系统的方块图。
图2是本发明的一种实施例的快闪存储器的示意图。
图3是本发明的另一种实施例的快闪存储器的示意图。
图4是本发明的一种实施例的数据维护方法的流程图。
图5A~5C是本发明的另一种实施例的数据维护方法的流程图。
符号说明
100 电子系统;
120 主机;
140 数据储存装置;
160 控制器;
162 运算单元;
164 永久存储器;
180 快闪存储器;
W0~WN 字元线;
P0~PM 页面;
B0~BN 区块;
LSB 强页面;
CSB 中页面;
MSB 弱页面;
S400~S416、S500~S528 步骤。
具体实施方式
以下将详细讨论本发明各种实施例的装置及使用方法。然而值得注意的是,本发明所提供的许多可行的发明概念可实施在各种特定范围中。这些特定实施例仅用于举例说明本发明的装置及使用方法,但非用于限定本发明的范围。
图1是本发明的一种实施例的电子系统的方块图。电子系统100包括一主机120以及一数据储存装置140。数据储存装置140包括一快闪存储器180以及一控制器160,且可根据主机120所下达的命令操作。
控制器160包括一运算单元162以及一永久存储器(如,只读存储器ROM)164。永久存储器164与所载的程序码、数据组成固件(firmware),由运算单元162执行,使控制器160基于该固件控制该快闪存储器180。另外,运算单元162还包括一错误校正引擎(未图示)。错误校正引擎用以在数据发生错误时,对所读取的数据进行错误校正(Error Correction;ECC),本发明不限于此。值得注意的是,在本发明的一实施例中,永久存储器164包括一软件或者固件用以致使运算单元162对要被存入页面的使用者数据进行编码,以产生使用者数据的校验码(Parity)。另外,在本发明中,永久存储器164包括的软件或者固件更用以致使运算单元162对某些页面的使用者数据的校验码进行编码,以产生相应于校验码数据的校验码。当所读取的数据具有错误位元时,控制器160可藉由校验码(Parity)对所储存的数据进行错误校正,以成功读取所储存的数据。另外,控制器160可根据一重复读取表对页面进行重复读取。详细而言,重复读取表可储存于快闪存储器180或者永久存储器164中,并且重复读取表用以储存不同的多读取电压。当控制起160无法用初始读取电压成功读取页面时,控制器160可根据重复读取表中所储存的不同的读取电压对同一页面进行重复读取,以获得正确的页面数据。
快闪存储器180包括多区块,每一区块包括多个页面。另外,快闪存储器180还包括彼此相邻的多条字元线与多位元线,其中每一字元线用以控制至少一页面,以选择所欲读取的页面。举例而言,当快闪存储器180为单阶储存单元(Single-Level Cell,SLC)时,一条字元线用以控制一个页面。当快闪存储器180为多阶储存单元(Multi-Level Cell,MLC)时,一条字元线用以控制一强页面LSB(strong page)以及一弱页面MSB(weak page)。当快闪存储器180为三阶储存单元(Triple-Level Cell,TLC)时,一条字元线用以控制一强页面LSB(strong page)、一中页面CSB(middle page)以及一弱页面MSB(weak page),但本发明不限于此。详细而言,当快闪存储器180为多阶储存单元时,快闪存储器180中由一条字元线所控制的一个页面可被程序化(program)为一个强页面LSB(strong page)以及一个弱页面MSB(weak page)。当快闪存储器180为三阶储存单元时,快闪存储器180中由一条字元线所控制的一个页面可被程序化(program)为一个强页面LSB(strong page)、一个中页面CSB(middle page)以及一个弱页面MSB(weak page)。
值得注意的是,当字元线没有关闭(close)时,被未关闭的字元线所控制的页面相较于关闭的字元线具有较高的错误位元。换言之,当被同一个字元线所控制的页面仅有一个或者两个被写入数据并且有至少一个页面没被写入数据时,具有数据的页面则不稳定具有较高的错误位元。因此,本发明提供一种数据维护方法以及数据储存装置140用以关闭开启的字元线以降低页面的错误位元。
详细而言,控制器160可根据一读取命令对页面中的一第一页面进行读取。当字元线中用以控制第一页面的一第一字元线没有关闭时,控制器160将一冗余数据(dummydata)写入第一字元线所控制的其他页面,其中冗余数据可为一既定的无效数据或者随机的数据,不具有任何意义。接着,控制器160还用以在将冗余数据写入第一字元线所控制的其他页面后,重新对第一页面进行读取。在第一页面被成功读取后,控制器160响应于读取命令将所读取的第一页面的数据传送至一主机120。在一实施例中,控制器160当第一页面无法被成功读取时,才进行将冗余数据写入第一字元线所控制的其他页面的步骤。举例而言,控制器160可在初始读取电压无法成功读取第一页面时,根据一重复读取表中的多读取电压对第一页面进行重复读取,并且在重复读取表中的所有读取电压皆无法成功读取第一页面时才进行将冗余数据写入第一字元线所控制的其他页面的步骤。
图2是本发明的一种实施例的快闪存储器的示意图。图2所示为多阶储存单元(Multi-Level Cell,MLC)的快闪存储器180。在本实施例中,快闪存储器180包括多区块B0~BN,并且每一区块具有多个页面P0~PM,其中页面P0、P2、P4…PM-1为强页面LSB,并且页面P1、P3、P5…PM为弱页面MSB。值得注意的是,被相同字元线所控制的页面不一定具有连续的地址。举例而言,数据依序地被写入区块B0的页面P0~P4并且页面P5~PM未被写入数据(program)时,字元线W0~W1是关闭的,而字元线W2~WN为未关闭(开启)的字元线。当控制器160根据读取命令对在未关闭的字元线W2上的页面P4进行读取并且页面P4无法被成功读取时,控制器160则用以将一冗余数据(dummy data)写入字元线W2所控制的其他页面P5,以关闭字元线W2。在控制器160将冗余数据写入字元线W2所控制的页面P5后,控制器160重新对字元线W2上的页面P4进行读取,并且当页面P4被成功读取时,控制器160将所读取的数据回传至主机120。在另一实施例中,在关闭字元线W2前当控制器160无法藉由初始读取电压成功读取页面P4时,控制器160可根据重复读取表中的多读取电压重复对页面P4进行读取。当重复读取表中的多读取电压皆无法成功读取页面P4后,控制器160才将冗余数据写入字元线W2所控制的其他页面P5,以关闭字元线W2。在字元线W2关闭之后,控制器160会先根据初始读取电压对页面P4进行读取。当在字元线W2关闭后初始读取电压仍无法成功读取页面P4时,控制器160亦可再次根据重复读取表中的多读取电压重复对在已关闭的字元线W2上的页面P4进行重复读取。当控制器160成功读取页面P4时,控制器将所读取的数据回传给主机120。当控制器160根据重复读取表中的读取电压皆无法成功读取在已关闭的字元线W2上的页面P4时,控制器160将页面P4标记为坏页(bad page)或者将页面P4所属的区块B0标记为坏区块(bad block)。在一实施例中,在冗余数据被写入区块B0中的页面P5后,控制器160则停止将数据写入区块B0。换言之,在冗余数据被写入区块B0中的面P5后,虽然区块B0中的页面P6~PM不具有有效数据,但控制器160不会再选择区块B0以将数据写入页面P6~PM。
图3是本发明的另一种实施例的快闪存储器的示意图。图3所示为三阶储存单元(Triple-Level Cell,TLC)的快闪存储器180。在本实施例中,快闪存储器180包括多区块B0~BN,并且每一区块具有多个页面P0~PM,其中页面P0、P3、P6…PM-2为强页面LSB,页面P1、P4、P7…PM-1为中页面CSB,并且页面P2、P5、P8…PM为弱页面MSB。同样地,被相同字元线所控制的页面不一定具有连续的地址。举例而言,数据依序地被写入区块B0的页面P0~P9并且页面P10~PM未被写入数据(program)时,字元线W0~W2是关闭的,而字元线W3~WN为未关闭(开启)的字元线。当控制器160根据读取命令对在未关闭的字元线W3上的页面P9进行读取并且页面P9无法被成功读取时,控制器160则用以将一冗余数据(dummy data)写入字元线W3所控制的其他页面P10以及P11,以关闭字元线W3。在控制器160将冗余数据写入字元线W3所控制的页面P10以及P11后,控制器160重新对字元线W3上的页面P9进行读取,并且当页面P9被成功读取时,控制器160将所读取的数据回传至主机120。在另一实施例中,在关闭字元线W3前当控制器160无法藉由初始读取电压成功读取页面P9时,控制器160可根据重复读取表中的多读取电压重复对页面P9进行读取。当重复读取表中的多读取电压皆无法成功读取页面P9后,控制器160才将冗余数据写入字元线W3所控制的其他页面P10以及P11,以关闭字元线W3。在字元线W3关闭之后,控制器160会先根据初始读取电压对页面P9进行读取。当在字元线W3关闭后初始读取电压仍无法成功读取页面P9时,控制器160亦可再次根据重复读取表中的多读取电压重复对在已关闭的字元线W3上的页面P9进行重复读取。当控制器160成功读取页面P9时,控制器将所读取的数据回传给主机120。当控制器160根据重复读取表中的读取电压皆无法成功读取在已关闭的字元线W3上的页面P9时,控制器160将页面P9标记为坏页(bad page)或者将页面P9所属的区块B0标记为坏区块(bad block)。在一实施例中,在冗余数据被写入区块B0中的页面P10以及P11后,控制器160则停止将数据写入区块B0。换言之,在冗余数据被写入区块B0中的页面P10以及P11后,虽然区块B0中的页面P12~PM不具有有效数据,但控制器160不会再选择区块B0以将数据写入页面P12~PM。在另一实施例中,举例而言,数据依序地被写入区块B0的页面P0~P7并且页面P8~PM未被写入数据(program)时,字元线W0~W1是关闭的,而字元线W2~WN为未关闭(开启)的字元线。当控制器160根据读取命令对在未关闭的字元线W2上的页面P6进行读取并且页面P6无法被成功读取时,控制器160则用以将一冗余数据(dummy data)写入字元线W2所控制的其他页面P8,以关闭字元线W2。在控制器160将冗余数据写入字元线W2所控制的页面P8后,控制器160重新对字元线W2上的页面P6进行读取,并且当页面P6被成功读取时,控制器160将所读取的数据回传至主机120。在另一实施例中,在关闭字元线W2前当控制器160无法藉由初始读取电压成功读取页面P6时,控制器160可根据重复读取表中的多读取电压重复对页面P6进行读取。当重复读取表中的多读取电压皆无法成功读取页面P6后,控制器160才将冗余数据写入字元线W2所控制的其他页面P6,以关闭字元线W2。在字元线W2关闭之后,控制器160会先根据初始读取电压对页面P6进行读取。当在字元线W2关闭后初始读取电压仍无法成功读取页面P6时,控制器160亦可再次根据重复读取表中的多读取电压重复对在已关闭的字元线W2上的页面P6进行重复读取。当控制器160成功读取页面P6时,控制器将所读取的数据回传给主机120。当控制器160根据重复读取表中的读取电压皆无法成功读取在已关闭的字元线W2上的页面P6时,控制器160将页面P6标记为坏页(bad page)或者将页面P6所属的区块B0标记为坏区块(bad block)。在一实施例中,在冗余数据被写入区块B0中的P8后,控制器160则停止将数据写入区块B0。换言之,在冗余数据被写入区块B0中的页面P8后,虽然区块B0中的页面P9~PM不具有有效数据,但控制器160不会再选择区块B0以将数据写入页面P9~PM。
图4是本发明的一种实施例的数据维护方法的流程图。数据维护方法,适用于图1所示的数据储存装置140。流程开始于步骤S400。
在步骤S400中,控制器160自主机120接收一读取命令,其中读取命令用以对快闪存储器180中的一第一页面进行读取的命令。
接着,在步骤S402中,控制器160根据读取命令对第一页面进行读取。
接着,在步骤S404中,控制器160判断第一页面是否被成功读取。换言之,控制器160判断自第一页面所读取的数据是否具有错误位元以及自第一页面所读取具有错误位元的数据在经由校验码校正后是否仍然存在错误位元。当第一页面不具有错误位元时,控制器160判断第一页面被成功读取。当第一页面被成功读取时,流程进行至步骤S416;否则,流程进行至步骤S406。
在步骤S406中,控制器160判断控制第一页面的一第一字元线是否关闭。当控制第一页面之第一字元线关闭时,流程进行至步骤S414;否则,流程进行至步骤S408。
接着,在步骤S408中,控制器160将一冗余数据(dummy data)写入第一字元线所控制的其他页面,以关闭第一字元线。
接着,在步骤S410中,控制器160重新读取第一页面。
接着,在步骤S412中,控制器160判断第一页面是否被成功读取。换言之,控制器160判断自第一页面所读取的数据是否具有错误位元以及自第一页面所读取具有错误位元的数据在经由校验码校正后是否仍然存在错误位元。当第一页面不具有错误位元时,控制器160判断第一页面被成功读取。当第一页面被成功读取时,流程进行至步骤S416;否则,流程进行至步骤S414。
在步骤S414中,控制器160将第一页面标记为坏页或者将第一页面所属的一第一区块标记为坏区块。在一实施例中,控制器160亦可舍弃第一页面的数据并且将第一页面所属的区块中的其他数据搬移至另一区块。流程结束于步骤S414。
在步骤S416中,控制器160响应于在步骤S400中所接收的读取命令将成功读取的第一页面的数据传送至主机120。流程结束于步骤S416。
图5是本发明的一种实施例的数据维护方法的流程图。数据维护方法,适用于图1所示的数据储存装置140。流程开始于步骤S500。
在步骤S500中,控制器160自主机120接收一读取命令,其中读取命令用以对快闪存储器180中的一第一页面进行读取的命令。
接着,在步骤S502中,控制器160根据读取命令,使用一初始读取电压对第一页面进行读取。
接着,在步骤S504中,控制器160判断第一页面是否被成功读取。换言之,控制器160判断自第一页面所读取的数据是否具有错误位元以及自第一页面所读取具有错误位元的数据在经由校验码校正后是否仍然存在错误位元。当第一页面不具有错误位元时,控制器160判断第一页面被成功读取。当第一页面被成功读取时,流程进行至步骤S528;否则,流程进行至步骤S506。
在步骤S506中,控制器160自重复读取表中选取一读取电压,以设定一重复读取电压。
接着,在步骤S508中,控制器160使用所设定的重复读取电压对第一页面进行读取。
接着,在步骤S510中,控制器160判断第一页面是否被成功读取。换言之,控制器160判断自第一页面所读取的数据是否具有错误位元以及自第一页面所读取具有错误位元的数据在经由校验码校正后是否仍然存在错误位元。当第一页面不具有错误位元时,控制器160判断第一页面被成功读取。当第一页面被成功读取时,流程进行至步骤S528;否则,流程进行至步骤S511。
在步骤S511中,控制器160判断是否所有重复读取表中的读取电压皆使用过以读取第一页面。当重复读取表中的读取电压皆使用过时,流程进行至步骤S512;否则,流程回到步骤S506,控制器160继续选取重复读取标中的下一个数值以设定重复读取电压。
在步骤S512中,控制器160判断控制第一页的一第一字元线是否关闭。当控制第一页面的第一字元线关闭时,流程进行至步骤S526;否则,流程进行至步骤S514。
接着,在步骤S514中,控制器160将一冗余数据(dummy data)写入第一字元线所控制的其他页面,以关闭第一字元线。
接着,在步骤S516中,控制器160使用初始读取电压重新读取第一页面。
接着,在步骤S518中,控制器160判断第一页面是否被成功读取。换言之,控制器160判断自第一页面所读取的数据是否具有错误位元以及自第一页面所读取具有错误位元的数据在经由校验码校正后是否仍然存在错误位元。当第一页面不具有错误位元时,控制器160判断第一页面被成功读取。当第一页面被成功读取时,流程进行至步骤S528;否则,流程进行至步骤S520。
在步骤S520中,控制器160自重复读取表中选取一读取电压,以设定一重复读取电压。
接着,在步骤S522中,控制器160使用所设定的重复读取电压对第一页面进行读取。
接着,在步骤S524中,控制器160判断第一页面是否被成功读取。换言之,控制器160判断自第一页面所读取的数据是否具有错误位元以及自第一页面所读取具有错误位元的数据在经由校验码校正后是否仍然存在错误位元。当第一页面不具有错误位元时,控制器160判断第一页面被成功读取。当第一页面被成功读取时,流程进行至步骤S528;否则,流程进行至步骤S525。
在步骤S525中,控制器160判断是否所有重复读取表中的读取电压皆使用过以读取第一页面。当重复读取表中的读取电压皆使用过时,流程进行至步骤S526;否则,流程回到步骤S520,控制器160继续选取重复读取标中的下一个数值以设定重复读取电压。
在步骤S526中,控制器160将第一页面标记为坏页或者将第一页面所属的一第一区块标记为坏区块。在一实施例中,控制器160亦可舍弃第一页面的数据并且将第一页面所属的区块中的其他数据搬移至另一区块。流程结束于步骤S526。
在步骤S528中,控制器160响应于在步骤S500中所接收的读取命令将成功读取的第一页面的数据传送至主机120。流程结束于步骤S528。
本发明所提供的数据储存装置140以及数据维护方法,可藉由关闭字元线减少页面的错误位元数,以成功读取页面中的数据。
本发明的方法,或特定型态或其部份,可以以程序码的型态存在。程序码可储存于实体媒体,如软碟、光碟片、硬碟、或是任何其他机器可读取(如电脑可读取)储存媒体,亦或不限于外在形式的电脑程序产品,其中,当程序码被机器,如电脑载入且执行时,此机器变成用以参与本发明的装置。程序码也可透过一些传送媒体,如电线或电缆、光纤、或是任何传输型态进行传送,其中,当程序码被机器,如电脑接收、载入且执行时,此机器变成用以参与本发明的装置。当在一般用途处理单元实作时,程序码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
以上所述,仅为本发明的较佳实施例而已,当不能以此限定本发明实施的范围,即凡依本发明申请专利范围及发明说明内容所作的简单的等效变化与修饰,皆仍属本发明专利涵盖的范围内。另外本发明的任一实施例或申请专利范围不须达成本发明所揭示的全部目的或优点或特点。此外,摘要部分和标题仅是用来辅助专利文件搜寻之用,并非用来限制本发明的权利范围。
Claims (8)
1.一种数据储存装置,包括:
一快闪存储器,包括多个页面以及多条字元线,其中每一字元线用以控制至少两个上述页面;以及
一控制器,用以根据一读取命令对上述页面中的一第一页面进行读取,并且当上述字元线中用以控制上述第一页面的一第一字元线没有关闭以及上述第一页面无法被成功读取时,将一冗余数据写入上述第一字元线所控制的其他上述页面。
2.根据权利要求1所述的数据储存装置,其特征在于,上述控制器还用以在将上述冗余数据写入上述第一字元线所控制的其他上述页面后,重新对上述第一页面进行读取。
3.根据权利要求2所述的数据储存装置,其特征在于,上述控制器还用以在上述第一页面被成功读取后响应于上述读取命令将所读取的上述第一页面的数据传送至一主机。
4.根据权利要求1所述的数据储存装置,其特征在于,上述控制器还用以根据一重复读取表中的多读取电压对上述第一页面进行读取,并且在上述读取电压皆无法成功读取上述第一页面时才进行将上述冗余数据写入上述第一字元线所控制的其他上述页面的步骤。
5.一种数据维护方法,适用于具有一快闪存储器的一数据储存装置,其中上述快闪存储器包括多个页面以及多条字元线,每一字元线用以控制至少两个上述页面,上述数据维护方法包括:
接收一读取命令,其中上述读取命令指示对上述页面中的一第一页面进行读取;以及
当上述字元线中用以控制上述第一页面的一第一字元线没有关闭以及上述第一页面无法被成功读取时,将一冗余数据写入上述第一字元线所控制的其他上述页面。
6.根据权利要求5所述的数据维护方法,其特征在于,还包括在将上述冗余数据写入上述第一字元线所控制的其他上述页面后,重新对上述第一页面进行读取。
7.根据权利要求6所述的数据维护方法,其特征在于,还包括在上述第一页面被成功读取后响应于上述读取命令将所读取的上述第一页面的数据传送至一主机。
8.根据权利要求5所述的数据维护方法,其特征在于,还包括根据一重复读取表中的多读取电压对上述第一页面进行读取,并且在上述读取电压皆无法成功读取上述第一页面时才进行将上述冗余数据写入上述第一字元线所控制的其他上述页面的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910854035.4A CN110554844B (zh) | 2015-10-07 | 2015-10-28 | 数据储存装置及数据维护方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW104132975 | 2015-10-07 | ||
TW104132975A TWI571742B (zh) | 2015-10-07 | 2015-10-07 | 資料儲存裝置及資料維護方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910854035.4A Division CN110554844B (zh) | 2015-10-07 | 2015-10-28 | 数据储存装置及数据维护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106569735A CN106569735A (zh) | 2017-04-19 |
CN106569735B true CN106569735B (zh) | 2019-10-25 |
Family
ID=58419138
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510713909.6A Active CN106569735B (zh) | 2015-10-07 | 2015-10-28 | 数据储存装置及数据维护方法 |
CN201910854035.4A Active CN110554844B (zh) | 2015-10-07 | 2015-10-28 | 数据储存装置及数据维护方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910854035.4A Active CN110554844B (zh) | 2015-10-07 | 2015-10-28 | 数据储存装置及数据维护方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US9613708B1 (zh) |
CN (2) | CN106569735B (zh) |
TW (1) | TWI571742B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9251909B1 (en) | 2014-09-29 | 2016-02-02 | International Business Machines Corporation | Background threshold voltage shifting using base and delta threshold voltage shift values in flash memory |
KR102564563B1 (ko) * | 2016-06-27 | 2023-08-11 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그 동작 방법 |
TWI606388B (zh) * | 2016-12-14 | 2017-11-21 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料維護方法 |
US10175892B1 (en) * | 2017-06-23 | 2019-01-08 | Amazon Technologies, Inc. | Adaptive read algorithm for a nonvolatile medium |
TWI657336B (zh) * | 2017-08-28 | 2019-04-21 | 慧榮科技股份有限公司 | 用以檢測資料儲存裝置之資料儲存方法及其資料儲存裝置 |
US11099781B2 (en) * | 2018-07-19 | 2021-08-24 | Silicon Motion, Inc. | Flash memory controller, flash memory module and associated electronic device |
KR102554418B1 (ko) * | 2018-10-01 | 2023-07-11 | 삼성전자주식회사 | 메모리 컨트롤러 및 이를 포함하는 스토리지 장치 |
KR20200053018A (ko) * | 2018-11-07 | 2020-05-18 | 삼성전자주식회사 | 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치, 그리고 불휘발성 메모리 장치를 액세스하는 방법 |
CN115019870A (zh) * | 2022-05-18 | 2022-09-06 | 上海颖存半导体科技有限公司 | Nand Flash页面数据纠错方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1873619A (zh) * | 2005-05-30 | 2006-12-06 | 株式会社东芝 | 存储装置 |
CN101427323A (zh) * | 2004-11-04 | 2009-05-06 | 西格马特尔公司 | 读取非易失性计算机存储器的系统和方法 |
CN104425020A (zh) * | 2013-08-23 | 2015-03-18 | 慧荣科技股份有限公司 | 存取快闪存储器中储存单元的方法以及使用该方法的装置 |
CN104699417A (zh) * | 2013-12-04 | 2015-06-10 | 慧荣科技股份有限公司 | 数据储存装置以及其数据存取方法 |
CN104850514A (zh) * | 2014-02-18 | 2015-08-19 | 慧荣科技股份有限公司 | 存取闪存的方法及相关的控制器与记忆装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101422704B1 (ko) * | 2008-01-21 | 2014-07-25 | 삼성전자주식회사 | 소거 스트레스를 줄일 수 있는 전하 트랩형 플래시 메모리장치 그리고 그것의 프로그램 및 소거 방법 |
TWI478170B (zh) * | 2012-09-14 | 2015-03-21 | Winbond Electronics Corp | 記憶體裝置以及冗餘方法 |
CN104217762B (zh) * | 2013-05-31 | 2017-11-24 | 慧荣科技股份有限公司 | 数据储存装置及其错误校正方法以及数据读取方法 |
KR102190399B1 (ko) * | 2013-10-11 | 2020-12-11 | 삼성전자주식회사 | 신뢰성을 보장할 수 있는 불휘발성 메모리 장치의 동작 방법 및 상기 방법을 수행하는 메모리 시스템 |
KR102065665B1 (ko) * | 2013-10-17 | 2020-01-13 | 삼성전자 주식회사 | 더미 워드라인을 포함하는 불휘발성 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작방법 |
KR102117919B1 (ko) * | 2013-10-24 | 2020-06-02 | 삼성전자주식회사 | 저장 장치 및 그것의 프로그램 방법 |
US9229806B2 (en) * | 2013-11-14 | 2016-01-05 | Sandisk Technologies Inc. | Block closure techniques for a data storage device |
US9165670B2 (en) * | 2013-11-14 | 2015-10-20 | Sandisk Technologies Inc. | Data retention detection techniques for a data storage device |
US9218891B2 (en) * | 2013-11-27 | 2015-12-22 | Silicon Motion, Inc. | Data storage device and flash memory control method |
US9329992B2 (en) * | 2013-12-04 | 2016-05-03 | Silicon Motion, Inc. | Data storage device and flash memory control method |
-
2015
- 2015-10-07 TW TW104132975A patent/TWI571742B/zh active
- 2015-10-28 CN CN201510713909.6A patent/CN106569735B/zh active Active
- 2015-10-28 CN CN201910854035.4A patent/CN110554844B/zh active Active
-
2016
- 2016-01-20 US US15/001,886 patent/US9613708B1/en active Active
-
2017
- 2017-02-22 US US15/439,029 patent/US9786379B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101427323A (zh) * | 2004-11-04 | 2009-05-06 | 西格马特尔公司 | 读取非易失性计算机存储器的系统和方法 |
CN1873619A (zh) * | 2005-05-30 | 2006-12-06 | 株式会社东芝 | 存储装置 |
CN104425020A (zh) * | 2013-08-23 | 2015-03-18 | 慧荣科技股份有限公司 | 存取快闪存储器中储存单元的方法以及使用该方法的装置 |
CN104699417A (zh) * | 2013-12-04 | 2015-06-10 | 慧荣科技股份有限公司 | 数据储存装置以及其数据存取方法 |
CN104850514A (zh) * | 2014-02-18 | 2015-08-19 | 慧荣科技股份有限公司 | 存取闪存的方法及相关的控制器与记忆装置 |
Also Published As
Publication number | Publication date |
---|---|
US20170103815A1 (en) | 2017-04-13 |
US9786379B2 (en) | 2017-10-10 |
US9613708B1 (en) | 2017-04-04 |
CN110554844B (zh) | 2022-11-11 |
US20170162267A1 (en) | 2017-06-08 |
CN106569735A (zh) | 2017-04-19 |
TWI571742B (zh) | 2017-02-21 |
CN110554844A (zh) | 2019-12-10 |
TW201714094A (zh) | 2017-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106569735B (zh) | 数据储存装置及数据维护方法 | |
CN104217762B (zh) | 数据储存装置及其错误校正方法以及数据读取方法 | |
CN104217761B (zh) | 数据储存装置及其错误校正方法 | |
CN107918588A (zh) | 数据储存装置及其数据写入方法 | |
TWI590051B (zh) | 資料儲存裝置及其資料維護方法 | |
CN104835526B (zh) | 将数据写入至闪存的方法及相关的记忆装置与闪存 | |
CN104850514B (zh) | 存取闪存的方法及相关的控制器与记忆装置 | |
CN104750570B (zh) | 数据储存装置及其错误校正方法 | |
CN105701021A (zh) | 数据储存装置及其数据写入方法 | |
CN108363544B (zh) | 固态储存装置及其读取重试方法 | |
CN107977161A (zh) | 数据储存装置及其数据写入方法 | |
US20110317488A1 (en) | Data reading method and control circuit and memory controller using the same | |
US8694748B2 (en) | Data merging method for non-volatile memory module, and memory controller and memory storage device using the same | |
CN102792381A (zh) | 用于多电平存储器单元(mlc)快闪存储器的防数据破坏的保护 | |
US9122583B2 (en) | Memory controller and memory storage device and data writing method | |
CN107918524A (zh) | 数据储存装置及数据维护方法 | |
CN109426451A (zh) | 将数据写入闪存模块的方法及相关闪存控制器与电子装置 | |
CN102937929A (zh) | 多位/单元非挥发性内存的测试方法及多模式配置方法 | |
CN106033395B (zh) | 数据储存装置及其数据更新方法 | |
CN106155581B (zh) | 数据储存装置及其数据维护方法 | |
TWI492052B (zh) | 存取快閃記憶體的方法以及相關的記憶裝置 | |
TW201523634A (zh) | 當儲存資料於多位元儲存元件時利用虛擬資料的裝置及方法 | |
TW201445575A (zh) | 資料儲存裝置及其錯誤校正方法以及資料讀取方法 | |
RU2008115025A (ru) | Портативное устройство хранения данных, снабженное slc и mlc флэш-памятью |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |