网站大量收购闲置独家精品文档,联系QQ:2885784924

SystemVerilog数字集成电路功能验证课件 (6).pdf

SystemVerilog数字集成电路功能验证课件 (6).pdf

  1. 1、本文档共120页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

SystemVerilog芯片验证

第5章面向对象编程

2024年3月12日

SystemVerilog芯片验证2024年3月12日1/120

类的定义

类的定义

1类(class)是现实世界中一系列特征相似的客观事物(对象)的抽象。

2在程序设计中,类是用于创建对象的蓝图(blueprint),是包含了属性

(property)和方法(method)的数据类型。

3方法是类的访问接口,在类的外部通过调用方法访问或修改类中的属性。

4类是一种自动数据类型。

请举例说明类和对象的关系。

4classtransaction;

5bit[3:0]a;

6

7functionvoidprint(stringname=);

8$display(%s:a=%0h,name,a);

9endfunction

10endclass

SystemVerilog芯片验证2024年3月12日2/120

类的定义

在类外定义方法

4classtransaction;

5bit[3:0]a;

6

7externfunctionvoidprint(stringname=);

8endclass

9

10functionvoidtransaction::print(stringname);

11$display(%s:a=%0h,name,a);

12endfunction

SystemVerilog芯片验证2024年3月12日3/120

对象、句柄和构造方法

在类外定义方法

1类是一种抽象的数据类型,它本身不占据存储空间。

2类的实例被称为对象,对象占据存储空间。

3句柄(handle)是使用类作为数据类型而定义的变量,可以简单认为句柄

保存了对象所在的存储空间的起始地址。

4对象不能直接被访问,只能使用句柄间接地进行访问。

SystemVerilog芯片验证2024年3月12日4/120

对象、句柄和构造方法默认构造方法

类、句柄和对象的关系

1对象是通过调用类的构造方法(constructor)创建出来的。

2类中名字叫做“new”的方法就是构造方法,每个类都自带一个没有参数的

new方法,也被称为默认构造方法。

3构造方法为对象分配存储空间,然后初始化对象中的属性,最后返回对象

的地址。对象的地址值通常会赋值给对应的句柄。

存储空间存储空间

句柄tr句柄tr

transactiontr;nulltransactiontr;15554ba48160

tr=new();

transaction对象

属性a

文档评论(0)

学海无涯而人有崖 + 关注
实名认证
内容提供者

教师资格证、人力资源管理师持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年06月11日上传了教师资格证、人力资源管理师

1亿VIP精品文档

相关文档