数据存储方法及固态硬盘的制作方法

文档序号:9765783阅读:557来源:国知局
数据存储方法及固态硬盘的制作方法
【技术领域】
[0001] 本发明实施例涉及数据存储技术,尤其涉及一种数据存储方法及固态硬盘。
【背景技术】
[0002] 固态硬盘(Solid state Disk,简称SSD)作为最常用的存储数据的载体,多采 用闪存作为存储介质。闪存通过内部用于存储数据的最小粒度单元,即存储单元呈现的 电压在不同电压范围存储不同数据。向闪存中写入数据,实际是采用步幅递增脉冲编程 (Incremental St巧Pulse Programming,简称ISP巧方式对闪存所包括的存储单元施加脉 冲电压进行充电,W使得存储单元的电压在待写入数据对应的电压范围内。该ISPP方式实 际是在施加脉冲电压时,通过施加多个步幅电压的方式实现。若增加步幅电压,虽可提高编 程速度,减少存储单元的充电时间即数据的写入时间。但步幅电压过大,会使得每次施加至 存储单元的电子数过多,从而使得存储单元产生的比特错误率度it Error Rate,简称BER) 也越大。由于写入不同数据对应的电压范围不同,郝么其所需步幅电压也不同,写入不同数 据产生的闪存页的邸R也不同。
[0003] 闪存通常包括多个闪存页,而每个闪存页包括多个存储单元和兀余单元。其中,存 储单元用于存储写入数据,兀余单元用于存储对可对发生的其纠错能力下的比特错误进行 修正的错误纠正码巧rror Correction Code,简称ECC)。该ECC可W为在将待写入数据写 入存储单元之前,通过预设的该SSD所对应的编码方式该待写入数据进行编码所产生的效 验码。
[0004] 对于一个SSD,具有一种编码方式,而该编码方式则决定编码后获得的ECC的纠错 能力。也就是说,SSD内部,所有闪存页具有相同纠错能力的ECC。然而,实际应用中,写入 每个闪存页的数据可能不同,郝么写入该不同数据所产生的邸R也不同。送使得某些闪存 页的ECC纠错能力远远大于实际产生的BER,其ECC的纠错能力得不到充分利用。

【发明内容】

