OpenROAD icon indicating copy to clipboard operation
OpenROAD copied to clipboard

Missing UPF commands and options

Open titan73 opened this issue 1 year ago • 1 comments

Describe the bug

Missing commands:

  • [ ] upf_version
  • [ ] create_supply_port
  • [ ] create_supply_net
  • [ ] connect_supply_net
  • [ ] create_supply_set
  • [ ] set_port_attributes
  • [ ] add_port_state
  • [ ] create_pst
  • [ ] add_pst_state

Missing options in existing commands:

create_power_domain:

  • [ ] include_scope
  • [ ] -supply

set_isolation:

  • [ ] -isolation_supply
  • [ ] -sink
  • [ ] -source

Expected Behavior

Have this commands and options

Environment

Latest openroad

To Reproduce

upf_version 2.1

create_supply_port VDDD1V2 create_supply_port -direction inout VDDD

create_supply_net VDDD create_supply_net VDDD1V2 create_supply_net GNDD

connect_supply_net -ports VDDD VDDD connect_supply_net -ports VDDD1V2 VDDD1V2 connect_supply_net -ports GNDD GNDD

create_supply_set ss_GNDD_VDDD1V2 -function {ground GNDD} -function {power VDDD1V2} create_supply_set ss_GNDD_VDDD -function {ground GNDD} -function {power VDDD}

create_power_domain PD1 -include_scope -supply {primary ss_GNDD_VDDD} create_power_domain PD2 -elements pd1v2 -supply {primary ss_GNDD_VDDD1V2}

set_port_attributes -ports out_signal_1v2 -receiver_supply ss_GNDD_VDDD1V2

add_power_state ss_GNDD_VDDD1V2 -state {on_1v2 -supply_expr {(power == {FULL_ON 1.08}) && (ground == {FULL_ON 0})}} -state {off_1v2 -supply_expr {(power == {OFF})}}

add_power_state ss_GNDD_VDDD -state {on_std -supply_expr {(power == {FULL_ON 2.25}) && (ground == {FULL_ON 0})}}

add_power_state PD1 -state {dig_on -logic_expr { (ss_GNDD_VDDD1V2 == on_1v2) && (ss_GNDD_VDDD == on_std)}} -state {dig_off -logic_expr { (ss_GNDD_VDDD1V2 == off_1v2) && (ss_GNDD_VDDD == on_std)}}

set_isolation iso_PD2_from_ss_GNDD_VDDD1V2_to_ss_GNDD_VDDD -clamp_value 0 -domain PD2 -isolation_sense low -isolation_signal pd1v2/i_isolation -isolation_supply ss_GNDD_VDDD -sink ss_GNDD_VDDD -source ss_GNDD_VDDD1V2

set_level_shifter ls_PD2_ss_GNDD_VDDD1V2_to_ss_GNDD_VDDD -domain PD2 -sink ss_GNDD_VDDD -source ss_GNDD_VDDD1V2

set_level_shifter ls_PD2_ss_GNDD_VDDD_to_ss_GNDD_VDDD1V2 -domain PD2 -sink ss_GNDD_VDDD1V2 -source ss_GNDD_VDDD

Relevant log output

No response

Screenshots

No response

Additional Context

No response

titan73 avatar Aug 18 '24 11:08 titan73

The state related methods should just be parsed and ignored as they are not relevant to PnR.

maliberty avatar Feb 21 '25 00:02 maliberty