mirror of https://github.com/VLSIDA/OpenRAM.git
fixed contact area issue
This commit is contained in:
parent
20d0df2947
commit
a544abebf7
|
|
@ -259,8 +259,7 @@ class layout():
|
||||||
contact_width = contact1.first_layer_width
|
contact_width = contact1.first_layer_width
|
||||||
layer_space = getattr(layout, layer1 + "_space")
|
layer_space = getattr(layout, layer1 + "_space")
|
||||||
|
|
||||||
#print(layer_stack)
|
|
||||||
#print(contact1)
|
|
||||||
pitch = contact_width + layer_space
|
pitch = contact_width + layer_space
|
||||||
|
|
||||||
return round_to_grid(pitch)
|
return round_to_grid(pitch)
|
||||||
|
|
|
||||||
|
|
@ -242,12 +242,10 @@ class pinv_dec(pinv):
|
||||||
source_pos = self.nmos_inst.get_pin("S").center()
|
source_pos = self.nmos_inst.get_pin("S").center()
|
||||||
self.add_via_stack_center(offset=source_pos,
|
self.add_via_stack_center(offset=source_pos,
|
||||||
from_layer=self.route_layer,
|
from_layer=self.route_layer,
|
||||||
to_layer=self.supply_layer,
|
to_layer=self.supply_layer)
|
||||||
min_area=True)
|
|
||||||
|
|
||||||
source_pos = self.pmos_inst.get_pin("S").center()
|
source_pos = self.pmos_inst.get_pin("S").center()
|
||||||
self.add_via_stack_center(offset=source_pos,
|
self.add_via_stack_center(offset=source_pos,
|
||||||
from_layer=self.route_layer,
|
from_layer=self.route_layer,
|
||||||
to_layer=self.supply_layer,
|
to_layer=self.supply_layer)
|
||||||
min_area=True)
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -176,10 +176,7 @@ class rom_address_control_buf(design):
|
||||||
well_type="n")
|
well_type="n")
|
||||||
self.add_via_stack_center(offset=contact_pos,
|
self.add_via_stack_center(offset=contact_pos,
|
||||||
from_layer=self.active_stack[2],
|
from_layer=self.active_stack[2],
|
||||||
to_layer=self.route_layer,
|
to_layer=self.route_layer)
|
||||||
min_area=True)
|
|
||||||
|
|
||||||
# self.add_segment_center(layer=self.)
|
|
||||||
|
|
||||||
contact_pos = vector(left_edge, gnd_pin.cy())
|
contact_pos = vector(left_edge, gnd_pin.cy())
|
||||||
self.add_via_center(layers=self.active_stack,
|
self.add_via_center(layers=self.active_stack,
|
||||||
|
|
@ -188,5 +185,4 @@ class rom_address_control_buf(design):
|
||||||
well_type="p")
|
well_type="p")
|
||||||
self.add_via_stack_center(offset=contact_pos,
|
self.add_via_stack_center(offset=contact_pos,
|
||||||
from_layer=self.active_stack[2],
|
from_layer=self.active_stack[2],
|
||||||
to_layer=self.route_layer,
|
to_layer=self.route_layer)
|
||||||
min_area=True)
|
|
||||||
|
|
@ -240,8 +240,7 @@ drc["poly_to_active"] = 0.1
|
||||||
# DF.9 - minarea of active area=0.2025
|
# DF.9 - minarea of active area=0.2025
|
||||||
drc.add_layer("active",
|
drc.add_layer("active",
|
||||||
width=0.22,
|
width=0.22,
|
||||||
spacing=0.33,
|
spacing=0.33)
|
||||||
area=0.2025)
|
|
||||||
|
|
||||||
drc.add_enclosure("dnwell",
|
drc.add_enclosure("dnwell",
|
||||||
layer="pwell",
|
layer="pwell",
|
||||||
|
|
@ -278,7 +277,7 @@ drc.add_layer("contact",
|
||||||
drc.add_enclosure("active",
|
drc.add_enclosure("active",
|
||||||
layer="contact",
|
layer="contact",
|
||||||
enclosure=0.07,
|
enclosure=0.07,
|
||||||
extension=0.07)
|
extension=0.175)
|
||||||
|
|
||||||
drc.add_enclosure("poly",
|
drc.add_enclosure("poly",
|
||||||
layer="contact",
|
layer="contact",
|
||||||
|
|
@ -296,18 +295,17 @@ drc["poly_contact_to_gate"] = 0.165
|
||||||
# M1.3 - area
|
# M1.3 - area
|
||||||
drc.add_layer("m1",
|
drc.add_layer("m1",
|
||||||
width=0.23,
|
width=0.23,
|
||||||
spacing=0.23,
|
spacing=0.23)
|
||||||
area=0.1444)
|
|
||||||
|
|
||||||
drc.add_enclosure("m1",
|
drc.add_enclosure("m1",
|
||||||
layer="contact",
|
layer="contact",
|
||||||
enclosure=0,
|
enclosure=0,
|
||||||
extension=0.06)
|
extension=0.205)
|
||||||
|
|
||||||
drc.add_enclosure("m1",
|
drc.add_enclosure("m1",
|
||||||
layer="via1",
|
layer="via1",
|
||||||
enclosure=0,
|
enclosure=0,
|
||||||
extension=0.06)
|
extension=0.205)
|
||||||
|
|
||||||
drc.add_layer("via1",
|
drc.add_layer("via1",
|
||||||
width=0.26,
|
width=0.26,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue