Timing Constraints
==================
VPR supports setting timing constraints using Synopsys Design Constraints (SDC), an industry-standard format for specifying timing constraints.

VPR's default timing constraints are explained in :ref:`default_timing_constraints`.
The subset of SDC supported by VPR is described in :ref:`sdc_commands`.
Additional SDC examples are shown in :ref:`sdc_examples`.

.. seealso:: The :ref:`Primitive Timing Modelling Tutorial <arch_model_timing_tutorial>` which covers how to describe the timing characteristics of architecture primitives.

.. _default_timing_constraints:

Default Timing Constraints
--------------------------
If no timing constriants are specified, VPR assumes default constraints based on the type of circuit being analyzed.

Combinational Circuits
~~~~~~~~~~~~~~~~~~~~~~
Constrain all I/Os on a virtual clock ``virtual_io_clock``, and optimize this clock to run as fast as possible.

*Equivalent SDC File:*

.. code-block:: tcl

    create_clock -period 0 -name virtual_io_clock
    set_input_delay -clock virtual_io_clock -max 0 [get_ports {*}]
    set_output_delay -clock virtual_io_clock -max 0 [get_ports {*}]

Single-Clock Circuits
~~~~~~~~~~~~~~~~~~~~~
Constrain all I/Os on the netlist clock, and optimize this clock to run as fast as possible.

*Equivalent SDC File:*

.. code-block:: tcl

    create_clock -period 0 *
    set_input_delay -clock * -max 0 [get_ports {*}]
    set_output_delay -clock * -max 0 [get_ports {*}]


Multi-Clock Circuits
~~~~~~~~~~~~~~~~~~~~~
Constrain all I/Os a virtual clock ``virtual_io_clock``.
Does not analyse paths between netlist clock domains, but analyses all paths from I/Os to any netlist domain.
Optimizes all clocks, including I/O clocks, to run as fast as possible.

.. warning:: By default VPR does not analyze paths between netlist clock domains.

*Equivalent SDC File:*

.. code-block:: tcl

    create_clock -period 0 *
    create_clock -period 0 -name virtual_io_clock
    set_clock_groups -exclusive -group {clk} -group {clk2}
    set_input_delay -clock virtual_io_clock -max 0 [get_ports {*}]
    set_output_delay -clock virtual_io_clock -max 0 [get_ports {*}]

Where ``clk`` and ``clk2`` are the netlist clocks in the design.
This is similarily extended if there are more than two netlist clocks.

