CN110162436A - 一种bios post的常规模式和诊断模式切换方法 - Google Patents

一种bios post的常规模式和诊断模式切换方法 Download PDF

Info

Publication number
CN110162436A
CN110162436A CN201910341016.1A CN201910341016A CN110162436A CN 110162436 A CN110162436 A CN 110162436A CN 201910341016 A CN201910341016 A CN 201910341016A CN 110162436 A CN110162436 A CN 110162436A
Authority
CN
China
Prior art keywords
diagnostic
post
mode
diagnostic mode
normal mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910341016.1A
Other languages
English (en)
Inventor
吴建成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Tong Yi Yi Information Technology Co Ltd
Original Assignee
Shenzhen Tong Yi Yi Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Tong Yi Yi Information Technology Co Ltd filed Critical Shenzhen Tong Yi Yi Information Technology Co Ltd
Priority to CN201910341016.1A priority Critical patent/CN110162436A/zh
Publication of CN110162436A publication Critical patent/CN110162436A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2284Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种BIOS POST的常规模式和诊断模式切换方法,包括如下步骤:S1:BIOS POST是否需要切换诊断模式;S2:如果需要诊断模式,通过外切换为诊断模式;当切换完成后,系统上电,中央处理器从指定的地址执行诊断模式的Boot Block代码;在诊断模式下,Boot Block代码从串口打印POST诊断上下文信息;S3:如果不需要诊断模式POST,系统默认是常规模式POST,常规模式下系统不会输出串口诊断信息;S4:经过步骤S2或S3后,统一执行Main Block代码,直到POST流程结束。本发明带外(out‑of‑band)开关切换,诊断版本和常规版本在编译创建时是互斥的编译参数下编译生成;本发明在线诊断,有效降低运维时间成本,二合一的模式,不用额外增加硬件用料,丰富的诊断信息,为问题定位提供有价值的信息。

Description

