具有主机隔离的非易失性存储器交换机制造技术

技术编号:23399741 阅读:40 留言:0更新日期:2020-02-22 12:02
本公开的各实施例涉及具有主机隔离的非易失性存储器交换机。NVM交换机已经被设计为允许多个主机同时并且独立访问单端口NVM设备。虽然这一双活多主机使用配置允许对低成本单端口NVM设备的各种使用,但主机中的一个主机的问题可能会延迟或阻止其他主机与NVM设备之间的事务。尽管交换机的逻辑跨主机而被共享,但NVM交换机包括隔离多个主机的活动的逻辑。当交换机检测到一个主机(“错误主机”)的问题时,交换机清除错误主机的正在运行的命令并且冲刷错误主机的数据。同样,NVM交换机确保从附接的NVM设备向多个主机的错误报告的正确传达。

Nonvolatile memory switch with host isolation

【技术实现步骤摘要】
具有主机隔离的非易失性存储器交换机对相关申请的交叉引用本公开要求于2018年8月7日提交的名称为“NVMeProtocolSwitchHostIsolationinActive-ActiveConfiguration”的美国临时申请序列号62/715,713的优先权的权益,其内容通过引用以其整体并入本文。
技术介绍
本公开一般涉及计算机体系架构领域,并且更具体地涉及输入/输出设备和操作。高性能计算环境越来越多地将非易失性存储器(NVM)(诸如闪存)用于存储解决方案。除了针对旋转媒体技术优化的传统存储装置接口之外,还使用针对NVM优化的主机控制器接口。NMV快速(NVMe)规范是NVM的可扩展主机控制器接口规范,它利用了外围组件互连-快速架构。附图说明通过参考附图可以更好地理解本公开的实施例。图1描绘了示例系统的框图,该示例系统包括具有用于多主机到单端口主机隔离的逻辑和程序代码的NVM交换机。图2是NVM交换机逻辑以在具有单端口NVM设备的双活配置中隔离主机的示例图。图3是用于隔离在主机响应中检测到的错误本文档来自技高网...

【技术保护点】
1.一种非易失性存储器交换机,包括:/n多个互连接口;/n处理器;/n多个队列;/n机器可读介质,其上存储有程序代码,所述程序代码由所述处理器可执行以使得所述交换机:/n向不同的根复合体保留经由所述多个互连接口中的至少第二互连接口可访问的一个或多个单端口非易失性存储器设备的集合上的不同的存储器空间;/n将所述不同的根复合体作为单根复合体呈现给非易失性存储器设备;/n利用所述多个队列的至少子集维护存储器事务与所述不同的根复合体中的对应的根复合体的关联;以及/n至少部分地基于所维护的所述关联,防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的存储器事务。/n

【技术特征摘要】
20180807 US 62/715,713;20190805 US 16/532,2721.一种非易失性存储器交换机,包括:
多个互连接口;
处理器;
多个队列;
机器可读介质,其上存储有程序代码,所述程序代码由所述处理器可执行以使得所述交换机:
向不同的根复合体保留经由所述多个互连接口中的至少第二互连接口可访问的一个或多个单端口非易失性存储器设备的集合上的不同的存储器空间;
将所述不同的根复合体作为单根复合体呈现给非易失性存储器设备;
利用所述多个队列的至少子集维护存储器事务与所述不同的根复合体中的对应的根复合体的关联;以及
至少部分地基于所维护的所述关联,防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的存储器事务。


2.根据权利要求1所述的非易失性存储器交换机,其中维持存储器事务的所述关联的所述程序代码包括程序代码,所述程序代码由所述处理器可执行以使得所述非易失性存储器交换机:
将所述多个队列中的第一队列与所述根复合体中的第一根复合体相关联,并且将所述多个队列中的第二队列与所述根复合体中的第二根复合体相关联;
针对将所述第一根复合体标识为请求者的所述存储器事务的每个读取分组,将能够被用于标识对应的读取完成数据的、来自所述读取分组的报头的信息存储到所述第一队列中;以及
针对将所述第二根复合体标识为请求者的所述存储器事务的每个读取分组,将来自所述读取分组的报头的信息存储到所述第二队列中。


3.根据权利要求2所述的非易失性存储器交换机,其中防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的事务的所述程序代码包括程序代码以:
基于对来自所述第一根复合体和所述第二根复合体中的一个根复合体的错误条件的检测,在与所述错误条件的所述根复合体相关联的所述非易失性存储器交换机中选择读取完成分组;以及
从非易失性存储器交换机清除所选择的所述读取完成分组。


4.根据权利要求1所述的非易失性存储器交换机,其中防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的事务的所述程序代码包括程序代码,所述程序代码由所述处理器可执行以使得所述非易失性存储器交换机:
基于对来自非易失性存储器设备的所述集合中的一个非易失性存储器设备的读取请求的根复合体响应指示基于完成的错误的确定,设置所述根复合体响应的完成状态以指示具有完成者中止状态的完成,其中所述根复合响应经由所述多个互连接口中的第一互连接口而被接收;以及
经由所述第二互连接口将具有设置完成状态的所述根复合体响应传达给非易失性存储器设备的所述集合中的所述一个非易失性存储器设备。


5.根据权利要求1所述的非易失性存储器交换机,其中防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的事务的所述程序代码包括程序代码,所述程序代码由所述处理器可执行以使得所述非易失性存储器交换机:
基于对非易失性存储器设备的所述集合中的一个非易失性存储器设备的根复合体响应的完成数据中的数据奇偶校验错误的检测,修改所述根复合体响应以指示中毒的有效载荷,其中所述根复合响应经由所述多个互连接口中的第一互连接口而被接收;以及
经由所述第二互连接口将经修改的所述根复合体响应传达给非易失性存储器设备的所述集合中的所述一个非易失性存储器设备。


6.根据权利要求1所述的非易失性存储器交换机,其中防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的事务的所述程序代码包括程序代码,所述程序代码由所述处理器可执行以使得所述非易失性存储器交换机:
基于对与所述根复合体中的第一根复合体对应的链接断开事件的检测,触发来自以与所述链接断开事件对应的链接为目标的非易失性存储器设备的所述集合的所述非易失性存储器交换机上的在运行事务的冲刷;
针对所述非易失性存储器交换机上的已经被发出给非易失性存储器设备的所述集合但尚未完成的每个命令传达中止命令;
重置与所述第一根复合体对应的所述非易失性存储器交换机的链接组件;以及
重新建立与所述第一根复合体的链接。


7.根据权利要求1所述的非易失性存储器交换机,其中防止所述不同的根复合体中的一个根复合体的错误条件影响所述不同的根复合体中的另一根复合体的事务的所述程序代码包括程序代码,所述程序代码由所述处理器可执行以使得所述非易失性存储器交换机:
基于对从第一根复合体到第一端点核的复位命令的检测,
从所述第一根复合体丢弃待从所述非易失性存储器交换机发出的所述非易失性存储器交换机上的取读的命令;
针对所述非易失性存储器交换机上的已经被发出给非易失性存储器设备的所述集合但尚未完成的每个命令传达中止命令;
触发对所述第一端点核的事务冲刷;
删除所述第一端点核的命令和提交队列;以及
发起所述第一端点核的重置。


8.根据权利要求1所述的非易失性存储器交换机,其中将所述不同的根复合体作为单个根复合体呈现给非易失性存储器设备的所述程序代...

【专利技术属性】
技术研发人员:郭丽萍李英东S·富里S·苏里
申请(专利权)人:马维尔国际贸易有限公司
类型:发明
国别省市:巴巴多斯;BB

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

1