Xilinx ISE - 错误的最大频率?

时间:2017-02-08 17:22:06

标签: frequency fpga clock xilinx xilinx-ise

我在ISE中设计了一个简单的Ripple Carry Adder,在为我的FPGA合成后,报告称“最大组合路径延迟”约为15 ns。

然后,我设计了一个Robertson乘法器(顺序电路),它包含了我的RCA实例。该报告称“最大组合路径延迟”约为7.5 ns,最大频率约为130 MHz。

我的问题是:这些数字是对的吗?该工具是否会进行某种“魔术”优化,以便“加速”乘法器内的加法器?或者这只是一个错误的估计?

我还发现,如果我选择“保持层次结构”为“是”,则在综合选项中,报告中的频率或多或少与RCA的延迟一致。

[编辑] 我发布了综合文本报告和实施(在地图之后)文本报告:

2 个答案:

答案 0 :(得分:0)

这两个数字都很有用,但是在实现过程中报告的数字告诉您设计可以在您为其生成硬件的FPGA上可靠地使用的最快时钟。综合数字更多地是对实施数量的估计。

在综合中,您的设计将转换为硬件块,并进行优化以将逻辑简化为最简单的块。这些模块具有基于您为其生成硬件的FPGA系列的时序参数。仅这些用于合成“最大组合路径延迟”估计。

在实现中,这些块被映射并路由到FPGA架构,在此期间进行优化,可以组合可能减少“最大组合路径延迟”的块。请注意,当大型或复杂设计需要额外路由时,延迟也会增加。此时,由于设计已映射并路由到物理硬件上,因此可以在映射和路由设计上计算最坏情况延迟。

可能发生的一件事是,你的乘法累加被映射到一个“硬”DSP块,其中包含一个带前置和后置加法器逻辑的乘法器。在这种情况下,由于DSP模块具有比LUT映射加法器/乘法更高的执行频率,因此它将具有更好的时序。合成不能显示时序的原因是因为DSP块相对较少,如果没有足够的DSP模块可以安全地假设它。

答案 1 :(得分:0)

如果您将加法器构建为显式组合电路,则MAP可能无法将其识别为加法器,因此无法使用FPGA中的进位链电路来实现它。这可能会导致设计效果低得多。

使用HDL加法运算符(例如,Verilog中的assign c = a + b;)实现加法器可能会带来更优化的实现。它还可以使您的代码更简单。