一种无DRAM的FTL读缓存管理方法及装置制造方法及图纸

技术编号:15540469 阅读:83 留言:0更新日期:2017-06-05 10:20
本发明专利技术公开一种无DRAM的FTL读缓存管理方法及装置,适用于基于闪存的固态硬盘领域。该读缓存管理方法包括:建立包括一一对应的逻辑页地址与物理页地址的缓存数据列表;接收读请求,并判断是否命中缓存;若命中缓存,则根据缓存数据列表中的物理页地址直接读取目标数据。与现有技术相比,本发明专利技术的有益技术效果在于:本发明专利技术的读缓存管理方法,利用SSD控制器内部的SRAM建立缓存数据列表来缓存NAND闪存的物理页地址的方法,来实现类似于传统的读缓存,可增强预读效果,减少FTL映射表调度的频率及次数,提高无DRAM的SSD的读性能。

DRAM free FTL read buffer management method and device

The invention discloses an FTL read buffer management method without DRAM and a device thereof, which is suitable for the solid state disk field based on flash memory. Including the read cache management method: establishing the data cache list includes corresponding logical page address and physical address of the page; a read request is received, and determine whether the cache; if the cache, according to the physical page cache data in the list address directly read data. Compared with the prior art, the invention has the advantages that: the read cache management method of the invention, a method of physical page address cache data list to cache the NAND flash memory using SSD internal SRAM controller, to achieve the read cache is similar to the traditional pre reading, can enhance the effect, reduce the frequency and the number of FTL mapping table scheduling, improve read performance without DRAM SSD.

【技术实现步骤摘要】
一种无DRAM的FTL读缓存管理方法及装置
本专利技术涉及计算机
,特别是基于NANDFLASH(即NAND型闪存)的固态硬盘领域,具体涉及一种无DRAM(DynamicRandomAccessMemory,动态随机存取存储器)的FTL(Flashtranslationlayer,闪存转换层)读缓存管理方法及装置。
技术介绍
目前SSD(SolidStateDrives,固态硬盘)系统中有相当部分是存在DRAM(DynamicRandomAccessMemory,动态随机存取存储器)的,所以SSD有较大的数据缓存空间用来缓存数据。但目前也有一部分SSD控制器不支持外带DRAM,仅仅有一个较小的内部SRAM(StaticRandomAccessMemory,静态随机存取存储器),这就大大限制了SSD内部的缓存数量,导致采用现有的缓存管理方法只能缓存较少的数据,降低了缓存的效果。尤其是当没有DRAM时一般FTL(Flashtranslationlayer,闪存转换层)中的映射表是存储在FLASH(闪存)中的,只有在使用的时候才分段调度到SRAM中,当映射表在SRAM中时会根据缓存策略,读取一部分数据到缓存中,如果下次再读取命中缓存,则直接从缓存中读取数据。在映射表使用完成后为了节省SRAM的空间,会从SRAM中放弃或回写过时的映射表。这种传统的方法是通过缓存数据的方式来使用缓存空间的。由于SRAM的空间有限,能缓存的数据量是非常有限的,同时由于映射表可能不在SRAM中又需要调度相应的映射表,因此,在一定程度上降低了无DRAM的SSD读性能。
技术实现思路
专利技术所要解决的技术问题在于提供一种无DRAM的FTL读缓存管理方法及装置。可增强预读效果,减少FTL映射表调度的频率及次数,提高无DRAM的SSD的读性能。为解决上述技术问题,本专利技术提供采用如下所述的技术方案:一种无DRAM的FTL读缓存管理方法,包括:建立包括一一对应的逻辑页地址与物理页地址的缓存数据列表;接收读请求,并判断是否命中缓存;若命中缓存,则根据缓存数据列表中的物理页地址直接读取目标数据。一种无DRAM的FTL读缓存管理装置,其特征在于,所述读缓存管理装置建立模块、判断模块和读取模块。其中,建立模块,用于建立包括一一对应的逻辑页地址与物理页地址的缓存数据列表;判断模块,用于接收读请求,并判断是否命中缓存;第一读取模块,用于根据缓存数据列表中的物理页地址读取目标数据。与现有技术相比,本专利技术的有益技术效果在于:本专利技术的读缓存管理方法,利用SSD控制器内部的SRAM建立缓存数据列表来缓存NANDFLASH物理页地址的方法,来实现类似于传统的读缓存,可增强预读效果,减少FTL映射表调度的频率及次数,提高无DRAM的SSD的读性能。附图说明图1为本专利技术一个实施例中的一种无DRAM的FTL读缓存管理方法的流程示意图;图2为本专利技术另一个实施例中的一种无DRAM的FTL读缓存管理方法的流程示意图;图3为本专利技术一个实施例中一种无DRAM的FTL读缓存管理装置结构示意图。具体实施方式为使本领域的普通技术人员更加清楚地理解本专利技术的目的、技术方案和优点,以下结合附图和实施例对本专利技术做进一步的阐述。参见图1,为本专利技术一个实施例中提供的一种无DRAM的FTL读缓存管理方法的流程示意图。在本专利技术一些实施例中,所述读缓存管理方法包括:S101、建立包括一一对应的逻辑页地址与物理页地址的缓存数据列表,所述缓存数据列表建于SRAM中。SRAM(StaticRandomAccessMemory,静态随机存取存储器)作为下级存储介质的缓存,下级存储介质可以是SSD(SolidStateDrives,固态硬盘),SSD为基于NAND闪存且没有外带DRAM(DynamicRandomAccessMemory,动态随机存取存储器)的固态硬盘。由于SSD使用的存储介质NAND闪存有需要先擦除才能再写入,和读写以页为单位,擦除以块(多个页组成)为单位的特性,导致LPA(LogicalPageAddress,逻辑页地址)和PPA(PhysicsPageAddress,物理页地址)的关系不再是固定不变的。因此SSD需要FTL(Flashtranslationlayer,闪存转换层)来作转换,以配合现有的文件系统。可以理解的是,FTL算法,其实就是一种LPA到PPA的映射,SSD的主控制器是使用LPA和PPA的映射表来管理闪存的。在SRAM中建立一个缓存数据列表作为缓存数据,该缓存数据列表至少一个数据,数据为闪存中的映射表中LPA与PPA的映射的副本,即一一对应的逻辑页地址与物理页地址。SRAM会根据读请求携带逻辑页地址把闪存中的映射表调度到SRAM中,根据映射表查询到对应的物理页地址,根据物理页地址读取下级存储介质中的目标数据。读取目标数据后,SRAM复制映射表中与读请求对应的逻辑页地址与物理页地址,并将其添加到缓存数据列表中。需要说明的是,SRAM运行一段时间后,其包括的缓存数据列表为满状态。需要说明的是,为了节省SRAM的空间,在映射表使用完成(即完成目标数据的读取)后,会选择将映射表从SRAM中放弃。比如,设定当SRAM的空闲空间少于总空间的30%时,则在映射表使用完成后,将映射表从SRAM中放弃。S102、接收读请求,并判断是否命中缓存。读缓存管理装置接收读请求,读请求中携带逻辑页地址,读缓存管理装置根据逻辑页地址判断缓存数据列表中是否存在与该逻辑页地址对应的物理页地址,如果存在,表明读请求命中,如果不存在,表明读请求不命中。S103、若命中缓存,则根据缓存数据中的物理页地址直接读取目标数据。若命中缓存,则读缓存管理装置根据读请求中携带逻辑页地址直接从缓存数据列表中得到物理页地址,再根据物理页地址直接读取下级存储介质中的目标数据。实施本专利技术的实施例,针对无DRAM的SSD读性能差的缺点,利用控制器内部的SRAM建立缓存数据列表来缓存NANDFLASH物理页地址的方法,来实现类似于传统的读缓存,可增强预读效果,减少FTL映射表调度的频率及次数,提高无DRAM的SSD的读性能。进一步的,在本专利技术的一些实施例中,若命中缓存,所述读缓存管理方法还包括:若对读取的目标数据进行了写操作,先将与读请求对应的逻辑页地址以及物理页地址从缓存数据列表中删除;再从更新后的映射表复制与读请求对应的逻辑页地址以及物理页地址,并将其添加到缓存列表中。读取目标数据后,当有需更新的数据要写入时,FTL会把新数据写入到空白的闪存空间内,然后更新映射表数据,把LPA指向新的PPA,并把更新后的映射表回写到Flash中。读缓存管理装置会把与读请求对应的逻辑页地址以及物理页地址从缓存数据列表中删除,然后从更新后的映射表中复制与读请求对应的逻辑页地址以及物理页地址,将其添加到缓存数据列表中。可选的,在本专利技术的一些实施例中,若读请求没有命中缓存,所述读缓存管理方法包括:根据逻辑页地址查询映射表得到对应的物理页地址。若读请求没有命中缓存,则读缓存管理装置根据读请求中携带逻辑页地址在SRAM中查询映射表得到对应的物理页地址。若包括与读请求对应的逻辑页地址的映射表已存在SRAM中,则直接查询SRAM中映射表,得到对应的物理本文档来自技高网...
一种无DRAM的FTL读缓存管理方法及装置

