In this section, you will 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 what will be the Reconfigurable Partition, however, is required, as this will be 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.
- 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. Figure 1. IP Selected to Create a Hierarchy
- 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.Figure 2. Create a Level of Hierarchy Called rp1
- Right-click on the Versal CIPS instance and select Create Hierarchy.
- In the resulting dialog box, name the hierarchy
static_region and click OK.Figure 3. Create a Level of Hierarchy Called static_region
- 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:Figure 4. Top-Level Block Design with Hierarchy Inserted
- Right-click on the canvas to select Validate Design, then save the block design.