当前位置: 首页 > 专利查询>浙江大学专利>正文

皮卫星基于FPGA的存储模块的容错方法技术

技术编号:3864345 阅读:408 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种皮卫星基于FPGA的存储模块的容错方法,数据总线将需要写入的数据分为高位数据和低位数据两部分,分别传送到两个完全相同的汉明编码模块对高位数据和低位数据处理对应生成冗余数据;将数据和对应的冗余数据分别存入静态存储器中的三个扇区,读数据时将同一静态存储器中不同扇区的数据读出,按位做“三取二”的比较操作,得到读出数据传送至对应的汉明编码模块;两个汉明编码模块分别对数据进行比较和校正后总线输出到中央处理器。本发明专利技术方法可以使存储模块做到“纠1检2”,并保证校验码的正确存储,同时很好的适应了其重量轻、体积小、成本低、研制周期短的重要特性。

【技术实现步骤摘要】

本专利技术涉及皮卫星星载计算机
,尤其涉及皮卫星星载计算机 存储模块数据可靠性的改进。
技术介绍
空间单粒子效应对星载计算机系统的影响是不可忽视的,即使一个微小的逻辑错误都有可能使星载计算机瘫痪并造成卫星失控。 一般情况下可 以通过避错设计和容错设计提高计算机系统的可靠性。对于公斤级的皮卫 星来说,其特点是重量轻、体积小、成本低、研制周期短。而且航天级电 子器件的需求量相对较小,使抗辐射器件的成本很高,价格非常昂贵,在 实际开发过程中大量采用市场上容易取得的商业级电子器件。这些器件通 常没有经过严格的抗辐射测试,也没有采用完善的抗辐射工艺。因而对于 星载计算机可靠性设计主要是通过容错设计实现的。容错设计是利用外加 资源的冗余技术屏蔽故障的影响,使局部的故障不会扩散到全局。对星载 计算机存储模块采用静态三模冗余、纠错检错编码、数据备份等方法利用 硬件冗余和信息冗余来应对单粒子翻转现象。但现有技术中纠错检错编码(EDAC)执行过程中产生的校验码并没 有采取安全手段防止校验码发生错误,而若是校验码发生翻转等错误,即 使原始数据正确也会被认为"错误",那也将是很致命的问题。另外一个 问题,现阶段卫星上使用的纠错检错编码(EDAC)芯片需要较复杂的外 围电路,对功耗、体积等方面都会增加不少。而为了能够在皮卫星上使用, 必然需要精简结构、减少功耗,所以基于FPGA基础上实现纠错检错编码 (EDAC)的方法是当前急待解决的问题。
技术实现思路
本专利技术提供一种基于FPGA釆用静态三模冗余(TMR)、纠错检错编 码(EDAC)相结合的方法,对于皮卫星这种超微小型卫星的星载计算机 的存储模块进行了可靠性方面的容错设计。一种皮卫星基于FPGA的存储模块的容错方法,包括中央处理器向静 态存储器的写数据、读数据操作,所述的中央处理器向静态存储器进行写数据操作时-(1) 数据总线根据需要写入的数据的位数,将需要写入的数据分为 高位数据和低位数据两部分,分别传送到两个汉明编码模块;(2) 两个汉明编码模块分别对高位数据和低位数据处理对应生成汉 明纠错码所需的高位冗余数据k和低位冗余数据k,;例如需要写入的数据为32位,可将该32位数据分为高16位数据和 低16位数据,高16位数据传送到第一汉明编码模块,低16位数据传送 到第二汉明编码模块。当然数据的位数也可以是其他位数,高位数据和低位数据的位数也可 以不相同。冗余数据的生成是利用了汉明编码模块中的纠错码生成器得到的,所 述的汉明编码模块及其纠错码生成器以及冗余数据的生成均可以采用现 有技术(可参见张钰等的"皮卫星星载计算机存储模块的容错结构设计" 《宇航学报》,2008.11, P2057 2061)。本专利技术中,作为优选当需要写入的数据为32位时,将需要写入的数 据分为高16位数据和低16位数据,通过第一汉明编码模块及第二汉明编 码模块处理后,产生的高位冗余数据k和低位冗余数据k'均为6位。(3) 将高位数据和高位冗余数据k分别存入不同的静态存储器中的 三个扇区;即每个静态存储器中有三个分割相同的扇区,每个扇区都将高 位数据和高位冗余数据k各存一遍。同样,将低位数据和低位冗余数据k'分别存入不同的静态存储器中 的三个扇区;即每个静态存储器中有三个分割相同的扇区,每个扇区都将低位数据和低位冗余数据k'各存一遍。这里要说明的是,用于存储高位数据的静态存储器与用于存储低位数 据的静态存储器是各自独立的两个静态存储器,而用于存储高位冗余数据 k与用于存储低位冗余数据k'的静态存储器可以是同一个静态存储器。例如,在实践中将高位数据存入第一静态存储器,将低位数据存入第 二静态存储器,将高位冗余数据k和低位冗余数据k,均存入第三静态存 储器。每一静态存储器对其内的数据通过三个分割相同的扇区存储了三遍。所述的中央处理器向静态存储器进行读数据操作时(1) 将同一静态存储器中不同扇区的数据读出,按位做"三取二" 的比较操作,得到读出的高位数据、高位冗余数据k、低位数据和低位冗 余数据k',并将读出的高位数据、高位冗余数据k、低位数据和低位冗余 数据k'传送至对应的汉明编码模块;(2) 两个汉明编码模块分别对数据(高位数据或低位数据)及该数 据对应的冗余数据(高位冗余数据k或低位冗余数据k')进行比较并将错 误信息反馈给中央处理器,利用冗余数据(高位冗余数据k或低位冗余数 据k')校正对应的数据(高位数据或低位数据)得到校正后的数据输出到 数据,将校正后的数据通过总线输出到中央处理器。两个汉明编码模块分别对数据(高位数据或低位数据)及该数据对应 的冗余数据(高位冗余数据k或低位冗余数据k')进行比较是通过汉明编 码模块中的译码器实现,利用冗余数据(高位冗余数据k或低位冗余数据 k')校正对应的数据(高位数据或低位数据)是通过汉明编码模块中的校 正器实现,所述的汉明编码模块及其译码器纠、校正器以及数据比较、数 据校正均可以釆用现有技术(可参见张钰等的"皮卫星星载计算机存储模块的容错结构设计"《宇航学报》,2008.11, P2057 2061)。本专利技术方法可以使存储模块做到"纠l检2",并保证校验码的正确存 储,同时很好的适应了其重量轻、体积小、成本低、研制周期短的重要特 性。本专利技术方法针对空间环境中高能粒子对星载计算机存储模块造成的单粒子翻转影响,并充分考虑皮卫星对重量、体积、功耗等因素的限制,通过分析比较选择了 (22、 6)汉明纠错码作为存储模块的容错结构,可以 使存储模块做到"纠l检2",并采用三模冗余判决电路TMR保证校验码 的正确存储。其优势在于冗余度小、解码速度快、兼容性强,同时很好的 适应了其重量轻、体积小、成本低、研制周期短的重要特性,并且使星载 计算机的可靠性得到显著提升。附图说明图1为本专利技术中汉明编解码模块的结构示意图。 图2为实现本专利技术容错方法的装置示意图。图3为本专利技术三模存储及三模表决模块中用于控制写数据操作的三模 存储模块的结构示意图。图4为本专利技术三模存储及三模表决模块中用于控制读数据操作的三模 表决模块的结构示意图。具体实施例方式在皮卫星的存储模块设计时,编解码实现过程中,码字长度较小的汉 明码检错纠错速度很快,随着码字长度的增加,纠错的速度会逐渐减慢, 这可能会影响到中央处理器数据总线对内存的访问速度。但是根据汉明纠错码校验位的位数k与信息位的位数l及码字长度m相 关公式2^^ + / + 1 (1)m = / + A: (2)对于分组过小的冗余码,所需要的冗余位数过长从而导致冗余度过 大,比如对于8位长度的数据,至少需要4位校验码,即(12、 4)汉明码 的冗余度为150%,而(22、 6)汉明码冗余度为137.5%, (40、 8)汉明 码冗余度为125%。综上所述,汉明纠错码码字长度的选择需要考虑几个方面的因素,满7足处理器对存储器访问速度的要求与满足存储器编码效率的要求之间是矛盾的。码字长度较短时,纠错速度快但是需要较多的冗余存储空间;码字较长时,可以降低冗余存储空间的使用,但是检错纠错速度会降低。由于皮卫星所需处理的事务相对于传统卫星较少,对于皮卫星中央处理器片外32位的数据总线,其内存的访问速度没有非常严格的要求;从冗余度、编解码速度及汉明编解码本文档来自技高网...

