mirror of https://github.com/VLSIDA/OpenRAM.git
fix bias correspondence points
This commit is contained in:
parent
bcc956ecdc
commit
c9b3f4772e
|
|
@ -45,9 +45,19 @@ class pin_layout:
|
|||
if self.same_lpp(layer_name_pp, lpp):
|
||||
self._layer = layer_name
|
||||
break
|
||||
|
||||
else:
|
||||
debug.error("Layer {} is not a valid routing layer in the tech file.".format(layer_name_pp), -1)
|
||||
|
||||
try:
|
||||
from tech import layer_override
|
||||
from tech import layer_override_name
|
||||
if layer_override[name]:
|
||||
self.lpp = layer_override[name]
|
||||
self.layer = "m1"
|
||||
self._recompute_hash()
|
||||
return
|
||||
except:
|
||||
debug.error("Layer {} is not a valid routing layer in the tech file.".format(layer_name_pp), -1)
|
||||
|
||||
self.lpp = layer[self.layer]
|
||||
self._recompute_hash()
|
||||
|
||||
|
|
|
|||
|
|
@ -158,6 +158,12 @@ def get_gds_pins(pin_names, name, gds_filename, units):
|
|||
# this is a list because other cells/designs
|
||||
# may have must-connect pins
|
||||
if isinstance(lpp[1], list):
|
||||
try:
|
||||
from tech import layer_override
|
||||
if layer_override[pin_name]:
|
||||
lpp = layer_override[pin_name.textString]
|
||||
except:
|
||||
pass
|
||||
lpp = (lpp[0], None)
|
||||
cell[str(pin_name)].append(pin_layout(pin_name, rect, lpp))
|
||||
|
||||
|
|
|
|||
|
|
@ -761,22 +761,22 @@ class VlsiLayout:
|
|||
label_coordinate = label.coordinates[0]
|
||||
user_coordinate = [x*self.units[0] for x in label_coordinate]
|
||||
pin_shapes = []
|
||||
# Remove the padding if it exists
|
||||
if label.textString[-1] == "\x00":
|
||||
label_text = label.textString[0:-1]
|
||||
else:
|
||||
label_text = label.textString
|
||||
try:
|
||||
from tech import layer_override
|
||||
if layer_override[label.textString]:
|
||||
shapes = self.getAllShapes((layer_override[label.textString], None))
|
||||
if layer_override[label_text]:
|
||||
shapes = self.getAllShapes((layer_override[label_text][0], None))
|
||||
lpp = layer_override[label_text]
|
||||
except:
|
||||
pass
|
||||
for boundary in shapes:
|
||||
if self.labelInRectangle(user_coordinate, boundary):
|
||||
pin_shapes.append((lpp, boundary))
|
||||
|
||||
label_text = label.textString
|
||||
|
||||
# Remove the padding if it exists
|
||||
if label_text[-1] == "\x00":
|
||||
label_text = label_text[0:-1]
|
||||
|
||||
try:
|
||||
self.pins[label_text]
|
||||
except KeyError:
|
||||
|
|
|
|||
Loading…
Reference in New Issue