我试图在没有成功的情况下在其他设计中重复使用网表。
我有一个组件被翻译成网表:
entity c is
port (... sel : in std_logic_vector(31 downto 0); ... );
在设计中我只使用sel(4 downto 0)。 综合工具会注意到这种行为并发出警告:
'警告:Xst:647 - 输入sel< 31:5>永远不会被使用..
我正在生成包含属性的网表:
每当我想将此网表实例化为其他电路中的黑盒模块时,我就会收到错误:
错误:NgdBuild:76 - 无法合并到块中,因为块中的一个或多个引脚(包括引脚“sel< 31>”)未在文件中找到。
如何保留sel的大小? 我应该提到sel需要是32位宽,因为它连接到总线。
答案 0 :(得分:2)
您可以尝试将未使用的输入端口驱动为零。
答案 1 :(得分:1)
您可以直接使用该组件而不是预先合成的黑盒吗?
您可以通过在端口上放置KEEP属性(请参阅合成工具手册)来实现工作。我只是尝试过信号,但它可能有用。
这种任务经常被描述为合成器的“推绳索”,因为让它变得不像它想要的那样是一种痛苦(然后在你需要的下一个工具版本中)不同的属性:)