一种刀片服务器的固件烧结的方法及装置与流程

文档序号:15557445发布日期:2018-09-29 01:27阅读:235来源:国知局

本发明涉及刀片服务器技术领域,特别涉及一种刀片服务器的固件烧结的方法及装置。



背景技术:

随着世界科技的发展,cpu(centralprocessingunit,中央处理器)性能的逐渐提高,全球对于服务器的需求显著提高,为了满足大型的数据中心或者网络中心,刀片服务器开始大量用于云计算及通信领域。刀片服务器具有极高的资源密度,相同高度的机框,刀片服务器的cpu颗数、内存数量、接口卡数量都要高于架式服务器。同时,由于刀片服务器的整框资源集成度高,便于管理等特点,使得刀片服务器更容易在各种使用场景及业务中快速部署,丰富的交换及接口等功能,也让刀片服务器成为未来数据中心或者电信机房的核心配置。

出于组件化、易用性、易维护性等考虑,刀片服务器一般为分组模块化设计,由处理器板、交换板、管理板、接口板、机框、背板、风扇板、电源板等等部件组成,各部件之间由各种通讯总线相连,实现各模块之间的互联互通。而处理器板作为刀片服务器的核心,一般由处理器、内存、存储、接口模块、管理单元等等部分组成,处理器板一般位于刀片服务器机框的正面,从机框正面插入机框背板实现互联互通,如图1和图2所示。

处理器板上的管理模块bmc(baseboardmanagementcontroller,基板管理控制器)负责监控单板的状态,同时也可以对单板做各种控制,包括上电,下电,重启,点灯,虚拟化媒体等等操作。一般管理模块bmc与机框管理板通过i2c(inter-integratedcircuit,内部集成电路)、以太网等等方式连接,形成星型或者双星型架构。如图3所示。

处理器板的结构框图,如图4所示。以cpu系统为处理器板的核心,各接口卡,存储等通过标准总线,例如pcie(peripheralcomponentinterconnectexpress,外围组件快速互连),sas(serialattachedscsi,串行scsi),sata(serialata,串行ata)等方式进行连接,而管理模块负责对整板的状态的监视及控制。接口模块一般为pcie接口,按照英特尔架构,接口模块通过pcie总线提供各种通用标准总线,例如ge,10ge,fc,sas,infiniband等等。按照目前的soic(smalloutlineintegratedcircuitpackage,小外形集成电路封装)设计模式,接口模块上的接口芯片一般都为智能设备,需要外部增加用来运行业务的固件存储器flash,flash可能根据总线不同而型号也不尽相同,常用的基本上采用spi(serialperipheralinterface,串行外设接口)、i2c、localbus这三种标准总线方式连接。由于flash里存储了接口设备芯片需要运行的程序,配置等,因此处理器板就存在对于这种接口芯片的烧结及在线升级这道工序和需求,如图5所示。

目前市面上对于这种固件的烧结方式,基本上采用的是两种方法:

1.利用芯片厂家提供的pcie的带内烧结的工具进行烧结,要求是处理器板正常启动,操作系统加载正常。

2.在固件存储芯片焊接之前,在生产线先利用通用烧结器对芯片烧结,之后再把烧结了固件的芯片焊接到单板上。

以上两种方式,各有各自的利弊,第一种方式要求必须是cpu系统正常启动,接口模块相关部分电路工作正常,并且os(operatingsystem,操作系统)及烧结环境都已具备等等要求,而第二种方法只能用于生产线这种特殊场景,受制于环境,设备,工装等等因素,并不适合推广。

如图5所示,由于cpu系统与接口模块为pcie标准总线,而接口模块与存储固件的flash之间为i2c/spi/localbus等方式直连,因此,市面上如果要想烧结flash,只能通过厂家提供的烧结工具,通过cpu系统运行后经由pcie总线,再由接口模块主芯片解析,然后通过i2c/spi/localbus等标准总线进入flash,从而实现烧结flash的流程,这套流程非常复杂,需要烧结流程上的各个结点均工作正常才能实现,而从单板开始上电,如果单板无故障,到正常运行能开始烧结,一般都需要几分钟的时差。如果单板有故障,这个准备时间会无限延长。这个流程这是个标准的带内烧结模式。



技术实现要素:

根据本发明实施例提供的方案解决的技术问题是接口设备的固件烧结依赖复杂的处理器板及核心电路是否工作正常。

