本发明涉及一种存储,尤其涉及一种指令执行方法与存储装置。
背景技术:
1、在现代存储系统中,尤其是固态硬盘(solid state disk,ssd)的使用过程中,写入放大(write amplification,wa)现象是一个重要的性能和寿命影响因素。一般来说,写入放大指的是实际写入存储介质的数据量大于用户请求的数据写入量。写入放大会加速存储介质磨损,缩短存储设备的使用寿命,并降低存储设备的写入性能。然而,受限于固态硬盘等存储装置的本身的操作设定,存储装置在执行诸如抹除、trim、discard等擦除类指令时,需要进行额外的写操作(例如执行有效数据的搬移、映射表的更新或对待删除数据的覆写等),进而导致存储装置的写放大提高。
2、因此,如何在存储装置执行擦除类指令时有效降低存储装置的写放大,为目前亟需解决的问题。
技术实现思路
1、本发明提供一种指令执行方法与存储装置,可有效且精准的降低存储装置执行第一类指令时引起的数据的写放大。
2、本发明的实施例提供一种指令执行方法,其用于存储装置,其中所述存储装置包括存储器模块,且所述指令执行方法包括:从主机系统接收操作指令;若所述操作指令属于第一类指令,触发评估程序,以评估基于多个候选机制执行所述操作指令所对应的资源消耗量,其中所述资源消耗量包括第一资源消耗量与第二资源消耗量,所述第一资源消耗量对应于所述多个候选机制中的第一候选机制,所述第二资源消耗量对应于所述多个候选机制中的第二候选机制,所述第一资源消耗量不同于所述第二资源消耗量,且所述第一候选机制不同于所述第二候选机制;根据所述资源消耗量从所述多个候选机制中确定目标机制;以及基于所述目标机制执行所述操作指令。
3、本发明的实施例另提供一种存储装置,其包括连接接口、存储器模块及存储器控制器。所述连接接口用以连接至主机系统。所述存储器控制器连接至所述连接接口与所述存储器模块。所述存储器控制器用以:从所述主机系统取得操作指令;若所述操作指令属于第一类指令,触发评估程序,以评估基于多个候选机制执行所述操作指令所分别对应的多个资源消耗量,其中所述多个资源消耗量包括第一资源消耗量与第二资源消耗量,所述第一资源消耗量对应于所述多个候选机制中的第一候选机制,所述第二资源消耗量对应于所述多个候选机制中的第二候选机制,所述第一资源消耗量不同于所述第二资源消耗量,且所述第一候选机制不同于所述第二候选机制;根据所述多个资源消耗量从所述多个候选机制中确定目标机制;以及基于所述目标机制执行所述操作指令。
4、基于上述,在从主机系统取得操作指令后,若所述操作指令属于第一类指令,一个评估程序可被触发,以评估基于多个候选机制执行所述操作指令所对应的资源消耗量。特别是,所述资源消耗量包括第一资源消耗量与第二资源消耗量,第一资源消耗量对应于第一候选机制,第二资源消耗量对应于第二候选机制,第一资源消耗量不同于第二资源消耗量,且第一候选机制不同于第二候选机制。根据所述资源消耗量,目标机制可从所述多个候选机制中确定,且所述操作指令可基于目标机制执行。由此,可有效且精准的降低存储装置执行第一类指令所引起的数据的写放大。
1.一种指令执行方法,其特征在于,用于存储装置,其中所述存储装置包括存储器模块,且所述指令执行方法包括:
2.根据权利要求1所述的指令执行方法,其特征在于,所述第一资源消耗量反映基于所述第一候选机制执行所述操作指令所评估的将对所述存储器模块造成的损耗,且所述第二资源消耗量反映基于所述第二候选机制执行所述操作指令所评估的将对所述存储器模块造成的损耗。
3.根据权利要求2所述的指令执行方法,其特征在于,所述第一资源消耗量反映基于所述第一候选机制执行所述操作指令所评估的第一待更新数据的第一数据量,且所述第二资源消耗量反映基于所述第二候选机制执行所述操作指令所评估的第二待更新数据的第二数据量。
4.根据权利要求2所述的指令执行方法,其特征在于,所述第一资源消耗量反映基于所述第一候选机制执行所述操作指令所评估的对所述存储器模块造成的第一写入放大,且所述第二资源消耗量反映基于所述第二候选机制执行所述操作指令所评估的对所述存储器模块造成的第二写入放大。
5.根据权利要求1所述的指令执行方法,其特征在于,根据所述多个资源消耗量从所述多个候选机制中确定所述目标机制的步骤包括:
6.根据权利要求1所述的指令执行方法,其特征在于,所述第一类指令用以指示删除属于至少一逻辑单元的数据或将属于所述至少一逻辑单元的所述数据标记为无效。
7.根据权利要求6所述的指令执行方法,其特征在于,基于所述目标机制执行所述操作指令的步骤包括:
8.根据权利要求6所述的指令执行方法,其特征在于,基于所述目标机制执行所述操作指令的步骤包括:
9.根据权利要求8所述的指令执行方法,其特征在于,基于所述第二候选机制执行所述操作指令的步骤还包括:
10.一种存储装置,其特征在于,包括:
11.根据权利要求10所述的存储装置,其特征在于,所述第一资源消耗量反映基于所述第一候选机制执行所述操作指令所评估的将对所述存储器模块造成的损耗,且所述第二资源消耗量反映基于所述第二候选机制执行所述操作指令所评估的将对所述存储器模块造成的损耗。
12.根据权利要求11所述的存储装置,其特征在于,所述第一资源消耗量反映基于所述第一候选机制执行所述操作指令所评估的第一待更新数据的第一数据量,且所述第二资源消耗量反映基于所述第二候选机制执行所述操作指令所评估的第二待更新数据的第二数据量。
13.根据权利要求11所述的存储装置,其特征在于,所述第一资源消耗量反映基于所述第一候选机制执行所述操作指令所评估的对所述存储器模块造成的第一写入放大,且所述第二资源消耗量反映基于所述第二候选机制执行所述操作指令所评估的对所述存储器模块造成的第二写入放大。
14.根据权利要求10所述的存储装置,其特征在于,所述存储器控制器根据所述多个资源消耗量从所述多个候选机制中确定所述目标机制的操作包括:
15.根据权利要求10所述的存储装置,其特征在于,所述第一类指令用以指示删除属于至少一逻辑单元的数据或将属于所述至少一逻辑单元的所述数据标记为无效。
16.根据权利要求15所述的存储装置,其特征在于,所述存储器控制器基于所述目标机制执行所述操作指令的操作包括:
17.根据权利要求16所述的存储装置,其特征在于,所述存储器控制器基于所述目标机制执行所述操作指令的操作包括:
18.根据权利要求17所述的存储装置,其特征在于,所述存储器控制器基于所述第二候选机制执行所述操作指令的操作还包括: