微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 请教systemverilog中类(类中含类)的构造函数执行顺序?

请教systemverilog中类(类中含类)的构造函数执行顺序?

时间:10-02 整理:3721RD 点击:
问题如下:
先定义了个interface:
interface Iff(..);
clocking ck;
...
endclocking
modport recv(clocking ck);
...
endinterface
typedef virtual Iff.recv VrecvIff;
class A_CLASS;
VrecvIff pif;
function new(VrecvIff pif);
this.pif = pif;
endfunction
endclass
class B_CLASS;
A_CLASS a;
function new(VrecvIff pif);
a = new(pif);
endfunction
endclass
class C_CLASS;
B_CLASS b;
function new(VrecvIff pif);
b = new(pif);
endfunction
endclass
在top.sv中会例化interface: top_iff(此处省略)
在test.sv中代码:
program test;
VrecvIff vr_if;
C_CLASS c;
vr_if = top.top;
c = new(vr_if);
end
我的问题是:当调用new()创建类c的时候,类A,B,C的new(pif)是按怎样的顺序执行的,以及其interface参数是如何传递的?。

new是自顶向下的顺序来的。

在new里面加打印不就知道了。

学习了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top