report_design_metrics (::quartus::sta)
The following table displays information for the report_design_metrics Tcl command:
Tcl Package and Version |
Belongs to ::quartus::sta 1.0 |
|||
Syntax | report_design_metrics [-h | -help] [-long_help] [-append] [-detail <histogram|path> ] [-enable_complementary] [-extra_info <basic|all|none> ] [-fall_from <names> ] [-fall_from_clock <names> ] [-fall_through <names> ] [-fall_to <names> ] [-fall_to_clock <names> ] [-file <name> ] [-from <names> ] [-from_clock <names> ] [-hold] [-intra_clock] [-less_than_slack <slack limit> ] [-logic_depth] [-neighbor_path_num <number> ] [-neighbor_paths] [-npaths <number> ] [-nworst <number> ] [-pairs_only] [-panel_name <name> ] [-recovery] [-removal] [-rise_from <names> ] [-rise_from_clock <names> ] [-rise_through <names> ] [-rise_to <names> ] [-rise_to_clock <names> ] [-setup] [-stdout] [-through <names> ] [-to <names> ] [-to_clock <names> ] [-topology] | |||
Arguments | -h | -help | Short help | ||
-long_help | Long help with examples and possible return values | |||
-append | If output is sent to a file, this option appends the result to that file. Otherwise, the file will be overwritten. This option is not supported for HTML files. | |||
-detail <histogram|path> | Option to determine how much detail should be shown in the report | |||
-enable_complementary | Option to enable complementary analysis for the neighbor paths report | |||
-extra_info <basic|all|none> | Option to determine how much detail should be shown in the Extra Info report | |||
-fall_from <names> | Valid sources (string patterns are matched using Tcl string matching) | |||
-fall_from_clock <names> | Valid source clocks (string patterns are matched using Tcl string matching) | |||
-fall_through <names> | Valid through nodes (string patterns are matched using Tcl string matching) | |||
-fall_to <names> | Valid destinations (string patterns are matched using Tcl string matching) | |||
-fall_to_clock <names> | Valid destination clocks (string patterns are matched using Tcl string matching) | |||
-file <name> | Sends the results to an ASCII or HTML file. Depending on the extension | |||
-from <names> | Valid sources (string patterns are matched using Tcl string matching) | |||
-from_clock <names> | Valid source clocks (string patterns are matched using Tcl string matching) | |||
-hold | Option to report clock hold paths | |||
-intra_clock | Only report paths whose launch and latch clock are the same | |||
-less_than_slack <slack limit> | Limit the paths reported to those with slack values less than the specified limit. | |||
-logic_depth | Run the logic depth analysis | |||
-neighbor_path_num <number> | Specifies the number of before and after paths for the neighbor paths report (default=1) | |||
-neighbor_paths | Run the neighbor paths analysis | |||
-npaths <number> | Specifies the number of paths to report (default=1, or the same value as nworst, if nworst is specified. Value of 0 causes all paths to be reported but be wary that this may be slow) | |||
-nworst <number> | Specifies the maximum number of paths to report for each endpoint. If unspecified, there is no limit. If nworst is specified, but npaths is not, npaths defaults to the same value as nworst | |||
-pairs_only | When set, paths with the same start and end points are considered equivalent. Only the worst case path for each unique combination is displayed. | |||
-panel_name <name> | Sends the results to the panel and specifies the name of the new panel | |||
-recovery | Option to report recovery paths | |||
-removal | Option to report removal paths | |||
-rise_from <names> | Valid sources (string patterns are matched using Tcl string matching) | |||
-rise_from_clock <names> | Valid source clocks (string patterns are matched using Tcl string matching) | |||
-rise_through <names> | Valid through nodes (string patterns are matched using Tcl string matching) | |||
-rise_to <names> | Valid destinations (string patterns are matched using Tcl string matching) | |||
-rise_to_clock <names> | Valid destination clocks (string patterns are matched using Tcl string matching) | |||
-setup | Option to report clock setup paths | |||
-stdout | Send output to stdout, via messages. You only need to use this option if you have selected another output format, such as a file, and would also like to receive messages. | |||
-through <names> | Valid through nodes (string patterns are matched using Tcl string matching) | |||
-to <names> | Valid destinations (string patterns are matched using Tcl string matching) | |||
-to_clock <names> | Valid destination clocks (string patterns are matched using Tcl string matching) | |||
-topology | Topology Analysis (using arbitrary path analysis) | |||
Description |
Reports design metrics of the worst-case paths, with support for two report types specified by the following arguments: -logic_depth (See the help for report_logic_depth for details) -neighbor_paths (See the help for report_neighbor_paths for details) Use the "-setup", "-hold", "-recovery", or "-removal" options to specify which kind of analysis should be performed. In -logic_depth mode, "-topology" analysis can also be performed. The report can be directed to the Tcl console ("-stdout", default), a file ("-file"), the Timing Analyzer graphical user interface ("-panel_name"), or any combination of the three. You can limit the analysis performed by this command to specific start and end points, using the "-from" and "-to" options. Use the "-rise_from" and "-fall_from" options to limit the analysis to endpoints with established high or low starting states. Use the "rise_to" and "fall_to" options to limit the analysis to destination points with high or low ending states. The analysis can be further limited to clocks using the "-from_clock" and "-to_clock" options, or to specific edges of the clock using the "-rise_from_clock", "-fall_from_clock", "-rise_to_clock", and "-fall_to_clock" options. Additionally, the "-through" option can be used to restrict analysis to paths which go through specified pins or nets. Use the "rise_through" and "fall_through" options to limit the analysis to intermediate points with high or low ending states. Use "-npaths" to limit the number of paths to report. If you do not specify this option, only the single worst-case path is provided. Use the "-less_than_slack" option to limit output to all paths with slack less than the specified value, up to the number specified by "-npaths". Use "-nworst" to limit the number of paths reported for each unique endpoint. If you do not specify this option, the number of paths reported for each destination node is bounded only by the "-npaths" option. If this option is used, but "-npaths" is not specified, then "-npaths" will default to the same value specified for "-nworst". Use the "-pairs_only" option to filter the output further, restricting the results to only unique combinations of start and end points. In -logic_depth mode, Use the "-detail" option to specify the desired level of report detail. Specifiying "histogram" generates a summary showing the distibution of logic depth among the critical paths. A row will be provided for each clock and a column for each logic depth. Specifying "path" generates a table of paths as rows with a column coresponding the paths' logic depths similar to the tables reported by "report_timing" and "report_path". The default behavior is to report a histogram. |
|||
Example Usage |
project_open my_project # Always create the netlist first create_timing_netlist read_sdc my_project.sdc update_timing_netlist # Report logic depth among critical paths between # "foo" and "bar". report_design_metrics -logic_depth -from foo -to bar # Report neighbor paths among critical paths between # clocks "clk1" and "clk2" report_design_metrics -neighbor_paths -from_clock clk1 \ -to_clock clk2 # The following command is optional delete_timing_netlist project_close |
|||
Return Value | Code Name | Code | String Return | |
TCL_OK | 0 | INFO: Operation successful | ||
TCL_ERROR | 1 | ERROR: Timing netlist does not exist. Use create_timing_netlist to create a timing netlist. | ||
TCL_ERROR | 1 | ERROR: Report database is not open |