固态硬盘及其执行删除命令的方法与流程

文档序号:12664025阅读:1568来源:国知局
固态硬盘及其执行删除命令的方法与流程

本发明有关一种固态硬盘,尤其关于固态硬盘在接收主机的删除命令时,执行删除命令修改转换层的方法。



背景技术:

固态硬盘(Solid State Drive,简称SSD)是由与非门闪存阵列(NAND Flash Memory Array)整合成为单一的储存装置,一般作为电子装置的储存装置。电子装置的主机,由中央处理器发出存取数据的逻辑地址,至连接在传输接口的固态硬盘,固态硬盘内设控制器配合缓冲存储器,接收主机的存取数据的逻辑地址,再到闪存阵列相对逻辑地址的实体地址存取数据,传输至主机的动态随机存储器DRAM,以供主机备用。

由于闪存具有抹除次数限制,数据分散储存在闪存阵列,为了管理数据的逻辑地址与闪存阵列的实体地址的关系,固态硬盘在启动时,读取闪存阵列中各数据区块的管理数据,形成数据的逻辑地址与实体地址的逻辑实体检查表(Logical to Physical Lookup Table),以建立闪存转换层(Flash Translation Layer,简称FTL),储存及管理逻辑实体检查表及其相关参数。

固态硬盘中的闪存无法随机覆盖写入数据,写入数据前需先抹除数据,而闪存需以数据区块为单位,才能整个数据区块抹除数据。固态硬盘利用垃圾回收(Garbage Collection)的机制,以数据区块为单位,将数据区块中有效数据页先转移至其他数据区块后,才整个抹除数据区块的数据,回收做为写入数据的备用区块。因此,主机越快通知固态硬盘无效的数据页,数据区块中的无效数据页的数目,越容易达到回收的门槛,垃圾回收的效率越高,可提供足够的备用区块,让数据不需等待回收备用区块就能顺利写入,而提升固态硬盘的性能。

如图1所示,为现有技术固态硬盘执行删除命令的示意图。现有技术的删除命令(Trim Command)为提升固态硬盘性能的标准指令,需藉由系统下达命令。当主机获得无效数据页的信息,例如使用者删除数据文件等,将以一 批数笔的删除命令,例如删除命令0至删除命令n,通知固态硬盘相关无效数据页。现有技术固态硬盘通常以四个步骤执行每一笔删除命令,执行步骤1由主机接收删除命令,执行步骤2根据删除命令所下逻辑地址的范围,清空逻辑实体检查表,执行步骤3根据删除命令所下逻辑地址的范围,调整转换层的参数,最后在执行步骤4告知主机完成该笔删除命令,然后再以前述的四个步骤执行下一笔删除命令,直到执行完删除命令n。才能尽快通知固态硬盘无效的数据页,以提升固态硬盘的性能。

然而,固态硬盘对每一笔删除命令需以四个步骤执行,将拉长完成整批删除命令回应主机的时间。尤其是删除命令所下的逻辑地址范围太广又太分散时,固态硬盘在各逻辑地址间来来回回,以及耗费在执行步骤2清空逻辑实体检查表与执行步骤3调整转换层参数的时间更多,势必增长回应主机的时间,使主机处于等待中,而排挤主机其他的操作,造成降低固态硬盘的性能。因此,固态硬盘在执行删除命令的方法上,仍有问题亟待解决。



技术实现要素:

本发明的目的提供一种固态硬盘,在逻辑实体检查表的检查表入口设置删除标志,藉由删除标志标示未执行删除命令的逻辑地址,以利固态硬盘根据删除标志执行删除命令。

本发明的另一目的在提供一种固态硬盘执行删除命令的方法,根据接收的删除命令仅更改逻辑地址检查表入口删除标志,即回报主机完成删除命令,以缩短对主机的回应时间。

本发明的再一目的在提供一种固态硬盘执行删除命令的方法,固态硬盘在幕后对删除标志标示未执行删除命令的逻辑地址,执行删除命令,以提升固态硬盘的性能。