根据本发明实施例提供的一种刀片服务器的固件烧结的方法,包括:

在刀片服务器工作期间,刀片服务器固件通过二选一总线开关与刀片服务器接口模块进行正常业务;

在刀片服务器固件与刀片服务器接口模块进行正常业务时,刀片服务器管理模块对待烧结数据是否存在进行监测;

若刀片服务器管理模块监测到存在所述待烧结数据,则控制所述二选一总线开关进行切换,使所述待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中。

优选地,所述二选一总线开关包括用于与所述刀片服务器固件相连接的第一端口、用于与所述刀片服务器管理模块或线缆烧结插座相连接的第二端口以及用于与所述刀片服务器接口模块相连接的第三端口。

优选地,所述刀片服务器固件通过二选一总线开关与刀片服务器接口模块进行正常业务包括:

所述刀片服务器固件与所述二选一总线开关的第一端口连接,同时所述二选一总线开关的第三端口与所述刀片服务器接口模块连接进行正常业务。

优选地,所述刀片服务器管理模块监测到存在所述待烧结数据,则控制所述二选一总线开关进行切换包括:

所述刀片服务器管理模块监测到存在所述待烧结数据时,根据所述待烧结数据生成用于切换所述二选一总线开关的切换选择信号;

所述刀片服务器管理模块根据所生成的切换选择信号控制所述二选一总线开关进行切换。

优选地,所述刀片服务器管理模块控制所述二选一总线开关进行切换包括:

所述刀片服务器管理模块控制所述二选一总线开关的第三端口断开与所述刀片服务器接口模块的连接,同时接通所述二选一总线开关的第二端口与所述刀片服务器管理模块的连接。

优选地,还包括:

线缆烧结插座获取待烧结数据,并将待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中。

优选地,所述线缆烧结插座将待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中包括:

所述线缆烧结插座根据所述待烧结数据生成用于切换所述二选一总线开关的切换选择信号;

所述线缆烧结插座根据所生成的切换选择信号控制所述二选一总线开关的第三端口断开与所述刀片服务器接口模块的连接,同时接通所述二选一总线开关的第二端口与所述线缆烧结插座的连接。

根据本发明实施例提供的一种刀片服务器的固件烧结的装置,包括:

监测模块,用于在刀片服务器工作期间,在刀片服务器固件与刀片服务器接口模块进行正常业务时,对待烧结数据是否存在进行监测;

切换模块,用于当监测到存在所述待烧结数据,则控制所述二选一总线开关进行切换,使所述待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中。

优选地,所述二选一总线开关包括用于与所述刀片服务器固件相连接的第一端口、用于与所述刀片服务器管理模块或线缆烧结插座相连接的第二端口以及用于与所述刀片服务器接口模块相连接的第三端口。

优选地,所述切换模块具体用于在监测到存在所述待烧结数据时,根据所述待烧结数据生成用于切换所述二选一总线开关的切换选择信号,并根据所生成的切换选择信号控制所述二选一总线开关进行切换。

根据本发明实施例提供的方案,能够显著提高服务器pcie设备的固件烧结效率及正确性,实现了多种接口设备固件的多种烧结模式,使得接口设备的固件烧结,不再依赖复杂的处理器板及核心电路是否工作正常,从而实现对固件的带外烧结与在线升级。

附图说明

图1是现有技术提供的普通刀片服务器正面面板外形图;

图2是现有技术提供的普通刀片服务器处理器板插入机框的安装图;

图3是现有技术提供的普通刀片服务器的管理模块示意图;

图4是现有技术提供的刀片服务器处理器板的结构框图;

图5是现有技术提供的cpu系统与接口模块的常用连接示意图;

图6是本发明实施例提供的一种刀片服务器的固件烧结的方法流程图;

图7是本发明实施例提供的一种刀片服务器的固件烧结的装置示意图;

图8是本发明实施例提供的bmc与处理器板及机框管理板的结构框图;

图9是本发明实施例提供的epld实现的单接口模块的烧结逻辑框图;

图10是本发明实施例提供的epld实现的多接口模块的烧结逻辑框图;

图11是本发明实施例提供的烧结判断流程图。

具体实施方式

以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图6是本发明实施例提供的一种刀片服务器的固件烧结的方法流程图,如图6所示,包括:

步骤s601:在刀片服务器工作期间,刀片服务器固件通过二选一总线开关与刀片服务器接口模块进行正常业务;

