CN117951069A - 一种服务器系统、通信方法和服务器 - Google Patents

一种服务器系统、通信方法和服务器 Download PDF

Info

Publication number
CN117951069A
CN117951069A CN202410345611.3A CN202410345611A CN117951069A CN 117951069 A CN117951069 A CN 117951069A CN 202410345611 A CN202410345611 A CN 202410345611A CN 117951069 A CN117951069 A CN 117951069A
Authority
CN
China
Prior art keywords
external interface
cpld
bmc
external
target
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.)
Pending
Application number
CN202410345611.3A
Other languages
English (en)
Inventor
邱多
孙铭勖
俞跃渊
林韦成
万大炎
何立权
尹吉达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Enginetech Tianjin computer Co ltd
Original Assignee
Enginetech Tianjin computer Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Enginetech Tianjin computer Co ltd filed Critical Enginetech Tianjin computer Co ltd
Priority to CN202410345611.3A priority Critical patent/CN117951069A/zh
Publication of CN117951069A publication Critical patent/CN117951069A/zh
Pending legal-status Critical Current

Links

Abstract

本申请提供一种服务器系统、通信方法和服务器。本申请提供的服务器系统,包括主板和扩展板;主板和扩展板中的任一个板均包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;主板通过其上的外部接口与扩展板上的外部接口耦合;CPLD,具体用于实时侦测N个外部接口的在位状态,并在根据侦测结果确定N个外部接口中的至少一个外部接口在位时,根据侦测结果确定待导通的目标外部接口;CPLD,还用于向与目标外部接口连接的目标I2C总线中继器发送使能信号,以导通目标I2C总线中继器,使主板上的BMC通过目标外部接口与扩展板上的BMC进行通信。本申请提供的服务器系统,可以实现主板和扩展板之间的无障碍通信。

Description

