白皮书

UVM sans UVM:一种自动执行 UVM 验证平台编写的方法

一种自动执行 UVM 验证平台编写的方法

本文提供了一种简单的解决方案:一个框架或代码生成的模板系统,作为没有任何 UVM 背景的验证团队采用 SystemVerilog UVM 的第一步。这些框架、代码生成器和模板可让先前验证工作的 UVM 经验更好地发挥作用。此外,要用生成的代码取得成功,不需要一开始就了解所有细节。随着时间的推移和团队 UVM 验证经验的增长,框架、生成器和模板也会随之发展。

典型的 UVM 验证平台

典型的 UVM 验证平台包含被测设备 (DUT)、每个接口一个“代理” 、将代理收集到一起的 “环境” ,以及顶层 “测试” 。 连接 DUT 的接口为 SystemVerilog 接口,一个对应的虚拟接口用于将 DUT 连接到基于类的验证平台。别担心 – 模板将会处理大部分的细节和术语。

模板

已开发两套模板,每套的焦点略有不同。本文仅讨论其中一个模板。作者可以提供另一个模板。两个模板没有正误之分。每个模板都会反映模板编写者的优先级(就地编辑与编辑副文件)、验证工作的焦点(覆盖所有地址范围与覆盖地址范围边缘)或常规验证理念(读写所有存储器)。

模板系统本身是一个独立的可运行系统 – 这意味着可以对模板进行编译和仿真,并执行某些操作。模板没有连接 DUT,也不会发生任何有用的验证,但作为一个可编译和可仿真的系统,可以轻松地创建一个开始时拥有更少漏洞的模板。其中不涉及任何 SystemVerilog 伪代码,而是完完全全的 SystemVerilog UVM。

本文所述的模板由大约 20 个文件组成,共计 500 行代码。原则上模板应该非常简单。右侧为生成器脚本。

分享

相关资源