一种基于PCIe的多接口存储设备的控制方法与流程

文档序号:18618602发布日期:2019-09-06 22:16阅读:251来源:国知局
一种基于PCIe的多接口存储设备的控制方法与流程

本发明涉及存储技术领域,尤其涉及一种基于pcie的多接口存储设备的控制方法。



背景技术:

随着大数据时代的爆炸式发展,数据已成为各行各业至关重要的资产。为了提升数据存储的稳定性和安全性,保证业务连续性,系统厂商纷纷推出了各种容灾方案。其中双活存储架构,采用设备全冗余架构部署,通过多主机和多数据中心,同时承担相同业务,来提升数据中心的整体服务能力和资源利用率。对系统稳定性有绝对要求的方案,系统厂商通常采用多接口控制器存储设备,来实现多主机冗余架构的存储功能,该存储设备可以被多个主机访问,所以在某个服务器主机宕机时,可以自动切换到设备连接的另一台服务器主机上继续执行业务,以保障业务连续性。

现有技术中,多接口控制器存储设备比较通用的是pcie接口或sas接口,而pcie设备由于其带宽优势,在系统级应用上受到更多的关注。现有技术的pcie多控存储设备,为实现多主机冗余的存储架构,设计多个pcie接口控制器,用于连接多主机,同时遵循接口带宽平衡的规则,架构中多个pciedevicecore所支持的协议规范和通道数量一致。参见图1,以pcie双控存储设备举例,设备架构中包含2个pciedevicecore,分别支持pciegen3.0协议和x2链路宽度,其带宽可以达到2gb/s。两个pciedevicecore分别可以连接2个带宽匹配的pcie主机,从而实现双主机冗余的存储架构。

然而,现有技术上述技术方案中,pcie总线受链路和协议限制,x4的链路宽度不能直接分解为2个x2的链路宽度,2个x2的链路宽度也不能直接合并为x4的链路宽度。当双控制器存储设备应用于单主机系统时,只能达到单控制器核心的带宽,导致pcie接口控制器资源浪费。

故,针对现有技术的缺陷,实有必要提出一种技术方案以解决现有技术存在的技术问题。



技术实现要素:

有鉴于此,确有必要提供一种基于pcie的多接口存储设备的控制方法,在pcie接口主机带宽支持的情况下,能够合理利用pcie通道资源,切换存储设备带宽为最大带宽,提升设备性能。

为了解决现有技术存在的技术问题,本发明的技术方案如下:

本发明公开了一种基于pcie的多接口存储设备的控制方法,至少设置n个pcie设备接口和n个pcie设备控制器以支持多主机同时进行存储操作,其具体包括以下步骤:

步骤s1:主控单元根据应用场景配置pcie设备接口的通道连接模式;

步骤s2:根据各个pcie设备接口的通道连接模式切换其与pcie设备控制器的连接状态以根据应用场景需求切换pcie控制器架构;

其中,至少一个pcie设备控制器预先进行带宽冗余设计以支持链路带宽可扩展,作为主pcie设备控制器。

作为进一步的改进方案,在所述步骤s1中,通过硬件开关切换或固件配置切换pcie设备接口的通道连接模式为第一连接模式或第二连接模式;

当通道连接模式为第一连接模式时,主控单元控制n个pcie设备接口分别于n个pcie设备控制器相连,使存储设备可连接多台主机;第二连接模式时,主控单元控制多个pcie设备接口均与主pcie设备控制器相连以在存储设备连接单台主机时提升数据传输带宽。

作为进一步的改进方案,在所述步骤s2中,任一pcie设备控制器未工作时,关闭相应pcie设备控制器的电源供电。

作为进一步的改进方案,当通道连接模式为第一连接模式时,n个pcie设备控制器均支持*n带宽;当通道连接模式为第二连接模式时,主pcie控制器支持*2n带宽,主控单元关闭其余pcie设备控制器相关的电源;

作为进一步的改进方案,在所述步骤s2中,当主机不支持主控单元切换后的链路数据带宽的时,该pcie设备控制器仍以原数据带宽与主机进行通信。

作为进一步的改进方案,n为2。

作为进一步的改进方案,本发明基于pcie的多接口存储设备,至少设置n个pcie设备接口、n个pcie设备控制器、主控单元、电源管理模块和存储模块,

