mirror of https://github.com/VLSIDA/OpenRAM.git
Merge branch 'dev' of https://github.com/VLSIDA/PrivateRAM into multiport
This commit is contained in:
commit
35ae4a275e
|
|
@ -163,7 +163,7 @@ class VlsiLayout:
|
||||||
angle = 0
|
angle = 0
|
||||||
else:
|
else:
|
||||||
# MRG: Added negative to make CCW rotate 8/29/18
|
# MRG: Added negative to make CCW rotate 8/29/18
|
||||||
angle = math.radians(-1.0*float(rotateAngle))
|
angle = math.radians(float(rotateAngle))
|
||||||
mRotate = matrix([[math.cos(angle),-math.sin(angle),0.0],
|
mRotate = matrix([[math.cos(angle),-math.sin(angle),0.0],
|
||||||
[math.sin(angle),math.cos(angle),0.0],
|
[math.sin(angle),math.cos(angle),0.0],
|
||||||
[0.0,0.0,1.0]])
|
[0.0,0.0,1.0]])
|
||||||
|
|
@ -314,6 +314,8 @@ class VlsiLayout:
|
||||||
layoutToAddSref.coordinates = offsetInLayoutUnits
|
layoutToAddSref.coordinates = offsetInLayoutUnits
|
||||||
|
|
||||||
if mirror or rotate:
|
if mirror or rotate:
|
||||||
|
|
||||||
|
layoutToAddSref.transFlags = [0,0,0]
|
||||||
# This is NOT the same as the order in the GDS spec!
|
# This is NOT the same as the order in the GDS spec!
|
||||||
# It gets written out in gds2writer in the right order though.
|
# It gets written out in gds2writer in the right order though.
|
||||||
# transFlags = (mirror around x-axis, rotation, magnification)
|
# transFlags = (mirror around x-axis, rotation, magnification)
|
||||||
|
|
@ -325,8 +327,6 @@ class VlsiLayout:
|
||||||
rotate = 180.0
|
rotate = 180.0
|
||||||
if mirror=="R270":
|
if mirror=="R270":
|
||||||
rotate = 270.0
|
rotate = 270.0
|
||||||
|
|
||||||
layoutToAddSref.transFlags = [0,0,0]
|
|
||||||
if rotate:
|
if rotate:
|
||||||
#layoutToAddSref.transFlags = [0,1,0]
|
#layoutToAddSref.transFlags = [0,1,0]
|
||||||
layoutToAddSref.rotateAngle = rotate
|
layoutToAddSref.rotateAngle = rotate
|
||||||
|
|
@ -337,7 +337,7 @@ class VlsiLayout:
|
||||||
layoutToAddSref.transFlags = [1,0,0]
|
layoutToAddSref.transFlags = [1,0,0]
|
||||||
layoutToAddSref.rotateAngle = 180.0
|
layoutToAddSref.rotateAngle = 180.0
|
||||||
if mirror == "xy" or mirror == "XY": #NOTE: "XY" option will override specified rotate angle
|
if mirror == "xy" or mirror == "XY": #NOTE: "XY" option will override specified rotate angle
|
||||||
layoutToAddSref.transFlags = [0,1,0]
|
#layoutToAddSref.transFlags = [0,1,0]
|
||||||
layoutToAddSref.transFlags = [0,0,0]
|
layoutToAddSref.transFlags = [0,0,0]
|
||||||
layoutToAddSref.rotateAngle = 180.0
|
layoutToAddSref.rotateAngle = 180.0
|
||||||
|
|
||||||
|
|
@ -405,10 +405,10 @@ class VlsiLayout:
|
||||||
if(len(text)%2 == 1):
|
if(len(text)%2 == 1):
|
||||||
text = text + '\x00'
|
text = text + '\x00'
|
||||||
textToAdd.textString = text
|
textToAdd.textString = text
|
||||||
textToAdd.transFlags[1] = 1
|
textToAdd.transFlags = [0,0,1]
|
||||||
textToAdd.magFactor = magnification
|
textToAdd.magFactor = magnification
|
||||||
if rotate:
|
if rotate:
|
||||||
textToAdd.transFlags[2] = 1
|
textToAdd.transFlags = [0,1,1]
|
||||||
textToAdd.rotateAngle = rotate
|
textToAdd.rotateAngle = rotate
|
||||||
#add the sref to the root structure
|
#add the sref to the root structure
|
||||||
self.structures[self.rootStructureName].texts.append(textToAdd)
|
self.structures[self.rootStructureName].texts.append(textToAdd)
|
||||||
|
|
|
||||||
|
|
@ -186,7 +186,7 @@ class delay_chain(design.design):
|
||||||
continue
|
continue
|
||||||
for pin_name in ["vdd", "gnd"]:
|
for pin_name in ["vdd", "gnd"]:
|
||||||
pin = load.get_pin(pin_name)
|
pin = load.get_pin(pin_name)
|
||||||
self.add_power_pin(pin_name, pin.rc(),rotate=0)
|
self.add_power_pin(pin_name, pin.rc())
|
||||||
else:
|
else:
|
||||||
# We have an even number of rows, so need to get the last gnd rail
|
# We have an even number of rows, so need to get the last gnd rail
|
||||||
inv = self.driver_inst_list[-1]
|
inv = self.driver_inst_list[-1]
|
||||||
|
|
@ -195,7 +195,7 @@ class delay_chain(design.design):
|
||||||
continue
|
continue
|
||||||
pin_name = "gnd"
|
pin_name = "gnd"
|
||||||
pin = load.get_pin(pin_name)
|
pin = load.get_pin(pin_name)
|
||||||
self.add_power_pin(pin_name, pin.rc(),rotate=0)
|
self.add_power_pin(pin_name, pin.rc())
|
||||||
|
|
||||||
|
|
||||||
# input is A pin of first inverter
|
# input is A pin of first inverter
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue