论文摘要
当前,微处理器正越来越多地被应用于各种恶劣环境中,但是高能粒子产生的单粒子效应会对微处理器的正常工作产生影响,尤其对应用在太空环境中的微处理器而言,影响更严重,成为其可靠性降低的首要因素,而本文所研究的控制流检测技术正是防止和克服由于单粒子效应而造成程序错误运行的有效手段。目前控制流检测有纯软件和软硬件结合两种方式,纯软件控制流检测方式处理灵活,不受硬件的限制适合在不同硬件平台下应用,但系统开销大。而软硬件结合控制流检测方法具有系统开销小、软件部分负担少等特点,有很广阔的应用前景。国防科大研发的高可靠R80515芯片具有多重硬件加固功能,并支持软硬件结合的控制流检测。本文基于高可靠R80515展开软硬件结合控制流检测算法的研究。本论文首先介绍控制流检测理论和常用的控制流检测算法,着重阐述和分析了汇编级控制流检测方法CFCSS(control flow checking bv softwaresignatures),详细描述了CFCSS的控制流检测原理、签名值分派算法、控制流检测过程等技术细节,并指出CFCSS控制流检测算法存在的混淆和多共享扇入等问题,还对CFCSS算法不能检测的控制流错误进行归类。在此基础上提出了基于多调整签名的控制流检测算法——CFCMAS(Control FlowChecking based on Multiple Adjusting Signature)。多调整签名思想的引入,使得共享多扇入等控制流检测难题迎刃而解。文中对基本块的划分方法、签名值的生成方法、签名值的分派算法等控制流检测的关键问题进行了研究和解决,使得控制流检测的存储代价和时间消耗更小。在理论研究的基础上,通过在通用嵌入式编译器SDCC中插入一个控制流检测层的途径实现了CFCMAS算法。最后选取常用的测试程序,分别用不同的控制流检测算法进行测试,重点分析对比了CFCMAS算法与其它常用控制流检测算法的各项性能,结果表明CFCMAS算法在检测性能和资源消耗上都优于其他算法。
论文目录
摘要ABSTRACT第1章 绪论1.1 课题研究背景1.2 单粒子翻转效应介绍1.3 国内外控制流检测的研究现状1.4 主要研究工作及内容安排第2章 高可靠R80515平台简介2.1 R80515介绍2.2 R80515的整体加固方案2.3 R80515对控制流检测的支持2.4 R80515对保存与恢复的支持2.5 本章小结第3章 控制流检测理论3.1 控制流检测的基本原理3.1.1 控制流错误3.1.2 控制流检测3.2 控制流检测技术的分类3.3 控制流检测的常用算法3.3.1 软硬结合的控制流检测方法3.3.2 纯软件控制流检测方法3.4 本章小结第4章 CFCMAS控制流检测算法4.1 纯软件控制流检测算法CFCSS介绍4.1.1 运行时的签名4.1.2 运行时调整签名4.1.3 CFCSS算法4.2 CFCSS算法中存在的问题4.2.1 混淆现象4.2.2 共享多扇入问题优化后可解的情况4.2.3 共享多扇入问题优化后无解的情况4.3 CFCMAS算法4.3.1 CFCMAS算法总体思想4.3.2 CFCMAS中基于汇编码的基本块划分4.3.3 CFCMAS分派签名值4.3.4 CFCMAS中运行时签名和多调整签名4.3.5 CFCMAS算法与高可靠R80515硬件平台的配合4.3.6 CFCMAS控制流检测流程及算法描述4.4 本章小结第5章 基于SDCC编译器的CFCMAS算法实现5.1 CFCMAS控制流检测单元在SDCC中的位置5.2 CFCMAS控制流检测单元设计和实现5.2.1 数据结构设计5.2.2 控制流分析的主要流程5.3 本章小结第6章 CFCMAS算法的性能及实验数据分析6.1 CFCMAS算法的实验及性能分析6.1.1 空间开销和时间开销的对比分析6.1.2 检错能力和恢复能力的对比分析6.2 CFCMAS算法的改进方案6.3 本章小结结论参考文献攻读硕士学位期间发表的论文及取得的科研成果致谢
相关论文文献
标签:控制流检测论文; 安全编译论文; 单粒子翻转论文; 错误恢复论文;