[发明专利]一种应用于SPARCV8结构计算机的容错引导方法有效
申请号: | 201110214755.8 | 申请日: | 2011-07-29 |
公开(公告)号: | CN102270162A | 公开(公告)日: | 2011-12-07 |
发明(设计)人: | 辛明瑞;赵鹏;隋霞;肖春霞;李祁 | 申请(专利权)人: | 中国航天科技集团公司第五研究院第五一三研究所 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G06F11/14 |
代理公司: | 北京理工大学专利中心 11120 | 代理人: | 杨志兵;高燕燕 |
地址: | 264003 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用于 sparcv8 结构 计算机 容错 引导 方法 | ||
技术领域
本发明涉及航天计算机的引导技术,具体涉及一种应用于SPARCV8结构计算机的容错引导方法。
背景技术
在卫星应用中,嵌入式星载计算机越来越多的采用操作系统来处理复杂的业务管理。设备启动前操作系统文件存储在相应的硬件存储器上,设备加电后直接引导操作系统启动,因此操作系统成功引导并运行是星载计算机执行星上任务的关键。然而,空间的辐射环境仍是制约星载嵌入式计算机发展的瓶颈之一,因此在卫星应用中,嵌入式设备的容错性和可靠性就特别重要。
目前的嵌入式星载计算机,运行程序一般存放在PROM中,上电后程序从PROM启动并运行,直接引导操作系统。而PROM的容量一般只有几k字节,需要多片才能满足嵌入式实时操作系统和应用程序的需要,而且带来成本的大幅提高,所有程序存放在PROM中的做法已经不能适应嵌入式星载计算机的发展。EEPROM或Flash存储器单片容量较大,可达几M字节,可满足嵌入式星载计算机使用要求,但是,由于EEPROM或Flash存储器在空间应用中受空间辐射的影响存在单粒子翻转的现象,会导致存储的数据发生变化,从而导致星载计算机的运行错误,致使设备无法正常启动。
发明内容
有鉴于此,针对空间中EEPROM或Flash存储器存在的单粒子效应,本发明提供了一种应用于SPARCV8结构计算机的容错引导方法,结合PROM的抗单粒子翻转的特性和EEPROM存储器容量大的特点,采用一种可靠的引导技术,即保证嵌入式星载计算机操作系统的快速、可靠启动,又能有效的减少PROM的使用数量,从而降低星载计算机的成本。
该方案是这样实现的:
一种应用于SPARCV8结构计算机的容错引导方法,包括:
预先在星载计算机上配备具有错误检测与纠正EDAC功能的CPU、空间足够用于操作系统运行的作为内存的SRAM或SDRAM、以及两种类型的程序存储器:抗辐射的PROM,以及EEPROM;在PROM上存储具有容错引导功能的引导程序,引导程序采用SPARCV8汇编语言编程;EEPROM是地址上连续、物理上分离的两片或两片以上的EEPROM存储介质,每一片EEPROM存储介质存储操作系统映像文件的一份备份,且每份操作系统映像文件具有一份对应的EDAC编码,在采用CPU的EDAC功能对操作系统映像文件进行纠检错时使用;
该方法具体实现步骤如下:
步骤1:星载计算机上电或热复位后,CPU先运行PROM中的引导程序;
步骤2:引导程序初始化硬件基本资源,包括:初始化CPU内部寄存器、打开内存和EEPROM存储器控制接口的EDAC、使能看门狗计数、打开CACHE、使能陷阱、初始化CAN总线、获取当前看门狗计数值;判断当前看门狗计数值是否小于预设异常门限值,如果是,则进入容错引导模式,执行步骤3;否则,进入异常模式,执行步骤4;
步骤3:引导程序读取EEPROM中存储的操作系统映像文件的第一个备份OS1,在读取过程中利用CPU自身的EDAC功能纠正1位错误,并检测是否出现2位错误;如果未出现2位错误,则直接引导OS1;如果出现2位错误则读取EEPROM中存储的操作系统映像文件的第二个备份OS2,依次类推;如果全部备份均没法正常读取,则执行步骤4;
步骤4:进入异常处理。
较佳地,设置CPU内部寄存器%g7作为中断服务程序标志;所述步骤3具体包括:
清中断服务程序标志%g7,首先对第一块操作系统映像文件OS1数据,以4字节为单位进行刷新,所谓刷新就是利用CPU自身的EDAC功能读取操作系统映像文件;读取过程中,如出现单bit错,会自动纠正,出现双bit错,会进入Trap=0x09的陷阱;
在刷新过程中,若一直没有出现Trap=0x09的陷阱类型,则直接引导OS1并设置启动标志;若出现了Trap=0x09的陷阱类型,则进入陷阱处理程序,在陷阱处理程序中设置全局的中断服务程序标志%g7为设定值,并跳出陷阱;主程序识别出中断服务程序标志%g7为设定值,则停止OS1后续的数据刷新;
然后,清中断服务程序标志%g7,用同样的方法按顺序去刷新其他的操作系统映像文件;
如果所有操作系统映像文件都出现过Trap=0x09的陷阱类型,那么说明操作系统文件已全部损坏,进入异常模式;
在Trap=0x09的陷阱处理程序中,设置程序指针PC为%l2,nPC为%l2+4,确保该引导程序能够跳出09号陷阱程序,并且继续检测备份的操作系统文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航天科技集团公司第五研究院第五一三研究所,未经中国航天科技集团公司第五研究院第五一三研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110214755.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:智能节能电源插座
- 下一篇:具有保护元件的连接器改良结构