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 will be 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 will be 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 will be 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 will be shown in the report are ones that participate in clock domain crossings. This means that transfers to/from the same clock will not be 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 |