用于执行转换层表的自适应主机存储器缓冲区高速缓存的系统和方法技术方案

技术编号:19878283 阅读:26 留言:0更新日期:2018-12-22 17:56
本发明专利技术题为“用于执行转换层表的自适应主机存储器缓冲区高速缓存的系统和方法”。本发明专利技术公开了用于执行转换层表(FTL表)的自适应主机存储器缓冲区高速缓存的系统和方法。在一种形式中,非易失性存储器系统结合接收来自主机系统的第一主机命令,接收来自所述主机系统的提示信息,所述提示信息识别存储在所述非易失性存储器系统处的所述主机系统将从其读取数据的文件。所述非易失性存储器系统识别与在所述提示信息中识别的所述文件的数据相关联的一个或多个FTL表,并将所述一个或多个FTL表发送到所述主机系统以用于存储在所述主机系统的主机存储器缓冲区中。在将所述一个或多个FTL表发送到所述主机系统之后,所述非易失性存储器系统接收来自所述主机系统的第二主机命令,所述主机命令包括用于读取来自存储所述文件的数据的所述非易失性存储器系统的一个或多个物理块地址的数据的指令。

【技术实现步骤摘要】
【国外来华专利技术】用于执行转换层表的自适应主机存储器缓冲区高速缓存的系统和方法相关申请本申请是2015年1月21日提交的美国专利申请No.14/601,250(仍然未决)的部分继续申请,其全部内容以引用方式并入本文。
技术介绍
基于NAND的闪存存储器系统包括转换层(“FTL”),该转换层将主机逻辑块地址(“LBA”)映射到NAND闪存存储器中的物理地址。在高性能产品诸如固态驱动器(“SSD”)中,将LBA映射到物理地址的表存储在本地动态随机存取存储器(“DRAM”)中,以便减少延迟。通常,将表映射到存储器系统的总容量所消耗的DRAM的比率是1:1000,即有效寻址1GB的NAND闪存存储器需要1MB的表格数据。性能差异相当之大,NAND闪存存储器访问通常最低为每次读取50至70μs,本地DRAM通常以每次读取大约几百ns来访问。为了在高性能非易失性存储器系统中降低成本,减少或消除DRAM的使用已成为可取的。因此,非易失性存储器系统包括称为主机存储器缓冲区(“HMB”)的特征。主机存储器缓冲区允许在主机系统的存储器中使用指定空间,诸如用于转换层表(FTL表)的RAM高速缓存。附图说明图1A是示例性非易失性存储器系统的框图。图1B是示出示例性存储模块的框图。图1C是示出分级存储系统的框图。图2A是示出非易失性存储器系统的控制器的示例性部件的框图。图2B是示出非易失性存储器存储系统的非易失性存储器的示例性部件的框图。图3示出了存储体的示例性物理存储器组织。图4示出了图3的物理存储器的一部分的扩展视图。图5是与非易失性存储器系统耦接的主机系统的一个实施方式的框图。图6是一种方法的一种实施方式的流程图,该方法用于响应于主机系统发起在非易失性存储器系统上安装应用程序的过程而使提示生成器生成提示信息。图7是一种方法的一种实施方式的流程图,该方法用于响应于主机系统在非易失性存储器系统上发起创建文件或打开文件的过程而使提示生成器生成提示信息。图8是一种方法的一种实施方式的流程图,该方法用于使非易失性存储器系统接收和利用提示信息来将FTL表智能地存储在主机设备的主机存储器缓冲区中以便优化读取来自非易失性存储器系统的数据的操作。具体实施方式本公开针对用于执行转换层表的自适应主机存储器缓冲区高速缓存的系统和方法。如上所述,通过使用主机存储器缓冲区减少或消除了DRAM使用,非易失性存储器系统已经变得可取。HMB提供主机系统的存储器中的指定空间的使用,诸如用于将主机逻辑块地址映射到非易失性存储器系统中的物理地址的转换层表的RAM高速缓存。在Windows环境中,可被分配由外围部件快速互连(PCIe)设备直接访问的主机存储器的量存在架构限制。该存储器必须专用于非分页池并且锁定到主机系统无法重新分配的特定物理地址,从而限制主机存储器效率。因此,主机系统环境不愿意分配允许将完整映射表存储在主机存储器缓冲区中的完整1:1000比率。从概念上讲,FTL表最多有三层记录存储:内部SRAM、主机存储器缓冲区和NAND。主机系统环境被优化用于慢速存储环境诸如旋转磁盘。这些主机系统主动预先缓存来自打开文件的数据和主机系统基于用户读取模式的历史数据识别的数据。任何可用的主机DRAM通常用于管理该高速缓存。虽然这种策略在存储I/O较慢时是有效的,但是现代NAND存储设备中的快速读取速率可能会降低这种方法的有效性。非易失性存储器系统可以通过这些方法结合预测的主机策略智能地确定FTL表的哪些部分属于主机系统的内部SRAM、主机系统的主机存储器缓冲区和/或非易失性存储器系统的NAND。以这种方式利用主机存储器缓冲区存储FTL表的部分可以减少对大型读缓存的需求,从而提高性能。如下面更详细地讨论的,主机系统上存在的提示生成器监视主机系统动作,并且将提示信息传递给非易失性存储器系统,指示主机系统将向其请求数据的文件。存储器系统利用接收的提示信息识别与提示信息中指示的文件相关联的一个或多个FTL表,并且将识别的FTL表或FTL表的部分存储在主机存储器缓冲区中,以便优化将来从存储器系统读取数据的操作。在一种形式中,公开了一种方法。在该方法中,非易失性存储器系统结合从主机系统接收第一主机命令接收来自主机系统的提示信息,该提示信息识别存储在非易失性存储器系统中的主机系统将从其读取数据的文件。非易失性存储器系统识别与在提示信息中识别的文件的数据相关联的一个或多个FTL表,所述一个或多个FTL表将与文件相关联的逻辑块地址的至少一部分映射到存储文件的数据的非易失性存储器系统的物理块地址。非易失性存储器系统将一个或多个FTL表发送到主机系统以用于存储在主机系统的主机存储器缓冲区中。然后非易失性存储器系统接收来自主机系统的第二主机命令,该主机命令包括用于读取来自存储文件的数据的非易失性存储器系统的一个或多个物理块地址的数据的指令。在另一种形式中,公开了一种非易失性存储器系统。该非易失存储器系统包括非易失性存储器以及与非易失存储器通信的控制器。控制器被配置为接收来自主机系统的信息,该信息识别存储在非易失性存储器中的主机系统将从其读取数据的文件,并且被配置为识别存储在非易失性存储器中的FTL表的一部分,该部分与信息中识别的文件的数据相关联。控制器被进一步配置为经由主机存储器缓冲区接口将FTL表的部分发送到主机系统以用于存储在主机系统的主机存储器缓冲区中,并且被配置为接收来自主机系统的主机命令,主机命令包括用于读取来自存储文件的数据的非易失性存储器系统的一个或多个物理块地址的数据的指令。在又一种形式中,公开了另外的方法。在该方法中,主机系统确定主机系统是否已经启动将命令发送到非易失性存储器系统的程序并且分析与该命令相关联的元数据或有效载荷数据中的至少一者,以确定处理器是否能够生成与元数据或有效载荷数据中的至少一者相关联的提示信息。主机系统进一步基于对元数据或有效载荷数据中的至少一者的分析生成提示信息,所述提示信息指示存储在非易失性存储器系统中的主机系统将从其读取数据的文件,并且将提示信息发送到非易失性存储器系统。主机系统在发送提示信息后从非易失性存储器系统接收FTL表,FTL表将与文件相关联的逻辑块地址映射到存储文件数据的非易失性存储器系统的物理块地址,并且将FTL表存储在主机系统的主机存储器缓冲区中。在另一种形式中,公开了另一种非易失性存储器系统。该非易失性存储器系统包括非易失性存储器和主机存储器缓冲区接口。非易失性存储器系统还包括用于接收来自主机系统的信息的装置,该信息识别存储在非易失性存储器中的主机系统将从其读取数据的文件,以及用于识别存储在非易失性存储器中的与信息中识别的文件数据相关联的FTL表的一部分的装置。非易失性存储器系统还包括用于将FTL表的部分发送到主机系统以用于存储在主机系统的主机存储器缓冲区中的装置,以及用于接收来自主机系统的主机命令的装置,主机命令包括用于读取来自存储文件数据的非易失性存储器系统的一个或多个物理块地址的数据的指令。其他形式和实施方式是可能的,并且每个形式可以单独使用或组合使用。因此,将参照附图描述各种形式和实施方式。图1A是示出非易失性存储器系统的框图。非易失性存储器系统100包括控制器102和可由一个或多个非易失性存储器管芯104构成的非易失性存储本文档来自技高网...

