Skip to content

Commit 2867045

Browse files
committed
adding cleaned up power_switch.py
Signed-off-by: Don MacMillen <[email protected]>
1 parent d6daae1 commit 2867045

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

src/pdn/test/power_switch.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# test for power switch, which is not implemented
2+
from openroad import Design, Tech
3+
import pdn_aux
4+
import helpers
5+
6+
tech = Tech()
7+
tech.readLef("sky130hd/sky130hd.tlef")
8+
tech.readLef("sky130hd/sky130_fd_sc_hd_merged.lef")
9+
tech.readLef("sky130_power_switch/power_switch.lef")
10+
11+
design = Design(tech)
12+
design.readDef("sky130_power_switch/floorplan.def")
13+
14+
pdn_aux.add_global_connection(design, net_name="VDD", power=True, pin_pattern="^VDDG$")
15+
pdn_aux.add_global_connection(design, net_name="VDD_SW", power=True, pin_pattern="^VPB$")
16+
pdn_aux.add_global_connection(design, net_name="VDD_SW", pin_pattern="^VPWR$")
17+
pdn_aux.add_global_connection(design, net_name="VSS", power=True, pin_pattern="^VGND$")
18+
pdn_aux.add_global_connection(design, net_name="VSS", power=True, pin_pattern="^VNB$")
19+
20+
pdn_aux.set_voltage_domain(design, power="VDD", ground="VSS", switched_power_name="VDD_SW")
21+
pdn_aux.define_power_switch_cell(design, name="POWER_SWITCH", control="SLEEP", acknowledge="SLEEP_OUT",
22+
power_switchable="VPWR", power="VDDG", ground="VGND")
23+
pdn_aux.define_pdn_grid_real(design, name="Core", power_switch_cell="POWER_SWITCH",
24+
power_control="nPWRUP", power_control_network="DAISY")
25+
26+
pdn_aux.add_pdn_stripe(design, layer="met1", width=0.48, offset=0, followpins=True)
27+
pdn_aux.add_pdn_stripe(design, layer="met4", width=1.600, pitch=27.140, offset=13.570)
28+
pdn_aux.add_pdn_stripe(design, layer="met5", width=1.600, pitch=27.200, offset=13.600)
29+
30+
pdn_aux.add_pdn_connect(design, layers=["met1", "met4"])
31+
pdn_aux.add_pdn_connect(design, layers=["met2", "met4"])
32+
pdn_aux.add_pdn_connect(design, layers=["met4", "met5"])
33+
34+
design.getPdnGen().report()

0 commit comments

Comments
 (0)