一种BIOS POST的常规模式和诊断模式切换方法
技术领域
本发明属于计算机的技术领域,尤其涉及一种BIOS POST的常规模式和诊断模式切换方法。
背景技术
接通微机的电源,系统将执行一个自我检查的例行程序。这是BIOS(Basic InputOutput System,基本输入输出系统)功能的一部分,通常称为POST——上电自检(Power OnSelf Test)。
在BIOS POST的早期过程中,特别是内存初始化之前和初始化过程中,系统BIOS能够提供的诊断手段和诊断信息非常有限,业界常用的做法是硬件点灯,通过BMC(基板管理控制器Baseboard Management Controller)提供BIOS相关的诊断信息等。这些做法的可以提供简单的诊断信息,无法提供比较完整和全面的POST过程上下文信息供诊断和定位。
对于异常问题和缺陷的定位和维护,特别是还在线上运行的产品上曝出来的问题,定位分析和诊断都存在很大的难度。带串口诊断信息的版本跟正式发布的版本,编译参数是互斥的,同一个版本无法在带内自由切换。
发明内容
本发明的目的在于提供一种在线诊断、有效降低运维时间成本、二合一模式的BIOS POST的常规模式和诊断模式切换方法。
本发明提供一种BIOS POST的常规模式和诊断模式切换方法,包括如下步骤:
S1:BIOS POST是否需要切换诊断模式;
S2:如果需要诊断模式,通过外切换为诊断模式;当切换完成后,系统上电,中央处理器从指定的地址执行诊断模式的Boot Block代码;在诊断模式下,Boot Block代码从串口打印POST诊断上下文信息;
S3:如果不需要诊断模式POST,系统默认是常规模式POST,常规模式下系统不会输出串口诊断信息;
S4:经过步骤S2或S3后,统一执行Main Block代码,直到POST流程结束。
优选地,针对步骤S1,BIOS POST的BIOS BIN文件结构按照POST阶段,分成两个部分Boot Block部分和Main Block部分,上述步骤针对Boot Block部分是否需要切换诊断模式。
优选地,所述Boot Block部分和Main Block部分放在flash上固定的位置,共同形成一个完整的BIOS。
优选地,步骤S2的通过外切换为诊断模式,具有两种方法:第一种是硬件上南桥切换成跳帽,用跳帽切换南桥状态;第二种是硬件上将南桥的GPIO拉到BMC控制器的GPIO上,通过BMC控制器进行控制。
优选地,步骤S3的常规模式POST,CPU从默认地址执行常规模式Boot Block代码。
优选地,Boot Block部分的文件大小采用64KByte大小的二进制文件。
优选地,Boot Block部分的文件大小采用128Kbyte或256KByte大小的二进制文件。
优选地,两份功能不同的Boot Block代码可以同时储存在一块flash上,并且在不同的条件下,可以分别被执行
本发明一种BIOS POST的常规模式和诊断模式切换方法,当需要BIOS POST比较完整的诊断信息的时候,带外切换南桥状态使系统运行诊断模式的BIOS,通过串口打印出完整的上下文信息;本发明带外(out-of-band)开关切换,诊断版本和常规版本在编译创建时是互斥的编译参数下编译生成;本发明在线诊断,有效降低运维时间成本,二合一的模式,不用额外增加硬件用料,丰富的诊断信息,为问题定位提供有价值的信息。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对本发明予以进一步说明。
图1所示为本发明BIOS POST的BIOS BIN文件结构按照POST阶段分成两部分的示意图;
图2所示为本发明BIOS POST的常规模式和诊断模式切换方法的示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
下面以具体实施例详细介绍本发明的技术方案。
如图1所示,本发明一种BIOS POST的常规模式和诊断模式切换方法,BIOS POST的BIOS BIN文件结构按照POST阶段,分成两个部分Boot Block部分和Main Block部分。其中,Boot Block部分负责从上电到内存初始化和内存空间建立这段POST过程;Main Block部分负责从内存空间建立完成到整个POST结束。
Boot Block部分和Main Block部分放在flash上固定的位置,共同形成一个完整的BIOS。
常规的Boot Block部分和带串口诊断信息的Boot Block部分,这两份是互斥的编译参数下编译生成的,所以需要准备两份Boot Block部分二进制文件;一份常规不带串口诊断信息的Boot Block二进制文件,一份是带串口诊断信息的Boot Block二进制文件。
Boot Block部分的文件大小的考虑,本发明Boot Block部分的文件大小采用64KByte大小的二进制文件,在其他实施例中Boot Block部分的文件大小采用128Kbyte或256KByte大小的二进制文件。
过硬件切换的机制,使得这两份功能不同的Boot Block代码可以同时储存在一块flash上,并且在不同的条件下,可以分别被执行。
如图1所示,本发明BIOS POST的常规模式和诊断模式切换方法,包括如下步骤:
S1:BIOS POST是否需要切换诊断模式;
S2:如果需要诊断模式,通过外切换为诊断模式;当切换完成后,系统上电,中央处理器(CPU)从指定的地址(本实施例的指定的地址为0xFFFE_FFF0)执行诊断模式的BootBlock代码;在诊断模式下,Boot Block代码从串口打印POST诊断上下文信息;
S3:如果不需要诊断模式POST,系统默认是常规模式POST,常规模式下系统不会输出串口诊断信息;
S4:经过步骤S2或S3后,统一执行Main Block代码,直到POST流程结束。
针对步骤S1,BIOS POST的BIOS BIN文件结构按照POST阶段,分成两个部分BootBlock部分和Main Block部分,上述步骤针对Boot Block部分是否需要切换诊断模式。
其中步骤S2的通过外切换为诊断模式,具有两种方法:第一种是硬件上南桥(是基于个人计算机主板芯片组架构中的其中一枚芯片,南桥设计用来处理低速信号,通过北桥与中央处理器联系)切换成跳帽,用跳帽切换南桥状态;第二种是硬件上将南桥的GPIO拉到BMC控制器的GPIO上,通过BMC控制器进行控制。
步骤S3的常规模式POST,CPU从默认的0xFFFF_FFF0地址执行常规模式Boot Block代码。
本发明一种BIOS POST的常规模式和诊断模式切换方法,当需要BIOS POST比较完整的诊断信息的时候,带外切换南桥状态使系统运行诊断模式的BIOS,通过串口打印出完整的上下文信息;本发明带外(out-of-band)开关切换,诊断版本和常规版本在编译创建时是互斥的编译参数下编译生成;本发明在线诊断,有效降低运维时间成本,二合一的模式,不用额外增加硬件用料,丰富的诊断信息,为问题定位提供有价值的信息。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,但是本发明并不限于上述实施方式中的具体细节,应当指出,对于本技术领域的普通技术人员来说,在本发明的技术构思范围内,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,对本发明的技术方案进行多种等同变换,这些改进、润饰和等同变换也应视为本发明的保护范围。

