UVM 验证

什么是 UVM 验证

通用验证方法 (UVM) 验证是 FPGA 和 ASIC 设计项目中使用的一种标准化设计验证形式。UVM 的开发受益于 Accellera Initiative 的推动,并基于 EDA 行业知名公司在前几年开发的 ASIC 验证方法。Accellera Initiative 是在电子设计自动化 (EDA) 社区内推广标准的一个组织。

UVM 验证的主要目标是使用可重用的验证组件来提高设计验证的效率。不过,手动创建和调试 UVM 验证组件仍需要大量的工作,特别涉及新算法内容时,而且 UVM 验证的复杂性可能令设计团队望而生畏,妨碍它的采用。

由于为 ASIC 和 FPGA 设计项目开发的许多算法都从 MATLAB® 代码或 Simulink® 模型开始的,设计团队可以通过直接从 MATLAB 或 Simulink 源代码生成 UVM 验证组件来减少测试平台开发工作。借助 ASIC Testbench for HDL Verifier 附加功能,您可以从 MATLAB 代码或 Simulink 模型自动生成 SystemVerilog DPI 组件以用于 UVM 验证。这些组件可用作 UVM 验证记分板中的黄金参考检查器模型,混合信号仿真中的行为数字或模拟组件模型,或充当 UVM 验证激励的序列。

ASIC 测试平台附加功能可以直接从 Simulink 模型生成完整的 UVM 验证环境。HDL Verifier 可从测试平台的模型中生成 SystemVerilog UVM 序列、驱动、监视程序和记分板组件。此外,它还可以为在测行为设计 (DUT) 生成 SystemVerilog 文件。之后,行为 DUT 就可以用手动编码的 RTL 或 HDL Coder 生成的 RTL 来替换了。生成的 UVM 验证环境可与 Siemens® ModelSim®或 Questa®、Cadence® Xcelium™ 或 Synopsys® VCS® 结合使用。

在 UVM 验证的某些应用中,您可能更需要生成单个 UVM 组件,而不是从 MATLAB 或 Simulink 生成完整的 UVM 环境。要从 MATLAB 生成单个 UVM 组件,您可以使用预测变量、序列或记分板组件的 UVM 模板。以类似的方式,您可以从 Simulink 子系统为序列、预测变量或记分板生成 UVM 组件。

如果您使用 UVM 框架开发 UVM 验证环境,您可以使用 ASIC 测试平台作为 UVM 框架工作流的一部分生成 SystemVerilog DPI 组件。

图中显示如何使用 H D L Verifier 将 Simulink 模型的若干部分,如 U V M 序列器、U V M 记分板和行为 D U T,生成到一个 SystemVerilog U V M 环境

通过从 Simulink 模型生成 UVM 测试平台来执行 UVM 验证。

有关详细信息,请参阅 HDL Verifier™。


UVM 验证常见问题

UVM 验证是一种标准化的设计验证方法,应用于 FPGA 和 ASIC 设计项目,由 Accellera Systems Initiative 开发,旨在通过可重用验证组件提高设计验证效率。

UVM 是 Universal Verification Methodology 的缩写。

UVM 验证的主要目的是通过可重用验证组件提高设计验证效率。

手动创建和调试 UVM 验证组件通常需要投入大量工作,尤其是在验证新的算法设计时;此外,UVM 验证本身的复杂性也可能成为设计团队采用它的障碍。

设计团队可以使用 ASIC Testbench add-on for HDL Verifier,直接从 MATLAB 代码或 Simulink 模型生成 UVM 验证组件,从而减少测试平台开发工作量。该扩展会自动生成 SystemVerilog DPI 组件。

可以从 MATLAB 或 Simulink 生成 UVM 的序列、驱动、监视器和记分板等组件,也可以直接从 Simulink 模型生成完整的 UVM 验证环境。

生成的组件可用作 UVM 验证记分板中的黄金参考检查器模型,也可在混合信号仿真中作为行为级的数字或模拟组件模型,或作为 UVM 验证激励序列。

生成的 UVM 验证环境可与 Siemens Questa、Cadence Xcelium 或 Synopsys VCS 一起使用。


另请参阅: 电子