CN101329632B - 一种使用boot启动cpu的方法与装置 - Google Patents

一种使用boot启动cpu的方法与装置 Download PDF

Info

Publication number
CN101329632B
CN101329632B CN200810067038.5A CN200810067038A CN101329632B CN 101329632 B CN101329632 B CN 101329632B CN 200810067038 A CN200810067038 A CN 200810067038A CN 101329632 B CN101329632 B CN 101329632B
Authority
CN
China
Prior art keywords
boot
cpu
promoter region
zone bit
epld
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.)
Expired - Fee Related
Application number
CN200810067038.5A
Other languages
English (en)
Other versions
CN101329632A (zh
Inventor
封葳
黄瑞华
郭俊敏
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN200810067038.5A priority Critical patent/CN101329632B/zh
Publication of CN101329632A publication Critical patent/CN101329632A/zh
Application granted granted Critical
Publication of CN101329632B publication Critical patent/CN101329632B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供了一种使用BOOT启动CPU的方法与装置,用于电信、通讯领域,该发明中的BOOT启动装置采用单一的FLASH存储介质,将FLASH按照不同的地址空间划分为至少2个BOOT启动区,当某一BOOT启动区无法正常启动CPU时,采用其他的BOOT启动区重新启动CPU。该发明解决了单BOOT无法对通讯领域中的突发事件如断电等,以及远程升级的可靠性提供足够保证的问题,提高了远程操作性和升级可靠性;而且此双BOOT装置硬件结构简单,同样适合对空间尺寸要求严格的小单板模块使用。

Description

一种使用BOOT启动CPU的方法与装置
技术领域
本发明涉及电信、通讯领域,更具体地说涉及使用BOOT引导启动CPU的方法与装置。 
背景技术
现阶段电信,通讯领域多机架多单板综合系统,多数复杂的功能单板都有自己的主控CPU单元。在系统主控单板的CPU系统部分,BOOT引导部分是CPU系统的基础,固化性较高,但可升级性较差。 
现在较多使用方法是选用插座+PLCC封装的小容量Flash来承担BOOT功能的物理介质,优点是可脱离单板用烧片机来进行BOOT改动、升级调试;缺点是单板可加工性差,如果提供在线升级功能可靠性差。另外随着成本和可维护性能要求,逐步减少对插座的使用; 
另一种方法是使用较大容量FLASH具有特有BOOTt地址空间来完成CPU的启动引导功能。但这些单BOOT装置都无法对通讯领域中的突发事件如断电等,以及远程升级的可靠性提供足够的保证。 
现有还有双BOOT双FLASH介质的主备引导启动的方式,如图1其硬件装置较复杂,在版本回退管理上较复杂,不适合空间尺寸小型化的设备。 
发明内容
本发明要解决的技术问题是如何保证CPU启动引导和远程升级的可靠性,即当启动出现异常情况使BOOT程序破坏,导致系统不能复位/重上电从而正常工作时,如何使BOOT仍然可以再次引导启动CPU正常工作的问题。 
本发明提供了一种使用BOOT启动CPU的方法,其特征是,BOOT启动单元采用单一的FLASH存储介质,将存储介质按照不同的地址空间划分为至少2个BOOT启动区,当某一BOOT启动区无法正常启动CPU时,采用其他的BOOT启动区重新启动CPU。 
上述方法可以包括如下步骤: 
(1)EPLD在启动BOOT一定时间之后检测其寄存器[REV_F]标志位;如果EPLD寄存器[REV_F]标志位写入1,表明当前BOOT启动区可以正确加载,进入步骤2;如果标志位未被置为1,则说明当前BOOT启动区是不可用的,此时将[M/S]标志位进行切换,从另一个启动区进行启动,重复上述操作; 
(2)EPLD在启动BOOT之后检测寄存器[REV_S]标志位;如果EPLD寄存器[REV_S]标志位写入1,表明当前BOOT的版本初始化成功;如果标志位未被置为1,则说明当前的BOOT初始化不正确,此时将[M/S]标志位进行切换,从另一个启动区进行启动,重复上述过程。 
上述方法还可以把划分的某一BOOT启动区设定为默认启动区,CPU首先从该启动区启动,当该启动区无法启动CPU时,再从其他启动区启动CPU。 
并且当CPU启动成功后,还可以对看门狗进行喂狗操作。 
本发明还提供了一种使用BOOT启动CPU的装置,包括CPU控制单元,BOOT启动单元和EPLD逻辑单元,EPLD一端连接CPU一端连接BOOT,其特征是BOOT启动单元采用单一的FLASH存储介质,将存储介质按照不同的地址空间划分为至少2个BOOT启动区,当某一BOOT启动区无法正常启动CPU时,利用其他的BOOT启动区重新启动CPU。 
上述装置,还可以在存储介质特定的地址空间存放默认启动区标识。 
上述装置还可以包括看门狗单元,其与EPLD共同构成硬件逻辑部分。 
本发明采用双BOOT单FLASH存储介质,可以采用软件方式远程进行可靠boot升级,并在升级失败情况下可以进行前后版本的回退;也同样解决了单BOOT无法对通讯领域中的突发事件如断电等问题,以及对BOOT升级的可靠性,纠错性以及远端可靠性提供了保证;并且此双BOOT装置硬件结构简单,同样适合对空间尺寸要求严格的小单板模块使用,降低了产品成本,提高了设备可维护性。 
附图说明
图1是现有技术双BOOT双FLASH装置原理框图。 
图2是本发明实施例1双BOOT单FLASH装置工作原理框图。 
图3是本发明实施例1种FLASH存储介质的物理分区示意图。 
图4是本发明实施例2的流程图。 
具体实施方式
实施例1 
一种使用BOOT引导启动CPU的装置,主要用于通讯系统设备具有主控CPU单元的单板。具体如图2和图3所示,包括以下几部分。 
1. 主控CPU单元:包括内存和其附属的通讯接口、看门狗接口、以及控制信号。主控CPU单元在上电或复位状态后,按照硬件配置的加载方式(基于Boot ROM的镜像加载),向BOOT发起加载镜像动作,在加载BOOT过程中,CPU向逻辑单元寄存器发送启动成功不翻转切换标志,可以在启动开始和结束分两次置位。加载到指定内存RAM地址后,跳转到内存中执行。此时CPU基本配置完成,主要的通讯接口已经打通,并对看门狗进行喂狗操作。 
2. 双BOOT单FLASH单元:将FLASH单元按照不同的地址空间划分双BOOT启动区:启动区0和启动区1,甚至启动区2,3等等多BOOT备份。本实施例中BOOT分为启动区0和1两个区;在FLASH特定的地址空间还可以存放一些非易失性信息,例如制定的默认启动区标识等。 
3. 看门狗和EPLD逻辑单元:EPLD和看门狗单元是实现双boot装置启动控制策略的硬件逻辑部分。看门狗在装置上电到CPU接管喂狗这一过程的喂狗策略是由EPLD硬件逻辑单元来完成的,主要针对加载过程中遇到异常情况进行复位操作。EPLD提供PC或CPU加载FLASH物理接口,同时提供寄存器来读出并存储FLASH的非易失性信息。同时根据CPU启动是否成功的翻转信号来控制总线译码,进行启动区0/1切换功能。 
实施例2 
一种使用BOOT引导启动CPU的方法,其流程图如图4所示。图4中左侧内容分别表示由看门狗和EPLD逻辑单元完成的任务,右侧内容表示由CPU的BOOT单元完成的任务。 
本实施例中将FLASH单元按照不同的地址空间划分双BOOT启动区:启动区0和启动区1。在FLASH特定的地址空间还可以存放一些非易失性信息,例如制定的默认启动区标识。在此默认启动区是启动区0。 
启动方法步骤如下: 
1、CPU上电看门狗或软件产生复位前,由EPLD逻辑负责从FLASH中获取双BOOT控制字[M/S],以此决定从启动区0或启动区1启动;本实施例设定默认从启动区0启动; 
2、EPLD拉起上述原因产生的复位信号给CPU,CPU开始BOOT过程;EPLD应根据CPU选型做出提供地址转换,以便CPU可以正确地从BOOT区中读取启动代码进行BOOT启动; 
3、CPU进行BOOT启动过程,EPLD可以在其内部启动快速翻转和慢速翻转的定时监控; 
4、EPLD在启动BOOT一定时间(本实施例选定2秒)之后检测其寄存器[REV_F]标志位; 
CPU的BOOT在其最初的启动代码文件中,即向EPLD寄存器[REV_F]标志位写入1, 表明当前BOOT已经可以正确加载到CPU处理,不允许EPLD进行BOOT快速翻转;如果标志位未被置为1,则说明当前BOOT是不可用的,此时立即将[M/S]标志位进行切换,从启动区1进行启动; 
5、EPLD在启动BOOT之后检测寄存器[REV_S]标志位; 
如果BOOT可以正常运行,则在运行到加载运行版本之前(超时等待自动加载之前),BOOT应再次与EPLD握手,即向EPLD寄存器[REV_S]标志位写入1,表明当前BOOT的版本已经完成最初的引导,等着从版本设备(HOST,FLASH或者硬盘等)上加载运行版本,不允许EPLD进行BOOT快速翻转;如果标志位未被置为1,则说明当前的BOOT初始化不正确,此时将BDBCR[M/S]标志位进行切换,从启动区1进行启动,重复上述过程; 
如果启动区0和启动区1都不可用,表明CPU无法正常启动,启动看门狗报警。 
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 

Claims (6)

1.一种使用BOOT启动CPU的方法,其特征是,BOOT启动单元采用单一的FLASH存储介质,将存储介质按照不同的地址空间划分为至少2个BOOT启动区,当某一BOOT启动区无法正常启动CPU时,采用其他的BOOT启动区重新启动CPU;
其中,该方法包括如下步骤:
(1)EPLD在启动BOOT一定时间之后检测其寄存器[REV_F]标志位;如果EPLD寄存器[REV_F]标志位写入1,表明当前BOOT启动区可以正确加载,进入步骤2;如果标志位未被置为1,则说明当前BOOT启动区是不可用的,此时将[M/S]标志位进行切换,从另一个启动区进行启动,重复上述操作;
(2)EPLD在启动BOOT之后检测寄存器[REV_S]标志位;如果EPLD寄存器[REV_S]标志位写入1,表明当前BOOT的版本初始化成功;如果标志位未被置为1,则说明当前的BOOT初始化不正确,此时将[M/S]标志位进行切换,从另一个启动区进行启动,重复上述过程。
2.根据权利要求1所述的使用BOOT启动CPU的方法,其特征是把划分的某一BOOT启动区设定为默认启动区,CPU首先从该启动区启动,当该启动区无法启动CPU时,再从其他启动区启动CPU。
3.根据权利要求1或2所述的使用BOOT启动CPU的方法,其特征是当CPU启动成功后,对看门狗进行喂狗操作。
4.一种使用BOOT启动CPU的装置,包括CPU控制单元,BOOT启动单元和EPLD逻辑单元,EPLD一端连接CPU一端连接BOOT,其特征是BOOT启动单元采用单一的FLASH存储介质,将存储介质按照不同的地址空间划分为至少2个BOOT启动区,当某一BOOT启动区无法正常启动CPU时,利用其他的BOOT启动区重新启动CPU;
其中,
(1)EPLD在启动BOOT一定时间之后检测其寄存器[REV_F]标志位;如果EPLD寄存器[REV_F]标志位写入1,表明当前BOOT启动区可以正确加载,进入步骤2;如果标志位未被置为1,则说明当前BOOT启动区是不可用的,此时将[M/S]标志位进行切换,从另一个启动区进行启动,重复上述操作;
(2)EPLD在启动BOOT之后检测寄存器[REV_S]标志位;如果EPLD寄存器[REV_S]标志位写入1,表明当前BOOT的版本初始化成功;如果标志位未被置为1,则说明当前的BOOT初始化不正确,此时将[M/S]标志位进行切换,从另一个启动区进行启动,重复上述过程。
5.根据权利要求4所述的使用BOOT启动CPU的装置,其特征是在存储介质特定的地址空间可以存放默认启动区标识。
6.根据权利要求4或5所述的使用BOOT启动CPU的装置,其特征是还可以包括看门狗单元,其与EPLD共同构成硬件逻辑部分。
CN200810067038.5A 2008-04-30 2008-04-30 一种使用boot启动cpu的方法与装置 Expired - Fee Related CN101329632B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810067038.5A CN101329632B (zh) 2008-04-30 2008-04-30 一种使用boot启动cpu的方法与装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810067038.5A CN101329632B (zh) 2008-04-30 2008-04-30 一种使用boot启动cpu的方法与装置

Publications (2)

Publication Number Publication Date
CN101329632A CN101329632A (zh) 2008-12-24
CN101329632B true CN101329632B (zh) 2014-02-19

Family

ID=40205451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810067038.5A Expired - Fee Related CN101329632B (zh) 2008-04-30 2008-04-30 一种使用boot启动cpu的方法与装置

Country Status (1)

Country Link
CN (1) CN101329632B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102053842B (zh) * 2009-11-09 2013-07-03 中兴通讯股份有限公司 一种提高boot兼容性的方法及其装置
CN102073517A (zh) * 2009-11-23 2011-05-25 中兴通讯股份有限公司 一种嵌入式系统的升级、备份方法和装置
CN102866896B (zh) * 2011-07-05 2015-08-26 中国科学院上海微系统与信息技术研究所 基于单存储器的嵌入式设备的启动系统
CN102520979A (zh) * 2011-11-22 2012-06-27 大唐移动通信设备有限公司 一种Boot程序的备份方法和设备
CN102402447A (zh) * 2011-12-20 2012-04-04 杭州华三通信技术有限公司 设备启动方法和设备
CN102662749B (zh) * 2012-03-23 2018-02-13 天津中兴智联科技有限公司 一种双Boot切换的实现方法及装置
CN102736933A (zh) * 2012-05-16 2012-10-17 中兴通讯股份有限公司 Boot文件加载方法及装置
CN102799466B (zh) * 2012-07-11 2015-06-24 哈尔滨工业大学 一种应用于PowerPC最小系统的引导装置及引导方法
CN102902556B (zh) * 2012-09-06 2016-06-01 深圳市共进电子股份有限公司 一种嵌入式设备的多级引导加载方法
CN106227568A (zh) * 2012-11-09 2016-12-14 青岛海信移动通信技术股份有限公司 终端设备开机、升级方法和设备
CN102981872A (zh) * 2012-11-09 2013-03-20 青岛海信移动通信技术股份有限公司 终端设备开机、升级方法和终端设备
CN103116511A (zh) * 2013-01-29 2013-05-22 烽火通信科技股份有限公司 基于单个flash存储芯片的双启动方法
CN105320534B (zh) * 2014-08-01 2020-06-09 中兴通讯股份有限公司 单板的boot远程升级方法、装置及系统
CN104572181A (zh) * 2014-12-19 2015-04-29 大唐移动通信设备有限公司 启动备份引导程序的方法和装置
CN106650455B (zh) * 2015-10-30 2021-09-24 中兴通讯股份有限公司 一种系统安全启动方法及装置
US9846583B2 (en) * 2015-12-15 2017-12-19 Xilinx, Inc. Hardware power-on initialization of an SoC through a dedicated processor
CN105677414A (zh) * 2016-01-06 2016-06-15 无锡中太服务器有限公司 一种在Hostboot中实现双启动的方法
CN106980513A (zh) * 2016-01-15 2017-07-25 中兴通讯股份有限公司 一种双引导文件的切换方法及装置
CN110597671A (zh) * 2019-08-23 2019-12-20 深圳震有科技股份有限公司 一种设置独立boot区的flash芯片及系统和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1501621A (zh) * 2002-11-18 2004-06-02 华为技术有限公司 一种系统安全启动方法
CN1914598A (zh) * 2004-01-28 2007-02-14 索尼株式会社 半导体装置和用于启动该半导体装置的处理方法
CN101101559A (zh) * 2007-08-14 2008-01-09 中兴通讯股份有限公司 使用双Bootrom启动引导CPU的工程应用方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1501621A (zh) * 2002-11-18 2004-06-02 华为技术有限公司 一种系统安全启动方法
CN1914598A (zh) * 2004-01-28 2007-02-14 索尼株式会社 半导体装置和用于启动该半导体装置的处理方法
CN101101559A (zh) * 2007-08-14 2008-01-09 中兴通讯股份有限公司 使用双Bootrom启动引导CPU的工程应用方法和装置

Also Published As

Publication number Publication date
CN101329632A (zh) 2008-12-24

Similar Documents

Publication Publication Date Title
CN101329632B (zh) 一种使用boot启动cpu的方法与装置
US9015458B2 (en) Computer system and method for updating basic input/output system by switching between local mode and bypass mode through baseboard management controller
US8286156B2 (en) Methods and apparatus for performing resilient firmware upgrades to a functioning memory
US20080109647A1 (en) Memory controllers for performing resilient firmware upgrades to a functioning memory
CN100511148C (zh) 一种cpu系统的启动方法及系统
CN101373433A (zh) 更新bios的方法以及使用该方法的电脑与系统
CN101499909B (zh) 单板启动系统和方法
CN101710252B (zh) 一种存储系统的供电方法和供电装置
CN101882097A (zh) 一种主控板、嵌入式系统及嵌入式系统的备份方法
CN103365696A (zh) Bios镜像文件获取方法及装置
WO2008058101A2 (en) Memory controllers for performing resilient firmware upgrades to a functioning memory
CN108345464A (zh) 一种安卓系统的启动方法及安卓车机
CN100549959C (zh) 引导程序在线升级方法
CN110781029A (zh) 断电保护方法及系统
CN103678178A (zh) 一种存储系统的掉电处理方法及系统
JP3963470B2 (ja) 携帯端末および当該端末の制御方法
US9026838B2 (en) Computer system, host-bus-adaptor control method, and program thereof
CN102508676A (zh) 嵌入式系统启动方法及装置
CN207281744U (zh) 操作系统启动装置和系统主板
TW202213114A (zh) 主機裝置及記憶體系統
KR100605031B1 (ko) Usb 메모리 장치를 이용한 임베디드 시스템의 장애복구 및 업그레이드 방법
KR101871427B1 (ko) 데이터 보호 및 복구 기능을 갖는 usb 메모리 장치
KR100697086B1 (ko) 백업기능이 구비된 이동통신 단말기 및 그 동작방법
CN114341769A (zh) 基于功率管理集成电路的系统管理总线隔离
US11442518B2 (en) Extended system, server host and operation method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20170907

Address after: Nanyang City, Henan province 473000 Wolong District Ying Zhuang Zhen Lu pan Cun Qian Lu plate No. 26

Patentee after: Liang Ying

Address before: 518057 Nanshan District science and Technology Industrial Park, Guangdong high tech Industrial Park, ZTE building

Patentee before: ZTE Corporation

TR01 Transfer of patent right
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Liang Ying

Inventor before: Feng Wei

Inventor before: Huang Ruihua

Inventor before: Guo Junmin

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 541002 No. two, No. 5, West Road, Xiangshan District, Guilin, the Guangxi Zhuang Autonomous Region

Patentee after: Liang Ying

Address before: Nanyang City, Henan province 473000 Wolong District Ying Zhuang Zhen Lu pan Cun Qian Lu plate No. 26

Patentee before: Liang Ying

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140219

Termination date: 20180430