Incremental Implementation Controls - 2021.1 English

Vivado Design Suite User Guide: Implementation (UG904)

Document ID
UG904
Release Date
2021-08-30
Version
2021.1 English

If no command arguments (other than -incremental) are specified, the tool reuses as much of the reference checkpoint information that it can. However, command arguments can be applied to the read_checkpoint -incremental command that give the user control over what is used and not reused.

-auto_incremental Option

This enables the automatic incremental flow described in Automatic Incremental.

-reuse_objects Option

-reuse_objects <cell objects>

The -reuse_objects can take either cells, clock regions or SLRs as an argument. When specifying cells, use the get_cells command. When using get_cells, hierarchical or leaf cells can be specified along with cell types when using the -filter switch. When specifying clock regions (get_clock_regions) or SLRs (get_slrs) for reuse, the cells in the region of the reference checkpoint will be reused if they exist in the incremental run. When specifying any of the arguments, net reuse is inferred based on the cells identified for reuse.

-fix_objects Option

-fix_objects <cell objects>

The -fix_objects option can be used to lock a subset of cells. These cells are not touched by the incremental place and route tools. The -fix_objects option only works on cells that match and are identified for cell reuse. This is the full design space when -reuse_objects is not specified, or the associated cells when -reuse_objects is specified.

Examples

The following are examples of their use:

  • To reuse and fix only Block Memory placement:
    read_checkpoint -incremental routed.dcp -reuse_objects [all_rams] -fix_objects [all_rams]
  • To reuse and fix only DSP placement:
    read_checkpoint -incremental routed.dcp -reuse_objects [all_dsps] -fix_objects [all_dsps]
  • To reuse both Block Memory and DSP placement, and fix the placement of all cells specified for reuse:
    read_checkpoint -incremental routed.dcp -reuse_objects [all_rams] \
    -reuse_objects [all_dsps] -fix_objects [current_design]
    
  • To reuse all cells at and below the level of hierarchy indicated and allow the tools some flexibility to deal with changes in critical areas:
    read_checkpoint -incremental routed.dcp \
    -reuse_objects [get_cells <cell_name>] -fix_objects [get_cells <cell_name>]