启动内存库选择、BIOS、基于Intel的平台中的升级和危机恢复制造技术

技术编号:16731231 阅读:32 留言:0更新日期:2017-12-08 13:30
本发明专利技术公开了启动内存库选择、BIOS、基于Intel的平台中的升级和危机恢复。固件升级计算机系统包括生成内存库选择信号的内存库选择开关。该系统还包括包含第一固件代码的第一内存库模块以及包含第二固件代码的第二内存库模块。该系统还包括基于所述内存库选择信号确定第一内存库模块还是第二内存库模块是被选择的内存库的控制模块。该控制模块基于内存库选择信号确定第一内存库模块还是第二内存库模块是未被选择的内存库。该控制模块选择性地指示所述被选择的内存库将第一固件代码和第二固件代码中的一个传送到所述未被选择的内存库。该系统还包括存储表示被选择的内存库的被选择的内存库的值的存储模块。

Startup memory library selection, BIOS, Intel based upgrades and crisis recovery

The invention discloses the upgrade and crisis recovery in the startup of memory library selection, BIOS, Intel based platforms. The firmware upgrade computer system includes the memory library selection switch that generates the memory library selection signal. The system also includes the first memory module with the first firmware code and the second memory module containing second firmware code. The system also includes a selected memory base module based on the memory base selection signal to determine the first memory library module or the second memory library module. The control module is based on the memory base selection signal to determine the first memory library module or the second memory module, which is not selected. The control module selectively indicates that the selected memory library transmits one of the first firmware code and the second firmware code to the selected memory library. The system also includes storage modules that store the values of the selected memory libraries that represent the selected memory library.