Claims (8)

1.一种BIOS POST的常规模式和诊断模式切换方法,其特征在于,包括如下步骤:
S1:BIOS POST是否需要切换诊断模式;
S2:如果需要诊断模式,通过外切换为诊断模式;当切换完成后,系统上电,中央处理器从指定的地址执行诊断模式的Boot Block代码;在诊断模式下,Boot Block代码从串口打印POST诊断上下文信息;
S3:如果不需要诊断模式POST,系统默认是常规模式POST,常规模式下系统不会输出串口诊断信息;
S4:经过步骤S2或S3后,统一执行Main Block代码,直到POST流程结束。
2.根据权利要求1所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,针对步骤S1,BIOS POST的BIOS BIN文件结构按照POST阶段,分成两个部分Boot Block部分和Main Block部分,上述步骤针对Boot Block部分是否需要切换诊断模式。
3.根据权利要求2所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,所述Boot Block部分和Main Block部分放在flash上固定的位置,共同形成一个完整的BIOS。
4.根据权利要求2所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,步骤S2的通过外切换为诊断模式,具有两种方法:第一种是硬件上南桥切换成跳帽,用跳帽切换南桥状态;第二种是硬件上将南桥的GPIO拉到BMC控制器的GPIO上,通过BMC控制器进行控制。
5.根据权利要求2所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,步骤S3的常规模式POST,CPU从默认地址执行常规模式Boot Block代码。
6.根据权利要求2所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,Boot Block部分的文件大小采用64KByte大小的二进制文件。
7.根据权利要求2所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,Boot Block部分的文件大小采用128Kbyte或256KByte大小的二进制文件。
8.根据权利要求2所述的BIOS POST的常规模式和诊断模式切换方法,其特征在于,两份功能不同的Boot Block代码可以同时储存在一块flash上,并且在不同的条件下,可以分别被执行。
CN201910341016.1A 2019-04-25 2019-04-25 一种bios post的常规模式和诊断模式切换方法 Pending CN110162436A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910341016.1A CN110162436A (zh) 2019-04-25 2019-04-25 一种bios post的常规模式和诊断模式切换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910341016.1A CN110162436A (zh) 2019-04-25 2019-04-25 一种bios post的常规模式和诊断模式切换方法

Publications (1)

Publication Number Publication Date
CN110162436A true CN110162436A (zh) 2019-08-23

Family

ID=67640109

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910341016.1A Pending CN110162436A (zh) 2019-04-25 2019-04-25 一种bios post的常规模式和诊断模式切换方法

Country Status (1)

