Open the synth dcp
for floorplanning the first
configuration (Config1). Ensure that the HD.ISOLATED is set to True for the following modules, .
- Assign package pins and I/O ports for the design. Run the
following command from the Tcl console to assign package pins and I/O
ports.
source ./sources/pins.xdc
-
Create Pblocks for Reconfigurable
Partitions. Create a Pblock for
rp1
and assign site ranges for the Pblock. Run the following command from the Tcl console to create a Pblock for therp1
.source ./sources/pb_rp_shift.xdc
- Similarly, create a Pblock for
rp2
by running the following command from the Tcl console.source ./sources/pb_rp_count.xdc
After running the floorplan, the device looks like Figure 1.
Figure 1. Device View after the RP Floorplan - Save the design. Run the DFX DRCs by opening Reports -> Report DRC…. Select DFX DRCs, and click OK
to run the DRCs.Figure 2. DFX DRCs Selection Window
After running the DFX DRCs, you can see there are no warnings or errors. There are two advisory messages. You can ignore those messages as they will resolve after creating the Pblock for the static region which is the
static_iso_wrapper
. - Draw Pblocks for the Isolated Modules.
- Draw a Pblock for the static Isolated Module which is the
static_iso_wrapper
. Run the following command from the Tcl console.source ./sources/pb_iso_wrapper.xdc
- Draw a Pblock for the isolated module shift (
iso_2
) inside the Reconfigurable Partitionrp1
. Run the following command from the Tcl console:source ./sources/pb_shift_right.xdc
- Draw a Pblock for the Isolated Module count (
iso_3
) inside of the Reconfigurable Partitionrp2
. Run the following command from the Tcl console:source ./sources/pb_count_up.xdc
- Save the constraints by saving the design.Note: Ignore the constraints order changed warning.
- Draw a Pblock for the static Isolated Module which is the
- Run VIV
DRCs. These are IDF DRCs which are updated for the IDF+DFX flow.
Under Report DRC, select and . Click OK to run the
DRCs.Figure 3. IDF+DFX DRCs Selection WindowNote: Do not select IDF_VIV2-5 and IDF_VIV2-6 as the design is not implemented yet. After the DRC run is completed you can see many IDF-4 violations, as shown in Figure 4.Figure 4. VIV Errors for PU Adjacency (IDF4_VIV2-4)
-
Correct the floorplan
violation. IDF highly recommends taking advantage of the highlighting features of the Vivado tools. The following Tcl script highlights all the Pblocks in the design:
Shading the Pblocks tells the user what resources are included in it. Although, shading is visible when the Pblock is selected, highlighting it helps for better visibility. Additionally, it helps to differentiate between different Pblocks. In a highlighted Pblock, resources that have color are added to the Pblock, and the regions that are black are not included.Set pblocks [get_pblocks *];set ci 1;foreach pblock $pblocks {highlight_objects -color_index [expr {1 + ($ci % 19)}] [get_pblocks $pblock]; incr ci}
Perform the following to correct the IDF violations.
- Click the first violation from the DRC report window.
This selects the violating Programmable Units (PU) in the device view.
Refer to
Isolation Design Flow for UltraScale+ FPGAs and Zynq
UltraScale+ MPSoCs (XAPP1335) for
details on PU. You can select multiple violations to see the
corresponding violating PUs.Figure 5. Violating PUs on Device View
- Click the first violation from the DRC report window.
This selects the violating Programmable Units (PU) in the device view.
Refer to
Isolation Design Flow for UltraScale+ FPGAs and Zynq
UltraScale+ MPSoCs (XAPP1335) for
details on PU. You can select multiple violations to see the
corresponding violating PUs.