一种实现BOOTROM升级的方法及装置制造方法及图纸

技术编号:14416583 阅读:88 留言:0更新日期:2017-01-12 09:35
本发明专利技术公开了一种实现BOOTROM升级的方法及装置,包括:当启动运行的无盘启动只读存储器(BOOTROM)在第一分区时,选择第二分区进行BOOTROM升级;第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使所述第二分区根据CPU启动地址的映射启动升级完成的BOOTROM;第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。本发明专利技术方法通过两个分区进行系统升级,避免了FLASH存储空间的浪费;另一方面,在进行BOOTROM升级时,对启动运行的BOOTROM所在分区进行写保护,避免了升级失败后,无法重新选择启动运行升级前的BOOTROM,提高了系统的可靠性。

【技术实现步骤摘要】

本专利技术涉及系统应用升级技术,尤指一种实现BOOTROM升级的方法及装置
技术介绍
电子通信的系统应用由于应用场景的改变、功能的扩展完善和BUG的修正等原因,需要不断的进行升级;在系统应用升级时,也会对系统引导程序无盘启动只读存储器(BOOTROM)的升级。BOOTROM升级的可靠与否对系统应用来说十分关键,若升级失败,可能会直接导致系统无法启动。BOOTROM一般都存储在闪存(FLASH)存储器中,目前,BOOTROM的升级方法及存在的缺陷分别有:1、直接覆盖FLASH中旧版本的BOOTROM,该方法存在的问题是若升级失败会直接导致系统无法启动;2、将FLASH分成两个分区,一个区保留出厂时的BOOTROM,每次升级只升级另一个分区,该方法存在的问题是若升级失败或系统遭到破坏,用户只能把BOOTROM回退到出厂时的BOOTROM,即无法回退到升级前的BOOTROM。
技术实现思路
为了解决上述技术问题,本专利技术提供一种实现BOOTROM升级的方法及装置,能够在合理利用FLASH存储空间前提下进行BOOTROM升级,BOOTROM升级失败时,可以重新启动升级前的BOOTROM。为了达到本专利技术目的,本专利技术提供了一种实现BOOTROM升级的方法,包括:当启动运行的无盘启动只读存储器BOOTROM在第一分区时,选择第二分区进行BOOTROM升级;第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使所述第二分区根据CPU启动地址的映射启动升级完成的BOOTROM;所述第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。进一步地,该方法之前还包括:通过可编程逻辑器件CPLD为第一分区和第二分区预先设定相应的启动标识并赋值相应的取值;以根据启动标识的取值将CPU启动地址映射到启动运行BOOTROM的所述第一分区或修改为映射至升级完成的BOOTROM的所述第二分区。进一步地,在选择所述第二分区进行BOOTROM升级时,该方法还包括:对当前启动运行的BOOTROM所在的所述第一分区进行写保护。进一步地,启动所述升级完成的BOOTROM失败时,该方法还包括:重新将所述CPU启动地址映射至所述第一分区,以选择启动运行所述第一分区的BOOTROM。进一步地,第一分区和第二分区为FLASH存储器中存储空间大小相同的分区。另一方面,本申请还提供一种实现BOOTROM升级的装置,包括:选择单元,映射处理单元;其中,选择单元,用于当启动运行的BOOTROM在第一分区时,选择第二分区进行BOOTROM升级;映射处理单元,用于第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使所述第二分区根据CPU启动地址的映射启动升级完成的BOOTROM;所述第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。进一步地,该装置还包括预设单元,用于通过可编程逻辑器件CPLD为第一分区和第二分区预先设定相应的启动标识并赋值相应的取值;以根据启动标识的取值将CPU启动地址映射到启动运行BOOTROM的所述第一分区或修改为映射至升级完成的BOOTROM的所述第二分区。进一步地,该装置还包括写保护单元,用于在选择所述第二分区进行BOOTROM升级时,对当前启动运行的BOOTROM所在的所述第一分区进行写保护;BOOTROM升级完成后,解除写保护。进一步地,映射处理单元还用于,启动所述升级完成的BOOTROM失败时,重新将所述CPU启动地址映射至所述第一分区,以选择启动运行所述第一分区的BOOTROM。进一步地,第一分区和第二分区为FLASH存储器中存储空间大小相同的分区。与现有技术相比,本申请技术方案包括:当启动运行的无盘启动只读存储器BOOTROM在第一分区时,选择第二分区进行BOOTROM升级;第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使所述第二分区根据CPU启动地址的映射启动升级完成的BOOTROM;第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。本专利技术方法通过两个分区进行系统升级,避免了FLASH存储空间的浪费;另一方面,在进行BOOTROM升级时,对启动运行的BOOTROM所在分区进行写保护,避免了升级失败后,无法重新选择启动运行升级前的BOOTROM,提高了系统的可靠性。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为本专利技术实现BOOTROM升级的方法的流程图;图2为本专利技术实现BOOTROM升级的装置的结构程图;图3为本专利技术第一实施例的方法流程图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。图1为本专利技术实现BOOTROM升级的方法的流程图,如图1所示,包括:步骤100、当启动运行的无盘启动只读存储器(BOOTROM)在第一分区时,选择第二分区进行BOOTROM升级;这里,第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。本专利技术方法之前还包括:通过可编程逻辑器件(CPLD)为第一分区和第二分区预先设定相应的启动标识并赋值相应的取值;以根据启动标识的取值将CPU启动地址映射到启动运行BOOTROM的第一分区或修改为映射至升级完成的BOOTROM的第二分区。本专利技术方法中,第一分区和第二分区为FLASH存储器中存储空间大小相同的分区。步骤101、第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使第二分区根据CPU启动地址的映射启动升级完成的BOOTROM。在选择第二分区进行BOOTROM升级时,本专利技术方法还包括:对当前启动运行的BOOTROM所在的第一分区进行写保护。启动升级完成的BOOTROM失败时,本专利技术方法还包括:重新将CPU启动地址映射至第一分区,以选择启动运行第一分区的BOOTROM。需要说明的是,如果第二分区启动成功,则启动运行的分区由BOOTROM升级成功的分区替换,即完成BOOTROM升级且启动成功后的分区将变为第一分区,原先启动BOOTROM的分区成为用于BOOTROM升级的第二分区。本专利技术方法通过两个分区进行系统升级,避免了FLASH存储空间的浪费;另一方面,在进行BOOTROM升级时,对启动运行的BOOTROM所在分区进行写保护,避免了升级失败后,无法重新选择启动运行升级前的BOOTROM,提高了系统的可靠性。图2为本专利技术实现BOOTROM升级的装置的结构程图,如图2所示,包括:选择单元,映射处理单元;其中,选择单元,用于当启动运行的BOOTROM在第一分区时,选择第二分区进行BOOTROM升级;映射处理单元,用于第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使第二分区根据CPU启动地址的映射启动升级完成的B本文档来自技高网...
一种实现BOOTROM升级的方法及装置

