In Non-Project Mode, you must run these reports manually. Vivado provides the following two options to create the reports
- Use Tcl commands to create an individual report.
- Use a Tcl script to create a series of reports sequentially.
Example Tcl Script
# Report the control sets sorted by clk, clkEn
report_control_sets -verbose -sort_by {clk clkEn} -file C:/Report/
cntrl_sets.rpt
# Run Timing Summary Report for post implementation timing
report_timing_summary -file C:/Reports/post_route_timing.rpt -name time1
# Run Utilization Report for device resource utilization
report_utilization -file C:/Reports/post_route_utilization.rpt
- Use Tcl command
generate_parallel_reportsto create multiple reports. -
generate_parallel_reportscommand checks interdependencies and creates the reports parallelly.
Example Tcl Script
generate_parallel_reports -reports {"report_cdc -details -file
route_report_cdc_0.rpt" "report_control_sets -verbose -file
route_report_control_sets_0.rpt" "report_design_analysis -complexity -file
route_report_design_analysis_0.rpt"}
You can generate various reports to analyze a design, but interdependencies prevent some reports from running simultaneously. The tool automatically checks these dependencies and manages the report generation. It allows you to submit a list of reports without being aware of their interdependencies. Below is the interdependency table.
| Report_generation name | Execution |
|---|---|
| report_methodology report_timing_summary report_drc report_timing report_clock_interaction report_cdc report_power report_clock_utilization report_qor_suggestions report_high_fanout_nets report_qor_assesment report_design_analysis report_dfx_summary | Sequential |
| report_bus_skew report_datasheet | Parallel, with max two threads |
| report_route_status report_incremental_reuse report_io report_utilization report_control_sets report_ssn report_ram_utilization | Parallel |