Accellera最近发布的UVM可能会改变验证的未来,因为验证方法似乎在这个UVM中得到巩固。本专栏将提供关于这种新的验证方法的简单教程。本教程不是关注AXI,OCP或其他系统总线,而是基于jelly-bean生成器(DUT)的假设示例。TB将以受限制的随机方式生成许多jelly-bean风味,并且该系统将评估可口风味。这里不需要任何系统总线的知识。

下面描述下教程中使用的验证组件。

上图显示了验证组件的关系。 jelly_bean_taster是被测试设计(DUT)模块。

jelly_bean_sequencer将创建jelly-bean食谱并将它们发送给jelly_bean_driver。从配方中提供的信息中,driver创建 jelly-bean。driver将 jelly-bean通过 jelly-bean接口(jelly_bean_if)传递给jelly_bean_taster,这会检查 jelly-bean的味道。

同时,随着 jelly-bean的创建,jelly_bean_monitor将捕获最近生产的 jelly-bean的味道和颜色。该信息将传递给 jelly-bean功能覆盖收集器,称为jelly_bean_fc_subscriber。subscriber根据其颜色和风味记录和总计 jelly-bean。

jelly_bean_scoreboard是一个组件,用于检查jelly_bean_taster是否正确响应。记分牌从jelly_bean_monitor获取信息。

下图显示了类图中的验证组件。浅蓝色方框表示UVM基本类库中的类,而较暗的方框表示本教程中创建的类。

虽然这篇文章在这里结束,但下一篇将展示 jelly-bean食谱的结构。

你可以从github上下载源码 

EDA Playground上查看或者运行代码 

也可以加我的二维码参与讨论学习更多关于UVM的内容

UVM糖果爱好者教程 - 1.概述相关推荐

  1. uvm 糖果爱好者 subscriber调用parent方法解读

    //---------------------------------------------------------------------------// Class: jelly_bean_fc ...

  2. 超详细Redis入门教程——Redis概述

    前言 本文小新为大家带来 超详细Redis入门教程--Redis概述 相关知识,具体内容包括Redis简介,Redis的用途,Redis的特性,Redis的IO模型(包括:单线程模型,混合线程模型,多 ...

  3. Python 自动化教程(1) 概述,第一篇 Excel自动化首篇

    人生苦短, 我用Python!  Python语法简炼.易上手,且有丰富的库可用,实现一个应用很简洁. Python常用于自动化.自动化的基本含义,是把人的动作写成程序,让计算机代替人工作.主要分为几 ...

  4. ns-3 教程 —— 概念概述(第一个 ns-3 程序)

    转自http://blog.csdn.net/And_w/article/details/68945016?locationNum=14&fps=1 概念概述 在我们需要真正开始看或者写 ns ...

  5. jQuery 入门教程(1): 概述

    2019独角兽企业重金招聘Python工程师标准>>> jQuery是一套跨浏览器的JavaScript函式库,简化HTML与JavaScript之间的操作,下面为摘自Wikeped ...

  6. BurpSuite超详细安装教程-功能概述-配置-使用教程---(附下载链接)

    一.介绍 BurpSuite是渗透测试.漏洞挖掘以及Web应用程序测试的最佳工具之一,是一款用于攻击web 应用程序的集成攻击测试平台,可以进行抓包.重放.爆破,包含许多工具,能处理对应的HTTP消息 ...

  7. 我的世界 - ComputerCraft: Tweaked [CC:T] 模组入门教程 (1) - 概述

    CC:T 概述 物品总览 电脑 海龟 外围设备 输出设备 网络设备 其他 物品总览 电脑 电脑分为三种: 电脑 (左) 高级电脑 (中) 命令电脑 (右) 1. 命令电脑 管理员专属, 可以执行命令, ...

  8. 零基础SQL教程: 关系数据库概述 02

    关系数据库概述 为什么需要数据库? 因为应用程序需要保存用户的数据,比如Word需要把用户文档保存起来,以便下次继续编辑或者拷贝到另一台电脑. 要保存用户的数据,一个最简单的方法是把用户数据写入文件. ...

  9. 【C++】Visual Studio教程(一)-概述

    00. 目录 文章目录 00. 目录 01. 简介 02. 版本 03. 高效性方面的常用功能 04. 使用重构和 IntelliSense 05. 调试代码 06. 自定义 Visual Studi ...

最新文章

  1. Python变量类型(l整型,长整形,浮点型,复数,列表,元组,字典)学习
  2. (转)flask的context机制
  3. java如何jasper_Jasper's Java Jacal
  4. 程序员如何保持身心健康
  5. Linux SSH Publickey登录
  6. ad中电容用什么封装_二极管在电路中到底做什么用的
  7. 计算机程序的思维逻辑 (54) - 剖析Collections - 设计模式
  8. mariaDB数据库存放路径修改配置问题
  9. 系统学习 TypeScript(二)——开发流程和语法规则
  10. Python:批量修改图片的后缀名(模板)
  11. vb如何制作实用计算机,vb语言程序简单设计实例(5款vb语言设计程序分享)
  12. 神器 Wineskin 基础教程
  13. 【剑桥摄影协会】伽马校正(Gamma)
  14. yshon对讲机如何调频率_对讲机频率怎么调?四步教你给对讲机调频
  15. AutoJsPro,猜歌红包群(看广告游戏脚本源码)
  16. 什么是SaaS系统,SaaS系统有哪些优势
  17. 单片机的AVCC、AVSS、DVCC、DVSS引脚有何区别?
  18. 我的软件销售生涯(一)
  19. 使用 Python 地图绘制工具 -- folium 全攻略
  20. FB和FF MIC的用途

热门文章

  1. C语言中两个反正切函数atan与atan2的区别
  2. 2017北航计算机专业录取分数线,北京排名多少能上北航?附北京航空航天大学近三年录取分数线...
  3. 和叶帆老师学.Net Micro Framework,做好学习笔记
  4. matlab常见分布的分布函数的命令,Matlab统计工具箱中各类概率分布函数使用方法介绍...
  5. AAX影响力实验室探究加密产业对各行业的影响
  6. Java YearMonth日期类应用
  7. 我们发现您的应用在用户同意隐私政策前申请获取用户个人信息(IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据)
  8. 转反调试技巧总结-原理和实现
  9. visual studio 编译wpd项目代码报错解决
  10. 给爱学习的琪姐的题解