【技术保护点】
一种实现BOOTROM升级的方法,其特征在于,包括:当启动运行的无盘启动只读存储器BOOTROM在第一分区时,选择第二分区进行BOOTROM升级;第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使所述第二分区根据CPU启动地址的映射启动升级完成的BOOTROM;所述第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。

【技术特征摘要】
1.一种实现BOOTROM升级的方法,其特征在于,包括:当启动运行的无盘启动只读存储器BOOTROM在第一分区时,选择第二分区进行BOOTROM升级;第二分区完成BOOTROM升级后,将CPU启动地址由原先的映射至第一分区修改为映射至第二分区,以使所述第二分区根据CPU启动地址的映射启动升级完成的BOOTROM;所述第二分区为除当前启动运行的BOOTROM所在的第一分区以外的另一分区。2.根据权利要求1所述的方法,其特征在于,该方法之前还包括:通过可编程逻辑器件CPLD为第一分区和第二分区预先设定相应的启动标识并赋值相应的取值;以根据启动标识的取值将CPU启动地址映射到启动运行BOOTROM的所述第一分区或修改为映射至升级完成的BOOTROM的所述第二分区。3.根据权利要求1所述的方法,其特征在于,在选择所述第二分区进行BOOTROM升级时,该方法还包括:对当前启动运行的BOOTROM所在的所述第一分区进行写保护。4.根据权利要求1所述的方法,其特征在于,启动所述升级完成的BOOTROM失败时,该方法还包括:重新将所述CPU启动地址映射至所述第一分区,以选择启动运行所述第一分区的BOOTROM。5.根据权利要求1所述的方法,其特征在于,所述第一分区和第二分区为FLASH存储器中存储空间大小相同的分区。6.一种实现BOOTROM升级的装置,其特征在于,包括:...

【专利技术属性】
技术研发人员:梁冬冬
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1