【技术实现步骤摘要】
启动内存库选择、BIOS、基于Intel的平台中的升级和危机恢复相关申请的交叉参考本申请主张在2012年12月21日提交的美国临时申请号61/745,054的优先权权益,上述申请的全部内容通过参考合并在此。
本公开文本涉及电路板的固件的升级。
技术介绍
此文所提供的
技术介绍
说明以对本公开的内容作一般性说明为目的。专利技术人的某些工作(即已在此
技术介绍
部分中做出描述的工作)以及说明书中关于某些尚未成为申请日之前的现有技术的内容,无论是以明确或隐含的方式均不被视为相对于本公开的现有技术。计算机系统可以包括一个或更多印刷电路板(PCB)。每一个PCB可以包括由存储在诸如闪存的非易失性存储器中的固件来控制的多个模块。例如,PCB可以具有接收来自固件的命令的外设模块。此外,PCB可以包括处理器。该处理器可以执行存储在闪存中的代码。
技术实现思路
一种固件升级计算机系统包括用于生成内存库选择信号的内存库选择开关。该系统还包括包含第一固件代码的第一内存库模块以及包含第二固件代码的第二内存库模块。该系统还包括基于所述内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是被选择的内存库的控制模块。该控制模块基于所述内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是未被选择的内存库。该控制模块选择性地指示所述被选择的内存库将第一固件代码和第二固件代码中的一个传送到所述未被选择的内存库。该系统还包括存储表示被选择的内存库的被选择的内存库的值的存储模块。从下文中提供的具体实施方式,本公开文本在其他领域的适用性将变得清楚明了。应理解具体实施方式和具体示例仅仅是为了说明的目的而不用于对本公开文本的范围作任何限制。附图说明从具体实施方式以及附图将会更完整地理解本公开文本,其中:图1是根据本公开文本的包括固件升级和恢复系统的计算机系统的功能框图;图2是根据本公开文本的逻辑模块的功能框图;图3是说明根据本公开文本的固件升级方法的流程图;图4是说明根据本公开文本的固件升级故障恢复方法的流程图;以及图5是说明根据本公开文本的危机恢复方法的流程图。具体实施方式计算机系统可以包括一个或更多印刷电路板(PCB)。每个PCB可以包括根据存储在存储器(如闪存)中的固件所控制的多个模块。执行该固件的处理器可以控制模块的操作。例如,该固件可以指令PCB的模块执行模块内部的代码。计算机系统可以定期请求固件升级。例如,PCB可以接收到为了让PCB根据固件升级而执行的固件升级。如果所尝试的固件升级不成功,则所尝试的固件升级可以请求固件恢复。根据本公开文本的原理的逻辑模块被设置来执行PCB的固件升级和固件恢复。该逻辑模块可以基于多个信号执行固件升级。该逻辑模块还可以确定是否需要固件恢复。该逻辑模块可以执行代码来还原(restore)先前安装的固件。现在参考图1,示出了包括印刷电路板(PCB)104以及逻辑模块108的示例计算机系统100。仅为范例,逻辑模块108可以包括复杂可编程逻辑设备。逻辑模块108与第一内存库模块112以及第二内存库模块116通信。第一内存库模块112和第二内存库模块116可以是诸如闪存的非易失性存储器。第一内存库模块112和第二内存库模块116被电气耦接到PCB104。第一内存库模块112和第二内存库模块116可以包括存储在第一内存库模块112或第二内存库模块116中的代码和/或数据。逻辑模块108可以选择第一内存库模块112和第二内存库模块116来执行存储在第一内存库模块112和第二内存库模块116中的代码。例如,逻辑模块108将信号发送到第一内存库模块112来表明第一内存库模块112是被选择的内存库。逻辑模块108可以在进行固件升级时选择第一内存库模块112。逻辑模块108与开关模块120通信。开关模块120可以包括多个开关,其包括但不限于内存库选择开关、内存库选择使能开关以及管理引擎(ME)禁止开关。开关模块120可以将多个信号传送到逻辑模块108。该多个信号可以包括内存库选择使能信号124、内存库选择信号128以及ME禁止信号132。例如,逻辑模块108接收到内存库选择使能信号124,所述内存库选择使能信号124表明开关模块120被使能来将被选择的内存库传送到逻辑模块108。逻辑模块108也接收到内存库选择信号128。内存库选择信号128向逻辑模块108传达第一内存库模块112或第二内存库模块116中的一个是被选择的内存库。例如,PCB104的操作者可以启动开关模块120内部的内存库选择开关。内存库选择开关可以是电子开关或拨动开关。内存库选择开关指明被选择的内存库。例如,被选择的内存库可以包括可执行代码。可以为了执行可执行代码来选择被选择的内存库。当内存库选择开关被启动到第一位置时,第一内存库模块112是被选择的内存库。当内存库选择开关被启动到第二位置时,第二内存库模块116是被选择的内存库。开关模块120基于内存库选择开关位置生成内存库选择信号。开关模块120将内存库选择信号128传送到逻辑模块108。逻辑模块108基于该内存库选择信号来确定第一内存库模块112还是第二内存库模块116是被选择的内存库。逻辑模块108可以接收ME禁止信号132来使能ME禁止。例如,PCB104的操作者可以启动开关模块120内部的ME禁止开关。ME禁止开关可以是电子开关或拨动开关。当ME禁止开关被启动到第一位置时,ME禁止被使能。当ME禁止开关被启动到第二位置时,ME禁止被禁用。开关模块120基于ME禁止开关的位置生成ME禁止信号。开关模块120将ME禁止信号传送到逻辑模块108。逻辑模块108基于ME禁止信号确定是否要使能ME禁止。例如,逻辑模块108在计算机系统100上进行固件升级之前使能ME禁止来禁用ME固件对计算机系统100的执行。通过禁用ME固件执行,第一内存库模块112和第二内存库模块116在固件升级期间是写保护的。PCB104还可以包括BIOS模块136。BIOS模块136可以控制PCB104的内存库选择。例如,如果PCB104从第一内存库模块112和第二内存库模块116中的至少一个中启动引导(boot),则BIOS模块136可以控制PCB104的内存库选择。BIOS模块136通过超权(override)开关模块120来将被选择的内存库传送到逻辑模块108。PCB104还可以包括智能平台管理控制器(IPMC)140。IPMC140通过I/O线向逻辑控制模块108传送被选择的内存库。可以使能IPMC140来选择第一内存库模块112和第二内存库模块116中的至少一个。例如,如果内存库选择使能开关被启动到启用(ON)位置则可以使能IPMC140来选择内存库。当内存库选择使能开关为启用状态时,开关模块120将指明IPMC140被使能的内存库选择使能信号124发送到逻辑模块108。IPMC140也从逻辑模块108接收到当前内存库选择状态。此外,BIOS模块136还可以防止IPMC140控制第一内存库模块112和第二内存库模块116。例如,当BIOS模块136被使能来控制PCB104的内存库选择时,BIOS136防止IPMC140控制PCB104的内存库选择。逻辑模块108还与外设的控制器中枢(PCH)144以及总线148本文档来自技高网...
启动内存库选择、BIOS、基于Intel的平台中的升级和危机恢复

