【技术实现步骤摘要】
NVMeSGL位存储桶传输
技术介绍
实施方案总体涉及由数据存储设备处理NVMe散射收集列表(SGL)位存储桶传输。相关领域的描述NVMExpress(NVMe)为主机和数据存储设备(诸如固态驱动器(SSD))之间的接口协议,用于访问存储在数据存储设备中的数据。NVMe协议基于成对提交队列和完成队列机制。命令(诸如读取命令和写入命令)由主机软件置于提交队列中,并且由数据存储设备获取以供执行。由存储设备控制器将完成项置于相关联的完成队列中,以通知主机命令的完成。NVMe数据结构,诸如提交队列、完成队列、物理区域页面(PRP)条目、散射收集列表(SGL)和数据缓冲器,存储在主机的主机存储器或数据存储设备的控制器存储器缓冲器中。NVMe数据结构(诸如含有SGL位存储桶描述符的SGL)的实施方式增加了数据存储设备的复杂性。因此,需要一种改进的NVMe数据存储设备。
技术实现思路
实施方案总体涉及由数据存储设备处理NVMeSGL位存储桶传输。在一个实施方案中,使用具有一个或多个位存储桶传输的SGL ...
【技术保护点】
1.一种使用散射收集列表(SGL)并包括一个或多个位存储桶传输的设备到主机数据传输的过程,所述过程包含:/n接收所述数据的所述传输命令;/n获取与所述数据相关联的SGL描述符;/n确定所述SGL描述符是SGL位存储桶描述符还是SGL数据块描述符;/n当所述SGL描述符被确定为所述SGL位存储桶描述符时,生成修改的事务层分组(TLP),所述修改的TLP具有对主机的忽略所述修改的TLP的数据有效载荷的指示;以及/n将所述修改的TLP传输到所述主机。/n
【技术特征摘要】
20200131 US 16/778,1771.一种使用散射收集列表(SGL)并包括一个或多个位存储桶传输的设备到主机数据传输的过程,所述过程包含:
接收所述数据的所述传输命令;
获取与所述数据相关联的SGL描述符;
确定所述SGL描述符是SGL位存储桶描述符还是SGL数据块描述符;
当所述SGL描述符被确定为所述SGL位存储桶描述符时,生成修改的事务层分组(TLP),所述修改的TLP具有对主机的忽略所述修改的TLP的数据有效载荷的指示;以及
将所述修改的TLP传输到所述主机。
2.根据权利要求1所述的过程,其中所述修改的TLP指示字节启用,所述字节启用具有用于最后一个字节启用(BE)字段和用于第一个BE字段的已清除条目,作为对所述主机忽略所述修改的TLP的所述数据有效载荷的所述指示。
3.根据权利要求1所述的过程,其中所述修改的TLP包含用于EP位的设定条目,作为对所述主机忽略所述修改的TLP的所述数据有效载荷的所述指示。
4.根据权利要求1所述的过程,其中所述修改的TLP包含用于地址字段的所述主机的主机存储器缓冲器的替换地址,作为对所述主机的忽略所述修改的TLP的所述数据有效载荷的所述指示。
5.根据权利要求1所述的过程,所述过程还包含当所述SGL描述符被确定为所述SGL数据块描述符时,将未修改的TLP传输到所述主机。
6.根据权利要求1所述的过程,其中所述传输命令为读取命令,并且其中所述修改的TLP为修改的存储器写入请求TLP。
7.根据权利要求6所述的过程,其中所述读取命令为NVMExpress读取命令,并且其中所述修改的存储器写入请求TLP为外围部件接口Express修改的存储器写入请求TLP。
8.一种数据存储设备,所述数据存储设备包含:
主机接口,所述主机接口可操作以与所述主机对接;
非易失性存储器;和
存储设备控制器,所述存储设备控制器可操作以:
接收写入非易失性存储器的数据的传输命令,所述传输命令使用散射收集列表(SGL)并包括一个或多个位存储桶传输;
获取与所述数据相关联的SGL描述符;
确定所述SGL描述符是SGL位存储桶描述符还是SGL数据块描述符;
当所述SGL描述符被确定为所述SGL位存储桶描述符时,生成修改的事务层分组(TLP),所述修改的TLP具有对所述主机的忽略所述修改的TLP的数据有效载荷的指示;并且
将所述修改的TLP传输到所述主机。
9.根据权利要求8所述的数据存储设备,其中所述修改的TLP指示字节启用,所述字节启用具有用于最后一个字节启用(BE)字段和用于第一个BE字段的已清除条目,作为对所述主机的忽略所述修改的TLP的所述数据有效载荷的所述指示。
10.根据权利要求8所述的数据存储设备,其中所述修改的TLP包含用于EP位的设定条目,作为对所述主机的忽略所述修改的TLP的所述数据有效载荷的所...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。