多路服务器及其信号处理方法

文档序号:6638998阅读:447来源:国知局
多路服务器及其信号处理方法
【专利摘要】本发明公开了一种多路服务器及其信号处理方法,所述多路服务器包括多个CPU、多个PBI板,以及关键信号处理板,每个PBI板监控至少两个CPU。各个PBI板的输出端分别连接关键信号处理板的输入端,各个PBI板的输入端分别连接关键信号处理板的输出端。所述多路服务器通过关键信号处理板接收各个PBI板发出的关键信号,然后,同时向相应的PBI板发送与所述关键信号对应的回应信号,从而保证CPU收到的回应信号满足多路服务器的要求。由上述内容可知,各个PBI板直接与关键信号处理板连接,不需要切换开关进行串联,减少切换开关的数量,结构简单、可靠性高。而且减少了信号所经过的切换开关的数量,提高了信号质量。
【专利说明】多路服务器及其信号处理方法

【技术领域】
[0001]本发明涉及服务器【技术领域】,特别是涉及一种多路服务器及其信号处理方法。

【背景技术】
[0002]多路服务器是指服务器内物理CPU的数量有多个,服务器中物理CPU的数量决定服务器中“多路”的数量,例如,服务器中包含16个物理CPU,则为16路服务器。多路服务器中物理CPU的数量越多,其处理数据的能力越高,因此,16路和32路的服务器成为多路服务器的发展趋势。
[0003]若实现32路服务器,必须实现32路内信号全互联,且对时序要求极为严格。例如,在多路服务器开机时,所有的CPU收到表示电源正常的Powergood信号的时间差必须监控在1ns以内,并记录该时刻为TO ;在实现CPU热插拔、online或offline时,新上线的CPU (Intel Ivybridge处理器)收到Powergood的信号时间必须为T0+864bclks(若米用Intel Haswell处理器,贝丨」为T0+384bclks)。而Intel公司只给出了 8路及以下的服务器中关键信号(例如,Caterr、PMSYNC、Powergood、TSC等信号)的处理方式,对于8路以上的服务器没有给出任何推荐方案。
[0004]假设采用Intel给出的8路服务器对关键信号的处理方式实现16路及以上的服务器,由于8路服务器是通过切换开关将不同基本单板(每个基本单板上设置有多个CPU,所述单板上的CPU数量是最小硬分区的单位)串联在一起,需要切换开关数量多,当传递关键信号时,需要控制相应的切换开关联动才能实现,实现过程极其复杂、可靠性差,且经过多级带有内阻的切换开关后,信号质量变得很差。


【发明内容】

