一种嵌入式操作系统中BOOTROM的自动修复装置和控制方法制造方法及图纸

技术编号:4091977 阅读:342 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开一种嵌入式操作系统中BOOTROM的自动修复装置和控制方法,包括含有BOOTROM的启动装置(1)、含有修复软件的存储器(2)、CPU系统(3)、及可编程逻辑电路(9),采用可编程逻辑器件实现寄存器接口(4)、时钟电路(5)、计时逻辑电路(6)、片选控制逻辑电路(7)、及修复逻辑电路(8)。在设备启动过程中,能够自动选择启动装置,当计时值超过预定时间门限后不能完成启动操作时,自动复位CPU系统,通过运行修复软件来启动设备,并同步对启动装置的BOOTROM进行修复。本发明专利技术解决了BOOTROM损坏时设备不能正常工作的技术问题,实现启动设备的自动修复,提高系统的可靠性。

【技术实现步骤摘要】

本专利技术涉及嵌入式操作系统,尤其涉及对B00TR0M(启动映象)的自动修复。
技术介绍
在通信设备等嵌入式系统中,广泛使用CPU加ASIC (专用集成芯片)来实现,其中 CPU通过烧录在FLASH(闪速存储器)中的B00TR0M进行硬件的初时化,然后引导系统软件。 系统上电后,CPU从默认的地址取指令执行,烧录在启动FLASH中的B00TR0M覆盖CPU的上 电后默认的起始地址。B00TR0M 一般不带文件系统,其内容是CPU可以直接执行的二进机器码,在设备 出厂前烧录。烧录B00TR0M的位置与存储系统软件的介质可能是同一介质,如烧录在同一 FLASH中;也可能是不同的介质,如启动软件烧录在FLASH芯片中,系统软件存储在另外的 FLASH芯片中,或者是可移动的CF卡、SD卡等介质中。在设备运行过程中,还可能会需要升级B00TR0M,以支持新特性,或解决软件 BUG(软件设计中的缺陷)。常见的方法是通过以太网端口或串口等从PC(个人电脑)中下 载到设备的内存中,再烧录到启动设备中。这里主要说明烧录B00TR0M的位置与存储系统软件的介质不同时的情形。由于某 些意外的原因,烧录B00TR0M的FLASH芯片中的内容可能损坏。例如人为因素较多地(如 在升级过程中设备掉电、重启等)损坏了 B00TR0M内容的完整性;以及设备运行中的干扰等 导致B00TR0M内容的单个存储位或几个存储位反转。B00TR0M如果损坏,整个设备将不能正常工作。为避免B00TR0M损坏造成的系统引 导失败,只有对启动设备重新烧录,才能使设备正常运行。目前业界多采用备份的方法来解 决,如中国专利文献CN101526910A中公开了一种B00TR0M的备份方法及装置,其通过一个 主用B00TR0M和多个备用B00TR0M实现系统的可靠引导。但其主用B00TR0M不具备自动修 复能力,一旦损坏,只能依靠人工被动的进行更换维护,一方面成本较高,另一方面降低了 系统的可靠性。
技术实现思路
本专利技术的嵌入式操作系统中B00TR0M的自动修复装置和控制方法,解决了 B00TR0M损坏时设备不能正常工作的技术问题,实现启动设备的自动修复,提高系统的可靠性。本专利技术所述的自动修复装置,包括含有B00TR0M的启动装置1、含有修复软件的存 储器2、CPU系统3、及可编程逻辑电路9。所述可编程逻辑电路9包括寄存器接口 4、时钟电 路5、计时逻辑电路6、片选控制逻辑电路7、及B00TR0M修复逻辑电路8。所述寄存器接口 4,包含以下标志位寄存器启动状态标志S_R0M、CPU启动状态指示S_CPU、片选选择CSO、计 时值清除TC、计时停止TS。CPU系统通过总线接口 DATA与可编程逻辑电路9中寄存器接口 4、启动装置1、存 储器2相连。实现对启动装置1及存储器2的读、写操作;改写CPU启动状态指示S_CPU、 片选选择CS0、计时值清除TC、计时停止TS ;并读出寄存器启动状态标志S_R0M。其中寄存 器启动状态标志S_R0M用于标志设备从B00TR0M启动、或从修复软件启动;CPU启动状态指 示S_CPU用于标志CPU是否正常启动;片选选择CSO用于CPU使能启动装置1或存储器2 ; 计时值清除Tc、计时停止TS是在设备正常启动后由CPU写入的控制信号。时钟电路5产生的时钟信号CLK,经接入时钟逻辑电路6,在计时值超过预定时间 门限后产生超时信号T。时钟逻辑电路6的计时功能在CPU向寄存器接口 4写入相应的TC、 TS值时停止。B00TR0M修复逻辑电路8,通过片选控制逻辑电路7将CSO连接到片选A或B,分别 使能启动装置1及存储器2。片选A的条件是,缺省状态下的自动启动或CPU向寄存器写 入CSO ;且计时器未产生超时信号T。片选B的条件是,计时器产生超时信号T,且S_CPU显 示CPU未进入正常启动状态。修复逻辑电路8还输出CPU复位信号RST,向CPU发出复位脉 冲,强制CPU复位重启。输出RST信号的条件是,片选控制逻辑电路使能片选B。本专利技术所述的自动修复控制方法如下,在设备启动过程中,自动选择启动装置1,当B00TR0M在计时值超过预定时间门限 后不能完成启动操作时,B00TR0M修复逻辑电路8自动复位CPU系统,通过使能片选B运行 修复软件来启动设备。在CPU正常运行同时启动修复B00TR0M的功能。可编程逻辑电路9的寄存器接口 中给出启动状态标志S_R0M,CPU启动后读取该标志判断启动状态,如果从修复软件启动, 则启动自动修复功能。CPU通过控制寄存器CSO使能片选A,将保存在修复软件存储器2中 的B00TR0M数据复制到启动设备1中。本专利技术所有的功能都在可编程逻辑阵列中自动实现,不需要人为的任何干预操 作。采用本专利技术所述方法和装置,与现有技术相比,由于采取了对CPU系统启动状态进行 实时监视,及通过可编程逻辑电路控制选通B00TR0M和修复软件,在B00TR0M损坏下仍能启 动,并达到了自动修复的效果,节省了修复时间,提高了系统的可靠性。附图说明下面根据附图和实施例对本专利技术作进一步详细说明。图1是本专利技术的装置框图;图2是本专利技术的处理流程图。图中1 启动装置2 含有修复软件的存储器3 =CPU 系统4:寄存器接口5:时钟电路6 计时逻辑电路7 片选控制逻辑电路8 修复逻辑电路9 可编程逻辑电路S ROM:寄存器启动状态标志S CPU :CPU启动状态指示CSO 片选选择TC 计时值清除TS 计时停止DATA :CPU系统总线接口CLK 时钟信号T 超时信号A :B00TR0M片选信号B 修复软件片选信号RST =CPU复位信号具体实施例方式如图1所示,本专利技术所述的自动修复装置,包括含有B00TR0M的启动装置1、含有修 复软件的存储器2、CPU系统3、及可编程逻辑电路9。所述可编程逻辑电路9包括寄存器接 口 4、时钟电路5、计时逻辑电路6、片选控制逻辑电路7、及B00TR0M修复逻辑电路8。所述 寄存器接口 4,包含以下标志位寄存器启动状态标志S_R0M、CPU启动状态指示S_CPU、片选 选择CS0、计时值清除TC、计时停止TS。CPU系统通过总线接口 DATA与可编程逻辑电路9中寄存器接口 4、启动装置1、存 储器2相连。实现对启动装置1及存储器2的读、写操作;改写CPU启动状态指示S_CPU、 片选选择CS0、计时值清除TC、计时停止TS ;并读出寄存器启动状态标志S_R0M。其中寄存 器启动状态标志S_R0M用于标志设备从B00TR0M启动、或从修复软件启动;CPU启动状态指 示S_CPU用于标志CPU是否正常启动;片选选择CSO用于CPU使能启动装置1或存储器2 ; 计时值清除Tc、计时停止TS是在设备正常启动后由CPU写入的控制信号。时钟电路5产生的时钟信号CLK,经接入时钟逻辑电路6,在计时值超过预定时间 门限后产生超时信号T。时钟逻辑电路6的计时功能在CPU向寄存器接口 4写入相应的TC、 TS值时停止。B00TR0M修复逻辑电路8,通过片选控制逻辑电路7将CSO连接到片选A或B,分别 使能启动装置1及存储器2。片选A的条件是,缺省状态下的自动启动或CPU向寄存器写 入CSO ;且计时器未产生超时信号T。片本文档来自技高网
...

【技术保护点】
一种嵌入式操作系统中BOOTROM的自动修复装置,其特征在于包括:含有BOOTROM的启动装置(1)、含有修复软件的存储器(2)、CPU系统(3)、及可编程逻辑电路(9);所述可编程逻辑电路(9),包括寄存器接口(4)、时钟电路(5)、计时逻辑电路(6)、片选控制逻辑电路(7)、及BOOTROM修复逻辑电路(8);所述寄存器接口(4),包含以下标志位:寄存器启动状态标志(S_ROM)、CPU启动状态指示(S_CPU)、片选选择(CS0)、计时值清除(TC)、计时停止(TS);所述CPU系统(3)通过总线接口(DATA)与可编程逻辑电路(9)中寄存器接口(4)、启动装置(1)、存储器(2)相连,实现读、写操作;改写CPU启动状态指示(S_CPU)、片选选择(CS0)、计时值清除(TC)、计时停止(TS);并读出寄存器启动状态标志(S_ROM);所述时钟电路(5)产生的时钟信号(CLK),经接入时钟逻辑电路(6),在计时值超过预定时间门限后产生超时信号(T);时钟逻辑电路(6)的计时功能在CPU向寄存器接口(4)写入相应的寄存器值(TC、TS)时停止;所述BOOTROM修复逻辑电路(8),通过片选控制逻辑电路(7)将片选(CS0)分别使能启动装置(1)及修复软件存储器(2);使能启动装置(1)的条件是,缺省状态下的自动启动或CPU向寄存器写入片选(CS0);且计时器未产生超时信号(T);使能修复软件存储器(2)的条件是,计时器产生超时信号(T),且CPU启动状态指示(S_CPU)显示CPU未进入正常启动状态;修复逻辑电路(8)还输出CPU复位信号(RST),向CPU发出复位脉冲,强制CPU复位重启;输出复位信号的条件是,片选控制逻辑电路使能修复软件存储器(2)。...

