一种双Boot切换的实现方法及装置制造方法及图纸

技术编号:7758924 阅读:164 留言:0更新日期:2012-09-14 00:38
本发明专利技术公开了一种双Boot切换的实现方法及装置,方法包括:在射频识别RFID设备上电复位后,EPLD通过读取可擦除可编程存储器中的启动标志字节,对使用主Boot启动还是使用备Boot启动进行选择;EPLD将CPU的地址线映射到NOR?Flash上用于主Boot启动的第一地址空间或用于备Boot启动的第二地址空间;CPU从对应于上述选择结果的第一地址空间或第二地址空间执行相应的Boot启动。本发明专利技术通过EPLD的控制和对CPU总线控制器的操作,实现了双Boot切换的功能。

【技术实现步骤摘要】

本专利技术涉及嵌入式射频识别RFID领域,特别涉及一种双引导程序Boot切换的实现方法及其相关装置。
技术介绍
在嵌入式设备中,需要通过Boot引导操作系统,典型的应用是通用引导程序U-Boot引导操作系统Linux内核,同时对于RFID设备,如路侧单元RSU,需要挂在龙门架等不便于直接维护的地方,所以对系统的固件Firmware,尤其是Boot稳定性的要求就显得尤为重要。为了保证RFID设备的正常启动和实现Boot升级功能,需要加入双Boot切換功能,即在设备的处理器上电复位后实现从两个不同的启动地址执行Boot代码,使之可以灵活选择启动双Boot中的任何一个引导操作系统,同时,还可以避免由于Boot文件损坏导致系统无法启动。由于不同架构的处理器在上电复位后的启动机制各不相同,对于RFID产品,大多使用的是PowerPC架构处理器,如何实现双Boot切換的功能,成为亟待解决的技术问题。
技术实现思路
本专利技术的目的在于提供ー种双Boot切换的实现方法及装置,用于解决在PowerPC架构处理器实现双Boot切換问题。根据本专利技术的ー个方面,提供的ー种双Boot切换的实现方法包括步骤A)在RFID设备上电复位后,可擦除可编程逻辑器件EPLD通过读取可擦除可编程存储器中的启动标志字节,对使用主Boot启动还是使用备Boot启动进行选择;步骤B) EPLD将中央处理器CPU的地址线映射到CPU总线控制器存储器NORFlash上用于主Boot启动的第一地址空间或用于备Boot启动的第二地址空间;步骤C)CPU从对应于上述选择结果的第一地址空间或第二地址空间执行相应的Boot启动。优选地,所述步骤C)包括CPU从对应于上述选择结果的第一地址空间或第二地址空间执行相应的Boot代码;在执行相应的Boot代码后,初始化CPU总线控制器,将CPU的片选信号CSO和CSx的空间同时映射到NOR Flash上,同时选中NOR Flash。优选地,所述步骤C)还包括CPU在NOR Flash执行一段Boot代码后,将NOR Flash的Boot代码搬移至内存,并在内存执行。优选地,所述步骤C)还包括CPU在内存执行Boot代码到初始化NOR Flash驱动期间,CPU总线控制器将所述CSO置为无效。优选地,所述第一地址空间和所述第二地址空间预先设置在所述NOR Flash的低地址空间。优选地,还包括在RFID设备的系统启动后,CPU通过使用所述CSx对NOR Flash的全部空间进行访问操作。根据本专利技术的另一方面,提供的ー种双Boot切換的实现装置,包括可擦除可编程存储器和NOR Flash,还包括EPLD,用于在RFID设备上电复位后,通过读取可擦除可编程存储器中的启动标志字节,对使用主Boot启动还是使用备Boot启动进行选择,将CPU的地址线映射到NOR Flash上用于主Boot启动的第一地址空间或用于备Boot启动的第二地址空间;CPU,用于从对应于上述选择结果的第一地址空间或第二地址空间执行相应的Boot启动。优选地,所述CPU还用于从第一地址空间或第二地址空间执行相应的Boot代码后,初始化CPU总线控制器,将其CSO和CSx的空间同时映射到NOR Flash上,同时选中NORP Iash0优选地,所述CPU还用于在NOR Flash执行一段Boot代码后,将NOR Flash的Boot代码搬移至内存,并在内存执行。优选地,所述CPU还用于在内存执行Boot代码到初始化NOR Flash驱动期间,通过CPU总线控制器将所述CSO置为无效。与现有技术相比较,本专利技术的有益效果在于本专利技术几乎不用修改软件底层代码就可以实现双Boot切換,既可以灵活选择启动双Boot中的任何一个引导操作系统,又可以避免由于Boot文件损坏导致的操作系统无法启动的情况。附图说明图I是本专利技术实施例提供的双Boot切换的实现方法原理图;图2是本专利技术实施例提供的双Boot切换的实现装置示意图;图3是本专利技术实施例提供的双Boot切换具体实现流程图;图4是本专利技术实施例提供的采用双Boot切換方法实现RFID产品固件升级示意图。具体实施例方式以下结合附图对本专利技术的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。图I是本专利技术实施例提供的双Boot切换的实现方法原理图,如图I所示,步骤包括步骤SlOI、在RFID设备上电复位后,EPLD通过读取可擦除可编程存储器中的启动标志字节,对使用主Boot启动还是使用备Boot启动进行选择。本专利技术通过所述启动标志字节,实现手动选择启动主Boot或备Boot,所述启动标志字节存储在一个可擦除可编程存储器,例如EEPR0M。步骤S102、在进行上述选择后,EPLD将CPU的地址线映射到NOR Flash上用于主Boot启动的第一地址空间或用于备Boot启动的第二地址空间。由于CPU的上电启动地址已经在硬件复位配置字中定义,所述硬件复位配置字是CPU上电时读取的信息,用来初始化CPU的锁相环PLL和启动的相关信息,对于PowerPC架构处理器,一般被编译到Boot文件中。在CPU上 电复位期间,要实现从两个不同的启动地址执行Boot启动,需要EPLD对CPU的地址线进行映射。具体地说,当EPLD判断手动选择的是启动主Boot时,EPLD将CPU的地址线映射到NOR Flash上的第一地址空间,所述第一地址空间中存储用于启动主Boot的Boot代码。当EPLD判断手动选择的是启动备Boot吋,EPLD将CPU的地址线映射到NOR Flash上的第二地址空间,所述第二地址空间中存储用于启动备Boot的Boot代码。步骤S103、在进行上述地址映射后,CPU从对应于上述选择结果的第一地址空间或第二地址空间执行相应的Boot启动。CPU从第一地址空间或第二地址空间执行相应的Boot启动的代码后,初始化CPU总线控制器,将CPU的片选信号CSO和CSx的空间同时映射到NOR Flash上,同时选中NORrlash。当CSO和CSX同时选中NOR Flash时,由于EPLD对CPU地址线进行了映射,而且高优先级的CXO (CPU上电默认的片选信号)始终有效,这样就会导致CPU在对NOR Flash部分空间进行访问时出现地址映射错误的现象,所以在CPU小系统启动后需要对CSO和CSX进行相应的处理。也就是说,需要在CPU不再从NORFlash执行Boot代码到初始化NOR Flash驱动期间,通过操作CPU总线控制器将所述CSO置为无效,以便在RFID设备的系统启动后,CPU能够通过所述CSx对NOR Flash的全部空间进行访问操作,解决了在CSO和CSx同时选中NOR Flash时,片选地址空间重叠的问题。图2是本专利技术实施例提供的双Boot切换的实现装置示意图,如图2所示,包括可擦除可编程存储器,用于存储启动标志字节,可以是EPR0M,也可以是EEPR0M,以下实施例中均以EEPROM为例进行说明;NOR Flash,用于在第一地址空间存储用于主Boot启动的Boot代码,在第二地址空间存储用于备Boot启动的Boot代码;EPLD,用于在RFID设备上电复位后,通过读取E本文档来自技高网...
一种双Boot切换的实现方法及装置

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:丁岳汪旭光刘建志
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

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

1