【发布时间】:2021-05-21 21:44:30
【问题描述】:
我在 Quartus 20.1 中有如下 modports 的基本接口:
interface if_memory (
);
logic valid;
logic strobe;
logic wren;
logic [31:0] address;
modport client (
input valid,
output strobe, wren, address
);
modport host (
output valid,
input strobe, wren, address
);
endinterface
当我合成模块之间连接的这些接口时,我收到以下警告:
Warning (12158): Entity "if_memory" contains only dangling pins
我使用以下基本任务连接这些接口
if_memory if_memory();
assign some_strobe = if_memory.strobe;
assign some_wren = if_memory.wren;
assign some_address = if_memory.address;
使用 some_block 接口:
some_block some_block (
...
.if_memory(if_memory.client),
...
);
使用 some_block 作为
module some_block (
..
.
// memory interface
if_memory if_memory,
...
);
我也尝试过 if_memory.client 作为端口声明,并传入 if_memory。
这里发生了什么?唯一没有这个悬空问题的接口是时钟接口。
请注意,我上面的内容与接口的英特尔示例相匹配 - 是否缺少某些设置?
当我将接口更改为端口时 - 设计在芯片上按预期工作。
【问题讨论】:
标签: quartus