【技术实现步骤摘要】
【国外来华专利技术】使用XCOPY和多逻辑条带的优化的基于主机的垃圾收集策略的高效实现方式
所公开的实施例总体上涉及存储器系统,有时称为数据存储系统,并且具体地涉及使用闪速装置的阵列和主机确定的命令的优化的基于主机的垃圾收集策略的有效实现方式,以在内部将有效数据复制到存储系统。
技术介绍
包括闪速存储器的半导体存储器装置通常利用存储器单元将数据存储为电值,诸如电荷或电压。例如,闪速存储器单元包括具有浮置栅极的单个晶体管,该浮置栅极用于存储代表数据值的电荷。闪速存储器是可以电擦除和重新编程的非易失性数据存储装置。更一般地,与需要电力维持所存储的信息的易失性存储器相反,非易失性存储器(例如,闪速存储器,以及使用各种技术中的任一种实现的其他类型的非易失性存储器)即使在未供电时也保留所存储的信息。存储密度的增加已经以各种方式得到促进,包括通过制造开发增加使能的芯片上的存储器单元的密度,以及从单级闪速存储器单元转换到多级闪速存储器单元,使得两个或更多个位可以由每个闪速存储器单元存储。由于闪速存储器只能被编程和擦除有限的次数,所以优化存储器管理方案(例如垃圾收集、耗损均衡、高速缓存等)以提高存储器装置的性能和耐用性是很重要的。垃圾收集是存储器管理的过程,其回收存储器的不再含有有效数据的部分。使用闪速存储器作为示例,数据以称为页的单位写入闪速存储器,页由多个存储单元组成。然而,闪速存储器以称为块的较大单位被擦除,块由多个页组成。如果第一个块的一些页包含有效数据,则这些页不会被重写,直到含有这些页的整个块被擦除。垃圾收集的过程读取来自第一个块的有效数据并将其重新写入第二个块,然后擦除第一个块 ...
【技术保护点】
1.一种管理具有多个存储装置的存储系统的方法,所述方法包括:在与所述多个存储装置不同的主机系统处,进行基于主机的垃圾收集操作,包括:根据存储在所述主机系统处的数据存储信息,识别两个或更多个逻辑条带,每个逻辑条带对应于所述主机系统的逻辑地址空间中的逻辑地址的连续序列,其中每个逻辑条带的逻辑地址的相应的连续序列对应于所述多个存储装置的物理地址空间中的物理地址的一个或多个连续序列;以及合并所述两个或更多个逻辑条带中的有效数据,包括:对于所述两个或更多个逻辑条带中的有效逻辑地址的每个连续序列,从所述主机系统向所述多个存储装置中的一个或多个存储装置发送指令,以将对应于所述有效逻辑地址的相应的连续序列的数据从所述物理地址空间中的第一物理位置移动到所述物理地址空间中的第二物理位置;以及对于所述两个或更多个逻辑条带的每个相应的逻辑条带,将所述相应的逻辑条带中的有效逻辑地址重新打包到目标逻辑条带连续部分,所述目标逻辑条带包括所述相应的逻辑条带或不同于所述相应的逻辑条带的另一逻辑条带。
【技术特征摘要】
【国外来华专利技术】2016.02.23 US 62/298,939;2016.07.12 US 15/208,5401.一种管理具有多个存储装置的存储系统的方法,所述方法包括:在与所述多个存储装置不同的主机系统处,进行基于主机的垃圾收集操作,包括:根据存储在所述主机系统处的数据存储信息,识别两个或更多个逻辑条带,每个逻辑条带对应于所述主机系统的逻辑地址空间中的逻辑地址的连续序列,其中每个逻辑条带的逻辑地址的相应的连续序列对应于所述多个存储装置的物理地址空间中的物理地址的一个或多个连续序列;以及合并所述两个或更多个逻辑条带中的有效数据,包括:对于所述两个或更多个逻辑条带中的有效逻辑地址的每个连续序列,从所述主机系统向所述多个存储装置中的一个或多个存储装置发送指令,以将对应于所述有效逻辑地址的相应的连续序列的数据从所述物理地址空间中的第一物理位置移动到所述物理地址空间中的第二物理位置;以及对于所述两个或更多个逻辑条带的每个相应的逻辑条带,将所述相应的逻辑条带中的有效逻辑地址重新打包到目标逻辑条带连续部分,所述目标逻辑条带包括所述相应的逻辑条带或不同于所述相应的逻辑条带的另一逻辑条带。2.如权利要求1所述的方法,其中识别所述两个或更多个逻辑条带包括确定所述基于主机的垃圾收集操作需要多少个逻辑条带。3.如权利要求1-2中任一项所述的方法,其中识别所述两个或更多个逻辑条带包括根据选择标准识别所述两个或更多个逻辑条带。4.如权利要求1-3中任一项所述的方法,包括:将所述多个存储装置分区为两个或更多个区域,其中所述两个或更多个区域中的相应的区域对应于所述两个或更多个逻辑条带中的相应的逻辑条带。5.如权利要求4所述的方法,其中分区所述多个存储装置包括:确定所述基于主机的垃圾收集操作需要多少个区域;确定所述两个或更多个区域的大小;以及确定所述两个或更多个区域的超额配置量。6.如权利要求4所述的方法,其中分区所述多个存储装置包括,随着所述存储系统的工作量的变化,动态地调整所述两个或更多个区域。7.如权利要求1-6中任一项所述的方法,还包括:在合并所述两个或更多个逻辑条带中的有效数据之后,分类传入的写入请求;以及根据分类标准来选择逻辑条带,在所述逻辑条带中放置所述传入的写入请求。8.如权利要求1-7中任一项所述的方法,其中所述两个或更多个逻辑条带包括第一逻辑条带和第二逻辑条带,且其中所述第一逻辑条带用于具有第一组特性的数据,且所述第二逻辑条带用于具有不同于所述第一组特性的第二组特性的数据。9.如权利要求1-8中任一项所述的方法,其中合并所述两个或更多个逻辑条带中的有效数据包括:根据迁移标准在所述两个或更多个逻辑条带中的不同的逻辑条带之间迁移数据。10.如权利要求1-9中任一项所述的方法,其中从所述主机系统向所述一个或多个存储装置发送指令以移动对应于所述有效逻辑地址的相应的连续序列的数据包括,向所述一个或多个存储装置发布一个或多个xcopy命令。11.如权利要求1-10中任一项所述的方法,其中移动数据的所述指令包括复制指令,所述复制指令将对应于所述两个或更多个逻辑条带中的有效逻辑地址的数据从所述多个存储装置中的初始存储器部分复制到所述多个存储装置的对应于所述两个或更多个逻辑条带中的新的逻辑地址的不同的存储器部分。12.如权利要求1-11中任一项所述的方法,还包括:对于所述两个或更多个逻辑条带中的有效逻辑地址的每个连续序列,在发送所述指令后,使对应于所述物理地址空间中的第一物理位置处的所述有效逻辑地址的相应的连续序列的数据无效。13.如权利要求1-12中任一项所述的方法,还包括:根据满足所述存储系统的第一垃圾收集调度标准的确定,触发所述基于主机的垃圾收集操作的进行,其中所述存储系统的第一垃圾收集调度标准独立于第二垃圾收集调度标准,所述第二垃圾收集调度标准用于触发所述多个存储装置中的每个存储装置内的内部垃圾收集操作的进行。14.如权利要求13所述的方法,其中触发所述基于主机的垃圾收集操作的进行,以确保每个存储装置内的内部垃圾收集操作最小化。15.如权利要求13所述的方法,其中所述第一垃圾收集调度标准包括对应于所述存储系统的写入操作工作量的标准、对应于所述存储系统的预计工作量的标准、或对应于所述存储系统中的空逻辑条带的数量的标准。16.如权利要求1-15中任一项所述的方法,还包括:在一段时间内,重复地进行所述基于主机的垃圾收集操作,以确保由所述主机系统管理的至少最小数量的逻辑条带可用于在其中放置写入数据。17.如权利要求1-16中任一项所述的方法,其中所述方法由所述主机系统控制,所述主机系统包括客户端,代表所述客户端将数据存储在所述存储系统中。18.如权利要求1-17中任一项所述的方法,其中所述多个存储装置包括一个或多个闪速存储器装置。19.一种主机系统,包括:接口,用于可操作地耦接到具有多个存储装置的存储系统;一个或多个处理器;以及存储一个或多个程序的存储器,当由所述一个或多个处理器执行时,所述一个或多个程序使得不同于所述多个存储装置的主机系统进行基于主机的垃圾收集操作,其包括:根据存储在所述主机系统处的数据存储信息,识别两个或更多个逻辑条带,每个逻辑条带对应于所述主机系统的逻辑地址空间中的逻辑地址的连续序列,其中所述逻辑条带的逻辑地址的每个相应的连续序列对应于所述多个存储装置的物理地址空间中的物理地址的一个或多个连续序列;以及合并所述两个或更多个逻辑条带中的有效数据,包括:对于所述两个或更多个逻辑条带中的有效逻辑地址的每个连续序列,从所述主机系统向所述多个存储装置中的一个或多个存储装置发送指令,以将对应于所述有效逻辑地址的相应的连续序列的数据从所述物理地址空间中的第一物理位置移动到所述物理地址空间中的第二物理位置;以及对于所述两个或更多个逻辑条带的每个相应的逻辑条带,将所述相应的逻辑条带中的有效逻辑地址重新打包到目标逻辑条带连续部分,所述目标逻辑条带包括所述相应的逻辑条带或不同于所述相应的逻辑条带的另一逻辑条带。20.如权利要求19所述的主机系统,其中所述一个或多个程序包括:具有指令的压缩模块,所述指令用于将对应于所述有效逻辑地址的相应的连续序列的有效数据从所述物理地址空间中的第一物理位置移动到所述物理地址空间中的第二物理位置,且对于每个逻辑条带,将所述相应的逻辑条带中的有效逻辑地址重新打包到所述相应的逻辑条带的开始。21.如权利要求19或20所述的主机系统,还配置为根据权利要求2-18中任一项所述的方法来操作。22.一种计算机可读存储介质,存储配置为由主机系统的一个或多个处理器执行的一个或多个程序,所述主机系统不同于存储系统中的多个存储装置,所述一个或多个程序包括指令,当由所述一个或多个处理器执行时,所述指令使得所述主机系统进行基于主机的垃圾收集操作,其包括:根据存储在所述主机系统处的数据存储信息,识别两个或更多个逻辑条带,每个逻辑条带对应于所述主机系统的逻辑地址空间中的逻辑地址的连续序列,其中每个逻辑条带的逻辑地址的相应的连续序列对应于所述多个存储装置的物理地址空间中的物理地址的一个或多个连续序列;以及合并所述两个或更多个逻辑条带中的有效数据,包括:对于所述两个或更多个逻辑条带中的有效逻辑地址的每个连续序列,从所述主机系统向所述多个存储装置中的一个或多个存储装置发送指令,以将对应于所述有效逻辑地址的相应的连续序列的数据从所述物理地址空间中的第一物理位置移动到所述物理地址空间中的第二物理位置;以及对于所述两个或更多个逻辑条带的每个相应的逻辑条带,将所述相应的逻辑条带中的有效逻辑地址重新打包到目标逻辑条带连续部分,所述目标逻辑条带包括所述相应的逻辑条带或不同于所述相应的逻辑条带的另一逻辑条带。23.如权利要求22所述的计算机可读存储介质,其中所述一个或多个程序包括指令,当由所述一个或多个处理器执行时,所述指令使得所述主机系统根据权利要求2-18中任一项所述的方法来操作。24.一种存储系统,包括:多个存储装置;具有一个或多个处理器的一个或多个子系统;以及存储一个或多个程序的存储器,当由所述一个或多个处理器执行时,所述一个或多个程序使得所述一个或多个子系统进行操作,其包括:在与所述多个存储装置不同的主机系统处,进行基于主机的垃圾收集操作,包括:根据存储在所述主机系统处的数据存储信息,识别两个或更多个逻辑条带,每个逻辑条带对应于所述主机系统的逻辑地址空间中的逻辑地址的连续序列,其中每个逻辑条带的逻辑地址的相应的连续序列对应于所述多个存储装置的物理地址空间中的物理地址的一个或多个连续序列;以及合并所述两个或更多个逻辑条带中的有效数据,包括:对于所述两个或更多个逻辑条带中的有效逻辑地址的每个连续序列,...
【专利技术属性】
技术研发人员:BW奥克拉夫卡,V博尔克霍维廷,V希夫哈尔,
申请(专利权)人:桑迪士克科技有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。