Intel® Quartus® Prime Standard Edition User Guide: Timing Analyzer
ID
683068
Date
2/21/2024
Public
2.3.1. Recommended Initial SDC Constraints
2.3.2. SDC File Precedence
2.3.3. Iterative Constraint Modification
2.3.4. Creating Clocks and Clock Constraints
2.3.5. Creating I/O Constraints
2.3.6. Creating Delay and Skew Constraints
2.3.7. Creating Timing Exceptions
2.3.8. Example Circuit and SDC File
2.3.7.5.1. Default Multicycle Analysis
2.3.7.5.2. End Multicycle Setup = 2 and End Multicycle Hold = 0
2.3.7.5.3. End Multicycle Setup = 2 and End Multicycle Hold = 1
2.3.7.5.4. Same Frequency Clocks with Destination Clock Offset
2.3.7.5.5. Destination Clock Frequency is a Multiple of the Source Clock Frequency
2.3.7.5.6. Destination Clock Frequency is a Multiple of the Source Clock Frequency with an Offset
2.3.7.5.7. Source Clock Frequency is a Multiple of the Destination Clock Frequency
2.3.7.5.8. Source Clock Frequency is a Multiple of the Destination Clock Frequency with an Offset
2.3.4.5.1. Exclusive Clock Groups (-exclusive)
You can use the -exclusive option to declare that two clocks are mutually exclusive.
If you define multiple clocks for the same node, you can use clock group assignments with the -exclusive option to declare clocks as mutually exclusive. This technique can be useful for multiplexed clocks.
For example, consider an input port that is clocked by either a 100-MHz or 125-MHz clock. You can use the -exclusive option to declare that the clocks are mutually exclusive and eliminate clock transfers between the 100-MHz and 125-MHz clocks, as the following diagrams and example SDC constraints illustrate:
Figure 51. Synchronous Path with Clock Mux Internal to FPGA
Example SDC Constraints for Internal Clock Mux
# Create a clock on each port create_clock -name clk_100 -period 10 [get_ports clkA] create_clock -name clk_125 -period 8 [get_ports clkB] # Set the two clocks as exclusive clocks set_clock_groups -exclusive -group {clk_100} -group {clk_125}
Figure 52. Synchronous Path with Clock Mux External to FPGA
Example SDC Constraints for External Clock Mux
# Create two clocks on the port clk create_clock -name clkA -period 10 [get_ports clk] create_clock -name clkB -period 8 [get_ports clk] -add # Set the two clocks as exclusive clocks set_clock_groups -exclusive -group {clkA} -group {clkB}