【技术保护点】
一种皮卫星基于FPGA的存储模块的容错方法,包括中央处理器向静态存储器的写数据、读数据操作,其特征在于: 所述的中央处理器向静态存储器进行写数据操作时: (1)数据总线根据需要写入的数据的位数,将需要写入的数据分为高位数据和低位数据两部 分,分别传送到两个汉明编码模块; (2)两个汉明编码模块分别对高位数据和低位数据处理对应生成汉明纠错码所需的高位冗余数据k和低位冗余数据k’; (3)将高位数据和高位冗余数据k分别存入不同的静态存储器中的三个扇区,将低位数据和低位冗余数 据k’分别存入不同的静态存储器中的三个扇区; 所述的中央处理器向静态存储器进行读数据操作时: (1)将同一静态存储器中不同扇区的数据读出,按位做“三取二”的比较操作,得到读出的高位数据、高位冗余数据k、低位数据和低位冗余数据k’,并将读 出的高位数据、高位冗余数据k、低位数据和低位冗余数据k’传送至对应的汉明编码模块; (2)两个汉明编码模块分别对数据及该数据对应的冗余数据进行比较并将错误信息反馈给中央处理器,利用冗余数据校正对应的数据得到校正后的数据输出到数据,将校正后 的数据通过总线输出到中央处理器。...

【技术特征摘要】

【专利技术属性】
技术研发人员:张钰郑阳明金仲和
申请(专利权)人:浙江大学
类型:发明
国别省市:86[中国|杭州]

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

1