当前位置: 首页 > 专利查询>湖南大学专利>正文

一种NAND闪存系统的数据存储容错编码方法技术方案

技术编号:10261847 阅读:255 留言:0更新日期:2014-07-26 21:00
本发明专利技术公开了一种NAND闪存系统的数据存储容错编码方法,该方法为:将初始数据从左到右进行迭代异或,左起第一位不变,生成码字;判断所述码字的0的数据个数是否过半,若过半,则对码字进行翻转,并在翻转后的数据最后添加标识位。本发明专利技术的方法能减少NAND闪存中待存入数据里CSPs数据模式,降低充电峰值电流,提高电压相对较低的区域中数据存储率,降低电压衰减导致的数据错误,从而加强数据可靠性。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种NAND闪存系统的数据存储容错编码方法,该方法为:将初始数据从左到右进行迭代异或,左起第一位不变,生成码字;判断所述码字的0的数据个数是否过半,若过半,则对码字进行翻转,并在翻转后的数据最后添加标识位。本专利技术的方法能减少NAND闪存中待存入数据里CSPs数据模式,降低充电峰值电流,提高电压相对较低的区域中数据存储率,降低电压衰减导致的数据错误,从而加强数据可靠性。【专利说明】一种NAND闪存系统的数据存储容错编码方法
本专利技术涉及闪存容错编码
,具体是一种NAND闪存系统的数据存储容错编码方法,适用于基于NAND闪存芯片的固态硬盘。
技术介绍
固态硬盘(SSD,solid state drive)是一种利用Flash芯片或者DRAM芯片作为数据永久存储的硬盘,而基于Flash存储器又分为NOR型和NAND型,在这里我们所讨论的是NANDFlash memory,简称NAND闪存。NAND闪存是一种高性能、可携带、低功耗、非易失的存储技术,是当前在国际上备受关注的存储装置,而NAND闪存编码技术是当前研究者关注的热门领域,它涉及多学科高度交叉、知识高度集成的前沿热点研究领域。由于计算机的数据只有O和I两种形式,在NAND闪存芯片中是使用晶体管中的电荷来表示和保存数据。NAND闪存芯片由许多晶体管组成,每个这样的晶体管称作“Cell”,即单元。Cell有两种类型:第一种是SLC(Single Level Cell),每个Cell可以存储Ibit数据,Cell中充满电表示0,放电后表示I ;第二种为MLC (Mult1-Level Cell),每个Cell可以存储多个bit,可以表示多种状态的数据,使用多个电压阈值来表示不同的数据状态。每一个NAND闪存芯片中由许多Cell串组成,每个Cell串是由多个Cell串联而成,处于一条位线(bit-line)上,如图1中区域I内的Cell处于一条位线上,每个Cell串每次只能读写其中一个Cell,多个Cell串并联则可以并行读写多位数据,所有位于Cell串相同位置上的Cell称作一页(Page),如图1中区域2内的Cell就组成一页(Page),将一页(Page)上的Cell贯穿起来的导线组称为字线(word-line),多个页(Page)组成一个块(Block)。每一个NAND闪存芯片包含多个块(Block)。对于NAND闪存来说,读写操作的最小单位是页(Page),而一旦数据需要擦除,则需要擦除整块(Block)。NAND闪存相比于传统硬盘虽然具备读取速度快、无噪音和发热量低等优点,但是随着时间的推移,NAND存储介质的使用寿命逐渐缩短,一方面对cell充电后,由于应力引起的泄漏电流(SILC)或电子陷阱从隧道氧化物从浮动闸门的电子喷射而引起电压衰减会导致数据保留错误(Data retention error);另一方面,读写操作电压引起的电子注入也会导致干扰错误(Program disturbance error),从而引发数值随机差错。而数据保留错误的出错率是干扰错误出错率的几百倍。由于闪存的Cell中数据保留错误的表现是数据O衰减变成数据1,因此,如果能增加存入数据中I的比重,便可以容错,降低数据保留错误。此外,在cell充电时,为了维持位线之间的电势差,需要在写操作的同时对相邻位线之间的电容进行充电,其充电的峰值电流可高达几百至上千毫安,不仅消耗电能而且这种突发的强电流极易导致存储设备异常,造成数据丢失。而CSPs数据模式(CSPs =Column StripePatterns,是指数据中O和I交错存入,如101010...,相邻数据都出现电势差,则需要很大电容来维持数据电势差)是消耗充电峰值电流最大的一种数据模式,因此,在数据存入NAND闪存时,有必要进行预先编码运算,让数据以合理的状态存入cell中,这里合理的状态是指尽可能将数据通过编码增加I的个数,从而减少电压衰减所导致的随机数据错误,以及消除CSPs数据模式,从而降低突发的写操作峰值电流强度和功耗,提高存储设备的可靠性。R.Rivest等人在上世纪八十年代首次提出在NAND闪存里进行重写,由于闪存内的存储单元存储的数据只能由低到高,反过来则不允许。因此提出一种新颖的编码方案就是重写,在原来已经存储了数据的单元中继续存储数据,只需要升高原来的电压就可以达到重复存储数据的目的,同时,每次重写引入两个变量使译码得以实现。这种方法能够减少NAND闪存的擦写次数,但是并没有容错的作用。Tanakamaru等人在近年提出一种SPEA消除算法和非对称编码算法,通过消除CSPs数据模式降低功耗,再使用非对称编码算法增加数据I的存储率,以此来降低数据保留错误和干扰错误。NAND闪存是一种新兴存储设备,因此相关理论研究也是新兴的一个热门研究领域,对于闪存编码技术的目的包括消除NAND闪存数据存储过程中的大功耗数据模式,解决高电流所导致的存储设备异常问题;缓解闪存因使用寿命的降低所导致的数据保留错误问题;增加写的次数,以此减少擦除次数来延长闪存使用寿命。
技术实现思路
本专利技术所要解决的技术问题是,针对现有编码技术不足,提供一种NAND闪存系统的数据存储编码方法,减少NAND闪存中待存入数据里CSPs数据模式,增加数据I的个数,降低数据差错率,同 时降低充电峰值电流。为解决上述技术问题,本专利技术所采用的技术方案是:一种NAND闪存系统的数据存储容错编码方法,该方法为:将初始数据从左到右进行迭代异或,左起第一位不变,生成新码字;判断所述新码字的O的数据个数是否过半,若过半,则对所述新码字进行翻转,并在翻转后的数据最后添加标识位。本专利技术方法具体步骤如下:I)将待存数据dQ,Cl1, d2……..Cl2lri输入到相应的I/O数据缓冲区,所述待存数据长度为Cn = 2n = 2m,η≥4,m≥3 ;2)将所述待存数据从左到右进行异或处理,第一位Cltl保持不变,Cl1和Cltl异或得到新码字第Cl1个数据,以此类推,最后,d2n_2和d2n_3异或得到新码字第d2n_2个数据,Cl2lri和d2n_2异或得到新码字第Cl2lri个数据;3)将经上述步骤2)异或处理后的数据进行二进制相加,并将相加结果存储在一个m位的寄存器中,当相加结果不足m位时,在前面补O ;将所述相加结果的最高有效位取反得到标识位的值;4)将经上述步骤2)异或处理后的数据与所述标识位的值进行异或处理;5)将所述标识位的值作为经上述步骤4)处理后的数据的最后一位,得到最终的(2n+l)位数据,在相应的I/O数据接口中输出最终的数据。与现有技术相比,本专利技术所具有的有益效果为:本专利技术的方法能减少NAND闪存中待存入数据里CSPs数据模式,提高数据I的比重,从而减少电压衰减所导致的随机数据错误,并降低突发的写操作峰值电流强度和功耗,提高存储设备的可靠性。【专利附图】【附图说明】图1为NAND闪存的一个Block内部结构示意图;图2为本专利技术一实施例编码过程示意图;图3为本专利技术一实施例译码过程示意图;图4为本专利技术逻辑电路实施示意图。【具体实施方式】本专利技术是针对NAND闪存系统的数据存储容错方法是先对待存入设备的本文档来自技高网
...

【技术保护点】
一种NAND闪存系统的数据存储容错编码方法,其特征在于,该方法为:将初始数据从左到右进行迭代异或,左起第一位不变,生成新码字;判断所述新码字的0的数据个数是否过半,若过半,则对所述新码字进行翻转,并在翻转后的数据最后添加标识位。

【技术特征摘要】

【专利技术属性】
技术研发人员:胡玉鹏刘万青刘卫东卿敏龙宋顺周超
申请(专利权)人:湖南大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1