首页 > 技术 > 内容

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

时间:2026-01-22  作者:Diven  阅读:0

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

传统的验证平台主要依赖验证人员观察波形的方法进行验证,验证效率低,不能满足当今验证规模的需求。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所示。

猜您喜欢


PNP输出型编码器是一种特殊的编码器,其输出类型为PNP集电极开路输出,也称作源型输出。当逻辑为1时,输出电压为电源电压。这种类型的编码器在编码器供电电压和信号...
2024-02-26 15:02:00
铝壳电阻因其优异的散热性能和稳定的电阻值,应用于各种电子设备中。作为铝壳电阻领域的重要制造商,ASJ(新加坡)凭借先进的技术和严格的品质管理,赢得了全球客户的认...
2021-12-21 13:42:42
无线充放电芯片在功能和应用上存在一些显著区别。无线充电芯片主要负责将电能通过电磁场传输到设备中,实现无线充电的功能。这类芯片通常具备高效的能量转换和发射能力,能...
2010-04-27 00:00:00
氨气(NH₃)是世界上最重要的化学品之一,也是全球农业和工业中不可替代的原材料。同时,氨气也是一种无色、有刺激性和腐蚀性的高毒性气体。因此,氨气的检测和传感对环...
2023-11-20 09:09:00
编辑:黄飞
2022-12-16 14:13:00
贴片电阻上的标识代码代表其阻值和误差。对于三位数代码,前两位数字表示有效数字,第三位数字表示10的幂次方。例如,代码「103」表示10 × 10³ = 10kΩ...
2025-04-14 15:03:18
R200代表的是一个200欧姆的贴片电阻。在电子电路中,电阻用字母R表示,后面的数字则代表阻值。 对于像R200这样三位数字的表示方法,前两位数字是有效数字,最...
2024-11-29 10:25:52
功率分析仪是用于测量和分析电力系统中功率参数的专业设备。主要作用在于提供精确的电力质量监测,帮助工程师和技术人员了解电力系统的运行状态。功率分析仪可以实时测量电...
2018-12-29 00:00:00
测量贴片电阻阻值最常用的工具是万用表。将万用表拨至电阻档位,选择合适的量程。对于小阻值贴片电阻,可以直接用表笔接触电阻两端进行测量。需要注意的是,手握表笔时不要...
2024-11-26 11:29:48
现代电力系统中,开关电源己经成为重要的一部分。其功率因数对整体电能利用效率和电网稳定性有着重要的影响。本文将深入探讨开关电源功率因数的定义、功能和优势,帮助普通...
2024-11-24 00:00:00