L’Analyseur de synchronisation facilite l’utilisation des commandes Synopsys® Design Constraint (SDC) pour limiter les structures d’horloge complexes, telles que les horloges multiplexées. Les suivants montrent trois circuits d’exemple et les commandes SDC appropriées pour les limiter.
Supposez que le port dulk est piloté par un multiplexeur hors puce qui choisit entre deux horloges, l’un avec une période de 10 ns et l’autre un port avec une période de 8 ns. Les commandes SDC suivantes montrent comment attribuer plusieurs horloges au port delk. Il montre également comment ajouter une exception indiquant que les deux horloges ne seront jamais actives en même temps dans le FPGA.
# Créez les deux horloges du port create_clock -nom clk_100 -période 10 [get_ports clk] create_clock -nom clk_125-période 8 [get_ports clk] -Ajoutez #Set les deux horloges comme horloges exclusives set_clock_groups -exclusive -group {clk_100} -group {clk_125}
Supposez que le port clkA est piloté par une horloge d’une période de 10 ns et que le port dulkB est piloté par une horloge d’une période de 8 ns. Les commandes SDC suivantes montrent comment attribuer les horloges. Cet exemple est semblable à celui de l’exemple précédent, mais les horloges sont affectées à des ports distincts.
# Créez une horloge sur chaque port create_clock -nom clk_100 -période 10 [get_ports clkA] create_clock -nom clk_125-période 8 [get_ports clkB] -Add #Set les deux horloges comme horloges exclusives set_clock_groups -exclusive -group {clk_100} -group {clk_125}
Dans ce cas, vous devez utiliser la commande set_clock_groups pour indiquer que les horloges A et D, A et B, C et D, et B et C, ne peuvent jamais être actives en même temps.
create_clock -nom A-period 10 [get_ports clkA] create_clock -nom B-period 8 [get_ports clkB] create_clock -nom C-period 8 [get_ports clkC] create_clock -nom D-period 10 [get_ports clkD] #cut paths entre les horloges set_clock_groups -exclusive -group {A C} -groupe {B D}