论文部分内容阅读
数字集成电路的设计错误注入技术在功能验证中具有重要的意义,可用于评估验证质量和指导激励生成。然而根据调研分析,学术界并没有通用的设计错误注入方法和公开的设计错误注入系统,这使得相关的研究团队需要各自进行方法设计和系统开发,造成时间、资金等资源的重复耗费;且所提出的方法及实现的系统支持的错误模型受限,又不支持错误模型可扩展接口。这些因素限制了已有方法和系统的广泛使用。
针对上述问题,本文提出了一种控制灵活、错误模型可扩展的设计错误注入方法;并在Linux平台下,用C++语言将所提出的方法实现为错误注入系统;进一步通过实验对系统的正确性进行验证。接着基于实现的系统进行错误注入和设计验证质量评估的实验,分析了模型化错误覆盖率的有效性。
本文提出的错误注入方法和实现的错误注入系统,主要贡献包含:
1、设计了错误模型可扩展接口技术和基于编译器的设计信息提取方法,可支持更丰富的错误模型。
a)设计了错误模型可扩展接口技术,这是本文工作的主要特色之一。通过错误模型扩展接口,使用者可以自定义错误模型,从而可以将设计中特殊的错误模型应用到错误注入系统中去,进行错误注入的工作。错误模型可扩展接口技术的设计,使本文提出的错误注入方法在一定程度上摆脱了已实现的默认错误模型的限制,丰富了可支持的错误模型。
b)设计了基于Verilog编译器的设计信息提取方法,使设计的层次信息提取更为便利。相比于文本方式进行的信息提取方法,基于编译器的信息提取方法通过对设计层次信息的掌握,可以更方便地支持结构相关的错误模型,能够支持的错误模型更为丰富。
2、设计了随机、等间距两种错误位置选择方式和预处理步骤,可支持灵活的错误位置选择。
a)设计了两种错误位置选择方式:区间内随机错误位置选择方式和等间距错误位置选择方式。随机方式可以在整个设计或者某个设计区间内随机地选择注入错误的位置;等间距方式支持区间内均匀的错误位置选择和区间内集中的错误位置选择。这两种方式使错误位置的选择较为灵活。
b)设计了预处理步骤,统计出各错误模型对应的结构在设计中出现的次数信息,并提供给使用者作参考,指导使用者进行注入错误的选择,包括错误模型、错误个数以及错误位置的选择,从而使错误位置的选择更有根据。