所述电源管理模块用于为该存储设备各个模块提供供电;

每个pcie设备控制器均与所述存储模块相连接,可同时对所述存储模块进行数据读写操作;

每个pcie设备接口支持若干数据通道,并与其相应的pcie设备控制器相连接以支持与n个主机同时建立数据链路;其中,至少一个pcie设备控制器为主pcie设备控制器,与多个pcie设备接口相连接,其通道带宽为与其相连接的多个pcie设备接口数据通道之和,所述多个pcie设备接口的通道连接模式可配置;

所述主控单元与n个pcie设备接口和n个pcie设备控制器相连接,当相应pcie设备接口没有主机接入时,发送指令重新配置该pcie设备接口的连接通道使其与主pcie设备控制器相连接,以及控制所述主pcie设备控制器重新配置链路通道信息以提升数据带宽。

作为进一步的改进方案,主控单元通过硬件开关或固件方法配置pcie设备接口的通道连接模式为第一连接模式或第二连接模式,其中,第一连接模式时,主控单元控制n个pcie设备接口分别于n个pcie设备控制器相连,使存储设备可连接多台主机;第二连接模式时,主控单元控制多个pcie设备接口均与主pcie设备控制器相连以在存储设备连接单台主机时提升数据传输带宽。

作为进一步的改进方案,至少设置第一pcie设备接口、第二pcie设备接口、第一pcie设备控制器和第二pcie设备控制器,其中,

所述第一pcie设备控制器为主pcie设备控制器,与第一pcie设备接口和第二pcie设备接口相连接,其支持2n个数据通道;

所述第二pcie设备控制器与第二pcie设备接口相连接,其支持n个数据通道;

所述第一pcie设备接口和第二pcie设备接口均支持n个数据通道;其中,所述第二pcie设备接口利用其可复用性特点将通道连接模式配置为第一连接模式或第二连接模式;第一连接模式时,所述第二pcie设备接口与第二pcie设备控制器物理连接以支持第二主机的读写控制;第二连接模式时,所述第二pcie设备接口与第一pcie设备控制器物理连接以提升第一主机的数据带宽。

作为进一步的改进方案,每个pcie设备接口在物理层及其电气子层上是一致的,以在符合pcie协议规范的前提下与不同pcie控制器物理接口相连接。

作为进一步的改进方案,所述主控单元配置所述第二pcie设备接口为第一连接模式或第二连接模式;

当第一主机和第二主机同时接入或者仅第二主机接入时,配置所述第二pcie设备接口为第一连接模式;

当仅第一主机接入时,配置所述第二pcie设备接口为第二连接模式。

作为进一步的改进方案,当仅第一主机接入时,所述主控单元控制电源管理模块关闭所述第二pcie设备控制器的供电;

当仅第二主机接入时,所述主控单元控制电源管理模块关闭所述第一pcie设备控制器的供电。

作为进一步的改进方案,n为2,n为1、2、4、8或16。

与现有技术相比较,本发明通过设置通道连接模式可配置的pcie设备接口以及对相应pcie设备控制器进行冗余设计,从而能够根据实际主机连接情况切换pcie控制器架构,在pcie接口主机带宽支持的情况下,合理利用pcie通道资源,切换存储设备带宽为最大带宽,提升设备性能,使存储设备可以适应多种应用场景。单主机应用时,切换到单控制器架构,提升带宽性能,降低设备能耗,适用于一般pcie设备应用;在多主机应用时,切换到多控制器架构,支持双活系统架构,保证服务器数据存储的稳定性、安全性,和业务连续性。

附图说明

图1为现有技术多接口存储设备的原理框图。

图2为本发明基于pcie的多接口存储设备的原理框图。

图3为本发明一种优选实施方式中第一连接模式的示意框图。

图4为本发明一种优选实施方式中第二连接模式的示意框图。

图5为本发明基于pcie的多接口存储设备的控制方法的流程框图。

如下具体实施例将结合上述附图进一步说明本发明。

具体实施方式

以下将结合附图对本发明提供的技术方案作进一步说明。