为了达到前述发明的目的,本发明固态硬盘执行删除命令的方法,本发明的固态硬盘,利用控制器接收主机的存取命令,并暂存在缓冲存储器,以闪存阵列储存数据,由转换层单元决定在缓冲存储器或闪存阵列建立闪存转换层的位置,并通知控制器读取闪存阵列的储存数据,形成逻辑实体检查表,以建立闪存转换层及管理闪存转换层的参数,逻辑实体检查表包含逻辑地址及检查表入口,在检查表入口的保留区规划一位的删除标志字段,用以标示未执行删除命令的逻辑地址。固态硬盘在幕后或空闲时机,根据删除标志标 示未执行删除命令的逻辑地址,执行删除命令。

本发明固态硬盘执行删除命令的方法,由固态硬盘接收一批删除命令,删除命令为通知固态硬盘无效的数据页,根据删除命令所下逻辑地址的范围,至逻辑实体检查表的逻辑地址的检查表入口,更改删除标志,回报主机完成删除命令,一笔删除命令执行完后,重复执行步骤继续执行下一笔删除命令,直到执行完该批删除命令,固态硬盘选择在幕后或空闲的时机,对删除标志标示未执行删除命令的逻辑地址,执行删除命令,清除检查表入口记录的数据及调整转换层的参数。

附图说明

图1为现有技术固态硬盘执行删除命令的示意图。

图2为本发明固态硬盘的功能方块图。

图3为本发明逻辑实体检查表的示意图。

图4为本发明逻辑实体检查表的入口的示意图。

图5为本发明固态硬盘执行删除命令的示意图。

图6为本发明删除命令所下逻辑地址范围的示意图。

图7为本发明固态硬盘执行删除命令的方法的流程图。

附图标记说明:

10 电子装置

11 主机

12 中央处理器

13 动态随机存储器

14 传输接口

20 固态硬盘

21 控制器

22 缓冲存储器

23 闪存阵列

24 转换层单元

30 逻辑实体检查表

31 逻辑地址

32 检查表入口

33 删除标志

具体实施方式

有关本发明为达成上述目的,所采用的技术手段及其功效,举较佳实施例,并结合附图说明如下。

请同时参阅图2、图3及图4,图2为本发明固态硬盘的功能方块图,图3为本发明逻辑实体检查表的示意图,图4为本发明逻辑实体检查表的入口的示意图。图2中本发明的固态硬盘(SSD)20作为电子装置10的储存装置,电子装置10的主机11设中央处理器(CPU)12及动态随机存储器(DRAM)13,由中央处理器12配合动态随机存储器13发出存取数据的逻辑地址至连接在传输接口14的固态硬盘20,固态硬盘20内设控制器21及缓冲存储器22,由控制器21接收主机11的存取命令,暂存在缓冲存储器22,以命令所下的逻辑地址,至储存数据的闪存阵列23相对逻辑地址的实体地址存取数据,到主机2的动态随机存储器13,以供主机11备用。本发明的固态硬盘20并设置转换层单元24,负责在固态硬盘20启动时,建立闪存转换层(FTL),及管理转换层的参数。

本发明固态硬盘20启动时,由转换层单元24决定在缓冲存储器22或闪存阵列23建立闪存转换层的位置。并通知控制器21读取闪存阵列23中各数据区块的管理数据,形成图3中的逻辑实体检查表30,逻辑实体检查表包含逻辑地址31及检查表入口32(Lookup Table Entry)。其中检查表入口32如图4所示,包含管道(Channel)、目标(Target)、实体区块(Block)、页次(Page)及保留区(Reserved)等字段,以记录该笔数据的相关参数。因此,当控制器21接收主机11命令时,闪存转换层24利用建立的逻辑实体检查表30,根据命令所下的逻辑地址,由其检查表入口32记录的实体区块及页次,对照数据存放在闪存阵列23中的实体地址,以迅速至对应的闪存执行命令。而本发明固态硬盘20利用检查表入口32规划一位(Bit)的删除标志33字段,标示未执行删除命令的逻辑地址,以利固态硬盘在幕后或空闲时根据删除标志执行删除命令。本实施力将前述删除标志33字段设在检查表入口32的保留区。

