一种服务器硬件识别方法及系统
文献发布时间:2023-06-19 10:58:46
技术领域
本发明涉及服务器技术领域,尤其涉及一种服务器硬件识别方法及系统。
背景技术
随着计算机技术的持续发展,服务器在互联网以及大数据等领域的用户量迅速增长。不同客户的应用场景和需求的个性化以及差异化,也促使服务器产品的种类和配置越来越多。有的服务器厂家为了能够更好地满足客户需求,就按照客户的需求进行定制化设计,但是周期长,成本高,并不能提供最优性价比的产品。有的服务器厂家为了能够减少重复化的设计工作和降低成本,针对市场繁杂多样化的需求,进行归一化设计,这样就不可避免地带来裁剪部分客户个性化需求的结果,并不能提供百分百完美满足客户需求的产品,在市场竞争中处于劣势。还有的服务器厂家,针对不同的客户需求,设计一款通用型主板,搭配不同的硬盘背板和PCIe卡来满足不同客户的差异化需求。针对不同整机配置,在主板上有硬件设计Board ID或者通过读取FRU来完成整机配置的区分和识别,但存在以下问题:
方案一:针对不同配置的服务器,设计同一款主板,搭配不同的硬盘背板和PCIe卡来满足不同客户的差异化需求,针对不同配置,在主板上硬件设计有拨码开关/跳线帽/上下拉电阻,用于设置不同的Board ID,来区分不同配置。但是,在不同配置中的上下拉电阻的差异会导致多种BOM,主板PCBA的复用性较差,无法在不同项目不同配置中灵活调配使用。而且产生多个BOM也会导致生产和管理成本的上升。在不同配置中使用拨码开关/跳线帽等方式会导致生产环节由于工程师个人产品认知不全或者意识疏漏等问题造成服务风险。
方案二:针对不同配置的服务器,设计同一款主板,搭配不同的硬盘背板和PCIe卡来满足不同客户的差异化需求,针对不同配置,在出厂时烧写不同的FRU代码,通过识别FRU中的字段来区分不同配置。但是,在出厂时烧写不同的FRU代码会导致同样硬件同样料号的主板烧录不同的软件,一旦主板脱离机箱存在,服务人员就会难以目测区分该主板是应用在哪个配置的机箱中,容易混淆。
发明内容
有鉴于此,本发明的目的在于提出一种服务器硬件识别方法及系统,用以解决现有技术中服务器的各硬件识别不便的问题。
基于上述目的,本发明提供了一种服务器硬件识别方法,包括如下步骤:
响应于检测到服务器上电,读取服务器的机箱内预置的机箱识别线缆的第一电平信号,以及读取服务器的各硬件板卡的各第二电平信号组;
判断第一电平信号为高电平信号或低电平信号,并基于判断结果识别机箱的类型;
将各第二电平信号组中的高低电平信号组合转化为各板卡识别号,并基于各板卡识别号识别各硬件板卡的类型;
将识别出的机箱的类型和各硬件板卡的类型与预设的设备清单进行比较,并基于比较结果得到服务器的类型。
在一些实施例中,方法还包括:将机箱识别线缆的第一端通过上拉电阻连接至服务器的主板并将机箱识别线缆的第二端设置在机箱的侧壁。
在一些实施例中,方法还包括:将机箱内的地线线缆的第一端连接至主板的地线并将地线线缆的第二端设置在机箱的侧壁。
在一些实施例中,判断第一电平信号为高电平信号或低电平信号,并基于判断结果识别机箱的类型包括:
响应于第一电平信号为低电平信号,确定机箱识别线缆的第二端与地线线缆的第二端连接,并识别机箱为有开孔机箱;
响应于第一电平信号为低电平信号,确定机箱识别线缆的第二端与地线线缆的第二端断开,并识别机箱为无开孔机箱。
在一些实施例中,方法还包括:在各硬件板卡上分别设置GPIO扩展芯片,并在各GPIO扩展芯片的预设管脚组分别设置上下拉电阻组,其中,各上下拉电阻组各不相同。
在一些实施例中,上下拉电阻组包括若干上拉电阻和/或下拉电阻,预设管脚组的每个管脚分别连接一个上拉电阻或下拉电阻。
在一些实施例中,GPIO扩展芯片为PCA9555芯片。
在一些实施例中,各第二电平信号组对应于各上下拉电阻组,且各第二电平信号组由若干高电平信号和/或低电平信号组成。
在一些实施例中,将各第二电平信号组中的高低电平信号组合转化为各板卡识别号包括:
将各第二电平信号组的高电平信号转化为二进制数1和/或将其低电平信号转化为二进制数0,以得到各二进制数组,并将各二进制数组转化为各十六进制数,以各十六进制数分别作为各板卡识别号。
本发明的另一方面,还提供了一种服务器硬件识别系统,包括:
信号读取模块,配置用于响应于检测到服务器上电,读取服务器的机箱内预置的机箱识别线缆的第一电平信号,以及读取服务器的各硬件板卡的各第二电平信号组;
机箱类型识别模块,配置用于判断第一电平信号为高电平信号或低电平信号,并基于判断结果识别机箱的类型;
硬件板卡类型识别模块,配置用于将各第二电平信号组中的高低电平信号组合转化为各板卡识别号,并基于各板卡识别号识别各硬件板卡的类型;以及
比较模块,配置用于将识别出的机箱的类型和各硬件板卡的类型与预设的设备清单进行比较,并基于比较结果得到服务器的类型。
本发明至少具有以下有益技术效果:
1.本发明有利于软硬件完全相同的主板应用在不同配置的服务器机箱中,并且能够自动识别机箱的种类和硬件板卡配置,用于给客户指示设备类型、选择相应的软件流程等,无需人为设置差异化的主板ID号用于区分不同的应用场景,节约了多个料号带来的生产和管理成本。
2.本发明能够使得在不同配置机箱中互换主板,完全省去更改硬件Borad ID或者改动拨码开关、跳线帽,或者因产品配置的变化重新烧录FRU的步骤,避免了存在的潜在人为因素风险,便于服务人员操作。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明提供的服务器硬件识别方法的实施例的示意图;
图2为根据本发明实施例提供的机箱与主板的检测电路示意图;
图3为根据本发明实施例提供的一硬件板卡识别电路示意图;
图4为根据本发明实施例提供的服务器硬件配置示意性框图;
图5为根据本发明提供的服务器硬件识别系统的实施例的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备固有的其他步骤或单元。
基于上述目的,本发明实施例的第一个方面,提出了一种服务器硬件识别方法的实施例。图1示出的是本发明提供的服务器硬件识别方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:
步骤S10、响应于检测到服务器上电,读取服务器的机箱内预置的机箱识别线缆的第一电平信号,以及读取服务器的各硬件板卡的各第二电平信号组,其中,各第二电平信号组各不相同;
步骤S20、判断第一电平信号为高电平信号或低电平信号,并基于判断结果识别机箱的类型;
步骤S30、将各第二电平信号组中的高低电平信号组合转化为各板卡识别号,并基于各板卡识别号识别各硬件板卡的类型;
步骤S40、将识别出的机箱的类型和各硬件板卡的类型与预设的设备清单进行比较,并基于比较结果得到服务器的类型。
本发明实施例有利于软硬件完全相同的主板应用在不同配置的机箱中,并且能够自动识别机箱的种类和硬件板卡配置,用于给客户指示设备类型、选择相应的软件流程等,无需人为设置差异化的主板ID号用于区分不同的应用场景,节约了多个料号带来的生产和管理成本;能够使得在不同配置机箱中互换主板,完全省去更改硬件Borad ID或者改动拨码开关、跳线帽,或者因产品配置的变化重新烧录FRU的步骤,避免了存在的潜在人为因素风险,便于服务人员操作。
在一些实施例中,方法还包括:将机箱识别线缆的第一端通过上拉电阻连接至所述服务器的主板并将机箱识别线缆的第二端设置在机箱的侧壁。在一些实施例中,方法还包括:将机箱内的地线线缆的第一端连接至主板的地线并将地线线缆的第二端设置在机箱的侧壁。图2示出了机箱与主板的检测电路示意图。如图2所示,机箱识别线缆(图示的检测信号线)为物理线缆,机箱识别线缆的第一端和电源之间连接有上拉电阻,机箱识别线缆的第一端还连接至BMC(基板管理控制器)的GPIO口,用于获取第一电平信号。
在一些实施例中,判断第一电平信号为高电平信号或低电平信号,并基于判断结果识别机箱的类型包括:响应于第一电平信号为低电平信号,确定机箱识别线缆的第二端与地线线缆的第二端连接,并识别机箱为有开孔机箱;响应于第一电平信号为低电平信号,确定机箱识别线缆的第二端与地线线缆的第二端断开,并识别机箱为无开孔机箱。如图2所示,物理的机箱识别线缆和物理的地线线缆相连接时,BMC端检测到低电平信号;机箱识别线缆和地线线缆未连接时,BMC端检测到高电平信号。机箱识别线缆和地线线缆之间可以通过设置开关进行连接或断开。本实施例中,低电平信号对应散热性好的有开孔机箱,高电平信号对应封闭性好的无开孔机箱,但不限于此,可以根据实际情况设置为低电平信号对应无开孔机箱以及高电平信号对应有开孔机箱。
在一些实施例中,方法还包括:在各硬件板卡上分别设置GPIO扩展芯片,并在各GPIO扩展芯片的预设管脚组分别设置上下拉电阻组,其中,各上下拉电阻组各不相同。在一些实施例中,上下拉电阻组包括若干上拉电阻和/或下拉电阻,预设管脚组的每个管脚分别连接一个上拉电阻或下拉电阻。在一些实施例中,各第二电平信号组对应于各上下拉电阻组,且各第二电平信号组由若干高电平信号和/或低电平信号组成。图3示出了一硬件板卡识别电路示意图。如图3所示,以硬盘背板为例,预设管脚组有8个IO管脚,其中,IO0、IO1、IO2、IO4、IO6分别接了上拉电阻,IO3、IO5、IO7分别接了下拉电阻。接上拉电阻的对应高电平信号,接下拉电阻的对应低电平信号。IO管脚数并不限于此,可以根据实际情况需要来合理使用GPIO扩展芯片的管脚。通过设置各上下拉电阻组各不相同,可以使得各硬件板卡具有唯一的板卡识别号作为ID。
在一些实施例中,GPIO扩展芯片为PCA9555芯片。GPIO(General-purpose input/output),通用型之输入输出的简称,其接脚可以供使用者由程控自由使用。PCA9555芯片用于I2C转GPIO。
在一些实施例中,将各第二电平信号组中的高低电平信号组合转化为各板卡识别号包括:将各第二电平信号组的高电平信号转化为二进制数1和/或将其低电平信号转化为二进制数0,以得到各二进制数组,并将各二进制数组转化为各十六进制数,以各十六进制数分别作为各板卡识别号。本实施例中,也可将各二进制数组转化为各十进制数,也便于阅读。图4示出了服务器硬件配置示意性框图。如图4所示,BMC通过I2C串行总线分别连接到各硬件板卡(例如硬盘背板、风扇板、Riser卡等),以获取各硬件板卡的板卡识别号。各硬件板卡的类型例如:前窗硬盘背板类型(例如1U 2.5寸*10盘SAS/SATA背板或者2U 3.5寸*12盘NVME背板等)、后窗硬盘背板类型(例如3.5寸*2盘SAS/SATA背板或者2.5寸*2盘NVME背板等)、风扇板类型(例如1U 4056*8风扇背板或者2U 8056*4风扇背板等)、Riser卡种类(左侧三槽PCIe 4.0X16 Riser卡或者右侧两槽PCIe 4.0X16 Riser卡等)等。
本发明实施例的第二个方面,还提供了一种服务器硬件识别系统。图2示出的是本发明提供的服务器硬件识别系统的实施例的示意图。一种服务器硬件识别系统包括:信号读取模块10,配置用于响应于检测到服务器上电,读取服务器的机箱内预置的机箱识别线缆的第一电平信号,以及读取服务器的各硬件板卡的各第二电平信号组,其中,各第二电平信号组各不相同;机箱类型识别模块20,配置用于判断第一电平信号为高电平信号或低电平信号,并基于判断结果识别机箱的类型;硬件板卡类型识别模块30,配置用于将各第二电平信号组中的高低电平信号组合转化为各板卡识别号,并基于各板卡识别号识别各硬件板卡的类型;以及比较模块40,配置用于将识别出的机箱的类型和各硬件板卡的类型与预设的设备清单进行比较,并基于比较结果得到服务器的类型。
本发明实施例的服务器硬件识别系统,有利于软硬件完全相同的主板应用在不同配置的机箱中,并且能够自动识别机箱的种类和硬件板卡配置,无需人为设置差异化的主板ID号用于区分不同的应用场景,节约了多个料号带来的生产和管理成本;能够使得在不同配置机箱中互换主板,完全省去更改硬件Borad ID或者改动拨码开关、跳线帽,或者因产品配置的变化重新烧录FRU的步骤,避免了存在的潜在人为因素风险,便于服务人员操作。
最后需要说明的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP和/或任何其它这种配置。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
- 一种服务器的硬件识别方法、系统及相关组件
- 一种服务器、服务器主板及其复位识别方法及系统