通用验证方法学(Universal Verification Methodology, UVM):简介及内容导航

本文深入浅出地介绍了通用验证方法学(UVM),从IC验证基础知识到UVM核心机制,包括factory、field automation、config_db、消息和phase。此外,还涵盖了UVM验证平台构建、通信、sequence、寄存器模型和设计模式,是学习UVM验证的宝贵资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


在这里插入图片描述

1. 介绍

本系列blog主要介绍最常用的验证框架:通用验证方法学(Universal Verification Methodology, UVM)

参考资料主要为《UVM实战(卷I)》和《芯片验证漫游指南》。

正是看到了纯粹由编程语言Systemverilog手工搭建的验证平台有诸多不便,因此才产生了UVM,并且UVM也是如今IC验证者常用的验证框架。

初学者可按照如下的顺序进行学习。

1.1. 数字集成电路(Integrated Circuit, IC)验证

首先对IC验证基本概念和验证方法进行介绍。

UVM:验证通识

2. 一个简易UVM验证平台例子

搭建的一个简易的UVM验证框架,不仅继承于SystermVerilog搭建的验证平台,还在此基础上增添了新的功能。

可以尝试理解一下各个模块的功能,看不懂的童鞋可以直接转入UVM基础~

UVM:一个简易验证平台例子

3. UVM 基础

这里给出一个UVM类库地图,所有UVM的功能机制都可从以下这些UVM类中找到相应的属性和方法

在这里插入图片描述

下面将对上述UVM常用的类进行介绍。

3.1. UVM factory 机制

工厂机制,来自于软件设计中的工厂设计模式。其意义在于工厂机制有独特的对象创建函数,且基于此能够重载创建函数,使父类句柄指向子类对象。

UVM:factory 机制

3.2. UVM field automation 机制

注册后,每一个object都可使用copy(),compare()等等方法,不满意的用户也可自己手动定义do_copy(), do_compare()等等

UVM:field automation 机制

3.3. UVM config_db 机制

该机制可实现在组件实例化前就设定好配置信息。

UVM:config_db 机制

3.4. UVM 消息机制

各种消息的打印方法和使用范式。

UVM:消息机制

3.5. UVM phase 机制

解释了在tb文件中,一句run_test("my_test");开始仿真后到底经历了什么。以及如何对仿真进行控制,涉及到9大phase。

UVM:phase 机制

4. UVM 验证平台框架

详细介绍testbench中各模块及相互关系

UVM:验证平台组成

UVM:模块级 验证平台框架

UVM:芯片级 验证平台框架

5. UVM 通信

包括事务级建模(Transaction Level Modeling, TLM)通信标准,和同步通信元件。

UVM:事务级建模(Transaction Level Modeling, TLM)1.0 通信标准

UVM:事务级建模(Transaction Level Modeling, TLM)2.0 通信标准

UVM:同步通信元件

6. UVM sequence

事务,即数据包的产生和发送机制

UVM:sequence机制 之 捕获transaction

UVM:sequence机制 之 driver反馈

UVM:sequence 层次化

7. UVM 寄存器模型

UVM中引入了软件侧寄存器模型的概念,用于以可读性更高的方式访问、模拟、验证dut中的硬件寄存器

UVM:寄存器模型 构建

UVM:寄存器模型 集成

UVM:寄存器模型 访问

UVM:寄存器模型 应用

8. UVM 设计模式 总结

UVM框架中涉及一些软件设计模式,总结如下,正在更新。。。。

UVM:设计模式

9. UVM 验证IP

介绍了验证IP的概念

UVM:验证IP(Verification Intellectual Property, VIP)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Starry丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值