mirror of https://github.com/VLSIDA/OpenRAM.git
Some techs don't need m1 power pins
This commit is contained in:
parent
0af4263edb
commit
7e054a51e2
|
|
@ -926,13 +926,14 @@ class layout(lef.lef):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def add_power_pin(self, name, loc, rotate=90):
|
def add_power_pin(self, name, loc, rotate=90, m1_too=True):
|
||||||
"""
|
"""
|
||||||
Add a single power pin from M3 down to M1 at the given center location
|
Add a single power pin from M3 down to M1 at the given center location
|
||||||
"""
|
"""
|
||||||
self.add_via_center(layers=("metal1", "via1", "metal2"),
|
if m1_too:
|
||||||
offset=loc,
|
self.add_via_center(layers=("metal1", "via1", "metal2"),
|
||||||
rotate=float(rotate))
|
offset=loc,
|
||||||
|
rotate=float(rotate))
|
||||||
via=self.add_via_center(layers=("metal2", "via2", "metal3"),
|
via=self.add_via_center(layers=("metal2", "via2", "metal3"),
|
||||||
offset=loc,
|
offset=loc,
|
||||||
rotate=float(rotate))
|
rotate=float(rotate))
|
||||||
|
|
|
||||||
|
|
@ -138,7 +138,7 @@ class bitcell_array(design.design):
|
||||||
inst = self.cell_inst[row,col]
|
inst = self.cell_inst[row,col]
|
||||||
for pin_name in ["vdd", "gnd"]:
|
for pin_name in ["vdd", "gnd"]:
|
||||||
for pin in inst.get_pins(pin_name):
|
for pin in inst.get_pins(pin_name):
|
||||||
self.add_power_pin(pin_name, pin.center(), 90)
|
self.add_power_pin(pin_name, pin.center(), 0, pin.layer=="metal1")
|
||||||
|
|
||||||
def analytical_delay(self, slew, load=0):
|
def analytical_delay(self, slew, load=0):
|
||||||
from tech import drc
|
from tech import drc
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue