一种服务器背板硬盘点灯装置、方法及服务器与流程

文档序号:26139397发布日期:2021-08-03 14:22阅读:525来源:国知局
一种服务器背板硬盘点灯装置、方法及服务器与流程

本发明涉及服务器技术领域,尤其涉及一种服务器背板硬盘点灯装置、方法及服务器。



背景技术:

在服务器很多系统中会使用到具体两个口sata(serialadvancedtechnologyattachment,是基于行业标准的串行硬件驱动器接口))背板,即在背板上设置两个硬盘接口以连接硬盘,每个盘位的定位灯与错误指示灯需要通过背板上cpld去解析sgpio(serialgeneralpurposeinput/output,串行通用输入/输出)去点亮,而sgpio每次传输的信息包含8个端口(port),因此,对于两口背板cpld,判断上行接到哪两个端口(port)是关键。

目前,传统的确定硬盘接口所连接的端口的方式是在背板上增加拨码开关去区分每个硬盘接口所连接的端口的情况,背板上cpld通过拨码开关的值判断上行接的哪个端口;例如,主板上的八个端口记作port0-port7,预先定义拨码开关01对应连接到port0,10连接到port3,从而使得cpld在得到sgpio信号时只需要解析到port0和port3的对应的传输信息即可实现对相应指示灯的控制操作。但此种方式存在如下缺陷:一方面,拨码是人为动作,在大量的人为机械性的操作后,容易造成拨码错误;另一方面,点灯操作较为频繁,需要耗费大量的人力成本,因此亟需改进。



技术实现要素:

有鉴于此,有必要针以上技术问题,提供一种服务器背板硬盘点灯装置、方法及服务器。

根据本发明的第一方面,提供了一种服务器背板硬盘点灯装置,所述装置包括:

主板,所述主板上设置有控制部件和八个端口,八个端口通过sata信号线连接至所述控制部件,所述控制部件配置为依次对八个端口进行读写操作;

背板,所述背板上设置有cpld、多个硬盘接口以及与每一硬盘接口对应的指示灯,每一硬盘接口以及对应的指示灯分别与所述cpld连接,所述控制部件通过i2c总线和sgpio信号线分别与所述cpld连接,多个硬盘接口分别连接至八个端口中的任意多个端口,其中,所述硬盘接口的数量小于八;

其中,所述cpld配置为:记录多个硬盘接口上的硬盘的读写状态,并与所述控制部件通过i2c总线通信以得到硬盘接口与端口对应关系,以及响应于接收到控制部件通过sgpio信号线发送的点灯命令,则基于硬盘接口与端口对应关系解析所述点灯命令以得到多硬盘接口对应的子命令,以分别对每个硬盘接口对应的指示灯进行点灯操作,其中,所述点灯命令包括与八个端口一一对应的八个点灯子命令。

在其中一个实施例中,所述控制部件为集成南桥,所述主板还包括基板管理控制器和i2cswitch芯片;

所述集成南桥和所述基板管理控制器通过i2c总线分别与所述i2cswitch芯片的两个输入端连接,所述cpld通过i2c总线与所述i2cswitch芯片的输出端连接;

所述集成南桥配置为响应于开机自检开始,则切换所述i2cswitch芯片以使所述集成南桥和所述cpld通过i2c总线连通。

在其中一个实施例中,所述集成南桥配置为响应于开机自检结束,则切换所述i2cswitch芯片以使所述基板管理控制器和所述cpld通过i2c总线连通。

在其中一个实施例中,八个端口具有预设排序;

所述集成南桥配置为根据所述预设排序依次对每一端口进行读写操作;

所述cpld配置为获取硬盘接口上的硬盘的active信息并写入寄存器;以及

所述集成南桥配置为通过i2c总线读取cpld的寄存器以确定与当前读取的端口是否具有对应的硬盘接口,以及响应于每完成一个硬盘读写操作,则将端口信息和对应的硬盘接口信息发送至所述cpld。

在其中一个实施例中,所述cpld配置为接收端口信息和对应的硬盘接口信息,以及根据所有接收到的端口信息和对应的硬盘接口信息得到所述硬盘接口与端口对应关系并写入寄存器,并将全部连接至硬盘的端口均作为目标端口。

在其中一个实施例中,所述cpld配置为响应于接收到所述集成南桥通过sgpio信号线发送的点灯命令,则将所述硬盘接口与端口对应关系与所述点灯命令进行匹配以确定与目标端口对应的目标硬盘接口,以及基于目标硬盘接口对应点灯子命令得到目标点灯信息,以及基于所述目标点灯信息控制对应的目标指示灯进行点亮操作。

在其中一个实施例中,目标点灯信息包括对指示灯进行定位指示或错误灯指示。

在其中一个实施例中,背板上硬盘接口数量为两个。

根据本发明的第二方面,提供了一种服务器背板硬盘点灯方法,所述服务器背板硬盘点灯方法包括通过以上所述的服务器背板硬盘点灯装置执行以下步骤:

通过cpld记录多个硬盘接口上的硬盘的读写状态,并与控制部件通过i2c总线通信以得到硬盘接口与端口对应关系;

响应于cpld接收到控制部件通过sgpio信号线发送的点灯命令,则基于硬盘接口与端口对应关系解析所述点灯命令以得到多硬盘接口对应的子命令,以分别对每个硬盘接口对应的指示灯进行点灯操作。

根据本发明的第三方面,还提供了一种服务器,所述服务包括以上所述的服务器背板硬盘点灯装置。

上述一种服务器背板硬盘点灯装置,利用主板上的控制部件依次对八个端口进行读写操作,采用cpld记录多个硬盘接口上的硬盘的读写状态,并与所述控制部件通过i2c总线通信以得到硬盘接口与端口对应关系;以及响应于cpld接收到控制部件通过sgpio信号线发送的点灯命令,则基于硬盘接口与端口对应关系解析点灯命令以得到多硬盘接口对应的子命令以分别对每个硬盘接口对应的指示灯进行点灯操作,从而实现从包含八个子命令的点灯命令中提取有效子命令,实现了自动识别服务器其中硬盘接口与主板连接的sata端口,去掉背板上的拨码开关,减少人为操作,极大的降低了点灯错误率。

此外,本发明还提供了一种服务器背板硬盘点灯方法、一种服务器,同样能实现上述技术效果,这里不再赘述。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

图1为本发明一个实施例提供的一种服务器背板硬盘点灯装置的结构示意图;

图2为本发明一个实施例提供的基于图1所示装置的实施流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。

在一个实施例中,请参照图1所示,本发明提供了一种服务器背板硬盘点灯装置,所述装置包括:

主板,所述主板上设置有控制部件和八个端口,八个端口通过sata信号线连接至所述控制部件,所述八个端口均为sata端口

背板,所述背板上设置有cpld、多个硬盘接口以及与每一硬盘接口对应的指示灯,每一硬盘接口以及对应的指示灯分别与所述cpld连接,所述控制部件通过i2c总线和sgpio信号线分别与所述cpld连接,多个硬盘接口分别连接至八个端口中的任意多个端口,其中,所述硬盘接口的数量小于八;

所述控制部件配置为依次对八个端口进行读写操作;

其中,所述cpld配置为:记录多个硬盘接口上的硬盘的读写状态,并与所述控制部件通过i2c总线通信以得到硬盘接口与端口对应关系;以及响应于cpld接收到控制部件通过sgpio信号线发送的点灯命令,则基于硬盘接口与端口对应关系解析所述点灯命令以得到多硬盘接口对应的子命令以分别对每个硬盘接口对应的指示灯进行点灯操作,其中,所述点灯命令包括与八个端口一一对应的八个点灯子命令。

上述一种服务器背板硬盘点灯装置,利用主板上的控制部件依次对八个端口进行读写操作,采用cpld记录多个硬盘接口上的硬盘的读写状态,并与所述控制部件通过i2c总线通信以得到硬盘接口与端口对应关系;以及响应于cpld接收到控制部件通过sgpio信号线发送的点灯命令,则基于硬盘接口与端口对应关系解析点灯命令以得到多硬盘接口对应的子命令以分别对每个硬盘接口对应的指示灯进行点灯操作,从而实现从包含八个子命令的点灯命令中提取有效子命令,实现了自动识别服务器其中硬盘接口与主板连接的sata端口,去掉背板上的拨码开关,减少人为操作,极大的降低了点灯错误率。

在又一个实施了例中,请再次结合图1所示,所述控制部件为集成南桥(platformcontrollerhub,简称pch),所述主板还包括基板管理控制器(baseboardmanagementcontroller,简称bmc)和i2cswitch芯片(简称i2csw);

所述集成南桥和所述基板管理控制器通过i2c总线分别与所述i2cswitch芯片的两个输入端连接,所述cpld通过i2c总线与所述i2cswitch芯片的输出端连接;

