一种用于固态存储设备的闪存转换层控制方法技术

技术编号:15566870 阅读:60 留言:0更新日期:2017-06-10 01:09
本发明专利技术公开了一种用于固态存储设备的闪存转换层控制方法,包括以下步骤:步骤S1:在闪存转换层(FTL)中设置最小管理单元,且N个最小管理单元刚好构成一个闪存物理页的空间,其中,N为大于0的正整数;步骤S2:逻辑地址和物理地址之间以最小管理单元来进行映射;步骤S3:FTL为每个最小管理单元数据给予一个地址标识进行管理;步骤S4:当主机写入数据时,等待连续写入数据达到一个完整的闪存物理页空间后,再一次性写入一个完整的空白闪存物理页。与现有技术相比较,本发明专利技术采用4KB数据块映射算法,从而能够有效提高随机写速度,同时能够在有限的片上存储空间来实现越来越大的映射表。

Flash converting layer control method for solid state storage device

The invention discloses a storage device for solid state flash translation layer control method, which comprises the following steps: step S1: in the flash translation layer (FTL) in the setting of minimum management unit, and the N minimum management unit just form a physical memory page space, where N is a positive integer greater than 0 steps; S2: between logical address and physical address with minimum management unit of mapping; step S3:FTL for minimum management unit data for each given an address identification management; step S4: when the host to write data, write data to wait for a complete physical memory page space, then write once a complete blank physical memory page. Compared with the prior art, the present invention adopts the 4KB data block mapping algorithm, thereby effectively improving the random write speed, and storing the space on a limited chip to realize the larger mapping table.

【技术实现步骤摘要】

