6.9 Constraints by Name: Timing

6.9.1 Create Clock

6.9.1.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

DCF

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

*

X

Axcelerator

X

X

eX

X

X

X

SX-A

X

X

X

SX

X

X

MX

X

X

3200DX

X

X

ACT3

X

X

ACT2/1200XL

X

X

ACT1

X

X

(*) Supported for analysis only.

6.9.1.2 Purpose

Use this constraint to create a clock constraint at a specific source and define its waveform. The static timing analysis tool uses this information to propagate the waveform across the clock network to the clock pins of all sequential elements driven by the defined clock source. The clock information is also used to compute the slacks in the specified clock domain, display setup and hold violations, and drive optimization tools such as place-and-route.

6.9.1.3 Tools /How to Enter

You can use one or more of the following methods to enter clock constraints:

  • SDC - create_clock
  • DCF – global_clocks
  • Timer - Clocks tab
  • SmartTime - Specifying Clock Constraint

6.9.2 Create Generated Clock

6.9.2.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X*

Axcelerator

X

X

eX

X

X

SX-A

X

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only

6.9.2.2 Purpose

Use this constraint to create an internally generated clock constraint, such as clock dividers and PLL. The generated clock is defined in terms of multiplication and/or division factors with respect to a reference clock pin. When the reference clock pin changes, the generated clock is updated automatically.

6.9.2.3 Tools /How to Enter

You can use one or more of the following methods to enter clock constraints:

6.9.3 Remove Clock Uncertainity

6.9.3.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X

X

Axcelerator

X*

X

eX

X

SX-A

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

6.9.3.2 Purpose

Use this constraint to remove the timing uncertainty between two clock waveforms within SmartTime.

You can remove clock uncertainty constraints in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can remove clock uncertainty using the GUI tools in the Designer software.

6.9.3.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to remove clock uncertainty:

  • SDC – remove_clock_uncertainty
  • SmartTime - Specifying Clock-to-Clock Uncertainty Constraint

6.9.4 Set Clock Latency

6.9.4.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X

X

Axcelerator

X*

X

eX

X

SX-A

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

6.9.4.2 Purpose

Use this constraint to define the delay between an external clock source and the definition pin of a clock within SmartTime.

You can set clock latency constraints in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can set clock latency using the GUI tools in the Designer software when you implement your design.

6.9.4.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set clock latency:

6.9.5 Set Clock Uncertainty Constraint

6.9.5.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X

X

Axcelerator

X*

X

eX

X

SX-A

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

6.9.5.2 Purpose

Use this constraint to define the timing uncertainty between two clock waveforms or maximum skew within SmartTime.

You can set clock uncertainty constraints in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can set clock uncertainty using the GUI tools in the Designer software when you implement your design.

6.9.5.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set clock uncertainty:

  • SDC – set_clock_uncertainty
  • SmartTime - Specifying Clock-to-Clock Uncertainty Constraint

6.9.6 Set Disable Timing Constraint

6.9.6.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

ProASIC

Axcelerator

X (including RTAX-S)

X

eX

SX-A

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

6.9.6.2 Purpose

Use this constraint disable the timing arc in the specified ports on a path.

You can disable the timing arc in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can disable the timing arc using the GUI tools in the Designer software when you implement your design.

6.9.6.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set maximum delay exception constraints:

  • SDC – set_disable_timing
  • SmartTime – Specifying Disable Timing Constraint

6.9.7 Set False Path

6.9.7.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

DCF

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X

Axcelerator

X

X

eX

X***

X

X

SX-A

X***

X

X

SX

X

X

MX

X

X

3200DX

X

X

ACT3

X

X

ACT2/1200XL

X

X

ACT1

X

X

(*) Supported for analysis only.

(***) Only the -through option is supported for layout.

6.9.7.2 Purpose

Use this constraint to identify paths in the design that should be disregarded during timing analysis and timing optimization.

By definition, false paths are paths that cannot be sensitized under any input vector pair. Therefore, including false paths in timing calculation may lead to unrealistic results. For accurate static timing analysis, it is important to identify the false paths.

You can set false paths constraints in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can set false paths using the GUI tools in the Designer software when you implement your design.

6.9.7.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set false paths:

  • SDC – set_false_path
  • DCF -global_stops
  • Timer - Breaks Tab
  • SmartTime - Specifying False Path Constraint

6.9.8 Set Input Delay

6.9.8.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X

Axcelerator

X

X

eX

X*

X

SX-A

X*

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

(**) Supported for layout only.

6.9.8.2 Purpose

Use this constraint to define the arrival time relative to a clock.

6.9.8.3 Tools /How to Enter

You can use one or more of the following methods to set input delay constraint:

6.9.9 Set Load on Output Port

6.9.9.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

DCF

I/O Attribute Editor

PinEditor

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

ProASIC

X

Axcelerator

X

X

eX

X

X

X

SX–A

X

X

X

SX

X

X

MX

X

X

3200DX

X

X

ACT3

X

X

ACT2/1200XL

X

X

ACT1

X

X

6.9.9.2 Purpose

Use this constraint to set the capacitance to a specified value on a specified port.

Delay on a given path depends on the load at the output pin of the device. For an accurate static timing analysis of a given design, it is important to set the load on the port which can be taken into account for delay calculations.

6.9.9.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set the load on a port:

  • SDC – set_load
  • DCF – pin_loads
  • I/O Attribute Editor – Editing I/O Attributes
  • PinEditor (non–MVN) – Specifying Capacitance
  • SmartTime Constraints Editor GUI – Changing Output Port Capacitance

You can also set the output load using the pin_assign command in a Tcl script.

6.9.10 Set Maximum Delay

6.9.10.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

DCF

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X

Axcelerator

X

X

eX

X**

X

X

SX-A

X**

X

X

SX

X

X

MX

X

X

3200DX

X

X

ACT3

X

X

ACT2/1200XL

X

X

ACT1

X

X

(*) Supported for analysis only.

(**) the -through option is not supported for layout.

6.9.10.2 Purpose

Use this constraint to set the maximum delay exception between the specified ports on a path.

You can set maximum delay exception in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can set maximum delay exceptions using the GUI tools in the Designer software when you implement your design.

6.9.10.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set maximum delay exception constraints:

  • SDC – set_max_delay
  • DCF – pin_loads, max_delays
  • Timer – Paths Tab
  • SmartTime – Specifying Maximum Delay Constraint

6.9.11 Set Minimum Delay

6.9.11.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

DCF

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X

Axcelerator

X

X

eX

X**

X

X

SX-A

X**

X

X

SX

X

X

MX

X

X

3200DX

X

X

ACT3

X

X

ACT2/1200XL

X

X

ACT1

X

X

(*) Supported for analysis only.

(**) the -through option is not supported for layout.

6.9.11.2 Purpose

Use this constraint to set the minimum delay exception between the specified ports on a path.

You can set minimum delay exception in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can set minimum delay exceptions using the GUI tools in the Designer software when you implement your design.

6.9.11.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set maximum delay exception constraints:

  • SDC – set_min_delay
  • SmartTime – Specifying minimum delay constraint

6.9.12 Set Multicycle Path

6.9.12.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X

Axcelerator

X

X

eX

X*

X

SX-A

X*

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

6.9.12.2 Purpose

Use this constraint to identify paths in the design that take multiple clock cycles.

You can set multicycle path constraints in an SDC file, which you can either create yourself or generate with Synthesis tools, at the same time you import the netlist. Alternatively, you can set multicycle paths using the GUI tools in the Designer software when you implement your design.

6.9.12.3 Tools /How to Enter

You can use one or more of the following commands or GUI tools to set multicycle paths constraints:

6.9.13 Set Output Delay

6.9.13.1 Families Supported

The following table shows which families support this constraint and which file formats and tools you can use to enter or modify it:

Families

SDC

Timer/SmartTime

IGLOO

X

X

SmartFusion

X

X

Fusion

X

X

ProASIC3

X

X

ProASIC PLUS

X

X

ProASIC

X*

X

Axcelerator

X

X

eX

X*

X

SX-A

X*

X

SX

MX

3200DX

ACT3

ACT2/1200XL

ACT1

(*) Supported for analysis only.

6.9.13.2 Purpose

Use this constraint to set the output delay of an output relative to a clock.

6.9.13.3 Tools /How to Enter

You can use one or more of the following methods to set output delay constraints: