背景技术:
1、存储器设备可以包括易失性和非易失性存储器。易失性存储器可能需要供电来维护数据,包括随机存取存储器(random-access memory,ram)、动态随机存取存储器(dynamic random-access memory,dram)和同步动态随机存取存储器(synchronousdynamic random-access memory,sdram)等。非易失性存储器(non-volatile memory,nvm)可以通过在未通电时保留存储的数据来提供持久数据,并可以包括nand闪存和/或nor闪存等。
2、存储器设备的一些示例为硬盘驱动器(hard disk drive,hdd)、固态驱动器(solid-state drive,ssd)和存储级存储器(storage class memory,scm)。所有这些类型的设备都可以包括nvm。nvm主机控制器接口规范(nvm express,nvme)是设备接口协议,用于访问ssd和外围组件快速互连(peripheral component interconnect express,pcie)卡等的非易失性存储器。将nvme扩展为统一用于hdd、ssd和scm的协议的接口协议会是有益的。但是,nvme对于某些类型的数据传输可能效率低下。
技术实现思路
1、现在描述各种示例,以简化形式引入一些概念,将在下文的详细说明中进一步描述这些概念。
技术实现要素:
并非旨在标识请求保护的主题的关键或必要特征,也并非旨在用于限制请求保护的主题的范围。
2、根据本公开的一个方面,提供了计算机实现的方法。该计算机实现的方法包括:定义用于存储器设备的非易失性存储器(non-volatile memory,nvm)的分区命名空间,以及将持久性日志记录(persistence logging,plog)标识(identifier,id)映射到nvm区域。分区命名空间包括nvm的多个非重叠逻辑块地址(logical block address,lba)的多个nvm区域,并且plog id标识一个或多个nvm区域的plog区域。该方法还包括:响应于从系统的主机设备接收的特定于plog的命令,对nvm的plog区域执行特定于plog的访问操作。
3、可选地,在前述方面中,另一种实现方式提供了将plog id映射到nvm区域,将plogid映射到与plog id对应的plog区域的物理块地址(physical block address,pba)。
4、可选地,在前述任一方面中,另一种实现方式提供了特定于plog的访问操作是将数据和元数据写入nvm的plog区域的plog附加操作。
5、可选地,在前述方面中,另一种实现方式提供了特定于plog的命令是plog附加命令,包括可编程字节级附加大小字段,该字段指示要在plog区域内附加的字节数。
6、可选地,在前述两个方面中的任一方面中,另一种实现方式提供了特定于plog的命令是plog附加命令,其对plog区域内的任何字节是字节可寻址的。
7、可选地,在前述任一方面中,另一种实现方式提供了特定于plog的访问操作是从nvm的plog区域读取数据和元数据的plog读取操作。
8、可选地,在前述任一方面中,另一种实现方式提供了特定于plog的命令包括命令序号字段;执行特定于plog的访问操作包括存储器设备以序号字段指示的顺序执行多个特定于plog的命令。
9、根据本公开的另一方面,提供了存储器设备,包括nvm和存储器控制器。存储器控制器包括存储器控制器处理电路,该存储器控制器处理电路被配置为根据分区命名空间将nvm映射到多个nvm区域,分区命名空间将nvm的多个非重叠lba标识为多个nvm区域;将多个plog id映射到nvm区域,每个plog id标识一个或多个nvm区域的plog区域;解码从主机设备接收的特定于plog的命令;并响应于特定于plog的命令,对nvm的一个或多个plog区域执行特定于plog的访问操作。
10、可选地,在前述任一方面中,另一种实现方式提供了存储器控制器处理电路,被配置为将plog id映射到与plog id对应的plog区域的物理块地址(pba)。
11、可选地,在前述两个方面中的任一方面中,另一种实现方式提供了存储器控制器处理电路,被配置为解码将数据和元数据写入nvm的plog区域的plog附加命令。
12、可选地,在前述方面中,另一种实现方式提供了存储器控制器处理电路,被配置为解码包括在plog附加命令中的字节级附加大小字段,该字节级附加大小字段指示要在plog区域中附加的字节数。
13、可选地,在前述任一方面中,另一种实现方式提供了特定于plog的访问操作是从nvm的plog区域读取数据和元数据的plog读取操作。
14、可选地,在前述任一方面中,另一种实现方式提供了存储器控制器处理电路,被配置为解码特定于plog的命令中的命令序号字段,并以该序号字段指示的顺序执行主机设备接收的多个命令中特定于plog的命令。
15、根据本公开的另一方面,提供了计算机系统,包括存储器设备和主机设备。存储器设备包括nvm和包括存储器控制器处理电路的存储器控制器。主机设备包括主机设备处理电路,该主机设备处理电路被配置为根据将nvm的多个非重叠lba标识为多个nvm区域的分区命名空间将nvm映射到多个nvm区域;将多个plog id映射到nvm区域,每个plog id标识一个或多个nvm区域的plog区域;编码将由存储器控制器处理电路执行的特定于plog的命令。
16、可选地,在前述任一方面中,另一种实现方式提供了存储器控制器处理电路,被配置为将plog id的lba映射到与plog id对应的plog区域的物理块地址(pba)。
17、可选地,在前述任一方面中,另一种实现方式提供了主机设备处理电路,被配置为编码将数据和元数据写入nvm的plog区域的plog附加命令。
18、可选地,在前述方面中,另一种实现方式提供了plog附加命令,包括字节级附加大小字段,该字节级附加大小字段指示要在plog区域中附加的字节数。
19、可选地,在前述两个方面中的任一方面中,另一种实现方式提供了字节可寻址的plog附加命令。
20、可选地,在前述三个方面中的任一方面中,另一种实现方式提供了包括命令序号字段的plog附加命令。
21、可选地,在前述方面中的任一方面中,另一种实现方式提供了主机设备处理电路,被配置为编码从nvm的plog区域读取数据和元数据的plog读取命令。
1.一种操作计算系统的方法,所述方法包括:
2.根据权利要求1所述的方法,其中,将所述plog id映射到所述nvm区域是将plog id映射到与所述plog id对应的plog区域的物理块地址pba。
3.根据权利要求1所述的方法,其中,所述特定于plog的访问操作是将数据和元数据写入所述nvm的所述plog区域的plog附加操作。
4.根据权利要求3所述的方法,其中,所述特定于plog的命令是plog附加命令,包括可编程字节级附加大小字段,所述可编程字节级附加大小字段指示要在所述plog区域内附加的字节数。
5.根据权利要求3所述的方法,其中,所述特定于plog的命令是plog附加命令,对所述plog区域内的任何字节是字节可寻址的。
6.根据权利要求1所述的方法,其中,所述特定于plog的访问操作是从所述nvm的所述plog区域读取数据和元数据的plog读取操作。
7.根据权利要求1所述的方法,其中,所述特定于plog的命令包括命令序号字段;所述执行特定于plog的访问操作包括所述存储器设备以所述序号字段指示的顺序执行多个特定于plog的命令。
8.一种存储器设备,包括:
9.根据权利要求8所述的存储器设备,其中,所述存储器控制器处理电路被配置为将所述plog id映射到与所述plog id对应的plog区域的物理块地址pba。
10.根据权利要求8所述的存储器设备,其中,所述存储器控制器处理电路被配置为解码将数据和元数据写入所述nvm的plog区域的plog附加命令。
11.根据权利要求10所述的存储器设备,其中,所述存储器控制器处理电路被配置为解码包括在所述plog附加命令中的字节级附加大小字段,所述字节级附加大小字段指示要在所述plog区域中附加的字节数。
12.根据权利要求8所述的存储器设备,其中,所述特定于plog的访问操作是从所述nvm的所述plog区域读取数据和元数据的plog读取操作。
13.根据权利要求8所述的存储器设备,其中,所述存储器控制器处理电路被配置为:
14.一种计算机系统,包括:
15.根据权利要求14所述的计算机系统,其中,所述存储器控制器处理电路被配置为将plog id的所述lba映射到与所述plogid对应的plog区域的物理块地址pba。
16.根据权利要求14所述的计算机系统,其中,所述主机设备处理电路被配置为编码将数据和元数据写入所述nvm的plog区域的plog附加命令。
17.根据权利要求16所述的计算机系统,其中,所述plog附加命令包括字节级附加大小字段,所述字节级附加大小字段指示要在所述plog区域中附加的字节数。
18.根据权利要求16所述的计算机系统,其中,所述plog附加命令是字节可寻址的。
19.根据权利要求16所述的计算机系统,其中,所述plog附加命令包括命令序号字段。
20.根据权利要求14所述的计算机系统,其中,所述主机设备处理电路被配置为编码从所述nvm的plog区域读取数据和元数据的plog读取命令。