从零开始搭建UVM平台(四)-加入interface

news2024/11/18 15:25:38

书接上回:

从零开始搭建UVM平台(一)-只有uvm_driver的验证平台

从零开始搭建UVM平台(二)-加入factory机制

从零开始搭建UVM平台(三)-加入objection机制

                                                                加入interface

上述代码还有一个问题就是,在my_driver里打出激励赋值需要引用信号的绝对路径,这样操作的麻烦就是一旦路径改了,环境需要修改的地方也很多。要想避免绝对路径的麻烦,首先可以想到改成宏来定义信号路径,宏是一个较好的方法,但是只能用于像dut这种在uvm平台之外的路径,如果路径换成了uvm平台内部的路径,宏的方式还是不能解决问题,此时,一种更好的方式:interface就可以上场了。

第一步:首先新建一个interface文件,作为中间桥梁,连接环境和dut。

第二步:将interface文件加入到环境中:

第二步:连接dut和interface:

第四步:连接my_driver和interface

需要注意的是,my_driver是一个class,class里面不能使用interface,只能使用virtual interface。

注意这里build_phase是function,且返回值一定要写void,且一定写super.build_phase来完成搭建整个UVM树。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2178498.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

目标检测论文常用评价指标(Evaluation Metrics)总结

评价指标(Evaluation Metrics) 混淆矩阵(Confusion Matrix)归一化混淆矩阵(Normalized Confusion Matrix)精确度(Precision)召回率(Recall)F1值(F…

连续4年!容联云荣登2024北京民营企业百强榜单

近日,北京市工商联发布2024北京民营企业百强“14”榜单。容联云荣登北京民营企业科技创新前100强,同时位列12家朝阳区科技百强企业之一。 自2018年起,在中共北京市委统战部的指导下,北京市工商业联合会联合有关部门,每…

springboot+satoken实现刷新token(值变化)

欢迎来到我的博客,代码的世界里,每一行都是一个故事 🎏:你只管努力,剩下的交给时间 🏠 :小破站 springbootsatoken实现刷新token satoken是什么?支持什么?为什么需要&…

CSDN 账号已经恢复,后续可能会把专栏内容整理成纸质书出版

笔者曾经系统地将自己在 ABAP,SAP UI5 和 SAP OData 开发领域的知识和经验,整理输出成四套开发教程: 零基础快速学习 ABAPSAP Fiori Elements 从入门到进阶SAP OData 开发实战教程 - 从入门到提高一套适合 SAP UI5 开发人员循序渐进的学习教…

Python酷玩之旅_如何连接MySQL(mysql-connector-python)

前言 Python作为数据科学、机器学习等领域的必选武器,备受各界人士的喜爱。当你面对不同类型、存储于各类介质的数据时,第一时间是不是要让它亮个相?做个统计,画个图表,搞个报表… 等等。 正如Java中的JdbcDriver一样…

以“棋”启智,乐在其中:二近制AI智能棋盘内含9种经典玩法让老人小孩爱不释手

近年来,人工智能算法被广泛地应用到生活的各个领域,棋类游戏亦是如此。各种搭载 A 智能算法的棋盘层出不穷,以“棋”启智,乐在其中成为了当下较流行地全民益智游戏之一。 棋类游戏为何屡受欢迎? 棋类游戏是一种能够激发民族智慧…

济南奇牛科技移动办公手机安全管理平台功能说明

济南奇牛信息科技有限公司自主研发的企业移动安全管理平台为企业提供一整移动终端安全解决方案,为解决企业在实施移动终端应用系统中会遇到的安全、应用管理和资产管理方面的问题,建立统一安全策略,解决企业数字化资产安全和员工隐私保护问题…

【教学类-23-02】20240929《不会写学号的中班幼儿的学号描字贴》(中2班描字)

背景需求: 今天给孩子们做中班操作材料包《练眼力》,希望他们在操作纸左上角写学号,结果有不少孩子嚷:“我不会写学号!” “不会写的孩子举手,老师给你们做个字帖” 结果有不少孩子都举手了,我…

opencv学习:Harris角点检测和SIFT(尺度不变特征变换)算法完整代码实现

Harris角点检测 概念 Harris角点检测是一种在图像处理和计算机视觉领域广泛使用的技术,用于检测图像中的角点。角点是图像中两条边缘交点的位置,它们在图像分析、目标识别和图像配准等任务中非常重要。 角点:图像中的角点是指图像局部区域…

GDB :代码调试工具

文章目录 一、启动GDB二、GDB的基本命令1. 显示代码2. 运行程序3. 设置断点4. 单步执行5. 查看变量和内存6. 查看函数调用堆栈7. 修改变量值8. 退出GDB 一、启动GDB 在终端中,使用以下命令启动GDB并加载你的可执行文件: gdb ./your_program会进入以下界…

应用性能管理工具-SkyWalking

前言 随着微服务架构的流行,一次请求往往需要涉及到多个服务,因此服务性能监控和排查就变得更复杂,因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决…

关于大模型的10个思考

9月28日,第四届“青年科学家50论坛”在南方科技大学举行,美国国家工程院外籍院士沈向洋做了《通用人工智能时代,我们应该怎样思考大模型》的主题演讲,并给出了他对大模型的10个思考。 以下是他10个思考的具体内容: 1…

STM32移植RT-Thread实现DAC功能

在进行DAC的学习中,发现RT-Thread中没有该外设的驱动,因此需要自己进行相关配置 1.配置RT-Thread Setting中的DAC组件 2.在HAL库中完成DAC的配置(HAL库起到时钟的作用) 不懂HAL库配置的最好学一下HAL库的编程思想 3.在board.h中添加宏定义 我的RT-T…

关于分箱的一些介绍

在这篇文章中,我将介绍一种数据预处理的技术——分箱,然会将会从概念、步骤、分类、应用场景、注意事项与实际操作等方面去介绍它。 一、概念 分箱(Binning)是一种数据预处理技术,在数据分析和机器学习中经常使用。它…

Java8 用流收集数据之归约汇总

目录 规约汇总最大值 (max)・最小值 (min)统计总数 (count)统计求和 (summingInt・summingLong・summingDouble・sum)平均值 (averagingInt・averagingLong・averagingInt・average)统计梗概 (summarizingInt・summarizingLong・summarizingDouble・summ…

AI周报(9.22-9.28)

AI应用-Siipet宠物沟通师 Siipet是一款由SiiPet公司推出的创新宠物行为分析相机,旨在通过尖端技术加深宠物与主人之间的情感联系。这款相机利用先进的AI算法,能够自动识别和分析家中宠物的行为,并提供定制化的护理建议。 SiiPet相机的核心功…

益而益集团荣获2024年江苏省智能制造车间称号

近日,江苏省工信厅公示2024年江苏省智能制造车间名单,苏州益而益电器制造有限公司以其卓越的智能化转型成果,荣获2024年度江苏省级智能制造车间称号。 此次获评,是江苏省政府对益而益集团智能化高质量转型发展的认可及肯定&#…

活动在线报名小程序源码系统 自主提交表单+创建表单 带完整的安装代码包以及搭建部署教程

系统概述 随着各类活动的日益丰富和多样化,传统的报名方式逐渐显现出其局限性。纸质报名表格繁琐易错、人工统计费时费力,难以满足现代活动管理的需求。因此,开发一款集自主提交表单和创建表单功能于一体的活动在线报名小程序源码系统成为必…

mit6824-01-MapReduce详解

文章目录 MapReduce简述编程模型执行流程执行流程排序保证Combiner函数Master数据结构 容错性Worker故障Master故障 性能提升定制分区函数局部性执行缓慢的worker(slow workers) 常见问题总结回顾参考链接 MapReduce简述 MapReduce是一个在多台机器上并行计算大规模数据的软件架…

C++进阶知识2 多态

多态 1. 多态的概念2. 多态的定义及实现2.1 多态的构成条件2.1.2 虚函数2.1.3 虚函数的重写/覆盖2.1.5 虚函数重写的⼀些其他问题2.1.6 override和final关键字2.1.7 重载/重写/隐藏的对⽐ 3. 多态的原理3.2 多态的原理3.2.1 多态是如何实现的3.2.2 动态绑定与静态绑定3.2.3 虚函…