我想在我的传统 Verilog AXI4Lite主机的顶级测试台中使用SysWip AXI4Lite Slave验证IP(在SystemVerilog中)。
作为SystemVerilog的新手,我在顶层测试平台上进行端口映射存在问题。
我拥有:从SysWip我下载了axi4lite_s_if.sv这是一个接口和axi4lite_s.sv这是一个包(http://syswip.com/axi4-lite-verification-ip) 。 从我的遗留代码我有一个dut_top.v和dut_top_tb.sv(我已将其重命名为.sv以支持一些SV构造 - 导入,创建从属类对象等)。 Verilog AXI4Lite主模块在dut_top.v
中实现目标:我想将传统Verilog AXI4Lite Master的端口连接到SysWip VIP slave的端口。我收到一个语法错误消息,其中端口正在dut_top_tb.sv中映射。
所以有人能指出我为上述情况做portmap的正确语法吗?
答案 0 :(得分:1)
您的问题很混乱,因为您混合了module
和interface
这些相似但不同的结构。
SystemVerilog接口instance
可以通过接口端口连接到SystemVerilog module
。如果您的传统Verilog模块没有接口端口,您仍然可以使用分层参考将SV接口instacne连接到Verilog模块。例如
interface intf;
wire w;
endinterface
module verilog_dut(input wire w);
initial $display(w);
endmodule
module SV_dut(intf p);
initial $display(p.w);
endmodule
module top;
intf i1();
verilog_dut i2(.w(i1.w));
SV_dut i3(.p(i1));
endmodule