步骤s602:在刀片服务器固件与刀片服务器接口模块进行正常业务时,刀片服务器管理模块对待烧结数据是否存在进行监测;

步骤s603:若刀片服务器管理模块监测到存在所述待烧结数据,则控制所述二选一总线开关进行切换,使所述待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中。

其中,所述二选一总线开关包括用于与所述刀片服务器固件相连接的第一端口、用于与所述刀片服务器管理模块或线缆烧结插座相连接的第二端口以及用于与所述刀片服务器接口模块相连接的第三端口。

具体地说,所述刀片服务器固件通过二选一总线开关与刀片服务器接口模块进行正常业务包括:所述刀片服务器固件与所述二选一总线开关的第一端口连接,同时所述二选一总线开关的第三端口与所述刀片服务器接口模块连接进行正常业务。

具体地说,所述刀片服务器管理模块监测到存在所述待烧结数据,则控制所述二选一总线开关进行切换包括:所述刀片服务器管理模块监测到存在所述待烧结数据时,根据所述待烧结数据生成用于切换所述二选一总线开关的切换选择信号;所述刀片服务器管理模块根据所生成的切换选择信号控制所述二选一总线开关进行切换。

其中,所述刀片服务器管理模块控制所述二选一总线开关进行切换包括:所述刀片服务器管理模块控制所述二选一总线开关的第三端口断开与所述刀片服务器接口模块的连接,同时接通所述二选一总线开关的第二端口与所述刀片服务器管理模块的连接。

本发明实施例还包括:线缆烧结插座获取待烧结数据,并将待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中。其中,所述线缆烧结插座将待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中包括:所述线缆烧结插座根据所述待烧结数据生成用于切换所述二选一总线开关的切换选择信号;所述线缆烧结插座根据所生成的切换选择信号控制所述二选一总线开关的第三端口断开与所述刀片服务器接口模块的连接,同时接通所述二选一总线开关的第二端口与所述线缆烧结插座的连接。

图7是本发明实施例提供的一种刀片服务器的固件烧结的装置示意图,如图7所示,包括:监测模块701,用于在刀片服务器工作期间,在刀片服务器固件与刀片服务器接口模块进行正常业务时,对待烧结数据是否存在进行监测;切换模块702,用于当监测到存在所述待烧结数据,则控制所述二选一总线开关进行切换,使所述待烧结数据经由所述二选一总线开关烧结到所述刀片服务器固件中。

其中,所述二选一总线开关包括用于与所述刀片服务器固件相连接的第一端口、用于与所述刀片服务器管理模块或线缆烧结插座相连接的第二端口以及用于与所述刀片服务器接口模块相连接的第三端口。

其中,所述切换模块701具体用于在监测到存在所述待烧结数据时,根据所述待烧结数据生成用于切换所述二选一总线开关的切换选择信号,并根据所生成的切换选择信号控制所述二选一总线开关进行切换。

本发明实施例在刀片服务器接口模块和刀片服务器flash之间增加一套i2c/spi/localbus等标准总线的切换模块,一般可由可编程逻辑器件epld(erasableprogrammablelogicdevice,可擦除可编辑逻辑器件)实现,也可由其他二选一总线开关实现。如图8所示。刀片服务器接口模块与epld之间,依然是刀片服务器接口模块提供的标准spi/i2c/localbus等标准总线,各接口芯片可能不同;epld与刀片服务器flash之间也是对应的spi/i2c/lcoalbus等标准总线,而在epld之外,额外增加epld和刀片服务器bmc的通讯总线,这个也是根据刀片服务器bmc对外可提供的标准总线而定,同时epld还可以连接一个烧结线缆插座,连接方式为各产品烧结线缆对应的spi/i2c/lpc等常用总线,这个为优化性设计。而本发明中所述的刀片服务器接口模块,可以是焊接在处理器板上的芯片,也可以是装配在处理器板上的接口子卡等形式。

通过上述的设计方式,通过在可编程器件epld内,实现一对多的总线切换开关。为了便于叙述,下面以使用spi作为标准存储flash的设计进行描述,spi作为存储flash接口的情况比较常见,i2c、localbus等其他标准总线的设计方法类似。如图9所示。