请同时参考图5及图6,图5为本发明固态硬盘执行删除命令的示意图, 图6为本发明删除命令所下逻辑地址范围的示意图。图5中,本发明固态硬盘由主机接收一批删除命令0至删除命令n,通知固态硬盘无效数据页。本发明固态硬盘以三个步骤执行每一笔删除命令,执行步骤1由主机接收删除命令,执行步骤2根据删除命令所下逻辑地址的范围(参见图6阴影标示),至图6的逻辑实体检查表各逻辑地址的检查表入口,更改删除标志33,标示为未执行删除命令的逻辑地址,而不清除检查表入口记录的数据,同时不执行步骤3调整转换层的参数,接着立即直接执行步骤4告知主机完成该笔删除命令,然后再以前述的三个步骤执行下一笔删除命令,直到执行完最后的删除命令n。本发明固态硬盘执行删除命令,由于仅在执行步骤2更改删除标志33,且不执行步骤3调整转换层的参数,可缩短对主机的回应时间的目的。

至于未执行的删除命令的逻辑地址,因已回报主机修改为无效的数据页,主机不会再要求存取该数据页。虽然只更改删除标志,但对固态硬盘仍维持在有效数据页的状态,不会增加各数据区块无效数据页的数量,而影响固态硬盘对其执行垃圾回收机制。只要固态硬盘的备用区块足够,能够维持正常操作,并无急迫性执行前述的删除命令。因此,本发明固态硬盘就可选择在幕后或空闲的时机,对删除标志标示未执行删除命令的逻辑地址,执行未执行的执行步骤2清除检查表入口记录的数据,及执行步骤3调整转换层的参数。同时,让执行删除命令,不会耗费主机等待的时间,也不会影响固态硬盘执行其他操作的时间及速度,更可提升固态硬盘的性能。

如图7所示,为本发明固态硬盘执行删除命令的方法的流程图。本发明固态硬盘执行删除命令的方法的详细步骤说明如下:步骤S1,本发明固态硬盘由主机接收一批删除命令,通知固态硬盘无效的数据页;步骤S2,根据一笔删除命令所下逻辑地址的范围,至逻辑实体检查表各逻辑地址的检查表入口,更改删除标志,标示为未执行删除命令的逻辑地址;步骤S3,回报主机完成该笔删除命令;在步骤S4,检查是否执行完该批删除命令?假如未执行完该批删除命令,则回到步骤S2,继续执行下一笔删除命令,假如执行完该批删除命令,则至步骤S5,固态硬盘选择在幕后或空闲的时机;在步骤S6,对删除标志标示未执行删除命令的逻辑地址,执行清除检查表入口记录的数据及调整转换层的参数。

因此,本发明的固态硬盘,利用在逻辑实体检查表的检查表入口设置删 除标志,本发明的固态硬盘执行删除命令的方法,就能根据接收的删除命令所下的逻辑地址,仅更改检查表入口的删除标志,标示未执行删除命令的逻辑地址,立即回报告知主机完成删除命令,达到缩短对主机的回应时间的目的。此外,本发明的固态硬盘执行删除命令的方法,利用固态硬盘选择在幕后或空闲时机,对删除标志标示未执行删除命令的逻辑地址执行删除命令,不会影响固态硬盘执行其他操作的时间及速度,可达到提升固态硬盘的性能的目的。

以上所述,仅为用以方便说明本发明的较佳实施例,本发明的范围不限于该较佳实施例,凡依本发明所做的任何变更,在不脱离本发明的精神下,都属本发明申请专利的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1