一种自适应磨损均衡垃圾回收加速装置和方法制造方法及图纸

技术编号:19424543 阅读:22 留言:0更新日期:2018-11-14 10:24
本发明专利技术公开一种自适应磨损均衡垃圾回收加速装置和方法,根据所使用Flash自适应调整比较器位宽,找到每一种类型块中擦除次数的四项最值及其地址,找到每一种类型块中有效页个数的四项最值及其地址,计算出所有块的擦除次数总和以及所有块的有效页个数总和;对于同一个块信息表本装置可同时实现第二三四条功能,即最快给出磨损均衡和垃圾回收的备选块,提高软件对Flash的擦写效率。

【技术实现步骤摘要】
一种自适应磨损均衡垃圾回收加速装置和方法
本专利技术涉及一种自适应磨损均衡垃圾回收加速装置和方法,使用硬件加速对FTL(Flashtranslationlayer)中表项的搜索比较,通过调节表项位宽实现对不同FTL表的自适应,帮助实现闪存的磨损均衡和垃圾回收。
技术介绍
因为闪存具有擦除次数有限,先擦后写的特点,我们需要均衡flash中每个块的擦写频率来延长闪存的使用寿命,即所谓的磨损均衡。把一个闪存块里的‘有效’页数据复制到一个“空白”块里,然后把这个块完全擦除即所谓的垃圾回收。为实现磨损均衡和垃圾回收,软件需要建立包含块的擦除信息及块中有效页个数信息的表(块信息表),以此决定Flash后续的擦写操作,并更新块查询表(LBA和PBA的映射表)。这些表存储在闪存的特殊地址单元中,系统上电后cpu将其读入内存中实时更新。然而单纯通过软件将块信息表中的信息逐一读取比对耗时较长,使得闪存的擦写操作变慢。
技术实现思路
针对现有技术的缺陷,本专利技术一种自适应磨损均衡垃圾回收加速装置和方法,利用硬件对块信息表的表项进行对比并给出最值,并且根据所使用Flash自适应调整比较器位宽。为了解决所述技术问题,本专利技术采用的技术方案是:自适应磨损均衡垃圾回收加速装置,包括:控制模块,用于给出块信息表的地址及长度、块信息表项的位宽信息、比较项目,发起数据读取及比较的命令,等待最值生成后将比较结果反馈给系统总线;块信息表,数量为1个或多个,每个块信息表内存储有块类型、有效页个数和擦除次数,块类型、有效页个数和擦除次数的位宽可变;数据读取模块,根据来自控制模块的命令从数据总线读取相应地址的块信息表内的数据;最值生成模块,根据控制模块给出的位宽信息将从数据读取模块得到的数据分配到相应的比较器当中得到最值并输出给控制模块;数据读取模块通过数据总线与块信息表双向通信连接,控制模块通过系统总线与外部CPU双向通信连接,控制模块分别与数据读取模块的命令输入端、最值生成模块的位宽信息输入端相连,数据读取模块的输出端与最值生成模块的数据输入端相连,最值生成模块的输出端与控制模块相连。所述最值生成模块包括位宽选择模块、擦除次数比较器、有效页个数比较器和累加器,擦除次数比较器、有效页个数比较器前均连接有N个有效数据选择器,N等于数据读取模块读取数据的位数;位宽选择模块的输入端与控制模块相连,位宽选择模块的输出端分别与N个有效数据选择器的控制端相连,有效数据选择器的一个数据输入端与数据读取模块的输出端相连,另一个数据输入端接0,擦除次数比较器、有效页个数比较器的输出端均连接至控制模块;累加器的输入端与N个有效数据选择器的输出端相连,累加器的输出端连接至控制模块。进一步的,所述擦除次数比较器、有效页个数比较器均包括比较两组数据大小的多位数值比较器、二选一数据选择器和D触发器组,多位数值比较器的输入端分别输入N个有效数据选择器的输出数据和原最值,多位数值比较器的输出端连接至二选一数据选择器的控制端,二选一数据选择器的输入端分别输入N个有效数据选择器的输出数据和原最值,二选一数据选择器的输出端连接至D触发器组的输入端,D触发器组的输出端连接至控制模块。进一步的,所述多位数值比较器包括两个进行大于判断和小于判断的多位数值比较器和二选一数据选择器,两个多位数值比较器的输入端分别输入N个有效数据选择器的输出数据和原最值,两个多位数值比较器的输出端连接至二选一数据选择器的输入端,二选一数据选择器的控制端连接控制模块,由控制模块发送的比较命令决定进行最大值或最小值的比较。进一步的,块信息表包括空闲块、坏块、系统保留块和耗尽块。本专利技术还公开了一种自适应磨损均衡垃圾回收加速方法,包括以下步骤:S01)、系统中的CPU将需要求最值的块信息表的地址及长度、位宽信息通过控制总线配置给控制模块中相应的寄存器;S02)、控制模块将块信息表的地址及长度传递给数据读取模块并启动数据读取模块,同时控制模块将位宽信息以及比较项传递给最值生成模块并启动其比较操作;S03)、数据读取模块从数据总线读取块信息表的数据并传递给最值生成模块;S04)、最值生成模块将本次得到的表信息按类型选择与之前所得同类型块中的对应项进行迭代比较,得到当前项目的最值和该块的地址,在进行数据比较的同时,累加器将每一个有效数据进行累加得到同类型下所有块的擦除次数总和和/或有效页个数总和;S05)、重复步骤S03和步骤S04,直到数据读取模块将指定长度的数据全部读入,最值生成模块将所有数据的四项最值给出,进行最大值比较时,四项最值为第一大、第二大、第三大、第四大的值,进行最小值比较时,四项最值为第一小、第二小、第三小、第四小的值;S06)、将步骤S05得到的每一类型块的四个最值和其对应的块地址以及累加值存入控制模块的寄存器组,以备CPU访问。进一步的,控制模块向最值生成模块发送的比较项包括擦除次数和/或有效页次数。进一步的,迭代比较在比较项相应的比较器内实现,将表项逐个读入比较器中,与比较器中所保留的到目前为止的最值进行比较进而产生新的最值,在此同时数据线根据位宽信息接到正确的比较器输入端。本专利技术的有益效果:传统方法只依靠软件算法实现磨损均衡和垃圾回收,而本装置采用硬件加速策略帮助软件实现磨损均衡和垃圾回收。本装置的优点在于结构简单,配置灵活,因其可固件动态调整表位宽所以可支持的Flash类型较广。充分利用硬件的速度优势配合软件减少Flash每次擦写所耗时间,提高闪存的使用效率。本专利技术利用硬件可以实现以下功能:1、根据所使用Flash自适应调整比较器位宽,2、找到每一种类型块中擦除次数的四项最值及其地址,3、找到每一种类型块中有效页个数的四项最值及其地址,4、计算出所有块的擦除次数总和以及所有块的有效页个数总和;对于同一个块信息表本装置可同时实现第二三四条功能,即最快给出磨损均衡和垃圾回收的备选块,提高软件对Flash的擦写效率。附图说明图1为自适应磨损均衡垃圾回收加速装置的原理图;图2为各项位宽不同的块信息表的示意图;图3为擦除次数比较器、有效页个数比较器的原理图;图4为多位数值比较器的原理图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步的说明。实施例1本实施例公开一种自适应磨损均衡垃圾回收加速装置,如图1所述,该装置包括以下部件:控制模块,内部配置有多个寄存器,用于给出块信息表的地址及长度、块信息表项的位宽信息、比较项目,发起数据读取及比较的命令,等待最值生成后将比较结果反馈给系统总线;块信息表,数量为1个或多个,每个块信息表内存储有块类型、有效页个数和擦除次数,块类型、有效页个数和擦除次数的位宽可变;数据读取模块,根据来自控制模块的命令从数据总线读取相应地址的块信息表内的数据;最值生成模块,根据控制模块给出的位宽信息将从数据读取模块得到的数据分配到相应的比较器当中得到最值并输出给控制模块;数据读取模块通过数据总线与块信息表双向通信连接,控制模块通过系统总线与外部CPU双向通信连接,控制模块分别与数据读取模块的命令输入端、最值生成模块的位宽信息输入端相连,数据读取模块的输出端与最值生成模块的数据输入端相连,最值生成模块的输出端与控制模块相连。本实施例中,所述最值生成模块包括位宽选择模块、擦除次数比较器本文档来自技高网...

