Complexity Report - 2023.1 English

Vivado Design Suite User Guide: Design Analysis and Closure Techniques (UG906)

Document ID
Release Date
2023.1 English

The complexity report shows the Rent Exponent, Average Fanout, and distribution of the types of leaf cells of the top-level design and/or of hierarchical cells that contain more than 1000 leaf cells. The Rent exponent is the relationship between the number of ports and the number of cells of a netlist partition when recursively partitioning the design with a min-cut algorithm. It is computed with similar algorithms as the ones used by the placer during global placement. Therefore it can provide a good indication of the challenges seen by the placer, especially when the hierarchy of the design matches well the physical partitions found during global placement.

The Rent Exponent is defined by the Rent's rule:

ports = constant x cellsRent
log(ports) = Rent x log(cells) + constant

A design with higher Rent exponent corresponds to a design where the groups of highly connected logic also have strong connectivity with other groups. This usually translates into a higher utilization of global routing resources and an increased routing complexity. The Rent exponent provided in this report is computed on the unplaced and unrouted netlist.

After placement, the Rent exponent of the same design can differ as it is based on physical partitions instead of logical partitions. The post-placement Rent exponent is not reported by the Report Design Analysis command as it is recommended to analyze the congestion reports once the design is placed instead.

Report Design Analysis runs in Complexity Mode when you do either of the following:

  • Check the Complexity option in the Report Design Analysis dialog box Options tab.
  • Execute the report_design_analysis Tcl command and use any of the options shown in the following table.
    Table 1. Options that Run Report Design Analysis in Complexity Mode
    Tcl Option Description
    -complexity Must be specified to run the report design analysis in Complexity Mode.
    -cells <arg> Specifies the hierarchical cells to use when analyzing the complexity.
    -hierarchical_depth <arg> The levels of hierarchy to examine at the top level by default or at the level of the cells specified by the -cells option.