首页 / 专利库 / 电脑零配件 / 接口 / 通信接口 / 连接器、NVMe存储设备及计算机设备

连接器、NVMe存储设备及计算机设备

阅读:511发布:2023-12-20

专利汇可以提供连接器、NVMe存储设备及计算机设备专利检索,专利查询,专利分析的服务。并且一种连接器、NVMe存储设备及计算机设备。所述连接器包括第一管脚、第二管脚、第三管脚与第四管脚;第一管脚用于指示在位 信号 ,第二管脚用于指示电源信号,第三管脚用于指示 时钟信号 ,第四管脚用于指示PCIe端口的信号;第一管脚、第二管脚、第三管脚与第四管脚的长度相同;连接器包含第一面与第二面,第一面设置有限位结构,限位结构为凸台或凹槽,第一管脚位于第一面的中部。在本 申请 实施例 中,由于连接器中用于指示在位信号的管脚的长度不长于用于指示电源、时钟及PCIe端口的信号的管脚的长度,使得在位信号能够准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。,下面是连接器、NVMe存储设备及计算机设备专利的具体信息内容。

1.一种连接器,其特征在于,用于提供高速外围组件互连PCIe通信接口,所述PCIe通信接口用于连接快速非易失性存储NVMe存储设备和计算机设备,所述连接器至少包括第一管脚、第二管脚、第三管脚与第四管脚;
所述第一管脚用于指示所述NVMe存储设备的在位信号
所述第二管脚用于指示所述NVMe存储设备的电源信号;
所述第三管脚用于指示所述NVMe存储设备的时钟信号
所述第四管脚用于指示所述NVMe存储设备的PCIe端口的信号;
所述第一管脚、所述第二管脚、所述第三管脚与所述第四管脚的长度相同;
其中,所述连接器包含第一面与第二面,所述第一面设置有限位结构,所述限位结构为凸台或凹槽,所述第一管脚位于所述第一面的中部。
2.根据权利要求1所述的连接器,其特征在于,所述第一管脚为短针。
3.根据权利要求1或2所述的连接器,其特征在于,所述限位结构为所述凸台,所述连接器为公头连接器,所述第一管脚的长度为4.55±0.08mm。
4.根据权利要求1或2所述的连接器,其特征在于,所述限位结构为所述凹槽,所述连接器为母头连接器,所述第一管脚与所述母头连接器的插槽侧边沿之间的距离为1.90±
0.15mm。
5.根据权利要求1-4任一项所述的连接器,其特征在于,所述第一管脚与所述第一面一端的第一边缘管脚之间的距离为17.87mm,所述第一管脚与所述第一面另一端的第二边缘管脚之间的距离为13.97mm。
6.一种连接器,其特征在于,用于提供高速外围组件互连PCIe通信接口,所述PCIe通信接口用于连接快速非易失性存储NVMe存储设备和计算机设备,所述连接器至少包括第一管脚、第二管脚、第三管脚与第四管脚;
所述第一管脚用于指示所述NVMe存储设备的在位信号;
所述第二管脚用于指示所述NVMe存储设备的电源信号;
所述第三管脚用于指示所述NVMe存储设备的时钟信号;
所述第四管脚用于指示所述NVMe存储设备的PCIe端口的信号;
所述第一管脚的长度不长于所述第二管脚、所述第三管脚与所述第四管脚中的最短管脚的长度;
其中,所述连接器包含第一面与第二面,所述第一面设置有限位结构,所述限位结构为凸台或凹槽,所述第一管脚位于所述第一面的中部。
7.根据权利要求6所述的连接器,其特征在于,所述第一管脚为短针。
8.根据权利要求6或7所述的连接器,其特征在于,所述限位结构为所述凸台,所述连接器为公头连接器,所述第一管脚的长度为4.55±0.08mm。
9.根据权利要求6或7所述的连接器,其特征在于,所述限位结构为所述凹槽,所述连接器为母头连接器,所述第一管脚与所述母头连接器的插槽侧边沿之间的距离为1.90±
0.15mm。
10.根据权利要求6-9任一项所述的连接器,其特征在于,所述第一管脚与所述第一面一端的第一边缘管脚之间的距离为17.87mm,所述第一管脚与所述第一面另一端的第二边缘管脚之间的距离为13.97mm。
11.一种快速非易失性存储NVMe存储设备,其特征在于,所述NVMe存储设备包括:控制器存储器和如权利要求1至10任一项所述的连接器;其中,所述控制器分别与所述存储器和所述连接器电性连接。
12.根据权利要求11所述的NVMe存储设备,其特征在于,所述存储器为闪存Flash存储器或者动态随机存取存储器DRAM。
13.一种计算机设备,其特征在于,所述计算机设备包括:处理模和如权利要求1至10任一项所述的连接器;其中,所述处理模块与所述连接器电性连接。
14.根据权利要求13所述的计算机设备,其特征在于,所述处理模块包括中央处理器CPU,所述CPU与所述连接器电性连接。
15.根据权利要求13所述的计算机设备,其特征在于,所述处理模块包括中央处理器CPU和高速外围组件互连PCIe交换芯片;
所述PCIe交换芯片包括一个输入端口和N个输出端口,所述N为正整数;
所述CPU与所述输入端口电性连接;
所述N个输出端口中的每一个输出端口用于与1个连接器电性连接。

说明书全文

连接器、NVMe存储设备及计算机设备

技术领域

[0001] 本申请实施例涉及存储技术领域,特别涉及一种连接器、快速非易失性存储(Non-Volatile Memory express,NVMe)存储设备及计算机设备。

背景技术