【技术特征摘要】
一种嵌入式操作系统中BOOTROM的自动修复装置,其特征在于包括含有BOOTROM的启动装置(1)、含有修复软件的存储器(2)、CPU系统(3)、及可编程逻辑电路(9);所述可编程逻辑电路(9),包括寄存器接口(4)、时钟电路(5)、计时逻辑电路(6)、片选控制逻辑电路(7)、及BOOTROM修复逻辑电路(8);所述寄存器接口(4),包含以下标志位寄存器启动状态标志(S_ROM)、CPU启动状态指示(S_CPU)、片选选择(CS0)、计时值清除(TC)、计时停止(TS);所述CPU系统(3)通过总线接口(DATA)与可编程逻辑电路(9)中寄存器接口(4)、启动装置(1)、存储器(2)相连,实现读、写操作;改写CPU启动状态指示(S_CPU)、片选选择(CS0)、计时值清除(TC)、计时停止(TS);并读出寄存器启动状态标志(S_ROM);所述时钟电路(5)产生的时钟信号(CLK),经接入时钟逻辑电路(6),在计时值超过预定时间门限后产生超时信号(T);时钟逻辑电路(6)的计时功能在CPU向寄存器接口(4)写入相应的寄存器值(TC、TS)时停止;所述BOOTROM修复逻辑电路(8),通过片选控制逻辑电路(7)将片选(CS0)分别使能启动装置(1)及修复软件存储器(2);使能启动装置(1)的条件是,缺省状态下的自动启动或CPU向寄存器写入片选(CS0);且计时器未产生超时信号(T);使能修复软件存储器(2)的条件是,计时器产生超时信号(T),且CPU启动状态指示(S_CPU)显示CPU未进入正常启动状态;修复逻辑电路(8)还输出CPU复位信号(RST),向CPU发出复位脉冲,强制CPU复位重启;输出复位信号的条件是,片选控制逻辑电路使能修复软件存储器(2)。2.如权利要求1所述的嵌入式操作系统中B00TR0M的自动修复装置,其特征在于所 述可编程逻辑电路(9)使用CPLD (复杂可编程逻辑器件),包括FPGA (现场可编程门阵列)、 或者GAL (通用逻辑阵列)实现。3.如权利要求1所述的嵌入式操作系统中B00TR0M的自动修复装置,其特征在于判 断超时所使用的时钟是由看门狗电路组成低频时钟源。4.如权利要求1所述的嵌入式操作系统中B00T...

【专利技术属性】
技术研发人员:邹泓
申请(专利权)人:神州数码网络北京有限公司
类型:发明
国别省市:11[中国|北京]

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

1