博客
关于我
数字IC验证之“典型的UVM平台结构”(3)连载中...
阅读量:688 次
发布时间:2019-03-17

本文共 781 字,大约阅读时间需要 2 分钟。

大家好,我是李明,一哥。之前的内容我们介绍了UVM的基本概念,包括它的特点以及UVM为用户提供的资源。现在我们要深入了解UVM验证平台的典型结构。

一般的印象中,UVM验证平台是一个分层结构。图中的每个大块都代表了平台的一部分,这些部分我们称为平台组件。接下来,我们从最底层开始分析。

底层部分是 |_|Agent,包含_driver》、《monitor》和《sequencer》。其中,driver部分负责与测试对象(DUT)进行通信,monitor则负责数据采集和监控。

往上一层是 |_|env(环境),包含多个 Agent、参考模型(Reference Model)以及积分板(Scoreboard)。这一层是平台的核心部分,用于配置和管理多个验证模块。

继续往上是 ||testcase(测试用例),它包含了_RESOURCES]和(env)。这是平台的上层,用于定义具体的测试场景和参数。

最顶层是 |_|top(顶层),包含测试用例以及待测设计(DUT)。这一层是整个验证流程的起点,用于集成测试用例和设计。

在实际应用中,UVM平台的组件可以通过封装( encapsulation》)进行复用。这种特性在处理多模块验证时尤为重要。例如,在芯片级或系统级验证中,往往会有多个模块需要验证。此时,测试平台的结构会发生变化。

新增的模块会被集成到现有的平台中,但保持原有的结构。这意味着,每增加一个模块,平台会增加一个相应的Agent,但其在整体结构上仍与单模块验证保持一致。这体现了UVM平台的高可重用性设计。

具体来说,新的模块会通过_passagate》模式加入到平台中。从图中可以看出,每增加一个模块,平台会新增一个Agent,但其与原有模块的通信通过_passagate》机制实现,本质上并未改变平台整体架构。

本文介绍到这里!未完(待续)…

转载地址:http://ovfez.baihongyu.com/

你可能感兴趣的文章
响应的HTTP协议格式+常见的响应码
查看>>
将windows里的内容直接复制粘贴到ubuntu,提高效率
查看>>
[PHP] error_reporting(0)可以屏蔽Fatal error错误
查看>>
thinkphp 的一些重要知识点
查看>>
Java学习第二章——Java基本语句
查看>>
遇到问题之-yum update无法连接镜像问题解决
查看>>
pycharm如何设置(错误、警告类的标准提醒)
查看>>
Python3运行的时候错误:ModuleNotFoundError: No module named 'PIL'
查看>>
PHP是世界上最好的语言?Phython第一个不服
查看>>
Bugku CTF-web6
查看>>
python入门到秃顶(10):异常
查看>>
百度背景换肤案例
查看>>
输出对象的值——踩坑
查看>>
在苹果Mac上如何更改AirDrop名称?
查看>>
541【毕设课设】基于单片机电阻电感电容RLC测量仪系统
查看>>
基于8086交通灯系统仿真设计(微机原理设计资料)
查看>>
找中位数
查看>>
如何将萌推商品主图、属性图、详情图批量保存到电脑的方法
查看>>
springboot redis key乱码
查看>>
Win10禁用自带的笔记本键盘
查看>>