简单组合电路中的最大路径延迟
Maximum path delay in a simple combinational circuit
我想计算 Xilinx ISE 中组合电路的最大路径延迟。我熟悉时序电路,我知道如何处理时序约束和 P&R 后生成的时序报告。但是在设计中没有时钟,我不知道该怎么办?
是否需要在每一个组合设计中都加上时钟,从而计算出最大路径延迟是多少?
例如下面的一个全加器的VHDL代码,如何测量最大路径延迟?
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity full_adder_vhdl_code is
Port ( A : in STD_LOGIC;
B : in STD_LOGIC;
Cin : in STD_LOGIC;
S : out STD_LOGIC;
Cout : out STD_LOGIC);
end full_adder_vhdl_code;
architecture gate_level of full_adder_vhdl_code is
begin
S <= A XOR B XOR Cin ;
Cout <= (A AND B) OR (Cin AND A) OR (Cin AND B) ;
end gate_level;
这可以在 Xilinx ISE 中轻松完成。您不必添加任何时钟。
按原样合成代码。然后观看控制台选项卡。合成状态将显示在那里。您要求的延迟显示在本报告的末尾。
当我在 ISE 14.6 中综合您的代码时,我得到了这个:
Minimum period: No path found
Minimum input arrival time before
clock: No path found
Maximum output required time after clock: No
path found
Maximum combinational path delay: 0.776ns
========================================================================
Process "Synthesize - XST" completed successfully
我想计算 Xilinx ISE 中组合电路的最大路径延迟。我熟悉时序电路,我知道如何处理时序约束和 P&R 后生成的时序报告。但是在设计中没有时钟,我不知道该怎么办? 是否需要在每一个组合设计中都加上时钟,从而计算出最大路径延迟是多少? 例如下面的一个全加器的VHDL代码,如何测量最大路径延迟?
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity full_adder_vhdl_code is
Port ( A : in STD_LOGIC;
B : in STD_LOGIC;
Cin : in STD_LOGIC;
S : out STD_LOGIC;
Cout : out STD_LOGIC);
end full_adder_vhdl_code;
architecture gate_level of full_adder_vhdl_code is
begin
S <= A XOR B XOR Cin ;
Cout <= (A AND B) OR (Cin AND A) OR (Cin AND B) ;
end gate_level;
这可以在 Xilinx ISE 中轻松完成。您不必添加任何时钟。
按原样合成代码。然后观看控制台选项卡。合成状态将显示在那里。您要求的延迟显示在本报告的末尾。
当我在 ISE 14.6 中综合您的代码时,我得到了这个:
Minimum period: No path found
Minimum input arrival time before clock: No path found
Maximum output required time after clock: No path found
Maximum combinational path delay: 0.776ns========================================================================
Process "Synthesize - XST" completed successfully