CN113868181B - 一种存储设备pcie链路协商方法、系统、设备及介质 - Google Patents
一种存储设备pcie链路协商方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN113868181B CN113868181B CN202111157608.1A CN202111157608A CN113868181B CN 113868181 B CN113868181 B CN 113868181B CN 202111157608 A CN202111157608 A CN 202111157608A CN 113868181 B CN113868181 B CN 113868181B
- Authority
- CN
- China
- Prior art keywords
- port
- hard disk
- switch chip
- state
- state machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000004044 response Effects 0.000 claims abstract description 24
- 238000012544 monitoring process Methods 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 9
- 230000002860 competitive effect Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 3
- 230000002159 abnormal effect Effects 0.000 abstract description 16
- 238000004088 simulation Methods 0.000 abstract description 3
- 230000005856 abnormality Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Power Sources (AREA)
Abstract
一种存储设备PCIE链路协商方法,包括:实时监控Switch芯片各Port的状态机的状态,判断Port上是否存在硬盘接入;响应于状态为非预定状态,且存在硬盘接入,将Port上的硬盘下电;响应于硬盘下电,Switch芯片对Port依次进行Unbind和bind操作;响应于操作完成,将Port上的硬盘上电,Switch芯片对Port上的硬盘重新协商链路。通过该方法,通过监控Switch芯片上Port的状态机的状态判断其是否正常工作,并在异常时通过在局部模拟设备重启,将Switch芯片上的异常Port上的PCIE设备重新挂载到Switch芯片上,实现Switch芯片到PCIE链路的重新协商连接。
Description
技术领域
本发明属于计算机领域,具体涉及一种存储设备PCIE链路协商方法、系统、设备及介质。
背景技术
随着信息科技的发展,存储系统的应用需求越来越大,日益增加的业务量对存储系统的稳定性,可靠性,安全性,传输效率等方面要求越来越高。存储支持的盘由原来的机械盘到SAS盘,再到现在的NVME盘,传输效率越来越高。NVME盘是走的pcie链路,一般连接在switch芯片上,支持暴力热插拔,而在热插拔过程,不同的人,不同的操作,难免出现pcie链路协商错误的问题。一般情况下,只能通过复位switch芯片和对盘进行热拔插操作让其进行重新协商链路,识别硬盘。这样就造成了很多的不便,而且复位switch芯片会影响其他正常使用的硬盘,影响业务。在这种情况下能够不拔插硬盘和不对switch芯片进行复位的一种自动修复链路的方法是非常重要的。
因此,亟需一种方案能够在这种情况下将switch的状态机恢复的初始状态detect,从而保证NVME盘链路协商在出现故障时,不进行人工干预即可进行重新协商链路。
发明内容
为解决以上问题,本发明的第一方面提出了一种存储设备PCIE链路协商方法,其包括:
实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的一些实施方式中,方法由BMC来执行。
在本发明的一些实施方式中,实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入,包括:
将BMC与所述Switch芯片相连,并获取所述Switch芯片上各Port的状态机的状态,同时通过CPLD检测各Port对应的硬盘接口上是否存在硬盘。
在本发明的一些实施方式中,响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电,包括:
若BMC检测到所述Port的状态机的状态为非L2状态,且所述Port上存在硬盘接入,则BMC控制所述CPLD将所述硬盘断电,并向所述Switch芯片发送重新绑定指令。
在本发明的一些实施方式中,响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路,包括:
响应于所述Unbind和Bind操作完成,BMC控制CPLD将所述Port上的硬盘上电,并将上电完成信息发送到所述Switch芯片。
在本发明的一些实施方式中,方法由Switch芯片执行,并且包括:
Switch芯片检测所属的各Port的状态机的状态,并通过CPLD获取所述各Port的上的硬盘是否在位;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,Switch芯片通过CPLD将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,Switch芯片通过CPLD将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的一些实施方式中,所述方法能够由BMC和Switch芯片执行,并且所述方法还包括:
所述BMC和所述Switch芯片采用竞争的方式执行所述方法;以及
响应于所述Switch芯片在预定时间内无法执行上述方法,由BMC执行上述方法。
本发明的另一方面还提出了一种存储设备PCIE链路协商系统,包括:
检测模块,所述检测模块配置用于实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
第一控制模块,所述第一控制模块配置用于响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
解绑模块,所述解绑模块配置用于响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
第二控制模块,所述第二控制模块配置用于响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
本发明的又一方面还提出了一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。
本发明的再一方面还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。通过本发明提出的一种存储设备PCIE链路协商方法,通过监控Switch芯片上的Port的状态机的状态判断其是否正常工作,并在其异常时通过在局部模拟设备重启的方式,将Switch芯片上的异常Port上的PCIE设备重新挂载到Switch芯片上,实现Switch芯片到PCIE链路的重新协商连接。有效解决计算机上因Switch芯片上的Port异常导致的PCIE链路异常。并且可在计算机设备不开机的状态下完成,提高了计算机设备的稳定性与健壮性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种存储设备PCIE链路协商方法的流程图;
图2为本发明实施例提供的一种存储设备PCIE链路协商系统的结构图;
图3为本发明实施例提供的一种计算机设备的结构示意图;
图4为本发明实施例提供的一种计算机可读存储介质的结构示意图。
具体实施方式
使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
如图1所示,本发明提出了一种存储设备PCIE链路协商方法,其包括:
步骤S1、实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
步骤S2、响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
步骤S3、响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
步骤S4、响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的实施例中,在步骤S1中,为了准确定位出现问题的PCIE链路属于哪一条线路,需要获取到Switch芯片中的各个Port的状态机的状态,需要说明的是,本发明所述的状态机并不是实物或者某个Port的管理器,而是软件层面的一种Port的状态表示体。通过Switch芯片获取Switch芯片上的各个Port的状态,并对各个Port的状态机进行分析,判断哪一个Port的端口出现异常。并且同时获取Switch芯片的多个Port所连接的多条PCIE设备的Slot上是否有NVME硬盘接入。
在步骤S2中,所谓Port的状态机异常是指该Port的状态机的状态不是处于特定的状态,在本实施例中是指Switch芯片上的Port的状态机不是L2状态,也即只要Switch芯片上的Port的状态机的状态只要不是L2状态,则认为该Port的状态机异常。具体地,读取Switch芯片上的各个Port的状态机的状态,将其与L2状态的值或特征码进行对比,不一致则说明该Port异常。常见的状态机的状态包括:Detect,Polling,Configuration,Recovery,L0,L0s,L1,L2,Hot Reset,Loopback,Disable。在步骤S2中只判断其状态是否为L2状态。若某Port的状态机的状态为L2,且该Port对应有NVME硬盘接入,则将该NVME硬盘断电。
在步骤S3中,在异常的Port对应的NVME硬盘断电之后,Switch芯片则对异常的Port进行Unbind操作,即对该Port进行解绑;在Unbind完成后再进行bind操作,即重新绑定。即将Port的原有的链路信息删除重新初始化该Port链路。
在步骤S4中,在步骤S3中的对NVME硬盘的对应的Port的Unbind和bind完成之后,控制该Port对应的NVME硬盘进行重新上电,Switch芯片重新与NVME硬盘建立连接并重新协商链路。
在本发明的一些实施方式中,方法可以由BMC来执行。
在本实施例中,本发明所提出的上述方法过程可以在BMC中开发完成,并由BMC对Switch芯片进行监测及发送相应的指令。
在本发明的一些实施方式中,实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入,包括:
将BMC与所述Switch芯片相连,并获取所述Switch芯片上各Port的状态机的状态,同时通过CPLD检测各Port对应的硬盘接口上是否存在硬盘。
在本实施例中,为了获取Switch芯片的运行状态或运行信息,以及向Switch芯片发送相应的控制指令,BMC与Switch连接通信,可通过I2C总线的方式相连,也可以其他数据线路的方式连接。为了能够有效控制与Switch芯片的各个Port相连的NVME硬盘的上下电。BMC则需要与CPLD相连,并从CPLD上获取对应的NVME硬盘的在位状态及上下电状态,并且在适当的时候通过CPLD对NVME硬盘进行上下电。
在本实施例中,通过BMC实现实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入,需要BMC分别从Switch芯片和CPLD上获取Port的状态机的状态,以及判断Port对应的NVME接口上是否有NVME硬盘接入。
在本发明的一些实施方式中,响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电,包括:
若BMC检测到所述Port的状态机的状态为非L2状态,且所述Port上存在硬盘接入,则BMC控制所述CPLD将所述硬盘断电,并向所述Switch芯片发送重新绑定指令。
在本实施例中,如果BMC从Switch芯片获取到的Switch芯片上某Port的状态机的状态非L2,即上述其他状态中的任意一个,且该Port对应的NVME硬盘接口有NVME硬盘接入,则为了该Switch芯片的Port的状态,需要对该Port连接的链路进行重新协商。具体地,BMC首先通知Switch芯片断开该Port与该Port对应的NVME硬盘的连接,让该NVME硬盘的写入及其他有影响数据或影响NVME硬盘状态的操作终止。进一步,BMC通过CPLD对该NVME硬盘对应的供电电路进行断电。在该NVME硬盘断电之后,BMC再向Switch芯片发送重新绑定Port的指令。
在本发明的实施例中,Switch芯片在接收到BMC发送的重新绑定Port指令后,对Port进行Unbind和Bind操作。
在本发明的一些实施方式中,响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路,包括:
响应于所述Unbind和Bind操作完成,BMC控制CPLD将所述Port上的硬盘上电,并将上电完成信息发送到所述Switch芯片。
在本实施例中,当Switch芯片完成对异常Port的Unbind和Bind操作之后,将完成信息发送给BMC,或者由BMC实时监测Switch芯片的运行状态,在检测到Switch芯片完成对异常Port的Unbind和Bind之后,将通知CPLD对该异常Port所对应的NVME硬盘进行上电,启动该NVME硬盘。NVME硬盘上电后将与Switch芯片自动协商链路,完成对异常链路的修复操作。
在本发明的一些实施方式中,方法可由Switch芯片执行,包括:
Switch芯片检测所属的各Port的状态机的状态,并通过CPLD获取所述各Port的上的硬盘是否在位;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,Switch芯片通过CPLD将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,Switch芯片通过CPLD将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本实施例中,由于现有的大多数Switch芯片具备可自主编程的功能,即具备一定的可编程能力,本发明所提出的存储设备PCIE链路协商方法可由Switch芯片执行。具体地,Switch芯片对其各个Port的状态机的状态进行监测,判断各个Port的状态机的状态是否处于L2状态,若某Port的状态机的状态不是L2状态,则通过CPLD获取该Port的对应的NVME的硬盘接口上是否有NVME硬盘接入。
进一步,如果该NVME硬盘接口存在NVME硬盘接入,则通过CPLD对该硬盘下电,在下电之前Switch芯片需要该NVME断开数据连接及其他控制指令。然后Switch芯片则对自身的Port进行Unbind和Bind操作。在Unbind和Bind完成之后。Switch芯片再通过CPLD对该Port对应的NVME硬盘进行上电,并与该NVME进行链路协商,进一步实现对异常的PCIE链路进行重新协商修复的方法。
在本发明的一些实施方式中,所述方法能够由BMC和Switch芯片执行,并且方法还包括:
所述BMC和所述Switch芯片采用竞争的方式执行所述方法;以及
响应于所述Switch芯片在预定时间内无法执行上述方法,由BMC执行上述方法。
在本实施例中,本发明提出的存储设备PCIE链路协商方法可同时由BMC和Switch芯片同时以竞争的方式执行,即Switch芯片和BMC同时具备存储设备PCIE链路协商方法的相关程序。
具体地,在本实施中,在BMC中维护一个流程表,在检测到Switch芯片的Port的状态机的状态处于非L2状态时,BMC激活流程表,并将本发明存储设备PCIE链路协商方法的步骤作为流程表的各个节点,并实时监测Switch芯片上的该Port状态机的状态,若在5秒内Switch芯片没有执行相关步骤,则BMC向Switch或CPLD发送相应的指令控制Switch芯片和CPLD完成预定的方法步骤流程。例如,在检测到Switch芯片中的某个Port存在异常,而在5秒内Switch芯片并未对该Port执行Unbind和Bind操作,则BMC向Switch芯片发送Unbind和Bind的指令,控制其对异常的Port进行Unbind和Bind操作。并且在Unbind和Bind完成后则将BMC中的流程表对应的流程节点进行标记已完成,然后重新对后续的流程节点进行监控。同样如果在5秒之后Switch芯片依然没有向CPLD发送断开该异常Port对应的NVME硬盘的供电,则BMC向Switch发送断开指令,并向CPLD发送对对应的NVME硬盘的下电指令。
通过本发明提出的一种存储设备PCIE链路协商方法,通过监控Switch芯片上的Port的状态机的状态判断其是否正常工作,并在其异常时通过在局部模拟设备重启的方式,将Switch芯片上的异常Port上的PCIE设备重新挂载到Switch芯片上,实现Switch芯片到PCIE链路的重新协商连接。有效解决计算机上因Switch芯片上的Port异常导致的PCIE链路异常。并且可在计算机设备不开机的状态下完成。提高了计算机设备的稳定性与健壮性。
如图2所示,本发明的另一方面还提出了一种存储设备PCIE链路协商系统,包括:
检测模块1,所述检测模块1配置用于实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
第一控制模块2,所述第一控制模块2配置用于响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
解绑模块3,所述解绑模块3配置用于响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
第二控制模块4,所述第二控制模块4配置用于响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
如图3所示,本发明的又一方面还提出了一种计算机设备,包括:
至少一个处理器21;以及
存储器22,所述存储器存储有可在所述处理器上运行的计算机指令23,所述指令由所述处理器执行时实现本发明的提出了一种存储设备PCIE链路协商方法,包括:
实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的一些实施方式中,方法可以由BMC来执行。
在本发明的一些实施方式中,实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入,包括:
将BMC与所述Switch芯片相连,并获取所述Switch芯片上各Port的状态机的状态,同时通过CPLD检测各Port对应的硬盘接口上是否存在硬盘。
在本发明的一些实施方式中,响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电,包括:
若BMC检测到所述Port的状态机的状态为非L2状态,且所述Port上存在硬盘接入,则BMC控制所述CPLD将所述硬盘断电,并向所述Switch芯片发送重新绑定指令。
在本发明的一些实施方式中,响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路,包括:
响应于所述Unbind和Bind操作完成,BMC控制CPLD将所述Port上的硬盘上电,并将上电完成信息发送到所述Switch芯片。
在本发明的一些实施方式中,方法可由Switch芯片执行,包括:
Switch芯片检测所属的各Port的状态机的状态,并通过CPLD获取所述各Port的上的硬盘是否在位;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,Switch芯片通过CPLD将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,Switch芯片通过CPLD将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的一些实施方式中,所述方法能够由BMC和Switch芯片执行,并且方法还包括:
所述BMC和所述Switch芯片采用竞争的方式执行所述方法;以及
响应于所述Switch芯片在预定时间内无法执行上述方法,由BMC执行上述方法。
如图4所示,本发明的再一方面还提出了一种计算机可读存储介质401,所述计算机可读存储介质401存储有计算机程序402,所述计算机程序被处理器执行时实现本发明提出了一种存储设备PCIE链路协商方法,其包括:
实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的一些实施方式中,方法可以由BMC来执行。
在本发明的一些实施方式中,实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入,包括:
将BMC与所述Switch芯片相连,并获取所述Switch芯片上各Port的状态机的状态,同时通过CPLD检测各Port对应的硬盘接口上是否存在硬盘。
在本发明的一些实施方式中,响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电,包括:
若BMC检测到所述Port的状态机的状态为非L2状态,且所述Port上存在硬盘接入,则BMC控制所述CPLD将所述硬盘断电,并向所述Switch芯片发送重新绑定指令。
在本发明的一些实施方式中,响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路,包括:
响应于所述Unbind和Bind操作完成,BMC控制CPLD将所述Port上的硬盘上电,并将上电完成信息发送到所述Switch芯片。
在本发明的一些实施方式中,方法可由Switch芯片执行,包括:
Switch芯片检测所属的各Port的状态机的状态,并通过CPLD获取所述各Port的上的硬盘是否在位;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,Switch芯片通过CPLD将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,Switch芯片通过CPLD将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
在本发明的一些实施方式中,方法还包括:
所述BMC和所述Switch芯片采用竞争的方式执行所述方法;以及
响应于所述Switch芯片在预定时间内无法执行上述方法,由BMC执行上述方法。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。所述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,典型地,本发明实施例公开所述的装置、设备等可为各种电子终端设备,例如手机、个人数字助理(PDA)、平板电脑(PAD)、智能电视等,也可以是大型终端设备,如服务器等,因此本发明实施例公开的保护范围不应限定为某种特定类型的装置、设备。本发明实施例公开所述的客户端可以是以电子硬件、计算机软件或两者的组合形式应用于上述任意一种电子终端设备中。
此外,根据本发明实施例公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
此外,应该明白的是,本文所述的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现所述的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里所述功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP和/或任何其它这种配置。
结合这里的公开所描述的方法或算法的步骤可以直接包含在硬件中、由处理器执行的软件模块中或这两者的组合中。软件模块可以驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域已知的任何其它形式的存储介质中。示例性的存储介质被耦合到处理器,使得处理器能够从该存储介质中读取信息或向该存储介质写入信息。在一个替换方案中,所述存储介质可以与处理器集成在一起。处理器和存储介质可以驻留在ASIC中。ASIC可以驻留在用户终端中。在一个替换方案中,处理器和存储介质可以作为分立组件驻留在用户终端中。
Claims (10)
1.一种存储设备PCIE链路协商方法,其特征在于,包括:
实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
2.根据权利要求1所述的方法,其特征在于,所述方法由BMC来执行。
3.根据权利要求2所述的方法,其特征在于,实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入,包括:
将BMC与所述Switch芯片相连,并获取所述Switch芯片上各Port的状态机的状态,同时通过CPLD检测各Port对应的硬盘接口上是否存在硬盘。
4.根据权利要求3所述的方法,其特征在于,所述响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电,包括:
若BMC检测到所述Port的状态机的状态为非L2状态,且所述Port上存在硬盘接入,则BMC控制所述CPLD将所述硬盘断电,并向所述Switch芯片发送重新绑定指令。
5.根据权利要求4所述的方法,其特征在于,所述响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路,包括:
响应于所述Unbind和Bind操作完成,BMC控制CPLD将所述Port上的硬盘上电,并将上电完成信息发送到所述Switch芯片。
6.根据权利要求1所述的方法,其特征在于,所述方法由Switch芯片执行,并且包括:
Switch芯片检测所属的各Port的状态机的状态,并通过CPLD获取所述各Port的上的硬盘是否在位;
响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,Switch芯片通过CPLD将所述Port上的硬盘下电;
响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
响应于所述Unbind和Bind操作完成,Switch芯片通过CPLD将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
7. 根据权利要求2或6所述的方法,其特征在于,所述方法能够由BMC或Switch芯片执行,并且所述方法包括:
所述BMC和所述Switch芯片采用竞争的方式执行所述方法;以及
响应于所述Switch芯片在预定时间内无法执行上述方法,由BMC执行上述方法。
8.一种存储设备PCIE链路协商系统,其特征在于,包括:
检测模块,所述检测模块配置用于实时监控Switch芯片各Port的状态机的状态,以及判断所述Port上是否存在硬盘接入;
第一控制模块,所述第一控制模块配置用于响应于所述Port的状态机的状态为非预定状态,且所述Port上存在硬盘接入,将所述Port上的硬盘下电;
解绑模块,所述解绑模块配置用于响应于所述Port上的硬盘下电,Switch芯片对所述Port依次进行Unbind和bind操作;
第二控制模块,所述第二控制模块配置用于响应于所述Unbind和Bind操作完成,将所述Port上的硬盘上电,Switch芯片对所述Port上的硬盘重新协商链路。
9. 一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-7任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111157608.1A CN113868181B (zh) | 2021-09-30 | 2021-09-30 | 一种存储设备pcie链路协商方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111157608.1A CN113868181B (zh) | 2021-09-30 | 2021-09-30 | 一种存储设备pcie链路协商方法、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113868181A CN113868181A (zh) | 2021-12-31 |
CN113868181B true CN113868181B (zh) | 2023-07-21 |
Family
ID=79000866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111157608.1A Active CN113868181B (zh) | 2021-09-30 | 2021-09-30 | 一种存储设备pcie链路协商方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113868181B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782317B1 (en) * | 2013-05-02 | 2014-07-15 | Huawei Technologies Co., Ltd. | Computer system, method for accessing peripheral component interconnect express endpoint device, and apparatus |
CN112433973A (zh) * | 2020-11-12 | 2021-03-02 | 苏州浪潮智能科技有限公司 | 固态硬盘簇jbof的链路协商方法、装置、设备及存储介质 |
-
2021
- 2021-09-30 CN CN202111157608.1A patent/CN113868181B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782317B1 (en) * | 2013-05-02 | 2014-07-15 | Huawei Technologies Co., Ltd. | Computer system, method for accessing peripheral component interconnect express endpoint device, and apparatus |
CN112433973A (zh) * | 2020-11-12 | 2021-03-02 | 苏州浪潮智能科技有限公司 | 固态硬盘簇jbof的链路协商方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113868181A (zh) | 2021-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI553650B (zh) | 以記憶體控制器來處理資料錯誤事件之方法、設備及系統 | |
CN113688087B (zh) | 一种pcie设备枚举方法、系统、存储介质及设备 | |
US20070234123A1 (en) | Method for detecting switching failure | |
US20120278653A1 (en) | Handling a failed processor of multiprocessor information handling system | |
TWI470420B (zh) | 除錯方法及電腦系統 | |
CN108228374B (zh) | 一种设备的故障处理方法、装置及系统 | |
EP2372491B1 (en) | Power lock-up setting method and electronic apparatus using the same | |
US7966486B2 (en) | Computer system with dual basic input output system and operation method thereof | |
WO2023056744A1 (zh) | 一种带宽降速修复方法、装置、电子设备及存储介质 | |
JP2018116648A (ja) | 情報処理装置、その制御方法、及びプログラム | |
EP3360044B1 (en) | System and method for providing operating system independent error control in a computing device | |
CN114817105A (zh) | 设备枚举的方法、装置、计算机设备以及存储介质 | |
WO2023065601A1 (zh) | 服务器组件自检异常恢复方法、装置、系统及介质 | |
CN114185603B (zh) | 一种智能加速卡的控制方法、服务器及智能加速卡 | |
CN113868181B (zh) | 一种存储设备pcie链路协商方法、系统、设备及介质 | |
US8495353B2 (en) | Method and circuit for resetting register | |
CN111988196B (zh) | 一种带宽检测方法、装置、电子设备和存储介质 | |
CN113742165A (zh) | 双主控设备及主备控制方法 | |
CN107179911B (zh) | 一种重启管理引擎的方法和设备 | |
CN115407941A (zh) | 一种vmd功能启动方法及其相关组件 | |
WO2007080051A2 (en) | Method and apparatus for dumping a process memory space | |
TWI704460B (zh) | 叢集式系統中維持記憶體共享方法 | |
CN114121138B (zh) | 内存电压测试方法、装置、计算设备及系统 | |
JP2018128874A (ja) | 電子機器 | |
CN117472457B (zh) | 一种双bios系统、系统切换方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |