时序逻辑电路块中的时间延迟是否会影响综合或布局或布线的结果?

Does time delay in a sequential logic circuit block have a influence on synthesize or place or route's result?

我使用 Xilinx ISE 作为 IDE。 如果我在具有敏感列表的始终(Verilog)/进程(VHDL)中的每个分配中添加 100 ps 延迟,则只有时钟和复位。 像这样。

always@(posedge clk)
    if(rst)
      a <= #100 'd0;
    else
      a <= #100 b;
    end 

我认为延迟函数只影响模拟 process.Because 每本书和用户指南都告诉我们 delay 不可合成。

但我还是想知道延迟功能是否真的可以影响地点或路线的结果?比如静态计时或时钟报告? 比如可以使电路的最大频率更高或更慢?

不,代码中的#delay 不会影响加载到 FPGA 上的设计时序。

也不影响布局布线结果或静态时序分析。这两个步骤都使用制造商以设备模型的形式提供的计时信息。

延迟语句 (#100) 在 Verilog 综合过程中通常被忽略。所以在合成中它是一样的:

always@(posedge clk)
    if(rst)
      a <= 0;
    else
      a <= b;
    end 

Xlinx Synthesis and Simuation Design Guide 声明:

Delays in Synthesis Code

Do not use Wait for XX ns (VHDL) or the #XX (Verilog) statements in your code. (...) This statement does not synthesize to a component. In designs that include this construct, the functionality of the simulated design does not always match the functionality of the synthesized design.

(...)

Wait for XX ns Statement Verilog Coding Example

#XX;

Do not use the After XX ns statement in your VHDL code or the Delay assignment in your Verilog code

(...)

Delay Assignment Verilog Coding Example

assign #XX Q=0;

XX specifies the number of nanoseconds that must pass before a condition is executed. This statement is usually ignored by the synthesis tool. In this case, the functionality of the simulated design does not match the functionality of the synthesized design.

你是对的,延迟语句没有任何内在特性使它们不可综合,但是尝试这样做是非常不切实际的。这样做的原因是,一旦在 FPGA 上,您将处理一个物理电路,其性能随 PVT(过程、电压、温度)而变化,并且变化很大!唯一的对冲方法是模拟电路,它试图感测上述所有内容并相应地自我调整。这样的野兽在它能做的事情上仍然是有限的,并且根据延迟的愤怒和你想要支持的上述所有方面的差异,它会体格庞大并且需要能量。

因此,考虑到除特殊用途 IO 之外,对此几乎没有(阅读:没有)需求,FPGA 供应商不提供任何此类组件,从而使构造不可合成。

"Usually" 对合成和 P&R 结果没有影响。

Xilinx: This statement is usually ignored by the synthesis tool.

那什么时候有影响呢?

虽然延迟语句被综合工具忽略了,但是HDL代码还是有点不一样。这可能会在任何阶段(解析、细化、综合等)改变随机化的种子,因此可能会出现不同的结果。这些结果可能更好也可能更坏。

如果代码中存在延迟语句,Xilinx ISE 会发出以下警告:

WARNING:Xst:916 - design.v line x: Delay is ignored for synthesis.