Add a MultiCycle Path - 2021.1 English

Vivado Design Suite Tutorial: Using Constraints (UG945)

Document ID
Release Date
2021.1 English

Next, you will add a multicycle path using the constraints editor.

  1. Double-click Set Multicycle Path under the Exceptions category of the tree.
  2. In the Set Multicycle Path dialog box, set the path multiplier to 2.
  3. In the Through entry box, type the following string (alternately, you can copy and paste it from here):
    [get_pins cpuEngine/or1200_cpu/or1200_alu/*]

    Notice that the Tcl command displays in the Command field.

  4. Click OK.

    A new multicycle path is added to the constraints editor in the <unsaved_constraints> section, as shown in the following figure.

    Adding a multicycle path by default pushes the setup timing to the specified number of cycles (N), but it also pushes the hold timing to N – 1 cycles. This is usually not what is intended and could cause Vivado tools to spend a lot of time fixing large hold violations. In this case you want the setup path clock. To achieve this, you need to define another multicycle path on the hold edge to 1, such that N – 1 is zero. For more information about this situation, see this link in the Vivado Design Suite User Guide: Using Constraints (UG903).

  5. Double-click Set Multicycle Path under the Exceptions category of the tree for a second time.

    Note that all the fields you entered previously are still filled in.

  6. In the Set Multicycle Path dialog box, change the Path Multiplier to 1.
  7. Select the Options tab.
  8. Under Setup/Hold, select the check box that says Use path multiplier.
  9. Use the pull-down to select hold (minimum delay).

  10. Click OK.

    Now you have a fully constrained design in memory. To save the constraints to disk, proceed to Step 5: Saving Constraints.