【技术保护点】
一种固件升级计算机系统,包括:内存库选择开关,用于生成内存库选择信号;包括第一固件代码的第一内存库模块以及包括第二固件代码的第二内存库模块;控制模块,用于基于所述内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是被选择的内存库,基于所述内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是未被选择的内存库,并且选择性地指示所述被选择的内存库将所述第一固件代码和所述第二固件代码中的一个传送到所述未被选择的内存库,其中所述被选择的内存库是根据所述第一内存库模块还是所述第二内存库模块包括被更新的固件代码而从所述第一内存库模块或者所述第二内存库模块选择的;以及存储模块,用于存储表示所述被选择的内存库的被选择的内存库的值。

【技术特征摘要】
2012.12.21 US 61/745,054;2013.03.12 US 13/796,3551.一种固件升级计算机系统,包括:内存库选择开关,用于生成内存库选择信号;包括第一固件代码的第一内存库模块以及包括第二固件代码的第二内存库模块;控制模块,用于基于所述内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是被选择的内存库,基于所述内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是未被选择的内存库,并且选择性地指示所述被选择的内存库将所述第一固件代码和所述第二固件代码中的一个传送到所述未被选择的内存库,其中所述被选择的内存库是根据所述第一内存库模块还是所述第二内存库模块包括被更新的固件代码而从所述第一内存库模块或者所述第二内存库模块选择的;以及存储模块,用于存储表示所述被选择的内存库的被选择的内存库的值。2.根据权利要求1所述的系统,其中所述控制模块基于所述内存库选择信号确定所述第一内存库模块是所述被选择的内存库。3.根据权利要求2所述的系统,其中所述控制模块选择性地指示所述第一内存库模块向所述第二内存库模块传送所述第一固件代码。4.根据权利要求1所述的系统,其中所述控制模块确定所述未被选择的内存库是否收到所述第一固件代码和所述第二固件代码中的一个。5.根据权利要求4所述的系统,其中所述控制模块基于所述被选择的内存库的值确定所述被选择的内存库,并且基于所述未被选择的内存库是否收到所述第一固件代码和所述第二固件代码中的一个的确定结果从所述被选择的内存库启动引导所述计算机系统。6.根据权利要求1所述的系统,其中所述控制模块确定是否所述未被选择的内存库包括损坏的固件代码。7.根据权利要求6所述的系统,其中所述控制模块基于所述被选择的内存库的值确定所述被选择的内存库,并且基于所述未被选择的内存库中是否包括损坏的固件代码的确定结果从所述被选择的内存库启动引导所述计算机系统。8.根据权利要求1所述的系统,还包括用于生成软件超权信号的内存库选择软件超权开关以及基于所述软件超权信号生成软件内存库选择信号的BIOS。9.根据权利要求8所述的系统,其中所述控制模块基于所述软件内存库选择信号确定所述第一内存库模块还是所述第二内存库模块是被选择的内存库,基于所述软件内存库选择信号确定所述第一内存库模...

【专利技术属性】
技术研发人员:拉杰什·曼格尔马尔科姆·J·拉什理查德·D·史密斯詹姆斯·霍尔布鲁克
申请(专利权)人:雅特生嵌入式计算有限公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1