【技术保护点】
1.一种方法,包括:结合接收来自主机系统的第一主机命令,在非易失性存储器系统处接收来自所述主机系统的提示信息,所述提示信息识别存储在所述非易失性存储器系统处的所述主机系统将从其读取数据的文件;识别与在所述提示信息中识别的所述文件的数据相关联的一个或多个转换层表(FTL表),所述一个或多个FTL表将与所述文件相关联的逻辑块地址的至少一部分映射到存储所述文件的数据的所述非易失性存储器系统处的物理块地址;经由主机存储器缓冲区接口将所述一个或多个FTL表发送到所述主机系统以用于存储在所述主机系统处的主机存储器缓冲区中;以及接收来自所述主机系统的第二主机命令,所述第二主机命令包括用于读取来自存储所述文件的数据的所述非易失性存储器系统处的一个或多个物理块地址的数据的指令。

【技术特征摘要】
【国外来华专利技术】2016.05.31 US 15/168,8761.一种方法,包括:结合接收来自主机系统的第一主机命令,在非易失性存储器系统处接收来自所述主机系统的提示信息,所述提示信息识别存储在所述非易失性存储器系统处的所述主机系统将从其读取数据的文件;识别与在所述提示信息中识别的所述文件的数据相关联的一个或多个转换层表(FTL表),所述一个或多个FTL表将与所述文件相关联的逻辑块地址的至少一部分映射到存储所述文件的数据的所述非易失性存储器系统处的物理块地址;经由主机存储器缓冲区接口将所述一个或多个FTL表发送到所述主机系统以用于存储在所述主机系统处的主机存储器缓冲区中;以及接收来自所述主机系统的第二主机命令,所述第二主机命令包括用于读取来自存储所述文件的数据的所述非易失性存储器系统处的一个或多个物理块地址的数据的指令。2.根据权利要求1所述的方法,其中来自所述主机系统的识别所述文件的所述信息存储在所述第一主机命令的有效载荷数据中。3.根据权利要求1所述的方法,其中来自所述主机系统的识别所述文件的所述信息存储在与所述第一主机命令相关联的元数据中。4.根据权利要求1所述的方法,其中来自所述主机系统的识别所述文件的所述信息是在所述非易失性存储器系统接收所述第一主机命令之前接收的。5.根据权利要求1所述的方法,还包括:在所述主机系统处经由所述主机存储器缓冲区接口接收所述一个或多个FTL表;将所述一个或多个FTL表存储在所述主机系统的所述主机存储器缓冲区中;访问所述主机存储器缓冲区中的所述一个或多个FTL表,以将与所述文件相关联的逻辑块地址转换为存储所述文件的数据的所述非易失性存储器系统处的物理块地址;以及将所述第二主机命令发送到所述非易失性存储器系统。6.一种非易失性存储器系统,包括:非易失性存储器;主机存储器缓冲区接口;和控制器,所述控制器与所述非易失性存储器和所述主机存储器缓冲区接口通信,所述控制器被配置为:接收来自主机系统的信息,所述信息识别存储在所述非易失性存储器中的所述主机系统将从其读取数据的文件;识别存储在所述非易失性存储器中的转换层表(FTL表)的部分,所述转换层表的部分与在所述信息中识别的所述文件的数据相关联;经由所述主机存储器缓冲区接口将所述FTL表的部分发送到所述主机系统以用于存储在所述主机系统的主机存储器缓冲区中;以及接收来自所述主机系统的主机命令,所述主机命令包括用于读取来自存储所述文件的数据的所述非易失性存储器系统处的一个或多个物理块地址的数据的指令。7.根据权利要求6所述的非易失性存储器系统,其中所述FTL表的部分将与所述文件相关联的逻辑块地址映射到存储所述文件的数据的所述非易失性存储器的物理块地址。8.根据权利要求6所述的非易失性存储器系统,其中来自所述主机系统的识别所述文件的所述信息存储在主机命令的有效载荷数据中。9.根据权利要求6所述的非易失性存储器系统,其中来自所述主机系统的识别所述文件的所述信息存储在从所述主机系统接收的元数据中。10.一种方法,包括:...

【专利技术属性】
技术研发人员:JG哈恩
申请(专利权)人:桑迪士克科技有限责任公司
类型:发明
国别省市:美国,US

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

1