【技术保护点】
一种无DRAM的FTL读缓存管理方法,其特征在于,所述读缓存管理方法包括:建立包括一一对应的逻辑页地址与物理页地址的缓存数据列表;接收读请求,并判断是否命中缓存;若命中缓存,则根据缓存数据列表中的物理页地址直接读取目标数据。

【技术特征摘要】
1.一种无DRAM的FTL读缓存管理方法,其特征在于,所述读缓存管理方法包括:建立包括一一对应的逻辑页地址与物理页地址的缓存数据列表;接收读请求,并判断是否命中缓存;若命中缓存,则根据缓存数据列表中的物理页地址直接读取目标数据。2.如权利要求1所述的读缓存管理方法,其特征在于,若没有命中缓存,所述读缓存管理方法包括:根据逻辑页地址查询映射表得到对应的物理页地址;根据查询映射表得到的物理页地址读取目标数据;从映射表中复制与读请求对应的逻辑页地址以及物理页地址,将其添加到缓存数据列表中。3.如权利要求2所述的读缓存管理方法,其特征在于,若映射表不在SRAM中,所述根据逻辑页地址查询映射表得到对应的物理页地址之前包括:根据读请求中携带的逻辑页地址将与之相应的映射表调度到SRAM中。4.如权利要求2所述的读缓存管理方法,其特征在于,若缓存数据列表已满,所述从映射表中复制与读请求对应的逻辑页地址以及物理页地址,将其添加到缓存数据列表中之前包括:根据缓存替换算法选择并删除缓存数据列表中的一个逻辑页地址以及与该逻辑页地址对应的物理页地址。5.如权利要求1-4任一项所述的读缓存管理方法,其特征在于,所述读缓存管理方法包括:若对读取的数据进行写操作,将与读命令对应的逻辑页地址以及物理页地址从缓存数据列表中删除;从更新后的映射表复制与读命令对应的逻辑页地址以及物理页地址,并将其添加到缓存列表中。6.一种无DRAM的FTL读缓存管理装置,其特征在于,所述读缓存管理装置建立模块、判断模块和读取模块;其中,建立模块,用于建立包括...

【专利技术属性】
技术研发人员:梁启峰
申请(专利权)人:深圳市金泰克半导体有限公司
类型:发明
国别省市:广东,44

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

1