Read UPF Utility
Contents
Read UPF Utility#
This module contains functionality to read, and modify informationfrom Unified Power Format (UPF) files.
Commands#
Note
Parameters in square brackets
[-paramparam]
are optional.Parameters without square brackets
-param2param2
are required.
Read UPF#
Sources the UPF file.
read_upf-filefile
Options#
Switch Name | Description |
---|---|
| Path to |
Write UPF#
Writes the UPF file.
write_upffile_name
Options#
Switch Name | Description |
---|---|
| Filename argument. |
Create Power Domain#
This command creates power domain for a group of modules.
create_power_domain[-elementselements]name
Options#
Switch Name | Description |
---|---|
| List of module paths that belong this this domain OR |
| Domain name. |
Create Logic Port#
This command creates logic port. Direction must be specified from:in
,out
,inout
.
create_logic_port[-directiondirection]port_name
Options#
Switch Name | Description |
---|---|
| Direction of the port ( |
| Port name. |
Create Power Switch#
This command creates power switch.
create_power_switch[-domaindomain][-output_supply_portoutput_supply_port][-input_supply_portinput_supply_port][-control_portcontrol_port][-on_stateon_state]name
Options#
Switch Name | Description |
---|---|
| Power domain name. |
| Output supply port of the switch. |
| Input supply port of the switch. |
| Control port on the switch. |
| One of { |
| Power switch name. |
Create or Update Isolation Strategy#
This command creates or update isolation strategy.
set_isolation[-domaindomain][-applies_toapplies_to][-clamp_valueclamp_value][-isolation_signalisolation_signal][-isolation_senseisolation_sense][-locationlocation][-update]name
Options#
Switch Name | Description |
---|---|
| Power domain |
| Restricts the strategy to apply one of these ( |
| Value the isolation can drive ( |
| The control signal for this strategy. |
| The active level of isolation control signal ( |
| Domain in which isolation cells are placed ( |
| Only available if using existing strategy, will error if the strategy doesn’t exist. |
| Isolation strategy name. |
Set Interface cell#
This command sets the interface cell.
use_interface_cell-domaindomain-strategystrategy-lib_cellslib_cellsinterface_implementation_name
Options#
Switch Name | Description |
---|---|
| Power domain name. |
| Isolation strategy name. |
| List of lib cells that could be used. |
| For compatibility only. OpenRoad doesn’t use it. |
Set Domain Area#
This command sets the power domain area.
set_domain_areadomain_name-area{llxllyurxury}
Options#
Switch Name | Description |
---|---|
| Power domain name. |
| x-/y- coordinates in microns for the lower left and upper right corners of the power domain area. |
Map existing power switch#
This command maps existing power switch.
map_power_switch[-switch_name_listswitch_name_list][-lib_cellslib_cells][-port_mapport_map]
Options#
Switch Name | Description |
---|---|
| A list of switches (as defined by create_power_switch) to map. |
| A list of library cells that could be mapped to the power switch |
| A map that associates model ports defined by create_power_switch to logical ports |
Set Level Shifter#
This command sets level shifter.Options coming soon.
set_level_shifter [-domain domain] \ [-elements elements] \ [-exclude_elements exclude_elements] \ [-source source] \ [-sink sink] \ [-use_functional_equivalence use_functional_equivalence] \ [-applies_to applies_to] \ [-applies_to_boundary applies_to_boundary] \ [-rule rule] \ [-threshold threshold] \ [-no_shift] \ [-force_shift] \ [-location location] \ [-input_supply input_supply] \ [-output_supply output_supply] \ [-internal_supply internal_supply] \ [-name_prefix name_prefix] \ [-name_suffix name_suffix] \ [-instance instance] \ [-update] \ [-use_equivalence use_equivalence] \ name
Options#
Switch Name | Description |
---|---|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
Set Domain Voltage#
This command sets the voltage of a power domain.
set_domain_voltage [-domain domain] \ [-voltage voltage]
Options#
Switch Name | Description |
---|---|
| Power domain name. |
| Power domain voltage. The allowed values are |
Set Level Shifter Cell#
This command sets the library cell used for level shifter.
set_level_shifter_cell [-level_shifter level_shifter] \ [-cell_name cell_name] \ [-input_port input_port] \ [-output_port output_port]
Options#
Switch Name | Description |
---|---|
| KIV. |
| KIV. |
| KIV. |
| KIV. |
Example scripts#
Example script demonstrating how to runupf
related commands can be found here:
./test/upf_test.tcl
Regression tests#
There are a set of regression tests in./test
. For more information, refer to thissection.
Simply run the following script:
./test/regression
Limitations#
FAQs#
Check outGitHub discussionabout this tool.
License#
BSD 3-Clause License. SeeLICENSE file.