CN104636224A - 一种硬件调试方法及装置 - Google Patents
一种硬件调试方法及装置 Download PDFInfo
- Publication number
- CN104636224A CN104636224A CN201310568076.XA CN201310568076A CN104636224A CN 104636224 A CN104636224 A CN 104636224A CN 201310568076 A CN201310568076 A CN 201310568076A CN 104636224 A CN104636224 A CN 104636224A
- Authority
- CN
- China
- Prior art keywords
- debugging
- value
- hardware
- hardware performance
- nvram
- 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.)
- Granted
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明适用于计算机领域,提供了一种硬件调试方法,所述方法包括下述步骤:***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器;初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM;读取NVRAM中的调试值进行调试。本发明能够简化硬件调试的操作以及解决用户通过用户管理界面输入硬件不支持的调试值时***的开机问题。
Description
技术领域
本发明属于计算机领域,尤其涉及一种硬件调试方法及装置。
背景技术
在现有技术中,计算机硬件的调试工作繁琐且耗费时间。例如对CPU、MCU的频率与时序进行调试时,主要是通过串口调试线输入具体的调试值到相对应的控制寄存器中。这种方法需要另外一台机器当调试机台进行调试值的输入;当输入的数据错误时,还需要重新启动机器;而且开机的等待时间长,进行大批量的验证时操作困难。
目前也有通过用户管理界面来对CPU、MCU进行调试的方法,此方法可以解决上述问题,但是在用户管理界面输入的是硬件不支持的调试值时,***就开不了机。
发明内容
本发明在于提供一种硬件调试方法及装置,以简化硬件调试的操作以及解决用户通过用户管理界面输入硬件不支持的调试值时***的开机问题。
本发明是这样实现的,一种硬件调试方法,所述方法包括:
***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器;
初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM;
读取NVRAM中的调试值进行调试。
本发明的另一方面,提供了一种硬件调试装置,所述装置包括:
初始化单元,用于***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器;
设置单元,用于初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM;
调试单元,用于读取NVRAM中的调试值进行调试。
本发明实施例与现有技术对比存在的有益效果是:本发明实施例通过判断硬件性能对应的总线扩展器引脚输出电平为高电平(即用户输入了硬件不支持的调试值)时,自动恢复非易失性随机访问存储器NVRAM中的硬件性能为预设的默认值,初始化控制寄存器,再进入用户管理界面接收用户设置的调试值进行硬件调试,从而简化了硬件调试的过程以及解决了用户输入硬件不支持的调试值时***的开机问题。
附图说明
为了清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的硬件调试方法的实现流程图;
图2是本发明实施例一提供的硬件调试方法步骤S101的具体流程图;
图3是本发明实施例二提供的硬件调试装置的组成结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明适用于飞腾平台,提供了一种硬件调试方法。所述方法基于SPARC 架构,利用总线扩展器GPIO的引脚10输出电平是否为高电平来判断是否输入了硬件不支持的调试值。若是,则自动恢复非易失性随机访问存储器NVRAM中的硬件性能为默认值,初始化控制寄存器,再进入用户管理界面,接收用户选择和/或输入的调试值进行硬件调试,从而简化了硬件调试的过程以及解决用户输入硬件不支持的调试值时,***的开机问题。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一
图1示出了本发明实施例一提供的硬件调试方法的实现流程,详述如下:
在步骤S101中,***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器。
在本实施例中,所述***包括但不限于平板电脑、笔记本电脑、台式计算机以及服务器的***。
所述硬件性能包括但不限于CPU频率、输入/输出频率、CPU核数、微控制单元MCU频率。
所述将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值是指在判断硬件性能对应的总线扩展器GPIO的引脚输出为高电平时,自动将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值。
作为本发明的一个实施示例,选用总线扩展器GPIO的第10个引脚。当GPIO10输出的电平为高电平时,自动将将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值。
所述默认值为硬件性能的默认值。
所述非易失性随机访问存储器NVRAM是存储环境变量(即硬件性能调试值)的位置。作为本发明的一个实施示例,非易失性随机访问存储器NVRAM所分配的地址为0xfff01c0000。
所述读取所述默认值以初始化控制寄存器是指读取所述默认值,将所述默认值写入控制寄存器,然后进入用户管理界面进行硬件调试。
在步骤S102中,初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM。
所述接收用户通过用户管理界面设置的硬件性能调试值具体为:
接收用户通过选择用户管理界面上提供的预设值设置的硬件性能调试值;
和/或
接收用户通过用户管理界面手动输入的硬件性能调试值。
作为本发明的一个实施示例,以控制CPU频率为例,在Setup界面,CPU频率的变量名称为cpu_freq_sel,设置cpu_freq_sel的三个预设值为:1200/1000/800。
cpu_freq_sel在非易失性随机访问存储器NVRAM中的默认值为800。
当用户进入用户管理界面进行CPU频率调试时,用户管理界面提供三个预设值1200/1000/800供用户选择,或者用户可以通过键盘手动输入调试值。所述用户通过管理界面设置的调试值存储至非易失性随机访问存储器NVRAM中。
在步骤S103中,读取NVRAM中的调试值进行调试。
进一步地,所述读取NVRAM中的调试值进行调试的步骤具体为:
在硬件性能调试时,从非易失性随机访问存储器NVRAM中查找与所述硬件性能相对应的变量名称;
根据所述变量名称获取硬件的调试值,并将所述调试值写入控制寄存器进行硬件调试。
所述硬件性能调试是指机器在Hypervisor阶段进行编译。
作为本发明的一个实施示例,对CPU频率进行调试(即在Hypervisor阶段进行编译),在非易失性随机访问存储器NVRAM中(地址为0xfff01c0000)查找CPU频率对应的变量名称cpu_freq_sel,获得CPU频率的调试值,写入控制寄存器进行调试。
在本发明实施例中,***开机时,通过判断硬件性能对应的总线扩展器GPIO引脚的输出为高电平时,自动将非易失性随机访问存储器NVRAM中的 硬件性能恢复至预设的默认值,读取所述默认值初始化控制寄存器,进入用户管理界面,接收用户选择或者手动输入的调试值进行硬件性能调试,从而简化了硬件调试的过程以及解决用户输入硬件不支持的调试值时***开机的问题。
图2示出了本发明实施例一提供的硬件调试方法中步骤S101的具体流程。如图2所述,图1实施例中的步骤S101具体为:
在步骤S201中,***开机,判断硬件性能对应的总线扩展器GPIO引脚的输出是否为高电平。
在本实施例中,使用了总线扩展器GPIO中的第10个引脚,引脚输出有高电平和低电平两个值。当用户通过用户管理界面输入的是硬件所支持的调试值,则GPIO10为低电平;当用户通过用户管理界面输入的是硬件不支持的调试值,则GPIO10为高电平。
在步骤S202中,在硬件性能对应的总线扩展器GPIO引脚输出为高电平时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值;否则,执行步骤S203。
在本实施例中,GPIO10输出为高电平,表示用户输入了硬件不支持的调试值,***需要重启。在重启时,判断得到GPIO10为高电平,自动将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值。
在步骤S203中,读取所述默认值,初始化控制寄存器。
在本实施例中,读取所述默认值,初始化控制寄存器,进入用户管理界面设置硬件性能调试值进行调试。
在本发明实施例中,通过在***开机时,判断硬件性能对应的GPIO引脚输出为高电平时,自动将非易失性随机访问存储器NVRAM中的硬件性能恢复至默认值,读取所述默认值初始化控制寄存器,从而解决了用户通过用户管理界面输入硬件不支持的调试值时***的开机问题。
实施例二
图3示出了本发明实施例二提供的硬件调试装置的组成结构。该装置主要 应用于飞腾平台,适用于平板电脑、笔记本电脑、台式计算机以及服务器,用于运行本发明图1和图2实施例所述的硬件调试方法。为了便于说明,仅示出了与本实施例相关的部分。
参照图3,该装置包括:
初始化单元31,***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器。
进一步地,所述初始化单元31具体用于:
***开机,判断硬件性能对应的总线扩展器GPIO引脚输出电平是否为高电平;
若是,则将NVRAM中的硬件性能恢复至预设的默认值;
读取所述默认值,初始化控制寄存器。
所述硬件性能包括但不限于CPU频率、输入/输出频率、CPU核数、微控制单元频率等。
设置单元32,初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM。
进一步地,所述设置单元32具体用于:
初始化结束后进入用户管理界面;
接收用户通过选择用户管理界面上提供的预设值设置的硬件性能调试值;
和/或
接收用户通过用户管理界面手动输入的硬件性能调试值;
将所述调试值存储至NVRAM。
调试单元33,读取NVRAM中的调试值进行调试。
进一步地,所述调试单元33具体用于:
在硬件性能调试时,从非易失性随机访问存储器NVRAM中查找与所述硬件性能相对应的变量名称;
根据所述变量名称获取硬件的调试值,并将所述调试值写入控制寄存器进 行硬件调试。
在本发明实施例中,***开机时,判断硬件性能对应的总线扩展器GPIO的引脚输出为高电平,则自动将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器,再进入用户管理界面,接收用户选择和/或输入的调试值进行硬件调试,从而简化了硬件调试的操作以及解决用户通过用户管理界面输入硬件不支持的调试值时***的开机问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
上述硬件调试方法的实现源代码如下:
在reset.s中
。
Claims (10)
1.一种硬件调试方法,其特征在于,所述方法包括:
***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器;
初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM;
读取NVRAM中的调试值进行调试。
2.如权利要求1所述的方法,其特征在于,所述***开机,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器的步骤具体为:
***开机,判断硬件性能对应的总线扩展器GPIO引脚输出电平是否为高电平;
若是,则将NVRAM中的硬件性能恢复至预设的默认值;
读取所述默认值,初始化控制寄存器。
3.如权利要求1或2所述的方法,其特征在于,所述硬件性能包括CPU频率、输入/输出频率、CPU核数、微控制单元MCU频率。
4.如权利要求1所述的方法,其特征在于,所述接收用户通过用户管理界面设置的硬件性能调试值步骤具体为:
接收用户通过选择用户管理界面上提供的预设值设置的硬件性能调试值;
和/或
接收用户通过用户管理界面手动输入的硬件性能调试值。
5.如权利要求1所述的方法,其特征在于,所述读取NVRAM中的调试值进行调试的步骤具体为:
在硬件性能调试时,从非易失性随机访问存储器NVRAM中查找与所述硬件性能相对应的变量名称;
根据所述变量名称获取硬件的调试值,并将所述调试值写入控制寄存器进行硬件调试。
6.一种硬件调试装置,其特征在于,所述装置包括:
初始化单元,用于***开机时,将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值,读取所述默认值以初始化控制寄存器;
设置单元,用于初始化结束后进入用户管理界面,接收用户通过用户管理界面设置的硬件性能调试值,将所述调试值存储至NVRAM;
调试单元,用于读取NVRAM中的调试值进行调试。
7.如权利要求6所述的硬件调试装置,其特征在于,所述初始化单元具体用于:
***开机,判断硬件性能对应的总线扩展器GPIO引脚输出电平是否为高电平;
若是,则将非易失性随机访问存储器NVRAM中的硬件性能恢复至预设的默认值;
读取所述默认值,初始化控制寄存器。
8.如权利要求6或7所述的硬件调试装置,其特征在于,所述硬件性能包括CPU频率、输入/输出频率、CPU核数、微控制单元MCU频率。
9.如权利要求6所述的硬件调试装置,其特征在于,所述设置单元具体用于:
接收用户通过选择用户管理界面上提供的预设值设置的硬件性能调试值;
和/或
接收用户通过用户管理界面手动输入的硬件性能调试值。
10.如权利要求6所述的硬件调试装置,其特征在于,所述调试单元具体用于:
在硬件性能调试时,从非易失性随机访问存储器NVRAM中查找与所述硬件性能相对应的变量名称;
根据所述变量名称获取硬件的调试值,并将所述调试值写入控制寄存器进行硬件调试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310568076.XA CN104636224B (zh) | 2013-11-14 | 2013-11-14 | 一种硬件调试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310568076.XA CN104636224B (zh) | 2013-11-14 | 2013-11-14 | 一种硬件调试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104636224A true CN104636224A (zh) | 2015-05-20 |
CN104636224B CN104636224B (zh) | 2017-12-26 |
Family
ID=53215011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310568076.XA Active CN104636224B (zh) | 2013-11-14 | 2013-11-14 | 一种硬件调试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104636224B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111983991A (zh) * | 2019-05-24 | 2020-11-24 | 上海博泰悦臻网络技术服务有限公司 | 一种车载微控制单元调试方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010052067A1 (en) * | 1997-10-30 | 2001-12-13 | Klein Dean A. | Method and apparatus for improved storage of computer system configuration information |
CN1904842A (zh) * | 2006-08-04 | 2007-01-31 | 华为技术有限公司 | 一种cmos参数的设置维护装置及方法 |
CN101419555A (zh) * | 2007-10-23 | 2009-04-29 | 华硕电脑股份有限公司 | 电脑***的开机方法 |
CN102262569A (zh) * | 2010-05-26 | 2011-11-30 | 深圳华北工控股份有限公司 | 一种防止cmos设置不当而导致***bios不稳定的控制方法 |
CN102736908A (zh) * | 2011-04-14 | 2012-10-17 | 研祥智能科技股份有限公司 | 远程设置cmos参数的***、装置及方法 |
-
2013
- 2013-11-14 CN CN201310568076.XA patent/CN104636224B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010052067A1 (en) * | 1997-10-30 | 2001-12-13 | Klein Dean A. | Method and apparatus for improved storage of computer system configuration information |
CN1904842A (zh) * | 2006-08-04 | 2007-01-31 | 华为技术有限公司 | 一种cmos参数的设置维护装置及方法 |
CN101419555A (zh) * | 2007-10-23 | 2009-04-29 | 华硕电脑股份有限公司 | 电脑***的开机方法 |
CN102262569A (zh) * | 2010-05-26 | 2011-11-30 | 深圳华北工控股份有限公司 | 一种防止cmos设置不当而导致***bios不稳定的控制方法 |
CN102736908A (zh) * | 2011-04-14 | 2012-10-17 | 研祥智能科技股份有限公司 | 远程设置cmos参数的***、装置及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111983991A (zh) * | 2019-05-24 | 2020-11-24 | 上海博泰悦臻网络技术服务有限公司 | 一种车载微控制单元调试方法及*** |
CN111983991B (zh) * | 2019-05-24 | 2022-09-16 | 上海博泰悦臻网络技术服务有限公司 | 一种车载微控制单元调试方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN104636224B (zh) | 2017-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10353779B2 (en) | Systems and methods for detection of firmware image corruption and initiation of recovery | |
US8751783B2 (en) | Booting computing devices with EFI aware operating systems | |
CN101794235B (zh) | 基于操作***网络驱动的无盘计算机启动方法 | |
US9880862B2 (en) | Method and system for verifying proper operation of a computing device after a system change | |
CN103930878A (zh) | 用于存储器验证的方法、装置及*** | |
WO2016074127A1 (zh) | 计算机设备及计算机设备内存启动的方法 | |
US10606677B2 (en) | Method of retrieving debugging data in UEFI and computer system thereof | |
CN104102506A (zh) | 一种基于ARM平台的Android启动加速方法 | |
CN102439565A (zh) | 启动恢复的方法和装置 | |
CN103984565A (zh) | 文件***预提取的方法与电子装置以及启动方法 | |
CN104572061A (zh) | 一种基于龙芯服务器的uefi固件实现方法 | |
CN104156234A (zh) | 启动多核处理器、bootloader大小端模式自适应的方法及装置 | |
CN104572161A (zh) | 一种基于龙芯便携式计算机的uefi固件实现方法 | |
CN104424047A (zh) | 一种nvram数据恢复方法和装置 | |
CN110780908A (zh) | 屏幕显示程序升级方法、***及终端设备 | |
US10491736B2 (en) | Computer system and method thereof for bluetooth data sharing between UEFI firmware and OS | |
CN104572162A (zh) | 一种基于龙芯手持式计算机的uefi固件实现方法 | |
CN104572163A (zh) | 一种基于龙芯台式计算机的uefi固件实现方法 | |
CN103984572A (zh) | 一种无光驱实现电脑安装和切换操作***的方法及设备 | |
CN104679566A (zh) | 更新smbios的方法和终端设备 | |
US9652259B2 (en) | Apparatus and method for managing register information in a processing system | |
US20070198822A1 (en) | Method for changing booting sources of a computer system and a related backup/restore method thereof | |
CN104657232A (zh) | Bios自动恢复***及方法 | |
CN104636224A (zh) | 一种硬件调试方法及装置 | |
EP4064041A1 (en) | Platform hardening for bootloaders via reference firmware |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 518057 computer building of the Great Wall, Nanshan District science and Technology Park, Shenzhen, Guangdong Applicant after: China the Great Wall science and technology group Limited by Share Ltd Address before: 518057 computer building of the Great Wall, Nanshan District science and Technology Park, Shenzhen, Guangdong Applicant before: China Changcheng Computer Shenzhen Co., Ltd. |
|
GR01 | Patent grant |