一种星载综合电子cpu翻转加固系统及方法
【技术领域】
[0001]本发明涉及卫星综合电子抗单粒子设计领域,尤其涉及一种星载综合电子系统及方法。
【背景技术】
[0002]在一些电磁、辐射环境比较恶劣的情况下,航天电子器件会发生单粒子效应,单粒子效应有SEU (单粒子翻转)、SET (单粒子瞬态)、SEL (单粒子闩锁)、SED (单粒子扰动)等多种表现形式,其中SEU为较为常见的一种单粒子效应,SEU主要发生在存储器件和逻辑电路中,SEU能使电路逻辑状态发生的翻转,导致电路的逻辑错误,导致系统逻辑状态错误甚至严重时会导致系统崩溃这种灾难性事故。近年来在航天技术为实现单粒子防护多采用多模冗余加多数选举技术、冷热备份技术、检错纠错技术(EDAC)等。其中EDAC的实现主要有两种=CPU芯片自带EDAC功能和FPGA芯片编程实现EDAC功能。
[0003]上述的EDAC两种实现方法中,第一种方法取决于CPU芯片功能,通常集成于CPU芯片中,要求外部芯片必须满足该CPU的配置要求,具有使用限制;第二种方法具有可编程的特点,能根据客户需求进行编程实现,但由于FPGA也是单粒子敏感元器件,若FPGA发生单粒子事件,那么其所实现的EDAC功能也会受很大影响。
【发明内容】
[0004]为了解决现有技术中问题,本发明提供了一种星载综合电子CPU翻转加固系统,系统包括ARM芯片、ASIC芯片、FLASH存储器和SRAM存储器,其中ASIC芯片包含4个8位并行EDAC数据生成模块、4个8位并行EDAC纠检码模块、一个看门狗模块,一个错误存储模块,FLASH中存有系统引导程序及系统应用程序,系统引导程序将应用程序从FLASH中通过ARM芯片引导入ASIC芯片;在应用程序引导入ASIC芯片的时候采用的是地址线24位、数据线32位的方式,读写控制线ARM将应用程序数据写入ASIC芯片,在ASIC芯片内部,每个32位的应用程序数据分成4个8位的独立数据进行并行EDAC编码,32位的应用程序数据及生成的4个5位校验码分别存入数据SRAM和校验码SRAM。
[0005]一种利用上述所述系统的星载综合电子CPU翻转加固方法,包括如下步骤:
[0006]步骤一,系统引导程序将应用程序从FLASH中通过ARM引导入ASIC芯片,进入步骤二 ;
[0007]步骤二,在应用程序引导入ASIC芯片的时候采用的是地址线24位、数据线32位的方式,通过读写控制线ARM将应用程序数据写入ASIC芯片,在ASIC芯片内部将每个32位的应用程序数据分成4个8位的独立数据进行并行EDAC编码,对一个32位数据进行EDAC编码时能生成4个5位的校验码,进入步骤三;
[0008]步骤三,将32位的应用程序数据及生成的4个5位校验码分别存入数据SRAM和校验码SRAM,进入步骤四;
[0009]步骤四,当ARM芯片从SRAM里调用应用程序的时候,应用程序数据和EDAC校验码分别从数据SRAM和校验码SRAM里读出,并进行纠检错;在ASIC芯片进行EDAC纠检错的操作的过程中如果发现数据有错,ASIC判断是I位错还是2位及更多位错,如果是I位错,将产生单错中断信号给ARM,并将发生错误的地址及纠正后的数据存储在具有16个存储空间的FIFO中,如果是2位及更多位错,则发出给ARM的复位信号,系统重新启动引导程序,进入步骤二 ;
[0010]步骤五,当ARM芯片读取数据无错误位时会正常调用数据,当ARM芯片接收到ASIC芯片的单错中断信号时会读取ASIC芯片中FIFO所存储的错误地址及纠正后数据,再将正确的数据值回写入对应地址的数据SRAM中去;
[0011]步骤六,ASIC芯片包含看门狗程序,定期给ARM芯片喂狗,一旦ARM芯片发现ASIC芯片一定时间没进行喂狗则向ASIC复位管脚发送复位信号,并重新启动引导程序,进入步骤二。
[0012]作为本发明的进一步改进,步骤六的一定时间为5秒至7秒。
[0013]作为本发明的进一步改进,步骤六的一定时间为6秒。
[0014]本发明的有益效果是:本发明利用抗辐照ASIC技术、改进的EDAC技术将ARM芯片和FLASH、SRAM有机融合在一起,形成了一个高可靠性的星载综合电子系统,该系统能有效防护空间单粒子效应,大大降低在恶劣辐射环境下ARM芯片运行时发生单粒子事件的概率。
【附图说明】
[0015]图1是本发明的系统结构示意图。
【具体实施方式】
[0016]下面结合附图对本发明做进一步说明。
[0017]本发明提供一种星载综合电子CPU逻辑翻转加固的方法,该方法通过多种措施的有机融合,实现对星载综合电子CPU在运行过程中对单粒子事件的检错、纠错,大大提高星载综合电子CPU在恶劣辐射环境下的抗单粒子效应能力。
[0018]一种星载综合电子CPU翻转加固系统,其特征在于:系统包括ARM芯片、ASIC芯片、FLASH存储器和SRAM存储器,其中ASIC芯片包含4个8位并行EDAC数据生成模块、4个8位并行EDAC纠检码模块、一个看门狗模块,一个错误存储模块,FLASH中存有系统引导程序及系统应用程序,系统引导程序将应用程序从FLASH中通过ARM芯片引导入ASIC芯片;在应用程序引导入ASIC芯片的时候采用的是地址线24位、数据线32位的方式,读写控制线ARM将应用程序数据写入ASIC芯片,在ASIC芯片内部,每个32位的应用程序数据分成4个8位的独立数据进行并行EDAC编码,32位的应用程序数据及生成的4个5位校验码分别存入数据SRAM和校验码SRAM。
[0019]本发明的上述目的主要通过如下技术方案予以实现:
[0020]一种星载综合电子CPU翻转加固方法,通过星载综合电子CPU翻转加固系统实现,所述星载综合电子CPU翻转加固系统包括ARM芯片、ASIC芯片、FLASH存储器和SRAM存储器,其中ASIC芯片包含4个8位并行EDAC数据生成模块、4个8位并行EDAC纠检码模块、一个看门狗模块,一个错误存储模块,具体包括如下步骤:
[0021]步骤一,系统上电,在FLASH中存有系统引导程序及系统应用程序,系统引导程序将程序从FLASH中通过ARM弓I导入ASIC芯片,进入步骤二 ;
[0022]步骤二,在应用程序引导入ASIC芯片的时候采用的是地址线24位、数据线32位的方式,通过读写控制线ARM将应用程序数据写入ASIC芯片,在ASIC芯片内部将每个32位的应用程序数据分成4个8位的独立数据进行并行EDAC编码,即对一个32位数据进行EDAC编码时能生成4个5位的校验码,进入步骤三;
[0023]步骤三,将32位的应用程序数据及生成的4个5位校验码分别存入数据SRAM和校验码SRAM,进入步骤四;
[0024]步骤四,当ARM芯片从SRAM里调用应用程序的时候,应用程序数据和EDAC校验码分别从数据SRAM和校验码SRAM里读出,并进行纠检错。每个8位数据的EDAC校验能实现纠一检二功能,由于我们在对32位数据进行EDAC校验是采取4个并行8位的方式,因此我们实际上能实现最多纠4检8的功能,这大大提高了 EDAC的纠检错能力。在ASIC芯片进行EDAC纠检错的操作的过程中如果发现数据有错,ASIC判断是I位错还是2位及更多位错,如果是I位错,将产生单错中断给ARM,并将发生错误的地址及纠正后的数据存储在具有16个存储空间的FIFO中,如果是2位及更多位错,则发出给ARM的复位信号,系统重新启动引导程序,进入步骤二;
[0025]步骤五,当ARM芯片读取数据无错误位时会正常调用数据,当ARM芯片接收到ASIC芯片的单错中断信号时会读取ASIC芯片中FIFO所存储的错误地址及纠正后数据,再将正确的数据值回写入对应地址的数据SRAM中去;
[0026]步骤六,ASIC芯片包含看门狗程序,定期给ARM芯片喂狗,一旦ARM芯片发现ASIC芯片长时间没进行喂狗则向ASIC复位管脚发送复位信号,并重新启动引导程序,进入步骤
--O
[0027]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【主权项】
1.一种星载综合电子CPU翻转加固系统,其特征在于:系统包括ARM芯片、ASIC芯片、FLASH存储器和SRAM存储器,其中ASIC芯片包含4个8位并行EDAC数据生成模块、4个8位并行EDAC纠检码模块、一个看门狗模块,一个错误存储模块,FLASH中存有系统引导程序及系统应用程序,系统引导程序将应用程序从FLASH中通过ARM芯片引导入ASIC芯片;在应用程序引导入ASIC芯片的时候采用的是地址线24位、数据线32位的方式,读写控制线ARM将应用程序数据写入ASIC芯片,在ASIC芯片内部,每个32位的应用程序数据分成4个8位的独立数据进行并行EDAC编码,32位的应用程序数据及生成的4个5位校验码分别存入数据SRAM和校验码SRAM。
2.一种利用权利要求1所述系统的星载综合电子CPU翻转加固方法,其特征在于,包括如下步骤: 步骤一,系统弓I导程序将应用程序从FLASH中通过ARM引导入ASIC芯片,进入步骤二 ; 步骤二,在应用程序引导入ASIC芯片的时候采用的是地址线24位、数据线32位的方式,通过读写控制线ARM将应用程序数据写入ASIC芯片,在ASIC芯片内部将每个32位的应用程序数据分成4个8位的独立数据进行并行EDAC编码,对一个32位数据进行EDAC编码时能生成4个5位的校验码,进入步骤三; 步骤三,将32位的应用程序数据及生成的4个5位校验码分别存入数据SRAM和校验码SRAM,进入步骤四; 步骤四,当ARM芯片从SRAM里调用应用程序的时候,应用程序数据和EDAC校验码分别从数据SRAM和校验码SRAM里读出,并进行纠检错;在ASIC芯片进行EDAC纠检错的操作的过程中如果发现数据有错,ASIC判断是I位错还是2位及更多位错,如果是I位错,将产生单错中断信号给ARM,并将发生错误的地址及纠正后的数据存储在具有16个存储空间的FIFO中,如果是2位及更多位错,则发出给ARM的复位信号,系统重新启动引导程序,进入步骤二 ; 步骤五,当ARM芯片读取数据无错误位时会正常调用数据,当ARM芯片接收到ASIC芯片的单错中断信号时会读取ASIC芯片中FIFO所存储的错误地址及纠正后数据,再将正确的数据值回写入对应地址的数据SRAM中去; 步骤六,ASIC芯片包含看门狗程序,定期给ARM芯片喂狗,一旦ARM芯片发现ASIC芯片一定时间没进行喂狗则向ASIC复位管脚发送复位信号,并重新启动引导程序,进入步骤--O
3.根据权利要求2所述方法,其特征在于,包括如下步骤:步骤六的一定时间为5秒至7秒。
4.根据权利要求3所述方法,其特征在于,包括如下步骤:步骤六的一定时间为6秒。
【专利摘要】本发明提供了一种星载综合电子CPU翻转加固系统及方法,本发明通过多种措施的有机融合,实现对星载综合电子CPU在运行过程中对单粒子事件的检错、纠错,大大提高星载综合电子CPU在恶劣辐射环境下的抗单粒子效应能力。本发明利用抗辐照ASIC技术、改进的EDAC技术将ARM芯片和FLASH、SRAM有机融合在一起,形成了一个高可靠性的星载综合电子系统,该系统能有效防护空间单粒子效应,大大降低在恶劣辐射环境下ARM芯片运行时发生单粒子事件的概率。
【IPC分类】G05B19-042
【公开号】CN104597807
【申请号】CN201410756996
【发明人】柯广贤, 黄维达, 蒲卫华
【申请人】深圳航天东方红海特卫星有限公司
【公开日】2015年5月6日
【申请日】2014年12月10日