论文部分内容阅读
伴随着集成电路工艺和技术的飞速发展,设计规模和功能复杂度进一步增大对原本就非常复杂的验证工作提出了更大的挑战[1]。为了加快各个芯片的产品验证效率,寻找出一种更加高效的全面的验证方法来减小验证时间变得越来越重要。。本论文主要研究的是集成电路设计过程当中很重要的一个环节——功能验证。尽管在集成电路发展过程中传统的验证方法也在飞速发展,但是面对验证过程中出现的各种诸如完备性、可重用性等瓶颈,传统的验证方法学早已显得力不从心,基于UVM(Universal Verification Methodology)的新一代的功能验证方法学将越来越发挥其强大的功能。本文基于UVM的验证方法学对高性能互连总线的架构进行了分析和验证。以SoC(System-on-Chip)系统中一个高性能总线互连架构模块作为我们的待测设计,通过分析当前功能验证的几种技术及验证过程中出现的挑战,选取基于SystemVerilog(SV)语言来搭建UVM验证平台。SV的面向对象编程、线程间通信等特性越来越受到集成电路设计和验证工程师的重视,它拥有验证过程中所需要的全部的特性。作为一种工业标准语言,SV全面综合了RTL(Register Transfer Level)设计、测试平台、断言和覆盖率,为系统级的设计及验证提供了强大的支持作用,可以搭建出带有可重用机制以及寄存器解决方案并集成面向对象编程、动态线程和线程间通信等特性的UVM验证平台,提高验证的效率。随后本文分析了高性能互连总线架构的几种常用的架构的设计,对于架构中用到的AXI(Advanced Extensible Interface)总线协议做了详细的介绍,包括对AXI总线协议基础事务的介绍,对于AXI协议的五个通道的信号描述及握手时序和读写地址时序图的介绍。在分析高性能总线架构的几种设计方案时,提出了验证需求、验证策略以及对验证的整体架构。针对待测的功能点,建立测试用例,进一步完善验证计划。随后采用UVM的层次化的环境,通过功能验证模块中基类的扩展和实例化创建各个验证组件,通过UVM中的TLM(Transaction Level Modeling)机制将组件连接起来,并进行平台的打开与关闭,通过参数化的配置触发激励进行结果的收集和比对。最后通过VCS仿真软件进行仿真分析及用VERDI软件观察波形图,不断测试直到其代码覆盖率和功能覆盖率以及断言覆盖率均为100%,最后对验证平台的可重用性进行了分析。实践证明,本文搭建的高性能总线架构的验证平台,在验证待测设计时,能及时的进行数据结果的对比和断言的检测,及时报告错误的信息,极大的提高了验证的效率,同时搭建的验证平台可重用性很强,在其它总线类型的互连架构中都能很好的运用本验证平台。