问题描述
XST如何处理初始条件? XST如何处理未连接的端口?
解决/修复方法
XST根据信号初始化值初始化存储器元件,如下图所示:
上面的例子在复位触发器上设置初始状态“1”,将在信号“q”上推断出。当FPGA完成配置时,即使触发器是复位触发器,触发器信号“q”也处于“1”状态。如果信号“q”未初始化为“1”,则XST将默认值“0”指定为其初始状态。在这种情况下,XST不遵循IEEE标准(其中“U”是std_logic的默认值),因为Xilinx FPGA中的每个存储器元件都必须处于已知状态。
在可能的情况下,XST在初始化信号值时遵守VHDL IEEE标准。如果未提供初始值,则XST将使用“语言参考手册”中概述的默认值(如果可能):
未连接的输出/输入/缓冲端口默认为上述值。如果端口具有初始条件,则未连接的端口将与明确定义的初始条件相关联。根据IEEE规范,输入端口不能保持未连接状态。因此,如果未连接输入端口,XST始终会报告错误。即使是“open”关键字也不足以满足输入端口的要求。
没有回复内容