get_names (::quartus::project)
The following table displays information for the get_names Tcl command:
Tcl Package and Version |
Belongs to ::quartus::project 6.0 |
|||
Syntax | get_names [-h | -help] [-long_help] [-entity <wildcard> ] -filter <wildcard> [-library <wildcard> ] [-node_type <all|comb|reg|pin|input|output|bidir|hierarchy|mem|bus|qsf|state_machine|assigned|unassigned|all_reg|partition|virtual> ] [-observable_type <all|pre_synthesis|post_synthesis|post_fitter|post_asm|stp_pre_synthesis> ] | |||
Arguments | -h | -help | Short help | ||
-long_help | Long help with examples and possible return values | |||
-entity <wildcard> | Option to specify the entity to get names from hierarchies instantiated by the entity | |||
-filter <wildcard> | Option to specify the node's full path name and/or wildcard character(s) | |||
-library <wildcard> | Option to specify the containing library | |||
-node_type <all|comb|reg|pin|input|output|bidir|hierarchy|mem|bus|qsf|state_machine|assigned|unassigned|all_reg|partition|virtual> | Option to filter based on the specified node type. | |||
-observable_type <all|pre_synthesis|post_synthesis|post_fitter|post_asm|stp_pre_synthesis> | Option to filter based on the specified observable type | |||
Description |
Returns a filtered output collection of all matching node name IDs found in a compiled Quartus Prime project. To access each element of the output collection, use the Tcl command "foreach_in_collection". To see example usage, type "get_names -long_help" or "foreach_in_collection -long_help". If the "-node_type" option is not specified, the default value is "all". Similarly, if the "-observable_type" option is not specified, the default value is "all". The node type "pin" includes "input", "output", "bidir", "assinged" and "unassigned". The node type "qsf" include names from qsf settings file. The node type "all" includes all node types. The node type "all_reg" includes all node types and register post-fitting The value for "-observable_type" option can be one of the following: Observable Type Description --------------- ----------------------------------- all Use post-Fitter information. If it is not available, post-Synthesis information is used. Otherwise, pre-synthesis information is used if it exists. pre_synthesis Use pre-synthesis information. post_synthesis Use post-synthesis information. post_fitter Use post-Fitter information. post_asm Use post-Assembler information. The post-Assembler information is only supported for designs using the HardCopy II device family. stp_pre_synthesis Use Signal Tap pre-synthesis information. |
|||
Example Usage |
# Search for a single post-Fitter pin with the name accel and # make assignments set accel_name_id [get_names -filter accel -node_type pin -observable_type post_fitter] foreach_in_collection name_id $accel_name_id { # Get the full path name of the node set target [get_name_info -info full_path $name_id] # Set multicycle assignment set_multicycle_assignment -to $target 2 # Set location assignment set_location_assignment -to $target Pin_E22 } # Search for nodes of any post-Fitter node type with name length <= 5 # The default node type is "all" set name_ids [get_names -filter ????? -observable_type post_fitter] foreach_in_collection name_id $name_ids { # Print the name id puts $name_id # Print the node type puts [get_name_info -info node_type $name_id] # Print the full path (which excludes the current # focus entity from the path) puts [get_name_info -info full_path $name_id] } # Search for nodes of any post-Fitter node type that end in "eed". # The default node type is "all" set name_ids [get_names -filter *eed -observable_type post_fitter] foreach_in_collection name_id $name_ids { # Print the name id puts $name_id # Print the node type puts [get_name_info -info node_type $name_id] # Print the full path (which excludes the current # focus entity from the path) puts [get_name_info -info full_path $name_id] } |
|||
Return Value | Code Name | Code | String Return | |
TCL_OK | 0 | INFO: Operation successful | ||
TCL_ERROR | 1 | ERROR: Can't find active revision name. Make sure there is an open, active revision name. | ||
TCL_ERROR | 1 | ERROR: Get names cannot return <string> because the name was found in a partition that's not the root partition. Refine your get_names search pattern to exclude child partitions | ||
TCL_ERROR | 1 | ERROR: Compiler database does not exist for revision name: <string>. At the minimum, run Analysis & Synthesis (quartus_map) with the specified revision name before using this Tcl command. | ||
TCL_ERROR | 1 | ERROR: Illegal node type: <string>. Specify all, comb, reg, pin, hierarchy, or bus. | ||
TCL_ERROR | 1 | ERROR: Illegal observable type: <string>. Specify all, pre_synthesis, post_synthesis, or post_fitter. | ||
TCL_ERROR | 1 | ERROR: You must open a project before you can use this command. | ||
TCL_ERROR | 1 | ERROR: Post-Assembler compiler database does not exist for revision name: <string>. Run Assembler (quartus_asm) with the specified revision name before using this Tcl command. |