update_macro - update_macro - 2026.1 English - UG903

Vivado Design Suite User Guide: Using Constraints (UG903)

Document ID
UG903
Release Date
2026-07-01
Version
2026.1 English

Use update_macro to add leaf cells and RLOCs to the macro. The RLOC syntax and functionality match the RPM RLOC attribute. You must specify all cells at once; no partial or incremental definition is allowed.

update_macro Syntax

update_macro [-absolute_grid] <macro name> <cell-RLOC list>

The command arguments have the following definitions:

  • -absolute_grid is a switch to select the absolute grid for mixing slice and non-slice sites.
    • The X-Y values are the site properties RPM_X and RPM_Y.
    • The absolute grid values match RPM_GRID.
  • macro name is the name of the macro to be updated.
  • cell-RLOC list is a Tcl list of cells and RLOC pairs.
    {cell0 RLOC(cell0) cell1 RLOC(cell1) - cellN RLOC(cellN)}
    • Specify all macro cells and RLOCs at once. You cannot build a macro in steps.
    • To update an existing macro, recreate it first.

update_macro Example One

This example does the following:

  • Adds u2/sr0 and u2/sr1 to macro m1
  • Assigns u2/sr0 an RLOC of X0Y0
  • Assigns u2/sr1 an RLOC of X0Y1
update_macro m1 {u2/sr0 X0Y0 u2/sr1 X0Y1}

update_macro Example Two

This example performs the same operation with slightly different syntax.

set rlocs [list u2/sr0 X0Y0 u2/sr1 X0Y1] 
update_macro m1 $rlocs

update_macro Example Three

This example uses the absolute grid.

set rlocs {ireg X2Y38 q1reg X17Y40 q2reg X17Y40} 
update_macro -absolute_grid m2 $rlocs