设备故障的检测方法和装置的制作方法

文档序号:6480073阅读:210来源:国知局
专利名称:设备故障的检测方法和装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种设备故障的检测方法和装置。
背景技术
现有的通信设备中,硬件设计通常比较复杂,硬件设备故障情况也多种 多样,如上电无法启动、启动过程死机、某功能模块功能不可用等等,在进 行设备硬件故障检测时,往往需要测试大量的硬件信号,故障排查费时费力, 而且还纟艮难于有效、准确的找到故障点。
当通信设备发生故障时,可以采用人工的硬件故障检测方法, 一般是工 程师凭借经验,推断可能发生故障的位置,然后通过万用表、示波器等测试 仪器辅助对硬件信号进行测试并判断信号是否工作正常来排查硬件故障。该 方法的缺点在于,测试过程中设备本身无法自动检查硬件故障,故障检测过 程对工程师要求较高,要求工程师具备丰富的维修经验并且需要熟悉该故障 设备硬件设计原理。另外,故障诊断过程中需要测试大量的硬件信号,故障 诊断效率低下。
现有技术中还提供了 一种POST (Power On Self Test,上电自检)的方法, 该方法中,在设备上电且CPU ( Central Processing Unit,中央处理单元)小系 统(一般包括CPU、 CPU内存、Flash、 CPLD ( Complex Programmable Logic Device,复杂可编程逻辑器件)等)运行正常后,CPU运行自检软件对硬件 进行初步故障诊断,可以初步检测出硬件故障。使用该方法的缺点在于,该 方法的前提条件在于要求CPU小系统工作正常,即上电时CPU小系统能够正 常运转才能运行上电自检软件。对于上电后CPU d、系统不能正常运转的故障, 该方法无能为力
发明内容
本发明提供一种设备故障的检测方法,用于实现快速有效的硬件故障检测。
为达到上述目的,本发明提供一种设备故障的检测方法,包括 配置关于CPU运行的第一条命令的位置的硬件配置字,所述第一条命令
的位置为只读存储器ROM中预设的命令代码的起始位置;
单板上电后,CPU根据所述硬件配置字在ROM中运行所述预设的命令
代码;
才艮据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬 件模块分别进行检测,获取故障检测结果;
通过与所述单板接口连接的外部设备显示所述故障;险测结果。
其中,所述单板上电后,CPU根据所述硬件配置字在ROM中运行所述 预设的命令代码包括
所述单板上电后,CPU读取预先配置的所述硬件配置字;
所述CPU根据所述硬件配置字从第一条命令的位置开始,在只读存储器 ROM中运行预设的命令代码。
其中,所述根据所述命令代码,使用所述CPU的内部寄存器对所述设备 单板上各硬件模块分别进行检测,获取故障检测结果包括
根据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬 件模块按顺序分别进行检测,当检测到所述设备单板上的一硬件模块发生故 障时,停止检测,将所述检测到的故障作为故障检测结果;或
才艮据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬 件模块按顺序分别进行检测,当所述单板上各硬件模块均检测完成时,停止 检测,将在所述各硬件模块中检测到的故障作为故障检测结果。
其中,所述单板接口为串口,所述通过与所述单板接口连接的外部设备 显示所述故障检测结果包括
通过所述串口驱动与所述串口连接的打印设备打印所述故障检测结果。
本发明还提供一种设备故障的检测装置,包括CPU和ROM,所述CPU包括
配置单元,用于配置关于CPU运行的第一条命令的位置的硬件配置字, 所述第一条命令的位置为只读存储器ROM中预设的命令代码的起始位置;
代码执行单元,用于单板上电后,根据所述硬件配置字在所述ROM中运 行所述预设的命令代码;
初始化单元,用于根据所述命令代码对所述CPU的内部寄存器和单板接 口进行初始化;
检测单元,用于根据所述命令代码,使用所述CPU的内部寄存器对所述 设备单板上各硬件模块分别进行检测,获取故障检测结果;
显示驱动单元,用于通过接口输出与所述单板接口连接的供外部设备显 示的故障数据。
其中,所述代码执行单元包括
配置读取子单元,用于在单寿反上电后读取预先配置的所述硬件配置字; 运行子单元,用于根据所述硬件配置字从第一条命令的位置开始,在所 述ROM中运行预i殳的命令代码。 其中,所述检测单元包括
第一检测子单元,用于根据所述命令代码,使用所述CPU的内部寄存器 对所述设备单板上各硬件模块按顺序分别进行检测,当检测到所述设备单板 上的一硬件模块发生故障时,停止检测,将所述检测到的故障作为故障检测 结果;或
第二检测子单元,根据所述命令代码,使用所述CPU的内部寄存器对所 述设备单板上各硬件模块按顺序分别进行检测,当所述单板上各硬件模块均 检测完成时,停止检测,将在所述各硬件模块中检测到的故障作为故障检测 结果。
其中,所述ROM为所述单板上的FLASH芯片、或单板上的BootROM 芯片。
其中,所述设备单板上各硬件模块包括CPU内存、Flash数据线、地址 线、存储器内部单元、多个关键芯片。其中,所述单板接口为串口,所述与单板接口连接的外部设备为打印设备。
与现有技术相比,本发明具有以下优点
本发明提供的方法中,在CPU和ROM运行正常的情况下即可对设备的 所有硬件进行检测,与现有技术相比,即使CPU小系统运行不正常(例如CPU 内存损坏等)时,也可以通过本方法进行硬件故障;险测。另外,在ROM中运 行程序时就对相关接口进行初始化,使得测试结果可以通过接口功能进行实 时显示,直观明了,利于故障修复。