所述集成南桥配置为响应于开机自检开始,则切换所述i2cswitch芯片以使所述集成南桥和所述cpld通过i2c总线连通。

在又一个实施例中,所述集成南桥配置为:响应于开机自检结束,则切换所述i2cswitch芯片以使所述基板管理控制器和所述cpld通过i2c总线连通。

在又一个实施例中,八个端口具有预设排序;

所述集成南桥配置为根据所述预设排序依次对每一端口进行读写操作;

所述cpld配置为获取硬盘接口上的硬盘的active信息并写入寄存器;以及

所述集成南桥配置为通过i2c总线读取cpld的寄存器以确定与当前读取的端口是否具有对应的硬盘接口;

所述集成南桥配置为响应于每完成一个硬盘读写操作,则将端口信息和对应的硬盘接口信息发送至所述cpld。

在又一个实施例中,所述cpld配置为接收端口信息和对应的硬盘接口信息;以及

根据所有接收到的端口信息和对应的硬盘接口信息得到所述硬盘接口与端口对应关系并写入寄存器,并将全部连接至硬盘的端口均作为目标端口。

在又一个实施例中,所述cpld配置为响应于接收到所述集成南桥通过sgpio信号线发送的点灯命令,则将所述硬盘接口与端口对应关系与所述点灯命令进行匹配以确定与目标端口对应的目标硬盘接口,以及基于目标硬盘接口对应点灯子命令得到目标点灯信息;以及

基于所述目标点灯信息控制对应的目标指示灯进行点亮操作。

在又一个实施例中,目标点灯信息包括对指示灯进行定位指示或错误灯指示。

在又一个实施例中,背板上硬盘接口数量为两个。

在另一个实施例中,结合图2所示,为了便于理解本发明的技术方案,下面以图1示出的服务器背板上两个硬盘背板接口(分别记作硬盘接口0和硬盘接口1)为例进行说明,具体的对该背板硬盘的点灯步骤具体实施步骤如下:

步骤一,服务器开机自检(poweronselftest,加电自检简称post),pch切换i2csw使pch与背板cpld连接;

步骤二,当post到硬盘初始化时候,按照port0到port7顺序读写硬盘;

步骤三,背板cpld记录硬盘的active信息到相关寄存器;

步骤四,pch每读写完成一个盘,通过i2c读取cpld相关寄存器值;

步骤五,当读写完成之后,pch将相应的连接信息传回给背板cpld。

步骤六,背板cpld记录上行连接port信息到寄存器,并且通过此信息解析sgpio的点灯命令去点相应硬盘的led;

举例来说,假设八个端口依次记作port0-port7,硬盘接口0和硬盘接口1接到port0-port7中任意两个端口上,pch的作用是在post过程中控制i2csw,将i2c信号切换到pch与cpld连接,并且通过sata信号port0到port7按照顺序读硬盘相关信息,背板cpld将背板active信号通过i2c传给pch,并判断pch回传的上行接的哪两个端口,期间每读到一个盘信息之后就要读取i2c信息看相应i2c地址是否有active信号传回,当读完相关端口之后将对应端口与硬盘接口连接关系回传给相关地址的背板cpld,假如读取port2和port3时pch接收到active信号回传,那么此时确认port2和port3为目标端口;

进一步地,当cpld接收到pch发送的sgpio的点灯命令时,只需解析port2和port3端口对应的子命令即可,假如根据子命令解析到对port2所连接的硬盘进行定位操,以及对port2所连接的硬盘进行错误指示操作,此时cpld控制与硬盘接口对应的指示灯进行现有显示即可。

根据本发明的又一方面,还提供了一种服务器背板硬盘点灯方法,所述服务器背板硬盘点灯方法包括通过以上所述的服务器背板硬盘点灯装置执行以下步骤:

通过cpld记录多个硬盘接口上的硬盘的读写状态,并与控制部件通过i2c总线通信以得到硬盘接口与端口对应关系;

响应于cpld接收到控制部件通过sgpio信号线发送的点灯命令,则基于硬盘接口与端口对应关系解析所述点灯命令以得到多硬盘接口对应的子命令,以分别对每个硬盘接口对应的指示灯进行点灯操作。

根据本发明的另一方面,还提供了一种服务器,所述服务器包括以上所述的服务器背板硬盘点灯装置。

以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。

应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。

上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

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