自动切换基本输入/输出程序的系统及其方法

文档序号:6611200阅读:392来源:国知局
专利名称:自动切换基本输入/输出程序的系统及其方法
技术领域
本发明涉及一种自动切换基本输入/输出系统程序的系统及其方法,尤其 涉及一种通过硬件控制电路自动切换基本输入/输出系统程序而完成系统启始 的技术。
背景技术
在计算机系统中,基本输入/输出系统(Basic Input-Output System, BIOS) 是计算机基本操作中最基础的软件,主要是由低阶的指令集所组成,而其内主 要储存与计算机相关且重要的基本输入/输出程序、系统信息设备、开机自我 测试(Power-On Self Test, POST)和系统开机程序等。当计算机开机时,BIOS
即调用所存放的相关程序对计算机系统执行开机自我检测。当检测全部完成 后,BIOS遂将系统控制权移交给系统的引导模块,以由引导模块完成操作系 统的加载程序。因此,计算机一开机时初始的运作,都是依照基本输入/输出 系统的内容来执行运作,倘若基本输入/输出系统出现问题,计算机一开机便 无法执行如内存、硬盘、中央处理器等的测试,使计算机无法顺利开机。
在一般计算机系统中,均将BIOS的程序指令集烧录在非挥发性内存 (Non-Volatile Memory)中,如Flash R0M、 PR0M、 EPR0M、 EEPR0M等,并将 BIOS内存内建于计算机的主机板或放入计算机系统的芯片组中,使其不受电 源供应影响,而可长久保存其内容。但BI0S内存的内容并非完全不会出现错 误,当BI0S内存的电路结构随时间产生退化,或于BIOS更新时操作不当而造 成数据损毁,或其它不可预期的操作使其内容产生错误或数据流失,将导致计 算机开机执行BIOS程序时产生错误,而造成系统无法正常开机,所以BIOS 的救援变的非常重要。现有技术中,于一个计算机系统中设置两个BIOS记忆 装置,亦或是一个BIOS内存中有两份BIOS程序,但因为是通过软件程序的方 式作BIOS切换,其前提必须是BIOS中启动区的数据完全正确,才可以完成 BIOS的切换以顺利开机,否则若BIOS中启动区的数据也被破坏,那系统还是
会于开机过程中^1机而无法顺利启动。

