首页> 中文学位 >一种软硬件结合的控制流错误检测和恢复技术研究
【6h】

一种软硬件结合的控制流错误检测和恢复技术研究

代理获取

目录

声明

致谢

摘要

1 绪论

1.1 课题研究背景

1.2 国内外研究现状

1.2.1 基于工艺的防护技术

1.2.2 基于硬件的检错技术

1.2.3 基于软件的检错技术

1.3 本文研究内容

1.4 论文组织结构

1.5 本章小结

2 传统软件容错技术概述

2.1 控制流图说明

2.2 软错误对系统的影响及模型构建

2.2.1 软错误对系统的影响

2.2.2 控制流错误模型介绍

2.3 软件容错技术

2.3.1 软件错误检测技术介绍

2.3.2 软件错误恢复技术介绍

2.4 本章小结

3 硬件结合的容错方案设计

3.1 控制流错误检测方案设计

3.1.1 CPU体系结构相关扩展

3.1.2 控制流错误检测流程

3.1.3 基本块独立链划分技术

3.1.4 非签名/签名区跳转的错误覆盖

3.1.5 编译器静态计算签名流程

3.2 颗粒度模式错误检测方案

3.2.1 基本块间的签名关联性改进

3.2.2 颗粒度模式检错方案

3.3 控制流错误恢复方案设计

3.3.1 现场保护策略

3.3.2 错误恢复策略

3.4 本章小结

4 工具链实现

4.1 GNU工具链简介

4.2 GCC编译器部分实现

4.3 GAS汇编器部分实现

4.4 LD链接器部分实现

4.5 本章小结

5 实验结果及分析

5.1 检错方案实验结果及分析

5.1.1 硬件及代码开销实验

5.1.2 检错率实验

5.2 错误恢复方案实验结果与分析

5.2.1 硬件及代码开销实验

5.2.2 错误恢复率实验

5.3 本章小结

6 总结与展望

参考文献

攻读硕士学位期间主要研究成果

展开▼

摘要

随着半导体制造工艺的不断发展和进步,集成电路的特征尺寸也不断减小,这使得芯片的集成度和性能都得到了大幅度的提升,但由此带来的一项重要影响是芯片对电磁干扰和粒子辐射等环境越来越敏感,计算机系统的可靠性问题也因为硬件的瞬时故障而日趋严重,尤其是在比较恶劣的工业和太空辐射环境中工作的各种嵌入式计算机系统。硬件瞬时故障会对程序的正确运行产生影响,造成的程序运行时错误被称为软错误,而软错误中大部分是控制流错误,即指令码或数据的改变导致程序的运行轨迹和原来的逻辑产生了偏差,最终使得系统崩溃或运行结果出错。因此如何有效、及时地对控制流错误进行检测和恢复成为了嵌入式安全领域一个重要的研究方向。
  当前已经有许多基于硬件或软件的容错技术,但基于硬件的技术往往带来设计复杂度过高、制造成本大幅提升等问题,而基于软件的技术一般会带来代码空间膨胀、系统性能下降、错误覆盖率偏低等问题。因此,本文提出了一种软硬件结合的控制流错误检测和恢复技术:软件方面,通过改造编译工具链,使其在编译程序时对程序静态分析进行签名;硬件方面,在不改变其他模块的前提下,通过对CPU模块进行简单的扩展使其支持动态的签名校验和错误恢复。除了提出具体的软硬件容错方案,本文也针对方案中的难点详细介绍了软件方面的编译工具链的设计实现。
  最后,本文在国产嵌入式CPU CSKY-CPU平台上进行相应的实验,对硬件仿真数据、编译后的代码密度、运行时性能开销以及错误覆盖率等实验数据进行了评估和分析。实验数据证明,本文提出的方案具有软硬件开销小、错误覆盖率高的优势。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号