为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一 些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图l是本发明提供的设备故障检测方法的流程图; 图2是本发明提供的设备故障检测方法的另 一流程图; 图3是本发明提供的设备故障检测装置的结构示意图; 图4是本发明提供的设备故障检测装置的另 一结构示意图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明中的技术方案进行清楚、 完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创 造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种设备故障的检测方法,如图1所示,包括以下步骤
步骤sl01、配置关于CPU运行的第一条命令的位置的硬件配置字,第一 条命令的位置为只读存储器ROM中预设的命令代码的起始位置。
步骤sl02、单板上电后,CPU根据硬件配置字在ROM中运行预设的命令代码。
具体的,单板上电后,CPU读取预先配置的硬件配置字并根据硬件配置 字指示的第一条命令的位置开始,在ROM中运行预设的命令代码。
步骤s103、根据命令代码对CPU的内部寄存器和单板接口进行初始化。 具体的,CPU的内部寄存器在初始化后可以用于运行程序,单板接口在 初始化后可以用于驱动与该单板接口连接的外部设备,
步骤sl04、根据命令代码,使用CPU的内部寄存器对设备单板上各硬件 模块分别进行检测,获取故障检测结果。
步骤s105、通过与单板接口连接的外部设备显示故障检测结果。 以下结合一个具体的应用场景对本发明的实施方式进行详细说明。 本发明提供的故障诊断方法中,单板上电后,CPU在ROM ( Read Only Memory,只读存储器)中运行故障测试程序,在初始化完成CPU内部寄存器 后,完成单板接口的初始化,并在ROM中运行其他硬件模块的测试程序,检 测到故障时,可以通过与单板接口连接的外部设备显示故障信息。本应用场 景中,假设单板接口为单板上的串口,测试结果可以通过与串口连接的打印 设备进行打印出来。
具体的,本发明中的设备故障的检测方法如图2所示,包括 步骤s201、单板上电后,CPU读取硬件配置字,在ROM中运行故障检 测程序。
具体的,ROM中预先存储了用于故障检测的命令代码,对于命令代码在 ROM中的起始位置,通过硬件配置字在CPU中进行了配置,使得单板上电 后CPU可以根据读取到的硬件配置字,从命令代码的第一行开始在ROM中 运行故障检测程序。这里的ROM可以是单板上的Flash芯片、或BootROM (Boot Read Only Memory,启动只读存储器)芯片。
步骤s202、初始化CPU内部寄存器,并初始化串口,使得串口可以打印 信息。
步骤s203、初始化CPU内存控制器,对CPU内存进行测试。测试的内 容包括对CPU内存进行数据线、地址线、内存内部单元测试。步骤s204、判断测试是否通过,如果测试通过,则进行步骤s205,否则 进行步骤s210。
步骤s205、对Flash (闪存)、CF ( Compact Flash Card,标准闪存卡)等 存储器件进行测试。测试的内容包括对存储器件的数据线、地址线、存储器 内部单元等进行测试。
步骤s206、判断测试是否通过,如果测试通过,则进^f于步骤s207,否则 进行步骤s210。
步骤s207、对单斧反上的关4建芯片进行测试,如MAC (Medium Access Control,媒体接入控制)、PHY、 CPLD等。
步骤s208、判断测试是否通过,如果测试通过,则进行步骤s209,否则 进行步骤s210。
步骤s209、测试结束,进入正常启动流程。
步骤s210、判断测试未通过,则串口打印测试结果,报告硬件模块出错 位置以及错误类型,终止测试,等待故障排除。
需要说明的是,上述步骤s201至步骤s210所示的流程中,涉及到的检测 步骤s203、 s205和s207的顺序可以根据硬件模块测试的具体需要进行调整, 也可以根据硬件模块测试的具体需要添加新的测试内容或省略其中的某些测 试内容。另外,该流程中以检测到任一硬件模块未通过则终止测试并打印测 试结果为例进行说明,还可以采取即使某一硬件模块未通过测试仍继续进行 测试的方法,在对所有硬件模块的测试均结束后再打印测试结果,可以理解 的是,该测试流程与上述步骤s201至步骤s210所示的流程相似,在此不进行 重复描述。
本发明提供的方法中,在CPU和ROM运行正常的情况下即可对设备的 所有硬件进行检测,与现有技术相比,即使CPU小系统运行不正常(例如CPU 内存损坏等)时,也可以通过本方法进4亍硬件故障;险测。另外,在ROM中运 行程序时就对相关接口进行初始化,使得测试结果可以通过接口功能进行实 时显示,直观明了,利于故障修复。
本发明还提供一种设备故障的检测装置,如图3所示,包括CPU 10和ROM20,其中CPU10可以具体包括
代码执行单元ll,用于单板上电后,在ROM20中运行预设的命令代码;
初始化单元12,与代码执行单元ll连接,用于根据命令代码对CPU 10 的内部寄存器和单板接口进行初始化;
检测单元13,与初始化单元12连接,用于根据命令代码,使用CPU 10 的内部寄存器对所设备单板上各硬件模块分别进行检测,获取故障检测结果;
显示驱动单元14,与检测单元13连接,用于通过接口输出与单板接口连 接的供外部设备显示的故障数据;
配置单元15,与代码执行单元ll连接,用于配置关于CPU10运行的第 一条命令的位置的硬件配置字,第一条命令的位置为ROM 20中预设的命令 代码的起始位置。该硬件配置字用于供代码执行单元11确定ROM20中命令 代码的执行位置。
本发明提供设备故障的检测装置中,如图4所示,
另外,CPU 10的代码执行单元11可以包括
配置读取子单元111,用于在单板上电后读取预先配置的硬件配置字; 运行子单元112,用于根据硬件配置字从第一条命令的位置开始,在ROM 中运行预设的命令代码。
另外,CPU 10的检测单元13可以包括
第一检测子单元131,用于根据命令代码,使用CPU的内部寄存器对设 备单板上各硬件模块按顺序分别进行检测,当检测到设备单板上的 一硬件模 块发生故障时,停止检测,将检测到的故障作为故障检测结果;或
第二检测子单元132,根据命令代码,使用CPU的内部寄存器对设备单 板上各硬件模块按顺序分别进行检测,当单板上各硬件模块均检测完成时, 停止检测,将在各硬件模块中检测到的故障作为故障检测结果。
另外,上述设备故障的检测装置中,ROM为单板上的FLASH芯片、或 单板上的BootROM芯片;设备单板上各硬件模块包括CPU内存、Flash数 据线、地址线、存储器内部单元、多个关键芯片等;单板接口可以为串口, 与单板接口连接的外部设备为打印设备;单板接口还可以为显示接口,与单板接口连接的外部设备为显示设备。
本发明提供的装置中,在CPU和ROM运行正常的情况下即可对设备的 所有硬件进行抬r测,与现有技术相比,即使CPU小系统运行不正常(例如CPU 内存损坏等)时,也可以通过本方法进行硬件故障4企测。另夕卜,在ROM中运 行程序时就对相关接口进行初始化,使得测试结果可以通过接口功能进行实 时显示,直观明了,利于故障修复。
上述模块可以分布于一个装置,也可以分布于多个装置。上述模块可以 合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发 明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。 基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软 件产品可以存储在一个非易失性存储介质(可以是CD-ROM, U盘,移动硬 盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服 务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的 模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述 进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一 个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆 分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此, 任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1、一种设备故障的检测方法,其特征在于,包括配置关于CPU运行的第一条命令的位置的硬件配置字,所述第一条命令的位置为只读存储器ROM中预设的命令代码的起始位置;单板上电后,CPU根据所述硬件配置字在ROM中运行所述预设的命令代码;根据所述命令代码对所述CPU的内部寄存器和单板接口进行初始化;根据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬件模块分别进行检测,获取故障检测结果;通过与所述单板接口连接的外部设备显示所述故障检测结果。
2、 如权利要求l所述的方法,其特征在于,所述单板上电后,CPU根据 所述硬件配置字在ROM中运行所述预设的命令代码包括所述单^Ji电后,CPU读取预先配置的所述^更件配置字; 所述CPU根据所述硬件配置字从第一条命令的位置开始,在只读存储器 ROM中运行预设的命令代码。
3、 如权利要求l所述的方法,其特征在于,所述根据所述命令代码,使 用所述CPU的内部寄存器对所述设备单板上各硬件模块分别进行检测,获取 故障检测结果包括根据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬 件模块按顺序分别进行检测,当检测到所述设备单板上的一硬件模块发生故 障时,停止检测,将所述检测到的故障作为故障检测结果;或根据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬 件模块按顺序分别进行检测,当所述单板上各硬件模块均检测完成时,停止 检测,将在所述各硬件模块中检测到的故障作为故障检测结果。
4、 如权利要求3所述的方法,其特征在于,所述单板接口为串口,所述 通过与所述单板接口连接的外部设备显示所述故障;险测结果包括通过所述串口驱动与所述串口连接的打印设备打印所述故障检测结果。
5、 一种设备故障的检测装置,其特征在于,包括CPU和ROM,所述CPU 包括配置单元,用于配置关于CPU运行的第一条命令的位置的硬件配置字, 所述第一条命令的位置为只读存储器ROM中预设的命令代码的起始位置;代码执行单元,用于单板上电后,根据所述硬件配置字在所述ROM中运 行所述预设的命令代码;初始化单元,用于才艮据所述命令代码对所述CPU的内部寄存器和单板接 口进4于初始化;检测单元,用于根据所述命令代码,使用所述CPU的内部寄存器对所述 设备单板上各硬件模块分别进行检测,获取故障检测结果;显示驱动单元,用于通过接口输出与所述单板接口连接的供外部设备显 示的故障数据。
6、 如权利要求5所述的装置,其特征在于,所述代码执行单元包括 配置读取子单元,用于在单板上电后读取预先配置的所述硬件配置字; 运行子单元,用于根据所述硬件配置字从第一条命令的位置开始,在所述ROM中运行预设的命令代码。
7、 如权利要求5所述的装置,其特征在于,所述检测单元包括 第一检测子单元,用于根据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬件模块按顺序分别进行检测,当检测到所述设备单板 上的一硬件模块发生故障时,停止检测,将所述检测到的故障作为故障检测 结果;或第二检测子单元,根据所述命令代码,使用所述CPU的内部寄存器对所 述设备单板上各硬件模块按顺序分别进行检测,当所述单板上各硬件模块均 检测完成时,停止检测,将在所述各硬件模块中检测到的故障作为故障检测 结果。
8、 如权利要求5至7中任一项所述的装置,其特征在于,所述ROM为 所述单板上的FLASH芯片、或单板上的BootROM芯片。
9、 如权利要求5至7中任一项所述的装置,其特征在于,所述设备单板 上各硬件模块包括CPU内存、Flash数据线、地址线、存储器内部单元、多 个关键芯片。
10、如权利要求5至7中任一项所述的装置,其特征在于,所述单板接 口为串口,所述与单板接口连接的外部设备为打印设备。
全文摘要
本发明公开了一种设备故障的检测方法和装置。该方法包括配置关于CPU运行的第一条命令的位置的硬件配置字,所述第一条命令的位置为ROM中预设的命令代码的起始位置;单板上电后,CPU根据所述硬件配置字在ROM中运行预设的命令代码;根据所述命令代码对所述CPU的内部寄存器和单板接口进行初始化;根据所述命令代码,使用所述CPU的内部寄存器对所述设备单板上各硬件模块分别进行检测,获取故障检测结果;通过与所述单板接口连接的外部设备显示所述故障检测结果。通过使用本发明,在CPU和ROM运行正常的情况下即可对设备的所有硬件进行检测。另外,在ROM中运行程序时就对相关接口进行初始化,使得测试结果可以通过接口功能进行实时显示,利于故障修复。
文档编号G06F11/22GK101446913SQ20091000021
公开日2009年6月3日 申请日期2009年1月13日 优先权日2009年1月13日
发明者涛 余, 崔江红, 娟 秦, 勇 苏, 宇 高, 鲁玉春 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1