report_cdc_viewer (::quartus::sta)
The following table displays information for the report_cdc_viewer Tcl command:
Tcl Package and Version |
Belongs to ::quartus::sta 1.0 |
|||
Syntax | report_cdc_viewer [-h | -help] [-long_help] [-append] [-clock_groups] [-file <name> ] [-from_clock <names> ] [-fully_cut] [-hierarchy] [-hold] [-inactive] [-less_than_slack <slack limit> ] [-list] [-panel_name <name> ] [-recovery] [-removal] [-setup] [-show_empty] [-show_non_crossing] [-stdout] [-summary] [-timed] [-to_clock <names> ] [-tree] | |||
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 is overwritten. This option is not supported for HTML files. | |||
-clock_groups | Show transfers cut by clock groups | |||
-file <name> | Sends the results to an ASCII or HTML file. Depending on the extension | |||
-from_clock <names> | Valid source clocks (string patterns are matched using Tcl string matching) | |||
-fully_cut | Include transfers where all paths are cut by false path assignments | |||
-hierarchy | When writing to a panel or a non-list file, show child clocks as nested within their parent clocks | |||
-hold | Option to report clock hold paths | |||
-inactive | Show transfers between inactive clocks | |||
-less_than_slack <slack limit> | Ignore paths with slack values greater or equal to the specified limit | |||
-list | When writing to file, output all clock transfers in a list instead of a grid | |||
-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 | |||
-setup | Option to report clock setup paths | |||
-show_empty | Include all clocks in the report, even ones that launch/latch no paths | |||
-show_non_crossing | Include transfers that do not cross a clock domain (i.e. transfers to/from the same clock) | |||
-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. | |||
-summary | Do not display slack information | |||
-timed | Include all timed transfers (i.e. those not fully cut by false paths or clock groups) | |||
-to_clock <names> | Valid destination clocks (string patterns are matched using Tcl string matching) | |||
-tree | Alias for the -hierarchy option | |||
Description |
Generates a Clock Domain Crossing Viewer (CDC Viewer) report. It displays all clock transfers (i.e., data paths between one clock domain and another clock domain) in a design, as well as data on each transfer: the number of uncut & cut paths in the transfer, the worst-case and total-negative slack of the transfer, and the tightest setup/hold/removal/recovery relationship between the clocks in the transfer. The report indicates what clock transfers are cut ("false paths") by set_clock_groups or clock-to-clock set_false_path commands, and which clock transfers are ignored due to clocks marked as inactive by set_active_clocks. 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. When directed to a panel or a file without the -list option, the CDC Viewer report will be a grid, where each cell represents paths transferring between a source and destination clock. When directed to a panel or an HTML file, the grid is color- coded to highlight passing, failing, cut, and inactive transfers, as well as clock groups. When directed to the Tcl console or a file with the -list option, a list of clock transfers are reported. The -setup, -hold, -recovery, and -removal options determine the analysis type of the report, particularly the reporting of false_paths that apply to only one analysis type. If you do not specify any of these options, a report is generated for each analysis. By default, the only transfers that are shown in the report are ones that participate in clock domain crossings. This means that transfers to/from the same clock are not shown, even if they fail timing. To show all transfers, use the -show_all option. The generated report can be customized by a variety of options. Refer to the help text of those options for more information. |
|||
Example Usage |
project_open top create_timing_netlist -skip_dat report_cdc_viewer -panel_name 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: Netlist must be updated. Run update_timing_netlist |