论文部分内容阅读
功能验证是现代IC设计中最主要的挑战之一,它已成为芯片设计中的瓶颈。本文主要研究的内容是基于断言的功能验证方法ABV(Assertion-BasedVerification),ABV将形式验证中的断言技术和基于动态仿真的验证方法相结合,利用断言的监控(Monitor)特性,在仿真过程中快速定位Bug的位置,用断言验证的长处来弥补随机矢量验证的不足,增强了验证过程的可观测性和可控制性。基于断言的验证方法是在验证领域被讨论的最多的方法之一。本文通过比较几种典型断言验证形式的性能和成本,决定采用开放性验证库OVL(Open Verification Library)来构建断言监视模块,论文详细介绍了OVL的实现和使用方法。在OVL的基础上,创建了自己的辅助断言验证库AVL,用于检查一些特殊的属性,AVL是OVL的重要补充。本文在Mobile项目中应用此断言验证方法做了对通用总线控制器模块的验证工作,具体介绍了如何将断言方法应用到验证工作中。通用总线控制器是基于嵌入式处理器的SoC产品中的一小部分,在验证方法上采用断言插入和动态仿真相结合的方法,测试激励生成机制采用带约束条件的随机矢量自动生成方法。首先,搭建了当前流行的基于事务级的分层次的验证环境,并对验证平台的Sequence、Generator、各个总线功能模型BFM以及检查器Checker等各部分进行了具体设计和说明。其次,针对APB接口、NOR FLASH和NAND FLASH接口协议的不同特点,分别设计了基于OVL和AVL的断言监视模块AIP,插入到验证环境中。对接口行为进行监视。这些针对接口协议的断言监视模块也可以用于其他项目中相关内容的检查,具有可重用性。结果表明,采用本论文提出的功能验证方案可以高效率地查找设计中的错误,增加设计成功的信心,为整个设计的完成提供了有效的保证。