Country Link
CN (1) CN110162436A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022160756A1 (zh) * 2021-01-29 2022-08-04 苏州浪潮智能科技有限公司 服务器故障定位方法、装置、系统及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081562A (zh) * 2009-11-30 2011-06-01 华为技术有限公司 一种设备诊断方法及系统
US20120117370A1 (en) * 2007-01-05 2012-05-10 Microsoft Corporation Hardware diagnostics and software recovery on headless server appliances
CN102799479A (zh) * 2011-05-26 2012-11-28 鸿富锦精密工业(深圳)有限公司 具有多功能bios的主板及其测试方法
CN107885624A (zh) * 2017-10-10 2018-04-06 曙光信息产业(北京)有限公司 控制bios调试信息输出的方法、装置及服务器
CN108874606A (zh) * 2018-06-29 2018-11-23 郑州云海信息技术有限公司 一种开关bios串口调试功能的控制装置及控制方法
CN109634793A (zh) * 2018-12-11 2019-04-16 广东浪潮大数据研究有限公司 Bios调试模式的控制方法、装置及设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117370A1 (en) * 2007-01-05 2012-05-10 Microsoft Corporation Hardware diagnostics and software recovery on headless server appliances
CN102081562A (zh) * 2009-11-30 2011-06-01 华为技术有限公司 一种设备诊断方法及系统
CN102799479A (zh) * 2011-05-26 2012-11-28 鸿富锦精密工业(深圳)有限公司 具有多功能bios的主板及其测试方法
CN107885624A (zh) * 2017-10-10 2018-04-06 曙光信息产业(北京)有限公司 控制bios调试信息输出的方法、装置及服务器
CN108874606A (zh) * 2018-06-29 2018-11-23 郑州云海信息技术有限公司 一种开关bios串口调试功能的控制装置及控制方法
CN109634793A (zh) * 2018-12-11 2019-04-16 广东浪潮大数据研究有限公司 Bios调试模式的控制方法、装置及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022160756A1 (zh) * 2021-01-29 2022-08-04 苏州浪潮智能科技有限公司 服务器故障定位方法、装置、系统及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN102236621B (zh) 计算机接口信息配置系统及方法
CN100555218C (zh) 用于改善片上仿真系统中高级语言的仿真速度的装置和方法
US9405552B2 (en) Method, device and system for controlling execution of an instruction sequence in a data stream accelerator
US7568090B2 (en) Speedy boot for computer systems
CN107807881B (zh) 代码覆盖率的测试方法、装置和计算机设备
CN106575249A (zh) 针对片上系统(soc)和系统的低功率调试架构
CN110879720B (zh) 可配置服务器及配置服务器的功能的方法
US9846625B2 (en) Method and device for debugging a MIPS-structure CPU with southbridge and northbridge chipsets
US8136001B2 (en) Technique for initializing data and instructions for core functional pattern generation in multi-core processor
CN100422953C (zh) 利用HDL扩展串口的SoC系统在线调试方法
CN101630258A (zh) Windows平台上嵌入式Linux软件集成开发系统及其构建方法
US9870301B2 (en) High-speed debug port using standard platform connectivity
KR20020048306A (ko) 리프로그래머블 테스터, 디버거 및 버스 모니터를 갖는칩상의 무선 시스템을 구현하는 장치 및 방법
CN104462943B (zh) 业务系统中非侵入式性能监控装置和方法
JP2001154876A (ja) マイクロコンピュータデバッグアーキテクチャ及び方法
CN102662645A (zh) 片上系统及片上系统的硬件可编程器件的配置方法
CN110162436A (zh) 一种bios post的常规模式和诊断模式切换方法
CN109634618A (zh) 基于TMS320C674X处理器二级BootLoader串行加载自启动方法
CN114138360B (zh) DSP在Flash上的多核烧写启动方法及系统
EP1113281A2 (en) A method and apparatus for circuit emulation
CN107544804A (zh) 嵌入式系统终端开发模式的启动方法及装置
Ibrahim et al. An on-chip IEEE 1687 network controller for reliability and functional safety management of system-on-chips
US9449176B1 (en) Computer system vulnerability analysis apparatus and method
US6964026B2 (en) Method of updating a semiconductor design
Dal Cin Extending UML towards a Useful OO-Language for Modeling Dependability Features.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190823

RJ01 Rejection of invention patent application after publication