发明内容
本发明所要解决的技术问题在于提出一种自动切换基本输入/输出程序的 系统及其方法。
为实现上述目的,本发明所提供的一硬件控制电路,为一可程序化逻辑电 路,于该系统启动后一预定时间,检测一基本输入/输出系统状态信号,若该 基本输入/输出系统状态信号为一失能信号则发出一切换信号,并且重新启动 该系统,其中该基本输入/输出系统状态信号在该系统于开机时的初始值为该 失能信号; 一第一基本输入/输出系统程序与一第二基本输入/输出系统程序, 分别储存于两个实体基本输入/输出系统内存,或储存于同一个实体基本输入/ 输出系统内存中的两个地址区段,均可启始该系统,并于完成开机自我测试后, 变更该基本输入/输出系统状态信号为一致能信号,其中该系统先被该第一基 本输入/输出系统程序启始;以及一切换电路,连接该硬件控制电路,当接收 到该切换信号,则利用该第二基本输入/输出系统程序启始该系统;其中,该 切换电路在由该硬件控制电路控制该系统重新启动的情况下,维持该系统先以 该第二基本输入/输出系统程序启始。
而且,为实现上述目的,本发明提供一种自动切换基本输入/输出程序的 方法,至少包含下列步骤通过一第一基本输入/输出系统程序启始一系统; 于该系统启动至一预定时间,通过一硬件控制电路检测一基本输入/输出系统 状态信号是否为一失能信号;当该基本输入/输出系统状态信号为该失能信号 时,通过该硬件控制电路传送一切换信号至一切换电路以利用一第二基本输入 /输出系统程序启始该系统;以及重新启动该系统;该第一基本输入/输出系统 程序与该第二基本输入/输出系统程序,分别储存于两个实体基本输入/输出系 统内存或储存于同一个实体基本输入/输出系统内存中的两个地址区段,其均 可启始该系统,并于完成开机自我测试后,变更该基本输入/输出系统状态信 号为一致能信号。
该系统至少包含由硬件控制电路、系统芯片组、系统电源单元、切换电路、 以及两个可互相提供备援的BIOS程序或BIOS内存所组成。利用其可自动切换 并互相提供备援的BIOS程序或BIOS内存,通过一个可程序化的硬件控制电路(Programmable Logic fC, PAL)检测信号,以切换供系统启动的BIOS程序或 BIOS内存。该硬件控制电路包含有一个BIOS状态信号(BIOS READY信号)输入 端,及BIOS的切换信号(BLOCK_SELECT信号)与系统重置信号 (SYS—SWITCH—OU乙N信号)的两个信号输出端。其中,BIOS状态信号为系统于 BIOS启始的过程中,由任何一个可通过BIOS程控的芯片通过芯片接脚,如一 般用途输入输出(General Purpose 1/0, GPIO)接脚,传递至硬件控制电路的 信号,且BIOS状态信号于计算机系统开机时的初始值设为失能(Disable)信 号。另外,BIOS的切换信号,由硬件控制电路传送失能信号或是致能信号至 切换电路以控制BIOS程序或BIOS内存的切换。而系统重置信号为硬件控制电 路传送至南桥芯片的重置(reset)信号,以使系统重新开机。
因BIOS状态信号于计算机系统开机时的初始值设为失能信号,若在BIOS 程序完成开机自我测试(POST)检测本身的状态为正常时,通过如一般用途输入 输出的芯片接脚,将BIOS状态信号改变为致能信号。因此当系统开启一段预 定时间后,硬件控制电路即检测判断BIOS状态信号为失能信号或致能信号。 若BIOS状态信号为致能信号则系统继续进行该BIOS程序的开机程序;若BIOS 状态信号为失能信号,则硬件控制电路传送一个BIOS的切换信号至切换电路, 使系统被切换连向另一个BIOS程序,并同时发出系统重置信号以重新启动系 统。而由硬件控制电路重新启动系统时,则保持由切换后的BIOS程序启动系 统。此外,上述的可自动切换并互相提供备援的两个BIOS程序,可为储存于 一个实体BIOS内存中不同地址区段的程序代码,或分别储存于两个实体BIOS 内存中的程序。另外,该两个BIOS程序的内容可为相同的程序代码,或者因 BIOS备份、BIOS备援、防毒等不同目的而分别包含不同的程序代码。
借此,由本发明的方法更可达到另一功效,即若BIOS本身的启动区是损 坏的,BIOS即无法针对本身进行检测,也或于开机自我测试(POST)过程中发 生异常,因此无法于开机后的预定时间内致能BIOS状态信号。又由于BIOS 状态信号于计算机系统电源开启时的初始值即为失能信号,所以当硬件控制电 路检测到BIOS状态信号为失能信号,即表示该BIOS无法成功完成系统启动, 因此通过硬件控制电路自动发出一个BIOS的切换信号至切换电路,使切换电 路切换系统连至另一个BIOS,并由该切换后的BIOS重新启动系统。达到即使 一个BIOS程序或BIOS内存完全损坏,仍可以由系统自动切换到另一个BIOS
程序或BI0S内存以完成系统启动的目的。