在图1所示的现有技术多接口存储设备的架构中中,由于pcie总线受链路和协议限制,单机连接时,由于pcie控制器带宽限制,仅能以支持其单核带宽,无法充分利用pcie设备接口资源,造成pcie接口资源浪费的现象。

为此,本发明还公开了一种基于pcie的多接口存储设备的控制方法,至少设置n个pcie设备接口和n个pcie设备控制器以支持多主机同时进行存储操作,参见图5,其具体包括以下步骤:

步骤s1:主控单元根据应用场景配置pcie设备接口的通道连接模式;

步骤s2:根据各个pcie设备接口的通道连接模式切换其与pcie设备控制器的连接状态以根据应用场景需求切换pcie控制器架构;

其中,至少一个pcie设备控制器预先进行带宽冗余设计以支持链路带宽可扩展,作为主pcie设备控制器。

上述技术方案中,本发明通过设置通道连接模式可配置的pcie设备接口以及对相应pcie设备控制器进行冗余设计,从而能够根据实际主机连接情况切换pcie控制器架构,在pcie接口主机带宽支持的情况下,合理利用pcie通道资源,切换存储设备带宽为最大带宽,提升设备性能,使存储设备可以适应多种应用场景。

进一步的,在步骤s1中,可以通过硬件开关切换或固件配置方式进行切换;当通道连接模式为第一连接模式时,主控单元控制n个pcie设备接口分别于n个pcie设备控制器相连,使存储设备可连接多台主机;第二连接模式时,主控单元控制多个pcie设备接口均与主pcie设备控制器相连以在存储设备连接单台主机时提升数据传输带宽。

进一步的,在所述步骤s2中,当监控到任一pcie设备接口未接入主机时,关闭相应pcie设备控制器的电源供电。

为了,实现上述发明构思,本发明设计了基于pcie的多接口存储设备,参见图2,所示为本发明提供的基于pcie的多接口存储设备的原理框图,至少设置n个pcie设备接口、n个pcie设备控制器、主控单元、电源管理模块和存储模块,其中,所述电源管理模块用于为该存储设备各个模块提供供电;

每个pcie设备控制器均与所述存储模块相连接,可同时对所述存储模块进行数据读写操作;

每个pcie设备接口支持若干数据通道,并与其相应的pcie设备控制器相连接以支持与n个主机同时建立数据链路;其中,至少一个pcie设备控制器为主pcie设备控制器,与多个pcie设备接口相连接,其通道带宽为与其相连接的多个pcie设备接口数据通道之和,所述多个pcie设备接口的通道连接模式可配置;

所述主控单元与n个pcie设备接口和n个pcie设备控制器相连接,当相应pcie设备接口没有主机接入时,发送指令重新配置该pcie设备接口的连接通道使其与主pcie设备控制器相连接,以及控制所述主pcie设备控制器重新配置链路通道信息以提升数据带宽。

在上述技术方案中,通过控制器链路适度冗余的设计,使其中一个pcie控制器的链路可以支持更多通道,保证切换到最大带宽的可行性;适度地冗余设计,在保障方案可行的前提下,节约成本。

在一种优选实施方式中,主控单元与n个pcie设备接口和n个pcie设备控制器相连接,主控单元可通过硬件开关或固件方法配置pcie设备接口的通道连接模式,第一连接模式和第二连接模式。第一连接模式时,主控单元控制n个pcie设备接口分别与n个pcie设备控制器相连,使存储设备可连接多台主机,适应双活存储架构;第二连接模式时,主控单元控制多个pcie设备接口仅与主pcie设备控制器相连,在存储设备连接单台主机时提升数据传输带宽。

在一种优选实施方式,以设置2个pcie设备控制器为例,参见图3和图4,分别为本发明一种优选实施方式中第一连接模式和第二连接模式的示意框图,至少设置第一pcie设备接口、第二pcie设备接口、第一pcie设备控制器和第二pcie设备控制器,所述第一pcie设备控制器为主pcie设备控制器,与第一pcie设备接口和第二pcie设备接口相连接,其支持2n个数据通道;所述第二pcie设备控制器与第二pcie设备接口相连接,其支持n个数据通道;所述第一pcie设备接口和第二pcie设备接口均支持n个数据通道;其中,所述第二pcie设备接口通道连接模式可配置为第一连接模式或第二连接模式;第一连接模式时,所述第二pcie设备接口与第二pcie设备控制器物理连接以支持第二主机的读写控制;第二连接模式时,所述第二pcie设备接口与第一pcie设备控制器物理连接以提升第一主机的数据带宽。

