基于动态可重构的软硬件协同容错构架
2012-10-08张佳芳高志刚戴国骏
张佳芳,高志刚,戴国骏
(杭州电子科技大学计算机应用技术研究所,浙江杭州310018)
0 引言
现场可编程门阵列(Field Programmable Gate Arrays,FPGA)作为嵌入式开发平台,有着低功耗,高灵活性和可重复烧写等特性,使其在无线通信,航空航天,消费电子,工业控制等领域有着广泛的应用。然而,基于SRAM技术的FPGA对由辐射引起的单粒子翻转(Single Event Upsets,SEU)非常敏感,可导致其内存单元发生错误。根据Xilinx的设备可靠性报告[1],由于SEU的影响,Virtex4芯片的配置内存错误发生率为262 FIT/Mb,块RAM为474 FIT/Mb[2],Virtex2 pro芯片的配置内存错误发生率为437 FIT/Mb,块RAM为770 FIT/Mb。由于SEU引起的非永久性错误只需对产生错误的逻辑块进行重新配置即可消除,因此本文采用动态可重构技术,重新配置发生错误的硬件模块,修复硬件模块中的非永久性错误。在FPGA上运行系统的可靠性一直都受到很大关注,已经有很多方法被提出来加强FPGA中逻辑单元的健壮性,避免SEU引起的错误[3,4]。然而对于某些资源受限又有容错纠错需求的FPGA嵌入式系统,若使用硬件三模冗余进行容错将消耗大量的FPGA硬件资源,从而导致硬件资源的不足。本文提出一种基于动态可重构技术的软硬件协同容错纠错系统,采用两个硬件模块并行运行实时监测错误的发生,一个软件模块协助两个硬件模块,判决错误硬件模块实现系统容错,并采用动态可重构技术中的部分可重构技术,对由SEU引起的局部错误区域进行修复。整个系统用实时操作系统控制,提高对硬件错误的响应。
1 系统构架
从嵌入式系统模块化的角度出发,嵌入式系统可根据功能模块的不同,分成多个子系统模块,由各个子系统模块合作完成系统的设计目标。……