本专利技术涉及存储
,尤其涉及一种用于固态存储设备的闪存转换层控制方法
技术介绍
随着半导体技术的进步,闪存容量越来越大,价格也却越来越便宜,固态硬盘SSD在越来越多的领域取代以磁带为媒介的传统机械硬盘(HDD)。固态硬盘与机械硬盘最大的区别在于,固态硬盘中没有任何机械部件。所以,相比传统硬盘,固态硬盘具有更低的延时和能耗,更快的数据处理速度,更好的抗震性能,更高的可靠性和耐用性。固态硬盘的存储器件采用的是闪存,NAND型闪存具有以下几个特点:①读写基本单位是以页(Page)为单位,擦除是以块(Block)为单位;页的大小为nKB(KB单位为1024字节),n通常等于2,4,8或16。每块包含m页,m通常为64,128或者256。②每个物理块,必须先擦除后,才能够写入数据。③每个块有一定的寿命,即擦除次数是有限的。举例来说,对于SLC(SingleLevelCell)Flash,即单逻辑单元闪存,寿命为10,00,00次;而对于MLC(Multi-LevelCell)Flash,典型寿命为1500-3,000次。基于闪存的上述特点,在固态硬盘中引入了闪存转换层FTL,用于对闪存进行存储控制。比如,Flash写数据只能将1写为0,擦除数据是将所有数据都写为1,因此如果在已经有数据的Flash上写入新的数据,则必须先是整块擦除(所有存储为全部为1),然后再写入新数据。这也决定了做适合读写SSD的最小单元是Page。在过去的机械硬盘时代,操作系统认为磁盘是一连串扇区(Sector,包含512Byte存储空间),这是对硬盘操作的最小单位。这一系列的物理特性的限制,要求FTL承担向下兼容的特性。FTL位于文件系统和物理介质之间,把Flash的操作习惯虚拟成以传统硬盘的512Byte扇区进行操作。操作系统就可以按照传统的扇区方式操作,而不用担心之前说的擦除/读/写问题。一切逻辑到物理的转换,都由FTL来完成,如图1所示。FTL层负责将上层文件系统的读写请求转换成闪存物理层面的读写操作命令,同时,依据闪存的操作特点完成相应的管理。FTL算法,特别是它对应的闪存映射表FMT(FlashMappingTable)机制,是影响固态硬盘性能高低的关键所在。传统的数据映射方式采用块映射和页映射。随着闪存页面的增大,页映射和块映射在随机读写上的速度的不足显现出来。页映射是将逻辑页映射到Flash中的任何一个物理页(PhysicalPage)。如果把逻辑区块地址(LogicalBlockAddress,LBA)切割成很多以物理页大小为单位的操作单元,该映射算法在物理页小于或等于4KB的时候,管理的灵活度高,垃圾回收负载小。但是随着工艺的提升,Flash的物理页逐渐增大,目前主流基本为16KB的物理页,并有扩大到32KB的趋势。当物理页大于4KB的时候,随机写入小文件(通常IOPS的测量是基于4KB大小的随机数据块),将会导致一个物理页只用掉4KB空间,剩余的物理页空间补充其他数据,这时候写入放大WA(WriteAmplification)系数就会变大,随着物理页大小的增大这种算法的劣势会越来越大。显然,按照这样子简单的映射方法是无法满足写入速度的要求的,同时,也大大消耗了闪存的“寿命”。故,针对目前现有技术中存在的上述缺陷,实有必要进行研究,以提供一种方案,解决现有技术中存在的缺陷。
技术实现思路
有鉴于此,确有必要提供一种用于固态存储设备的闪存转换层控制方法,从而能够改善随机读写的速度,并提高闪存的使用寿命。为了克服现有技术的缺陷,本专利技术的技术方案如下:一种用于固态存储设备的闪存转换层控制方法,包括以下步骤:步骤S1:在闪存转换层(FTL)中设置最小管理单元,且N个最小管理单元刚好构成一个闪存物理页的空间,其中,N为大于0的正整数;步骤S2:逻辑地址和物理地址之间以最小管理单元来进行映射;步骤S3:FTL为每个最小管理单元数据给予一个地址标识进行管理;步骤S4:当主机写入数据时,等待连续写入数据达到一个完整的闪存物理页空间后,再一次性写入一个完整的空白闪存物理页。优选地,所述步骤S3中,在闪存映射表(FMT)中为每个最小管理单元数据设置一个独立的地址码。优选地,所述最小管理单元采用4KB存储容量。优选地,闪存映射表(FMT)采用分段调度的方式,将当前需要用到的相关部分的闪存映射表读入内存,而其余部分闪存映射表存放在外部存储空间。优选地,闪存映射表(FMT)存放到外部的DRAM空间。优选地,闪存映射表(FMT)存放到闪存中。与现有技术相比较,本专利技术提供的用于固态存储设备的闪存转换层控制方法,闪存转化层采用4KB数据块映射算法,从而能够有效提高随机读写速度,同时能够在有限的片上存储空间来实现越来越大的映射表。附图说明图1为现有技术中FTL映射图。图2为本专利技术用于固态存储设备的闪存转换层控制方法的流程框图。图3为采用页映射方式下随机写的FLASH存储分布。图4为采用4KB映射方式下随机写的FLASH存储分布。图5为传统页映射的PMT映射图。图6为本专利技术一种优选实施方式中4KB映射的PMT映射图。如下具体实施例将结合上述附图进一步说明本专利技术。具体实施方式以下将结合附图对本专利技术提供的一种用于固态存储设备的闪存转换层控制方法作进一步说明。随着闪存物理页大小的增大,传统页映射方式将会导致写入放大WA(WriteAmplification)系数变大,从而无法满足写入速度的要求的,同时,也大大消耗了闪存的“寿命”。举一个简单的写入放大例子,假设Page大小为16KB,每次写入4KB,基本需要:①读出此Page内不需要修改的12KB;②寻找新的物理Page写入完整的16KB数据(包括读出的12KB、新写入的4KB)。也就是说,写入4KB,实际上需要写入16KB,写入放大系数是为了克服上述技术缺陷,参见图2,所示为本专利技术一种用于固态存储设备的闪存转换层控制方法的流程框图,包括以下步骤:步骤S1:在闪存转换层(FTL)中设置最小管理单元,且N个最小管理单元刚好构成一个闪存物理页的空间,其中,N为大于0的正整数;优选地,最小管理单元通常采用4KB存储容量,通常操作系统读写数据的以4KB为最小单位,同时,IOPS的测量也是基于4KB大小的随机数据块。步骤S2:逻辑地址和物理地址之间以最小管理单元来进行映射;步骤S3:FTL为每个最小管理单元数据给予一个地址标识进行管理;步骤S4:当主机写入数据时,等待连续写入数据达到一个完整的闪存物理页空间后,再一次性写入一个完整的空白闪存物理页。参见图3和图4,所示分别为采用页映射方式和4KB映射方式下随机写的FLASH存储分布情况。从图3可以看出,现有技术的页映射一个Page只是写入了4KB,剩余的部分用其它数据填满,16KB的空间只记录了4KB有效数据。从图4可以看出,本专利技术提出的4KB映射,一个Page能够存满16KB的数据。基本原理为:来自主机的写入数据,每4KB给予一个地址进行管理;连续几个4KB达到一个完整的闪存Page数据量的时候,把它们一次性写入一个完整的闪存Page。特别当Flash读写采用4KB随机读写(4KBRandomR/W)时,4KB映射的写优势特别明显。由于随机读写数据本文档来自技高网
...
一种用于固态存储设备的闪存转换层控制方法

【技术保护点】
一种用于固态存储设备的闪存转换层控制方法,其特征在于,包括以下步骤:步骤S1:在闪存转换层(FTL)中设置最小管理单元,且N个最小管理单元刚好构成一个闪存物理页的空间,其中,N为大于0的正整数;步骤S2:逻辑地址和物理地址之间以最小管理单元来进行映射;步骤S3:FTL为每个最小管理单元数据给予一个地址标识进行管理;步骤S4:当主机写入数据时,等待连续写入数据达到一个完整的闪存物理页空间后,再一次性写入一个完整的空白闪存物理页。

【技术特征摘要】
1.一种用于固态存储设备的闪存转换层控制方法,其特征在于,包括以下步骤:步骤S1:在闪存转换层(FTL)中设置最小管理单元,且N个最小管理单元刚好构成一个闪存物理页的空间,其中,N为大于0的正整数;步骤S2:逻辑地址和物理地址之间以最小管理单元来进行映射;步骤S3:FTL为每个最小管理单元数据给予一个地址标识进行管理;步骤S4:当主机写入数据时,等待连续写入数据达到一个完整的闪存物理页空间后,再一次性写入一个完整的空白闪存物理页。2.根据权利要求1所述的用于固态存储设备的闪存转换层控制方法,其特征在于,所述步骤S3中,在闪存映射表(FMT)中为每个最小管理单...

【专利技术属性】
技术研发人员:樊凌雁袁志东何宏梅岳辉
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江;33

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

1