基于System Verilog的可重用验证平台设计及验证结果分析

时间:2025-07-24  作者:Diven  阅读:0

采用System Verilog语言设计了具有层次化结构的可重用验证平台,该平台能够产生各种随机、定向、错误测试向量,并提供功能覆盖率计算。将验证平台在Synopsys公司的VCS仿真工具上运行,并应用到包交换芯片的仿真验证中。仿真结果显示,新设计的验证平台能通过修改随机信号约束条件和产生随机信号的权重值,使芯片的功能覆盖率达到100%。随着集成电路制造工艺技术水平不断进步,芯片设计规模越来越大,验证所花费的时间占据了整个产品设计周期的70%,而且随着设计复杂度的提高呈指数性增加[1]。芯片一次流片的成功率从很大程度上取决于功能验证是否充分[2]。验证已经成为制约芯片开发的瓶颈问题。

基于System Verilog的可重用验证平台设计及验证结果分析

传统的验证平台主要依赖验证人员观察波形的方法进行验证,验证效率低,不能满足当今验证规模的需求。VMM验证方法学[3]的出现极大程度上提高了验证的效率,进而出现了一批借鉴VMM验证方法学的验证平台[4-7],如参考文献[4]所设计的验证平台就采用了VMM验证技术。但是其设计的验证平台只产生了随机激励,验证时仅使用随机激励很难测试到电路的边界情况,而且验证过程收敛性差。

为了快速定位设计中的问题及边界情况,同时提高验证效率,本文拟采用System Verilog语言,根据VMM验证方法学中的分层设计思想,搭建一个可重用的验证平台,以求同时提供定向测试、受约束的随机测试和错误激励测试。

1 平台框架

验证平台可分为4层,即测试层、建立层、事务层和物理层,如图1所示。

(1)物理层:包括被测设计模块(DUT)集合和电路模型。

电路模型用来与被测代码进行比较,以实现自检验的验证。采用Verilog语言或者System Verilog语言模拟与设计代码等价的功能。

(2)事务层:包括激励产生器、监视器、和覆盖率统计器等。

激励产生器的主要功能是驱动DUT和电路模型的接口信号。本平台的激励产生器能够产生定向测试向量、错误测试向量和受约束的随机向量。

监视器的主要功能是监视DUT和电路模型输出的信号,并对两者进行比较。当DUT的输出信号和电路模型的输出信号不一致时,仿真可能被强迫结束,同时打印出当时出错的时间和出错的信号名称及内容。

覆盖率统计器的主要功能是根据激励产生器产生的测试向量、DUT输出信号以及覆盖点的要求统计出电路功能的覆盖概率。覆盖点是有效的验证机制[8],编写根据具体的测试对象而定,可以对单个信号进行功能覆盖率统计,也可以统计多个信号的交叉覆盖率。

以上介绍了事务的类型,根据不同的测试需求可以创建各种平台所需的事务,如随机事务、各种回调函数事务等。

(3)建立层:包括验证框架的建立和电路初始配置。

验证框架建立的主要功能是利用事务层的各种事务构建出整个平台的框架。包括平台环境的配置及参数的设定;激励产生器和监视器的句柄定义和对象声明;与覆盖率相关的回调函数类的句柄定义和对象声明;激励产生器和监视器与回调函数的通信建立。本平台还研发了面向通信交换设备的配置软件和专用的图形界面。

(4)测试层:包括配置文件和测试用例。

在平台搭建好之后,测试层的主要功能是提供定向测试的测试实例和与DUT相关的一些配置信息。例如对高性能路由器转发单元进行验证时,需要通过微机接口对转发单元进行配置,不同的配置参数DUT将会提供不同的功能。本文设计开发了面向定向测试的数据块/包的软件辅助工具。测试人员可以使用辅助工具来产生所需要的数据。

2 通信交换设备验证平台

2.1 交换功能介绍