[0002] 高速外围组件互连(Peripheral Component Interface express,PCIe)是最新的总线和接口标准,属于高速串行点对点双通道高带宽传输,它代表着下一代输入/输出(Input/Output,I/O)接口标准。PCIe固态存储设备(如固态硬盘(Solid State Disk,SSD))是指与中央处理器(Central Processing Unit,CPU)的PCIe接口相连接的固态存储设备。NVMe标准是一个针对使用PCIe固态存储设备(以下简称“PCIe设备”)的企业和普通客户端系统开发的存储控制器接口标准。基于NVMe标准的PCIe设备可以称为NVMe存储设备(或者NVMe SSD),NVMe存储设备具有低能耗、高性能的特点。
[0003] 对于大部分支持NVMe存储设备的计算机设备(如存储阵列、服务器等)来说,要求其支持暴热插拔,上述计算机设备可称为“主机”。所谓暴力热插拔即带电拔插,允许用户在不关闭系统、不切断电源的情况下直接插入或拔出主机下挂的NVMe存储设备,而不影响主机的正常运行。在主机的槽位上未插入NVMe存储设备的情况下,槽位对应的PCIe端口默认是关闭的;插入NVMe存储设备之后,系统根据在位信号变化上报插盘中断,系统中的PCIe热插拔控制器先后打开该槽位的电源、时钟及PCIe端口,开始热添加流程。所以,在位信号是NVMe存储设备暴力热插拔流程的关键触发信号。
[0004] NVMe存储设备使用SFF-8639连接器,使用该连接器的P4管脚的信号作为NVMe存储设备的在位信号。其中,SFF-8639连接器的P4管脚的信号称为接口类型检测(Interface Type Detect,IfDet)信号(记为“IFDET#”)。如果IFDET#为0则表示NVMe存储设备在位,如果IFDET#为1则表示NVMe存储设备不在位。在《SFF-8639 Specification for Multifunction 12Gb/s 6X Unshielded Connector》、《PCI SFF-8639 Module Specification》及《 2012SSD Form Factor Work Group,All rights reserved》中定义SFF-8639
连接器中P4管脚的接触顺序为1st,即SFF-8639连接器的公头和母头的P4管脚均为长针。在SFF-8639连接器的公头插入母头时,P4管脚最先接触;在SFF-8639连接器的公头从母头拔出时,P4管脚最后断开。
[0005] 目前,NVMe存储设备在插拔的场景下,会出现NVMe存储设备无法成功接入系统的问题,可靠性较低。发明内容
[0006] 本申请实施例提供了一种连接器、NVMe存储设备及计算机设备,可用于解决现有技术中NVMe存储设备在插拔的场景下,无法成功接入系统的问题。
[0007] 一方面,本申请实施例提供一种连接器,该连接器用于提供PCIe通信接口,该PCIe通信接口用于连接NVMe存储设备和计算机设备,该连接器至少包括第一管脚、第二管脚、第三管脚与第四管脚。第一管脚用于指示NVMe存储设备的在位信号;第二管脚用于指示NVMe存储设备的电源信号;第三管脚用于指示NVMe存储设备的时钟信号;第四管脚用于指示NVMe存储设备的PCIe端口的信号;第一管脚、第二管脚、第三管脚与第四管脚的长度相同。连接器包含第一面与第二面,第一面设置有限位结构,该限位结构为凸台或凹槽,第一管脚位于第一面的中部。
[0008] 本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0009] 在一个可能的设计中,第一管脚为短针。
[0010] 在一个可能的设计中,限位结构为凸台,连接器为公头连接器,第一管脚的长度为4.55±0.08mm。
[0011] 在一个可能的设计中,限位结构为凹槽,连接器为母头连接器,第一管脚与母头连接器的插槽侧边沿之间的距离为1.90±0.15mm。
[0012] 在一个可能的设计中,第一管脚与第一面一端的第一边缘管脚之间的距离为17.87mm,第一管脚与第一面另一端的第二边缘管脚之间的距离为13.97mm。
[0013] 另一方面,本申请实施例提供一种连接器,该连接器用于提供PCIe通信接口,该PCIe通信接口用于连接NVMe存储设备和计算机设备,该连接器至少包括第一管脚、第二管脚、第三管脚与第四管脚。第一管脚用于指示NVMe存储设备的在位信号;第二管脚用于指示NVMe存储设备的电源信号;第三管脚用于指示NVMe存储设备的时钟信号;第四管脚用于指示NVMe存储设备的PCIe端口的信号;第一管脚的长度不长于第二管脚、第三管脚与第四管脚中的最短管脚的长度。连接器包含第一面与第二面,第一面设置有限位结构,该限位结构为凸台或凹槽,第一管脚位于第一面的中部。
[0014] 本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0015] 在一个可能的设计中,第一管脚为短针。
[0016] 在一个可能的设计中,限位结构为凸台,连接器为公头连接器,第一管脚的长度为4.55±0.08mm。
[0017] 在一个可能的设计中,限位结构为凹槽,连接器为母头连接器,第一管脚与母头连接器的插槽侧边沿之间的距离为1.90±0.15mm。
[0018] 在一个可能的设计中,第一管脚与第一面一端的第一边缘管脚之间的距离为17.87mm,第一管脚与第一面另一端的第二边缘管脚之间的距离为13.97mm。
[0019] 再一方面,本申请实施例提供一种NVMe存储设备,该NVMe存储设备包括:控制器、存储器和如上述方面所述的连接器;其中,控制器分别与存储器和连接器电性连接。
[0020] 在一个可能的设计中,存储器为闪存(Flash)存储器或者动态随机存取存储器(Dynamic Random Access Memory,DRAM)。
[0021] 又一方面,本申请实施例提供一种计算机设备,该计算机设备包括:处理模和如上述方面所述的连接器;其中,处理模块与连接器电性连接。
[0022] 在一个可能的设计中,处理模块包括中央处理器(Central Processing Unit,CPU),CPU与连接器电性连接。
[0023] 在一个可能的设计中,处理模块包括CPU和PCIe交换芯片;PCIe交换芯片包括一个输入端口和N个输出端口,N为正整数;CPU与输入端口电性连接;N个输出端口中的每一个输出端口用于与1个连接器电性连接。
[0024] 还一方面,本申请实施例提供一种存储系统,该存储系统包括如上述方面所述的NVMe存储设备和计算机设备。
[0025] 相较于现有技术,在本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或者使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。附图说明
[0026] 图1是现有技术所提供的SFF-8639连接器的公头的示意图;
[0027] 图2是现有技术所提供的SFF-8639连接器的母头的示意图;
[0028] 图3是本申请一实施例提供的连接器的示意图;
[0029] 图4示出了公头连接器从插头一侧的简略侧视图;
[0030] 图5示出了公头连接器的第一面的简略示意图;
[0031] 图6是本申请另一实施例提供的连接器的示意图;
[0032] 图7示出了母头连接器从插槽一侧的简略侧视图;
[0033] 图8示出了母头连接器的另一示意图;
[0034] 图9是本申请一实施例提供的存储系统的示意图;
[0035] 图10是本申请一实施例提供的NVMe存储设备的结构方框图
[0036] 图11是本申请一实施例提供的计算机设备的结构方框图;
[0037] 图12是本申请另一实施例提供的计算机设备的结构方框图;
[0038] 图13是本申请又一实施例提供的计算机设备的结构方框图;
[0039] 图14是本申请一实施例提供的热添加流程的示意图;
[0040] 图15是本申请一实施例提供的热移除流程的示意图。

