CN103744744A - 数据储存装置以及易失性存储器的数据校验方法 - Google Patents
数据储存装置以及易失性存储器的数据校验方法 Download PDFInfo
- Publication number
- CN103744744A CN103744744A CN201410046036.3A CN201410046036A CN103744744A CN 103744744 A CN103744744 A CN 103744744A CN 201410046036 A CN201410046036 A CN 201410046036A CN 103744744 A CN103744744 A CN 103744744A
- Authority
- CN
- China
- Prior art keywords
- data
- error
- checking
- burst format
- volatile memory
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- 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/1048—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 using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/109—Sector level checksum or ECC, i.e. sector or stripe level checksum or ECC in addition to the RAID parity calculation
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
本发明揭示一种数据储存装置以及易失性存储器的数据校验方法。所揭示的数据储存装置包括:非易失性存储器、易失性存储器、以及控制器。控制器根据一主机的要求操作非易失性存储器,且以易失性存储器暂存操作非易失性存储器时所需的暂态数据。控制器包括对上述暂态数据产生错误校验内容,并且将所产生的错误校验内容与对应的暂态数据呈至少一突发格式暂存至该易失性存储器。如此一来,易失性存储器无须针对错误校验数据增加任何管脚,即可具有数据校验功能。
Description
技术领域
本发明涉及一种易失性存储器的数据校验,特别是涉及数据储存装置的易失性存储器的数据校验。
背景技术
数据校验用于数字数据的检查甚至校正。例如,ECC(Error Checking andCorrecting,译为「错误检查与校正」)以及Parity(译为「奇偶校验」)即为常见的两种数据校验技术。数据校验一般是对数字数据进行运算产生对应的错误校验内容,用作数字数据的检查甚至校正。例如产生错误校验码(ErrorChecking Code)以及错误校验内容(Parity)即为常见的两种数据校验技术的错误校验内容。
为了传输数据校验所需的错误校验内容,一种传统存储器技术是针对错误校验内容多设计至少一管脚,会导致硬件成本较高。如何以低成本制作具有数据校验功能的存储器为本技术领域一项待解决问题。
另外,以数据储存装置为例,其中作为使用者数据的储存媒体的非易失性存储器的操作相当复杂。一般而言,数据储存装置中还设置有易失性存储器作数据暂存。如何以低成本使得数据储存装置的易失性存储器也有数据校验功能,为本技术领域一项待解决问题。
发明内容
本发明揭示一种易失性存储器的数据校验技术,还揭示一种使用该技术的数据储存装置。
根据本发明所揭示技术的一种实施方式所实现的一种数据储存装置,包括:非易失性存储器、易失性存储器、以及控制器。控制器是根据一主机的要求操作非易失性存储器,且是以易失性存储器暂存操作非易失性存储器时所需的暂态数据。控制器包括对上述暂态数据产生错误校验内容,并且将所产生的错误校验内容与对应的暂态数据呈至少一突发格式暂存至该易失性存储器。如此一来,易失性存储器无须针对错误校验数据增加任何管脚,即可具有数据校验功能。
另一种实施方式涉及一数据储存装置的易失性存储器的数据校验方法,其中该数据储存装置包括一非易失性存储器以及一易失性存储器,且该方法包括:对与该非易失性存储器相关的暂态数据产生错误校验内容;以及,将上述暂态数据以及对应的错误校验内容呈至少一突发格式暂存至该易失性存储器中。
本发明所揭示技术并不意图限定于数据储存装置的应用。另一种实施方式涉及一种易失性存储器数据校验方法,包括:对数据尺寸大于一第一数据量的第一型数据,产生错误校验内容;将所述第一型数据呈多个突发格式写入该易失性存储器;以及,将所产生的所述错误校验内容呈另一个突发格式写入至该易失性存储器。
本发明的前述数据储存装置及其易失性存储器的数据校验方法,可以在不增加易失性存储器的管脚数量的前提下,实现易失性存储器所暂存的操作非易失性存储器时所需的暂态数据的数据校验。此外,不同尺寸的暂态数据以及其错误校验内容都可以妥善由易失性存储器暂存。
下文特举实施例,并结合附图详细说明本发明内容。
附图说明
图1示出了根据本发明所揭示技术的一种实施方式所实现的一数据储存装置100;
图2以流程图说明控制器106对动态随机存取存储器104所作的写入操作;
图3A更详细说明使用者数据(user data)专属格式User_Data的一种实施方式;
图3B更详细说明控制器运算数据(controller data)专属格式MCU_Data的一种实施方式;
图3C更详细说明映射表数据(如,非易失性存储器的映射表数据/temporary data for the mapping table of the non-volatile memory)专属格式Table_Data的一种实施方式;
图4以流程图说明控制器106对动态随机存取存储器104所作的读取操作;
图5A更详细说明使用者数据专属格式User_Data的错误校验;
图5B更详细说明控制器运算数据专属格式MCU_Data的错误校验;且
图5C更详细说明映射表数据专属格式Table_Data的错误校验。
附图符号说明
100~数据储存装置;
102~快闪存储器;
104~动态随机存取存储器;
106~控制器;
108~主机;
110~数据总线;
BLK1、BLK2~区块;
Data_0.5Burst~半个突发格式的控制器运算数据;
Data_Bits~(N-1)位的映射表数据;
Data_Burst1、Data_Burst2…Data_Burst8~多个突发格式的使用者数据;
Data_Checked~校验后的控制器运算数据;
MCU_Data~控制器运算数据的数据校验格式;
P1…P8~错误校验字;
P11、P12、P21、P22~错误校验内容;
Parity_0.5Burst~用以容载错误校验内容的半个突发格式;
Parity_Bit~错误校验位;
Parity_Burst~一个突发格式的错误校验内容;
S202…S208~步骤;
S402…S410~步骤;
Table_Data~映射表数据的数据校验格式;
User_Data~使用者数据的数据校验格式。
具体实施方式
以下叙述列举本发明的多种实施例。以下叙述介绍本发明的基本概念,且并非意图限制本发明内容。实际发明范围应依照本发明的权利要求界定。
图1示出了根据本发明所揭示技术的一种实施方式所实现的一数据储存装置100,包括:快闪存储器(FLASH memory)102所实现的一非易失性存储器、动态随机存取存储器(DRAM)104所实现的一易失性存储器、以及一控制器106。该控制器106是根据一主机108的要求操作该快闪存储器102,且是以该动态随机存取存储器104暂存与该快闪存储器102相关的暂态数据。
如图1所示,快闪存储器102的空间划分为多个区块(blocks),如,BLK1、BLK2…。各区块还划分为多页(pages)。快闪存储器102的操作特性是以「区块」为擦除单位。使用过的空间须以「区块」为单位擦除后方能释出再利用。如此的使用限制将使得动态随机存取存储器104的暂态数据储存需求高。动态随机存取存储器104的数据校验(data checking and correcting)因而更为重要。
本发明可以在不增加动态随机存取存储器104的管脚数量的前提下,实现动态随机存取存储器104所暂存的暂态数据的数据校验。如图1所示,控制器106对前述暂态数据(与该快闪存储器102相关)产生错误校验内容,并且将所产生的错误校验内容与对应的暂态数据呈至少一突发格式暂存至动态随机存取存储器104。所述错误校验内容可依循ECC技术或是奇偶校验技术…等。在一实施例中,控制器106经由一数据总线110耦接动态随机存取存储器104,所述突发格式的长度(burst length)是该数据总线的宽度的M倍,其中M大于或等于2。举例而言,动态随机存取存储器104如果采用第三代双倍数据率同步动态随机存取存储器(Double-Data-Rate Three SynchronousDynamic Random Access Memory,DDR3 SDRAM),根据DDR3 SDRAM的规格标准(JEDEC标准JESD79-3E),所述突发格式的长度为16个字节(byte),而动态随机存取存储器104具备16根数据管脚(data pins),即该数据总线的宽度为16位(bit),因此可同时并行存取16位(即2个字节)的暂态数据。
动态随机存取存储器104的暂态数据一般有以下来源:
●使用者数据(user data),如,由主机108要求储存至该快闪存储器102的数据,在写入快闪存储器102之前需要暂存在该动态随机存取存储器104,待控制器106作运算后方搬移到该快闪存储器102,一般数据量较大;
●控制器运算数据(controller data),如,控制器106对该快闪存储器102作读写时所作运算所产生的暂态数据(如,控制器106对快闪存储器102作有效数据收集(garbage collection)、存储地址运算…等而产生的暂态数据),数据量一般低于上述使用者数据;以及
●映射表数据(temporary data for the mapping table),如,快闪存储器102与主机108端之间的逻辑-物理位址映射数据,数据量一般更低于上述控制器运算数据。
根据暂态数据的属性不同,控制器106具体地可选择适当的方式将暂态数据以考量数据校验的方式储存至动态随机存取存储器104。
如图1所示,控制器106是以格式User_Data将使用者数据以及其错误校验内容暂存至动态随机存取存储器104。在一实施例中,主机108存取使用者数据是以区段(sector)为单位,一个区段举例而言包括512字节的数据。在本发明一实施例中,快闪存储器102以128字节为一个区块(block)存储使用者数据,因此主机108一次存取的使用者数据包括至少4个区块,而1个区块的使用者数据需通过8个突发格式传输。如图1所示,使用者数据以多个突发格式(bursts)Data_Burst1、Data_Burst2…Data_Burst8搭配一突发格式的错误校验内容Parity_Burst暂存至该动态随机存取存储器104。以16根数据管脚(datapins)的动态随机存取存储器为例,一个突发格式可传送16字节的数据。以32根数据管脚的动态随机存取存储器为例,一个突发格式可传送32字节的数据。控制器106还针对所述多个突发格式的使用者数据Data_Burst1、Data_Burst2…Data_Burst8中的每一个分别运算产生一错误校验字,各个错误校验字组成所述一个突发格式的错误校验内容Parity_Burst。并且于呈多个所述突发格式的使用者数据Data_Burst1、Data_Burst2…Data_Burst8暂存至动态随机存取存储器104之后,控制器106还将错误校验内容呈另一个突发格式Parity_Burst暂存至动态随机存取存储器104。
另外,控制器106是以格式MCU_Data将控制器运算数据以及其错误校验内容暂存至动态随机存取存储器104。格式MCU_Data整体呈一个突发格式,其中包括半个突发格式的控制器运算数据Data_0.5Burst以及规划来储存错误校验内容的半个突发格式的空间Parity_0.5Burst。于半个突发格式的空间Parity_0.5Burst的错误校验内容为控制器106针对所述半个突发格式的控制器运算数据Data_0.5Burst运算产生。
另外,控制器106是以格式Table_Data将映射表数据以及其错误校验内容暂存至动态随机存取存储器104。格式Table_Data包括(N-1)位的映射表数据Data_Bits以及一错误校验位Parity_Bit。错误校验位Parity_Bit控制器106针对所述(N-1)位的映射表数据Data_Bits运算产生。
根据以上设计,动态随机存取存储器104无须为数据校验设计增设任何管脚。此外,不同尺寸的暂态数据以及其错误校验内容都可以妥善由该动态随机存取存储器104暂存。
图2以流程图说明控制器106对动态随机存取存储器104所作的写入操作。于步骤S202,控制器106作数据类型判断,以对不同数据类型作不同操作。当然,本发明并不限制某种属性的暂态数据一定使用某种数据校验以及写入方式,只是本发明下述的特定的属性的暂态数据使用特定数据校验以及写入方式的实施例可以提高数据存取的效率。在本发明其它实施例中,步骤S202不是必要步骤,可以不管暂态数据的属性而在步骤S204~S208的写入方式,步骤S210~S212的写入方式以及步骤S214~S216的写入方式中择一施行。换句话说,步骤S204~S208的写入方式,步骤S210~S212的写入方式以及步骤S214~S216的写入方式可以是三个独立的对动态随机存取存储器104进行写入操作的实施方式。
若为使用者数据,控制器106执行步骤S204,对上述多个突发格式的使用者数据Data_Burst1、Data_Burst2…Data_Burst8中的每一个分别产生一错误校验字,并将各错误校验字组成一错误校验内容。控制器106执行步骤S206,将使用者数据呈多个突发格式Data_Burst1、Data_Burst2…Data_Burst8暂存至动态随机存取存储器104中。接下来控制器106还执行步骤S208,将该错误校验内容以一个突发格式Parity_Burst暂存至动态随机存取存储器104。即是说控制器106是以突发格式将使用者数据Data_Burst1、Data_Burst2…Data_Burst8以及其错误校验内容Parity_Burst暂存至动态随机存取存储器104。由于本实施例中,首先对各个突发格式的使用者数据分别进行运算产生各个错误校验字,但在传输时须等待多个突发格式的使用者数据暂存完毕以后,再将各个错误校验字凑成一个突发格式的错误校验内容再暂存至动态随机存取存储器104,因此需要将运算产生的各个错误校验字先暂存于控制器106内的寄存器(register)中。但本发明并不限制步骤S204与S206的发生先后顺序。
若为控制器运算数据,控制器106执行步骤S210,对半个突发格式的控制器运算数据Data_0.5Burst产生错误校验内容;接下来控制器106执行步骤S212,将上述半个突发格式的控制器运算数据Data_0.5Burst与所对应产生的错误校验内容呈一个突发格式(Data_0.5Burst联合Parity_0.5Burst)暂存至动态随机存取存储器104。控制器106是以格式MCU_Data将控制器运算数据Data_0.5Burst以及其错误校验内容Parity_0.5Burst暂存至动态随机存取存储器104。
若为映射表数据,控制器106执行步骤S214,对(N-1)位的映射表数据Data_Bits产生一错误校验位Parity_Bit;接下来,控制器106执行步骤S216,将上述(N-1)位的映射表数据Data_Bits与该错误校验位Parity_Bit暂存至动态随机存取存储器104。控制器106是以格式Table_Data将映射表数据Data_Bits以及其错误校验内容Parity_Bit暂存至动态随机存取存储器104。
图3A更详细说明使用者数据专属格式User_Data的一种实施方式。此实施例中,一个突发格式的长度是16字节,且主机108要求写入快闪存储器102的一个区块的使用者数据包括128字节。动态随机存取存储器104写入操作时,则一个区块的使用者数据是以八个突发格式Data_Burst1、Data_Burst2…Data_Burst8循序写入动态随机存取存储器104,相应的一个突发格式的错误校验内容Parity_Burst最后写入。错误校验内容Parity_Burst由八个错误校验字P1~P8组成,其分别对应八个突发格式Data_Burst1、Data_Burst2…Data_Burst8的使用者数据,其中错误校验字P1中的字节P11由突发格式的使用者数据Data_Burst1的前面半个突发格式数据(例如前面8个字节的数据)产生,错误校验字P1中的字节P12由突发格式的使用者数据Data_Burst1的后面半个突发格式数据(例如后面8个字节的数据)产生。其中错误校验字P2中的字节P21由突发格式的使用者数据Data_Burst2的前面半个突发格式数据(例如前面8个字节的数据)产生,错误校验字P2中的字节P22由突发格式的使用者数据Data_Burst2的后面半个突发格式数据(例如后面8个字节的数据)产生。后续类推。
图3B更详细说明控制器运算数据专属格式MCU_Data的一种实施方式。此实施例中,一个突发格式的长度是16字节。由于控制器运算数据的数据量较的使用者数据通常小得多,可将每8个字节的控制器运算数据Data_0.5Burst及其错误校验内容P由单一个突发格式暂存至动态随机存取存储器104。在一优选实施例中,半个突发格式的控制器运算数据Data_0.5Burst所对应生成的错误校验内容P(如图所示,占据一字节)规划以半个突发格式的空间Parity_0.5Burst储存,与该半个突发格式的控制器运算数据Data_0.5Burst占据单一个突发格式的空间。
图3C更详细说明映射表数据专属格式Table_Data的一种实施方式。此实施例令N为32,是对31位的映射表数据Data_Bits作异或(XOR)运算以产生一错误校验位Parity_Bit。
图4以流程图说明控制器106对动态随机存取存储器104所作的读取操作。于步骤S402,控制器106作数据类型判断,以对不同数据类型作不同操作。对应图2的写入操作的流程图,本发明同样也不限制某种属性的暂态数据一定使用某种数据校验以及读取方式,暂态数据的数据校验以及读取方式与其写入操作时所采取的数据校验以及写入方式对应,因此步骤S402也不是必要步骤,可以不管暂态数据的属性而在步骤S404~S408的读取方式,步骤S410~S412的读取方式以及步骤S414~S416的读取方式中择一施行。换句话说,步骤S404~S408的读取方式,步骤S410~S412的读取方式以及步骤S414~S416的读取方式可以是三个独立的对动态随机存取存储器104进行读取操作的实施方式。
若为使用者数据,控制器106执行步骤S404,自该动态随机存取存储器104读出一个突发格式的错误校验内容Parity_Burst。接着,控制器106执行步骤S406,自动态随机存取存储器104读取对应该个突发格式的错误校验内容Parity_Burst的多个突发格式的使用者数据Data_Burst1、Data_Burst2…Data_Burst8。控制器106再执行步骤S408,使用该个突发格式的错误校验内容Parity_Burst对上述多个突发格式的使用者数据Data_Burst1、Data_Burst2…Data_Burst8作错误校验。
若为控制器运算数据,控制器106执行步骤S410,以一个突发格式MCU_Data读取暂存于动态随机存取存储器104的半个突发格式的控制器运算数据Data_0.5Burst与对应的错误校验内容P(由半个突发格式的空间Parity_0.5Burst取出)。控制器106再执行步骤S412,对上述半个突发格式Data_0.5Burst的控制器运算数据作错误校验。
若为映射表数据,控制器106执行步骤S414,读取暂存于动态随机存取存储器104的映射表数据及其错误校验位Parity_Bit,一共N位的数据。控制器106执行步骤S416,以其中的错误校验位Parity_Bit对自其中的(N-1)位的映射表数据Data_Bits作错误校验。
图5A更详细说明使用者数据专属格式User_Data的错误校验。动态随机存取存储器104读取操作时,较先读出的是一个突发格式的错误校验内容Parity_Burst,后续读出的循序是八个突发格式的使用者数据Data_Burst1、Data_Burst2…Data_Burst8。错误校验内容Parity_Burst由八个错误校验字P1~P8组成,其分别对应八个突发格式Data_Burst1、Data_Burst2…Data_Burst8的使用者数据,其中错误校验字P1中的字节P11用来对使用者数据Data_Burst1的前面半个突发格式数据(例如前面8个字节的数据)作错误校验,以获得校验后的使用者数据。错误校验字P1中字节P12用来对使用者数据Data_Burst1的后面半个突发格式数据(例如前面8个字节的数据)作错误校验,以获得校验后的使用者数据。其中错误校验字P2中的字节P21用来对使用者数据Data_Burst2的前面半个突发格式数据作错误校验,以获得校验后的使用者数据。错误校验字P2中的字节P22用来对使用者数据Data_Burst2的后面半个突发格式数据作错误校验,以获得校验后的使用者数据。后续类推。
图5B更详细说明控制器运算数据专属格式MCU_Data的错误校验。半个突发格式的控制器运算数据Data_0.5Burst是由半个突发格式的空间Parity_0.5Burst储存的错误校验内容P作错误校验,以获得校验后的控制器运算数据Data_Checked。
图5C更详细说明映射表数据专属格式Table_Data的错误校验。此实施例令N为32,是对31位的映射表数据Data_Bits与错误校验位Parity_Bit作异或(XOR)运算,以获得一指标显示目前31位的映射表数据Data_Bits是否正确。
数据储存装置100中的非易失性存储器与易失性存储器不限定以快闪存储器102以及动态随机存取存储器104实现。此外,所揭示的易失性存储器数据校验技术不限定应用于数据储存装置。任何电子装置只要安装有易失性存储器都可使用所揭示的数据校验技术。
总之,凡是以格式User_Data以和/或格式MCU_Data以和/或格式Table_Data达到数据校验的易失性存储器操作,皆属于本发明所意图保护的范围。
一种实施方式是根据暂态数据的尺寸决定该以何种格式达成易失性存储器的数据校验。数据尺寸大于一第一数据量的第一型数据可以上述格式User_Data实现易失性存储器的数据校验。数据尺寸不超过该第一数据量但高于一第二数据量的第二型数据可以上述格式MCU_Data实现易失性存储器的数据校验。数据尺寸不高于该第二数据量的第三型数据可以上述格式Table_Data实现易失性存储器的数据校验。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,本领域的技术人员,在不脱离本发明的精神和范围的前提下,可做些许更动与润饰,因此本发明的保护范围是以本发明的权利要求为准。
Claims (14)
1.一种数据储存装置,包括:
一非易失性存储器;
一易失性存储器;以及
一控制器,根据一主机的要求操作该非易失性存储器,且以该易失性存储器暂存与该非易失性存储器相关的暂态数据,
其中,该控制器对上述暂态数据产生错误校验内容,并且将所产生的错误校验内容与对应的暂态数据呈至少一突发格式暂存至该易失性存储器。
2.如权利要求1所述的数据储存装置,其中该控制器经由一数据总线耦接该易失性存储器,所述突发格式的长度是该数据总线的宽度的M倍,其中M大于或等于2。
3.如权利要求1所述的数据储存装置,其中所述突发格式的长度为16个字节,该数据总线的宽度为16位。
4.如权利要求1所述的数据储存装置,其中该暂态数据是该主机要求写入该非易失性存储器的使用者数据,其中:
该控制器将所述使用者数据呈多个所述突发格式暂存至该易失性存储器中,该控制器还针对上述每个呈所述突发格式暂存的使用者数据分别产生一错误校验字,并将各错误校验字组成所述错误校验内容,并且于所述使用者数据呈多个所述突发格式暂存至该易失性存储器中之后,该控制器还将所述错误校验内容呈另一个突发格式暂存至该易失性存储器。
5.如权利要求1所述的数据储存装置,该暂态数据是该主机操作该非易失性存储器的控制器运算数据,其中:
该控制器将所述控制器运算数据呈半个所述突发格式暂存至该易失性存储器中,该控制器还对上述控制器运算数据产生所述错误校验内容,将上述控制器运算数据与所述错误校验内容呈一个突发格式暂存至该易失性存储器。
6.如权利要求1所述的数据储存装置,其中:
该控制器还对(N-1)位的映射表数据产生一错误校验位,并将上述(N-1)位的映射表数据与该错误校验位暂存至该易失性存储器。
7.一种数据储存装置的易失性存储器的数据校验方法,其中该数据储存装置包括一非易失性存储器以及一易失性存储器,该方法包括:
对与该非易失性存储器相关的暂态数据产生错误校验内容;以及
将上述暂态数据以及对应的错误校验内容呈至少一突发格式暂存至该易失性存储器中。
8.如权利要求7所述的数据校验方法,其中所述突发格式的长度是该易失性存储器的总线宽度的M倍,其中M大于或等于2。
9.如权利要求7所述的数据校验方法,其中该暂态数据是一主机要求写入该非易失性存储器的使用者数据,该方法还包括:
针对呈多个所述突发格式的使用者数据中的每一个分别产生一错误校验字,并将所产生的错误校验字组成所述错误校验内容;
将呈多个所述突发格式的使用者数据暂存至该易失性存储器中;以及
将所述错误校验内容呈另一个突发格式暂存至该易失性存储器。
10.如权利要求7所述的数据校验方法,其中该暂态数据是一主机操作该非易失性存储器的控制器运算数据,该方法还包括:
对半个突发格式的控制器运算数据产生所述错误校验内容;以及
将上述半个突发格式的控制器运算数据与所述错误校验内容呈一个突发格式暂存至该易失性存储器。
11.如权利要求7所述的数据校验方法,还包括:
对(N-1)位的映射表数据产生一错误校验位;以及
将上述(N-1)位的映射表数据与该错误校验位暂存至该易失性存储器。
12.一种易失性存储器的数据校验方法,包括:
对数据尺寸大于一第一数据量的第一型数据,产生错误校验内容;
将所述第一型数据呈多个突发格式写入该易失性存储器;以及
将所产生的所述错误校验内容呈另一个突发格式写入至该易失性存储器。
13.如权利要求12所述的数据校验方法,还包括:
关于数据尺寸不超过该第一数据量但高于一第二数据量的第二型数据,取半个突发格式的所述第二型数据产生错误校验内容;以及
将呈半个突发格式的所述第二型数据与所对应产生的错误校验内容呈一个突发格式写入该易失性存储器。
14.如权利要求12所述的数据校验方法,还包括:
关于数据尺寸不高于一第二数据量的第三型数据,取(N-1)位产生一错误校验位;以及
将该错误校验位与所对应的(N-1)位的第三型数据写入该易失性存储器。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410046036.3A CN103744744B (zh) | 2014-02-08 | 2014-02-08 | 数据储存装置以及易失性存储器的数据校验方法 |
TW103104680A TWI528372B (zh) | 2014-02-08 | 2014-02-13 | 資料儲存裝置以及揮發式記憶體的資料校驗方法 |
US14/271,813 US9519541B2 (en) | 2014-02-08 | 2014-05-07 | Data storage device and data checking and correction for volatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410046036.3A CN103744744B (zh) | 2014-02-08 | 2014-02-08 | 数据储存装置以及易失性存储器的数据校验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103744744A true CN103744744A (zh) | 2014-04-23 |
CN103744744B CN103744744B (zh) | 2017-08-25 |
Family
ID=50501764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410046036.3A Active CN103744744B (zh) | 2014-02-08 | 2014-02-08 | 数据储存装置以及易失性存储器的数据校验方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9519541B2 (zh) |
CN (1) | CN103744744B (zh) |
TW (1) | TWI528372B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291372A (zh) * | 2016-03-30 | 2017-10-24 | 纬创资通股份有限公司 | 电子装置及其数据验证方法 |
CN107924349A (zh) * | 2015-08-28 | 2018-04-17 | 英特尔公司 | 存储器装置管芯上错误校验和纠正代码 |
CN109086161A (zh) * | 2018-07-20 | 2018-12-25 | 江苏华存电子科技有限公司 | 一种随机内存使用ecc运算达成块资料纠错校验的方法 |
CN109117301A (zh) * | 2018-07-20 | 2019-01-01 | 江苏华存电子科技有限公司 | 一种随机内存使用纠错码校验可配置功能设置分区的方法 |
CN109189603A (zh) * | 2018-07-20 | 2019-01-11 | 江苏华存电子科技有限公司 | 一种用于动态随机存取存储器使用raid做纠错校验的方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102420641B1 (ko) * | 2017-12-15 | 2022-07-14 | 에스케이하이닉스 주식회사 | 에러정정방법 및 이를 이용한 반도체장치 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1687912A (zh) * | 2005-05-31 | 2005-10-26 | 威盛电子股份有限公司 | 快速读写存储器数据的方法及装置 |
US20080072120A1 (en) * | 2006-08-31 | 2008-03-20 | Micron Technology, Inc. | Variable Strength ECC |
US20090251988A1 (en) * | 2008-04-02 | 2009-10-08 | International Business Machines Corporation | System and method for providing a non-power-of-two burst length in a memory system |
CN102428454A (zh) * | 2009-04-08 | 2012-04-25 | 谷歌公司 | 数据存储装置 |
CN103064791A (zh) * | 2011-10-21 | 2013-04-24 | 辉达公司 | 用于短数据突发长度存储器设备的有效命令映射方案 |
US20130254625A1 (en) * | 2009-11-24 | 2013-09-26 | Apple Inc. | Efficient storage of error correction information in dram |
-
2014
- 2014-02-08 CN CN201410046036.3A patent/CN103744744B/zh active Active
- 2014-02-13 TW TW103104680A patent/TWI528372B/zh active
- 2014-05-07 US US14/271,813 patent/US9519541B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1687912A (zh) * | 2005-05-31 | 2005-10-26 | 威盛电子股份有限公司 | 快速读写存储器数据的方法及装置 |
US20080072120A1 (en) * | 2006-08-31 | 2008-03-20 | Micron Technology, Inc. | Variable Strength ECC |
US20090251988A1 (en) * | 2008-04-02 | 2009-10-08 | International Business Machines Corporation | System and method for providing a non-power-of-two burst length in a memory system |
CN102428454A (zh) * | 2009-04-08 | 2012-04-25 | 谷歌公司 | 数据存储装置 |
US20130254625A1 (en) * | 2009-11-24 | 2013-09-26 | Apple Inc. | Efficient storage of error correction information in dram |
CN103064791A (zh) * | 2011-10-21 | 2013-04-24 | 辉达公司 | 用于短数据突发长度存储器设备的有效命令映射方案 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107924349A (zh) * | 2015-08-28 | 2018-04-17 | 英特尔公司 | 存储器装置管芯上错误校验和纠正代码 |
CN107924349B (zh) * | 2015-08-28 | 2021-11-23 | 英特尔公司 | 存储器装置管芯上错误校验和纠正代码 |
CN107291372A (zh) * | 2016-03-30 | 2017-10-24 | 纬创资通股份有限公司 | 电子装置及其数据验证方法 |
CN107291372B (zh) * | 2016-03-30 | 2020-02-11 | 纬创资通股份有限公司 | 电子装置及其数据验证方法 |
CN109086161A (zh) * | 2018-07-20 | 2018-12-25 | 江苏华存电子科技有限公司 | 一种随机内存使用ecc运算达成块资料纠错校验的方法 |
CN109117301A (zh) * | 2018-07-20 | 2019-01-01 | 江苏华存电子科技有限公司 | 一种随机内存使用纠错码校验可配置功能设置分区的方法 |
CN109189603A (zh) * | 2018-07-20 | 2019-01-11 | 江苏华存电子科技有限公司 | 一种用于动态随机存取存储器使用raid做纠错校验的方法 |
WO2020015123A1 (zh) * | 2018-07-20 | 2020-01-23 | 江苏华存电子科技有限公司 | 一种用于动态随机存取存储器使用raid做纠错校验的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103744744B (zh) | 2017-08-25 |
TWI528372B (zh) | 2016-04-01 |
TW201532062A (zh) | 2015-08-16 |
US20150227424A1 (en) | 2015-08-13 |
US9519541B2 (en) | 2016-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103744744A (zh) | 数据储存装置以及易失性存储器的数据校验方法 | |
CN104503707A (zh) | 读取数据的方法以及装置 | |
US10698809B2 (en) | Method, associated flash controller and electronic device for accessing flash module with data validity verification | |
CN103106143B (zh) | 固态储存装置及其逻辑至实体对应表建立方法 | |
CN104699417B (zh) | 数据储存装置以及其数据存取方法 | |
CN105740157A (zh) | 数据储存装置以及快闪存储器控制方法 | |
US8902671B2 (en) | Memory storage device, memory controller thereof, and method for programming data thereof | |
US9582224B2 (en) | Memory control circuit unit, memory storage apparatus and data accessing method | |
US10509697B2 (en) | Data storage device and operating method therefor | |
TWI498899B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN106681652A (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN103578565A (zh) | 一种NAND Flash存储芯片的校验方法及装置 | |
CN103077094A (zh) | 存储控制装置、存储装置、信息处理系统和存储控制方法 | |
US10754555B2 (en) | Low overhead mapping for highly sequential data | |
US9069660B2 (en) | Systems and methods for writing to high-capacity memory | |
CN106844229B (zh) | 固态硬盘固件映射表的组织方法、系统及装置 | |
US10289334B2 (en) | Valid data merging method, memory controller and memory storage apparatus | |
US20130067141A1 (en) | Data writing method, and memory controller and memory storage apparatus using the same | |
US11698746B1 (en) | Journal scheme for a memory sub-system | |
US20230393930A1 (en) | Memory sub-system addressing for data and additional data portions | |
CN110597741A (zh) | 一种l2p表的读写、更新方法及l2p表 | |
US8832358B2 (en) | Data writing method, memory controller and memory storage apparatus | |
CN105718328A (zh) | 存储器坏区的数据备份方法及系统 | |
CN110058955B (zh) | 具有错误纠正功能的内存和相关内存系统 | |
CN105183369B (zh) | 一种NandFlash中模拟用户数据存储的方法 |
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 |