0
有人可以给我一个提示,为什么与modports和时钟模块这个界面可能无法正常工作?使用时钟模块和modports内部接口
interface axis (input logic aclk);
logic [15:0] tdata_s;
logic tvalid_s;
logic tready_s;
logic [15:0] tdata_m;
logic tvalid_m;
logic tready_m;
// clocking block for AXI Stream master
clocking cb_axis_mst @(posedge aclk);
default input #1step output #3ns;
output tdata_m;
output tvalid_m;
input tready_m;
endclocking
// clocking block for AXI Stream slave
clocking cb_axis_slv @(posedge aclk);
default input #1step output #1ns;
input tdata_s;
input tvalid_s;
output tready_s;
endclocking
// AXI stream master modport for testbench only
modport tb_axis_mst_mp(clocking cb_axis_mst);
// AXI stream slave modport for testbench only
modport tb_axis_slv_mp(clocking cb_axis_slv);
endinterface
QuestaSIM 10.5c给了我这样的一系列错误:
**错误:(VSIM-3773)../../../../ RTL/test_driver.sv( 37):接口项'tvalid_m'不在modport'tb_axis_mst_mp'中。
的问题消失,如果我的端口加入到modport,但我的理解是,这是足以只使用时钟块。
全部代码是在这里:https://www.edaplayground.com/x/5FzC