Mit dem Befehl Synopsys® Design Constraint (SDC) set_multicycle_pathkönnen Sie die Anzahl der zulässigen Taktzyklen angeben, die entweder den Ziel- oder den Quell-Takt betrifft, damit sich die Daten zwischen den Quell- und Zielregistern verbreiten. Dies ist in dem in Abbildung 1 gezeigten Szenario nützlich.
Abbildung 1 zeigt einen einfachen Schaltkreis, bei dem für das Zielregister reg2 ein Multizyklen von 2erforderlich ist. Register reg2 sollte diese Daten bei jedem zweiten Taktzyklus riegeln.
Die unten stehenden SDC-Befehle beschränken die Taktfrequenzen im oben genannten Schaltkreis.
#Constrain the base clock
create_clock -period 10.000 [get_ports clk_in]
#Constrain the PLL output clock
create_generated_clock -source inst|inclk[0] -multiply_by 2 \
-name inst|clk[1] inst|clk[1]
#Constrain the input and output ports
set_input_delay -clock clk_in 1.2 [get_ports data_in]
set_input_delay -clock clk_in 1.5 [get_ports async_rst]
set_output_delay -clock clk_in 2 [get_ports data_out]
#Apply a multicycle of 2 to registers reg1 and reg2
#By default the multicycle is relative to the destination clock waveform
set_multicycle_path -setup -end -from [get_pins reg1|clk] -to [get_pins reg2|*] 2
Laden Sie die Beispielleitung multicycle_exception.qar herunter.
Die Verwendung dieses Designs unterliegt den Bedingungen der Intel® Design Example Lizenzvereinbarung.