Implementing Reconfigurable Modules in Abstract Shells - 2023.2 English

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

Document ID
Release Date
2023.2 English

Any new RMs can be implemented within Abstract Shells. Each RM can be implemented in parallel in separate Vivado session as each RP is managed independently. The implementation flow is no different than the standard DFX flow starting with the full static design image.

Important: Use the same methodology in the Abstract Shell run as you used in the run that created the original implementation. For example, if the parent implementation uses the add_files / link_design approach (used in project mode), use the same approach for the Abstract Shell child implementation runs. If you used open_checkpoint and read_checkpoint -cell to build the initial design, continue that approach for the Abstract Shell implementation run.

The flow through the implementation tools follows the same steps from link_design (or read_checkpoint -cell) through place_design and route_design, and like the standard flow, actions performed by the Vivado tools focus only on the target RM to be implemented. Any new constraints – such as placement directives, floorplanning, and timing goals – can be applied and scoped to the target RM.

When route_design is complete, call write_checkpoint to save the entire Abstract Shell with the implemented RM and call and write_checkpoint -cell to save just the implemented RM alone. The RM checkpoint alone can be read back into the full static design checkpoint (along with other RM checkpoints for other RPs if necessary) to assemble a complete design.