论文部分内容阅读
集成电路规模的飞速增长,使得集成电路功能复杂度日益提升,一方面为信息技术产业带来了生机和活力,另一方面也产生了许多问题和挑战。集成电路的功能正确性是这些问题和挑战中的首要考虑因素,必须引起我们足够的重视。传统的功能验证主要通过验证工程师手工编写测试激励来进行,验证效率较为低下。随着技术的发展,OVM、UVM等先进的验证方法被成功引入,扩充了验证技术库。但这些验证方法主要基于信号层级或事务层级来进行,并没有从更高层次的功能点角度去考虑验证问题。功能点的标准化概括、提取和层次分解仍然存在不足,而且测试激励需要人为去进行封装和组织,一定程度加大了验证平台搭建难度。为了弥补验证技术上在功能建模和激励自动生成上的缺陷,从不同角度去探究新的验证方法,课题组开展了相应的研究工作。本文的研究工作和技术进步主要包括以下几点:1、基于集成电路功能特点以及对功能规范的分析,针对集成电路功能验证需求,课题组共同创建了基于功能规范的功能模型F-M;针对该功能模型,开发出一套功能模型描述语言,并定义相应语法规则,用以描述数字系统、IP核等模块的功能行为。2、利用高级语言C/C++编写出解析编译器P-C,对上述功能模型语言进行解析,自动生成激励生成器和断言检测器,构建出SystemVerilog验证平台,自动产生测试激励。3、以FT_X_DMA从机为实例,分别以UVM验证方法与本文验证方法进行实验,从功能建模、激励生成与组合、验证效率等方面进行比较,详细分析不同验证方法之间的差异性。实验结果表明,本文验证方法与主流验证方法的差异有以下几点:第一,建立了针对功能规范的功能模型;第二,可自动生成测试激励,节省大量人力;第三,相比较传统验证方法,平台搭建难度更低。作为探究性课题,本文工作成果一定程度上丰富了验证技术库,为探索新的验证方法做出了努力和尝试,但可看到目前的工作仍有许多进步空间,如功能模型描述语言的规范完整性、验证平台结构的完备性等,需要我们不断努力去改进。