一种固态硬盘SSD存储系统及方法技术方案

技术编号:14818027 阅读:54 留言:0更新日期:2017-03-15 11:53
本发明专利技术公开了一种固态硬盘SSD存储系统及方法。该系统包括写随机化模块、CRC产生模块、LDPC编码模块、BCH编码模块和Flash通道控制模块,写随机化模块利用第一随机种子对待写入到页面存储中的第一数据进行随机化处理;CRC产生模块生成第一CRC校验位信息;LDPC编码模块生成第一LDPC校验位信息;BCH编码模块生成第一BCH校验位信息;并通过Flash通道控制模块将第一随机种子、第一随机数据、第一CRC校验位信息、第一LDPC校验位信息和第一BCH校验位信息存放到NAND Flash芯片的页面存储中。应用本发明专利技术实施例所提供的技术方案,增强了数据安全性和数据纠错能力。

【技术实现步骤摘要】

本专利技术涉及计算机存储
,特别是涉及一种固态硬盘SSD存储系统及方法
技术介绍
随着计算机存储技术的快速发展,SSD(SolidStateDrives,固态硬盘)已逐步取代传统的机械硬盘。SSD具有超大容量、超高速等特性,其依靠NANDFlash芯片存储数据,几十片或者上百片的NANDFlash芯片可以组成大容量的SSD。随着NANDFlash芯片的高速发展,NANDFlash芯片从2DNANDFlash发展到3DNANDFlash,容量更大、读写速度更快,从而对于3DNANDFlash的控制技术要求更高才能保证操作无误。传统的控制技术已经无法满足NANDFlash芯片发展的需求,亟需一种新的访问控制技术,增强数据安全性,提高纠错能力。
技术实现思路
本专利技术的目的是提供一种固态硬盘SSD存储系统及方法,以增强数据安全性,提高数据纠错能力,进而延长SSD的使用寿命。一种固态硬盘SSD存储系统,包括写随机化模块、循环冗余校验CRC产生模块、低密度奇偶校验码LDPC编码模块、BCH编码模块和Flash通道控制模块,其中,所述写随机化模块,用于利用第一随机种子对待写入到所述NANDFlash芯片的页面存储中的第一数据进行随机化处理,获得第一随机数据;并将所述第一随机种子和所述第一随机数据输入到所述CRC产生模块中;所述CRC产生模块,用于根据所述第一随机种子和所述第一随机数据,生成第一CRC校验位信息;并将所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息输入到所述LDPC编码模块中;所述LDPC编码模块,用于根据所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息,生成第一LDPC校验位信息;并将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息和所述第一LDPC校验位信息输入到所述BCH编码模块中;所述BCH编码模块,用于对所述第一LDPC校验位信息进行BCH编码,生成第一BCH校验位信息;并通过所述Flash通道控制模块将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息、所述第一LDPC校验位信息和所述第一BCH校验位信息存放到所述NANDFlash芯片的页面存储中。在本专利技术的一种具体实施方式中,还包括BCH解码模块、LDPC解码模块、CRC确认模块和读去随机化模块,其中,所述BCH解码模块,用于通过所述Flash通道控制模块从所述NANDFlash芯片的页面存储中读取第二数据对应的第二BCH校验位信息和第二LDPC校验位信息;对所述第二BCH校验位信息进行BCH解码,并根据第二LDPC校验位信息确定正确的LDPC校验位信息,将所述正确的LDPC校验位信息输出给所述LDPC解码模块;所述LDPC解码模块,用于通过所述Flash通道控制模块从所述NANDFlash芯片的页面存储中读取所述第二数据对应的第二随机数据、第二CRC校验位信息和第二随机种子;根据所述正确的LDPC校验位信息,还原LDPC原数据;所述CRC确认模块,用于根据所述第二CRC校验信息确认第二随机数据;所述读去随机化模块,用于对所述第二随机数据进行去随机化处理,将其还原成打乱之前的所述第二数据,待直接存储器访问DMA读取。在本专利技术的一种具体实施方式中,所述BCH解码模块,具体用于在对所述第二BCH校验位信息进行BCH解码之后,确定所述第二LDPC校验位信息是否正确,如果是,则确定所述第二LDPC校验位信息为正确的LDPC校验位信息,如果否,则对所述第二LDPC校验位信息进行纠错处理,获得正确的LDPC校验位信息。在本专利技术的一种具体实施方式中,所述写随机化模块,具体用于利用所述第一随机种子将所述第一数据与设定比特数的线性反馈移位寄存器LFSR进行随机化操作。在本专利技术的一种具体实施方式中,所述LFSR由所述第一随机种子扩展而成。在本专利技术的一种具体实施方式中,所述NANDFlash芯片的页面存储包括Flash页区域和Flash备用区域,所述Flash通道控制模块,具体用于将所述第一随机数据存放到所述Flash页区域中,将所述第一随机种子、所述第一CRC校验位信息、所述第一LDPC校验位信息和所述第一BCH校验位信息存放到所述Flash备用区域中。在本专利技术的一种具体实施方式中,还包括:缓存模块,用于缓存待写入到所述NANDFlash芯片的页面存储中的第一数据,或者,缓存经过所述读去随机化模块处理后的待所述DMA读取的第二数据。一种固态硬盘SSD存储方法,包括:利用第一随机种子对待写入到所述NANDFlash芯片的页面存储中的第一数据进行随机化处理,获得第一随机数据;根据所述第一随机种子和所述第一随机数据,生成第一CRC校验位信息;根据所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息,生成第一LDPC校验位信息;对所述第一LDPC校验位信息进行BCH编码,生成第一BCH校验位信息;将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息、所述第一LDPC校验位信息和所述第一BCH校验位信息存放到所述NANDFlash芯片的页面存储中。在本专利技术的一种具体实施方式中,还包括:从所述NANDFlash芯片的页面存储中读取第二数据对应的第二BCH校验位信息和第二LDPC校验位信息;对所述第二BCH校验位信息进行BCH解码,并根据第二LDPC校验位信息确定正确的LDPC校验位信息;读取所述第二数据对应的第二随机数据、第二CRC校验位信息和第二随机种子;根据所述正确的LDPC校验位信息,还原LDPC原数据;根据所述第二CRC校验信息确认第二随机数据;对所述第二随机数据进行去随机化处理,将其还原成打乱之前的所述第二数据,待直接存储器访问DMA读取。在本专利技术的一种具体实施方式中,所述根据第二LDPC校验位信息确定正确的LDPC校验位信息,包括:在对所述第二BCH校验位信息进行BCH解码之后,确定所述第二LDPC校验位信息是否正确;如果是,则确定所述第二LDPC校验位信息为正确的LDPC校验位信息;如果否,则对所述第二LDPC校验位信息进行纠错处理,获得正确的LDPC校验位信息。应用本专利技术实施例所提供的技术方案,对于待写入到NANDFlash芯片的页面存储中的第一数据,首先写随机化模块利用第一随机种子对其进行随机化处理,获得第一随机数据,CRC产生模块根据第一随机数据生成第一CRC校验位信息,LDPC编码模块根据前面操作产生的数据生成第一LDPC校验位信息,BCH编码模块对第一LDPC校验位信息进行BCH编码,生成第一BCH校验位信息,通过Flash通道控制模块将第一随机种子、第一随机数据、第一CRC校验位信息、第一LDPC校验位信息和第一BCH校验位信息存放到NANDFlash芯片的页面存储中。对第一数据进行随机化处理,增强了数据安全性,使得存储在NANDFlash芯片的页面存储中的数据不容易被窃取,同时,采用LDPC编码模块对LDPC原数据进行编码产生第一LDPC校验位信息,采用BCH编码对第一LDPC校验位信息进行编码得到第一BCH校验位信息,增强了数据纠错能力。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而本文档来自技高网...
一种固态硬盘SSD存储系统及方法

【技术保护点】
一种固态硬盘SSD存储系统,其特征在于,包括写随机化模块、循环冗余校验CRC产生模块、低密度奇偶校验码LDPC编码模块、BCH编码模块和Flash通道控制模块,其中,所述写随机化模块,用于利用第一随机种子对待写入到所述NAND Flash芯片的页面存储中的第一数据进行随机化处理,获得第一随机数据;并将所述第一随机种子和所述第一随机数据输入到所述CRC产生模块中;所述CRC产生模块,用于根据所述第一随机种子和所述第一随机数据,生成第一CRC校验位信息;并将所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息输入到所述LDPC编码模块中;所述LDPC编码模块,用于根据所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息,生成第一LDPC校验位信息;并将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息和所述第一LDPC校验位信息输入到所述BCH编码模块中;所述BCH编码模块,用于对所述第一LDPC校验位信息进行BCH编码,生成第一BCH校验位信息;并通过所述Flash通道控制模块将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息、所述第一LDPC校验位信息和所述第一BCH校验位信息存放到所述NAND Flash芯片的页面存储中。...

【技术特征摘要】
1.一种固态硬盘SSD存储系统,其特征在于,包括写随机化模块、循环冗余校验CRC产生模块、低密度奇偶校验码LDPC编码模块、BCH编码模块和Flash通道控制模块,其中,所述写随机化模块,用于利用第一随机种子对待写入到所述NANDFlash芯片的页面存储中的第一数据进行随机化处理,获得第一随机数据;并将所述第一随机种子和所述第一随机数据输入到所述CRC产生模块中;所述CRC产生模块,用于根据所述第一随机种子和所述第一随机数据,生成第一CRC校验位信息;并将所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息输入到所述LDPC编码模块中;所述LDPC编码模块,用于根据所述第一随机种子、所述第一随机数据和所述第一CRC校验位信息,生成第一LDPC校验位信息;并将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息和所述第一LDPC校验位信息输入到所述BCH编码模块中;所述BCH编码模块,用于对所述第一LDPC校验位信息进行BCH编码,生成第一BCH校验位信息;并通过所述Flash通道控制模块将所述第一随机种子、所述第一随机数据、所述第一CRC校验位信息、所述第一LDPC校验位信息和所述第一BCH校验位信息存放到所述NANDFlash芯片的页面存储中。2.根据权利要求1所述的固态硬盘SSD存储系统,其特征在于,还包括BCH解码模块、LDPC解码模块、CRC确认模块和读去随机化模块,其中,所述BCH解码模块,用于通过所述Flash通道控制模块从所述NANDFlash芯片的页面存储中读取第二数据对应的第二BCH校验位信息和第二LDPC校验位信息;对所述第二BCH校验位信息进行BCH解码,并根据第二LDPC校验位信息确定正确的LDPC校验位信息,将所述正确的LDPC校验位信息输出给所述LDPC解码模块;所述LDPC解码模块,用于通过所述Flash通道控制模块从所述NANDFlash芯片的页面存储中读取所述第二数据对应的第二随机数据、第二CRC校验位信息和第二随机种子;根据所述正确的LDPC校验位信息,还原LDPC原数据;所述CRC确认模块,用于根据所述第二CRC校验信息确认第二随机数据;所述读去随机化模块,用于对所述第二随机数据进行去随机化处理,将其还原成打乱之前的所述第二数据,待直接存储器访问DMA读取。3.根据权利要求2所述的固态硬盘SSD存储系统,其特征在于,所述BCH解码模块,具体用于在对所述第二BCH校验位信息进行BCH解码之后,确定所述第二LDPC校验位信息是否正确,如果是,则确定所述第二LDPC校验位信息为正确的LDPC校验位信息,如果否,则对所述第二LDPC校验位信息进行纠错处理,获得正确的LDPC校验位信息。4.根据权利要求1...

【专利技术属性】
技术研发人员:廖红辉
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南;41

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

1