[0005]本发明实施例中提供了一种多路服务器及其信号处理方法,以解决现有技术中的方案复杂、可靠性差集信号质量差的问题。
[0006]为了解决上述技术问题,本发明实施例公开了如下技术方案:
[0007]第一方面,本发明提供一种多路服务器,包括:多个CPU、多个南桥基板管理监控器输入输出PBI板,以及关键信号处理板,其中,一个PBI板监控至少两个CPU ;
[0008]所述PBI板连接自身监控的CPU ;
[0009]各个PBI板的输出端连接所述关键信号处理板的输入端,各个PBI板的输入端连接所述关键信号处理板的输出端,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号;
[0010]接收到所述回应信号的PBI板将所述回应信号分别发送给自身监控的CPU。
[0011]结合第一方面,在第一方面的第一种可能的实现方式中,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,包括:
[0012]当所述多路服务器作为一个服务器进行上电时,所述关键信号处理板接收到所述多路服务器内的全部PBI板分别发送的第一类电源上电信号后,同时向所述全部PBI板发送作为与所述第一类电源上电信号相对应的回应信号的第二类电源上电信号,以使所述多路服务器内的全部CPU接收到第二类电源上电信号的时间差满足预设时间要求;
[0013]若所述多路服务器内的全部CPU划分成至少两个子服务器,当任意一个子服务器上电时,所述关键信号处理板接收到所述子服务器内的全部PBI板分别发送的所述第三类电源上电信号后,同时向所述子服务器内的全部PBI板分别发送作为与所述第三类电源上电信号相对应的第四类电源上电信号,以使所述子服务器内的全部CPU接收到所述第四类电源上电信号的时间差满足预设时间要求;
[0014]其中,所述第一类电源上电信号和所述第三类电源上电信号均由所述PBI板检测到自身监控的各个CPU的电源均上电完成时产生。
[0015]结合第一方面,在第一方面的第二种可能的实现方式中,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,包括:
[0016]当所述多路服务器中插入新的CPU时,所述关键信号处理板接收到所述新的CPU对应的PBI板发送的第五类电源上电信号后,在预设时刻向所述新的CPU对应的PBI板发送作为与所述第五类电源上电信号相对应的回应信号的第六类电源上电信号,以使所述新的CPU接收到所述第六类电源上电信号的时间满足预设时间要求;
[0017]所述第五类电源上电信号由所述PBI板检测到所述新的CPU上电完成时产生。
[0018]结合第一方面,在第一方面的第三种可能的实现方式中,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,包括:
[0019]若所述多路服务器作为一个服务器使用,所述关键信号处理板接收到任意一个PBI板发送的第一系统错误信号后,分别向所述多路服务器中除发送所述系统错误信号PBI之外的其它各个PBI板发送作为与所述第一系统错误信号对应的回应信号的第二系统错误信号;
[0020]若所述多路服务器划分成至少两个子服务器,所述关键信号处理板接收到任意一个PBI板发送的第三系统错误信号时,根据获得的所述子服务器信息确定与发送所述第三系统错误信号的PBI板属于同一个子服务器的其它各个PBI板;分别向所述子服务器中除发送所述第三系统错误信号的PBI板之外的其它各个PBI板发送作为与所述第三系统错误信号对应的回应信号的第四系统错误信号。
[0021]结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,还包括:
[0022]当检测到当前PBI板发送的第一系统错误信号或第三系统错误由有效状态变为无效状态时,所述关键信号处理板接收下一个第一系统错误信号或第三系统错误信号。
[0023]第二方面,本发明提供一种多路服务器的信号处理方法,应用于多路服务器中,所述多路服务器包括多个CPU、多个南桥基板管理监控器输入输出PBI板,以及关键信号处理板,其中,一个PBI板监控至少两个CPU ;所述方法包括:
[0024]所述关键信号处理板接收所述PBI板发送的关键信号;
[0025]所述关键信号处理板根据接收到的所述关键信号向所述PBI板返回与所述关键信号相对应的回应信号,以使接收到所述回应信号的所述PBI板将所述回应信号发送给所述PBI板监控的CPU。
[0026]结合第二方面,在第二方面的第一种可能的实现方式中,所述关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号,包括:
[0027]当所述多路服务器作为一个服务器进行上电时,所述关键信号处理板接收到所述多路服务器内的全部PBI板分别发送的第一类电源上电信号后,同时向全部PBI板发送作为与所述第一类电源上电信号相对应的回应信号的第二类电源上电信号,以使所述多路服务器内的全部CPU接收到第二类电源上电信号的时间差满足预设时间要求;
[0028]若所述多路服务器内的全部CPU划分成至少两个子服务器,当任意一个子服务器上电时,所述关键信号处理板接收到所述子服务器内的全部PBI板分别发送的所述第三类电源上电信号后,同时向所述子服务器内的全部PBI板分别发送作为与所述第三类电源上电信号相对应的回应信号的第四类电源上电信号,以使所述子服务器内的全部CPU接收到所述第四类电源上电信号的时间差满足预设时间要求;
[0029]其中,所述第一类电源上电信号和所述第三类电源上电信号均由所述PBI板检测到自身监控的各个CPU的电源均上电完成时产生。
[0030]结合第二方面,在第二方面的第二种可能的实现方式中,所述关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号,包括:
[0031]当所述多路服务器中插入新的CPU时,所述关键信号处理板接收到所述新的CPU对应的PBI板发送的第五类电源上电信号后,在预设时刻向所述新的CPU对应的PBI板发送作为与所述第五类电源上电信号相对应的回应信号的第六类电源上电信号,以使所述新的CPU接收到所述第六类电源上电信号的时间满足预设时间要求;
[0032]所述第五类电源上电信号由所述PBI板检测到所述新的CPU上电完成时产生。
[0033]结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号包括:
[0034]若所述多路服务器作为一个服务器使用,所述关键信号处理板接收到任意一个PBI板发送的第一系统错误信号后,同时向所述多路服务器中除发送所述系统错误信号PBI之外的其它各个PBI板发送作为与所述第一系统错误信号对应的回应信号的第二系统错误信号;
[0035]若所述多路服务器划分成至少两个子服务器,所述关键信号处理板获取所述多路服务器的子服务器信息,当接收到任意一个PBI板发送的第三系统错误信号时,根据所述子服务器信息确定与发送所述第三系统错误信号的PBI板属于同一个子服务器的其它各个PBI板;同时向所述子服务器中除发送所述第三系统错误信号的PBI板之外的其它各个PBI板发送作为与所述第三系统错误信号对应的回应信号的第四系统错误信号。
[0036]结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述方法还包括:
[0037]当检测到当前PBI板发送的第一系统错误信号或第三系统错误由有效状态变为无效状态时,所述关键信号处理板接收下一个第一系统错误信号或第三系统错误信号。
[0038]由以上技术方案可见,本发明实施例提供的多路服务器包括:多个CPU、多个PBI (PCHBMC 10,南桥基板管理监控器输入输出)板和一个关键信号处理板,其中,BMC为Baseboard Management Controller,基板管理监控器。每个PBI板监控至少两个CPU,且每个PBI板与自身所监控的CPU连接。各个PBI板的输出端分别连接所述关键信号处理板的输入端,各个PBI板的输入端分别连接所述关键信号处理板的输出端。由此可知,各个CPU分别与相应的PBI板连接,PBI板直接与关键信号处理板连接。所述多路服务器通过关键信号处理板接收各个PBI板发出的关键信号,然后,同时向相应的PBI板发送对应的回应信号。各个PBI板直接与关键信号处理板连接,不需要切换开关进行串联,减少切换开关的数量,结构简单、可靠性高。而且减少了信号所经过的切换开关的数量,提高了信号质量。