【技术保护点】
1.自适应磨损均衡垃圾回收加速装置,其特征在于,包括:控制模块,用于给出块信息表的地址及长度、块信息表项的位宽信息、比较项目,发起数据读取及比较的命令,等待最值生成后将比较结果反馈给系统总线;块信息表,数量为1个或多个,每个块信息表内存储有块类型、有效页个数和擦除次数,块类型、有效页个数和擦除次数的位宽可变;数据读取模块,根据来自控制模块的命令从数据总线读取相应地址的块信息表内的数据;最值生成模块,根据控制模块给出的位宽信息将从数据读取模块得到的数据分配到相应的比较器当中得到最值并输出给控制模块;数据读取模块通过数据总线与块信息表双向通信连接,控制模块通过系统总线与外部CPU双向通信连接,控制模块分别与数据读取模块的命令输入端、最值生成模块的位宽信息输入端相连,数据读取模块的输出端与最值生成模块的数据输入端相连,最值生成模块的输出端与控制模块相连。

【技术特征摘要】
1.自适应磨损均衡垃圾回收加速装置,其特征在于,包括:控制模块,用于给出块信息表的地址及长度、块信息表项的位宽信息、比较项目,发起数据读取及比较的命令,等待最值生成后将比较结果反馈给系统总线;块信息表,数量为1个或多个,每个块信息表内存储有块类型、有效页个数和擦除次数,块类型、有效页个数和擦除次数的位宽可变;数据读取模块,根据来自控制模块的命令从数据总线读取相应地址的块信息表内的数据;最值生成模块,根据控制模块给出的位宽信息将从数据读取模块得到的数据分配到相应的比较器当中得到最值并输出给控制模块;数据读取模块通过数据总线与块信息表双向通信连接,控制模块通过系统总线与外部CPU双向通信连接,控制模块分别与数据读取模块的命令输入端、最值生成模块的位宽信息输入端相连,数据读取模块的输出端与最值生成模块的数据输入端相连,最值生成模块的输出端与控制模块相连。2.根据权利要求1所述的自适应磨损均衡垃圾回收加速装置,其特征在于:所述最值生成模块包括位宽选择模块、擦除次数比较器、有效页个数比较器和累加器,擦除次数比较器、有效页个数比较器前均连接有N个有效数据选择器,N等于数据读取模块读取数据的位数;位宽选择模块的输入端与控制模块相连,位宽选择模块的输出端分别与N个有效数据选择器的控制端相连,有效数据选择器的一个数据输入端与数据读取模块的输出端相连,另一个数据输入端接0,擦除次数比较器、有效页个数比较器的输出端均连接至控制模块;累加器的输入端与N个有效数据选择器的输出端相连,累加器的输出端连接至控制模块。3.根据权利要求2所述的自适应磨损均衡垃圾回收加速装置,其特征在于:所述擦除次数比较器、有效页个数比较器均包括比较两组数据大小的多位数值比较器、二选一数据选择器和D触发器组,多位数值比较器的输入端分别输入N个有效数据选择器的输出数据和原最值,多位数值比较器的输出端连接至二选一数据选择器的控制端,二选一数据选择器的输入端分别输入N个有效数据选择器的输出数据和原最值,二选一数据选择器的输出端连接至D触发器组的输入端,D触发器组的输出端连接至控制模块。4.根据权利要求3所述的自适应磨损均衡垃圾...

【专利技术属性】
技术研发人员:王运哲孙晓宁朱苏雁刘大铕刘奇浩刘尚孙中琳李敏霞
申请(专利权)人:山东华芯半导体有限公司
类型:发明
国别省市:山东,37

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

1