刀片服务器接口模块的spi总线原用于连接刀片服务器flash,现直接与epld相连,刀片服务器flash的spi总线也与epld相连,而刀片服务器bmc也提供一套标准spi总线连入epld,同时,epld还可以额外连入一个线缆烧结插座,线缆烧结插座也可以通过spi总线和epld相连。epld的内部,通过逻辑设计,首先实现一个支持总线总裁的spi总线的二选一选择器,其中p0端口为接口模块总线通道,p1端口为烧结总线通道(bmc/线缆烧结插座),p端口为flash的总线通道。另外,epld中还需要设计一个选择逻辑,通过对spi总线的解析,通过寄存器控制的方式,实现刀片服务器bmc的spi总线,与线缆烧结插座的spi总线的选择与切换。同时,该选择逻辑还可控制二选一选择器的端口选择控制信号。在单板上电时,默认选择p端口与p0端口相连,这样可以保证刀片服务器接口模块与刀片服务器flash之间的正常业务。只有当单板处于烧结模式时,才通过刀片服务器bmc或者线缆烧结插座,控制选择逻辑寄存器,将连接刀片服务器flash的p端口切换到p1端口,切换成功后刀片服务器bmc或者线缆烧结插座便可直接访问flash的spi接口,从而实现对刀片服务器flash的烧结。

刀片服务器bmc本身是作为处理器板的管理模块,如图8所示,通过机框管理板与外部烧结主机相连,烧结主机通过烧结软件将待烧结的固件通过管理板发送给处理器板的刀片服务器bmc模块,刀片服务器bmc模板通过预先定义的待烧结固件的相关信息,控制选择逻辑,切换和刀片服务器flash之间的总线通道为烧结通道(即图9中的p1口),实现刀片服务器bmc对刀片服务器flash的直接总线读写,从而实现了对刀片服务器flash的烧结和升级。

由于一块处理器板上待烧结固件可能不止一个,因此本发明也适用于对于多个刀片服务器接口模块的实现。以单板存在三个待烧结的刀片服务器接口模块为例,如图10所示。默认上电时,刀片服务器接口模块a/b/c的相应总线开关都默认切换到p端口连接到p0端口,此时为正常业务阶段。当需要进行烧结和升级操作时,刀片服务器bmc或者线缆烧结插座通过实现选择逻辑,操作选择逻辑寄存器,切换相应的二选一总线开关的端口选择管脚sel,每次只切换一个二选一总线开关,将其p端口切换为与p1端口相连,即将刀片服务器flash切入烧结通道,从而实现刀片服务器bmc或者线缆烧结插座对刀片服务器flash的直接读写。烧结并校验完成后,再将p端口切换回到与p0端口相连恢复为正常业务通道。依次切换各个待烧结固件的刀片服务器接口模块的总线开关,实现对固件的烧结与升级。。

图11是正常烧结的流程图。在此需要说明的是,刀片服务器bmc与线缆烧结插座相当于两个独立的烧结主体,刀片服务器bmc借助机框管理板实现的是机框上烧结通道;而线缆烧结插座,在借助烧结线缆的帮助下,实现的是机框下的烧结操作。各个厂家可以独立设计自己的生产烧结线缆,烧结线缆烧结固件的原理与刀片服务器bmc烧结的原理是基本一致的。烧结线缆不是本发明的主要内容,借助本发明可以实现烧结线缆和刀片服务器bmc烧结的这两种烧结方式的兼容。由于存在烧结线缆和刀片服务器bmc烧结同时访问epld内部烧结总线的情况,因此,在选择逻辑中做了总线仲裁。当刀片服务器bmc和烧结线缆同时进行固件烧结操作时,只能使用其中一个设备操作内部烧结通道。

对于二选一总线开关为常用逻辑器件,本发明并不限与使用epld大规模可编程逻辑器件实现,利用常用逻辑门也可以实现此处逻辑,甚至还可以根据设计情况进行取舍,简化此处功能设计。

根据本发明实施例提供的方案,在刀片服务器的处理器板上,接口设备芯片与存储芯片之间增加总线切换开关,并将总线切换开关的相关控制信号引入到单板bmc中。总线切换开关可以使用可编程逻辑器件或者二选一多路复用器等实现,可编程逻辑器件可直接与单板cpu系统自带的逻辑器件合并使用,因此在不影响常用各接口模块的基本业务的情况下,提高了对于处理器板上越来越多的需要烧结的接口模块的固件烧结速度,简化的了烧结流程,加快了烧结进度,减少了单板的烧结错误率,对于保障单板发货,实现智能化生产与加工,具有显著的作用。

尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。

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