Get a list of register cells or pins in the current design
Syntax
all_registers [‑clock <args>] [‑rise_clock <args>] [‑fall_clock <args>]
[‑cells] [‑data_pins] [‑clock_pins] [‑async_pins] [‑output_pins]
[‑level_sensitive] [‑edge_triggered] [‑no_hierarchy] [‑quiet]
[‑verbose]
Returns
List of cell or pin objects.
Usage
Name | Description |
---|---|
[-clock]
|
Consider registers of this clock |
[-rise_clock]
|
Consider registers triggered by clock rising edge |
[-fall_clock]
|
Consider registers triggered by clock falling edge |
[-cells]
|
Return list of cells (default) |
[-data_pins]
|
Return list of register data pins |
[-clock_pins]
|
Return list of register clock pins |
[-async_pins]
|
Return list of async preset/clear pins |
[-output_pins]
|
Return list of register output pins |
[-level_sensitive]
|
Only consider level-sensitive latches |
[-edge_triggered]
|
Only consider edge-triggered flip-flops |
[-no_hierarchy]
|
Only search the current instance |
[-quiet]
|
Ignore command errors |
[-verbose]
|
Suspend message limits during command execution |
Description
Returns a list of sequential register cells or register pins in the current design.
The list of returned objects can be limited by the use of the arguments described below. You can limit the list of registers returned to a specific clock or clocks, or to registers triggered by the rising or falling edge of a specified clock.
The list of registers returned by all_registers
can also be limited or reduced by the filter
command to filter according to properties assigned to the registers. Properties of an object can be returned by the list_property
or report_property
commands.
You can also get a list of the pins of collected registers instead of the register objects by specifying one or more of the pin arguments.
Arguments
-clock
<args> - (Optional) Return a list of all registers whose clock pins are in the fanout of the specified clock.
-rise_clock
<args> - (Optional) Return a list of registers triggered by the rising edge of the specified clocks.
-fall_clock
<args> - (Optional) Return a list of registers triggered by the falling edge of the specified clocks.
-clock
, -rise_clock
, and -fall_clock
in the same command.
-cells
- (Optional) Return a list of register cell objects as opposed to a list of pin objects. This is the default behavior of the command.
-data_pins
- (Optional) Return a list of data pins of all registers in the design, or of the registers that meet the search requirement.
-clock_pins
- (Optional) Return a list of clock pins of the registers that meet the search requirement.
-async_pins
- (Optional) Limit the search to asynchronous pins of the registers that meet the search requirement.
-output_pins
- (Optional) Return a list of output pins of the registers that meet the search requirement.
-*_pins
arguments separately. If you specify multiple arguments, only one argument is applied in the following order of precedence: -data_pins
, -clock_pins
, -async_pins
, -output_pins
.
-level_sensitive
- (Optional) Return a list of the level-sensitive registers or latches.
-edge_triggered
- (Optional) Return a list of the edge-triggered registers or flip-flops.
-no_hierarchy
- (Optional) Do not search the hierarchy of the design. Only search in the level of the current_instance
.
-quiet
- (Optional) Execute the command quietly, returning no messages from the command. The command also returns TCL_OK regardless of any errors encountered during execution.
-verbose
- (Optional) Temporarily override any message limits and return all messages from this command.
set_msg_config
command.Examples
all_registers -fall_clock [all_clocks]
set_min_delay 2.0 -to [all_registers -clock CCLK -data_pins]
filter [all_registers -clock clk_A] {name =~ *meta*}