Site Search

Hello, I'm Mass Man.

Starting this week, I will be writing a series on “timing analysis”. The most difficult part of the new employee training was the lecture on timing analysis. Through this column, I would like to summarize the lecture materials and notes on timing analysis and introduce the points where I stumbled.

 

Today about the SDC command. Here is an example of an SDC description for TimeQuest.

There are various SDC descriptions, but in this column, I would like to introduce the SDC descriptions picked up in new employee training.

clock constraint

table 1. List of SDC commands for clock constraints.

command

content

create_clock Defines the clock frequency supplied by the clock pin.
create_generated_clock Defines the clock frequency supplied by the internal logic/PLL.
derive_pll_clocks Defines the clock frequency supplied by the internal PLL. A convenience command that allows you to constrain all outputs of the PLL.
set_clock_uncertainty Defines the clock rise/fall time variation. The user himself can set constraints according to the board.
derive_clock_uncertainty Defines the clock rise/fall time variation. Variation model prepared by Altera.
set_clock_latency Define clock delay time between external device and FPGA.

 

Figure 1 is an image of how each command limits the clock.

Figure 1. Image of clock constraints

I/O constraints

Table 2. List of SDC commands for I/O constraints.

command

content

set_input_delay Defines the delay time of the input signal.
set_output_delay Defines the delay time of the output signal.
set_false_path Exclude the specified paths from timing analysis. Used for asynchronous paths (reset/clear signals), etc.
set_multicycle_path Defines analysis on any clock edge for each setup/hold.

Figure 2 shows an image of the I/O restrictions due to each command.

Figure 2. Image of I/O constraints

 

 

In this way, the TimeQuest Timing Analyzer also considers and analyzes the relationship between the external device and the FPGA. Rather than closing on the FPGA, we are doing timing analysis for the entire board!

Summary

  • The TimeQuest Timing Analyzer analyzes the timing of the entire board.