0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

我的第三个UVM代码—把testcase与driver分开

冬至子 来源:ExASIC 作者:陈锋 2023-06-15 10:54 次阅读

testcase里驱动interface,当代码越来越多,需要考虑把环境拆分成多个小的环境,便于修改和维护。

如下图,定义一个driver,并例化在testcase里。把interface连接到driver里的virtual interface,在driver里toggle interface,实现协议功能。

图片

第一步,在build_phase里连接virtual interface。 分两次,tb到testcase,再从testcase里取出interface转存到driver 。如下图。注意,get和set的路径是由几个参数共同组成的。

例如,null、uvm_test_top、u_intf组成了uvm_test_top.u_intf。又如,this(uvm_test_top)、my_driver、u_intf组成了uvm_test_top.my_driver.u_intf。

图片

在编译时可以加入+UVM_CONFIG_DB_TRACE来打印config_db的set和get的详细信息

图片

第二步,在driver的main_phase里驱动virtual interface。这一步与

把代码从testcase里移到driver里而已。

图片

第三步,编译仿真。仿真命令(以irun为例)、波形、环境层次关系(verdi)如下。

图片

图片

图片

总结:在本示例中没有env、agent、sequencer、sequence等组件,属于一个简化的验证环境,主要是由于分步演示的需要。侧面也说明UVM是一个灵活的验证架构,可以根据自己的需要进行裁剪。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真器
    +关注

    关注

    14

    文章

    1016

    浏览量

    83717
  • UVM
    UVM
    +关注

    关注

    0

    文章

    182

    浏览量

    19167
  • sequence
    +关注

    关注

    0

    文章

    23

    浏览量

    2840
收藏 人收藏

    评论

    相关推荐

    PNA N3383A固定宏第三个端口在哪里?

    )特色宏(版本2.52),第三个端口为空白。假设宏2.52有一些错误修复,为什么第三个端口被禁用?有解决方案吗 以上来自于谷歌翻译 以下为原文I am trying to measure
    发表于 11-15 16:35

    为什么第三个实验的时候照着例程来都有未定义符号错误?

    在做第三个实验时出现下面的问题: 即使照着例程一步步的来也是这样,检查了几遍了都是这样,不知道是什么原因~~
    发表于 07-19 04:35

    请问LWIP中第三个参数是什么意思?

    ( NETIF_FLAG_BROADCAST)是允许网卡广播,第二参数(NETIF_FLAG_ETHARP)是允许使用ARP,那第三个参数(NETIF_FLAG_LINK_UP)是什么意思???
    发表于 07-19 04:35

    UVM代码如何testcasedriver分开

    UVM代码如何testcasedriver分开
    发表于 03-11 07:58

    的第一UVM代码——Hello world

    run_test调用了uvm_test派生出来的testcase(hello_world)。 为什么run_test能够通过字符串\"hello_world\"找到testcase?与宏定义
    发表于 11-03 10:18

    谷歌官方正式发布Android O第三个开发者预览版:Android 8.0

    今天,谷歌为参与Android Beta的用户分发了全新的Android O系统,也就是第三个开发者预览版。
    发表于 06-09 21:38 1292次阅读

    来了!苹果发布iOS 12.1.3系统第三个开发者测试版

    1月8日消息 苹果今天推出了即将发布的iOS 12.1.3更新的第三个开发者预览版和公测版,距上一次预览版发布大约周。
    的头像 发表于 01-12 09:50 5078次阅读

    苹果推送iOS12.2的第三个测试版_修复iphone充电问题

    在iOS 12的测试版更新上,苹果还在加速,而今天他们送出的是iOS 12.2的第三个测试版,距离上次的测试版,时间已经过去两周。
    的头像 发表于 02-22 10:50 4678次阅读

    更新神速!苹果发布iOS 12.4第三个系统更新

    今天,苹果推送了iOS 12.4的第三个测试版。
    的头像 发表于 05-30 15:54 4777次阅读

    苹果发布iOS13第三个测试版更新 以修复Bug为主

    今天,苹果发布了iOS 13第三个测试版更新,之前已经在测试版的用户,都可以进行OTA更新。
    的头像 发表于 07-03 10:17 2570次阅读

    苹果推出iOS13.3的第三个测试版更新 继续测试系统稳定性

    今天,苹果推出iOS 13.3的第三个测试版更新,其要做的依然是测试系统稳定性。
    的头像 发表于 11-21 09:11 4633次阅读

    第三个!苹果中国数据中心通电了

    据了解,苹果中国(贵安)数据中心是苹果公司在美国、欧洲之后设立的第三个数据中心。
    的头像 发表于 12-12 14:27 2781次阅读

    北京第三个自动驾驶封闭测试场挂牌

    近日,北京第三个自动驾驶封闭测试场正式揭牌。北京已有国家智能汽车与智慧交通(京冀)示范区海淀基地、亦庄基地、顺义基地三个自动驾驶封闭测试场。
    的头像 发表于 11-16 11:10 1929次阅读

    苹果推送第三个iOS/iPadOS 14.5开发者测试版

    时隔两周之后,苹果于今天推送了 iOS/iPadOS 14.5 的第三个开发者测试版。除了继续完善查找 App 即将上线的查找第三方物品功能,还出现了更多关于 Apple Card 即将加入家庭共享功能的证据。
    的头像 发表于 03-03 11:50 2285次阅读

    创建UVM Testcase的步骤

    UVM中,Testcase是一类,它封装了测试用例开发者编写的特定激励序列。
    的头像 发表于 06-15 09:41 1596次阅读
    创建<b class='flag-5'>UVM</b> <b class='flag-5'>Testcase</b>的步骤