一种服务器系统、通信方法和服务器
技术领域
本申请涉及通信技术领域,尤其涉及一种服务器系统、通信方法和服务器。
背景技术
由于在服务器系统中添加扩展板,可有效提升系统性能并增加功能。因此,当前的服务器系统在主板基础上引入了扩展板。主板和扩展板各自搭载BMC(基板管理控制器),用于实现主板与扩展板之间的信息交互。
相关技术中,主板和扩展板通过特定的外部接口实现两者之间的信息交互。但是,在主板和扩展板通过特定的外部接口通信时,一旦该外部接口未插好或者错将主板和扩展板通过其他外部接口连接时,就会造成两者之间无法通信的问题。因此,亟需提供一种方法,用以实现主板和扩展板之间的无障碍通信。
发明内容
有鉴于此,本申请提供一种服务器系统、通信方法和服务器,用以实现主板和扩展板之间的无障碍通信。
具体地,本申请是通过如下技术方案实现的:
本申请第一方面提供一种服务器系统,所述服务器系统包括主板和扩展板;所述主板和所述扩展板中的任一个板均包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;所述主板通过其上的外部接口与所述扩展板上的外部接口耦合;其中,
所述BMC通过I2C总线与所述CPLD连接;
所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接;
所述CPLD,具体用于实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口;
所述CPLD,还用于向与所述目标外部接口连接的目标I2C总线中继器发送使能信号,以导通所述目标I2C总线中继器,使所述主板上的BMC通过所述目标外部接口与所述扩展板上的BMC进行通信。
可选的,所述根据所述侦测结果确定待导通的目标外部接口,包括:
基于预先为所述N个外部接口中的每个外部接口设定的优先级,按照优先级从高到低的顺序,依序遍历所述N个外部接口;
针对当前遍历至的第一外部接口,在根据所述侦测结果确定所述第一外部接口在位时,将所述第一外部接口确定为所述目标外部接口;
在根据所述侦测结果确定所述第一外部接口不在位时,依序遍历下一个外部接口。
可选的,所述CPLD,还用于在根据所述侦测结果确定所述N个外部接口均不在位时,向其所在板上的本侧BMC发送通知消息,以指示所述本侧BMC记录报修日志;
所述BMC,用于在接收到其所在板上的本侧CPLD发送的通知消息时,记录报修日志。
可选的,所述服务器系统包括主电源和备用电源,其中,
所述主电源,用于在所述服务器系统所在的服务器上电后,为所述服务器提供电力;
所述备用电源,用于在所述服务器系统所在的服务器关机或待机时,为所述服务器提供电力,以使得所述CPLD和所述BMC处于工作状态。
可选的,所述N个外部接口为CDFP接口或MCIO接口。
本申请第二方面提供一种通信方法,所述通信方法应用于服务器系统中通过外部接口连接的主板或扩展板中的任一个目标板;所述目标板包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;其中,所述BMC通过I2C总线与所述CPLD连接;所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接;所述方法包括:
所述CPLD实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口;
所述CPLD向与所述目标外部接口连接的目标I2C中继器发送使能信号,以导通所述目标I2C总线中继器;
所述BMC通过所述目标外部接口和与其连接的其他板进行通信。
可选的,所述根据侦测结果确定待导通的目标外部接口,包括:
基于预先为所述N个外部接口中的每个外部接口设定的优先级,按照优先级从高到低的顺序,依序遍历所述N个外部接口;
针对当前遍历至的第一外部接口,在根据所述侦测结果确定所述第一外部接口在位时,将所述第一外部接口确定为所述目标外部接口;
在根据所述侦测结果确定所述第一外部接口不在位时,依序遍历下一个外部接口。
可选的,所述CPLD在根据所述侦测结果确定所述N个外部接口均不在位时,所述方法还包括:
所述CPLD向所述BMC发送通知消息,以指示所述BMC记录报修日志;
所述BMC在接收到所述CPLD发送的通知消息时,记录报修日志。
可选的,所述N个外部接口为CDFP接口或MCIO接口。
本申请第三方面还提供一种服务器,所述服务器包括本申请第一方面提供的任一项所述的服务器系统。
本申请提供的服务器系统,通过将主板和扩展板的结构设置为一样的结构,并在主板和扩展板的任一个板上均设置CPLD,且令该板上的外部接口通过I2C总线中继器分别与CPLD和BMC连接,以及令该板上的外部接口通过在位信号线与CPLD连接,这样,即便主板和扩展板是通过任一个外部接口连接的,CPLD也可以实时侦测各个外部接口的在位状态,进而根据侦测结果确定N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口,并导通与所述目标外部接口连接的目标I2C总线中继器,这样,在导通目标I2C中继器后,即可导通该板上的BMC与目标外部接口之间的通信路径,相应的,对于另一个板来说,其通过同样的方法,也可以导通该板上的BMC与目标外部接口之间的通信路径,这样,两个板上的BMC之间的通信路径即导通,两个板上的BMC即可进行通信,这样,即便两个板不是通过特定的外部接口连接,也可以动态识别到两者之间连接的目标外部接口,进而导通相应的通信路径,实现两个板之间的无障碍通信。
附图说明
图1为本申请提供的服务器系统实施例一的结构示意图;
图2为本申请一示例性实施例示出的主板或扩展板的结构示意图;
图3为本申请提供的通信方法实施例一的流程图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请提供一种服务器系统、通信方法和服务器,用以实现主板和扩展板之间的无障碍通信。
本申请提供的服务器系统,通过将主板和扩展板的结构设置为一样的结构,并在主板和扩展板的任一个板上均设置CPLD,且令该板上的外部接口通过I2C总线中继器分别与CPLD和BMC连接,以及令该板上的外部接口通过在位信号线与CPLD连接,这样,即便主板和扩展板是通过任一个外部接口连接的,CPLD也可以实时侦测各个外部接口的在位状态,进而根据侦测结果确定N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口,并导通与所述目标外部接口连接的目标I2C总线中继器,这样,在导通目标I2C中继器后,即可导通该板上的BMC与目标外部接口之间的通信路径,相应的,对于另一个板来说,其通过同样的方法,也可以导通该板上的BMC与目标外部接口之间的通信路径,这样,两个板上的BMC之间的通信路径即导通,两个板上的BMC即可进行通信,这样,即便两个板不是通过特定的外部接口连接,也可以动态识别到两者之间连接的目标外部接口,进而导通相应的通信路径,实现两个板之间的无障碍通信。
下面给出具体的实施例,用以详细介绍本申请的技术方案。
图1为本申请提供的服务器系统实施例一的结构示意图。请参照图1,本实施例提供的服务器系统,所述服务器系统包括主板和扩展板;所述主板和所述扩展板中的任一个板均包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;所述主板通过其上的外部接口与所述扩展板上的外部接口耦合;其中,
所述BMC通过I2C总线与所述CPLD连接;
所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接;
所述CPLD,具体用于实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口;
所述CPLD,还用于向与所述目标外部接口连接的目标I2C总线中继器发送使能信号,以导通所述目标I2C总线中继器,使所述主板上的BMC通过所述目标外部接口与所述扩展板上的BMC进行通信。
具体的,请参照图1,服务器系统包括主板和扩展板,主板和扩展板可以集成在同一个设备上,也可以集成在不同的设备上,本实施例中,不对其进行限定。例如,在一种可能的实现方式中,主板和扩展板可以同时集成在一台服务器中,再例如,在另一种可能的实现方式中,主板集成在服务器中,扩展板集成在扩展设备中。
进一步的,请继续参照图1,主板通过其上的外部接口和扩展板上的外部接口连接。具体的,主板和扩展板均包括N个外部接口,主板通过其上的任一个外部接口与扩展板上的任一个外部接口连接。
需要说明的是,N的具体数量是根据实际需要设定的,本实施例中,不对其进行限定。此外,N个外部接口可以为CDFP接口或MCIO接口,本实施例中,不对外部接口的具体类型进行限定。例如,图2为本申请一示例性实施例示出的主板或扩展板的结构示意图。请参照图2,在图2所示示例中,主板包括8个外部接口,这8个外部接口为CDFP接口。
主板和扩展板的结构一样,下面以主板为例,来说明主板或扩展板的具体结构。
具体的,主板包括BMC(Baseboard Management Controller,基板管理控制器)、CPLD(Complex Programming logic device,复杂可编程逻辑器件)、N个I2C总线中继器以及N个外部接口;其中,所述BMC通过I2C总线与所述CPLD连接;所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接。
需要说明的是,I2C总线中继器的数量和外部接口的数量相等,均等于N。 N的具体值是根据实际需要设定的,本实施例中,不对N的具体值进行限定。例如,请参照图2,在图2所示示例中,主板包括8个外部接口,这8个外部接口为CDFP接口,进一步的,为了方便说明,参照图2,将这8个外部接口分别记为CDFP0、CDFP1……、CDFP7。
可选的,在本申请一种可能的实现方式中,I2C总线中继器可以为PCA9617。
进一步的,请继续参照图2,在图2所示示例中,该主板包括8个I2C总线中继器,每个外部接口通过一个I2C总线中继器分别与CPLD和BMC连接。具体的,请参照图2,为了方便说明,分别将这8个I2C总线中继器记为I2C总线中继器0、I2C总线中继器1……、I2C总线中继器7,其中,外部接口CDFP0通过I2C总线中继器0分别与CPLD和BMC连接, CDFP1通过I2C总线中继器1分别与BMC和CPLD连接,……,CDFP7通过I2C总线中继器7分别与BMC和CPLD连接。
需要说明的是,I2C总线中继器与BMC之间可以串接有0欧姆的电阻,以满足生产测试、板卡调试、故障分析测试等需求。
具体的,请继续参照图2,每个外部接口的在位信号线与CPLD的GPIO管脚连接。换言之,在图2所示示例中,CDFP0的在位信号线与CPLD的GPIO管脚连接,类似的,CDFP1的在位信号线与CPLD的GPIO管脚连接,……,CDFP7的在位信号线与CPLD的GPIO管脚连接。为了方便说明,将CDFPi的在位信号记为PRESNTi#,其中,i取0到7。
需要说明的是,参见图2,可以理解的是,每个外部接口的在位信号线与10K欧姆的上拉电阻连接(即每个外部接口的在位信号线通过电阻与高电平的电压源连接),若该外部接口在位,即该外部接口的线缆连接到位,该外部接口与其他板的外部接口连接时,GPIO管脚处的电压被拉低,CPLD通过在位信号线检测到低电平;若该外部接口不在位,即该外部接口的线缆未连接到位,该外部接口未与其他板的外部接口连接时,GPIO管脚处的电压无法被拉低,CPLD通过在位信号线检测到高电平。
需要说明的是,CPLD与每个I2C总线中继器连接,其可以通过使能信号控制I2C总线中继器的导通。此外,BMC通过I2C总线中继器与外部接口连接,在I2C总线中继器导通时,BMC与外部接口之间的通信路径导通。进一步的,CPLD和BMC通过I2C总线连接,两者之间可以通信。
需要说明的是,扩展板的结构与主板的结构相同,此处不再赘述。
下面结合图1和图2,来介绍主板和扩展板之间的交互原理,下面先以主板为例,来具体介绍主板如何导通其上的BMC与外部接口之间的通信路径:
具体的,CPLD可以实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口,进而向与所述目标外部接口连接的目标I2C总线中继器发送使能信号,以导通所述目标I2C总线中继器,这样,在目标I2C总线中继器导通后,BMC和目标外部接口之间的通信路径即导通。
具体的,参见前面的描述,CPLD可以基于各个外部接口的在位信号线侦测各个外部接口的在位状态,例如,在基于某个外部接口的在位信号线侦测到低电平时,确定该外部接口的在位状态为在位。
需要说明的是,在根据侦测结果确定待导通的目标外部接口时,主板上的目标外部接口可以是主板上所有在位的外部接口中的任意一个。例如,结合图2所示的例子,在一种可能的方式中,主板上所有在位的外部接口包括CDFP0、CDFP1和CDFP3。此时,待导通的目标外部接口可以为CDFP0或CDFP1或CDFP3。
进一步的,目标I2C总线中继器是与目标外部接口连接的I2C总线中继器。结合上面的例子,在图2所示示例中,当目标外部接口为CDFP0时,目标I2C总线中继器为I2C总线中继器0。当目标外部接口为CDFP1时,目标I2C总线中继器为I2C总线中继器1。当目标外部接口为CDFP3时,目标I2C总线中继器为I2C总线中继器3。
参加前面的描述,使能信号可以用来控制I2C总线中继器的导通,当目标外部接口在位时,CPLD可以向与该目标外部接口连接的I2C总线中继器发送使能信号,控制其导通。例如,在上面的第一个例子中,在确定待导通的目标外部接口为CDFP0时,此时,CPLD可以向I2C总线中继器0发送使能信号,在使能信号的作用下,I2C总线中继器0导通。进一步的,当I2C总线中继器0导通后,主板上的BMC与CDFP0之间的通信路径导通,主板上的BMC可以通过CDFP0与扩展板上的BMC进行通信。
类似的,扩展板上的CPLD同样会实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口,以及向与所述目标外部接口连接的目标I2C总线中继器发送使能信号,以导通所述目标I2C总线中继器。这样,在扩展板上的目标I2C总线中继器导通后,扩展板上的BMC与其上的目标外部接口之间的通信路径便导通,该BMC即可通过该目标外部接口与主板上的BMC进行通信。
本实施例提供的服务器系统,通过将主板和扩展板的结构设置为一样的结构,并在主板和扩展板的任一个板上均设置CPLD,且令该板上的外部接口通过I2C总线中继器分别与CPLD和BMC连接,以及令该板上的外部接口通过在位信号线与CPLD连接,这样,即便主板和扩展板是通过任一个外部接口连接的,CPLD也可以实时侦测各个外部接口的在位状态,进而根据侦测结果确定N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口,并导通与所述目标外部接口连接的目标I2C总线中继器,这样,在导通目标I2C中继器后,即可导通该板上的BMC与目标外部接口之间的通信路径,相应的,对于另一个板来说,其通过同样的方法,也可以导通该板上的BMC与目标外部接口之间的通信路径,这样,两个板上的BMC之间的通信路径即导通,两个板上的BMC即可进行通信,这样,即便两个板不是通过特定的外部接口连接,也可以动态识别到两者之间连接的目标外部接口,进而导通相应的通信路径,实现两个板之间的无障碍通信。
可选的,在本申请一种可能的实现方式中,所述根据所述侦测结果确定待导通的目标外部接口,包括:
基于预先为所述N个外部接口中的每个外部接口设定的优先级,按照优先级从高到低的顺序,依序遍历所述N个外部接口;
针对当前遍历至的第一外部接口,在根据所述侦测结果确定所述第一外部接口在位时,将所述第一外部接口确定为所述目标外部接口;
在根据所述侦测结果确定所述第一外部接口不在位时,依序遍历下一个外部接口。
具体的,预先为N个外部接口中的每个外部接口设定的优先级是根据实际需要设定的,本实施例中,不对此进行限定。例如,外部接口的编号越小,优先级越高。请参照图2,在图2所示示例中,CDFP0的优先级>CDFP1的优先级>CDFP2的优先级>CDFP3的优先级>CDFP4的优先级>CDFP5的优先级>CDFP6的优先级>CDFP7的优先级。本步骤中,就按照CDFP0、CDFP1、……、CDFP7的顺序依序遍历这8个外部接口。
进一步的,参见前面的描述,各个外部接口的在位状态包括在位和不在位,CPLD在通过某个外部接口的在位信号线检测到低电平时,确定该外部接口在位,在通过某个外部接口的在位信号线检测到高电平时,确定该外部接口不在位。一实施例中,用0代表代表外部接口在位,1代表外部接口不在位。结合图2,在图2所示示例中,参见前面的描述,在N个外部接口包括8个外部接口时,且每个外部接口被记为CDFPi时(其中,i取0到7,编号越小,优先级越高),一实施例中,将CDFPi的在位信号记为PRESNTi#,进一步的,将与CDFPi连接的I2C总线中继器记为I2C总线中继器i,将用于控制该I2C总线中继器i的使能信号记为Eni。表1为本申请一示例性实施例示出的CPLD对N个I2C总线中继器进行控制的控制逻辑表,表1中,PRESNTi#等于0时,代表外部接口CDFPi在位,PRESNTi#等于1时,代表外部接口CDFPi不在位,PRESNTi#等于x,则代表不关注外部接口在位状态;Eni等于1时,表示向I2C总线中继器i发送使能信号,Eni等于0时,表示不向I2C总线中继器i发送使能信号。
表1 CPLD对N个I2C总线中继器进行控制的控制逻辑表
请参照表1,当包括8个外部接口:CDFP0、CDFP1、……、CDFP7时,此时,参照表1,按照优先级从高往低的顺序,先遍历CDFP0,进一步的,若CDFP0在位时,CDFP0即为目标外部接口,此时,向I2C总线中继器0发送使能信号。进一步的,若CDFP0不在位时,则继续遍历CDFP1,若CDFP1在位,此时,CDFP1即为目标外部接口,向I2C总线中继器1发送使能信号。类似的,若CDFP1不在位时,则继续遍历CDFP2,若CDFP2在位,此时,CDFP2即为目标外部接口,向I2C总线中继器2发送使能信号。进一步的,若CDFP2不在位,则继续遍历下一个外部接口,直至找到目标外部接口,或遍历完所有的外部接口(CDFP0、CDFP1、……、CDFP7)后,确定所有的外部接口均不在位。
本申请提供的方法,按照预先为每个外部接口设定的优先级遍历外部接口,一方面,服务器系统可以更有效地利用资源,确保高优先级的外部接口优先被导通,有助于提高整体性能和响应时间。另一方面,还有助于更好地控制外部接口的遍历顺序,确保按照预期的方式完成任务。
可选的,在本申请一可能的实现方式中,所述CPLD,还用于在根据所述侦测结果确定所述N个外部接口均不在位时,向其所在板上的本侧BMC发送通知消息,以指示所述本侧BMC记录报修日志;
所述BMC,用于在接收到其所在板上的本侧CPLD发送的通知消息时,记录报修日志。
具体的,请继续参照图2,在一可能的实现方式中,当主板上的CPLD遍历完CDFP0、CDFP1、……、CDFP7后,确定这8个外部接口均不在位,CPLD向主板上的BMC发送通知消息,通知BMC记录报修日志,BMC接收到CPLD发送的通知消息后,记录下报修日志,以在后续运维人员基于该报修日志对外部接口进行报修。
在另一可能的实现方式中,类似的,当扩展板上的CPLD遍历完CDFP0、CDFP1、……、CDFP7后,确定这8个外部接口均不在位,CPLD向扩展板上的BMC发送通知消息,通知BMC记录报修日志,BMC接收到CPLD发送的通知消息后,记录下报修日志,以在后续运维人员基于该报修日志对外部接口进行报修。
需要说明的是,报修日志记录了故障描述和故障发生的时间,运维人员会定时查看BMC侧的报修日志,当发现有报修日志后,运维人员会定位到对应的故障位置并进行维修。
本申请提供的方法,在所有外部接口均不在位时,通过记录报修日志的方法可以及时对外部接口进行报修,以实现主板和扩展板之间的通信。
可选的,在本申请一种可能的实现方式中,所述服务器系统包括主电源和备用电源,其中,
所述主电源,用于在所述服务器系统所在的服务器上电后,为所述服务器提供电力;
所述备用电源,用于在所述服务器系统所在的服务器关机或待机时,为所述服务器提供电力,以使得所述CPLD和所述BMC处于工作状态。
具体的,服务器系统包括主电源(main power)和备用电源(standby power)。备用电源只要接通交流电即可以通过电源转换单元输出所需电压,主电源需要服务器系统远程唤醒机制或触发物理按键后才开启所需电压。
进一步的,主电源在服务器系统上电后提供电力,供CPU和GPU正常工作。备用电源在服务器系统关机或待机状态下提供电力,供CPLD和BMC正常工作。其中,CPLD和BMC在备用电源下工作可以更合理控制板端数字逻辑和异常事件监测。
本申请提供的方法,一方面,通过备用电源,在服务器系统关机或待机状态下仍可提供电力,以供CPLD和BMC正常工作。另一方面,CPLD和BMC在备用电源下工作可以更合理控制板端数字逻辑和异常事件监测。
本申请除了提供一种服务器系统,本申请还提供一种通信方法,下面对本申请提供的通信方法进行介绍:
图3为本申请提供的通信方法实施例一的流程图。请参照图3,本实施例提供的通信方法,应用于服务器系统中通过外部接口连接的主板或扩展板中的任一个目标板;所述目标板包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;其中,所述BMC通过I2C总线与所述CPLD连接;所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接;所述方法包括:
S301、所述CPLD实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口。
具体的,在位状态包括在位和不在位。有关根据侦测结果确定待导通的目标外部接口的具体实现方式和实现原理可以参见前面实施例中的描述,此处不再赘述。
S302、所述CPLD向与所述目标外部接口连接的目标I2C中继器发送使能信号,以导通所述目标I2C总线中继器。
具体的,目标I2C总线中继器是与目标外部接口连接的I2C总线中继器。例如,请继续参照图2,当目标外部接口为CDFP0时,目标I2C总线中继器为I2C0总线中继器。当目标外部接口为CDFP1时,目标I2C总线中继器为I2C1总线中继器。当目标外部接口为CDFP7时,目标I2C总线中继器为I2C7总线中继器。
S303、所述BMC通过所述目标外部接口和与其连接的其他板进行通信。
具体的,例如,结合上面的例子,在一可能的实现方式中,若BMC位于主板上,则主板上的BMC通过CDFP0与扩展板进行通信。
在另一可能的实现方式中,若BMC位于扩展板上,则扩展板上的BMC通过CDFP0接口与主板进行通信。
本实施例提供的主板和扩展板通信的方法,通过将主板和扩展板的结构设置为一样的结构,并在主板和扩展板的任一个板上均设置CPLD,且令该板上的外部接口通过I2C总线中继器分别与CPLD和BMC连接,以及令该板上的外部接口通过在位信号线与CPLD连接,这样,即便主板和扩展板是通过任一个外部接口连接的,CPLD也可以实时侦测各个外部接口的在位状态,进而根据侦测结果确定N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口,并导通与所述目标外部接口连接的目标I2C总线中继器,这样,在导通目标I2C中继器后,即可导通该板上的BMC与目标外部接口之间的通信路径,相应的,对于另一个板来说,其通过同样的方法,也可以导通该板上的BMC与目标外部接口之间的通信路径,这样,两个板上的BMC之间的通信路径即导通,两个板上的BMC即可进行通信,这样,即便两个板不是通过特定的外部接口连接,也可以动态识别到两者之间连接的目标外部接口,进而导通相应的通信路径,实现两个板之间的无障碍通信。
可选的,所述根据侦测结果确定待导通的目标外部接口,包括:
基于预先为所述N个外部接口中的每个外部接口设定的优先级,按照优先级从高到低的顺序,依序遍历所述N个外部接口;
针对当前遍历至的第一外部接口,在根据所述侦测结果确定所述第一外部接口在位时,将所述第一外部接口确定为所述目标外部接口;
在根据所述侦测结果确定所述第一外部接口不在位时,依序遍历下一个外部接口。
有关上述步骤的具体实现过程和实现原理可以参见前面实施例中的描述,此处不再赘述。
本实施例提供的方法,按照预先为每个外部接口设定的优先级遍历外部接口,一方面,服务器系统可以更有效地利用资源,确保高优先级的外部接口优先被优先导通,有助于提高整体性能和响应时间。另一方面,还有助于更好地控制外部接口的遍历顺序,确保按照预期的方式完成任务。
可选的,所述CPLD在根据所述侦测结果确定所述N个外部接口均不在位时,所述方法还包括:
所述CPLD向所述BMC发送通知消息,以指示所述BMC记录报修日志;
所述BMC在接收到所述CPLD发送的通知消息时,记录报修日志。
有关上述步骤的具体实现过程和实现原理可以参见前面实施例中的描述,此处不再赘述。
本实施例提供的方法,在所有外部接口均不在位时,通过记录报修日志的方法可以及时对外部接口进行报修,以实现主板和扩展板通过BMC进行通信。
可选的,所述N个外部接口为CDFP接口或MCIO接口。
需要说明的是,本申请还提供一种服务器,所述服务器包括本申请第一方面提供的任一项所述的服务器系统。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种服务器系统,其特征在于,所述服务器系统包括主板和扩展板;所述主板和所述扩展板中的任一个板均包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;所述主板通过其上的外部接口与所述扩展板上的外部接口耦合;其中,
所述BMC通过I2C总线与所述CPLD连接;
所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接;
所述CPLD,具体用于实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口;
所述CPLD,还用于向与所述目标外部接口连接的目标I2C总线中继器发送使能信号,以导通所述目标I2C总线中继器,使所述主板上的BMC通过所述目标外部接口与所述扩展板上的BMC进行通信。
2.根据权利要求1所述的服务器系统,其特征在于,所述根据所述侦测结果确定待导通的目标外部接口,包括:
基于预先为所述N个外部接口中的每个外部接口设定的优先级,按照优先级从高到低的顺序,依序遍历所述N个外部接口;
针对当前遍历至的第一外部接口,在根据所述侦测结果确定所述第一外部接口在位时,将所述第一外部接口确定为所述目标外部接口;
在根据所述侦测结果确定所述第一外部接口不在位时,依序遍历下一个外部接口。
3.根据权利要求1所述的服务器系统,其特征在于,所述CPLD,还用于在根据所述侦测结果确定所述N个外部接口均不在位时,向其所在板上的本侧BMC发送通知消息,以指示该本侧BMC记录报修日志;
所述BMC,用于在接收到其所在板上的本侧CPLD发送的通知消息时,记录报修日志。
4.根据权利要求1所述的服务器系统,其特征在于,所述服务器系统包括主电源和备用电源,其中,
所述主电源,用于在所述服务器系统所在的服务器上电后,为该服务器提供电力;
所述备用电源,用于在所述服务器系统所在的服务器关机或待机时,为该服务器提供电力,以使得所述CPLD和所述BMC处于工作状态。
5.根据权利要求1所述的服务器系统,其特征在于,所述N个外部接口为CDFP接口或MCIO接口。
6.一种通信方法,其特征在于,所述通信方法应用于服务器系统中通过外部接口连接的主板或扩展板中的任一个目标板;所述目标板包括BMC、CPLD、N个I2C总线中继器以及N个外部接口;其中,所述BMC通过I2C总线与所述CPLD连接;所述N个外部接口中的每个外部接口的在位信号线与所述CPLD的GPIO管脚连接;所述N个外部接口中的每个外部接口还通过一个I2C总线中继器分别与所述BMC和所述CPLD连接;所述方法包括:
所述CPLD实时侦测所述N个外部接口的在位状态,并在根据侦测结果确定所述N个外部接口中的至少一个外部接口在位时,根据所述侦测结果确定待导通的目标外部接口;
所述CPLD向与所述目标外部接口连接的目标I2C总线中继器发送使能信号,以导通所述目标I2C总线中继器;
所述BMC通过所述目标外部接口和与其连接的其他板进行通信。
7.根据权利要求6所述的方法,其特征在于,所述根据侦测结果确定待导通的目标外部接口,包括:
基于预先为所述N个外部接口中的每个外部接口设定的优先级,按照优先级从高到低的顺序,依序遍历所述N个外部接口;
针对当前遍历至的第一外部接口,在根据所述侦测结果确定所述第一外部接口在位时,将所述第一外部接口确定为所述目标外部接口;
在根据所述侦测结果确定所述第一外部接口不在位时,依序遍历下一个外部接口。
8.根据权利要求6所述的方法,其特征在于,所述CPLD在根据所述侦测结果确定所述N个外部接口均不在位时,所述方法还包括:
所述CPLD向所述BMC发送通知消息,以指示所述BMC记录报修日志;
所述BMC在接收到所述CPLD发送的通知消息时,记录报修日志。
9.根据权利要求6所述的方法,其特征在于,所述N个外部接口为CDFP接口或MCIO接口。
10.一种服务器,其特征在于,所述服务器包括权利要求1-5任一项所述的服务器系统。
CN202410345611.3A 2024-03-26 2024-03-26 一种服务器系统、通信方法和服务器 Pending CN117951069A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410345611.3A CN117951069A (zh) 2024-03-26 2024-03-26 一种服务器系统、通信方法和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410345611.3A CN117951069A (zh) 2024-03-26 2024-03-26 一种服务器系统、通信方法和服务器