【专利附图】

【附图说明】
[0039]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0040]图1为本发明实施例一种多路服务器的结构示意图;
[0041]图2为本发明实施例一种PBI板的结构示意图;
[0042]图3为本发明实施例一种多路服务器的信号处理方法的流程图。

【具体实施方式】
[0043]为了使本【技术领域】的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0044]参见图1,示出了本发明实施例提供的一种多路服务器的结构示意图,本实施例以32路服务器为例进行说明。当然,在本发明的其它实施例中,多路服务器可以是16路、8路、4路的服务器,PBI板的数量可以根据实际需要灵活确定。
[0045]如图1所示,所述多路服务器包括:32个CPU、至少8个PBI板和I个关键信号处理板。
[0046]本实施例以I个PBI板监控4个CPU为例进行说明,例如,PBII监控CPUl?CPU4,PB 12 监控 CPU5 ?CPU8,PB 13 监控 CPU9 ?CPU12,PB 14 监控 CPU13 ?CPU16,依次类推,PB 18监控 CPU29 ?CPU32。
[0047]每个PBI板均连接自身监控的多个CPU,CPUl?CPU4与PBIl连接,CPU5?CPU8与PBI2连接,依次类推,CPU29?CPU32与PBI8连接。
[0048]由于PBI板上的I/O接口的数量有限,PBI板通过自身的I/O接口连接自身监控的部分CPU,自身监控的另一部分CPU通过背板连接PBI板。
[0049]当然,在本发明的其它实施例中,可以是I个PBI板监控2个或者8个CPU。如果I个PBI板监控2个CPU,则32路服务器需要配置16个PBI板;如果I个PBI板监控8个CPU,则32路服务器需要配置4个PBI板。
[0050]各个PBI板均包括输入端和输出端,各个PBI板的输入端分别连接关键信号处理板100的输出端,各个PBI板的输出端分别连接关键信号处理板100的输入端。
[0051]PBI板接收到CPU发送的关键信号或者自身监控CPU的状态而产生相应的关键信号后,直接将关键信号发送给关键信号处理板100,由关键信号处理板100向相应的PBI板发送与所述关键信号相对应的回应信号。接收到回应信号的PBI板将所述回应信号发送给相应的CPU,从而保证各个CPU接收到回应信号满足要求。
[0052]其中,所述关键信号包括但不限于Powergood信号、Caterr信号、PMSYNC信号、TSC (Time Stamp Counte,时间戮计数器)信号、S4 信号、Thermtrip 信号、Powerbutton 信号、MSMI信号等。
[0053]不同的关键信号对应的回应信号也不同,不同的回应信号的功能也不同。总体而言,通过回应信号使多路服务器中的各个CPU之间的关键信号满足多路服务器的要求。例如,Powergood信号的回应信号仍是Powergood信号,CPU收到Powergood信号后启动。
[0054]在多路服务器中,通过Powergood信号通知CPU:外界的各个电源已经完成上电。多路服务器对Powergood信号有非常严格的时序要求,例如,在多路服务器开机时,所有(PU收到的Powergood信号的时间差必须监控在1ns以内,这样能最大限度提高32路服务器的系统性能。并记录向各个CPU发送Powergood信号的时刻为初始时刻TO。
[0055]例如,多路服务器作为一个服务器进行上电时,PBI板检测到自身监控的CPU上电后,向关键信号处理板发送第一 Powergood信号(即,第一类电源上电信号)。当关键信号处理板接收到服务器内的全部PBI板分别发送的第一类Powergood信号后,同时向多路服务器内全部的PBI板返回第二 Powergood信号(即,第二类电源上电信号)。PBI板接收到关键信号处理板发送的第二 Powergood信号后,分别发送给自身监控的CPU。这样,由关键信号处理板将第二 Powergood信号统一发送给各个PBI板,然后,再由各个PBI板分别发送给自身监控的CPU,从而保证多路服务器内的各个CPU接收到第二 Powergood信号的时间差在预设时间(例如,1ns)内。
[0056]在CPU实现热插拔、online (上线)或offline (下线)时,新online的CPU接收到Powergood信号的时间必须是预设时刻,该预设时刻是TO加上预设周期,其中,不同厂商生产的CPU,或者,同一厂商生产的不同型号的CPU,规定的预设周期可能不相同。例如,Ivybridge处理器设定的预设周期可以是N*864BCLKs ;Haswell处理器设定的预设周期可以是N*384BCLKs。其中,N为正整数,且IBCLK是10ns。
[0057]Caterr信号表示系统发生了严重错误。
[0058]PMSYNC(Power Management Sync,电源管理同步)信号是节能控制信号。
[0059]S4信号是多路服务器系统的一种状态信号,该信号由南桥芯片(PCH)发出,当CPU所在单板上的CPLD (Complex Programmable Logic Device,复杂可编程逻辑器件)检测到PCH发出S4以后,控制整个多路服务器系统上电。
[0060]Thermtrip信号是CPU过热时发出的信号。
[0061]Powerbutton信号是触发服务器上的上电按钮时产生的信号,该信号用于通知PCH外界有按钮触发动作,需要上电开机或者下电关机。
[0062]MSMI信号和Caterr信号功能完全一样,是最新的Intel平台增加的一个信号。
[0063]本发明实施例提供的多路服务器包括多个CPU、多个PBI板和一个关键信号处理板。每个PBI板监控至少两个CPU,且每个PBI板与自身所监控的CPU连接。各个PBI板的输出端分别连接所述关键信号处理板的输入端,各个PBI板的输入端分别连接所述关键信号处理板的输出端。关键信号处理板接收PBI板发送的关键信号后,向相应的所述PBI板返回与所述关键信号相对应的回应信号。接收到回应信号的PBI板将所述回应信号分别发送给自身监控的CPU,以使CPU接收到的回应信号满足多路服务器的要求。由上述内容可知,所述多路服务器通过关键信号处理板接收各个PBI板发出的关键信号,然后向相应的PBI板发送相应的回应信号,能够保证各个CPU接收到回应信号满足多路服务器的要求。而且,各个PBI板直接与关键信号处理板连接,不需要切换开关进行串联,减少切换开关的数量,结构简单、可靠性高。而且,减少了信号所经过的切换开关的数量,提高了信号质量。
[0064]此外,本发明实施例中各个PBI板之间没有通过转换开关串联,可以实现任意多个PBI组合构成一个硬分区,即灵活配置硬分区。例如,将PBIl和PBI3对应的CPU配置为一个硬分区,即配置为一个8路服务器;将PBI2和PBI5配置为一个硬分区,即配置为一个8路服务器。而现有技术中的多路服务器,由于PBI板之间通过转换开关串联,因此,在配置硬分区时只能将相邻的PBI配置为一个硬分区,不能实现灵活配置硬分区。
[0065]图2示出了本发明实施例一种PB I板的内部结构示意图,如图2所示,每个PB I板均包括:转换开关200、电平转换芯片210、第一 CPLD220、南桥芯片230。其中,转换开关200的数量与PBI板监控的CPU的数量一致,本实施例中每个PBI板内设置有四个转换开关。
[0066]每个CPU的I/O接口通过转换开关200连接电平转换芯片210的第一 I/O接口,电平转换芯片210的第二 I/O接口连接第一 CPLD220的第一 I/O接口。
[0067]第一 CPLD220的第一输入端作为PBI板的输入端连接关键信号处理板100的输出端。第一 CPLD220的第一输出端作为PBI板的输出端连接关键信号处理板100的输入端。第一 CPLD220的第二输出端连接南桥芯片230。
[0068]CPU输出的信号提供给电平转换芯片210转换成CPLD能处理的高电平的信号,转换成高电平信号后更适合远距离传输。
[0069]电平转换芯片210将转换后的信号发送给第一 CPLD220。第一 CPLD220将接收到的信号发送给关键信号处理板100。
[0070]关键信号处理板100向相应的PBI内的第一 CPLD220返回与接收到的关键信号相对应的回应信号。然后,由第一 CPLD220控制相应的转换开关200闭合,将第一 CPLD220接收到关键信号处理板100发送的信号发送给相应的CPU。
[0071]下面结合图1和图2,以不同的关键信号为例介绍本发明实施例提供的多路服务器的关键信号处理过程。
[0072](1)32路服务器作为一个服务器上电时,Powergood信号的传输过程:
[0073]11) SMM(System Management Module,系统管理模块)板通知关键信号处理板该多路服务器是32路服务器。SMM板用于获取多路服务器系统的分区信息。
[0074]12)各个PBI板及其监控的各个CPU分别上电;各个PBI板检测到自己监控的各个CPU的电源均上电完成后,产生第一 Powergood信号并发送给关键信号处理板,表明该PBI板及其监控的CPU已经上电完成。
[0075]在一个实施例中,每个PBI板可以产生一个第一 Powergood信号,当检测到自身控制的全部CPU的电源都上电完成时产生。
[0076]各个PBI板的电源不需要同步上电,关键信号处理板通过延时或去抖处理避免各个PBI板上电过程带来的不稳定状态,使系统的可靠性更高。延时是指在关键信号处理板接收到关键信号后先不处理,延时预设时长等关键信号完全稳定后再进行处理。预设时长可以根据上电稳定时间设定,当然也可以根据实际需求设定。
[0077]需要说明的是,各个PBI板将第一 Powergood信号发送给关键信号处理板后,PBI板不做任何处理,直到接收到关键信号处理板发送的第二 Powergood信号。
[0078]13)关键信号处理板接收到全部PBI板分别发送的第一 Powergood信号后,在同一时刻分别向全部PBI板发送第二 Powergood信号,并记录发送第二 Powergood信号的时刻为初始时刻TO。
[0079]此外,由于不同的单板之间传输信号具有离散性,以及信号的传输线路不同延时也不同,要求关键信号处理板到各个PBI板之间的传输线路的长度相等,这样能够保证各个PBI板收到第二 Powergood信号的时刻保持一致,进而能够满足系统对各个CPU收到第二 Powergood信号的时序要求。
[0080]需要说明的是,在CPU热插拔时,目前的B1S (Basic Input Output System,基本输入输出系统)只能做到两个CPU同时online (上线)或off line (下线),因此,在多路服务器中,需要将两个CPU划分成一组,例如,32路服务器一共有16组。
[0081]为了使多路服务器上电与CPU热插拔时,对Powergood信号的处理过程相兼容。多路服务器上电时将每两个CPU划分成一组,每个PBI板针对每一组CPU产生一个第一Powergood信号,并分别发送给关键信号处理板。关键信号处理板需要针对每一组CPU向PBI板返回一个第二 Powergood信号,保证第二 Powergood信号的数量与第一 Powergood信号的数量相同。例如,每个PBI板监控4个CPU,两个CPU为一组,则每个PBI板产生两个第一Powergood信号。而且,关键信号处理板需要同时向每个PBI板返回两个第二 Powergood信号。
[0082]14) PBI板中的第一 CPLD将关键信号处理板发送的第二 Powergood信号分别发送给自身监控的各个CPU。
[0083]关键信号处理板可以同时向各个PBI板分别发送第二Powergood信号,然后,再由各个PBI板将所述第二 Powergood信号分别发送给相应的CPU,从而保证各个CPU收到第二Powergood信号的时刻满足时序要求(即,各个CPU收到第二 Powergood信号的时间差在1ns以内)。
[0084](2)当将32路服务器划分成多个子服务器时,子服务器上电的过程与上述过程类似。其中,一个子服务器即一个硬分区,每个子服务器可以单独工作。例如,32路服务器可以分为4个8路的子服务器,也可以分为I个16路的子服务器和2个8路的子服务器。
[0085]子服务器的上电过程如下:
[0086]21) SMM板通知关键信号处理板该多路服务器的硬分区信息。硬分区信息可以包括多路服务器包含几个硬分区、每个硬分区包含哪些CPU等信息。
[0087]22)各个硬分区的PBI板及其监控的各个CPU分别上电;PBI板检测到自己监控的各个CPU的电源均上电完成后,产生第一 Powergood信号(S卩,第三类电源上电信号)并发送给关键信号处理板,表明该PBI板及其监控的CPU已经上电完成。
[0088]23)关键信号处理板接收到硬分区内的PBI板发送的第一 Powergood信号之后,确定该PBI板所在的硬分区。
[0089]可以根据来自SMM板的硬分区信息确定发送所述第一 Powergood信号的PBI板所在硬分区的信息,例如,确定发送第一 Powergood信号的PBI板位于哪个硬分区内,且该硬分区内还包括哪些PBI板等信息。
[0090]24)关键信号处理板接收到所述硬分区内的全部PBI板发送的第一 Powergood信号之后,在同一时刻向该硬分区内的各个PBI板分别发送第二 Powergood信号(S卩,第四类电源上电信号),并记录发送第二 Powergood信号的时刻为初始时刻TO。
[0091]25) PBI板中的第一 CPLD将关键信号处理板发送的第二 Powergood信号分别发送给自身监控的各个CPU。
[0092]通过上述的过程,能够实现硬分区内的各个CPU收到第二 Powergood信号的时间满足时序要求。而且,各个硬分区分别上电、分别控制,相互之间不存在耦合关系。
[0093](3)当 CPU online/offline 时,Powergood 信号的传输过程
[0094]当CPU online/offline时,32路服务器作为一个服务器或划分成多个子服务器Powergood信号的传输过程相同,具体过程如下:
[0095]31)需要online的CPU插入多路服务器系统。
[0096]32)PBI板检测到新online的CPU上电完成后,产生第一 Powergood信号(即,第五类电源上电信号),并将第一 Powergood信号发送给关键信号处理板。
[0097]33)关键信号处理板接收到PBI板发送的第一 Powergood信号后,在预设时刻将第二Powergood信号(即,第六类电源上电信号)发送给所述PBI板。
[0098]所述预设时刻为所述初始时刻TO加上预设周期。其中,不同厂商生产的CPU,或者,同一厂商生产的不同型号的CPU,规定的预设周期可能不相同,例如,Ivybridge处理器对应的预设周期为N*864BCLKs,相应的Ivybridge处理器对应的预设时刻为T0+N*864BCLKs ; Haswe 11处理器对应的预设周围为N*384BCLKs,相应的Haswell处理器对应的预设时刻为T0+N*384BCLKs,其中,N为正整数。
[0099]34)由所述PBI板将接收到的第二 Powergood信号发送给相应的CPU。
[0100]通过上述的过程实现CPU online时,online的CPU接收到的第二 Powergood信号满足预设时间要求。
[0101]下面以系统错误信号(即,Caterr信号)为例,介绍本发明实施例提供的多路服务器的工作过程。
[0102](4)若32路服务器作为一个服务器使用,则Caterr信号的传输过程如下:
[0103]41) PBI板接收到CPU发送的第一 Caterr信号(S卩,第一系统错误信号)时,该PBI板将所述第一 Caterr信号发送给关键信号处理板。
[0104]42)关键信号处理板接收到的第一 Caterr信号后,向除发送所述第一 Caterr信号的PBI板之外的其它各个PBI板分别发送第二 Caterr信号(即,第二系统错误信号)。
[0105]关键信号处理板接收到第一 Caterr信号后,根据与Caterr信号对应的标志位确定是否响应该第一 Caterr信号。例如,当与Caterr信号对应的标志位为“O”时,关键信号处理板不再响应其它CPU发来的Caterr信号;当与Caterr信号对应的标志位为“I”时,关键信号处理板能够响应其它CPU发来的Caterr信号。
[0106]当关键信号处理板接收到第一个Caterr信号后,将与Caterr信号对应的标志位修改成二进制数“O”。若第一个Caterr信号由低电平变为高电平时,表明故障排除,此时,将与Caterr信号对应的标志位修改成二进制数“I”。
[0107]关键信号处理板响应CPU发来的Caterr信号是指关键信号处理板接收到CPU发送的Caterr信号之后,将Caterr信号转发给与该CPU处于同一硬分区的其它CPU,即把与该CPU处于同一硬分区的其它CPU的Caterr信号线由高电平拉成低电平,从而屏蔽其它CPU发送的Caterr信号。如果发出Caterr信号的CPU能够将该错误自行修复,则该Caterr信号就会消失,系统恢复正常;如果CPU无法自行修复,系统将会出现挂死现象。
[0108]43)各个PBI板将接收到的第二 Caterr信号分别发送给相应的CPU。
[0109](5)若32路服务器划分成多个子服务器使用,每个子服务器即一个硬分区。Caterr信号的传输过程如下:
[0110]51) SMM板通知关键信号处理板多路服务器的硬分区信息。
[0111]52) PBI板接收到CPU发送的第三Caterr信号(S卩,第三系统错误信号)时,该PBI板将所述第三Caterr信号发送给关键信号处理板。
[0112]53)关键信号处理板接收到第三Caterr信号后,根据所述硬分区信息确定该PBI板对应的硬分区。
[0113]即关键信号处理板确定第三Caterr信号对应的回应信号的广播范围,换言之,确定将与第三Caterr信号对应的回应信号发送给哪些PBI板。
[0114]54)关键信号处理板将第四Caterr信号(S卩,第四系统错误信号)发送给所述PBI板所在硬分区中的其它PBI板。
[0115]55)所述硬分区中的其它PBI板接收到第四Caterr信号后,发送给自己监控的CPUo
[0116]利用本实施例提供的多路服务器,关键信号处理板接收到CPU发送的Caterr信号后,能够通过PBI发送给相应的CPU,由于PBI板之间未通过转换开关串联,而是直接与关键信号处理板连接,因此,控制过程简单,而且大大减少了 Caterr信号的广播时间。另外,减少了信号所经过的切换开关的数量,能够提高信号质量。
[0117]相应于上述的多路服务器,本发明还提供了多路服务器的信号同步方法实施例。
[0118]参见图3,为本发明实施例提供的一种多路服务器的信号处理方法的流程示意图,该方法应用于多路服务器的关键信号处理板中。所述多路服务器包括多个CPU、多个PBI板和关键信号处理板,其中,一个PBI板监控至少两个CPU ;每个PBI板均连接自身监控的多个CPU ;各个PBI板均包括输入端和输出端,各个PBI板的输入端分别连接关键信号处理板的输出端,各个PBI板的输出端分别连接关键信号处理板的输入端。
[0119]如图3所示,该方法可以包括以下步骤:
[0120]S110,关键信号处理板接收PBI板发送的关键信号。
[0121]所述关键信号由所述PBI板所监控的CPU发送给所述PBI板,或者,由PBI板检测到CPU的相应状态后产生,例如,当PBI板检测到自己监控的各个CPU的电源均上电完成后,产生第一 Powergood信号;又如,当CPU发生故障后,产生第一 Caterr信号,并将第一Caterr信号发送给PBI板,由PBI板发送给关键信号处理板。
[0122]所述关键信号包括但不限于Powergood信号、Caterr信号、PMSYNC信号、TSC信号、S4 信号、Thermtrip 信号、Powerbutton 信号、MSMI 信号。
[0123]其中Powergood信号和Caterr信号的处理过程如上述过程所述,此处不再赘述。
[0124]S120,关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号,以使接收到所述回应信号的PBI板将所述回应信号发送给所述PBI板监控的CPU。
[0125]由上述实施例可见,多路服务器可以包括32个CPU、8个PBI板和一个关键信号处理板。每个PBI板监控多个CPU ;各个PBI板的输出端均连接所述关键信号处理板的输入端,各个PBI板的输入端连接所述关键信号处理板的输出端;关键信号处理板接收PBI板发送的关键信号,产生与所述关键信号相对应的回应信号,并将所述回应信号返回给相应的PBI板。接收到回应信号的PBI板将所述回应信号分发给相应的CPU。由上述内容可知,各个PBI板直接与关键信号处理板连接,不需要切换开关进行串联,减少切换开关的数量,结构简单、可靠性高,而且减少了信号所经过的切换开关提高了信号质量。
[0126]若关键信号为多路服务器上电时的电源上电信号(Powergood信号),则步骤S120可以包括以下两种情况:
[0127]其一,多路服务器作为一个服务器上电
[0128]所述关键信号处理板接收到所述多路服务器内的全部PBI板分别发送的第一类电源上电信号后,同时向全部PBI板发送作为与所述第一类电源上电信号相对应的回应信号的第二类电源上电信号,以使所述多路服务器内的全部CPU接收到第二类电源上电信号的时间差满足预设时间要求。
[0129]其中,所述第一类电源上电信号由所述PBI板检测到自身监控的各个CPU的电源均上电完成时产生。
[0130]其二,所述多路服务器划分成至少两个子服务器,任意一个子服务器上电的过程如下:
[0131]所述关键信号处理板接收到所述子服务器内的全部PBI板分别发送的所述第三类电源上电信号后,同时向所述子服务器内的全部PBI板分别发送作为与所述第三类电源上电信号相对应的回应信号的第四类电源上电信号,以使所述子服务器内的全部CPU接收到所述第四类电源上电信号的时间差满足预设时间要求。
[0132]其中,所述第三类电源上电信号均由所述PBI板检测到自身监控的各个CPU的电源均上电完成时产生。
[0133]若关键信号为CPU online/offline时的电源上电信号(即,Powergood信号),步骤S120可以包括以下过程:
[0134]当所述多路服务器中插入新的CPU时,所述关键信号处理板接收到所述新的CPU对应的PBI板发送的第五类电源上电信号后,并在预设时刻向所述新的CPU对应的PBI板发送作为与所述第五类电源上电信号相对应的回应信号的第六类电源上电信号,以使所述新的CPU接收到所述第六类电源上电信号的时间满足预设时间要求。
[0135]所述第五类电源上电信号由所述PBI板检测到所述新的CPU上电完成时产生。
[0136]若关键信号为系统错误信号(即Caterr信号),则步骤S120可以包括以下两种情况:
[0137]其一,若多路服务器作为一个服务器使用
[0138]关键信号处理板接收到任意一个PBI板发送的第一系统错误信号后,同时向所述多路服务器中除发送所述系统错误信号PBI之外的其它各个PBI板发送第二系统错误信号;所述第二系统错误信号是与所述第一系统错误信号相对应的所述回应信号
[0139]其二,多路服务器划分成至少两个子服务器使用
[0140]关键信号处理板获取所述多路服务器的子服务器信息,当接收到任意一个PBI板发送的第三系统错误信号时,根据所述子服务器信息确定与发送所述第三系统错误信号的PBI板属于同一个子服务器的其它各个PBI板;同时向所述子服务器中除发送所述第三系统错误信号的PBI板之外的其它各个PBI板发送第四系统错误信号;所述第四系统错误信号是与所述第三系统错误信号相对应的所述回应信号。
[0141]可选地,关键信号为Caterr信号时,所述方法还包括:
[0142]当检测到当前PBI板发送的第一系统错误信号或第三系统错误由有效状态变为无效状态时,所述关键信号处理板接收下一个第一系统错误信号或第三系统错误信号。
[0143]其中,系统错误信号的状态是否有效可以通过检测与系统错误信号对应的标志位获得,在一个具体的实施例中,若与系统错误信号对应的标志位为二进制数“O”时,表明系统错误信号有效;若与系统错误信号对应的标志位为二进制数“I”时,表明系统错误无效。当然,也可以是标志位为“ I”时,表示系统错误信号有效;标志位为“O”时,表示系统错误信号无效。
[0144]通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0145]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0146]本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0147]需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0148]以上所述仅是本发明的【具体实施方式】,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【权利要求】
1.一种多路服务器,其特征在于,包括:多个CPU、多个南桥基板管理监控器输入输出PBI板,以及关键信号处理板,其中,一个PBI板监控至少两个CPU ; 所述PBI板连接自身监控的CPU ; 各个PBI板的输出端连接所述关键信号处理板的输入端,各个PBI板的输入端连接所述关键信号处理板的输出端,所述关键信号处理板接收所述PBI板发送的关键信号,并向PBI板返回与所述关键信号相对应的回应信号; 接收到所述回应信号的PBI板将所述回应信号分别发送给自身监控的CPU。
2.根据权利要求1所述的多路服务器,其特征在于,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,包括: 当所述多路服务器作为一个服务器进行上电时,所述关键信号处理板接收到所述多路服务器内的全部PBI板分别发送的第一类电源上电信号后,同时向所述全部PBI板发送作为与所述第一类电源上电信号相对应的回应信号的第二类电源上电信号,以使所述多路服务器内的全部CPU接收到第二类电源上电信号的时间差满足预设时间要求; 若所述多路服务器内的全部CPU划分成至少两个子服务器,当任意一个子服务器上电时,所述关键信号处理板接收到所述子服务器内的全部PBI板分别发送的所述第三类电源上电信号后,同时向所述子服务器内的全部PBI板分别发送作为与所述第三类电源上电信号相对应的第四类电源上电信号,以使所述子服务器内的全部CPU接收到所述第四类电源上电信号的时间差满足预设时间要求; 其中,所述第一类电源上电信号和所述第三类电源上电信号均由所述PBI板检测到自身监控的各个CPU的电源均上电完成时产生。
3.根据权利要求1所述的多路服务器,其特征在于,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,包括: 当所述多路服务器中插入新的CPU时,所述关键信号处理板接收到所述新的CPU对应的PBI板发送的第五类电源上电信号后,在预设时刻向所述新的CPU对应的PBI板发送作为与所述第五类电源上电信号相对应的回应信号的第六类电源上电信号,以使所述新的CPU接收到所述第六类电源上电信号的时间满足预设时间要求; 所述第五类电源上电信号由所述PBI板检测到所述新的CPU上电完成时产生。
4.根据权利要求1所述的多路服务器,其特征在于,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,包括: 若所述多路服务器作为一个服务器使用,所述关键信号处理板接收到任意一个PBI板发送的第一系统错误信号后,分别向所述多路服务器中除发送所述系统错误信号PBI之外的其它各个PBI板发送作为与所述第一系统错误信号对应的回应信号的第二系统错误信号; 若所述多路服务器划分成至少两个子服务器,所述关键信号处理板接收到任意一个PBI板发送的第三系统错误信号时,根据获得的所述子服务器信息确定与发送所述第三系统错误信号的PBI板属于同一个子服务器的其它各个PBI板;分别向所述子服务器中除发送所述第三系统错误信号的PBI板之外的其它各个PBI板发送作为与所述第三系统错误信号对应的回应信号的第四系统错误信号。
5.根据权利要求4所述的多路服务器,其特征在于,所述关键信号处理板接收所述PBI板发送的关键信号,并向所述PBI板返回与所述关键信号相对应的回应信号,还包括: 当检测到当前PBI板发送的第一系统错误信号或第三系统错误由有效状态变为无效状态时,所述关键信号处理板接收下一个第一系统错误信号或第三系统错误信号。
6.一种多路服务器的信号处理方法,其特征在于,应用于多路服务器中,所述多路服务器包括多个CPU、多个南桥基板管理监控器输入输出PBI板,以及关键信号处理板,其中,一个PBI板监控至少两个CPU ;所述方法包括: 所述关键信号处理板接收所述PBI板发送的关键信号; 所述关键信号处理板根据接收到的所述关键信号向所述PBI板返回与所述关键信号相对应的回应信号,以使接收到所述回应信号的所述PBI板将所述回应信号发送给所述PBI板监控的CPU。
7.根据权利要求6所述的方法,其特征在于,所述关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号,包括: 当所述多路服务器作为一个服务器进行上电时,所述关键信号处理板接收到所述多路服务器内的全部PBI板分别发送的第一类电源上电信号后,同时向全部PBI板发送作为与所述第一类电源上电信号相对应的回应信号的第二类电源上电信号,以使所述多路服务器内的全部CPU接收到第二类电源上电信号的时间差满足预设时间要求; 若所述多路服务器内的全部CPU划分成至少两个子服务器,当任意一个子服务器上电时,所述关键信号处理板接收到所述子服务器内的全部PBI板分别发送的所述第三类电源上电信号后,同时向所述子服务器内的全部PBI板分别发送作为与所述第三类电源上电信号相对应的回应信号的第四类电源上电信号,以使所述子服务器内的全部CPU接收到所述第四类电源上电信号的时间差满足预设时间要求; 其中,所述第一类电源上电信号和所述第三类电源上电信号均由所述PBI板检测到自身监控的各个CPU的电源均上电完成时产生。
8.根据权利要求6所述的方法,其特征在于,所述关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号,包括: 当所述多路服务器中插入新的CPU时,所述关键信号处理板接收到所述新的CPU对应的PBI板发送的第五类电源上电信号后,在预设时刻向所述新的CPU对应的PBI板发送作为与所述第五类电源上电信号相对应的回应信号的第六类电源上电信号,以使所述新的CPU接收到所述第六类电源上电信号的时间满足预设时间要求;所述第五类电源上电信号由所述PBI板检测到所述新的CPU上电完成时产生。
9.根据权利要求8所述的方法,其特征在于,所述关键信号处理板根据接收到的所述关键信号向PBI板返回与所述关键信号相对应的回应信号,包括: 若所述多路服务器作为一个服务器使用,所述关键信号处理板接收到任意一个PBI板发送的第一系统错误信号后,同时向所述多路服务器中除发送所述系统错误信号PBI之外的其它各个PBI板发送作为与所述第一系统错误信号对应的回应信号的第二系统错误信号; 若所述多路服务器划分成至少两个子服务器,所述关键信号处理板获取所述多路服务器的子服务器信息,当接收到任意一个PBI板发送的第三系统错误信号时,根据所述子服务器信息确定与发送所述第三系统错误信号的PBI板属于同一个子服务器的其它各个PBI板;同时向所述子服务器中除发送所述第三系统错误信号的PBI板之外的其它各个PBI板发送作为与所述第三系统错误信号对应的回应信号的第四系统错误信号。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括: 当检测到当前PBI板发送的第一系统错误信号或第三系统错误由有效状态变为无效状态时,所述关键信号处理板接收下一个第一系统错误信号或第三系统错误信号。
【文档编号】G06F15/163GK104503947SQ201410781480
【公开日】2015年4月8日 申请日期:2014年12月16日 优先权日:2014年12月16日
【发明者】程龙飞 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1