时间限制

Jak*_*obJ 6 fpga

我正在设计一个用于与USB芯片通信的ULPI接口.
但是我遇到了一些关于时序约束的问题.

数据在时钟的上升沿输出,在下降沿采样.

我可以看到(使用Post-Route)从时钟上升沿到数据输出有大约6ns"最佳情况可实现的延迟"是有效的.

如果我想要一个较小的延迟,我应该重写我的代码,例如延迟我的时钟,直到上升沿适合数据输出?

我知道上面的解决方案可能并不好,因为它将同时依赖于fpga设备和路由......但还有其他选择吗?

Jos*_*osh 2

你的数据输出寄存器是否打包到IO寄存器中?UCF 中的约束是:INST "some_ff" IOB = TRUE; 或者,您可以使用映射选项-pr b,它将输入和输出([b]oth)打包到 io 寄存器中。

这有 2 个效果:

  1. 锁定 IO 引脚和 FF 的第一个/最后一个 D/Q 引脚之间的时序(构建一致性)
  2. 最大化时钟输出性能(您无法让 Q 更接近输出引脚)。

编辑:上述建议适用于 Xilinx 工具链。其他供应商可能具有类似的体系结构,但调用该选项所需的参数/控件有所不同。