Synopsys Design Constraints
Synopsys Design Constraints
Synopsys Design Constraints
Units :
Example:
Min cap : Min load that the output pin should drive
If the load is higher than max value - charging and discharging of cell will take time
so delay if the cell becomes high also chances of X-talk_noise violation
Syntax :
Create_clock :
Used to define the clock with the required period on the required port or pin .
Ex:
Defines the relation b/w the clocks whether async | logically_exclusive | physically_exclusive
Example :
Clk2 and clk4 present in the design but functionally no paths exists b/w . example scen : clocks defined at
mux i/p pins
Clocks defined on the same pin but doesn’t coexists . Ex : func clock and scan clock defined on the same
clock port but they wont coexist at the same time .
Set_clock_uncertainty
Uncertainty = jitter (deviation of clock from ideal position) + additional margins + skew
To specify the transition time of register clock pins , here we can specify only clocks with ideal latency .
This will be discarded once clock trees were built actual transition values will be used .
Set_disable_timing
If there is a combo loop will get reported in the check_timing reports in PT . To break the loop and to perform
STA disable_timing is used
In OCV , all nets and cells in clock_path and data_path will be added with fixed derate values .
Setup :
Hold
Ex : This derate value applied for both cell and net and applied to both clock and data paths
Input_delay is used where the start point is from the input port and the end point is D of the FF
Input delay is the delay from the CK pin of the flop to the input_port (which is in Design Under Analysis)
Set_output_delay
output_delay is used where the start point is from the CK of FF and the end point is output_port
Output delay is the delay from output_port (which is in Design Under Analysis) to D pin of F/F which is outside
the design under analysis
Used when the timing is not met in the single clock cycle (only for valid paths)
B/w same clocks
Here F1 nd F2 flops are valid clock domain crossing paths , here we can’t apply false path so using
max_delay just to time this path
Ex :
Used when there is a timing violation occurred in invalid paths like b/w async clocks or the scan signals .
Set_case_analysis
To define the value for the select pin of the mux to select A or B pin (i.e test or func)
Syntax :