题
我试图在其他设计中重新使用网表,但没有成功。
我有一个转换为网表的组件:
entity c is
port (... sel : in std_logic_vector(31 downto 0); ... );
在设计中我只使用 sel(4 downto 0)。综合工具注意到这种行为并发出警告:
'警告:Xst:647 - 输入 sel<31:5> 从未使用过..
我正在生成具有以下属性的网表:
- 保持层次结构= true
- 添加 I/O 缓冲区 = 关闭
每当我想将此网表实例化为其他电路中的黑盒模块时,我都会收到错误:
错误:NgdBuild:76 - 无法合并到块中,因为在文件中未找到块上的一个或多个引脚(包括引脚“sel<31>”)。
如何保留 sel 的大小?我应该提到 sel 需要是 32 位宽度,因为它连接到总线。
解决方案
您可以尝试将未使用的输入端口驱动到零。
其他提示
您可以直接使用该组件而不是作为预先合成的黑盒吗?
您可以通过在端口上放置 KEEP 属性(请参阅合成工具手册)来使事情正常工作。我只在信号上尝试过这个,但它可能有效。
这类任务通常被描述为合成器的“推绳子”,因为让它不达到预期的速度是非常痛苦的(然后在下一个版本的工具中,您需要不同的属性:)
不隶属于 StackOverflow