上述技术方案中,通过灵活地配置通道连接模式,自如地切换设备架构为多控架构或单控架构,可以适应多种应用场景。在单控制器架构时,提升带宽性能,降低设备能耗,适用于一般pcie设备应用;在双控制器架构时,支持双控双活系统存储架构,保证服务器数据存储的稳定性、安全性,和业务连续性。

进一步的,主控单元通过硬件开关或固件配置方式来配置所述第二pcie设备接口为第一连接模式或第二连接模式;

当配置所述第二pcie设备接口为第一连接模式时,该存储设备支持第一主机和第二主机同时接入或者仅第二主机接入;

当配置所述第二pcie设备接口为第二连接模式时,该存储设备仅支持第一主机接入。

进一步的,当仅第一主机接入时,所述主控单元控制电源管理模块关闭所述第二pcie设备控制器的供电。

当仅第二主机接入时,所述主控单元控制电源管理模块关闭所述第一pcie设备控制器的供电。

上述的n为2,n为1、2、4、8或16。

参见图3和4的连接框图,以下从协议层的角度进一步阐述。pcie设备与主机间通过链路(link)进行连接,1个pcie链路可以由多个数据通道(lane)组成,通道数越多,带宽越大,速度越快。图3示出了双pcie控制器存储设备的存储架构,设备架构中包含2个pciedevicecore,分别支持pciegen3.0协议和x2链路宽度,共有4个数据通道。在单主机应用时,如果可以完全利用以上通道资源,实现gen3*4的带宽性能,可以极大程度地提升设备性能。也即,通过控制器适度冗余设计和灵活的通道连接方法,实现pcie总线的控制器架构切换,达到带宽最优化。

以下详细说明图3和4双pcie控制器的存储设备的工作原理:

该存储设备包含1个cpu控制器、1个pciegen3*4的控制器、1个pciegne3*2的控制器、1个存储模块、1个电源管理模块以及2个pciephy,其中pciephy分别可以支持2个数据传输通道。其余外围电路,在此不做赘述。

pciegen3*4的控制器,记为pciedevicecore0,该控制器进行适度地冗余设计,其pcie总线链路可以支持4通道的数据传输,同时由于pcie总线的向下兼容特性,也可以支持2通道的数据传输。

pciegen3*2的控制器,记为pciedevicecore1,其pcie总线链路仅支持2通道的数据传输。

两个pcie控制器可以共同对存储模块进行读写。

两个pciephy分别记为pciephy0和pciephy1,均为设备的pciephy。设备的pciephy与主机的pciephy通过pcie链路发送事物处理,建立物理连接。

两个pciephy均支持2个数据通道,分别记为lane0、lane1、lane2和lane3,其中lane2和lane3,可以通过配置通道连接模式,切换该通道所连接的pciedevicecore。

默认状态时,lane2和lane3配置为连接pciedevicecore1,该存储设备此时为双pcie控制器模式,可以支持第一主机和第二主机同时接入;当lane2和lane3配置为连接pciedevicecore0时,该存储设备此时为单pcie控制器模式,仅支持第一主机接口在主机pcie接口支持gen3*4的前提下,协商最终的传输带宽为gen3*4,达到最优带宽;同时通知电源管理模块切断pciedevicecore1的相关电路,节约能耗。

同时基于该架构可以再增加指示灯模块,控制指示灯显示连接情况,提高人机交互体验。

以上方案描述的pcie总线规范、通道数量和pcie控制器数量仅为范例,实际可以支持更多协议规划、通道和pcie控制器。

在一种优选实施方式中,在步骤s2中当通道连接模式为第一连接模式时,n个pcie设备控制器均支持*n带宽;当通道连接模式为第二连接模式时,主pcie控制器支持*2n带宽,主控单元关闭其余pcie设备控制器相关的电源。

进一步的,在所述步骤s2中,当主机不支持主控单元切换后的链路数据带宽的时,该pcie设备控制器仍以原数据带宽与主机进行通信。

以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1