数字验证学习笔记——SystemVerilog芯片验证11 ——类的继承

news2025/2/27 2:42:08

一、类和继承

类的第二核心要素,即类的“继承”,继承也符合我们认识实际的观点,在自然界和科学界我们对世界的认识无外乎归纳法和演绎法。
归纳论证是一种由个别一般的论证方法。它通过许多个别的事例或分论点,然后归纳出它们所共有的特性,从而得出一个一般性的结论。所以从具体对象抽象出类的属性和方法,就符合定义类时的思维方式。
class cat;
protected color_t color;
local bit is_good;
function set_good(bit s);
this.is_good = s;
endfunction
endclass

class black_cat extends cat; //extends 继承
function new();
this.color = BLACK;
endfunction
endclass

class white_cat extends cat;
function new();
this.color = WHITE;
endfunction
endclass

black_cat bk;
white_cat wk;
initial begin
bk=new();
wt=new();
bk.set_good(1);
wt.set_good(1);
end
在这里插入图片描述
如果我们要将数据发送给dut,那么需要有以下的基本元素和数据处理方法,我们将它封装到Transaction类种。

class Transaction;
rand bit [31:0] src,dst,data[8]; //随机成员变量
bit [31:0] crc ; //二次处理后的成员数据
virtual function void clac_crc();
crc=src^ dst^ data.xor ;
endfuction
virtual function void display( input string prefix= “”);
$display("%sTr: src=%h, dst=%h , crc=%h ", prefix, src, dst crc);
endfuction
endclass
在这里插入图片描述
如果我们为了测试DUT 的稳定性 ,需要加如一些错误的数据来测试DUT的反馈,但我们又想复用原有的验证环境(也包括定义好的类)
那我们就需要考虑使用继承的方式来创建一个类BadTr。

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

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

相关文章

17、Mybatis获取参数值的情况3(若mapper接口方法的参数为多个时,可以手动将这些参数放入map中存储)

Mybatis获取参数值的情况3(若mapper接口方法的参数为多个时,可以手动将这些参数放入map中存储) 第一步: 第二步: 第三步:

Linux系统tcp连接设置

目录net.ipv4.tcp_syn_retriesnet.ipv4.ip_local_port_rangenet.ipv4.tcp_net.core.somaxconnnet.ipv4.tcp_max_syn_backlognet.core.netdev_max_backlognet.ipv4.tcp_synack_retriesnet.ipv4.tcp_abort_on_overflownet.ipv4.tcp_syncookiesnet.ipv4.tcp_fastopennet.ipv4.tcp_…

兆易创新GD32 (四)FreeRTOS 移植 与 CMSIS OS2

可以完全参考STM32系列的方法 FreeRTOS 逛网下载 FreeRTOS源码 https://www.freertos.org/a00104.html GitHub地址 https://github.com/FreeRTOS/FreeRTOS-Kernel 下载后的FreeRTOS-Kernel复制到LIB文件夹下 在KEIL中添加文件,首先是公共部分 添加MDK移植文件CM4F…

含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法)

含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法) 参考文献:抽水蓄能电站的最佳调度方案研究 调峰电源的优化调度是促进电力系统安全稳定运行,实现可靠供电的要措施。因为目前我国的调峰电源严重不足,尤其…

【畅购商城】订单模块之收货人列表

目录 构建订单服务&#xff1a;8100 收货人列表 接口 后端实现&#xff1a;JavaBean 后端实现 前端实现 构建订单服务&#xff1a;8100 步骤一&#xff1a;构建项目&#xff0c;changgou4-service-orders 步骤二&#xff1a;修改pom.xml文件&#xff0c;添加依赖 <de…

Spring核心与设计思想

文章目录Spring 是什么&#xff1f;什么是容器&#xff1f;什么是IoC&#xff1f;传统程序开发控制反转式程序开发对比总结规律理解 Spring IoCDI 概念Spring 是什么&#xff1f; 我们通常所说的 Spring 指的是 Spring Framework&#xff08;Spring 框架&#xff09;&#xff…

ignite集群

ignite集群 基础知识 集群中的结点 Ignite 是一个分布式系统&#xff0c;集群是标配功能。 集群中的 节点&#xff0c;有两类&#xff1a; 服务器结点。具备完全功能的结点。 客户端结点&#xff1a;这个我没有完全理解&#xff0c;但从编程的角度&#xff0c;我初步认为这个…

Jenkins-CentOS安装jenkins

CentOS安装jenkins jenkins适配的jdk版本是17和11 第一步&#xff1a;安装jdk11 &#xff08;1&#xff09;在oracle下载jdk11 jdk-11.0.16.1_linux-x64_bin.tar,放到非root用户的家目录下 &#xff08;2&#xff09;解压&#xff0c;tar -zxvf jdk-11.0.16.1_linux-x64_bin…