具体实施方式

[0041] 为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
[0042] 在现有技术中,NVMe存储设备使用的硬盘连接器为SFF-8639连接器。SFF-8639连接器包括公头和母头。在通常情况下,NVMe存储设备上装配SFF-8639连接器的公头,主机上装配SFF-8639连接器的母头。NVMe存储设备插入主机的槽位的过程,即为上述公头与母头插接的过程。
[0043] 如图1所示,其示出了现有技术所提供的SFF-8639连接器的公头的示意图。从图中可以看出,公头的各个管脚中存在长针和短针,长针相较于短针的长度更长。公头中用于指示在位信号的管脚为P4管脚,从图中可以看出,公头中的P4管脚为长针。
[0044] 如图2所示,其示出了现有技术所提供的SFF-8639连接器的母头的示意图。从图中可以看出,母头的各个管脚中存在长针和短针,长针相较于短针的长度更长。母头中用于指示在位信号的管脚为P4管脚,从图中可以看出,母头中的P4管脚也为长针。
[0045] NVMe存储设备在插拔的场景下,会出现NVMe存储设备无法成功接入系统的问题。下面,通过如下两个场景对上述问题进行介绍说明:
[0046] 1、NVMe存储设备缓慢插入的场景
[0047] 由于SFF-8639连接器的公头和母头的P4管脚均为长针,P4管脚的接触顺序为1st,在将NVMe存储设备插入主机的槽位的过程中,P4管脚最先接触,在位信号IFDET#由1变为0,表示NVMe存储设备在位。
[0048] 系统在检测到上述在位信号IFDET#由1变为0时,上报插盘中断,系统中的PCIe热插拔控制器先后打开该槽位的电源、时钟及PCIe端口,开始热添加流程。但是,由于电源、时钟及PCIe端口的管脚为短针,在NVMe存储设备缓慢插入的场景下,上述电源、时钟及PCIe端口的管脚尚未接触,则热添加流程执行失败。在热添加流程执行失败的情况下,系统中的PCIe控制器会确定该NVMe存储设备为故障盘并关闭PCIe端口。
[0049] 后续继续插入NVMe存储设备,虽然电源、时钟及PCIe端口的管脚成功接触,但是由于此时在位信号并不会发生变化,进而使得系统不会再次上报插盘中断以触发执行热添加流程,NVMe存储设备最终无法成功接入系统。
[0050] 上述NVMe存储设备缓慢插入的场景包括但不限于如下情况:
[0051] (1)、NVMe存储设备以缓慢的速度插入,使得接触顺序为3rd的管脚的接触时间,相较于接触顺序为1st的管脚的接触时间延后很多;
[0052] (2)、NVMe存储设备在插入过程中接触顺序为1st的管脚先接触,此时插入操作出现停顿,而导致接触顺序为3rd的管脚长时间未接触;
[0053] (3)、NVMe存储设备在插入过程中接触顺序为1st的管脚先接触,而接触顺序为3rd的管脚并未接触,此时用户通过紧拉手条的卡扣以使得NVMe存储设备完全插入,在这种情况下,也有可能导致接触顺序为3rd的管脚的接触时间,相较于接触顺序为1st的管脚的接触时间延后很多。
[0054] 2、NVMe存储设备缓慢拔出,并在未完全拔出的情况下又插回的场景
[0055] 在将NVMe存储设备从主机的槽位拔出的过程中,由于电源、时钟及PCIe端口的管脚为短针,电源、时钟及PCIe端口的管脚先断开,此时PCIe链路断开并触发下行端口控制(Downstream Port Containment,DPC),隔离NVMe存储设备并关闭PCIe端口。但是,由于P4管脚为长针,P4管脚依旧接触。如果继续拔出NVMe存储设备,则对系统无影响。如果此时停止拔出,并重新插回NVMe存储设备,由于此时在位信号并不会发生变化,进而使得系统不会上报插盘中断以触发执行热添加流程,NVMe存储设备无法重新成功接入系统。
[0056] 在现有技术中,由于NVMe存储设备的连接器中用于指示在位信号的管脚为长针,而用于指示电源信号、时钟信号及PCIe端口的信号的管脚为短针,导致在位信号并不能够准确反映出NVMe存储设备的插入或拔出状态。在本申请实施例中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或者使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0057] 下面,将结合上面所述的本申请实施例所涉及的共性方面,对本申请实施例做进一步详细说明。
[0058] 请参考图3,其示出了本申请一个实施例提供的连接器的示意图。该连接器用于提供PCIe通信接口将NVMe存储设备和计算机设备进行连接。可选地,该连接器为在《SFF-8639 Specification for Multifunction 12Gb/s 6X Unshielded Connector》、《PCISFF-8639 Module Specification》及《 2012SSD Form Factor Work Group,All rights reserved》等相关标准中定义的SFF-8639连接器。在本实施例中,以该连接器为公头连接器30为例进行介绍说明。如图3所示,公头连接器30包括第一管脚31、第二管脚32、第三管脚33与第四管脚34。
[0059] 第一管脚31用于指示NVMe存储设备的在位信号。第二管脚32用于指示NVMe存储设备的电源信号。第三管脚33用于指示NVMe存储设备的时钟信号。第四管脚34用于指示NVMe存储设备的PCIe端口的信号。
[0060] 可选地,当公头连接器30为SFF-8639连接器的公头时,公头连接器30包括P1至P15管脚、S1至S28管脚和E1至E25管脚,共计68个管脚。其中,用于指示NVMe存储设备的在位信号的管脚(也即第一管脚31)为P4管脚。用于指示NVMe存储设备的电源信号的管脚(也即第二管脚32)包括P8、P9、P14、P15、E3等管脚。用于指示NVMe存储设备的时钟信号的管脚(也即第三管脚33)包括E1、E2、E7、E8等管脚。用于指示NVMe存储设备的PCIe端口的信号的管脚(也即第四管脚34)包括S2、S3、S5、S6、S9、S10、S12、S13、S17、S18、S20、S21、S23、S24、S24、S27、E10、E11、E13、E14、E17、E18、E20、E21等管脚。此外,公头连接器30还包括具有其它功能的管脚,如用于指示复位信号的管脚、用于指示接地信号的管脚,等等。
[0061] 与现有技术所不同的是,在本申请实施例提供的一种可能的实施方案中,公头连接器30中第一管脚31、第二管脚32、第三管脚33与第四管脚34的长度相同。在本申请实施例中,通过改变公头连接器30中管脚的长度,使得公头连接器30中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0062] 在一个示例中,第一管脚31、第二管脚32、第三管脚33与第四管脚34均为短针(如图3所示)。以SFF-8639连接器为例,由于在现有技术中,SFF-8639连接器的公头中用于指示电源信号、时钟信号以及PCIe端口的信号的管脚均为短针,而用于指示在位信号的管脚(即P4管脚)为长针,因此仅需将P4管脚由长针改为短针,即可确保用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,使得需要改变长度的管脚的数量较少。
[0063] 在另一个示例中,第一管脚31、第二管脚32、第三管脚33与第四管脚34均为长针(图中未示出)。以SFF-8639连接器为例,由于在现有技术中,SFF-8639连接器的公头中用于指示电源信号、时钟信号以及PCIe端口的信号的管脚均为短针,而用于指示在位信号的管脚(即P4管脚)为长针,因此将上述用于指示电源信号、时钟信号以及PCIe端口的信号的管脚由短针改为长针,也能够确保用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同。
[0064] 需要说明的一点是,在本申请实施例中,对于任意两个管脚来说,这两个管脚的长度相同,可以是指这两个管脚的长度的取值完全一致,也可以是指这两个管脚的长度差值小于一预设阈值,该预设阈值可以是预先设定的经验值,该经验值保证这两个管脚的接触顺序属于一个级别即可,例如在两个管脚均为短针,且这两个管脚的长度的差值小于0.08mm的情况下,这两个管脚的接触顺序均为1st。
[0065] 在本申请实施例提供的另一种可能的实施方案中,公头连接器30中第一管脚31的长度不长于第二管脚32、第三管脚33与第四管脚34中的最短管脚的长度。例如,第一管脚31的长度与上述最短管脚的长度相同,或者比上述最短管脚的长度更短。
[0066] 可选地,第二管脚32、第三管脚33与第四管脚34均为短针,第一管脚32也为短针,公头连接器30中短针的长度的取值范围在4.55-0.08mm至4.55+0.08mm之间,假设第二管脚32、第三管脚33与第四管脚34中的最短管脚的长度为4.55mm,则第一管脚31的长度小于或等于4.55mm。
[0067] 通过改变公头连接器30中管脚的长度,使得公头连接器30中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,同样能够确保在位信号能准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0068] 另外,公头连接器30包含第一面与第二面,第一面和第二面相对,图3示出了公头连接器30的第一面30a。公头连接器30的第一面30a设置有限位结构35,限位结构35为凸台,在图3中,凸台以椭圆形虚线框示。结合参考图4,其示出了公头连接器30从插头一侧的简略侧视图,限位结构35(也即凸台)的长为4.85±0.05mm,高为2.25±0.08mm。
[0069] 如图3所示,第一管脚31位于公头连接器30的第一面30a的中部。上述中部是指第一管脚31与公头连接器30的第一面30a两端的管脚之间的距离相同或相近,并非限定第一管脚31与公头连接器30的第一面30a两端的管脚之间的距离必须相同,即并非限定第一管脚31位于公头连接器30的第一面30a的正中间。
[0070] 结合参考图5,其示出了公头连接器30的第一面30a的简略示意图,当公头连接器30为SFF-8639连接器的公头时,公头连接器30的第一面30a上设置有S1至S7管脚、E1至E6管脚和P1至P15管脚,共计28个管脚,上述28个管脚从公头连接器30的第一端开始,按照S1至S7管脚、E1至E6管脚和P1至P15管脚的顺序,逐个依次排列至公头连接器30的第二端;其中,E1至E6管脚设置于凸台上,S1至S7管脚位于凸台靠近于上述公头连接器30的第一端的一侧,P1至P15管脚位于凸台靠近于上述公头连接器30的第二端的一侧。公头连接器30的第二面上设置有E7至E16、S8至S28和E17至E25管脚,共计40个管脚,上述40个管脚从公头连接器
30的第一端开始,按照E7至E16、S8至S28和E17至E25管脚的顺序,逐个依次排列至公头连接器30的第二端。在上述管脚中,P4管脚用于指示NVMe存储设备的在位信号,也即第一管脚31为P4管脚。第一管脚31(也即P4管脚)设置于公头连接器30的第一面30a上,从公头连接器30的第一端开始计数的第17个管脚。
[0071] 可选地,第一管脚31与公头连接器30的第一面30a两端的管脚之间的距离分别是17.87mm和13.97mm。也即,如图5所示,第一管脚31(也即P4管脚)与公头连接器30的第一面
30a一端的第一边缘管脚(也即S1管脚)之间的距离为17.87mm,第一管脚31(也即P4管脚)与公头连接器30的第一面30a另一端的第二边缘管脚(也即P15管脚)之间的距离为13.97mm。
上述两个管脚之间的距离是指这两个管脚的簧片的中线位置之间的距离。
[0072] 另外,如图5所示,公头连接器30的管脚中,包括长针和短针,长针相较于短针更长,其长度差值大于或等于0.35mm。其中,长针的长度为4.90±0.08mm,短针的长度为4.55±0.08mm。也即,当第一管脚31(也即P4管脚)为短针时,第一管脚31(也即P4管脚)的长度为4.55±0.08mm。当第一管脚31(也即P4管脚)为长针时,第一管脚31(也即P4管脚)的长度为
4.90±0.08mm。
[0073] 本申请实施例提供的方案中,通过改变公头连接器30中管脚的长度,使得公头连接器30中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或者使得公头连接器30中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0074] 请参考图6,其示出了本申请另一个实施例提供的连接器的示意图。该连接器用于提供PCIe通信接口将NVMe存储设备和计算机设备进行连接。可选地,该连接器为在《SFF-8639 Specification for Multifunction 12Gb/s 6X Unshielded Connector》、《PCISFF-8639 Module Specification》及《 2012SSD Form Factor Work 
Group,All rights reserved》等相关标准中定义的SFF-8639连接器。在本实施例中,以该连接器为母头连接器40为例进行介绍说明。如图6所示,母头连接器40包括第一管脚41、第二管脚42、第三管脚43与第四管脚44。
[0075] 第一管脚41用于指示NVMe存储设备的在位信号。第二管脚42用于指示NVMe存储设备的电源信号。第三管脚43用于指示NVMe存储设备的时钟信号。第四管脚44用于指示NVMe存储设备的PCIe端口的信号。
[0076] 可选地,当母头连接器40为SFF-8639连接器的母头时,母头连接器40包括P1至P15管脚、S1至S28管脚和E1至E25管脚,共计68个管脚。其中,用于指示NVMe存储设备的在位信号的管脚(也即第一管脚41)为P4管脚。用于指示NVMe存储设备的电源信号的管脚(也即第二管脚42)包括P8、P9、P14、P15、E3等管脚。用于指示NVMe存储设备的时钟信号的管脚(也即第三管脚43)包括E1、E2、E7、E8等管脚。用于指示NVMe存储设备的PCIe端口的信号的管脚(也即第四管脚44)包括S2、S3、S5、S6、S9、S10、S12、S13、S17、S18、S20、S21、S23、S24、S24、S27、E10、E11、E13、E14、E17、E18、E20、E21等管脚。此外,母头连接器40还包括具有其它功能的管脚,如用于指示复位信号的管脚、用于指示接地信号的管脚,等等。
[0077] 与现有技术所不同的是,在本申请实施例提供的一种可能的实施方案中,母头连接器40中第一管脚41、第二管脚42、第三管脚43与第四管脚44的长度相同。在本申请实施例中,通过改变母头连接器40中管脚的长度,使得母头连接器40中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0078] 在一个示例中,第一管脚41、第二管脚42、第三管脚43与第四管脚44均为短针(如图6所示)。以SFF-8639连接器为例,由于在现有技术中,SFF-8639连接器的母头中用于指示电源信号、时钟信号以及PCIe端口的信号的管脚均为短针,而用于指示在位信号的管脚(即P4管脚)为长针,因此仅需将P4管脚由长针改为短针,即可确保用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,使得需要改变长度的管脚的数量较少。
[0079] 在另一个示例中,第一管脚41、第二管脚42、第三管脚43与第四管脚44均为长针(图中未示出)。以SFF-8639连接器为例,由于在现有技术中,SFF-8639连接器的母头中用于指示电源信号、时钟信号以及PCIe端口的信号的管脚均为短针,而用于指示在位信号的管脚(即P4管脚)为长针,因此将上述用于指示电源信号、时钟信号以及PCIe端口的信号的管脚由短针改为长针,也能够确保用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同。
[0080] 需要说明的一点是,在本申请实施例中,对于任意两个管脚来说,这两个管脚的长度相同,可以是指这两个管脚的长度的取值完全一致,也可以是指这两个管脚的长度差值小于一预设阈值,该预设阈值可以是预先设定的经验值,该经验值保证这两个管脚的接触顺序属于一个级别即可,例如在两个管脚均为短针,且这两个管脚的长度的差值小于0.08mm的情况下,这两个管脚的接触顺序均为3rd。
[0081] 在本申请实施例提供的另一种可能的实施方案中,母头连接器40中第一管脚41的长度不长于第二管脚42、第三管脚43与第四管脚44中的最短管脚的长度。例如,第一管脚41的长度与上述最短管脚的长度相同,或者比上述最短管脚的长度更短。
[0082] 可选地,第二管脚42、第三管脚43与第四管脚44均为短针,第一管脚42也为短针,母头连接器40中与插槽侧边沿之间的距离越小的管脚长度越长。母头连接器40中长针与插槽侧边沿之间的距离的取值范围在1.40-0.15mm至1.40+0.15mm之间,母头连接器40中短针与插槽侧边沿之间的距离的取值范围在1.90-0.15mm至1.90+0.15mm之间。假设第二管脚42、第三管脚43与第四管脚44中的最短管脚与插槽侧边沿之间的距离为2.00mm,则第一管脚41与插槽侧边沿之间的距离大于或等于2.00mm。
[0083] 通过改变母头连接器40中管脚的长度,使得母头连接器40中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,同样能够确保在位信号能准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0084] 另外,母头连接器40包含第一面与第二面,第一面和第二面相对,图6示出了母头连接器40的第一面40a。母头连接器40的第一面40a设置有限位结构45,限位结构45为凹槽,在图6中,凹槽以椭圆形虚线框示。结合参考图7,其示出了母头连接器40从插槽一侧的简略侧视图,限位结构45(也即凹槽)的长为4.96±0.05mm,高为2.40±0.08mm。
[0085] 如图6所示,第一管脚41位于母头连接器40的第一面40a的中部。上述中部是指第一管脚41与母头连接器40的第一面40a两端的管脚之间的距离相同或相近,并非限定第一管脚41与母头连接器40的第一面40a两端的管脚之间的距离必须相同,即并非限定第一管脚41位于母头连接器40的第一面40a的正中间。
[0086] 结合参考图8,其示出了母头连接器40的另一示意图,当母头连接器40为SFF-8639连接器的母头时,母头连接器40的第一面40a上设置有S1至S7管脚、E1至E6管脚和P1至P15管脚,共计28个管脚,上述28个管脚从母头连接器40的第一端开始,按照S1至S7管脚、E1至E6管脚和P1至P15管脚的顺序,逐个依次排列至母头连接器40的第二端;其中,E1至E6管脚设置于凹槽位置处,S1至S7管脚位于凹槽靠近于上述母头连接器40的第一端的一侧,P1至P15管脚位于凹槽靠近于上述母头连接器40的第二端的一侧。母头连接器40的第二面上设置有E7至E16、S8至S28和E17至E25管脚,共计40个管脚,上述40个管脚从母头连接器40的第一端开始,按照E7至E16、S8至S28和E17至E25管脚的顺序,逐个依次排列至母头连接器40的第二端。在上述管脚中,P4管脚用于指示NVMe存储设备的在位信号,也即第一管脚41为P4管脚。第一管脚41(也即P4管脚)设置于母头连接器40的第一面40a上,从母头连接器40的第一端开始计数的第17个管脚。
[0087] 可选地,第一管脚41与母头连接器40的第一面40a两端的管脚之间的距离分别是17.87mm和13.97mm。也即,如图8所示,第一管脚41(也即P4管脚)与母头连接器40的第一面
40a一端的第一边缘管脚(也即S1管脚)之间的距离为17.87mm,第一管脚41(也即P4管脚)与母头连接器40的第一面40a另一端的第二边缘管脚(也即P15管脚)之间的距离为13.97mm。
上述两个管脚之间的距离是指这两个管脚的金手指的中线位置之间的距离。
[0088] 另外,母头连接器40的管脚中,包括长针和短针,长针相较于短针更长,其长度差值大于或等于0.35mm。其中,长针与母头连接器40的插槽侧边沿之间的距离为1.40±0.15mm,短针与母头连接器40的插槽侧边沿之间的距离为1.90±0.15mm。也即,当第一管脚
41(也即P4管脚)为短针时,第一管脚41(也即P4管脚)与母头连接器40的插槽侧边沿之间的距离为1.90±0.15mm。当第一管脚41(也即P4管脚)为长针时,第一管脚41(也即P4管脚)与母头连接器40的插槽侧边沿之间的距离为1.40±0.15mm。
[0089] 本申请实施例提供的方案中,通过改变母头连接器40中管脚的长度,使得母头连接器40中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或者使得母头连接器40中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0090] 请参考图9,其示出了本申请一实施例提供的存储系统的示意图。该存储系统包括:NVMe存储设备50和计算机设备60。
[0091] 可选地,NVMe存储设备50为一个或多个。NVMe存储设备50可以是NVMe SSD。计算机设备60可以是计算机、存储阵列(或称为阵列柜)或服务器,计算机设备60可称为主机。计算机设备60上形成有至少一个槽位,每一个槽位可供插入一个NVMe存储设备50。NVMe存储设备50与计算机设备60之间通过上文实施例提供的连接器插接。可选地,该连接器为在《SFF-8639 Specification for Multifunction 12Gb/s 6X Unshielded Connector》、《PCISFF-8639 Module Specification》及《 2012SSD Form Factor Work 
Group,All rights reserved》等相关标准中定义的SFF-8639连接器。
[0092] 在下述图10和图11实施例中,分别对NVMe存储设备50和计算机设备60进行介绍说明。
[0093] 请参考图10,其示出了本申请一实施例提供的NVMe存储设备50的结构方框图。该NVMe存储设备50包括:控制器51、存储器52和连接器53。
[0094] 控制器51分别与存储器52和连接器53电性连接。其中,控制器51主要负责与计算机设备60之间的数据通信,用于根据计算机设备60的读写请求,将数据从存储器52读出或者将数据写入存储器52。控制器51与计算机设备60之间通过PCIe总线进行通信。存储器62用于存储数据。可选地,存储器62为Flash存储器或者DRAM。
[0095] 可选地,NVMe存储设备50的尺寸包括但不限于3.5英寸、2.5英寸和1.8英寸。
[0096] 可选地,NVMe存储设备50的连接器53为公头连接器,例如SFF-8639连接器的公头。有关公头连接器的介绍说明可参见上文图3实施例,本实施例对此不再赘述。
[0097] 可选地,供NVMe存储设备50插入的计算机设备60也包括连接器,NVMe存储设备50的连接器53和计算机设备60的连接器插接。在通常情况下,NVMe存储设备50的连接器53为公头连接器且计算机设备60的连接器为母头连接器。在其它可能的示例中,NVMe存储设备50的连接器53为母头连接器且计算机设备60的连接器为公头连接器,本申请实施例对此不作限定。
[0098] 当NVMe存储设备50的连接器53和计算机设备60的连接器中相接触的两个管脚均为长针时,这两个管脚的接触顺序为1st,即这两个管脚的接触时间最早;当NVMe存储设备50的连接器53和计算机设备60的连接器中相接触的两个管脚中一个为长针且另一个为短针时,这两个管脚的接触顺序为2nd,即接触时间晚于接触顺序为1st的管脚的接触时间;当NVMe存储设备50的连接器53和计算机设备60的连接器中相接触的两个管脚均为短针时,这两个管脚的接触顺序为3rd,即接触时间晚于接触顺序为2nd的管脚的接触时间。在一种可能的情况下,当NVMe存储设备50的连接器53中用于指示在位信号的第一管脚为短针,且计算机设备60的连接器中用于指示在位信号的第一管脚也为短针时,这两个第一管脚的接触顺序为3rd。
[0099] 相较于现有技术,本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,例如将公头连接器和母头连接器中的第一管脚均由长针改为短针,使得第一管脚的接触顺序由1st变为3rd。在上文提及的两种插拔的场景下,均能够确保NVMe存储设备50成功接入系统。具体来讲:
[0100] 1、NVMe存储设备50缓慢插入的场景
[0101] 在将NVMe存储设备50插入计算机设备60的槽位的过程中,由于第一管脚(也即SFF-8639连接器的P4管脚)与电源、时钟及PCIe端口的管脚长度相同,当第一管脚接触时,电源、时钟及PCIe端口的管脚也相应接触。此时,在位信号IFDET#由1变为0,表示NVMe存储设备50在位。系统在检测到上述在位信号IFDET#由1变为0时,上报插盘中断,系统中的PCIe热插拔控制器先后打开该槽位的电源、时钟及PCIe端口,开始热添加流程。由于此时电源、时钟及PCIe端口的管脚已经接触,因此热添加流程会执行成功,使得NVMe存储设备50成功接入系统。
[0102] 2、NVMe存储设备50缓慢拔出,并在未完全拔出的情况下又插回的场景
[0103] 在将NVMe存储设备50从计算机设备60的槽位拔出的过程中,由于第一管脚(也即SFF-8639连接器的P4管脚)与电源、时钟及PCIe端口的管脚长度相同,当电源、时钟及PCIe端口的管脚断开时,第一管脚也相应断开,在位信号IFDET#会由0变为1,表示NVMe存储设备50不在位。此时,PCIe链路断开并触发DPC,隔离NVMe存储设备50并关闭PCIe端口。如果在NVMe存储设备50未完全拔出的情况下停止拔出,并重新插回NVMe存储设备50,在位信号IFDET#会由1变为0,表示NVMe存储设备50在位。系统在检测到上述在位信号IFDET#由1变为
0时,上报插盘中断,系统中的PCIe热插拔控制器先后打开该槽位的电源、时钟及PCIe端口,开始热添加流程。在热添加流程执行完成之后,NVMe存储设备50重新成功接入系统。
[0104] 本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0105] 请参考图11,其示出了本申请一实施例提供的计算机设备60的结构方框图。计算机设备60包括:处理模块61和连接器62。
[0106] 处理模块61与连接器62电性连接。处理模块61用于对计算机设备60的动作进行控制管理,例如向NVMe存储设备50发送读写请求,以请求从NVMe存储设备50中读取数据或者将数据写入NVMe存储设备50中。处理模块61与NVMe存储设备50之间通过PCIe总线进行通信。
[0107] 可选地,计算机设备60的连接器62为母头连接器,例如SFF-8639连接器的母头。有关母头连接器的介绍说明可参见上文图6实施例,本实施例对此不再赘述。
[0108] 可选地,插入计算机设备60的NVMe存储设备50也包括连接器,NVMe存储设备50的连接器和计算机设备60的连接器62插接。在通常情况下,NVMe存储设备50的连接器为公头连接器且计算机设备60的连接器62为母头连接器。在其它可能的示例中,NVMe存储设备50的连接器为母头连接器且计算机设备60的连接器62为公头连接器,本申请实施例对此不作限定。
[0109] 当NVMe存储设备50的连接器和计算机设备60的连接器62中相接触的两个管脚均为长针时,这两个管脚的接触顺序为1st;当NVMe存储设备50的连接器和计算机设备60的连接器62中相接触的两个管脚中一个为长针且另一个为短针时,这两个管脚的接触顺序为2nd;当NVMe存储设备50的连接器和计算机设备60的连接器62中相接触的两个管脚均为短针时,这两个管脚的接触顺序为3rd。在一种可能的情况下,当NVMe存储设备50的连接器中用于指示在位信号的第一管脚为短针,且计算机设备60的连接器62中用于指示在位信号的第一管脚也为短针时,这两个第一管脚的接触顺序为3rd。
[0110] 相较于现有技术,本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,例如将公头连接器和母头连接器中的第一管脚均由长针改为短针,使得第一管脚的接触顺序由1st变为3rd。在上文提及的两种插拔的场景下,均能够确保NVMe存储设备50成功接入系统。具体分析可参见上文图10实施例中的介绍说明,此处不再赘述。
[0111] 在一个示例中,如图12所示,处理模块61包括CPU 61a。CPU 61a与连接器62电性连接,例如通过PCIe总线电性连接。CPU 61a用于对计算机设备60的动作进行控制管理,其功能主要是解释计算机指令以及处理计算机软件中的数据。
[0112] 在另一个示例中,如图13所示,处理模块61包括CPU 61a和PCIe交换芯片61b。PCIe交换芯片61b包括一个输入端口和N个输出端口,N为正整数。CPU 61a与输入端口电性连接,例如通过PCIe总线电性连接。N个输出端口中的每一个输出端口用于与1个连接器62电性连接,例如通过PCIe总线电性连接。由于PCIe交换芯片61b的存在,使得CPU 61a能够支持同时与多个NVMe存储设备50通信。
[0113] 可选地,处理模块61还包括基板管理控制器(Baseboard  Management Controller,BMC)和复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)。
BMC和CPLD主要用于对NVMe存储设备50的电源、时钟、在位等信号进行辅助管理。如果CPU 
61a或者PCIe交换芯片61b中集成有上述BMC和CPLD的功能,则BMC和CPLD可以省去。
[0114] 本申请实施例提供的方案中,通过改变连接器中管脚的长度,使得连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度相同,或使得连接器中用于指示在位信号的管脚的长度不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,从而使得在位信号能够更为准确地反映出NVMe存储设备的插入或拔出状态,NVMe存储设备在插拔的场景下,避免出现无法成功接入系统的问题。
[0115] 需要说明的一点是,在不改变现有的SFF-8639连接器中用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度的情况下(也即用于指示电源信号、时钟信号及PCIe端口的信号的管脚为短针的情况下),若将NVMe存储设备所包括的SFF-8639连接器中用于指示在位信号的管脚(也即P4管脚)由长针改为短针,且将计算机设备所包括的SFF-8639连接器中用于指示在位信号的管脚(也即P4管脚)也由长针改为短针,则上述两个P4管脚的接触顺序为3rd,能够避免在插拔的场景下出现无法成功接入系统的问题。在其它可能的实施例中,也可以将NVMe存储设备所包括的SFF-8639连接器中的P4管脚由长针改为短针,而计算机设备所包括的SFF-8639连接器中的P4管脚仍然为长针;或者,将计算机设备所包括的SFF-8639连接器中的P4管脚由长针改为短针,而NVMe存储设备所包括的SFF-8639连接器中的P4管脚仍然为长针,这样,上述两个P4管脚的接触顺序为2nd,在插拔的场景下,相较于现有技术能够在一定程度上减少出现无法成功接入系统的问题。
[0116] 在计算机设备60的处理模块61中,除了包括上文介绍的CPU 61a、PCIe交换芯片61b等底层硬件之外,还包括如下软件:设备管理驱动、PCIe驱动和NVMe驱动。其中,设备管理驱动主要用于上报在位信号,支持底层硬件与PCIe驱动之间的数据中转。PCIe驱动主要用于执行热插拔流程(包括热添加流程和热移除流程)。NVMe驱动主要用于支持NVMe存储设备50的正常运行。上述软件可以存储在计算机设备60的存储器中,由CPU 61a加载并执行。
[0117] 下面,通过图14和图15实施例,对将连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度调整为相同,或者将连接器中用于指示在位信号的管脚的长度调整为不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度之后,相应的热添加流程和热移除流程分别进行介绍说明。
[0118] 请参考图14,其示出了热添加流程的示意图。该热添加流程可以包括如下步骤:
[0119] 步骤1401,底层硬件在检测到NVMe存储设备50插入槽位时,发出中断;
[0120] 底层硬件在检测到在位信号IFDET#由1变为0时,说明NVMe存储设备50插入槽位,发出中断。
[0121] 步骤1402,底层硬件向设备管理驱动发送热添加事件;
[0122] 步骤1403,设备管理驱动点亮热插拔的指示灯;
[0123] 步骤1404,设备管理驱动向PCIe驱动发送热添加事件;
[0124] 可选地,设备管理驱动在接收到热添加事件之后,检测该热添加事件是否合法;若合法,则执行上述步骤1403和1404;若不合法,则结束流程。
[0125] 另外,上述步骤1403可以在步骤1404之前执行,也可以在步骤1404之后执行,或者与步骤1404同时执行,本申请实施例对此不作限定。
[0126] 步骤1405,PCIe驱动在接收到热添加事件之后,向设备管理驱动发送上电通知;
[0127] 上电通知用于告知设备管理驱动,PCIe驱动会对NVMe存储设备50所插入的槽位上电。
[0128] 步骤1406,PCIe驱动通过板级支持包(Board Support Package,BSP)对NVMe存储设备50所插入的槽位上电;
[0129] 相应地,底层硬件点亮上述NVMe存储设备50所插入的槽位的电源灯。
[0130] 上述步骤1405可以在步骤1406之前执行,也可以在步骤1406之后执行,或者与步骤1406同时执行,本申请实施例对此不作限定。
[0131] 步骤1407,PCIe驱动检测链路状态,该链路状态用于指示PCIe链路是否建链成功;
[0132] 可选地,PCIe驱动向底层硬件轮询链路状态。该轮询过程的持续时长可根据实际需求预先设定,例如2秒;或者,该轮询过程的轮询次数可根据实际需求预先设定,例如3次。
[0133] 步骤1408,PCIe驱动在检测到建链成功之后,为NVMe存储设备50分配资源;
[0134] 例如,上述资源包括内存地址空间。
[0135] 步骤1409,PCIe驱动调用NVMe驱动;
[0136] 步骤1410,NVMe驱动在被调用之后,初始化NVMe存储设备50;
[0137] 例如,对NVMe存储设备50的容量、分区等进行初始化。
[0138] 步骤1411,PCIe驱动开启先进错误报告(Advanced Error Reporting,AER)功能,热添加流程结束。
[0139] 请参考图15,其示出了热移除流程的示意图。该热移除流程可以包括如下步骤:
[0140] 步骤1501,底层硬件在检测到NVMe存储设备50从槽位拔出时,发出DPC中断,并控制NVMe存储设备50进入隔离状态;
[0141] 底层硬件在检测到在位信号IFDET#由0变为1时,或者在检测到PCIe链路断开时,说明NVMe存储设备50从槽位拔出,发出DPC中断。在本申请实施例中,由于将连接器中用于指示在位信号、电源信号、时钟信号及PCIe端口的信号的管脚的长度调整为相同,或将连接器中用于指示在位信号的管脚的长度调整为不长于用于指示电源信号、时钟信号及PCIe端口的信号的管脚的长度,因此在将NVMe存储设备50从槽位拔出的过程中,在位信号发生变化与PCIe链路断开基本同时发生,或者在位信号发生变化先于PCIe链路断开,底层硬件可以通过检测上述任一事件(即在位信号发生变化或者PCIe链路断开)发生以确定NVMe存储设备50从槽位拔出。
[0142] 另外,控制NVMe存储设备50进入隔离状态的目的是为了保护系统不被热移除事件影响,避免出现超时、挂死等异常错误。
[0143] 步骤1502,底层硬件向PCIe驱动发送DPC事件;
[0144] 步骤1503,PCIe驱动关闭AER功能,并清除NVMe存储设备50对应的端口的AER错误;
[0145] 可选地,PCIe驱动在接收到DPC事件之后,检测该DPC事件是否合法;若合法,则关闭AER功能;若不合法,则结束流程。
[0146] 步骤1504,PCIe驱动向NVMe驱动发送业务中断通知;
[0147] 步骤1505,NVMe驱动在接收到业务中断通知之后,停止运行业务;
[0148] 步骤1506,PCIe驱动在确认业务报文已清理完成之后,释放隔离状态;
[0149] 步骤1507,PCIe驱动检测链路状态;
[0150] 可选地,PCIe驱动向底层硬件轮询链路状态。该轮询过程的持续时长可根据实际需求预先设定,例如2秒;或者,该轮询过程的轮询次数可根据实际需求预先设定,例如3次。
[0151] 步骤1508,PCIe驱动在确定链路无法重建之后,向设备管理驱动发送热移除事件;
[0152] 步骤1509,设备管理驱动在接收到热移除事件之后,点亮热插拔的指示灯;
[0153] 步骤1510,设备管理驱动向PCIe驱动发送热移除确认事件;
[0154] 步骤1511,PCIe驱动接收到热移除确认事件之后,向设备管理驱动发送下电通知;
[0155] 下电通知用于告知设备管理驱动,PCIe驱动会对NVMe存储设备50所插入的槽位下电。
[0156] 步骤1512,PCIe驱动移除NVMe存储设备50;
[0157] 步骤1513,PCIe驱动删除NVMe存储设备50的资源;
[0158] 例如,上述资源包括内存地址空间。
[0159] 步骤1514,PCIe驱动调用NVMe驱动;
[0160] 步骤1515,NVMe驱动在被调用之后,将NVMe存储设备50移除;
[0161] 步骤1516,PCIe驱动通过BSP对NVMe存储设备50所插入的槽位下电;
[0162] 相应地,底层硬件熄灭上述NVMe存储设备50所插入的槽位的电源灯。
[0163] 步骤1517,PCIe驱动向设备管理驱动发送下电完成事件;
[0164] 步骤1518,设备管理驱动关闭热插拔的指示灯,热移除流程结束。
[0165] 应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本文中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的对象。
[0166] 以上所述的具体实施方式,对本申请实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请实施例的具体实施方式而已,并不用于限定本申请实施例的保护范围,凡在本申请实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请实施例的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