Step 2: Create Levels of Hierarchy in the Block Design - 2024.1 English

Vivado Design Suite Tutorial: Dynamic Function eXchange (UG947)

Document ID
Release Date
2024.1 English

In this section, split the design into two hierarchical instances. The creation of a level of hierarchy for the static part of the design is not required. This is done simply to organize the design and focus attention on the dynamic region, but could also be used for easier floor planning for implementation if desired. The level of hierarchy for the Reconfigurable Partition is required, as it is converted to a block design container.

Follow the instructions below or source create_rp1_bdc.tcl to automate the steps.

For the reconfigurable part of the design, these steps show how to create a level of hierarchy for all elements at once.

  1. Ctrl-click to select these four instances in the block design: axi_noc_1, smartconnect_1, axi_gpio_1, and xlconstant_1. Then right-click on one of these four instances and select Create Hierarchy.

  2. In the resulting dialog box, name the hierarchy rp1 and click OK.

    Levels of hierarchy can also be built incrementally, adding IP one at a time. The hierarchical boundary is flexible until it is converted to a block design container.

  3. Right-click on the Versal CIPS instance and select Create Hierarchy.
  4. In the resulting dialog box, name the hierarchy static_region and click OK.

  5. One by one (or by using ctrl-click), select all remaining instances (other than rp1) and drag and drop them into the static_region level of hierarchy.

    The resulting block design can be cleaned up by running Regenerate Layout, and each level of the hierarchy can be collapsed. The resulting block design should look like this:

  6. Right-click on the canvas to select Validate Design, then save the block design.