我的 DUT 是一个内存控制器。我必须为 DUT 编写一个系统 verilog 接口。内存控制器 DUT 支持 32 个 AXI 主控。当我编写 AXI 接口时,它将由 ACLK 组成,该 ACLK 生成并通过顶部(验证)传递。当我将此接口连接到 DUT 时,是否会有 32(AXI ACLK) + 1(DUT 在其上工作的时钟),总共有 33 个时钟到 DUT。我对此感到很困惑。从逻辑上讲,DUT 中应该只有一个 clk ..
提前感谢您的答案
我的 DUT 是一个内存控制器。我必须为 DUT 编写一个系统 verilog 接口。内存控制器 DUT 支持 32 个 AXI 主控。当我编写 AXI 接口时,它将由 ACLK 组成,该 ACLK 生成并通过顶部(验证)传递。当我将此接口连接到 DUT 时,是否会有 32(AXI ACLK) + 1(DUT 在其上工作的时钟),总共有 33 个时钟到 DUT。我对此感到很困惑。从逻辑上讲,DUT 中应该只有一个 clk ..
提前感谢您的答案
共享接口信号应声明为接口的输入端口。这样,您可以将它们全部联系在一起以形成一个逻辑信号。
interface myintf(input wire sig_shared);
wire sig_internal;
endinterface
module top;
wire s1,s2;
myintf i1(s1);
myintf i2(s1);
myintf i[31:0](s2);
endmodule
现在表示i1.sig_internal
和i2.sig_internal
将是独立的,但在逻辑i1.sig_shared
上i2.sig_shared
是等价的。同样的事情i[0].sig_shared
thru i[31].sig_shared
。