基于程序控制流完整性检查的DSP软错误检测
DSP Soft Error Detection Based on Program Control Flow Integrity Checking

作者: 周国昌 , 高 翔 , 赖晓玲 :中国空间技术研究院西安分院,陕西 西安; 王向涛 , 郭阳明 :西北工业大学计算机学院,陕西 西安; 于登云 :中国航天科技集团公司科技委,北京;

关键词: DSP软错误控制流错误完整性检查DSP Soft Error Control-Flow Error Integrality Checking

摘要:
空间环境中DSP等器件频繁发生的单粒子软错误,严重影响了系统的安全可靠运行。针对DSP程序存储区的软错误,本文提出了基于程序控制流完整性检查的软错误检测方法。首先对DSP程序在汇编语言上将程序划分为若干个基本块并将每个基本块的结构信息存储在一个分块表中;然后在每个基本块的末尾设置检测点,通过检查程序运行时信息与分块表中记录的信息的一致性来判断程序是否发生控制流错误。该方法和基于签名的检测方法相比,在故障检测效率和系统开销大致相当的情况下,具有近乎100%的控制流错误检测覆盖率以及良好的跨平台移植性。

Abstract: In the aerospace, the single particle soft errors are more and more frequently reported in DSP and the other memory devices, which seriously impact the system running safely and reliably. Aiming at the soft error occurring in DSP program storage areas, a soft error detection method based on program control flow integrity checking is presented. Firstly, the DSP program in assembly lan-guage is divided into some basic blocks whose structure information is stored in a partition table. And then setting up check points at the end of each basic block, the program control flow error will be fund by examining the application runtime information and blocking the consistency of the information recorded in the partition table. Compared with signature-based method, the proposed method can reach almost 100% of error detection coverage and has better cross platform portability under almost the same detection efficiency and detection overhead.

文章引用: 周国昌 , 王向涛 , 高 翔 , 赖晓玲 , 郭阳明 , 于登云 (2015) 基于程序控制流完整性检查的DSP软错误检测。 计算机科学与应用, 5, 133-140. doi: 10.12677/CSA.2015.54017

参考文献

[1] Jafari-Nodoushan, M., Miremadi, S.G. and Ejlali, A. (2008) Control-flow checking using branch instructions. IEEE/ IFIP International Conference on Embedded and Ubiquitous Computing, Shanghai, 17-20 December 2008, 66-72.

[2] 刑克飞 (2007) 星载信号处理平台单粒子效应检测与加固技术研究. 博士论文, 国防科技大学, 长沙.

[3] Sugihara, M. (2011) A dynamic continuous signature monitoring technique for reliable microprocessors. IEICE Trans. on Electronics, 94, 477-486.

[4] Tan, L.F., Tan, Y. and Xun, J.J. (2013) CFEDE: Control-flow error detection and recovery using encoded signatures monitoring. 2013 IEEE International Symposium on Defect and Fault Tolerance in VLSI and Nanotechnology Systems (DFTS), New York, 2-4 October 2013, 25-32.

[5] 明月伟, 宁洪, 邓胜兰 (2014) 面向星载操作系统的控制流错误检测方法. 计算机应用, 34, 1418-1422.

[6] Alkhalifa, Z., Nair, V.S.S., Krishnamurthy, N., et al. (1999) Design and evaluation of system-level checks for on-line control-flow error detection. IEEE Transactions on Parallel and Distributed Systems, 10, 627-641.

[7] Oh, N., Shirvani, P.P. and McCluskey, E.J. (2002) Control-flow checking by software signatures. IEEE Transactions on Reliability, 51, 111-122.

[8] Reis, G.A., Chang, J., Vachharajani, N., et al. (2005) Software implemented fault tolerance. The Proceedings of the Third International Symposium on Code Generation and Optimization (CGO), San Jose, 20-23 March 2005, 243-254.

[9] Borin, E., Wang, C., Wu, Y.F., et al. (2006) Software-based transparent and comprehensive control-flow error detection. The Proceedings of the International Symposium on Code Generation and Optimization (CGO), New York, 26-29 March 2006, 333-345.

[10] Benso, A., Di Carlo, S., Di Natale, G. and Prinetto, P. (2002) Static analysis of SEU effects on software applications. 2013 IEEE International Test Conference (ITC), Baltimore, 7-10 October 2002, 500-508.

[11] Goloubeva, O., Rebaudengo, M., Reorda, M.S. and Violante, M. (2003) Soft-error detection using control flow assertions. The Proceedings of the 18th IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, Boston, 3-5 November 2003, 581-588.

[12] 黄振远 (2006) 一种星载计算机控制流件检错技术的研究与实现. 硕士论文, 哈尔滨工业大学工学, 哈尔滨.

分享
Top