校园论坛设计(Java)——介绍篇

校园论坛设计&#xff08;Java&#xff09; 文章目录校园论坛设计&#xff08;Java&#xff09;0、写在前面1、项目介绍2、项目背景3、项目功能介绍3.1 总体设计图3.2 帖子模块3.3 学习模块3.4 个人信息模块3.5 数据报表模块3.6 校园周边模块3.7 用户管理模块3.8 登录注册模块4…

基于桶的排序之基数排序以及排序方法总结

基于桶的排序之基数排序以及排序方法总结 作者&#xff1a;Grey 原文地址&#xff1a; 博客园&#xff1a;基于桶的排序之基数排序以及排序方法总结 CSDN&#xff1a;基于桶的排序之基数排序以及排序方法总结 说明 基于桶的排序有两种&#xff0c;分别是计数排序和基数排…

智源社区AI周刊No.107:英伟达推出Magic3D;Stable Diffusion2.0发布

汇聚每周AI热点&#xff0c;不错过重要资讯&#xff01;欢迎扫码&#xff0c;关注并订阅智源社区AI周刊。英伟达推出Magic3D&#xff0c;性能超过谷歌DreamFusion近一段时间&#xff0c;让AI生成3D点云成为业界研究的重点。谷歌曾在9月提出DreamFusion&#xff0c;引起广泛关注…

【LEACH协议】最佳簇半径的无线传感器网络分簇路由算法【含Matlab源码 2087期】

⛄一、 数据融合的LEACH协议简介 1 基于自适应数据融合的LEACH协议 1.1 基本定义和概念 无线传感器网络中的一个簇可以用一个无向加权全连通图G(V,E)来表示,V是簇中所有传感器节点的集合,E使簇中两个节点之间可以直接通信。假设顶点v∈V代表簇中的一个传感器节点,边euv(u,v)∈…

合作共赢,就在2022亚马逊云科技re:Invent全球大会

一年一度的科技狂欢盛会&#xff0c;2022年亚马逊云科技re:Invent全球大会即将于北京时间2022年11月29日盛大开启&#xff01;届时全球各领域关注“云计算圈”发展的人都将齐聚一堂&#xff0c;共同聆听5大重磅嘉宾的主题演讲&#xff0c;700前沿技术话题…… 携全球合作伙伴…

APP逆向案例之(三)sign 参数破解

说明&#xff1a;某新闻APP sign 参数 抓包发现包含内容&#xff1a; url: https://124.*.*.*/api/categorynews/lists 参数&#xff1a; 其中 sign 参数是需要变化的否则访问失败&#xff0c;其余都是固定的 page: 3, size: 10, category: -2, from: -1, lng: 116.363…

快收藏!最全GO语言实现设计模式【下】

点个关注&#x1f446;跟腾讯工程师学技术导语| 继上篇【快收藏&#xff01;最全GO语言实现设计模式】&#xff0c;本文继续列出GO语言实现的经典设计模式示例&#xff0c;每个示例都精心设计&#xff0c;力求符合模式结构&#xff0c;可作为日常编码参考&#xff0c;同时一些常…

基于遗传算法的自主式水下潜器路径规划问题附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法 …

Pycharm配置python3环境

一、打开pycharm 二、选择preferences 三、选择项目所属Python解释器&#xff0c;点击设置icon&#xff0c;选择“全部显示” 四、选择“添加”&#xff0c;选择最新的python路径进行添加 五、验证是否配置成功 打印输出内容&#xff0c;则配置成功

JMETER也会遇到加密难题,中文乱码也能一并处理

文章目录加密的接口测试导出jar包&#xff0c;放入jmeter的lib/ext扩展目录JMeter输出中文乱码总结加密的接口测试 不管是接口测试还是性能测试&#xff0c;在遇到接口有加密入参的时候&#xff0c;该怎么办&#xff1f; 毫无疑问&#xff0c;放弃自己实现的想法&#xff0c;除…

YOLOv4 NCNN 量化模型和实时推理

又搬来了大佬的啊 膜拜大佬 2021年5月7日&#xff0c;腾讯优图实验室正式推出了ncnn新版本&#xff0c;这一版本的贡献毫无疑问&#xff0c;又是对arm系列的端侧推理一大推动&#xff0c;先剖出nihui大佬博客上关于新版ncnn的优化点&#xff1a;继续保持优秀的接口稳定性和兼…

代码随想录——字符串篇

1、反转字符串 344.反转字符串 力扣题目链接 编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 不要给另外的数组分配额外的空间&#xff0c;你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 你可以假设数…