[0005] 本发明实施例提供一种数据存储方法及固态硬盘,W解决现有技术中ECC纠错能 力得不到充分利用的问题。
[0006] 第一方面,本发明实施例提供一种数据存储方法,所述方法应用于固态硬盘中,所 述方法包括:
[0007] 接收写请求,所述写请求包括待写入数据和地址;
[0008] 根据所述地址确定目标闪存页的类型;其中,所述目标闪存页为所述固态硬盘中 存储所述待写入数据的闪存页;
[0009] 根据确定的所述目标闪存页的类型及所述待写入数据,计算所述目标闪存页的比 特错误率BER ;
[0010] 根据所述目标闪存页的B邸和预设的所述目标闪存页的邸R与步幅电压对应关系 确定写入所述待写入数据的步幅电压;其中,所述步幅电压是根据所述固态硬盘的错误纠 正码ECC纠错能力所确定的;
[0011] 根据所述步幅电压将所述待写入数据写入所述目标闪存页。
[0012] 根据第一方面,在第一方面的第一种可能实现的方式中,所述根据所述目标闪存 页的类型及所述待写入数据,计算所述目标闪存页的BER,包括:
[0013] 根据所述目标闪存页的类型和所述待写入数据,采用所述目标闪存页的类型对应 的邸R计算方式,计算所述目标闪存页的BER。
[0014] 根据第一方面的第一种可能实现的方式,在第二种可能实现的方式中,若所述目 标闪存页为最高有效比特位MSB页,所述BER计算方式为:
[001 引 Bmsb 二
[0016] 其中,所述Bmsb为MSB页的BER ;所述P。。为所述待写入数据中00所占的比例;所 述Pi。为所述待写入数据中10所占的比例;所述为预设的写入00发生左偏错误的邸R ; 所述1?*为预设的写入10发生右偏错误的邸R。
[0017] 根据第一方面的第一种可能实现的方式,在第H种可能实现的方式中,若所述目 标闪存页为最低有效比特位LSB页,所述邸R计算方式为:
[001引 馬班3巧1X蝶+巧。:x端+? X靖+&:1 X靖I ;
[0019] 其中,所述为LSB页的BER;所述P。为所述待写入数据中11所占的比例;所述 Pi。为所述待写入数据中10所占的比例;所述P。。为所述待写入数据中00所占的比例;所述 Pm为所述待写入数据中Ol所占的比例;所述:为预设的写入11发生右偏错误的BER ;所 述岛[0为预设的写入10发生左偏错误的邸R ;所述B若为预设的写入00发送右偏错误的邸R ; 所述为预设的写入Ol发生左偏错误的邸R。
[0020] 根据第一方面至第一方面的第H种可能实现的方式中任意一种,在第四种可能实 现的方式中,所述根据所述目标闪存页的邸R和预设的所述目标闪存页的邸R与步幅电压 的对应关系确定写入所述待写入数据的步幅电压,包括:
[002。 根据所述目标闪存页的邸R和邸R步幅电压对应表确定写入所述待写入数据的步 幅电压;其中,所述邸R步幅电压对应表包括;所述目标闪存页的邸R与步幅电压的对应关 系。
[0022] 第二方面,本发明实施例提供一种固态硬盘,包括:控制器及存储器;其中,所述 存储器包括;至少一个闪存页;所述控制器与所述存储器中的所述至少一个闪存页连接;
[0023] 所述控制器,用于接收写请求,所述写请求包括待写入数据和地址,根据所述地址 确定目标闪存页的类型,根据确定的所述目标闪存页的类型及所述待写入数据计算所述目 标闪存页的BER,根据所述目标闪存页的邸R和预设的所述目标闪存页的邸R与步幅电压对 应关系确定写入所述待写入数据的步幅电压,并根据所述步幅电压将所述待写入数据写入 所述目标闪存页;其中,所述目标闪存页为所述固态硬盘中存储所述待写入数据的闪存页; 所述步幅电压是根据所述固态硬盘的ECC纠错能力所确定的;
[0024] 所述存储器,用于存储所述待写入数据。
[0025] 根据第二方面,在第二方面的第一种可能实现的方式中,所述控制器,还用于根据 所述目标闪存页的类型和所述待写入数据,采用所述目标闪存页的类型对应的BER计算方 式,计算所述目标闪存页的BER。
[0026] 根据第二方面的第一种可能实现的方式,在第二种可能实现的方式中,若所述目 标闪存页为MSB页,所述邸R计算方式为:
[0027] Bmsb 二 Au X B告 + Pio X ;
[002引其中,所述Bmsb为MSB页的邸R ;所述P。。为所述待写入数据中00所占的比例;所 述Pi。为所述待写入数据中10所占的比例;所述哗为预设的写入00发生左偏错误的邸R ; 所述Bif为预设的写入10发生右偏错误的邸R。
[0029] 根据第二方面的第一种可能实现的方式,在第H种可能实现的方式中,若所述目 标闪存页为LSB页,所述邸R计算方式为:
[0030] Blsb=P,, 巧。XB>P。。XB^e+P。, X巧;
[00引]其中,所述Blsb为LSB页的邸R ;所述Pu为所述待写入数据中11所占的比例;所 述Pi。为所述待写入数据中10所占的比例;所述P。。为所述待写入数据中00所占的比例;所 述Pei为所述待写入数据中Ol所占的比例;所述巧_1为预设的写入11发生右偏错误的BER ; 所达为预设的写入10发生左偏错误的BER ;所述为预设的写入00发送右偏错误的 邸R ;所述为预设的写入Ol发生左偏错误的邸R。
[0032] 根据第二方面至第二方面的第H种可能实现的方式中任意一种,在第四种可能实 现的方式中,所述控制器,具体用于根据所述目标闪存页的邸R和邸R步幅电压对应表确定 写入所述待写入数据的步幅电压;其中,所述BER步幅电压对应表包括:所述目标闪存页的 B邸与步帖电压的对应关系。
[0033] 本发明实施例的数据存储方法及固态硬盘,可根据写请求中的地址确定目标闪存 页的类型,根据该目标闪存页的类型及该待写入数据计算该目标闪存页的BER,从而根据该 目标闪存页的邸R和预设的目标闪存页的邸R与步幅电压的对应关系确定步幅电压,该步 幅电压为根据固态硬盘的ECC纠错能力确定的,根据该步幅电压将该待写入数据写入该目 标闪存页,可有效减小该闪存页实际所产生的B邸与ECC纠错能力之间的差距,使得ECC纠 错能力得到充分的利用。
【附图说明】
[0034] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可W 根据送些附图获得其他的附图。
[0035] 图1为本发明实施例一所提供的数据存储方法的流程图;
[0036] 图2为本发明实施例二所提供的数据存储方法的流程图;
[0037] 图3为本发明实施例H所提供的固态硬盘的结构示意图;
[0038] 图4为本发明实施例四所提供的固态硬盘的结构示意图。
【具体实施方式】
[0039] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040] 实施例一
[0041] 本发明实施例提供一种数据存储方法。该方法可应用于固态硬盘中,可由该固态 硬盘内的控制器所
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1