CN105513638B - 数据储存装置及其数据存取方法 - Google Patents
数据储存装置及其数据存取方法 Download PDFInfo
- Publication number
- CN105513638B CN105513638B CN201410614783.2A CN201410614783A CN105513638B CN 105513638 B CN105513638 B CN 105513638B CN 201410614783 A CN201410614783 A CN 201410614783A CN 105513638 B CN105513638 B CN 105513638B
- Authority
- CN
- China
- Prior art keywords
- data
- parity check
- check code
- pages
- page
- 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
- 238000013500 data storage Methods 0.000 title claims abstract description 32
- 238000000034 method Methods 0.000 title claims description 27
- 101000634900 Homo sapiens Transcriptional-regulating factor 1 Proteins 0.000 description 29
- 241001506137 Rapa Species 0.000 description 29
- 102100029446 Transcriptional-regulating factor 1 Human genes 0.000 description 29
- QFJCIRLUMZQUOT-HPLJOQBZSA-N sirolimus Chemical compound C1C[C@@H](O)[C@H](OC)C[C@@H]1C[C@@H](C)[C@H]1OC(=O)[C@@H]2CCCCN2C(=O)C(=O)[C@](O)(O2)[C@H](C)CC[C@H]2C[C@H](OC)/C(C)=C/C=C/C=C/[C@@H](C)C[C@@H](C)C(=O)[C@H](OC)[C@H](O)/C(C)=C/[C@@H](C)C(=O)C1 QFJCIRLUMZQUOT-HPLJOQBZSA-N 0.000 description 29
- 238000010586 diagram Methods 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- 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/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
本发明提供一种数据储存装置包括一快闪存储器以及一控制器。快闪存储器包括多个芯片,每一芯片包括多个页面,每一芯片中的每一页面以一既定排列顺序构成一超级区块,超级区块由顶端至底部依序具有位置为0~X的页面,并且在超级区块中位置0~Y‑1的页面为一数据区,在超级区块中位置Y~X的页面为一同位检查码区,其中X为大于1的整数,并且Y为大于1并且小于X的整数。控制器用以在读取数据区中所储存的数据发生错误时,使用同位检查码区中的数据校正数据区中的数据。
Description
技术领域
本发明有关于一种存储器装置的数据存取方法;特别有关于一种具有一超级区块的存储器装置的数据存取方法。
背景技术
快闪存储器为一种普遍的非挥发性数据储存装置,以电性方式抹除与程序化。以与非门型的快闪存储器(即NAND FLASH)为例,常用作存储卡(memory card)、通用串行总线闪存装置(USB flash device)、固态硬碟(SSD)、嵌入式快闪存储器模组(eMMC)…等使用。
快闪存储器(如,NAND FLASH)的储存阵列包括多个区块(blocks)。各区块包括多个页面(pages),其中在快闪存储器中数据写入的单位是页面,数据抹除的最小单位为区块。由于快闪存储器的存取过程中可能会发生数据内容的错误,所以目前在存入数据时会将原始的数据进行编码,再储存编码后的数据至快闪存储器中,而数据读取时则将编码的数据读出,再解码所读出的编码数据来得到原先的数据。编/解码操作虽然能够进行除错,然而其所产生的编码数据的存取方式会引响到快闪存储器的效率。
发明内容
本发明所提供的数据储存装置可将所产生的多个同位检查码集中储存在超级区块SB中的尾端的位置,以增进数据在读取时的流畅度。另外本发明所提供的数据储存装置亦可加以对所产生的同位检查码进行第二次的编码保护,以避免第一次所产生的同位检查码发生错误。
本发明提供一种数据储存装置。数据储存装置包括一快闪存储器以及一控制器。快闪存储器包括多个芯片,每一芯片包括多个页面,每一芯片中的每一页面以一既定排列顺序构成一超级区块,超级区块由顶端至底部依序具有位置为0~X的页面,并且在超级区块中位置0~Y-1的页面为一数据区,在超级区块中位置Y~X的页面为一同位检查码区,其中X为大于1的整数,并且Y为大于1并且小于X的整数。控制器用以在读取数据区中所储存的数据发生错误时,使用同位检查码区中的数据校正数据区中的数据。同位检查码区中位置为Y~X的页面中所储存的数据由对数据区中的数据分别编码所产生的一第一同位检查码,第一同位检查码用以在所相应的数据区中所储存的数据发生错误时,校正相应的数据区中的数据。
在另一实施例中,数据区还具有多个数据群组。同位检查码区中位置为Y~Z-1的页面中所储存的数据由对多个数据群组中的数据分别编码所产生的多个第一同位检查码,第一同位检查码用以在所相应的数据群组中所储存的数据发生错误时,校正相应的数据区中的数据,其中Z为大于Y并且小于X的整数。同位检查码区中位置为Z~X的页面中所储存的数据由对多个第一同位检查码编码产生的一第二同位检查码,用以在多个第一同位检查码错误时,校正多个第一同位检查码,其中Z为大于Y并且小于X的整数。另外,数据群组依序由顶端至底部的方向储存于超级区块中,每一数据群组包括每一芯片中的至少一页面。
在一实施例中,既定排列顺序为先依序排列每一芯片中位于顶端的一第一页面,接着排列每一芯片中次于第一页面的一第二页面,直到排列每一芯片中位于底部的一最后页面。
本发明亦提供一种数据存取方法,适用于一数据储存装置,其中数据储存装置具有多个芯片,每一芯片具有位置为0~M的多个页面,并且芯片中的至少一第一芯片中位置M的页面为一同位检查码区,其余在每一芯片中的页面为一数据区。数据存取方法包括:对一欲存数据进行编码,以获得一第一同位检查码;将第一同位检查码暂存至一动态随机存取器中,并依照一第一既定写入顺序将欲存数据写入数据区,其中第一既定写入顺序为先将欲存数据中的部分位元写入每一芯片中位于位置为1的页面,接着再将欲存数据中剩余的部分位元写入每一芯片中位置为2的页面,直到欲存数据中的所有位元皆写入数据区中;当欲存数据中的所有位元皆写入数据区中,将第一同位检查码依序写入同位检查码区。
本发明亦提供另一种数据存取方法,适用于一数据储存装置,其中数据储存装置具有多个芯片,每一芯片具有位置为0~M的多个页面,并且在芯片中的至少一第一芯片的位置0~K-2以及芯片中除了第一芯片外的至少一第二芯片的位置0~K-1的页面为一数据区,在第一芯片的位置K-1~M以及第二芯片的位置K~M的页面为一同位检查码区。数据存取方法包括:根据一既定长度将一欲存数据,分割为多个数据群组;对多个数据群组分别进行编码,以获得多个第一同位检查码;将多个第一同位检查码暂存至一动态随机存取器中,并依照一第一既定写入顺序将欲存数据写入数据区,其中第一既定写入顺序为先将欲存数据中的部分位元写入每一芯片中位于位置为1的页面,接着再将欲存数据中剩余的部分位元写入每一芯片中位置为2的页面,直到欲存数据中的所有位元皆写入数据区中;当欲存数据中的所有位元皆写入数据区中,依照一第二既定写入顺序将多个第一同位检查码写入同位检查码区,其中第二既定写入顺序为先将第一同位检查码的部分位元写入第一芯片的位置K-1的页面,接着再将第一同位检查码中剩余的部分位元依序写入每一芯片的位置K的页面,直到第一同位检查码中的所有位元以及所有第一同位检查码皆写入同位检查码区中。
在另一实施例中,数据存取方法还还包括:对多个第一同位检查码进行编码,以获得一第二同位检查码;将第二同位检查码暂存至一动态随机存取器中;当所有第一同位检查码皆已写入同位检查码区中,依照第二既定写入顺序,在第一同位检查码后接续将第二同位检查码写入同位检查码区中。
附图说明
图1是本发明的一种实施例的电子系统的方块图。
图2A、2B是本发明的一种实施例的快闪存储器的示意图。
图3是本发明的一种实施例的超级区块的示意图。
图4是本发明的一种实施例的超级区块的数据区以及同位检查码区的一示意图。
图5A、5B是本发明的一种实施例的快闪存储器的数据区以及同位检查码区的一示意图。
图6是本发明的一种实施例的超级区块的数据区以及同位检查码区的另一示意图。
图7A、7B是本发明的一种实施例的快闪存储器的数据区以及同位检查码区的另一示意图。
图8是本发明的一种实施例的数据群组的一示意图。
图9是本发明的一种实施例的数据读取方法的流程图。
图10是本发明的另一种实施例的数据读取方法的流程图。
符号说明
100 电子系统;
120 主机;
140 数据储存装置;
160 控制器;
162 运算单元;
164 永久存储器;
166 动态随机存取器;
180 快闪存储器;
C0~CN 芯片;
CH0~CH3 通道;
W0~WN 位元线;
C0_P0~C0_PM、C1_P0~C1_PM、C2_P0~C2_PM、C3_P0~C3_PM、C4_P0~C4_PM、C5_P0~C5_PM、C6_P0~C6_PM、C7_P0~C7_PM、C8_P0~C8_PM、C9_P0~C9_PM、C10_P0~C10_PM、C11_P0~C11_PM、C0_P0~C0_PM、C0_P0~C0_PM、C12_P0~C12_PM、C13_P0~C13_PM 页面;
SB 超级区块;
DA 数据区;
RAPA 同位检查码区;
RG0~RGN 数据群组;
RAID_G 同位检查码群组;
S900-S908、S1000-S1016 步骤
具体实施方式
以下将详细讨论本发明各种实施例的装置及使用方法。然而值得注意的是,本发明所提供的许多可行的发明概念可实施在各种特定范围中。这些特定实施例仅用于举例说明本发明的装置及使用方法,但非用于限定本发明的范围。
图1是本发明的一种实施例的电子系统的方块图。电子系统100包括一主机120以及一数据储存装置140。数据储存装置140包括一快闪存储器180以及一控制器160,且可根据主机120所下达的命令操作。
控制器160包括一运算单元162、一永久存储器(如,只读存储器ROM)164以及一动态随机存取器(RAM)166。永久存储器164与所载的程序码、数据组成固件(firmware),由运算单元162执行,使控制器160基于该固件控制该快闪存储器180,其中运算单元162还用以将快闪存储器180中的页面重组为一超级区块(Super Block)。另外,运算单元162还包括一错误校正引擎(未图示)。错误校正引擎用以在数据发生错误时,对所读取的数据进行错误校正,本发明不限于此。举例而言,错误校正引擎可用以对数据进行编码以产生同位检查码,并且用以在读取超级区块SB中的数据区DA(如图4以及图5所示)中所储存的数据发生错误时,使用同位检查码区RAPA中的数据校正数据区DA中的数据。
快闪存储器180包括多个芯片C1-CN,每一芯片C1-CN中包括多个页面以及多个字元线与多个位元线,其中每一字元线用以连接至少一页面,以选择所欲读取的页面。举例而言,当快闪存储器180为单阶储存单元(Single-Level Cell,SLC)时,一条位元线用以连接至一个页面。当快闪存储器180为多阶储存单元(Multi-Level Cell,MLC)时,一条位元线用以连接至两个页面。当快闪存储器180为三阶储存单元(Triple-Level Cell,TLC)时,一条位元线用以连接至三个页面,但本发明不限于此。每一芯片C0-CN包括多个页面,每一芯片C0-CN中的每一页面以一既定排列顺序构成一超级区块SB(如图3所示)。
超级区块SB由顶端至底部依序具有位置为0~X的页面,并且在超级区块SB中位置0~Y-1的页面为一数据区DA,在超级区块SB中位置Y~X的页面为一同位检查码区,其中在超级区块SB中位置0~Y-1的页面为数据区DA用以储存数据,在超级区块SB中位置Y~X的页面为同位检查码区用以储存同位检查码(Parity)。值得注意的是,X为大于1的整数,并且Y为大于1并且小于X的整数。在另一实施例中,数据区DA还包括多个数据群组RG0~RGN,其中同位检查码区RAPA中位置为Y~Z-1的页面中所储存的数据由对多个数据群组RG0~RGN中的数据分别编码所产生的多个第一同位检查码,并且同位检查码区RAPA中位置为Z~X的页面中所储存的数据由对多个第一同位检查码编码产生的一第二同位检查码。值得注意的是,Z为大于Y并且小于X的整数。另外,在一实施例中,同位检查码(Parity)为容错式磁碟阵列(Redundant Array of Independent Disks,RAID)同位检查码。
图2是本发明的一种实施例的快闪存储器的示意图。如图2所示,快闪存储器180包括16个芯片C0-C15,并且每一通道(Channel)CH1-CH4分别控制4个芯片,但本发明不限于此。快闪存储器180亦可包括其他数量的芯片以及通道。另外,每一芯片C0-C15包括多个页面。举例而言,芯片C0包括页面C0_P0-C0_PM,芯片C1包括页面C1_P0-C1_PM,芯片C0包括页面C2_P0-C2_PM,芯片C3包括页面C3_P0-C3_PM,等依此类推。值得注意的是,在本实施例中,快闪存储器180为三阶储存单元(Triple-Level Cell,TLC),故每一位元线W0-WN分别用以连接至三个页面,但本发明不限于此。快闪存储器180亦可为单阶储存单元或者二阶储存单元。
图3是本发明的一种实施例的超级区块的示意图,其中图3是由图2所示的快闪存储器180中的16个芯片C0-C15中的每一页面以一既定排列顺序构成一超级区块SB超级区块SB。如图所示,既定排列顺序为先依序排列每一芯片C0-CN中位于顶端的一第一页面,接着排列每一芯片C0-CN中次于第一页面的一第二页面,直到排列每一芯片C0-CN中位于底部的一最后页面。举例而言,在位置0的页面为芯片C0的第一个页面C0_P0,在位置1的页面为芯片C1的第一个页面C0_P0,在位置2的页面为芯片C2的第一个页面C2_P0,依此类推,第16个芯片C15中位于顶端的页面C15_P0位于位置15。接着,在位置16的页面为芯片C0的第二个页面C0_P1,在位置17的页面为芯片C1的第一个页面C0_P1,在位置18的页面为芯片C2的第一个页面C2_P1,依此类推,最后两个位置X-1以及X则分别是第15个芯片C14的最后一个页面C14_PM以及第16个芯片C15中的最后页面C15_PM。
图4是本发明的一种实施例的超级区块的数据区以及同位检查码区的一示意图,其中图4中的超级区块SB相似于图3所示的超级区块SB。在本实施例中,同位检查码区RAPA在超级区块SB中最底端的三个位置X-2、X-1以及X的页面C13_PM、C14_PM以及C15_PM所构成的。换言之,在本实施例中,Y=X-2。如图4所示,在超级区块SB中位置0~X-3(0~Y-1)的页面为数据区DA。在超级区块SB中位置X-2~X(Y~X)的页面为同位检查码区RAPA,但本发明不限于此。在其他实施例中,同位检查码区RAPA为在超级区块SB中最底端的1、2、3、4、5、10、20或者其他至少一个以上位置的页面所构成的。另外,同位检查码区RAPA中位置为Y~X的页面中所储存的数据由对位置1~Y-1的页面的数据编码所产生的一第一同位检查码,第一同位检查码用以在数据区DA中所储存的数据发生错误时,校正数据区DA中的数据。值得注意的是,在一实施例中,数据区DA中包括多个数据段,其中每一数据段分别具有独立的同位检查码。换言之,第一同位检查码由多个分别相应于不同数据段的同位检查码所构成的。
另外,在图4的实施例中,以芯片的角度来看则如图5所示。图5是本发明的一种实施例的快闪存储器的数据区以及同位检查码区的一示意图。在图5中,每一芯片C0-CN具有位置为0~M的多个页面,并且芯片C0~CN中的至少一第一芯片C0~CN的位置M的页面为同位检查码区RAPA,其余在每一芯片C0~CN中的页面为数据区DA。在本实施例中,同位检查码区RAPA为最后三个芯片的最后三个位置的页面C13_PM、C14_PM以及C15_PM,但本发明不限于此。
图6是本发明的另一种实施例的超级区块的数据区以及同位检查码区的一示意图,其中图5中的超级区块SB相似于图3所示的超级区块SB。值得注意的是,在本实施例中,数据区DA分为多个数据群组RG0~RGN,并且同位检查码区RAPA还包括一同位检查码群组RAID_G,用以储存以数据群组RG0~RGN为单位所产生的多个第一同位检查码,其中数据群组RG0~RGN依序由顶端至底部的方向储存于超级区块SB中,并且每一数据群组RG0~RGN包括每一芯片C0-CN中的至少一页面。另外,同位检查码区RAPA中最底端的三个位置X-2、X-1以及X的页面C13_PM、C14_PM以及C15_PM则用以储存对同位检查码群组RAID_G编码所产生的第二同位检查码,但本发明不限于此。换言之,在本实施例中,Z=X-2。同位检查码区RAPA中位置为Y~X-3(Y~Z-1)的页面中所储存的数据由对多个数据群组RG0~RGN中的数据分别编码所产生的多个第一同位检查码,第一同位检查码用以在所相应的数据群组RG0~RGN中所储存的数据发生错误时,校正相应的数据区DA中的数据。同位检查码区RAPA中位置为X-2~X(Z~X)的页面中所储存的数据由对多个第一同位检查码编码产生的一第二同位检查码,用以在多个第一同位检查码错误时,校正多个第一同位检查码。值得注意的是,在一实施例中,数据区DA中包括多个数据段,其中每一数据段分别具有独立的同位检查码。另外,第二同位检查码亦由将同位检查码群组RAID_G分为多个数据段编码所获得的多个同位检查码所构成的。换言之,每一第一同位检查码以及第二同位检查码皆由多个个分别相应于不同数据段的同位检查码所构成的。
另外,在图6的实施例中,以芯片的角度来看则如图7所示。图7是本发明的一种实施例的快闪存储器的数据区以及同位检查码区的另一示意图。在图7中,每一芯片C0~CN具有位置为0~M的多个页面,并且在芯片C0~CN中的至少一第一芯片的位置0~K-2以及所有芯片中除了第一芯片外的至少一第二芯片的位置0~K-1的页面为数据区DA,在第一芯片的位置K-1~M以及第二芯片C0~CN的位置的页面为同位检查码区RAPA。在本实施例中,第一芯片为芯片C13、C14以及C15,第二芯片为芯片C0~C12,但本发明不限于此。详细而言,在同位检查码区RAPA中,除了最后三个芯片的最后三个位置的页面C13_PM、C14_PM以及C15_PM用以储存第二同位检查码之外,其余的48个页面为用以储存多个第一同位检查码的同位检查码群组RAID_G,但本发明不限于此。
举例而言,在本发明的一实施例中,每一数据群组RG0~RGN分别具有由16个芯片C0~C15中的5条字线所控制的240个页面,如图8所示。每一数据群组RG0~RGN经由编码后会产生3个页面的第一同位检查码。假设数据区DA具有16个数据群组RG0~RG15,同位检查码群组RAID_G的最底端则会储存48个页面的多个个第一同位检查码。接着,控制器160会在对同位检查码群组RAID_G中48个页面的第一同位检查码进行编码,以产生3个页面的第二同位检查码。值得注意的是,控制器160可在一不固定的变动单位下,产生相同长度的同位检查码(例如,上述的3个页面),但本发明不限于此。控制器160可在一不固定的变动单位下,产生相同长度为1、2、3、4、5、10、20或者其他至少一个以上页面的同位检查码。
图9是本发明的一种实施例的数据读取方法的流程图,适用于图4以及图5所示的超级区块SB。超级区块SB由顶端至底部依序具有位置为0~X的页面,并且在超级区块SB中位置0~Y-1的页面为一数据区DA,在超级区块SB中位置Y~X的页面为一同位检查码区,其中在超级区块SB中位置0~Y-1的页面为数据区DA用以储存数据,在超级区块SB中位置Y~X的页面为同位检查码区用以储存同位检查码(Parity)。换言之,每一芯片C0-CN具有位置为0~M的多个页面,并且芯片C0~CN中的至少一第一芯片C0~CN的位置M的页面为同位检查码区RAPA,其余在每一芯片C0~CN中的页面为数据区DA。流程开始于步骤S900。
在步骤S900中,数据储存装置140自主机120或者其他储存装置接收一欲存数据。
接着,在步骤S902中,控制器160用以对所接收的欲存数据进行编码,以获得一第一同位检查码。
接着,在步骤S904中,控制器160将第一同位检查码暂存至动态随机存取器166中。
接着,在步骤S906中,控制器160依照一第一既定写入顺序将欲存数据写入数据区DA,其中第一既定写入顺序为先将欲存数据中的部分位元写入每一芯片C0~CN中位于位置为1的页面,接着再将欲存数据中剩余的部分位元写入每一芯片C0~CN中位置为2的页面,直到欲存数据中的所有位元皆写入数据区DA中,如图5所示。换言之,控制器160是依序从位置0至位置Y-1的方向,将欲存数据写入超级区块SB的数据区DA中,如图4所示。
接着,在步骤S908中,当欲存数据中的所有位元皆写入数据区DA中,控制器160将储存于动态随机存取器166中的第一同位检查码依序写入同位检查码区RAPA。举例而言,控制器160先将第一同位检查码的部分位元写入芯片C13中位置为M的页面C13_PM中,再将第一同位检查码的其他位元写入芯片C14中位置为M的页面C14_PM中,最后将第一同位检查码的剩余的位元写入芯片C15中位置为M的页面C15_PM中,如图5所示。
值得注意的是,在一实施例中,控制器160将欲存数据切分为多个数据段,以分别进行编码,其中每一数据段分别具有独立的同位检查码。换言之,第一同位检查码由多个个分别相应于不同数据段的同位检查码所构成的。每当控制器160产生一个同位检查码,控制器即将所产生的同位检查码写入动态随机存取器166中,并待所有欲存数据皆写入数据区DA后,才将储存于动态随机存取器166中的所有同位检查码(即第一同位检查码)写入同位检查码区RAPA。流程结束于步骤S908。
图10是本发明的另一种实施例的数据读取方法的流程图,适用于图6以及图7所示的超级区块SB。超级区块SB由顶端至底部依序具有位置为0~X的页面,并且在超级区块SB中位置0~Y-1的页面为一数据区DA,在超级区块SB中位置Y~X的页面为一同位检查码区,其中在超级区块SB中位置0~Y-1的页面为数据区DA用以储存数据,在超级区块SB中位置Y~X的页面为同位检查码区用以储存同位检查码(Parity)。值得注意的是,在本实施例中,数据区DA分为多个数据群组RG0~RGN,并且同位检查码区RAPA还包括一同位检查码群组RAID_G,用以储存以数据群组RG0~RGN为单位所产生的多个第一同位检查码,其中数据群组RG0~RGN依序由顶端至底部的方向储存于超级区块SB中,并且每一数据群组RG0~RGN包括每一芯片C0-CN中的至少一页面。另外,同位检查码区RAPA中最底端的三个位置X-2、X-1以及X的页面C13_PM、C14_PM以及C15_PM则用以储存对同位检查码群组RAID_G编码所产生的第二同位检查码,但本发明不限于此。换言之,数据储存装置140具有多个芯片C0~CN,每一芯片C0~CN具有位置为0~M的多个页面,并且在芯片C0~CN中的至少一第一芯片C0~CN的位置0~K-2以及芯片C0~CN中除了第一芯片C0~CN外的至少一第二芯片C0~CN的位置0~K-1的页面为一数据区DA,在第一芯片C0~CN的位置K-1~M以及第二芯片C0~CN的位置K~M的页面为一同位检查码区RAPA。流程开始于步骤S1000。
在步骤S1000中,数据储存装置140自主机120或者其他储存装置接收一欲存数据。
接着,在步骤S1002中,控制器160根据一既定长度将欲存数据,分割为多个数据群组以分别存入数据区DA的数据群组RG0~RGN中。在一实施例中,每一数据群组RG0~RGN分别具有由16个芯片C0~C15中的5条字线所控制的240个页面,但本发明不限于此。换言之,既定长度即为240个页面可储存的数据量。
接着,在步骤S1004中,控制器160用以分别对多个数据群组分别进行编码,以获得多个第一同位检查码。
接着,在步骤S1006中,控制器160将多个第一同位检查码暂存至动态随机存取器166。
接着,在步骤S1008中,控制器160对多个第一同位检查码进行编码,以获得一第二同位检查码。
接着,在步骤S1010中,控制器160将第二同位检查码暂存至动态随机存取器166。
接着,在步骤S1012中,控制器160依照一第一既定写入顺序将欲存数据所分割的群组依序写入数据区DA中的料群组RG0~RGN中。第一既定写入顺序为先将欲存数据中的部分位元写入每一芯片C0~CN中位于位置为1的页面,接着再将欲存数据中剩余的部分位元写入每一芯片C0~CN中位置为2的页面,直到欲存数据中的所有位元皆写入数据区DA中,如图7所示。换言之,控制器160是依序从位置0至位置Y-1的方向,将欲存数据写入超级区块SB的数据区DA中,如图6所示。
接着,在步骤S1014中,当欲存数据中的所有位元皆写入数据区DA中,控制器160依照一第二既定写入顺序将多个第一同位检查码写入同位检查码区RAPA。第二既定写入顺序为先将第一同位检查码的部分位元写入第一芯片C0~CN的位置K-1的页面,接着再将第一同位检查码中剩余的部分位元依序写入每一芯片C0~CN的位置K的页面,直到第一同位检查码中的所有位元以及所有第一同位检查码皆写入同位检查码区RAPA中,如图7所示。举例而言,控制器160是先将第一个第一同位检查码依序写入芯片C13的页面C13_PM-3、芯片C14的页面C14_PM-3以及芯片C15的页面C15_PM-3,再将第二个第二同位检查码依序写入芯片C0的页面C0_PM-2、芯片C1的页面C1_PM-2以及芯片C2的页面C2_PM-2,直到所有的第一检查码皆写入同为检察区RAPA中,但本发明不限于此。每一第一同位检查码的数据量可大于或者小于3个页面。
接着,在步骤S1016中,当所有第一同位检查码皆已写入同位检查码区RAPA中,控制器160依照同样第二既定写入顺序,在第一同位检查码在同位检查码区RAPA中所储存的位置之后,接续地将第二同位检查码写入同位检查码区RAPA中。在图7的实施例中,控制器160将第二同位检查码写入芯片C13中位置为M的页面C13_PM、芯片C14中位置为M的页面C14_PM以及芯片C15中位置为M的页面C15_PM中。
值得注意的是,在一实施例中,控制器160将每一数据群组中的数据切分为多个数据段,以分别进行编码,其中每一数据段分别具有独立的同位检查码。换言之,每一第一同位检查码由多个分别相应于不同数据段的同位检查码所构成的。当所有第一位元检查码皆编码完成后,控制器160更用以将由多个第一位元检查码所构成的同位检查码群组RAID_G切分为多个数据段,每一由同位检查码群组RAID_G所切分的数据段皆具有一独立的同位检查码。换言之,第二同位检查码也是由多个同位检查码所构成的。每当控制器160产生一个同位检查码,控制器即将所产生的同位检查码写入动态随机存取器166中,并待所有欲存数据皆写入数据区DA后,才将储存于动态随机存取器166中的所有同位检查码(即第一同位检查码)写入同位检查码区RAPA。流程结束于步骤S1016。
本发明所提供的数据储存装置140可将所产生的多个同位检查码集中储存在超级区块SB中的尾端的位置,以增进数据在读取时的流畅度,其中一般的同位检查码紧接着数据段储存在区块中。另外本发明所提供的数据储存装置140亦可加以对所产生的同位检查码进行第二次的编码保护,以避免第一次所产生的同位检查码发生错误。
本发明的方法,或特定型态或其部份,可以以程序码的型态存在。程序码可储存于实体媒体,如软碟、光碟片、硬碟、或是任何其他机器可读取(如电脑可读取)储存媒体,亦或不限于外在形式的电脑程序产品,其中,当程序码被机器,如电脑载入且执行时,此机器变成用以参与本发明的装置。程序码也可透过一些传送媒体,如电线或电缆、光纤、或是任何传输型态进行传送,其中,当程序码被机器,如电脑接收、载入且执行时,此机器变成用以参与本发明的装置。当在一般用途处理单元实作时,程序码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
以上所述,仅为本发明的较佳实施例而已,当不能以此限定本发明实施的范围,即凡依本发明申请专利范围及发明说明内容所作的简单的等效变化与修饰,皆仍属本发明专利涵盖的范围内。另外本发明的任一实施例或申请专利范围不须达成本发明所揭示的全部目的或优点或特点。此外,摘要部分和标题仅是用来辅助专利文件搜寻之用,并非用来限制本发明的权利范围。
Claims (16)
1.一种数据储存装置,包括:
一快闪存储器,包括多个芯片,每一芯片包括多个页面,每一上述芯片中的每一上述页面以一既定排列顺序构成一超级区块,上述超级区块由顶端至底部依序具有位置为0~X的上述页面,并且在上述超级区块中位置0~Y-1的上述页面为一数据区,在上述超级区块中位置Y~X的上述页面为一同位检查码区,其中X为大于2的整数,并且Y为大于1并且小于X的整数;以及
一控制器,用以在读取上述数据区中所储存的数据发生错误时,使用上述同位检查码区中的数据校正上述数据区中的数据。
2.根据权利要求1所述的数据储存装置,其特征在于上述同位检查码区中位置为Y~X的上述页面中所储存的数据由对上述数据区中的数据分别编码所产生的一第一同位检查码,上述第一同位检查码用以在所相应的上述数据区中所储存的数据发生错误时,校正相应的上述数据区中的数据。
3.根据权利要求1所述的数据储存装置,其特征在于,上述数据区具有多个数据群组。
4.根据权利要求3所述的数据储存装置,其特征在于,上述同位检查码区中位置为Y~Z-1的上述页面中所储存的数据由对上述多个数据群组中的数据分别编码所产生的多个第一同位检查码,上述第一同位检查码用以在所相应的上述数据群组中所储存的数据发生错误时,校正相应的上述数据区中的数据,其中Z为大于Y并且小于X的整数。
5.根据权利要求4所述的数据储存装置,其特征在于,上述同位检查码区中位置为Z~X的上述页面中所储存的数据由对上述多个第一同位检查码编码产生的一第二同位检查码,用以在上述多个第一同位检查码错误时,校正上述多个第一同位检查码,其中Z为大于Y并且小于X的整数。
6.根据权利要求3所述的数据储存装置,其特征在于,上述数据群组依序由顶端至底部的方向储存于上述超级区块中。
7.根据权利要求6所述的数据储存装置,其特征在于,每一上述数据群组包括每一上述芯片中的至少一上述页面。
8.根据权利要求1所述的数据储存装置,其特征在于,上述既定排列顺序为先依序排列每一上述芯片中位于顶端的一第一页面,接着排列每一上述芯片中次于上述第一页面的一第二页面,直到排列每一上述芯片中位于底部的一最后页面。
9.一种数据存取方法,适用于一数据储存装置,其中上述数据储存装置具有多个芯片,每一上述芯片具有位置为0~M的多个页面,并且上述芯片中的至少一第一芯片中位置M的上述页面为一同位检查码区,其余在每一上述芯片中的上述页面为一数据区,其中每一上述芯片中的每一上述页面以一既定顺序构成一超级区块,上述超级区块由顶端至底部依序具有位置为0~X的上述页面,并且在上述超级区块中位置0~Y-1的上述页面为上述数据区,在上述超级区块中位置Y~X的上述页面为上述同位检查码区,其中X为大于2的整数,并且Y为大于1并且小于X的整数,上述数据存取方法包括:
对一欲存数据进行编码,以获得一第一同位检查码;
将上述第一同位检查码暂存至一动态随机存取器中,并依照一第一既定写入顺序将上述欲存数据写入上述数据区,其中上述第一既定写入顺序为先将上述欲存数据中的部分位元写入每一上述芯片中位于位置为1的上述页面,接着再将上述欲存数据中剩余的部分位元写入每一上述芯片中位置为2的上述页面,直到上述欲存数据中的所有位元皆写入上述数据区中;
当上述欲存数据中的所有位元皆写入上述数据区中,将上述第一同位检查码依序写入上述同位检查码区。
10.根据权利要求9所述的数据存取方法,其特征在于,上述第一同位检查码用以在读取储存在上述数据区的上述欲存数据发生错误时,校正上述欲存数据。
11.根据权利要求9所述的数据存取方法,其特征在于,上述既定顺序为先依序排列每一上述芯片中位于顶端的一第一页面,接着排列每一上述芯片中次于上述第一页面的一第二页面,直到排列每一上述芯片中位于底部的一最后页面。
12.一种数据存取方法,适用于一数据储存装置,其中上述数据储存装置具有多个芯片,每一上述芯片具有位置为0~M的多个页面,其中上述芯片中的每一上述页面由顶端至底部之顺序构成一超级区块,并且在上述芯片中的至少一第一芯片的位置0~K-2以及上述芯片中除了上述第一芯片外的至少一第二芯片的位置0~K-1的上述页面为一数据区,在上述第一芯片的位置K-1~M以及上述第二芯片的位置K~M的上述页面为一同位检查码区,其中M为大于2的整数,并且K为大于1并且小于M的整数,其中每一上述芯片中的每一上述页面以一既定顺序构成一超级区块,上述超级区块由顶端至底部依序具有位置为0~X的上述页面,并且在上述超级区块中位置0~Y-1的上述页面为上述数据区,在上述超级区块中位置Y~X的上述页面为上述同位检查码区,其中X为大于2的整数,并且Y为大于1并且小于X的整数,上述数据存取方法包括:
根据一既定长度将一欲存数据,分割为多个数据群组;
对上述多个数据群组分别进行编码,以获得多个第一同位检查码;
将上述多个第一同位检查码暂存至一动态随机存取器中,并依照一第一既定写入顺序将上述欲存数据写入上述数据区,其中上述第一既定写入顺序为先将上述欲存数据中的部分位元写入每一上述芯片中位于位置为1的上述页面,接着再将上述欲存数据中剩余的部分位元写入每一上述芯片中位置为2的上述页面,直到上述欲存数据中的所有位元皆写入上述数据区中;以及
当上述欲存数据中的所有位元皆写入上述数据区中,依照一第二既定写入顺序将上述多个第一同位检查码写入上述同位检查码区,其中上述第二既定写入顺序为先将上述第一同位检查码的部分位元写入上述第一芯片的位置K-1的上述页面,接着再将上述第一同位检查码中剩余的部分位元依序写入每一上述芯片的位置K的页面,直到上述第一同位检查码中的所有位元以及所有上述第一同位检查码皆写入上述同位检查码区中。
13.根据权利要求12所述的数据存取方法,其特征在于,上述第一同位检查码用以在读取储存在上述数据区的相应的上述数据群组发生错误时,校正上述数据群组。
14.根据权利要求12所述的数据存取方法,其特征在于,还包括:
对上述多个第一同位检查码进行编码,以获得一第二同位检查码;
将上述第二同位检查码暂存至一动态随机存取器中;
当所有上述第一同位检查码皆已写入上述同位检查码区中,依照上述第二既定写入顺序,在上述第一同位检查码后接续将上述第二同位检查码写入上述同位检查码区中。
15.根据权利要求14所述的数据存取方法,其特征在于,上述第二同位检查码用以在读取储存在上述第一同位检查码发生错误时,校正上述第一同位检查码。
16.根据权利要求12所述的数据存取方法,其特征在于,上述既定顺序为先依序排列每一上述芯片中位于顶端的一第一页面,接着排列每一上述芯片中次于上述第一页面的一第二页面,直到排列每一上述芯片中位于底部的一最后页面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010304166.8A CN111538676B (zh) | 2014-10-14 | 2014-11-04 | 数据储存装置及其数据存取方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103135459A TWI556254B (zh) | 2014-10-14 | 2014-10-14 | 資料儲存裝置及其資料存取方法 |
TW103135459 | 2014-10-14 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010304166.8A Division CN111538676B (zh) | 2014-10-14 | 2014-11-04 | 数据储存装置及其数据存取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105513638A CN105513638A (zh) | 2016-04-20 |
CN105513638B true CN105513638B (zh) | 2020-05-15 |
Family
ID=55655524
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010304166.8A Active CN111538676B (zh) | 2014-10-14 | 2014-11-04 | 数据储存装置及其数据存取方法 |
CN201410614783.2A Active CN105513638B (zh) | 2014-10-14 | 2014-11-04 | 数据储存装置及其数据存取方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010304166.8A Active CN111538676B (zh) | 2014-10-14 | 2014-11-04 | 数据储存装置及其数据存取方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US9741451B2 (zh) |
CN (2) | CN111538676B (zh) |
TW (1) | TWI556254B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI556254B (zh) * | 2014-10-14 | 2016-11-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料存取方法 |
US10019314B2 (en) | 2016-04-27 | 2018-07-10 | Silicon Motion Inc. | Flash memory apparatus and storage management method for flash memory |
CN107391026B (zh) | 2016-04-27 | 2020-06-02 | 慧荣科技股份有限公司 | 闪存装置及闪存存储管理方法 |
CN111679787B (zh) | 2016-04-27 | 2023-07-18 | 慧荣科技股份有限公司 | 闪存装置、闪存控制器及闪存存储管理方法 |
US10289487B2 (en) | 2016-04-27 | 2019-05-14 | Silicon Motion Inc. | Method for accessing flash memory module and associated flash memory controller and memory device |
CN107391296B (zh) | 2016-04-27 | 2020-11-06 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
TWI720246B (zh) * | 2017-08-30 | 2021-03-01 | 慧榮科技股份有限公司 | 資料儲存裝置以及其操作方法 |
KR102524432B1 (ko) | 2018-04-09 | 2023-04-24 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
TWI714248B (zh) * | 2019-09-09 | 2020-12-21 | 新唐科技股份有限公司 | 記憶體控制器與資料保護方法 |
KR20210128224A (ko) * | 2020-04-16 | 2021-10-26 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그것의 동작 방법 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1933026A (zh) * | 2006-08-18 | 2007-03-21 | 福昭科技(深圳)有限公司 | 高可靠排序管理扇区的存储结构 |
CN101382917A (zh) * | 2007-09-06 | 2009-03-11 | 株式会社日立制作所 | 半导体存储装置及半导体存储装置的控制方法 |
CN101946239A (zh) * | 2008-02-29 | 2011-01-12 | 株式会社东芝 | 半导体存储装置及其控制方法和错误纠正系统 |
CN102693760A (zh) * | 2011-03-24 | 2012-09-26 | 扬智科技股份有限公司 | Nand快闪存储器的错误校正方法 |
CN103309825A (zh) * | 2012-02-22 | 2013-09-18 | 慧荣科技股份有限公司 | 存取快闪存储器的方法与快闪存储器控制器 |
CN104064221A (zh) * | 2013-03-18 | 2014-09-24 | 慧荣科技股份有限公司 | 错误修正方法以及存储器装置 |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08315567A (ja) * | 1995-05-22 | 1996-11-29 | Mitsubishi Electric Corp | 半導体記憶装置 |
US7032154B2 (en) * | 2000-06-05 | 2006-04-18 | Tyco Telecommunications (Us) Inc. | Concatenated forward error correction decoder |
KR100842680B1 (ko) * | 2007-01-08 | 2008-07-01 | 삼성전자주식회사 | 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템 |
US8468416B2 (en) * | 2007-06-26 | 2013-06-18 | International Business Machines Corporation | Combined group ECC protection and subgroup parity protection |
US7747903B2 (en) * | 2007-07-09 | 2010-06-29 | Micron Technology, Inc. | Error correction for memory |
TWI382422B (zh) * | 2008-07-11 | 2013-01-11 | Genesys Logic Inc | 根據錯誤更正碼更新快閃記憶體之資料頁面之儲存裝置與方法 |
CN101625897B (zh) * | 2008-07-11 | 2012-05-30 | 群联电子股份有限公司 | 用于快闪存储器的数据写入方法、储存系统与控制器 |
US8555143B2 (en) * | 2008-12-22 | 2013-10-08 | Industrial Technology Research Institute | Flash memory controller and the method thereof |
US8566507B2 (en) * | 2009-04-08 | 2013-10-22 | Google Inc. | Data storage device capable of recognizing and controlling multiple types of memory chips |
KR101516580B1 (ko) * | 2009-04-22 | 2015-05-11 | 삼성전자주식회사 | 컨트롤러, 이를 포함하는 데이터 저장 장치 및 데이터 저장 시스템, 및 그 방법 |
JP5789767B2 (ja) * | 2009-11-25 | 2015-10-07 | パナソニックIpマネジメント株式会社 | 半導体記録装置及び半導体記録装置の制御方法 |
JP5017407B2 (ja) * | 2010-03-24 | 2012-09-05 | 株式会社東芝 | 半導体記憶装置 |
US9424178B2 (en) * | 2010-06-21 | 2016-08-23 | Sandisk Il Ltd. | Optimized flash memory without dedicated parity area and with reduced array size |
JP5553309B2 (ja) * | 2010-08-11 | 2014-07-16 | 国立大学法人 東京大学 | データ処理装置 |
JP2012063871A (ja) * | 2010-09-14 | 2012-03-29 | Univ Of Tokyo | 制御装置およびデータ記憶装置 |
CN102436842B (zh) * | 2010-09-29 | 2014-05-14 | 群联电子股份有限公司 | 存储器储存装置、存储器控制器与产生对数似然比的方法 |
JP5426711B2 (ja) * | 2011-06-08 | 2014-02-26 | パナソニック株式会社 | メモリコントローラ及び不揮発性記憶装置 |
US9424128B2 (en) * | 2011-08-12 | 2016-08-23 | Futurewei Technologies, Inc. | Method and apparatus for flexible RAID in SSD |
US9026887B2 (en) * | 2012-03-15 | 2015-05-05 | Micron Technology, Inc. | Physical page, logical page, and codeword correspondence |
KR20130114297A (ko) * | 2012-04-09 | 2013-10-17 | 삼성전자주식회사 | 솔리드 스테이트 드라이브 및 이를 포함하는 전자 장치 |
US9684591B2 (en) * | 2012-04-27 | 2017-06-20 | Hitachi, Ltd. | Storage system and storage apparatus |
KR102025340B1 (ko) * | 2012-11-27 | 2019-09-25 | 삼성전자 주식회사 | 불휘발성 메모리를 포함하는 반도체 메모리 장치, 이를 포함하는 캐쉬 메모리 및 컴퓨터 시스템 |
KR102143517B1 (ko) * | 2013-02-26 | 2020-08-12 | 삼성전자 주식회사 | 에러 정정회로를 포함하는 반도체 메모리 장치 및 반도체 메모리 장치의 동작방법 |
US20140245101A1 (en) * | 2013-02-28 | 2014-08-28 | Kabushiki Kaisha Toshiba | Semiconductor memory |
US9053012B1 (en) * | 2013-03-15 | 2015-06-09 | Pmc-Sierra, Inc. | Systems and methods for storing data for solid-state memory |
US9026867B1 (en) * | 2013-03-15 | 2015-05-05 | Pmc-Sierra, Inc. | Systems and methods for adapting to changing characteristics of multi-level cells in solid-state memory |
KR102164630B1 (ko) * | 2013-06-28 | 2020-10-12 | 삼성전자주식회사 | 메모리 컨트롤러 및 상기 메모리 컨트롤러의 동작 방법 |
US9389957B2 (en) * | 2013-09-03 | 2016-07-12 | Kabushiki Kaisha Toshiba | Memory controller, memory system, and memory control method |
US9021343B1 (en) * | 2014-06-13 | 2015-04-28 | Sandisk Technologies Inc. | Parity scheme for a data storage device |
TWI556254B (zh) * | 2014-10-14 | 2016-11-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料存取方法 |
-
2014
- 2014-10-14 TW TW103135459A patent/TWI556254B/zh active
- 2014-11-04 CN CN202010304166.8A patent/CN111538676B/zh active Active
- 2014-11-04 CN CN201410614783.2A patent/CN105513638B/zh active Active
-
2015
- 2015-05-13 US US14/711,472 patent/US9741451B2/en active Active
-
2017
- 2017-07-13 US US15/649,394 patent/US10283216B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1933026A (zh) * | 2006-08-18 | 2007-03-21 | 福昭科技(深圳)有限公司 | 高可靠排序管理扇区的存储结构 |
CN101382917A (zh) * | 2007-09-06 | 2009-03-11 | 株式会社日立制作所 | 半导体存储装置及半导体存储装置的控制方法 |
CN101946239A (zh) * | 2008-02-29 | 2011-01-12 | 株式会社东芝 | 半导体存储装置及其控制方法和错误纠正系统 |
CN102693760A (zh) * | 2011-03-24 | 2012-09-26 | 扬智科技股份有限公司 | Nand快闪存储器的错误校正方法 |
CN103309825A (zh) * | 2012-02-22 | 2013-09-18 | 慧荣科技股份有限公司 | 存取快闪存储器的方法与快闪存储器控制器 |
CN104064221A (zh) * | 2013-03-18 | 2014-09-24 | 慧荣科技股份有限公司 | 错误修正方法以及存储器装置 |
Also Published As
Publication number | Publication date |
---|---|
TWI556254B (zh) | 2016-11-01 |
CN111538676A (zh) | 2020-08-14 |
US9741451B2 (en) | 2017-08-22 |
US20170309350A1 (en) | 2017-10-26 |
US10283216B2 (en) | 2019-05-07 |
TW201614670A (en) | 2016-04-16 |
CN105513638A (zh) | 2016-04-20 |
CN111538676B (zh) | 2023-08-15 |
US20160103734A1 (en) | 2016-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105513638B (zh) | 数据储存装置及其数据存取方法 | |
US10771091B2 (en) | Flash memory apparatus and storage management method for flash memory | |
US10019355B2 (en) | Flash memory apparatus and storage management method for flash memory | |
CN106445723B (zh) | 存取闪存模块的方法、闪存控制器以及记忆装置 | |
EP2684134B1 (en) | Programmable data storage management | |
CN107403640B (zh) | 存取闪存模块的方法及相关的闪存控制器与记忆装置 | |
CN104934062B (zh) | 非易失性存储器及写入方法 | |
US20160283319A1 (en) | Data storage device and encoding method thereof | |
CN107423158B (zh) | 存取闪存模块的方法及相关的闪存控制器与记忆装置 | |
US10157099B2 (en) | Data storage device and data maintenance method thereof | |
CN111048140A (zh) | 错误校正电路、存储器控制器及存储器系统 | |
US20240154624A1 (en) | Flash memory apparatus and storage management method for flash memory | |
CN111951855B (zh) | 存取闪存模块的方法及相关的闪存控制器与记忆装置 | |
US9104596B2 (en) | Memory system | |
CN111858397A (zh) | 控制器以及操作该控制器的方法 | |
US11372719B1 (en) | Memory system | |
TWI831701B (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與記憶裝置 | |
US20240160566A1 (en) | Independent flash translation layer tables for memory | |
CN112214348A (zh) | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |