Resize pin bus in the current design
Syntax
resize_pin_bus [‑from <arg>] [‑to <arg>] [‑quiet] [‑verbose]
<pin_bus_name>...
Usage
Name | Description |
---|---|
[-from]
|
New starting bus index |
[-to]
|
New ending bus index |
[-quiet]
|
Ignore command errors |
[-verbose]
|
Suspend message limits during command execution |
<pin_bus_name>
|
Name of the pin bus to resize |
Categories
Description
Resize an existing bus pin, to grow the bus, shrink the bus, or renumber the current range of pin indexes. You can only do a single grow, shrink, or renumber operation with each command.
- You can grow the bus by indicating a new range of pin indexes outside the current range of indexes. Growing the bus leaves existing pins connected as they currently are.
- You can shrink the bus by indicating a new range of pin indexes inside the current range of indexes. Shrinking the bus, eliminates connections to removed bus pins, but leaves the remaining pins connected as they currently are.
- You can renumber the current bus indexes by providing a new range of pin indexes with the same width as the current range. Renumbering pins changes the pin index, but does not otherwise change connections.
write_checkpoint
command, or may be exported to a netlist file such as Verilog, VHDL, or EDIF, using the appropriate write_*
command.
This command returns nothing if successful, and returns an error if it fails.
Arguments
-from <arg>
- (Optional) The new starting index of the specified bus pin.
-to <arg>
- (Optional) The new ending index of the specified bus pin.
-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.<bus_pin_name> - (Required) The name of the bus pin to modify. You must specify the pin names hierarchically from the cell instance the pin is assigned to. Pins created at the top-level of the design are ports, and should be resized with the resize_port_bus
command.
Examples
The following example creates a blackbox cell, then creates a 24-bit bidirectional bus for the specified hierarchical cell, then resizes the bus pin to expand the width to 32-bits, then renumbers the index to include negative bus indexes:
create_cell -reference dmaBlock -black_box usbEngine0/myDMA
create_pin -direction INOUT -from 0 -to 23 usbEngine0/myDMA/dataBus
resize_pin_bus -from 0 -to 31 usbEngine0/myDMA/dataBus
resize_pin_bus -from -16 -to 15 usbEngine0/myDMA/dataBus