为让本发明的上述和其它目的、特征、优点与实施例能更明显易懂,所附 附图的详细说明如下
图1为本发明的自动切换BIOS程序的系统实施例一的架构示意图2为本发明的自动切换BIOS程序的系统实施例二的架构示意T图3A及图3B为本发明的一种自动切换BIOS程序的方法的步骤流程图。
g中,附图标记
100:系统210:硬件控制电路
110:硬件控制电路220:中央处理单元
120:中央处理单元230:供电单元
130:供电单元240:切换电路
跳切换电路250:第一BI0S内存
150:BIOS内存251:第一 BIOS程序
151:第一BI0S程序260:第二 BIOS内存
152:第二 BIOS程序261:第二 BIOS程序
200:系统
具体实施例方式
本发明为一种自动切换基本输入/输出程序的系统及其方法,主要提出一
种具有两个可自动切换并互相提供备援的BIOS程序,以达到即使一个BIOS 程序完全损坏,仍可以自动切换到另一个BIOS程序以启动系统的技术。以下 先详细叙述本发明的系统,并以应用本发明技术的较佳实施例,配合附图详细 说明本发明的内容及技术。
首先,请先参照图1,为本发明的具有可自动切换BIOS程序的系统实施 例一的架构示意图。实施例一的自动切换BIOS程序的系统100,包含硬件控 制电路110、中央处理单元120、供电单元130、切换电路140、以及一个实体 BIOS内存150所组成,其中实体BIOS内存150中存有第一 BIOS程序151及 第二 BIOS程序152。其中,硬件控制电路110为一个可程序化的逻辑电路,
于系统100启动后一预定时间,通过硬件控制电路110检测BIOS状态信号,
若该BIOS状态信号为失能(disable)信号则发出切换信号至切换电路140,并 且重新启动系统100,其中该BIOS状态信号为在系统100于BIOS程序启始的 过程中,由任何一个可被中央处理单元120控制的芯片通过芯片接脚(如一 般用途输入输出接脚)传递至该硬件控制电路110的信号,同时其于系统100 开机时的初始值为一失能信号。另外,第一 BIOS程序151及第二 BIOS程序 152,均用以启始系统的程序,分别储存于实体BK)S内存150中的不同的地址 区段,比如于一个4MB的实体BIOS内存中,于内存地址编码0 2MB地址 处与2 4MB地址处,分别各储存一个基本输出/输入系统程序。而切换电路 140连接至硬件控制电路110,当接收到自硬件控制电路110传来的切换信号, 则变更BIOS内存150中的地址编码,以连向该第一 BIOS程序151或该第二 BIOS程序152,达到自动切换备援的基本输出/输入系统程序以启动计算机系 统的目的。此外,上述的第一 BIOS程序151及第二 BIOS程序152均为包含启 始系统的程序,其两者的内容可为相同的程序代码,或者因BI0S备份、BIOS 备援、防毒等不同目的而分别包含不同的程序代码。
借此,即可于硬件控制电路110设计加入一个BIOS状态信号(BI0S READY 信号)的输入端,当系统100开机并以第一 BIOS程序151启始时,先初始BIOS 状态信号为失能信号。在完成开机自我测试(POST)后才将BIOS状态信号变更 为致能信号。因此待系统100开机启动后一预定时间,硬件控制电路110即检 测BI0S状态信号为致能信号或失能信号。若检测到BI0S状态信号为失能信号, 即表示该系统100的BIOS无法成功完成系统100的启动,则通过硬件控制电 路110传送一个BI0S的切换信号(BLOCK—SELECT信号)至该切换电路140以切 换系统100连至第二 BIOS程序152,并发出系统重置信号(SYS—SWITCH—OUT—N ENABLE)以重新启动系统100。此时切换电路140就会变更启始系统100的BIOS 程序的地址编码,而使用第二 BIOS程序152启始该系统100。此技术手段只 需要更改硬件控制电路的程序,并配合一个BIOS程序的切换电路,就可以达 到完全救援的目的,如实施例一中只需要通过一个互斥或门。因此在生产成本 和系统运作效益上均有很大的改善。
接着,请参照图2,为本发明的具有可自动切换BIOS程序的系统实施例 二的架构示意图。实施例二的可自动切换BI0S内存的系统200,至少包含由
硬件控制电路210、中央处理争元220、供电单元230、切换电路240、以及第 -- BIOS内存250和第二 BIOS内存260等两个实体BIOS内存所组成。其与实 施例一的运作原理相同,唯一不同于实施例一之处在于实施例二的系统200 具有两个实体BIOS内存第一 BIOS内存250、第二 BIOS内存260,并分别于第 一 BIOS内存250中储存有第一 BIOS程序251及于第二 BIOS内存260中储存 有第二 BIOS程序261。于系统200启动后一预定时间,通过硬件控制电路210 检测BIOS状态信号,若该BIOS状态信号为失能(disable)信号则发出切换信 号至切换电路240,并且重新启动系统200,其中该BIOS状态信号为在系统 200于BIOS程序启始的过程中,由任何一个可被中央处理单元220控制的芯 片通过芯片接脚(如 一般用途输入输出接脚)传递至该硬件控制电路210的信 号,同时其于系统200开机时的初始值为一失能信号。上述的第一BIOS程序 251及第二 BIOS程序261均为包含启始系统的程序,其两者的内容可为相同 的程序代码,或者因BIOS备份、BI0S备援、防毒等不同目的而分别包含不同 的程序代码。
借此,即可于硬件控制电路210设计加入--个BIOS状态信号的输入端, 当系统200开机并以第一 BIOS程序251启始时,先初始BIOS状态信号为失能 信号。在完成开机自我测试(POST)后才将BIOS状态信号变更为致能信号。因 此待系统200开机启动后一预定时间,硬件控制电路210即检测BIOS状态信 号为致能信号或失能信号。若检测到BIOS状态信号为失能信号,即表示该BIOS 无法成功完成系统200的启动,则通过硬件控制电路210传送一个BIOS的切 换信号至该切换电路240以切换系统200连至第二 BIOS程序261,并发出系 统重置信号以重新启动系统200。此时系统就会使用第二 BIOS程序261开机。
接下来,将针对本发明所提出的方法技术手段作说明,请配合参照图3A、 图3B,为本发明的一种自动切换BIOS程序的方法的步骤流程图。为简化说明, 以下仅以实施例一的系统100的实施态样为例,但并不限定本发明的方法技 术。请先参照图3A,当使用者开启计算机时,首先,通过第一 BIOS程序151 启动系统100(步骤300);然后在系统100启动一段预定时间后,通过硬件控 制电路110检测BIOS状态信号是否为失能信号(步骤310);步骤310中若BIOS 状态信号为致能信号,则直接通过第一 BIOS程序151完成系统启动(步骤 320);但歩骤310中若BIOS状态信号为失能信号,则通过该硬件控制电路110 传送一切换信号至切换电路140以利用第二 BIOS程序152启始系统100 (步骤 330);接着,重新启动系统100(步骤340),且切换电路140维持以第二 BIOS 程序152启始系统100;待系统100重新开启并通过第二 BIOS程序152完成 系统启始(步骤350);最后结束此步骤流程。其中,上述步骤350通过第二 BIOS 程序152完成系统启始的步骤,还包含当系统100启动至该预定时间,该硬件 控制电路110若检测到该BIOS状态信号为失能信号,则传送该切换信号至该 切换电路140以利用该第一 BIOS程序151启始该系统。借此,达到系统可自 动切换连向可正常运作的BIOS程序,以完成启始系统的目的。
其中,上述歩骤300还包含了细部流程A。请接着参照图3B。于流程A 中,当使用者在开启计算机系统的同时,系统100会先初始BIOS状态信号为 失能信号(步骤301);接着,利用该BIOS程序中的启动区对该BIOS程序中的 系统设定区进行判断(歩骤302),其中,启动区指BIOS程序中包含检测系统 设定区(System Rom)状态的程序代码,而系统设定区指BIOS程序中启动区的 外的其它程序代码;上述步骤302中的该启动区本身若损毁,则无法对该系统 设定区进行检测,此即BIOS程序本身己损毁或BIOS内存损坏的情形,因此直 接接续步骤330;但若步骤302中的该启动区能顺利对系统设定区进行检测, 则接着判断系统设定区是否正常(歩骤303);于上述步骤303中,若系统设定 区被判断为异常,则可提示BIOS错误的警告(步骤304)并接续步骤310,但若 系统设定区被判断为正常,则硬件控制电路110变更BIOS状态信号为致能信 号(步骤305);而后,再接续至歩骤310。
如此,在计算机系统启动过程中,通过第一BIOS程序启动系统,BIOS程 序的启动区对其BIOS程序本身的系统设定区进行开机自我测试(POST),在检 测结果为正常的情况下变更BIOS状态信号为致能信号。因此,在系统开启后 一预定时间,若当硬件控制电路检测到BIOS状态信号为致能信号,则直接通 过第一BIOS程序启始系统。但若当开机自我测试(POST)出现异常,也或当第 一 BIOS程序本身启动区的程序已损毁或异常,即无法对BIOS程序中系统设定 区(System Rom)进行检测,因此均无法变更BIOS状态信号为致能信号。故待 该硬件控制电路检测到该BIOS状态信号为失能信号时,则随即切换系统连至 第二BI0S程序,并重新启动系统。同时由硬件控制电路重新开启系统时,维 持系统以第二BI0S程序启始。借此,即使BIOS程序本身的启动区是损坏的,
也或即使一个BIOS程序或BIOS内存完全损坏,仍可以由系统自动切换到另一 个BIOS程序或BIOS内存以完成系统启动,达到自动切换BIOS程序的目的。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情 况下,熟悉本领域的普通技术人员当可根据本发明做出各种相应的改变和变 形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种自动切换基本输入/输出程序的系统,其特征在于,至少包含一硬件控制电路,为一可程序化逻辑电路,于该系统启动后一预定时间,检测一基本输入/输出系统状态信号,若该基本输入/输出系统状态信号为一失能信号则发出一切换信号,并且重新启动该系统,其中该基本输入/输出系统状态信号在该系统于开机时的初始值为该失能信号;一第一基本输入/输出系统程序与一第二基本输入/输出系统程序,分别储存于两个实体基本输入/输出系统内存,或储存于同一个实体基本输入/输出系统内存中的两个地址区段,均可启始该系统,并于完成开机自我测试后,变更该基本输入/输出系统状态信号为一致能信号,其中该系统先被该第一基本输入/输出系统程序启始;以及一切换电路,连接该硬件控制电路,当接收到该切换信号,则利用该第二基本输入/输出系统程序启始该系统;其中,该切换电路在由该硬件控制电路控制该系统重新启动的情况下,维持该系统先以该第二基本输入/输出系统程序启始。
2. 根据权利要求1所述的自动切换基本输入/输出程序的系统,其特征在 于,该基本输入/输出系统状态信号包含任一可被该系统的基本输入/输出系统 控制的信号。
3. —种自动切换基本输入/输出程序的方法,其特征在于,至少包含下列步骤通过一第一基本输入/输出系统程序启始一系统;于该系统启动至一预定时间,通过一硬件控制电路检测一基本输入/输出 系统状态信号是否为一失能信号;当该基本输入/输出系统状态信号为该失能信号时,通过该硬件控制电路 传送一切换信号至一切换电路以利用一案二基本输入/输出系统程序启始该系 统;以及重新启动该系统;该第一基本输入/输出系统程序与该第二基本输入/输出系统程序,分别储 存于两个实体基本输入/输出系统内存或储存于同一个实体基本输入/输出系统内存中的两个地址区段,其均可启始该系统,并于完成开机自我测试后,变更 该基本输入/输出系统状态信号为一致能信号。
4. 根据权利要求3所述的自动切换基本输入/输出程序的方法,其特征在 于,该基本输入/输出系统状态信号在该系统于电源开启时的初始值为该失能 信号。
5. 根据权利要求3所述的自动切换基本输入/输出程序的方法,其特征在 于,该硬件控制电路为一可程序化逻辑电路,当检测到该基本输入/输出系统 状态信号为该失能信号时,发出该切换信号至该切换电路并且重新启动该系 统。
6. 根据权利要求3所述的自动切换基本输入/输出程序的方法,其特征在于,该切换电路当接收到该切换信号,则利用该第二基本输入/输出系统程序 启始该系统。
7. 根据权利要求3所述的自动切换基本输入/输出程序的方法,其特征在 于,该基本输入/输出系统状态信号包含任一可被该系统的基本输入输出系统 控制的信号。
8. 根据权利要求3所述的自动切换基本输入/输出程序的方法,其特征在 于,通过该系统重新启动的步骤,还包含该切换电路维持以该第二基本输入/ 输出系统程序启始该系统。
9. 根据权利要求8所述的自动切换基本输入/输出程序的方法,其特征在 于,以该第二基本输入/输出系统程序启始该系统的步骤,还包含当该系统启 动至该预定时间,该硬件控制电路若检测到该基本输入/输出系统状态信号为 该失能信号,则传送该切换信号至该切换电路以利用该第一基本输入/输出系 统程序启始该系统。
10. 根据权利要求3所述的自动切换基本输入/输出程序的方法,其特征在 于,通过该第一基本输入/输出系统程序启动该系统的歩骤,还包含下列歩骤初始该基本输入/输出系统状态信号为该失能信号;利用该基本输入/输出系统程序中的 一启动区对该基本输入/输出系统程序 的一系统设定区进行判断;以及当该系统设定区被判断为正常时,该硬件控制电路变更该基本输入/输出 系统状态信号为该致能信号;该启动区指于该基本输入/输出系统程序中包含判断该系统设定区状态的 程序代码。
全文摘要
本发明公开了一种自动切换基本输入/输出程序的系统及其方法,该系统包括一硬件控制电路,为一可程序化逻辑电路,一第一基本输入/输出系统程序与一第二基本输入/输出系统程序,一切换电路,连接该硬件控制电路,利用两个可自动切换并互相提供备援的基本输入/输出系统,当系统通过第一基本输入/输出系统程序启动一段预定时间后,通过硬件控制电路,若检测到基本输入/输出系统状态信号为失能信号,则切换系统连向第二基本输入/输出系统程序并重新启始系统。
文档编号G06F9/445GK101354654SQ20071013635
公开日2009年1月28日 申请日期2007年7月24日 优先权日2007年7月24日
发明者吴善华, 黄安圣 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1