本文假定所测试的交换设备具有N个输入/输出端口,这里N通常是2的整数次幂,考虑到内部复用,这N个端口可以映射到k组总线,每m=N/k个端口分时复用一组总线,k 2.2 验证平台

验证平台需要按照数据包/块格式的要求提供各种不同类型、包长、优先级、源端口和目的端口,以及包含其参数和配置的网络数据包,同时能够根据各个端口输出的数据包个数计算出该端口的速率,以此来产生链路的忙/闲状态,模拟配置规定的速率和其要求。

根据层次化结构,并结合交换设备的功能,对验证平台进行了详细的设计。

(1)物理层:DUT采用Verilog语言编写,电路模型采用System Verilog编写,编写过程不是设计的重点,所以这里不再进行叙述。

(2)事务层:根据功能描述可知,如果要从端口处进行验证,本验证平台需要N个激励产生器,用于产生来自N个输入端口的数据包/块,还需要N个监视器来观察N个输出端口的数据包/块。如果要从总线处进行验证,则需要k个激励产生器和k个监视器用于监视来自电路模型和DUT的k组总线上的输出数据。这里,每个激励产生器需要模仿m=N/k个端口及其速率,每个监视器需要记录m个端口的输出。同时还需要一个覆盖率统计器用于统计激励产生器产生的所有情况下的数据包。

①激励产生器:将激励产生器定义为一个类,该类的属性包含了虚接口的定义、待发送包的队列定义、激励发生器编号和回调函数队列定义等,此外还包含了运行方法、定向测试、随机测试、端口速率配置方法、定向包入队方法、定向包驱动方法、随机包产生方法、随机包入队方法、随即包驱动方法和丢弃概率计算方法等。

其中定向测试的测试流程如图2所示。

猜您喜欢

贴片电阻0805,指的是一种表面贴装型电阻器,其尺寸为0805。这串数字并非随意组合,而是代表着它的长和宽。 「08」代表长度为0.08英寸,「05」代表宽度为...
2025-04-14 15:03:37

贴片电阻,又称片式电阻或SMD电阻,是电子电路中常见的元件。其主要功能是限制电流,在电路中起到分压、分流等作用。要点:结构: 贴片电阻通常由陶瓷基体、电阻膜和保...
2024-11-29 10:25:39

VFD显示屏,即真空荧光显示屏,是应用于家电、汽车仪表和消费电子产品中的显示技术。根据不同的分类标准,VFD显示屏可以分为以下几类。按显示结构分类,VFD可分为...
2009-05-26 00:00:00

网卡,全称网络接口卡,是计算机与网络之间的桥梁。负责将计算机内部的数据转换为网络可以传输的信号,并反之亦然。网卡可以是集成在主板上的,也可以是独立的外置设备,通...
2009-01-11 00:00:00


复合垫片是应用于机械设备和管道系统中的密封材料,其主要作用是防止泄漏和提高连接部位的密封性。由于其由多种材料复合而成,复合垫片具备良好的耐温、耐压和耐腐蚀性能,...
2018-08-16 00:00:00

在科学实验中,选择合适的实验仪器和设备非常重要。不同类型的实验仪器和设备具有各自独特的参数,这些参数直接影响实验结果的准确性和可靠性。精准度是一个重要参数,指仪...
2020-04-12 00:00:00

修枝剪是常用的园艺工具,主要用于修整植物的枝叶。根据不同的功能和使用场景,修枝剪可以分为以下几类。传统修枝剪适合一般的修整工作,刀刃锋利,能够轻松剪断小至中等粗...
2012-12-03 00:00:00

数字锁相环路已在数字通信、无线电电子学及电力系统自动化等领域中得到了极为广泛的应用。传统的全数字锁相环路(DPLL)是由中、小规模TTL集成电路构成。这类DPL...
2020-07-23 16:23:00

VISHAY(威世)作为全球领先的电子元件制造商,高品质的精密电阻闻名业界。精密电阻作为电路设计中不可少的元件,应用于测量仪器、医疗设备、汽车电子等多个领域。本...
2023-03-15 21:19:11