CN101999116A - 通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备 - Google Patents

通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备 Download PDF

Info

Publication number
CN101999116A
CN101999116A CN2009801126860A CN200980112686A CN101999116A CN 101999116 A CN101999116 A CN 101999116A CN 2009801126860 A CN2009801126860 A CN 2009801126860A CN 200980112686 A CN200980112686 A CN 200980112686A CN 101999116 A CN101999116 A CN 101999116A
Authority
CN
China
Prior art keywords
page
pages
flash memory
memory device
sector
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
Application number
CN2009801126860A
Other languages
English (en)
Other versions
CN101999116B (zh
Inventor
小H·F·博格
E·F·哈拉特施
M·伊威科维克
V·克拉琦科夫斯基
A·维特雅一夫
C·威廉姆森
J·延
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agere Systems LLC
Original Assignee
Agere Systems LLC
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 Agere Systems LLC filed Critical Agere Systems LLC
Publication of CN101999116A publication Critical patent/CN101999116A/zh
Application granted granted Critical
Publication of CN101999116B publication Critical patent/CN101999116B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1072Adding 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 multilevel memories
    • 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
    • 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/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Error Detection And Correction (AREA)

Abstract

提供了用于通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备。单一扇区可以跨闪速存储器装置中的多个页面存储。在每一个页面中的多个扇区设置每一页面的控制,以及用于编码和解码指定页面的代码和/或代码率,和用于解码指定页面的解码器或解码算法。还提供了多页面和字线级存取方案。

Description

通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备
对相关申请的交叉引用
本申请要求于2008年3月11日提交的美国临时申请序列No.61/068934的权益,该申请通过引用包含于此。
技术领域
本发明总体上涉及多级单元(multi-level cell)闪速存储器装置,并且更具体地说,涉及用于编码和存取这种多级单元装置的技术。
背景技术
诸如闪速存储器装置的许多存储器装置使用模拟存储器单元来存储数据。每一个存储器单元存储模拟值,该模拟值也称为存储值,如电荷或电压。该存储值表示存储在单元中的信息。在闪速存储器装置中,例如,每一个模拟存储器单元典型地存储特定电压。针对每一个单元的可能的模拟值范围典型地分成多个阈值区域,并且每一个区域对应于一个或多个数据比特值。通过写入对应于希望的一个或多个比特的标称模拟值将数据写入至模拟存储器单元。
单级单元(SLC)闪速存储器装置例如每个存储器单元存储一比特(或者两种可能的存储器状态)。另一方面,多级单元(MLC)闪速存储器装置每个存储器单元存储两个或更多个比特(即,每个单元具有四个或更多个可编程状态)。在多级单元闪速存储器装置中,检测电流或电压的量,而非只检测电流或电压存在或不存在。在多级单元装置中,采用了至少三个阈值级来限定四个或更多个不同的阈值状态。单个单元的操作范围由此被分成更多数量的状态,并且每一个状态的范围都小于针对单级单元装置的范围。因而,多级单元装置中的任何单一比特的可靠性都低于单级单元装置。针对多级单元(MLC)闪速存储器装置的更详细讨论例如参见K.Takeuchi等人的“A 56-nmCMOS 99-nm2 8Gb Multi-Level NAND Flash Memory with 10-MB/sProgram Throughput”,IEEE Journal of solid-State Circuits,Vol.42,No.1,219-232(2007),和K.-T.Park等人的“A Zeroing Cell-to-CellInterference Page Architecture with Temporary LSB Storing and ParallelMSB Program Scheme for MLC NAND Flash Memories”,IEEE Journalof Solid-State Circuits,VoL 43,No.4,919-928(2008),每一篇文献都通过引用包含于此。
现有闪速装置采用页面级存取技术,由此,页面是可以向闪速存储器装置写入或从其读取的最小单位。页面通常彼此独立地写入和读取。另外,现有闪速存储器典型地使用相同代码和代码率来编码(和解码)所有页面。操作系统典型地采用例如由512个字节的用户信息所组成的数据扇区。一般来说,用户数据长度是扇区大小的倍数。针对一种典型的闪速存储器构造,一个页面包括八个扇区的用户信息。因而,利用页面级存取技术,闪速控制器组合八个扇区的信息以向闪速存储器装置写入每一个页面。每当从闪速存储器装置读取一扇区时,读取包含所希望扇区的完整页面。
需要用于多级单元(MLC)闪速存储器装置的改进的多级编码和读取/写入存取技术以例如实现低误码率或提高存储容量。进一步需要用于多级单元闪速存储器装置的改进的读取/写入存取技术,其允许单一扇区跨闪速存储器装置中的多个页面存储。针对改进的读取/写入存取技术存在另一需要,其提供每一个页面中多个扇区的每一页面控制,以及用于编码和解码的代码和/或代码率。针对多级编码的更详细讨论,例如参见U.Wachsmann等人的,“Multilevel Codes:TheoreticalConcepts and Practical Design Rules”,IEEE Trans,on InformationTheory,Vol.45,No.5,1361-91(1999),该文献通过引用包含于此。
发明内容
一般来说,提供了用于利用交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器中的方法和设备。根据本发明的各个方面,将数据存储在具有多个单元的多级单元闪速存储器装置中,其中,所述多级单元闪速存储器中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同页面。一种公开的数据存储方法包括以下步骤:累积多个所述页面;将所述多个页面编码为单个块;以及将所述单个块存储在所述多级单元闪速存储器装置中。另外,所存储的单个块可以被解码以提供所述多个页面。
另一存储方法包括以下步骤:确定要写在所述多级单元闪速存储器装置中的当前页面的页面类型;确定与所确定的页面类型相关联的代码和代码率中的至少一个;利用所确定的至少一个代码和代码率来编码所述当前页面;以及将编码的当前页面存储在所述多级单元闪速存储器装置中。可以读取所述多级单元闪速存储器装置中的页面,并且利用与所识别的页面相关联的至少一个代码、代码率、解码器或解码算法来解码。
又一存储方法包括以下步骤:确定要在所述多级单元闪速存储器装置中写入的当前页面的页面类型;确定与所确定的页面类型相关联的每一页面的扇区数;累积所确定数量的扇区;编码累积的扇区;以及将累积的扇区存储在所述多级单元闪速存储器装置中。当接收到读取至少一个扇区的请求时,可以识别所述多级单元闪速存储器装置中的具有所请求扇区的一个或多个页面;并且可以利用页面类型、多页面和字线级存取方案中的一个或多个来读取所识别的一个或多个页面。可以利用与所识别的一个或多个页面相关联的代码、代码率、解码器以及解码算法中的至少一个来解码所读取的识别的一个或多个页面,以及利用存储器映射从所解码的一个或多个页面中获取请求的扇区。
另一存储方法包括以下步骤:存储第一组逻辑页面,其中,所述第一组逻辑页面中的每一个逻辑页面的编码大小小于多个物理页面的大小;并且存储第二组逻辑页面,其中,所述第二组逻辑页面中的每一个逻辑页面的编码大小大于多个物理页面的大小,并且其中,将所述第二组逻辑页面的至少一部分存储在多个物理页面的溢出区域中。
根据本发明的另一方面,公开了一种多级单元闪速存储器装置,该多级单元闪速存储器装置包括:多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同页面;以及多个字线,每一个字线包括多个页面,其中,所述多个页面中的每一个页面能够具有关联代码率,使得所述多个页面中的每一个页面的未编码长度大致相似,而所述多个页面中的每一个页面的编码长度不同。
本发明的另一方面提供了一种多级单元闪速存储器装置,该多级单元闪速存储器装置包括:多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同页面;以及多个字线,每一个字线包括多个页面,其中,所述多个页面中的每一个页面能够具有关联代码率,使得所述多个页面中的每一个页面的未编码长度不同,而所述多个页面中的每一个页面的编码长度大致相似。
本发明的又一方面提供了一种多级单元闪速存储器装置,该多级单元闪速存储器装置包括:多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同页面;以及多个字线,每一个字线包括多个页面,其中,至少一个扇区能够跨越所述多个页面。
通过参照下面的详细描述和附图,将获取对本发明的更完整理解,以及本发明的进一步特征和优点。
附图说明
图1是例示根据本发明的闪速存储器控制器与闪速存储器装置之间的相互作用的示意性框图;
图2例示了图1的示例性多级单元闪速存储器的示例性阈值电压分布;
图3例示了多级单元(MLC)闪速存储器装置中的闪速单元阵列;
图4例示了根据本发明一个方面的图3的闪速单元阵列的示例性编码器;
图5是描述结合本发明的特征的字线级存取方案的写入处理的示例性实现方式的流程图;
图6是描述结合本发明的特征的字线级存取方案的读取处理的示例性实现方式的流程图;
图7例示了结合本发明的特征的、其中利用不同代码率将字线内的每一个页面编码成相同长度的可变代码率编码方案;
图8是描述当每一个页面包括整数数量的扇区时,用于写入闪速存储器130的可变代码率写入处理的示例性实现方式的流程图;
图9是描述当每一个页面包括整数数量的扇区时,用于读取闪速存储器130的可变代码率读取处理的示例性实现方式的流程图;
图10是描述当每一个页面包括非整数数量的扇区并且指定扇区可以跨越多于一个的页面时,用于写入闪速存储器的可变代码率写入处理的示例性实现方式的流程图;
图11是描述当一个或多个页面可以包括非整数数量的扇区并且指定扇区可以跨越多于一个的页面时,用于读取闪速存储器的可变代码率处理的示例性实现方式的流程图;
图12例示了具有规则单元和溢出单元的多页面单元字线;以及
图13是结合本发明的特征的多级解码器的示意性框图。
具体实施方式
本发明提供了针对多级单元(MLC)闪速存储器装置的多级编码和读取/写入存取技术。如在此使用的,多级单元闪速存储器包括每一个存储器单元存储两个或更多个比特的存储器。典型地,存储在一个闪速单元中的多个比特属于不同页面。图1是例示根据本发明的闪速存储器控制器100与闪速存储器装置120之间的相互作用的示意性框图。如图1所示,根据下面讨论的本发明的多个方面,可以将用户数据写入到闪速存储器130中以及从闪速存储器130读取数据。如图1所示,通过执行数据累积、集合、收集、划分(partitioning)或者潜在地执行诸如交错(interleaving)的其它任务的数据管理模块110来处理输入比特流。接着,通过编码器140将集合或划分的数据编码,例如,添加冗余位。在本发明的所有实施例中,可以使用系统码或非系统码两者。
接着通过映射器150来处理编码数据,该映射器150将编码的比特流映射至用于编程闪速存储器130的编码的电压电平。从闪速存储器130读取数据并且通过解映射器(demapper)160来处理,该解映射器将读取的电压电平解映射成通过解码器170解码的一个或多个比特流。一般来说,编码器140和映射器150将用户数据流转换成应当被编程到闪速存储器130的单元中的状态或电压电平流。同样,解映射器160和解码器170将从闪速存储器130读取的单元状态或电压电平流转换成被存储在闪速存储器130中的用户数据流。数据管理模块110可以在编码器140的输出处或解映射器160的输出处针对编码数据流应用附加数据集合、累积、收集、划分、交错或其它任务。
下面,结合图4和13,对根据本发明的用于编码和解码数据的技术进行进一步讨论。下面,例如结合图5和图6,对适用于闪速控制器100的技术进行进一步讨论。闪速存储器130可以具体实施为多级单元闪速存储器,如多级NAND闪速存储器或多级相变存储器。一般来说,如以下结合图2和3进一步讨论的,闪速存储器130包括至少一个闪速单元阵列,以及读取和写入电路。
多级单元闪速存储器
在多级单元闪速存储器中,典型地采用阈值检测器来将与特定单元相关联的电压值转换成预定的存储器状态。图2例示基于美国专利No.6522580的教导的、图1的示例性多级单元闪速存储器130的示例性阈值电压分布,上述专利通过引用包含于此。在图2所示的示例性实施例中,每一个存储部件采用四种可能的数据状态,以在每一个存储器单元中存储两比特数据。图2例示了四个峰值210-213,每一个峰值对应于一种状态。在多级单元闪速装置中,阈值电压分布图形200的不同峰值210-213用于在单元中存储两个比特。
阈值电压分布图形200的峰值210-213分别标注有二进制值11、01、00以及10。因而,当单元处于第一状态210时,其表示针对低位的“1”和针对高位的“1”(这通常指该单元的初始未编程或擦除状态)。同样,当单元处于第二状态211时,其表示针对低位的“1”和针对高位的“0”。当单元处于第三状态212时,其表示针对低位的“0”和针对高位的“0”。最后,当单元处于第四状态213时,其表示针对低位的“0”和针对高位的“1”。
阈值电压分布210表示阵列内处于擦除状态(“11”数据状态)的单元的阈值电平VT分布,具有0伏特以下的负阈值电压电平。分别存储“01”和“00”用户数据的存储器单元的阈值电压分布211和212分别示出处于0伏特与1伏特之间以及1伏特与2伏特之间。阈值电压分布213示出已经被编程成“10”数据状态的单元的分布,并且阈值电压电平设置在2伏特与4.5伏特的读通电压(read pass voltage)之间。
如以下进一步讨论的,存储在单个存储器单元中的两个比特中的每一个来自不同的页面。换句话说,存储在每一个存储器单元中的两个比特中的每一个比特带有不同的页面地址。当输入低页面地址时存取图2所示右侧比特。当输入高页面地址时存取左侧比特。
闪速存储器典型地按块组织,其中,每一个块实现为闪速单元阵列。图3例示了多级单元(MLC)闪速存储器装置130中的闪速单元阵列300。如图3所示,闪速单元阵列300每一闪速单元cj存储有两个或更多个比特。图3例示了针对一个块的闪速单元阵列架构,其中,每一个示例性单元典型地对应于存储三个比特的浮栅晶体管。示例性单元阵列300由m个字线和n个位线构成。一般来说,在多页面单元闪速存储器中,每一个页面是扇区大小的倍数,并且单一单元内的比特属于不同页面。在图3的示例中,针对每一个的单元的三个比特对应于三个不同的页面,并且每一个字线存储三个页面。在下面的讨论中,页面0、1以及2称为下页面级、中页面级,以及上页面级。另外,闪速单元阵列300中的每一个页面(如页面310)典型地包括固定数量的扇区,如8个扇区。根据本发明的一个方面,每一个页面可以是扇区大小的非整数倍数。
可以将闪速单元阵列进一步划分成偶数和奇数页面,其中,例如,具有偶数编号的单元(如图3中的单元2和4)对应于偶数页面,而具有奇数编号的单元(如图3中的单元1和3)对应于奇数页面。在这种情况下,页面(如页面0)将包含偶数页面(偶数页面0)和奇数页面(奇数页面0)。为进一步讨论偶数和奇数页面,例如,参见K.-T.Park等人的“A Zeroing Cell-to-Cell Interference Page Architecture withTemporary LSB Storing and Parallel MSB Program Scheme for MLCNAND Flash Memories”,IEEE Journal of Solid-State Circuits,Vol 43,No.4,919-928(2008),该文献通过引用包含于此。本发明的所有方面都可以应用于具有偶数/奇数页面划分、或者其它闪速单元阵列划分的闪速单元阵列。下面,页面涉及图3所示的页面,或者偶数页面,或者奇数页面。
联合编码或每一页面编码
根据本发明的一个方面,字线中的每一个页面可以可选地利用不同代码率或不同类型的代码(或两者)来编码。例如,可以采用低密度奇偶校验码(LDPC)、Bose-Chaudhuri-Hocquenghem(BCH)码以及里德所罗门(RS)码。在一个实施例中,针对需要改进的可靠性的页面,可以采用较强力代码或较低代码率。例如,较高的页面编号可能具有较高的错误可能性(likelihood)。因而,这些页面可以利用改进这些页面的性能的代码或代码率(或两者)来编码。可以将较强力的纠错码(如较低速率的代码和LDPC码)用于与较高的误码率相关联的较高页面,而可以将不太强力的纠错码(如较高的速率的代码和代数码)用于与较低的误码率相关联的较低页面。
因而,本发明允许多级闪速单元阵列300的字线内的每一个页面的编码参数被特有地建立。例如,本发明的一个实施例允许每一页面控制(i)每一页面扇区数,(ii)代码,(iii)用于划分和/或编码页面的代码率以及/或者(iv)用于解码页面的解码器或解码器算法。
如下结合图4进一步讨论的,每一个字线中的j个页面数据(其中,j是闪速单元阵列300中的每一字线的页面数)可以可选地利用具有多达j个特有的代码和/或代码率的独立编码方案通过编码器140来编码。例如,在图4所示实施例中,每一个页面可以可选地采用特有的代码和代码率。页面例如可以涉及如图3所示的字线中的三个页面,或者涉及具有偶数页面和奇数页面的3比特/单元闪速单元阵列中的六个页面(三个偶数页面和三个奇数页面)。
下面结合图1和5讨论的本发明的另一方面支持联合编码方案,由此,每一个字线中的j个页面数据可以利用单一代码和代码率通过编码器140来编码。
页面、多页面以及字线级存取方案
根据本发明的另一方面,多页面单元闪速存储器130可以基于页面级、多页面级或字线级来存取。如前所述,现有闪速装置采用页面级存取技术,其中,页面是可以写入至闪速存储器装置或从闪速存储器装置读取的最小单位。另外,本发明允许(i)多页面级存取技术,其中可以采用多页面作为用于编码、写入至闪速存储器装置或从闪速存储器装置读取的最小单位;以及(ii)字线级存取技术,其中,字线是用于编码、读取或写入数据的最小数据单位。按这种方式,本发明通过允许跨页面边界编码代码字,或者通过允许针对字线中的不同页面的可变代码率而提供了更大的灵活性和效率。另外,本发明允许采用改进的编码和解码方案,如一起编码多个页面的LPDC编码技术。
如以下进一步讨论的,数据管理模块110基于采用的是页面级存取方案、多页面级存取方案还是字线级存取方案,来累积来自输入比特流的数据。虽然在多页面或字线级存取方案中,可以针对多个页面或整个字线执行数据管理和编码,但这些多页面或字线可以通过利用已知技术顺序地将页面写入至闪速存储器而物理地写入。
字线中的页面的编码/解码
图4例示了根据本发明一个方面的针对图3的多页面单元闪速阵列300的示例性编码器400。如前所述,示例性闪速存储器130中的每一个页面可以独立地编码。如图4所示,将三个不同的编码器420-1到420-3用于示例性字线中的三个示例性页面。这三个编码器420-1到420-3可以在编码类型(例如,LDPC、BCH以及RS)、或代码率、或编码类型及代码率方面不同。如上所述,低页面级(而不是中和高页面级)可以以较高代码率来编码(反之亦然)。在一个变型例中,具有足够可靠性的一些页面级可以完全不编码。如图4所示,在数据管理单元110(下面进一步讨论)中的数据划分之后,一个单元中的每一个比特在被存储在闪速单元阵列300的合适单元中之前通过单独的编码器420-1到420-3来编码。
根据本发明的另一方面,字线中的每一个页面可以利用不同类型的解码器(如LDPC、BCH、RS、硬判定或软判定解码器)来解码。例如,字线内的与较低误码率相关联的页面可以利用硬判定解码器来解码,而与较高误码率相关联的页面可以利用软判定解码器来解码。硬判定解码器典型地使用从闪速单元阵列300读取的编码比特。软判定解码器使用从闪速单元阵列300中的单元读取的例如电压值的软信息。
在另一变型例中,当解码器执行迭代解码时,针对每一个页面的解码器可以执行不同数量的迭代。例如,字线内的与较高误码率相关联的页面可以利用较大数量的迭代来解码,而与较低误码率相关联的页面可以利用比较高误码率页面更少数量的迭代来解码。另外,如结合图13进一步讨论的,本发明的另一方面解码字线内的多个页面,其中,例如,针对一个页面的解码器向另一页面的解码器馈送判定,以改进整体误码率。针对硬判定和软判定解码器、迭代解码、LDPC编码以及其它编码技术的讨论,例如,参见S.Lin和D.Costello的“ErrorControl Coding:Fundamentals and Applications,Second Edition”Pearson Prentice Hall(2004),其通过引用包含于此。
图5是描述结合本发明的特征的字线级存取方案的写入处理500的示例性实现方式的流程图。如图5所示,示例性字线级写入处理500在步骤510期间初始收集j乘k个扇区,其中,j是闪速单元阵列300中每一字线的页面数,而k是每一页面的扇区数。应注意到,在步骤510期间,一个或多个页面可能需要例如利用数据管理模块110中的存储器电路来缓冲,直到全部三个页面的数据可用为止(针对图3的示例性每单元3比特的实施例)。此后,在步骤520期间,字线级写入处理500将j个页面的数据编码成编码块。在步骤530期间,将该编码块可选地划分到j个页面。接着在步骤540期间,将这j个页面在闪速单元阵列300中编程。
应注意到,在本发明的各个实施例中,j个页面的数据可以利用如图1所示的编码器140通过单一代码和代码率来联合编码;或者利用如图4所示的编码器420,利用多达j个代码和代码率(针对每一个页面利用一特有的代码和代码率)来独立地编码。还应注意到,在联合编码方案中,在步骤530期间的划分典型地在步骤520的编码之后执行,如图5所示,而对于独立编码方案来说,该数据通常在步骤520的编码之前划分到多个页面。
图6是描述结合本发明的特征的字线级存取方案的读取处理600的示例性实现方式的流程图。如图6所示,在步骤610期间,示例性字线级读取处理600初始接收用于读取至少一个扇区的请求。此后,在步骤620期间,字线级读取处理600利用已知映射技术识别具有所请求扇区的字线。在步骤630期间,字线级读取处理600例如通过连续读取存储在该字线中的所有页面来读取所识别的字线,接着在步骤640期间,解码从该字线读取的数据块,以获取多达j个页面。在本发明的另一另选实施例中,基于可以在步骤640期间解码的多达j个页面,从该字线读取用于步骤630期间的字线级读取的软信息,如该字线中单元的电压值。利用足够的软信息,可以解码字线内的所有信息。应注意到,在本发明的各个实施例中,基于在步骤520期间有多少数据写入至闪速存储器,从字线读取的数据块可以利用单一代码或代码率或者多达j个代码和代码率(针对每一个页面利用一特有的代码和代码率)来解码。最后,在步骤650期间,字线级读取处理600利用在写入处理500期间生成的存储器映射从解码页面获取所请求扇区。
可变代码率多级单元
如前所述,本发明的一个方面允许字线内的每一个页面利用针对每一个页面的不同代码和/或代码率来独立地编码和解码。在一个变型例中,字线内的每一个页面可以利用不同代码率来编码。图7例示了结合本发明的特征的、其中利用不同代码率将字线内的每一个页面编码成相同长度的可变代码率编码方案。如图7的示例性实现方式所示,下和中页面711、712利用相同代码率来编码,并且包括相同量的用户数据720和奇偶校验位730。上页面713利用相对于页面711、712较低的代码率来编码,并且因此编码较少用户数据720且具有更大量的可用奇偶校验位730。例如,已编码的下和中页面711、712可以包括7个扇区,而已编码的上页面713可以包括6个扇区。下面,结合图8到11,对支持图7的可变代码率编码方案700的合适写入和读取处理进行进一步讨论。
因此,本发明允许代码率被选择成使得字线中的页面具有相同编码长度并具有不同的未编码长度。如下讨论的,控制器100可以基于闪速存储器中的、可用于编程的页面的用户数据大小以及基于页面类型(即,代码率和每一页面的扇区数)来划分接收到的数据流。可以选择页面位置以根据格式效率、读取以及写入速度最大化系统性能。
图8和9例示了当每一个页面包括整数数量的扇区时,分别用于写入和读取闪速存储器130的可变代码率处理。图10和11例示了当一个或多个页面包括非整数数量的扇区并且指定扇区可以跨越多于一个页面时,分别用于写入和读取闪速存储器130的可变代码率处理。
图8是描述当每一个页面包括整数数量的扇区时,用于写入闪速存储器130的可变代码率写入处理800的示例性实现方式的流程图。一般来说,该写入处理800采用页面级存取方案和用于基于被编码页面类型(即,页面级)来划分用户数据的新技术。另外,写入处理800还采用与所识别页面类型相关联的适当代码率。例如,在一个示例性实现方式中,字线的下和中页面可以包括八个扇区的用户数据,而上页面可以包括七个扇区的用户数据。因而,如果将下和中页面编程,则应当累积八个扇区的用户数据,而如果将上页面编程,则应当累积七个扇区的用户数据。
如图8所示,在步骤810期间,写入处理800初始地确定被写入的当前页面的页面类型(即,页面级和/或偶数页面或奇数页面),并且在步骤820期间,确定每一页面的扇区数和针对所确定页面类型的代码和/或代码率。在步骤830期间,写入处理800累积针对当前页面类型的所确定数量的扇区。在步骤840期间,利用针对当前页面的代码和代码率来编码累积的数据,并且在步骤850期间,将该页面写入至闪速单元阵列300。
图9是描述当每一个页面包括整数数量的扇区时,用于读取闪速存储器130的可变代码率读取处理900的示例性实现方式的流程图。一般来说,该读取处理900采用页面级存取方案。如图9所示,在步骤910期间,该示例性可变代码率页面级读取处理900初始地接收用于读取至少一个扇区的请求。此后,在步骤920期间,该可变代码率页面级读取处理900识别具有所请求扇区的页面。在步骤930期间,该可变代码率页面级读取处理900读取所识别的页面,并接着在步骤940期间,利用适于当前页面类型的代码和/或代码率来解码该页面。在步骤950期间,利用存储器映射从所解码的页面获取所请求扇区。
如前所述,图10和11例示了当一个或多个页面可以包括非整数数量的扇区并且指定扇区可以跨越多于一个的页面时,分别用于写入和读取闪速存储器130的可变代码率处理。
在扇区可以跨越多个页面(例如,在每一个页面具有非整数数量的扇区的情况下)的实现方式中,应当采用多页面或字线级存取技术来实现可变代码率方案。图10是描述当每一个页面包括非整数数量的扇区并且指定扇区可跨越多于一个的页面时,用于写入闪速存储器130的可变代码率写入处理1000的示例性实现方式的流程图。一般来说,写入处理1000采用多页面或字线级存取方案和基于被编码的页面类型(即,诸如下、中或上页面的页面级,或者偶数或奇数页面)来划分用户数据的新技术。另外,该写入处理1000还采用与所识别页面类型相关联的适当代码率。如图10所示,在步骤1010期间,写入处理1000初始地识别被写入的当前页面的页面类型,并且在步骤1020期间,确定每一页面的扇区数和针对所确定页面类型的代码和/或代码率。同样,应注意到,每一页面的扇区数可以是非整数数量。在步骤1030期间,写入处理1000累积针对当前页面类型的所确定数量的整个或部分扇区。接着,在步骤1040,写入处理1000针对下一页面缓冲剩余扇区的小数部分(fractional portion)(若有的话)。该缓冲例如可以在数据管理模块110中的存储器电路中执行。在步骤1050期间,利用针对当前页面类型的代码率来编码所累积数据,并且在步骤1060期间,在适当时候利用多页面或字线级存取方案将编码数据写入至闪速单元阵列300。一般来说,在多页面存取方案中,步骤1010到1050在步骤1060之前重复直到多个页面被编码为止。接着,例如,利用已知技术顺序地将这些编码页面写入至闪速存储器。在字线级存取方案中,步骤1010到1050在步骤1060之前被重复,直到编码了字线中的所有页面为止。接着,例如,通过利用已知技术顺序地写入字线内的所有页面而将整个字线写入至闪速存储器。
图11是描述当一个或多个页面可以包括非整数数量的扇区并且指定扇区可以跨越多于一个的页面时,用于读取闪速存储器130的可变代码率处理1100的示例性实现方式的流程图。一般来说,该读取处理1100采用多页面或字线级存取方案。如图11所示,在步骤1110期间,该示例性可变代码率读取处理1100初始地接收用于读取至少一个扇区的请求。接着,在步骤1120期间,可变代码率读取处理1100识别具有所请求扇区的一个或多个页面。
在步骤1130期间,执行测试,以确定该扇区跨越单一页面还是跨越多个页面。如果在步骤1130期间确定该扇区跨越单一页面,则在步骤1140期间,利用页面级存取技术读取该页面。然而,如果在步骤1130期间确定该扇区跨越多个页面,则在步骤1150期间,利用多页面或字线级存取技术读取这些页面。一般来说,在多页面存取方案中,读取多个页面,而在字线级存取方案中,读取完整字线。多个页面或完整字线可以通过从闪速存储器顺序地读取页面来读取。在字线级读取的另一另选实施例中,基于可以解码的页面而从字线读取软信息,如该字线中的单元的电压值。利用足够的软信息,可以解码字线内的所有页面。
此后,在步骤1160期间,可变代码率读取处理1100利用适于这些页面类型(即,级和或偶数或奇数页面)的代码和/或代码率来解码所读取的页面。最后,在步骤1170期间,可变代码率读取处理1100利用存储器映射从所解码的页面获取请求的扇区。
多级单元中的交叉页面存储
在本发明另一实施例中,页面可能跨物理页面边界溢出。在这种情况下,如图3所示,将用于数据划分和编码目的的逻辑页面与存储在字线中的物理页面相区别。逻辑页面可以例如利用图4所示的编码方案来编码。一般来说,字线中的逻辑页面可以具有相同的未编码长度(即,相同的用户数据量),而具有不同的编码长度。例如,针对具有相同用户数据长度的逻辑页面的可变代码率实现方式可以导致具有不同长度的编码的逻辑页面,在该情况下,一些逻辑页面从字线中的一个页面溢出至该字线中的另一页面。按这种方式,本发明提出使用字线中的多个单元的一部分(称作溢出单元)来存储跨越物理页面边界的逻辑数据部分。在这种情况下,与规则单元不同的溢出单元可以存储属于同一逻辑页面的至少两个比特。如以下所讨论的,该溢出单元可以和字线中的其它单元同时编程,或者在已经将配合到物理页面中的其它逻辑页面编程之后编程。在一个示例性实现方式中,溢出单元1220可以被用于存储针对上页面2的附加奇偶校验位。
图12例示了具有规则单元1210和溢出单元1220的多页面单元字线1200。在图12的示例性实施例中,下逻辑页面0和中逻辑页面1具有相同编码长度,而上逻辑页面2溢出到物理页面0和1中。在一个实现方式中,逻辑页面0和1可以首先被编程到字线1200的规则单元1210中,而不编程溢出单元1220。接着,将逻辑页面2编程到规则单元1210的上页面中,并且编程到溢出单元1220的所有页面中。例如,下、中以及上页面0、1、2可以按针对常规闪速存储器的类似方式编程到规则单元1210中。当上页面被编程时,溢出单元1220的下、中以及上比特同样被编程(例如,紧挨在执行规则单元的上页面编程之后)。
在另一实现方式中,按类似于以上讨论的图5的方式,采用多页面或字线级存取技术来同时编程包括规则和溢出部分的整个物理页面。例如,数据管理单元110可以收集多个扇区并且将所集合的数据划分成j个逻辑页面。接着,可以利用多达j个编码器编码j个逻辑页面。接着,数据管理单元110将所编码的数据划分成j个物理页面,所述j个物理页面接着被写入到盘中,其中,可以同时写入物理页面的规则和溢出部分两者。可以利用已知技术将j个物理页面顺序地写入至闪速单元阵列。在本发明的另一实施例中,逻辑页面和物理页面的数量可以不同:数据管理单元可以在数据收集之后将扇区划分成j个逻辑页面,并且在用于编程的编码之后将所编码的数据划分成j’个物理页面。
未溢出的逻辑页面可以例如利用页面级存取技术彼此独立地编程和读取。当编程或读取溢出的逻辑页面时,必须利用多页面或字线级存取技术存取至少两个物理页面,如上结合图5、6、10、11所讨论的。
在另一变型例中,可以通过初始地仅读取物理页面(即,图12的示例中的物理页面2)而不读取溢出单元来读取溢出页面。如果例如通过循环冗余校验(CRC)码或奇偶校验码确定发生解码错误,则同样可以读取溢出单元1220。解码错误的情况下的另一选择是同样读出其它物理页面(即,图12中的物理页面0和1),以获取用于解码的全部逻辑页面和溢出单元。另选的是,如果其它物理页面(即,图12中的物理页面0和1)之前已经读出并存储到缓冲器中,则可以从该缓冲器读取这些页面以获取存储在溢出单元中的数据。解码错误的情况下的另一选择是读出完整字线1200,以获取完整逻辑页面和溢出单元1220。
多级解码
图13是结合本发明的特征的多级解码器1300的示意性框图。如图13所示,在多级解码器1300中,通过对应解码器1310-0到1310-2连续解码组成代码。针对示例性多级解码器1300的更详细讨论,例如,参见U.Wachsmann等人的“Multilevel Codes:Theoretical Conceptsand Practical Design Rules”,IEEE Trans.on Information Theory,Vol.45,No.5,1361-91(1999),上述文献通过引用包含于此。
根据本发明,多级解码器1300解码字线内的多个页面,其中,例如,针对一个页面的解码器(如解码器1310-0)向另一页面的解码器(如解码器1310-1)馈送判定,以改进整体误码率。在图13中,y是来自解映射器的输出,而
Figure BDA0000027940660000171
以及分别是针对页面0、1以及2的解码器的输出处的解码比特。在另选的实现方式中,针对一个页面的解码器可以向针对另一页面的解码器馈送日志似然性比率(LIR)或软信息。图13示出了一个示例性解码次序,其中,从最低页面0向最高页面1馈送判定。在不脱离本发明的精神的情况下,可以实现其它解码次序,例如,从页面1到0到2。
在本发明的另一方面中,可以首先解码一页面,而不解码其它页面或独立于它们解码。如果发生解码错误,例如通过失败奇偶校验所表示,可以从该字线读取其它页面,以执行如图13所示的多级解码。
可以看到,如果将对于每一个比特级的编码器速率匹配至相应比特级信道的容量,则关于多级解码的多级编码可以接近香农信道容量(Shannon capacity)。如前所述,本发明允许针对需要改进可靠性的页面采用更强力的代码或更低的代码率。因而,如果将选定代码率大致匹配至比特级信道的容量,则存储容量可以接近香农信道容量。
处理、系统以及制造产品细节
虽然本文的多个流程图描述了示例性步骤序列,但其也是本发明的可能改变顺序的实施例。算法的各种置换被设想为本发明的另选实施例。虽然参照软件程序中的处理步骤对本发明的示例性实施例进行了描述,但本领域技术人员应当清楚,各种功能可以作为软件程序、电路部件或状态机的硬件或者软件和硬件的组合中的处理步骤在数字域中实现。这种软件可以例如在数字信号处理器、专用集成电路、微控制器或通用计算机中采用。这种硬件和软件可以具体实施在集成电路内所实现的电路内。
因而,本发明的功能可以采用用于实践这些方法的方法和设备的形式来具体实施。本发明的一个或多个方面可以采用程序代码的形式来具体实施,例如,不管是存储在存储介质中、加载到机器中和/或通过机器执行、还是通过某一传输介质来传输,其中,当将程序代码加载到机器(如计算机)中并通过该机器执行时,该机器变为用于实践本发明的设备。当在通用处理器上实施时,程序代码段与处理器组合,以对专用逻辑电路提供类似地工作的装置。本发明还可以在集成电路、数字信号处理器、微处理器以及微控制器的一种或多种中实施。
如本领域已知的,本文讨论的方法和设备可以作为本身包括具有包含在其上的计算机可读代码装置的计算机可读介质的制造产品来分发。该计算机可读程序代码装置可结合计算机系统操作,以执行所有或一些步骤,从而执行所述方法或创建本文讨论的装置。该计算机可读介质可以是可记录介质(例如,软盘、硬盘驱动器、光盘、存储器卡、半导体器件、芯片、专用集成电路(ASIC)),或者可以是传输介质(例如,包括光纤的网络、环球网、线缆,或利用时分多址、码分多址,或其它射频信道的无线信道)。可以使用可以存储适于与计算机系统一起使用的信息的任何已知或开发的介质。计算机可读代码装置是用于允许计算机读取指令和数据(如磁介质上的磁性变化或光盘表面上的高度变化)的任何机制。
本文描述的计算机系统和服务器中的每一个皆包含配置关联处理器以实现本文公开的方法、步骤以及功能的存储器。该存储器可以是分布的或局部的,并且该处理器可以是分布的或单一的。该存储器可以实现为电、磁或光学存储器,或者这些存储器的任何组合或其它类型的存储装置。此外,术语“存储器”应当被足够广泛地解释成,涵盖能够从可寻址空间中的地址读取或向该地址写入的任何信息,所述可寻址空间通过关联处理器访问。通过这种定义,因为关联处理器可以检索来自网络的信息,所以网络上的信息仍处于存储器内。
应当理解,本文示出和描述的实施方式和变型例仅是对本发明的原理的例示,并且在不脱离本发明的范围和精神的情况下,本领域技术人员可以实现各种修改。

Claims (35)

1.一种用于将数据存储在具有多个单元的多级单元闪速存储器装置中的方法,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同的页面,所述方法包括以下步骤:
累积多个页面;
将所述多个页面编码为单个块;以及
将所述单个块存储在所述多级单元闪速存储器装置中。
2.根据权利要求1所述的方法,还包括解码所存储的单个块的步骤。
3.根据权利要求2所述的方法,其中,所述解码所存储的单个块的步骤提供所述多个页面,并且所述方法还包括从所解码的多个页面获取请求的扇区的步骤。
4.根据权利要求1所述的方法,其中,所述多个页面对应于所述多级单元闪速存储器中的单一字线。
5.根据权利要求1所述的方法,其中,所述多个页面是可用于读取和写入所述多级单元闪速存储器装置的最小数据单位。
6.根据权利要求1所述的方法,其中,至少一个扇区跨越多个页面。
7.根据权利要求1所述的方法,其中,将所述多个页面编码为单个块的步骤利用单一代码和单一代码率来编码所述多个页面。
8.根据权利要求1所述的方法,其中,将所述多个页面编码为单个块的步骤利用多个代码和多个代码率中的一个或多个来编码所述多个页面。
9.根据权利要求1所述的方法,其中,将所述多个页面编码为单个块的步骤利用特有的代码和特有的代码率中的一个或多个来编码所述多个页面中的每一个页面。
10.根据权利要求1所述的方法,其中,所述累积所述多个页面的步骤还包括累积j乘k个扇区的步骤,其中,j是所述多级单元闪速存储器装置中的每一字线的页面数,而k是每一页面的扇区数。
11.根据权利要求1所述的方法,还包括将所编码的单个块划分成多个页面的步骤,并且其中,所述存储步骤包括将所述多个页面中的每一个页面存储在所述多级单元闪速存储器装置中的步骤。
12.一种用于将数据存储在具有多个单元的多级单元闪速存储器装置中的方法,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个来自不同的页面,所述方法包括以下步骤:
确定要写入所述多级单元闪速存储器装置中的当前页面的页面类型;
确定与所确定的页面类型相关联的代码和代码率中的至少一个;
利用所确定的至少一个代码和代码率来编码所述当前页面;以及
将所编码的当前页面存储在所述多级单元闪速存储器装置中。
13.根据权利要求12所述的方法,还包括以下步骤:确定与所确定的页面类型相关联的每一页面的扇区数,以及在所述编码所述当前页面的步骤之前累积所确定数量的扇区。
14.根据权利要求12所述的方法,其中,比第二页面类型具有更低可靠性的第一页面类型利用比所述第二页面类型更强力的代码和更低代码率中的一个或多个来编码。
15.根据权利要求12所述的方法,其中,字线中的每一个页面利用对应代码率编码成大致类似的长度。
16.根据权利要求12所述的方法,还包括以下步骤:接收用于读取至少一个扇区的请求;在所述多级单元闪速存储器装置中识别具有所请求的扇区的页面;读取所识别的页面并利用与所识别的页面相关联的所述至少一个代码和代码率来解码所读取的页面;以及利用存储器映射从所解码的页面获取所请求的扇区。
17.根据权利要求12所述的方法,还包括以下步骤:利用包括多个解码级的多级解码器来解码一个或多个页面以解码字线中的多个页面。
18.根据权利要求17所述的方法,其中,针对第一页面的解码级向针对另一页面的解码级提供判定。
19.根据权利要求18所述的方法,其中,所述判定是硬判定和软判定中的一个或多个。
20.根据权利要求17所述的方法,其中,解码第一页面,并且其中,所述方法还包括以下步骤:如果检测到针对所述第一页面的解码错误则解码至少一个附加页面。
21.一种用于将数据存储在具有多个单元的多级单元闪速存储器装置中的方法,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个来自不同的页面,所述方法包括以下步骤:
确定要在所述多级单元闪速存储器装置中写入的当前页面的页面类型;
确定与所确定的页面类型相关联的每一页面的扇区数;
累积所确定数量的扇区;
编码所累积的扇区;以及
将所累积的扇区存储在所述多级单元闪速存储器装置中。
22.根据权利要求21所述的方法,其中,至少一个扇区跨越多个页面,并且在所述存储步骤期间采用多页面存取方案和字线级存取方案中的一个或多个。
23.根据权利要求21所述的方法,其中,所述每一页面的扇区数是非整数数量并且至少一个扇区跨越多个页面。
24.根据权利要求21所述的方法,还包括以下步骤:缓冲针对后续页面的一部分的一个或多个小数部分。
25.根据权利要求21所述的方法,其中,所述存储所累积的扇区的步骤采用多页面存取方案和字线级存取方案中的一个或多个。
26.根据权利要求21所述的方法,还包括以下步骤:接收用于读取至少一个扇区的请求;在所述多级单元闪速存储器装置中识别具有所请求的扇区的一个或多个页面;以及利用页面级、多页面以及字线级存取方案读取所识别的一个或多个页面。
27.根据权利要求26所述的方法,还包括以下步骤:利用与所识别的一个或多个页面相关联的代码和代码率中的至少一个来解码读取的识别的一个或多个页面,以及利用存储器映射从所解码的一个或多个页面获取所请求的扇区。
28.一种用于将数据存储在具有多个字线的多级单元闪速存储器装置中的方法,每一个字线包括多个物理页面和多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个来自不同的逻辑页面,其中,所述逻辑页面中的每一个包括多个扇区的用户数据,所述方法包括以下步骤:
存储第一组逻辑页面,其中,所述第一组逻辑页面中的每一个逻辑页面的编码大小小于所述多个物理页面的大小;并且
存储第二组逻辑页面,其中,所述第二组逻辑页面中的每一个逻辑页面的编码大小大于所述多个物理页面的大小,并且其中,将所述第二组逻辑页面的至少一部分存储在溢出区域中。
29.根据权利要求28所述的方法,其中,所述溢出区域在所述存储所述第一组逻辑页面的步骤之后被编程。
30.根据权利要求28所述的方法,其中,所述溢出区域在所述存储所述第一组逻辑页面的步骤之前被编程。
31.根据权利要求28所述的方法,其中,所述多级单元闪速存储器装置还包括多个字线,每一个字线包括多个页面,其中,所述多个页面中的每一个页面具有关联代码率,使得所述多个页面中的每一个页面的未编码长度大致相似,而所述多个页面中的每一个页面的编码长度不同。
32.根据权利要求28所述的方法,其中,所述多级单元闪速存储器装置还包括多个字线,每一个字线包括多个页面,其中,所述多个页面中的每一个页面具有关联代码率,使得所述多个页面中的每一个页面的未编码长度不同,而所述多个页面中的每一个页面的编码长度大致相似。
33.一种多级单元闪速存储器装置,包括:
多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同的页面;以及
多个字线,每一个字线包括多个页面,其中,所述多个页面中的每一个页面具有关联代码率,使得所述多个页面中的每一个页面的未编码长度大致相似,而所述多个页面中的每一个页面的编码长度不同。
34.一种多级单元闪速存储器装置,包括:
多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同的页面;以及
多个字线,每一个字线包括多个页面,其中,所述多个页面中的每一个页面具有关联代码率,使得所述多个页面中的每一个页面的未编码长度不同,而所述多个页面中的每一个页面的编码长度大致相似。
35.一种多级单元闪速存储器装置,包括:
多个单元,其中,所述多级单元闪速存储器装置中的每一个单元能够存储多个比特,其中,所述多个比特中的每一个比特来自不同的页面;和
多个字线,每一个字线包括多个页面,其中,至少一个扇区跨越所述多个页面。
CN200980112686.0A 2008-03-11 2009-03-11 通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备 Expired - Fee Related CN101999116B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US6893408P 2008-03-11 2008-03-11
US61/068,934 2008-03-11
PCT/US2009/036810 WO2009114618A2 (en) 2008-03-11 2009-03-11 Methods and apparatus for storing data in a multi-level cell flash memory device with cross-page sectors, multi-page coding and per-page coding

Publications (2)

Publication Number Publication Date
CN101999116A true CN101999116A (zh) 2011-03-30
CN101999116B CN101999116B (zh) 2015-05-13

Family

ID=40749883

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980112686.0A Expired - Fee Related CN101999116B (zh) 2008-03-11 2009-03-11 通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备

Country Status (8)

Country Link
US (4) US8724381B2 (zh)
EP (4) EP2592551A3 (zh)
JP (3) JP2011522301A (zh)
KR (1) KR20100139010A (zh)
CN (1) CN101999116B (zh)
IL (1) IL208028A0 (zh)
TW (1) TWI533304B (zh)
WO (1) WO2009114618A2 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102937929A (zh) * 2011-08-15 2013-02-20 擎泰科技股份有限公司 多位/单元非挥发性内存的测试方法及多模式配置方法
CN103827833A (zh) * 2011-07-22 2014-05-28 桑迪士克科技股份有限公司 存储数据的系统和方法
CN104424957A (zh) * 2013-08-30 2015-03-18 Lsi公司 用于多级编码和解码的系统和方法
CN104813401A (zh) * 2012-09-06 2015-07-29 康杜实验室公司 用于动态随机存取存储器的差分向量存储
CN104810056A (zh) * 2015-03-05 2015-07-29 华南理工大学 一种基于自适应ldpc码的nand闪存差错控制器
CN105468292A (zh) * 2014-09-05 2016-04-06 群联电子股份有限公司 数据存取方法、存储器储存装置及存储器控制电路单元
CN107179961A (zh) * 2016-03-11 2017-09-19 西部数据科技股份有限公司 存储系统中错误校正编码数据的冗余
CN104272262B (zh) * 2012-03-15 2018-01-19 美光科技公司 物理页、逻辑页及码字对应
US10374846B2 (en) 2014-02-28 2019-08-06 Kandou Labs, S.A. Clock-embedded vector signaling codes
WO2019196316A1 (zh) * 2018-04-10 2019-10-17 南京扬贺扬微电子科技有限公司 一种用于nand flash的ldpc测试平台
US10467177B2 (en) 2017-12-08 2019-11-05 Kandou Labs, S.A. High speed memory interface
US10468078B2 (en) 2010-05-20 2019-11-05 Kandou Labs, S.A. Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communication

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100104623A (ko) * 2009-03-18 2010-09-29 삼성전자주식회사 데이터 처리 시스템 및 그것의 부호율 제어 스킴
KR101616100B1 (ko) * 2009-09-25 2016-04-28 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
US8935595B2 (en) 2010-03-12 2015-01-13 Lsi Corporation LDPC erasure decoding for flash memories
US8429500B2 (en) 2010-03-31 2013-04-23 Lsi Corporation Methods and apparatus for computing a probability value of a received value in communication or storage systems
US8775913B2 (en) 2010-03-31 2014-07-08 Lsi Corporation Methods and apparatus for computing soft data or log likelihood ratios for received values in communication or storage systems
US8504885B2 (en) 2010-03-31 2013-08-06 Lsi Corporation Methods and apparatus for approximating a probability density function or distribution for a received value in communication or storage systems
US8254167B2 (en) 2010-05-17 2012-08-28 Seagate Technologies Llc Joint encoding of logical pages in multi-page memory architecture
US8406051B2 (en) 2010-05-17 2013-03-26 Seagate Technology Llc Iterative demodulation and decoding for multi-page memory architecture
US8417877B2 (en) * 2010-08-31 2013-04-09 Micron Technology, Inc Stripe-based non-volatile multilevel memory operation
KR101686590B1 (ko) * 2010-09-20 2016-12-14 삼성전자주식회사 플래시 메모리 시스템 및 그것의 워드 라인 인터리빙 방법
JP5980798B2 (ja) 2010-12-01 2016-08-31 シーゲイト テクノロジー エルエルシーSeagate Technology LLC 独立したシリコン素子の動的な上位レベルの冗長モード管理
US9727414B2 (en) 2010-12-01 2017-08-08 Seagate Technology Llc Fractional redundant array of silicon independent elements
US8719663B2 (en) 2010-12-12 2014-05-06 Lsi Corporation Cross-decoding for non-volatile storage
CN103415844B (zh) 2011-01-18 2016-04-20 希捷科技有限公司 用于高级冗余信息计算的系统和方法
US8825945B2 (en) 2011-01-31 2014-09-02 Marvell World Trade Ltd. Mapping different portions of data to different pages of multi-level non-volatile memory
JP2012174088A (ja) * 2011-02-23 2012-09-10 Hitachi Ltd メモリ制御装置
US10063262B2 (en) 2011-02-28 2018-08-28 Inphi Corporation Non-concatenated FEC codes for ultra-high speed optical transport networks
US9086999B2 (en) * 2011-07-05 2015-07-21 International Business Machines Corporation Data encryption management
US8972651B2 (en) * 2011-10-05 2015-03-03 Hitachi, Ltd. Storage system and storage method
KR20130070927A (ko) * 2011-12-20 2013-06-28 에스케이하이닉스 주식회사 불휘발성 메모리 장치 및 그 동작 방법
US8954825B2 (en) * 2012-03-06 2015-02-10 Micron Technology, Inc. Apparatuses and methods including error correction code organization
US8856611B2 (en) 2012-08-04 2014-10-07 Lsi Corporation Soft-decision compensation for flash channel variation
US9135106B2 (en) * 2012-05-22 2015-09-15 Hgst Technologies Santa Ana, Inc. Read level adjustment using soft information
US8924820B2 (en) * 2012-07-27 2014-12-30 Kabushiki Kaisha Toshiba Memory controller, semiconductor memory system, and memory control method
US8856431B2 (en) 2012-08-02 2014-10-07 Lsi Corporation Mixed granularity higher-level redundancy for non-volatile memory
US9239754B2 (en) 2012-08-04 2016-01-19 Seagate Technology Llc Single read based soft-decision decoding of non-volatile memory
CN102867046B (zh) * 2012-09-06 2016-08-03 记忆科技(深圳)有限公司 基于固态硬盘的数据库优化方法及系统
US8984369B2 (en) * 2012-11-21 2015-03-17 Micron Technology, Inc. Shaping codes for memory
US8656255B1 (en) * 2013-03-15 2014-02-18 Avalanche Technology, Inc. Method for reducing effective raw bit error rate in multi-level cell NAND flash memory
KR102204394B1 (ko) 2013-10-14 2021-01-19 삼성전자주식회사 메모리 시스템에서의 코딩 방법 및 디코딩 방법
GB201322075D0 (en) 2013-12-13 2014-01-29 Ibm Device for selecting a level for at least one read voltage
JP6262063B2 (ja) * 2014-03-18 2018-01-17 東芝メモリ株式会社 不揮発性メモリおよび書き込み方法
KR102247087B1 (ko) * 2014-07-08 2021-05-03 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
TWI550615B (zh) * 2014-08-28 2016-09-21 群聯電子股份有限公司 資料存取方法、記憶體儲存裝置及記憶體控制電路單元
US9563373B2 (en) 2014-10-21 2017-02-07 International Business Machines Corporation Detecting error count deviations for non-volatile memory blocks for advanced non-volatile memory block management
US10365859B2 (en) 2014-10-21 2019-07-30 International Business Machines Corporation Storage array management employing a merged background management process
US9536600B2 (en) 2014-10-22 2017-01-03 International Business Machines Corporation Simultaneous multi-page commands for non-volatile memories
US9830087B2 (en) * 2014-11-13 2017-11-28 Micron Technology, Inc. Memory wear leveling
US10339048B2 (en) 2014-12-23 2019-07-02 International Business Machines Corporation Endurance enhancement scheme using memory re-evaluation
US9990279B2 (en) 2014-12-23 2018-06-05 International Business Machines Corporation Page-level health equalization
US9613664B2 (en) * 2015-01-20 2017-04-04 Samsung Electronics Co., Ltd. Method of operating memory device including multi-level memory cells
US9727416B2 (en) * 2015-07-01 2017-08-08 Xilinx, Inc. Variable code rate solid-state drive
KR20170004693A (ko) * 2015-07-03 2017-01-11 에스케이하이닉스 주식회사 메모리 장치의 컨트롤러 및 그 동작 방법
US9577854B1 (en) * 2015-08-20 2017-02-21 Micron Technology, Inc. Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding
US10192614B2 (en) 2015-10-30 2019-01-29 Seagate Technology Llc Adaptive read threshold voltage tracking with gap estimation between default read threshold voltages
US10347343B2 (en) 2015-10-30 2019-07-09 Seagate Technology Llc Adaptive read threshold voltage tracking with separate characterization on each side of voltage distribution about distribution mean
US9940034B2 (en) 2016-01-25 2018-04-10 International Business Machines Corporation Reducing read access latency by straddling pages across non-volatile memory channels
JP6538741B2 (ja) * 2017-03-09 2019-07-03 株式会社東芝 管理装置、情報処理装置および管理方法
US10164817B2 (en) 2017-03-21 2018-12-25 Micron Technology, Inc. Methods and apparatuses for signal translation in a buffered memory
TWI634556B (zh) * 2017-10-12 2018-09-01 群聯電子股份有限公司 解碼方法、記憶體儲存裝置及記憶體控制電路單元
CN109697134B (zh) * 2017-10-20 2022-10-21 群联电子股份有限公司 解码方法、存储器存储装置及存储器控制电路单元
US10558522B2 (en) 2017-10-20 2020-02-11 Western Digital Technologies, Inc. Dynamic multi-stage decoding
US10460814B2 (en) * 2017-12-12 2019-10-29 Western Digital Technologies, Inc. Non-volatile memory and method for power efficient read or verify using lockout control
US10637511B2 (en) 2017-12-18 2020-04-28 Western Digital Technologies, Inc Dynamic multi-stage decoding
CN111176582A (zh) * 2019-12-31 2020-05-19 北京百度网讯科技有限公司 矩阵存储方法、矩阵访问方法、装置和电子设备
US11424766B1 (en) 2020-01-31 2022-08-23 Marvell Asia Pte Ltd. Method and device for energy-efficient decoders
CN117321934A (zh) * 2021-07-04 2023-12-29 迈凌有限公司 具有2阶fec保护的pmd到tc-mac接口

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6335878B1 (en) * 1998-07-28 2002-01-01 Hitachi, Ltd. Non-volatile multi-level semiconductor flash memory device and method of driving same
JPH11283396A (ja) 1998-03-27 1999-10-15 Sony Corp メモリ装置
JPH11283398A (ja) 1998-03-30 1999-10-15 Matsushita Electric Ind Co Ltd 半導体回路装置
JP3308915B2 (ja) * 1998-11-11 2002-07-29 エヌイーシーマイクロシステム株式会社 不良救済用メモリセル及びそれを用いた記憶装置
US6134141A (en) 1998-12-31 2000-10-17 Sandisk Corporation Dynamic write process for high bandwidth multi-bit-per-cell and analog/multi-level non-volatile memories
US6684289B1 (en) 2000-11-22 2004-01-27 Sandisk Corporation Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory
US6522580B2 (en) * 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
US6866909B2 (en) 2002-09-04 2005-03-15 General Electric Company Limited play data storage media and method for limiting access to data thereon
US6781877B2 (en) * 2002-09-06 2004-08-24 Sandisk Corporation Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells
US7073100B2 (en) 2002-11-11 2006-07-04 International Business Machines Corporation Method for testing embedded DRAM arrays
JP2005078721A (ja) 2003-09-01 2005-03-24 Nippon Telegr & Teleph Corp <Ntt> 誤り訂正方法およびメモリ回路
EP1776699A1 (en) 2004-08-02 2007-04-25 Koninklijke Philips Electronics N.V. Data storage and replay apparatus
US7315916B2 (en) 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7386655B2 (en) 2004-12-16 2008-06-10 Sandisk Corporation Non-volatile memory and method with improved indexing for scratch pad and update blocks
KR100590388B1 (ko) * 2005-03-10 2006-06-19 주식회사 하이닉스반도체 멀티-플레인 타입 플래쉬 메모리 장치와, 그 프로그램 동작및 리드 동작 제어 방법
US7681109B2 (en) * 2005-10-13 2010-03-16 Ramot At Tel Aviv University Ltd. Method of error correction in MBC flash memory
US7349264B2 (en) * 2005-12-28 2008-03-25 Sandisk Corporation Alternate sensing techniques for non-volatile memories
US7388781B2 (en) 2006-03-06 2008-06-17 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping
TWM304711U (en) * 2006-04-26 2007-01-11 Genesys Logic Inc Flash memory data access reliability enhancing device
WO2007132453A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
WO2007132456A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US20070300130A1 (en) 2006-05-17 2007-12-27 Sandisk Corporation Method of Error Correction Coding for Multiple-Sector Pages in Flash Memory Devices
JP2007334413A (ja) * 2006-06-12 2007-12-27 Sony Corp 記憶装置
US7304893B1 (en) * 2006-06-30 2007-12-04 Sandisk Corporation Method of partial page fail bit detection in flash memory devices
US7355892B2 (en) * 2006-06-30 2008-04-08 Sandisk Corporation Partial page fail bit detection in flash memory devices
KR100758301B1 (ko) * 2006-08-04 2007-09-12 삼성전자주식회사 메모리 카드 및 그것의 데이터 저장 방법
CN100504814C (zh) * 2007-01-17 2009-06-24 忆正存储技术(深圳)有限公司 闪存的区块管理方法
US7460398B1 (en) * 2007-06-19 2008-12-02 Micron Technology, Inc. Programming a memory with varying bits per cell
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
WO2009072103A2 (en) * 2007-12-05 2009-06-11 Densbits Technologies Ltd. Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells
US8179719B1 (en) * 2008-03-10 2012-05-15 Marvell International Ltd. Systems and methods for improving error distributions in multi-level cell memory systems
US8054684B2 (en) * 2009-12-18 2011-11-08 Sandisk Technologies Inc. Non-volatile memory and method with atomic program sequence and write abort detection
US8369156B2 (en) * 2010-07-13 2013-02-05 Sandisk Technologies Inc. Fast random access to non-volatile storage
US8472280B2 (en) * 2010-12-21 2013-06-25 Sandisk Technologies Inc. Alternate page by page programming scheme
US8750042B2 (en) * 2011-07-28 2014-06-10 Sandisk Technologies Inc. Combined simultaneous sensing of multiple wordlines in a post-write read (PWR) and detection of NAND failures
US9171627B2 (en) * 2012-04-11 2015-10-27 Aplus Flash Technology, Inc. Non-boosting program inhibit scheme in NAND design
US8793556B1 (en) * 2012-05-22 2014-07-29 Pmc-Sierra, Inc. Systems and methods for reclaiming flash blocks of a flash drive
KR102048765B1 (ko) * 2013-01-15 2020-01-22 삼성전자주식회사 메모리 시스템의 동작 방법 및 메모리 시스템
US9013920B2 (en) * 2013-04-03 2015-04-21 Western Digital Technologies, Inc. Systems and methods of write precompensation to extend life of a solid-state memory
US8996838B1 (en) * 2014-05-08 2015-03-31 Sandisk Technologies Inc. Structure variation detection for a memory having a three-dimensional memory configuration

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10468078B2 (en) 2010-05-20 2019-11-05 Kandou Labs, S.A. Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communication
CN103827833A (zh) * 2011-07-22 2014-05-28 桑迪士克科技股份有限公司 存储数据的系统和方法
CN103827833B (zh) * 2011-07-22 2017-08-08 桑迪士克科技有限责任公司 存储数据的系统和方法
CN102937929A (zh) * 2011-08-15 2013-02-20 擎泰科技股份有限公司 多位/单元非挥发性内存的测试方法及多模式配置方法
US10055285B2 (en) 2012-03-15 2018-08-21 Micron Technology, Inc. Physical page, logical page, and codeword correspondence
US10664345B2 (en) 2012-03-15 2020-05-26 Micron Technology, Inc. Physical page, logical page, and codeword correspondence
US11354187B2 (en) 2012-03-15 2022-06-07 Micron Technology, Inc. Physical page, logical page, and codeword correspondence
CN107967187B (zh) * 2012-03-15 2019-11-26 美光科技公司 一种存储器设备及用于操作存储器的方法
CN110941507A (zh) * 2012-03-15 2020-03-31 美光科技公司 一种存储器设备及用于操作存储器的方法
CN104272262B (zh) * 2012-03-15 2018-01-19 美光科技公司 物理页、逻辑页及码字对应
CN107967187A (zh) * 2012-03-15 2018-04-27 美光科技公司 物理页、逻辑页及码字对应
CN104813401A (zh) * 2012-09-06 2015-07-29 康杜实验室公司 用于动态随机存取存储器的差分向量存储
CN104813401B (zh) * 2012-09-06 2017-06-27 康杜实验室公司 用于动态随机存取存储器的差分向量存储的系统和方法
CN104424957B (zh) * 2013-08-30 2019-07-05 安华高科技股份有限公司 用于多级编码和解码的系统和方法
CN104424957A (zh) * 2013-08-30 2015-03-18 Lsi公司 用于多级编码和解码的系统和方法
US10374846B2 (en) 2014-02-28 2019-08-06 Kandou Labs, S.A. Clock-embedded vector signaling codes
US10805129B2 (en) 2014-02-28 2020-10-13 Kandou Labs, S.A. Clock-embedded vector signaling codes
CN105468292A (zh) * 2014-09-05 2016-04-06 群联电子股份有限公司 数据存取方法、存储器储存装置及存储器控制电路单元
CN104810056A (zh) * 2015-03-05 2015-07-29 华南理工大学 一种基于自适应ldpc码的nand闪存差错控制器
CN107179961B (zh) * 2016-03-11 2019-12-31 西部数据技术公司 存储系统中错误校正编码数据的冗余
CN107179961A (zh) * 2016-03-11 2017-09-19 西部数据科技股份有限公司 存储系统中错误校正编码数据的冗余
US10467177B2 (en) 2017-12-08 2019-11-05 Kandou Labs, S.A. High speed memory interface
WO2019196316A1 (zh) * 2018-04-10 2019-10-17 南京扬贺扬微电子科技有限公司 一种用于nand flash的ldpc测试平台

Also Published As

Publication number Publication date
TWI533304B (zh) 2016-05-11
US9007828B2 (en) 2015-04-14
WO2009114618A2 (en) 2009-09-17
EP2592552A3 (en) 2013-08-28
US8724381B2 (en) 2014-05-13
IL208028A0 (en) 2010-12-30
US20140126289A1 (en) 2014-05-08
US20140126287A1 (en) 2014-05-08
EP2592553A3 (en) 2013-08-28
EP2592552B1 (en) 2015-11-25
EP2592551A3 (en) 2013-08-28
EP2592552A2 (en) 2013-05-15
US9135999B2 (en) 2015-09-15
US9058879B2 (en) 2015-06-16
US20110090734A1 (en) 2011-04-21
EP2266036A2 (en) 2010-12-29
EP2266036B9 (en) 2016-05-18
JP2011522301A (ja) 2011-07-28
EP2592551A2 (en) 2013-05-15
JP2014135097A (ja) 2014-07-24
EP2266036B1 (en) 2015-11-25
TW200951961A (en) 2009-12-16
JP2016042380A (ja) 2016-03-31
EP2592553B1 (en) 2015-11-18
US20140126288A1 (en) 2014-05-08
KR20100139010A (ko) 2010-12-31
JP5944941B2 (ja) 2016-07-05
WO2009114618A3 (en) 2009-11-26
CN101999116B (zh) 2015-05-13
EP2592553A2 (en) 2013-05-15

Similar Documents

Publication Publication Date Title
CN101999116B (zh) 通过交叉页面扇区、多页面编码以及每一页面编码将数据存储在多级单元闪速存储器装置中的方法和设备
US9996417B2 (en) Data recovery in memory having multiple failure modes
CN101183565B (zh) 存储介质中数据校验方法
TWI501238B (zh) 藉由調變編碼用於單元間干擾抑制的方法及裝置
CN101627371B (zh) 用于nand存储器的编程管理数据
CN108694098B (zh) 对于存储设备的不同存储器区域的比特顺序修改
US20100131806A1 (en) Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
KR101679530B1 (ko) 이용 가능한 메모리 공간에 기초한 이중화 저장 장치 구성의 선택
CN103797541A (zh) 存储器装置及用于存储器装置的配置方法
CN102656566A (zh) 固态存储系统中的数据管理
CN104937667A (zh) 对数似然比和针对数据存储系统的集中的对数似然比生成
US8762823B2 (en) Method for performing data shaping, and associated memory device and controller thereof
CN101727983A (zh) 存储设备及其编程方法
CN105023613B (zh) 解码方法、存储器存储装置及存储器控制电路单元
KR20050096947A (ko) 비휘발성 메모리의 내구 한계 카운팅 방법
CN104252317A (zh) 数据写入方法、存储器控制器与存储器存储装置
CN112562772B (zh) 自适应低密度奇偶校验硬解码器
JP2011134031A (ja) 半導体記録装置および半導体記録システム
CN111597071A (zh) 数据存储设备中的纠错
US20200219567A1 (en) Decoding method, memory controlling circuit unit, and memory storage device
US20040141389A1 (en) Solid state storage device and data storage method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: Delaware

Applicant after: EDGAR RAY SYSTEMS CO., LTD.

Address before: American Pennsylvania

Applicant before: Egree System Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: EGREE SYSTEM CO. LTD. TO: AGERE SYSTEMS GUARDIAN CORP.

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150513

Termination date: 20210311

CF01 Termination of patent right due to non-payment of annual fee