Publications (1)

Publication Number Publication Date
CN117951069A true CN117951069A (zh) 2024-04-30

Family

ID=90793100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410345611.3A Pending CN117951069A (zh) 2024-03-26 2024-03-26 一种服务器系统、通信方法和服务器

Country Status (1)

Country Link
CN (1) CN117951069A (zh)

Similar Documents

Publication Publication Date Title
US7861110B2 (en) System, method, and adapter for creating fault-tolerant communication busses from standard components
JP4982304B2 (ja) 電源障害の発生を把握するストレージシステム
CN100375440C (zh) 网络连线的备援系统
JPS6272248A (ja) デ−タ伝送システムの現用予備切替方法
US8095820B2 (en) Storage system and control methods for the same
US20090006902A1 (en) Methods, systems, and computer program products for reporting fru failures in storage device enclosures
CN109117342A (zh) 一种服务器及其硬盘健康状态监测系统
JP2008090354A (ja) 電源障害監視方法及びその装置
US6943463B2 (en) System and method of testing connectivity between a main power supply and a standby power supply
US20090106584A1 (en) Storage apparatus and method for controlling the same
CN108399116A (zh) 一种服务器上电状态监测系统及方法
US7155636B2 (en) Method for detecting faults between storage devices and storage devices using the same
CN117951069A (zh) 一种服务器系统、通信方法和服务器
WO2001016678A1 (fr) Systeme de controleur programmable et procede de reinitialisation dudit systeme
CN113992501A (zh) 一种故障定位系统、方法及计算装置
JP2002136000A (ja) 無停電電源システム
US8639967B2 (en) Controlling apparatus, method for controlling apparatus and information processing apparatus
WO2015092915A1 (ja) 回線切替装置、回線切替システム、及び回線切替方法
JPS596735A (ja) 障害通知方式
CN219204558U (zh) 网络视频录像机及网络视频录像机系统
JP2001337189A (ja) プラント制御装置およびその試験システム
JP3794358B2 (ja) 電源制御方法
JP2706027B2 (ja) プログラマブルコントローラ
CN106814643A (zh) 一种双机热备的控制方法及系统
TW202139010A (zh) 可被遠端控制的資料儲存裝置及遠端控制系統

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination