Editing Configurations - Editing Configurations - 2026.1 English - UG909

Vivado Design Suite User Guide: Dynamic Function eXchange (UG909)

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

With a set of RMs defined, Configurations can be declared. Each Configuration is a combination of the static logic plus one RM per RP; each Configuration is a full design image.

Although each Configuration can be created manually, the simplest path is to let the Vivado tools create the minimum set of Configurations automatically. To do this, select the automatically create configurations link in the middle of this screen when targeting 7 series or UltraScale devices. When targeting or Versal devices, select either Standard DFX or Abstract Shell.Selecting Standard DFX uses full static checkpoints, and the flow described in this section. Selecting Abstract Shell uses the Abstract Shell project flow.

The automatic configuration (or Standard DFX) selection creates as many Configurations as necessary to ensure that all RMs are included at least once. These options are only available if no Configurations have been defined yet.

Figure 1. Edit Configurations Before Creating Any Configurations

If one Partition Definition has more RMs than another, a greybox RM is automatically used for any RP that has all its RMs covered by prior Configurations. These default Configurations can be modified or renamed, and additional Configurations may be created if desired.

Tip: Greybox modules are different than black box modules, because they are not truly empty. Greybox RMs have tie-off LUTs inserted to complete legal design connectivity in the absence of an RM and they ensure outputs do not float during operation. To complete legal connectivity, registers can be inserted at clock input ports and clock buffers can be inserted at output ports to drive clock loads. The Vivado tools create these by calling update_design -buffer_ports on selected modules. Greybox RMs cannot be used in parent runs, because they can lead to sub-optimal results for the static design implementation and/or issues with NoC configuration.
Figure 2. Edit Configurations after Automatic Generation of Configurations
Note: If one RM is used in more than one configuration, the implementation results might be different, because place and route is performed each time, but only if the RM was initially implemented in a child run. RM implementation results are reused if they were originally done in the parent configuration. The lock_design -level routing command is set on this reused, implemented RM to lock placement and routing for all subsequent usage in child runs. This allows the Vivado project to track dependencies between parent and child.

If the automatically generated Configurations do not meet your needs, a set of Configurations can be created by selecting the + icon, and selecting the name and composition of each one.