【技术实现步骤摘要】
本专利技术涉及信息
,特别涉及一种固态硬盘存储设备和固态硬盘存储设备的数据存取方法。
技术介绍
随着信息化技术的大规模发展,固态硬盘(SSD,Solid-StateDisk)应运而生。使用Flash介质的SSD具有高性能与低功耗的特性,可以极大的降低存储系统的时延,并且由于SSD不需要机械结构,可靠性会更高。作为SSD存储介质的NandFlash,其擦写次数具有一定的寿命限制,这成为影响SSD寿命与性能的关键因素。在NandFlash中,数据是以NandFlash物理块和NandFlash物理页的形式组织的,一个NandFlash物理块由若干NandFlash物理页组成。一个NandFlash物理块是执行擦除操作的最小单元,一个NandFlash物理页是执行写入/读取操作的最小单元。NandFlash物理页在写入一次数据后,必须经过对该NandFlash物理页所在的NandFlash物理块执行擦除操作后,该NandFlash物理页才能再次写入数据。一个NandFlash物理页由若干存储单元构成,数据在NandFlash的存储单元中是以浮栅中的电荷形式存储的。对存储单元的擦写会降低浮栅与沟道间绝缘层的绝缘性能。超过一定擦写次数后,电子便无法在浮栅中保持足够的时间,存储的数据便会产生大量的比特错误。如果超过了SSD控制器的错误纠正能力,那么对应的NandFlash物理页/物理块便认为已经损坏。减少实际写 ...
【技术保护点】
一种固态硬盘SSD存储设备,所述SSD存储设备包括至少一个存储单元,所述存储单元是所述SSD存储设备中进行写入或读取操作的最小单元,其特征在于:所述存储单元包括用户数据区、一级元数据、以及错误检查和纠正ECC码;所述用户数据区、一级元数据和ECC码的长度均为固定值;所述用户数据区包含二个以上长度相同的分区,每个分区用于存储压缩后的数据;存储单元中的一级元数据记录所述用户数据区中存储的数据的压缩标志,以及所述用户数据区中每个数据压缩后所占用的分区个数;所述ECC码用于保证所述存储单元中数据的一致性。
【技术特征摘要】
1.一种固态硬盘SSD存储设备,所述SSD存储设备包括至少一个存储单元,
所述存储单元是所述SSD存储设备中进行写入或读取操作的最小单元,其特征
在于:
所述存储单元包括用户数据区、一级元数据、以及错误检查和纠正ECC
码;所述用户数据区、一级元数据和ECC码的长度均为固定值;
所述用户数据区包含二个以上长度相同的分区,每个分区用于存储压缩后
的数据;
存储单元中的一级元数据记录所述用户数据区中存储的数据的压缩标志,
以及所述用户数据区中每个数据压缩后所占用的分区个数;
所述ECC码用于保证所述存储单元中数据的一致性。
2.根据权利要求1所述的SSD存储设备,其特征在于,每个所述存储单元
中的用户数据区的分区个数相同。
3.根据权利要求1或2所述的SSD存储设备,其特征在于,所述SSD存储设
备还包括二级元数据生成单元;
所述二级元数据生成单元,用于生成待存储数据的二级元数据,所述二级
元数据是包括压缩后的所述待存储数据的长度和压缩后的所述待存储数据的
逻辑块地址LBA。
4.根据权利要求3所述的SSD存储设备,其特征在于,所述SSD存储设备
还包括填充单元,用于在所述二级元数据的长度与压缩后的所述待存储数据的
长度之和不是一个所述分区长度的整数倍时,添加填充数据,使得所述二级元
数据,压缩后的所述待存储数据,以及所述填充数据的长度之和是一个所述分
区长度的最小整数倍。
5.根据权利要求3或4所述的SSD存储设备,其特征在于,所述二级元数
据生成单元将生成的所述二级元数据添加在所述压缩后的所述待存储数据之
前。
6.根据权利要求3所述的SSD存储设备,其特征在于,所述SSD存储设备
还包括缓存处理单元,用于将所述二级元数据和压缩后的所述待存储数据写入
所述SSD存储设备的缓存中。
7.根据权利要求4所述的SSD存储设备,其特征在于,将所述填充单元填
充数据后的所述二级元数据,压缩后的所述待存储数据,以及所述填充数据写
入所述SSD存储设备的缓存中。
8.根据权利要求6或7所述的SSD存储设备,其特征在于,所述SSD存储设
备还包括数据写入单元;
所述数据写入单元,用于将所述缓存中的长度等于一个所述用户数据区的
一个或一个以上的缓存数据写入所述SSD存储设备的一个存储单元中;所述缓
存数据包括所述二级元数据和压缩后的所述待存储数据,或所述缓存数据包括
所述二级元数据,压缩后的所述待存储数据和所述填充数据。
9.根据权利要求1、2、4、6或7任一所述的SSD存储设备,其特征在于,
所述一级元数据还包括所述待存储数据的逻辑地址到物理地址的映射信
息,和所述待存储数据写入所述存储单元时的时间信息。
10.根据权利要求8所述的SSD存储设备,其特征在于,所述SSD存储设备
还包括数据恢复单元;
所述数据恢复单元,用于根据数据读取请求中包括的待读取数据的LBA,
\t读取所述LBA对应的存储单元中的用户数据区、一级元数据和ECC码;并根
据所述一级元数据获取所述用户数据区中压缩数据的个数,获取对应的压缩数
据和二级元数据,比较所述二级元数据中的LBA与所述数据读取请求中的
LBA是否一致,在一致时将获取的对应的压缩数据发送至解压缩引擎进行解
压。
11.一种固...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。