本发明涉及服务器配置技术领域,特别是涉及一种服务器系统。本发明还涉及一种用于服务器系统的FLASH配置方法。
背景技术:
在服务器系统中,PCH(Platform Controller Hub)为平台管理控制中心,负责BIOS(Basic Input Output System,基本输入输出系统)开机、扩展对外I/O等功能,在PCH控制BIOS系统开机时,需要从PCH配置的FLASH中获取相应的代码,目前的PCH通常配置一个FLASH,一旦FLASH出现问题时,BMC(Baseboard Management Controller,基板管理控制器)会对FLASH进行远程烧录,若烧录失败,则FLASH只能进行更换,给用户造成较大的损失,且降低了服务器系统的可靠性。
因此,如何提供一种能够减少FLASH更换次数且系统可靠性高的服务器系统及用于服务器系统的FLASH配置方法是本领域技术人员目前需要解决的问题。
技术实现要素:
本发明的目的是提供一种服务器系统,通过设置冗余FLASH,降低由于一个FLASH出现问题导致的服务器不能工作的风险,提高系统的可靠性,并依据两个FLASH之间的数据恢复,减少更换次数,降低用户损失;本发明的另一目的是提供一种用于服务器系统的FLASH配置方法。
为解决上述技术问题,本发明提供了一种服务器系统,包括PCH平台管理控制中心、BMC基板管理控制器,两个FLASH和多路选择装置;所述多路选择装置分别与所述PCH、所述BMC和两个所述FLASH连接;
所述BMC,用于正常情况下,控制所述多路选择装置使所述PCH与所述第一FLASH导通;若检测到所述PCH的代码获取失败,则通过控制所述多路选择装置使自身与所述第一FLASH之间导通,并对所述第一FLASH进行远程烧录;若烧录失败,通过控制所述多路选择装置使所述PCH与所述第二FLASH导通,若所述BMC检测到所述PCH获取所述第二FLASH的代码失败,则通过控制所述多路选择装置使自身与所述第二FLASH之间导通,并对所述第二FLASH进行远程烧录;
所述PCH,用于在与所述第一FLASH导通时,获取所述第一FLASH内的代码进行相应的程序操作;在与所述第二FLASH导通时,获取所述第二FLASH内的代码进行相应的程序操作;若成功获取所述第二FLASH内的代码,将获取的代码发送至所述第一FLASH内,供所述第一FLASH进行数据恢复。
优选地,所述多路选择装置具体包括两个多路选择器;第一选择器分别连接所述PCH、第一FLASH;第二选择器分别连接所述PCH、所述BMC和第二FLASH;
所述BMC具体用于:
正常情况下,控制所述第一选择器使所述PCH与所述第一FLASH导通;若检测到所述PCH的代码获取失败,则通过控制所述第一选择器使自身与所述第一FLASH之间导通,并对所述第一FLASH进行远程烧录;若烧录失败,通过控制所述第二选择器使所述PCH与所述第二FLASH导通,若所述BMC检测到所述PCH获取所述第二FLASH的代码失败,则通过控制所述第二选择器使自身与所述第二FLASH之间导通,并对所述第二FLASH进行远程烧录。
优选地,所述第一选择器与所述第二选择器均为多路复用器。
为解决上述技术问题,本发明还提供了一种用于服务器系统的FLASH配置方法,所述服务器系统包括PCH平台管理控制中心、BMC基板管理控制器、两个FLASH和多路选择装置;所述多路选择装置分别与所述PCH、所述BMC和两个所述FLASH连接;所述方法包括:
正常情况下,所述多路选择装置控制所述PCH与所述第一FLASH导通,所述PCH获取所述第一FLASH内的代码进行相应的程序操作;
若所述BMC检测到所述PCH的代码获取失败,则通过控制所述多路选择装置使自身与所述第一FLASH之间导通,并对所述第一FLASH进行远程烧录;
若烧录失败,所述BMC通过控制所述多路选择装置使所述PCH与所述第二FLASH导通,所述PCH获取所述第二FLASH内的代码进行相应的程序操作;
若所述BMC检测到所述PCH获取所述第二FLASH内的代码失败,则通过控制所述多路选择装置使自身与所述第二FLASH之间导通,并对所述第二FLASH进行远程烧录;若所述PCH的代码获取成功,所述PCH将获取的代码发送至所述第一FLASH内,供所述第一FLASH进行数据恢复。
优选地,所述多路选择装置具体包括两个多路选择器;第一选择器分别连接所述PCH、第一FLASH;第二选择器分别连接所述PCH、所述BMC和第二FLASH;所述方法具体包括:
正常情况下,所述第一选择器控制所述PCH与所述第一FLASH导通,所述PCH获取所述第一FLASH内的代码进行相应的程序操作;
若所述BMC检测到所述PCH的代码获取失败,则通过控制所述第一选择器使自身与所述第一FLASH之间导通,并对所述第一FLASH进行远程烧录;
若烧录失败,所述BMC通过控制所述第二选择器使所述PCH与所述第二FLASH导通,所述PCH获取所述第二FLASH内的代码进行相应的程序操作;
若所述BMC检测到所述PCH获取所述第二FLASH内的代码失败,则通过控制所述第一选择器使自身与所述第二FLASH之间导通,并对所述第二FLASH进行远程烧录;若所述PCH的代码获取成功,所述PCH将获取的代码发送至所述第一FLASH内,供所述第一FLASH进行数据恢复。
优选地,所述PCH获取所述第一FLASH内的代码进行的程序操作具体为启动BIOS。
本发明提供了一种服务器系统,包括PCH、BMC、两个FLASH以及多路选择装置,正常情况下,PCH与第一FLASH导通,若第一FLASH出现问题,则控制BMC与第一FLASH导通进行远程烧录,若烧录失败,则将PCH与第二FLASH导通,重复上述步骤,一旦PCH成功获取代码,则将代码发送至第一FLASH,供第一FLASH进行数据恢复。可见,本发明通过设置冗余FLASH,能够降低由于一个FLASH出现问题导致的服务器不能工作的风险,提高了系统的可靠性;并且通过将第二FLASH的代码发送至第一FLASH进行数据恢复,能够减少第一FLASH的更换次数,降低用户损失。本发明还提供了一种用于服务器系统的FLASH配置方法,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种服务器系统的结构示意图;
图2为本发明提供的一种用于服务器系统的FLASH配置方法的过程的流程图。
具体实施方式
本发明的核心是提供一种服务器系统,通过设置冗余FLASH,降低由于一个FLASH出现问题导致的服务器不能工作的风险,提高系统的可靠性,并依据两个FLASH之间的数据恢复,减少更换次数,降低用户损失;本发明的另一核心是提供一种用于服务器系统的FLASH配置方法。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种服务器系统,包括PCH平台管理控制中心、BMC基板管理控制器,两个FLASH和多路选择装置;多路选择装置分别与PCH、BMC和两个FLASH连接;
BMC,用于正常情况下,控制多路选择装置使PCH与第一FLASH导通;若检测到PCH的代码获取失败,则通过控制多路选择装置使自身与第一FLASH之间导通,并对第一FLASH进行远程烧录;若烧录失败,通过控制多路选择装置使PCH与第二FLASH导通,若BMC检测到PCH获取第二FLASH的代码失败,则通过控制多路选择装置使自身与第二FLASH之间导通,并对第二FLASH进行远程烧录;
PCH,用于在与第一FLASH导通时,获取第一FLASH内的代码进行相应的程序操作;在与第二FLASH导通时,获取第二FLASH内的代码进行相应的程序操作;若成功获取第二FLASH内的代码,将获取的代码发送至第一FLASH内,供第一FLASH进行数据恢复。
其中,PCH获取第一FLASH内的代码进行的程序操作具体为启动BIOS。当然,这里的操作也可以是其他PCH需要获取FLASH内的代码才可以进行操作,操作的具体内容本发明不作限定。
可以理解的是,当第一FLASH没有损坏的情况下,通过将第二FLASH内的代码发送至第一FLASH内,即可进行数据恢复,从而降低用户的成本损失以及返厂维修的时间,
在一种具体实施例中,多路选择装置具体包括两个多路选择器;第一选择器分别连接PCH、第一FLASH;第二选择器分别连接PCH、BMC和第二FLASH;
BMC具体用于:
正常情况下,控制第一选择器使PCH与第一FLASH导通;若检测到PCH的代码获取失败,则通过控制第一选择器使自身与第一FLASH之间导通,并对第一FLASH进行远程烧录;若烧录失败,通过控制第二选择器使PCH与第二FLASH导通,若BMC检测到PCH获取第二FLASH的代码失败,则通过控制第二选择器使自身与第二FLASH之间导通,并对第二FLASH进行远程烧录。
具体的,PCH与BMC与第一选择器连接时采用的自身的CS0引脚,即选通信号为自身的CS0信号(CS为片选信号);PCH与BMC与第二选择器连接时采用的自身的CS1引脚,即选通信号为自身的CS1信号;BMC通过两路GPIO(General Purpose Input Output,通用输入/输出)分别控制第一选择器和第二选择器的选通权。
其中,第一选择器与第二选择器均为多路复用器MUX,当然,这里的选择器可以采用其他器件,本发明对此不作具体限定。参见图1所示,图1为本发明提供的一种服务器系统的结构示意图。其中,PCH_SPI_CS0为PCH的CS0引脚通过SPI(Serial Peripheral Interface,串行外设接口)连接MUX1,PCH_SPI_CS1为PCH的CS1引脚通过SPI连接MUX2;BMC_SPI_CS0为BMC的CS0引脚通过SPI连接MUX1,BMC_SPI_CS1为BMC的CS1引脚通过SPI连接MUX2,MUX1_SEL为BMC输出控制MUX1的选通权的引脚,MUX2_SEL为BMC输出控制MUX2的选通权的引脚;SPI_1为MUX1通过SPI连接第一FLASH的接口总线,SPI_2为MUX2通过SPI连接第一FLASH的接口总线。
另外,多路选择装置也可由一个选择器构成,具体如何实现本发明不作限定。
本发明提供了一种服务器系统,包括PCH、BMC、两个FLASH以及多路选择装置,正常情况下,PCH与第一FLASH导通,若第一FLASH出现问题,则控制BMC与第一FLASH导通进行远程烧录,若烧录失败,则将PCH与第二FLASH导通,重复上述步骤,一旦PCH成功获取代码,则将代码发送至第一FLASH,供第一FLASH进行数据恢复。可见,本发明通过设置冗余FLASH,能够避免由于一个FLASH出现问题导致的不能开机的问题,降低了FLASH故障时服务器不能工作的风险,提高了系统的可靠性;并且通过将第二FLASH的代码发送至第一FLASH进行数据恢复,能够减少第一FLASH的更换次数,降低用户损失。
本发明还提供了一种用于服务器系统的FLASH配置方法,服务器系统包括PCH平台管理控制中心、BMC基板管理控制器、两个FLASH和多路选择装置;多路选择装置分别与PCH、BMC和两个FLASH连接;参见图2所示,图2为本发明提供的一种用于服务器系统的FLASH配置方法的过程的流程图。该方法包括:
步骤s101:正常情况下,多路选择装置控制PCH与第一FLASH导通,PCH获取第一FLASH内的代码进行相应的程序操作;
步骤s102:若BMC检测到PCH的代码获取失败,则通过控制多路选择装置使自身与第一FLASH之间导通,并对第一FLASH进行远程烧录;
步骤s103:若烧录失败,BMC通过控制多路选择装置使PCH与第二FLASH导通,PCH获取第二FLASH内的代码进行相应的程序操作;
步骤s104:若BMC检测到PCH获取第二FLASH内的代码失败,则通过控制多路选择装置使自身与第二FLASH之间导通,并对第二FLASH进行远程烧录;若PCH的代码获取成功,PCH将获取的代码发送至第一FLASH内,供第一FLASH进行数据恢复。
作为优选地,多路选择装置具体包括两个多路选择器;第一选择器分别连接PCH、第一FLASH;第二选择器分别连接PCH、BMC和第二FLASH;方法具体包括:
正常情况下,第一选择器控制PCH与第一FLASH导通,PCH获取第一FLASH内的代码进行相应的程序操作;
若BMC检测到PCH的代码获取失败,则通过控制第一选择器使自身与第一FLASH之间导通,并对第一FLASH进行远程烧录;
若烧录失败,BMC通过控制第二选择器使PCH与第二FLASH导通,PCH获取第二FLASH内的代码进行相应的程序操作;
若BMC检测到PCH获取第二FLASH内的代码失败,则通过控制第一选择器使自身与第二FLASH之间导通,并对第二FLASH进行远程烧录;若PCH的代码获取成功,PCH将获取的代码发送至第一FLASH内,供第一FLASH进行数据恢复。
其中,PCH获取第一FLASH内的代码进行的程序操作具体为启动BIOS。
本发明提供了一种用于服务器系统的FLASH配置方法,包括PCH、BMC、两个FLASH以及多路选择装置,正常情况下,PCH与第一FLASH导通,若第一FLASH出现问题,则控制BMC与第一FLASH导通进行远程烧录,若烧录失败,则将PCH与第二FLASH导通,重复上述步骤,一旦PCH成功获取代码,则将代码发送至第一FLASH,供第一FLASH进行数据恢复。可见,本发明通过设置冗余FLASH,能够避免由于一个FLASH出现问题导致的不能开机的问题,提高了系统的可靠性;并且通过将第二FLASH的代码发送至第一FLASH进行数据恢复,能够减少第一FLASH的更换次数,降低用户损失。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。