mirror of https://github.com/VLSIDA/OpenRAM.git
Undo changes for config expansion. Change unit tests to use OPENRAM_HOME.
This commit is contained in:
parent
7e9d08206c
commit
c4cf8134fe
|
|
@ -167,7 +167,7 @@ class instance(geometry):
|
|||
|
||||
debug.info(4, "creating instance: " + self.name)
|
||||
|
||||
def get_blockages(self, layer, top=False):
|
||||
def get_blockages(self, lpp, top=False):
|
||||
""" Retrieve blockages of all modules in this instance.
|
||||
Apply the transform of the instance placement to give absolute blockages."""
|
||||
angle = math.radians(float(self.rotate))
|
||||
|
|
@ -191,11 +191,11 @@ class instance(geometry):
|
|||
if self.mod.is_library_cell:
|
||||
# Writes library cell blockages as shapes instead of a large metal blockage
|
||||
blockages = []
|
||||
blockages = self.mod.gds.getBlockages(layer)
|
||||
blockages = self.mod.gds.getBlockages(lpp)
|
||||
for b in blockages:
|
||||
new_blockages.append(self.transform_coords(b,self.offset, mirr, angle))
|
||||
else:
|
||||
blockages = self.mod.get_blockages(layer)
|
||||
blockages = self.mod.get_blockages(lpp)
|
||||
for b in blockages:
|
||||
new_blockages.append(self.transform_coords(b,self.offset, mirr, angle))
|
||||
return new_blockages
|
||||
|
|
|
|||
|
|
@ -539,21 +539,21 @@ class layout():
|
|||
Do not write the pins since they aren't obstructions.
|
||||
"""
|
||||
if type(layer)==str:
|
||||
layer_num = techlayer[layer][0]
|
||||
lpp = techlayer[layer]
|
||||
else:
|
||||
layer_num = layer
|
||||
lpp = layer
|
||||
|
||||
blockages = []
|
||||
for i in self.objs:
|
||||
blockages += i.get_blockages(layer_num)
|
||||
blockages += i.get_blockages(lpp)
|
||||
for i in self.insts:
|
||||
blockages += i.get_blockages(layer_num)
|
||||
blockages += i.get_blockages(lpp)
|
||||
# Must add pin blockages to non-top cells
|
||||
if not top_level:
|
||||
blockages += self.get_pin_blockages(layer_num)
|
||||
blockages += self.get_pin_blockages(lpp)
|
||||
return blockages
|
||||
|
||||
def get_pin_blockages(self, layer_num):
|
||||
def get_pin_blockages(self, lpp):
|
||||
""" Return the pin shapes as blockages for non-top-level blocks. """
|
||||
# FIXME: We don't have a body contact in ptx, so just ignore it for now
|
||||
import copy
|
||||
|
|
@ -565,33 +565,57 @@ class layout():
|
|||
for pin_name in pin_names:
|
||||
pin_list = self.get_pins(pin_name)
|
||||
for pin in pin_list:
|
||||
if pin.layer_num==layer_num:
|
||||
if pin.same_lpp(pin.lpp, lpp):
|
||||
blockages += [pin.rect]
|
||||
|
||||
return blockages
|
||||
|
||||
def create_horizontal_pin_bus(self, layer, pitch, offset, names, length):
|
||||
""" Create a horizontal bus of pins. """
|
||||
return self.create_bus(layer,pitch,offset,names,length,vertical=False,make_pins=True)
|
||||
return self.create_bus(layer,
|
||||
pitch,
|
||||
offset,
|
||||
names,
|
||||
length,
|
||||
vertical=False,
|
||||
make_pins=True)
|
||||
|
||||
def create_vertical_pin_bus(self, layer, pitch, offset, names, length):
|
||||
""" Create a horizontal bus of pins. """
|
||||
return self.create_bus(layer,pitch,offset,names,length,vertical=True,make_pins=True)
|
||||
return self.create_bus(layer,
|
||||
pitch,
|
||||
offset,
|
||||
names,
|
||||
length,
|
||||
vertical=True,
|
||||
make_pins=True)
|
||||
|
||||
def create_vertical_bus(self, layer, pitch, offset, names, length):
|
||||
""" Create a horizontal bus. """
|
||||
return self.create_bus(layer,pitch,offset,names,length,vertical=True,make_pins=False)
|
||||
return self.create_bus(layer,
|
||||
pitch,
|
||||
offset,
|
||||
names,
|
||||
length,
|
||||
vertical=True,
|
||||
make_pins=False)
|
||||
|
||||
def create_horizontal_bus(self, layer, pitch, offset, names, length):
|
||||
""" Create a horizontal bus. """
|
||||
return self.create_bus(layer,pitch,offset,names,length,vertical=False,make_pins=False)
|
||||
return self.create_bus(layer,
|
||||
pitch,
|
||||
offset,
|
||||
names,
|
||||
length,
|
||||
vertical=False,
|
||||
make_pins=False)
|
||||
|
||||
|
||||
def create_bus(self, layer, pitch, offset, names, length, vertical, make_pins):
|
||||
"""
|
||||
"""
|
||||
Create a horizontal or vertical bus. It can be either just rectangles, or actual
|
||||
layout pins. It returns an map of line center line positions indexed by name.
|
||||
The other coordinate is a 0 since the bus provides a range.
|
||||
The other coordinate is a 0 since the bus provides a range.
|
||||
TODO: combine with channel router.
|
||||
"""
|
||||
|
||||
|
|
|
|||
|
|
@ -282,13 +282,9 @@ def read_config(config_file, is_unit_test=True):
|
|||
|
||||
# it is already not an abs path, make it one
|
||||
if not os.path.isabs(config_file):
|
||||
try:
|
||||
OPENRAM_HOME = os.path.abspath(os.environ.get("OPENRAM_HOME"))
|
||||
except:
|
||||
debug.error("$OPENRAM_HOME is not properly defined.", 1)
|
||||
config_file = OPENRAM_HOME + "/tests/" + config_file + ".py"
|
||||
debug.check(os.path.isfile(config_file),
|
||||
"{} is not a valid config file".format(config_file))
|
||||
config_file = os.getcwd() + "/" + config_file
|
||||
# Make it a python file if the base name was only given
|
||||
config_file = re.sub(r'\.py$', "", config_file)
|
||||
|
||||
|
||||
# Expand the user if it is used
|
||||
|
|
@ -297,16 +293,14 @@ def read_config(config_file, is_unit_test=True):
|
|||
# Add the path to the system path
|
||||
# so we can import things in the other directory
|
||||
dir_name = os.path.dirname(config_file)
|
||||
file_name = os.path.basename(config_file)
|
||||
# Remove the py from the module name
|
||||
file_name = re.sub(r'\.py$', "", file_name)
|
||||
module_name = os.path.basename(config_file)
|
||||
|
||||
# Prepend the path to avoid if we are using the example config
|
||||
sys.path.insert(0, dir_name)
|
||||
# Import the configuration file of which modules to use
|
||||
debug.info(1, "Configuration file is " + config_file + ".py")
|
||||
try:
|
||||
config = importlib.import_module(file_name)
|
||||
config = importlib.import_module(module_name)
|
||||
except:
|
||||
debug.error("Unable to read configuration file: {0}".format(config_file),2)
|
||||
|
||||
|
|
@ -315,7 +309,7 @@ def read_config(config_file, is_unit_test=True):
|
|||
# except in the case of the tech name! This is because the tech name
|
||||
# is sometimes used to specify the config file itself (e.g. unit tests)
|
||||
# Note that if we re-read a config file, nothing will get read again!
|
||||
if not k in OPTS.__dict__ or k == "tech_name":
|
||||
if k not in OPTS.__dict__ or k == "tech_name":
|
||||
OPTS.__dict__[k] = v
|
||||
|
||||
# Massage the output path to be an absolute one
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ import debug
|
|||
class library_drc_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import verify
|
||||
|
||||
(gds_dir, gds_files) = setup_files()
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ import debug
|
|||
class library_lvs_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import verify
|
||||
|
||||
(gds_dir, sp_dir, allnames) = setup_files()
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class contact_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
for layer_stack in [("metal1", "via1", "metal2"), ("poly", "contact", "metal1")]:
|
||||
stack_name = ":".join(map(str, layer_stack))
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ import debug
|
|||
class path_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import wire_path
|
||||
import tech
|
||||
import design
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class ptx_1finger_nmos_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import tech
|
||||
|
||||
debug.info(2, "Checking min size NMOS with 1 finger")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class ptx_1finger_pmos_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import tech
|
||||
|
||||
debug.info(2, "Checking min size PMOS with 1 finger")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class ptx_3finger_nmos_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import tech
|
||||
|
||||
debug.info(2, "Checking three fingers NMOS")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class ptx_3finger_pmos_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import tech
|
||||
|
||||
debug.info(2, "Checking three fingers PMOS")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class ptx_4finger_nmos_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import tech
|
||||
|
||||
debug.info(2, "Checking three fingers NMOS")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class ptx_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import tech
|
||||
|
||||
debug.info(2, "Checking three fingers PMOS")
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ import debug
|
|||
class wire_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import wire
|
||||
import tech
|
||||
import design
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class replica_pbitcell_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import dummy_pbitcell
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pand2_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
global verify
|
||||
import verify
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pand3_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
global verify
|
||||
import verify
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ from sram_factory import factory
|
|||
class pbitcell_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
OPTS.num_rw_ports=1
|
||||
OPTS.num_w_ports=1
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pbuf_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing inverter/buffer 4x 8x")
|
||||
a = factory.create(module_type="pbuf", size=8)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pdriver_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing inverter/buffer 4x 8x")
|
||||
# a tests the error message for specifying conflicting conditions
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pinv_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 8x inverter")
|
||||
tx = factory.create(module_type="pinv", size=8)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pinv_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 1x beta=3 size inverter")
|
||||
tx = factory.create(module_type="pinv", size=1, beta=3)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pinv_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 1x size inverter")
|
||||
tx = factory.create(module_type="pinv", size=1)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pinv_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 2x size inverter")
|
||||
tx = factory.create(module_type="pinv", size=2)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pinvbuf_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing inverter/buffer 4x 8x")
|
||||
a = factory.create(module_type="pinvbuf", size=8)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pnand2_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 2-input nand gate")
|
||||
tx = factory.create(module_type="pnand2", size=1)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pnand3_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 3-input nand gate")
|
||||
tx = factory.create(module_type="pnand3", size=1)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class pnor2_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Checking 2-input nor gate")
|
||||
tx = factory.create(module_type="pnor2", size=1)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class precharge_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check precharge in single port
|
||||
debug.info(2, "Checking precharge for handmade bitcell")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class replica_pbitcell_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import replica_pbitcell
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ import debug
|
|||
class single_level_column_mux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check single level column mux in single port
|
||||
debug.info(2, "Checking column mux")
|
||||
|
|
|
|||
|
|
@ -20,8 +20,8 @@ import debug
|
|||
class bitcell_1rw_1r_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
OPTS.bitcell = "bitcell_1rw_1r"
|
||||
OPTS.replica_bitcell = "replica_bitcell_1rw_1r"
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ import debug
|
|||
class array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing 4x4 array for 6t_cell")
|
||||
a = factory.create(module_type="bitcell_array", cols=4, rows=4)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class dummy_row_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing dummy row for 6t_cell")
|
||||
a = factory.create(module_type="dummy_array", rows=1, cols=4)
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class pbitcell_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing 4x4 array for multiport bitcell, with read ports at the edge of the bit cell")
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class replica_bitcell_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
OPTS.replica_bitcell = "replica_pbitcell"
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class hierarchical_decoder_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
# Doesn't require hierarchical decoder
|
||||
# debug.info(1, "Testing 4 row sample for hierarchical_decoder")
|
||||
# a = hierarchical_decoder.hierarchical_decoder(name="hd1, rows=4)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class hierarchical_predecode2x4_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# checking hierarchical precode 2x4 for single port
|
||||
debug.info(1, "Testing sample for hierarchy_predecode2x4")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class hierarchical_predecode3x8_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# checking hierarchical precode 3x8 for single port
|
||||
debug.info(1, "Testing sample for hierarchy_predecode3x8")
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ import debug
|
|||
class single_level_column_mux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import single_level_column_mux_array
|
||||
|
||||
# check single level column mux array in single port
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class precharge_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check precharge array in single port
|
||||
debug.info(2, "Checking 3 column precharge")
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ import debug
|
|||
class wordline_driver_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check wordline driver for single port
|
||||
debug.info(2, "Checking driver")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class sense_amp_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check sense amp array for single port
|
||||
debug.info(2, "Testing sense_amp_array for word_size=4, words_per_row=2")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class write_driver_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check write driver array for single port
|
||||
debug.info(2, "Testing write_driver_array for columns=8, word_size=8")
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ import debug
|
|||
class write_driver_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check write driver array for single port
|
||||
debug.info(2, "Testing write_driver_array for columns=8, word_size=8, write_size=4")
|
||||
|
|
@ -58,4 +59,4 @@ if __name__ == "__main__":
|
|||
(OPTS, args) = globals.parse_args()
|
||||
del sys.argv[1:]
|
||||
header(__file__, OPTS.tech_name)
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ import debug
|
|||
class write_mask_and_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
# check write driver array for single port
|
||||
debug.info(2, "Testing write_mask_and_array for columns=8, word_size=8, write_size=4")
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class dff_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing dff_array for 3x3")
|
||||
a = factory.create(module_type="dff_array", rows=3, columns=3)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class dff_buf_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing dff_buf_array for 3x3")
|
||||
a = factory.create(module_type="dff_buf_array", rows=3, columns=3)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class dff_buf_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing dff_buf 4x 8x")
|
||||
a = factory.create(module_type="dff_buf", inv1_size=4, inv2_size=8)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class tri_gate_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(1, "Testing tri_gate_array for columns=8, word_size=8")
|
||||
a = factory.create(module_type="tri_gate_array", columns=8, word_size=8)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class delay_chain_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing delay_chain")
|
||||
a = factory.create(module_type="delay_chain", fanout_list=[4, 4, 4, 4])
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class replica_bitcell_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
OPTS.bitcell = "bitcell_1rw_1r"
|
||||
OPTS.replica_bitcell = "replica_bitcell_1rw_1r"
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class replica_bitcell_array_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing 4x4 array for 6t_cell")
|
||||
a = factory.create(module_type="replica_bitcell_array", cols=4, rows=4, left_rbl=1, right_rbl=0, bitcell_ports=[0])
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class replica_column_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(2, "Testing replica column for 6t_cell")
|
||||
a = factory.create(module_type="replica_column", rows=4, left_rbl=1, right_rbl=0, replica_bit=1)
|
||||
|
|
|
|||
|
|
@ -22,7 +22,8 @@ import debug
|
|||
class control_logic_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import control_logic
|
||||
import tech
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class control_logic_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
import control_logic
|
||||
import tech
|
||||
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class port_address_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(1, "Port address 16 rows")
|
||||
a = factory.create("port_address", cols=16, rows=16)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ import debug
|
|||
class port_data_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
c = sram_config(word_size=4,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class port_data_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
c = sram_config(word_size=16,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class bank_select_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
|
||||
debug.info(1, "No column mux, rw control logic")
|
||||
a = factory.create(module_type="bank_select", port="rw")
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class multi_bank_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
c = sram_config(word_size=4,
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class multi_bank_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class psingle_bank_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class single_bank_1rw_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "bitcell_1rw_1r"
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class single_bank_1w_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "bitcell_1w_1r"
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class single_bank_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
c = sram_config(word_size=4,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class single_bank_wmask_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -18,8 +18,9 @@ import debug
|
|||
#@unittest.skip("SKIPPING 20_psram_1bank_test, multiport layout not complete")
|
||||
class psram_1bank_2mux_1rw_1w_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
def runTest(self):
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ import debug
|
|||
class psram_1bank_2mux_1rw_1w_wmask_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
@ -58,4 +59,4 @@ if __name__ == "__main__":
|
|||
(OPTS, args) = globals.parse_args()
|
||||
del sys.argv[1:]
|
||||
header(__file__, OPTS.tech_name)
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
|
|
|
|||
|
|
@ -18,8 +18,9 @@ import debug
|
|||
#@unittest.skip("SKIPPING 20_psram_1bank_2mux_1w_1r_test, odd supply routing error")
|
||||
class psram_1bank_2mux_1w_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
def runTest(self):
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -18,8 +18,9 @@ import debug
|
|||
#@unittest.skip("SKIPPING 20_psram_1bank_2mux_test, wide metal supply routing error")
|
||||
class psram_1bank_2mux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
def runTest(self):
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
OPTS.bitcell = "pbitcell"
|
||||
OPTS.replica_bitcell="replica_pbitcell"
|
||||
|
|
|
|||
|
|
@ -17,8 +17,9 @@ import debug
|
|||
|
||||
class psram_1bank_4mux_1rw_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
def runTest(self):
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "pbitcell"
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class sram_1bank_2mux_1rw_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "bitcell_1rw_1r"
|
||||
|
|
|
|||
|
|
@ -18,8 +18,9 @@ import debug
|
|||
#@unittest.skip("SKIPPING 20_psram_1bank_2mux_1w_1r_test, odd supply routing error")
|
||||
class psram_1bank_2mux_1w_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
def runTest(self):
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "bitcell_1w_1r"
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_2mux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=4,
|
||||
num_words=32,
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ import debug
|
|||
class sram_1bank_2mux_wmask_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=8,
|
||||
write_size=4,
|
||||
|
|
@ -51,4 +52,4 @@ if __name__ == "__main__":
|
|||
(OPTS, args) = globals.parse_args()
|
||||
del sys.argv[1:]
|
||||
header(__file__, OPTS.tech_name)
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ import debug
|
|||
class sram_1bank_32b_1024_wmask_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=32,
|
||||
write_size=8,
|
||||
|
|
@ -50,4 +51,4 @@ if __name__ == "__main__":
|
|||
(OPTS, args) = globals.parse_args()
|
||||
del sys.argv[1:]
|
||||
header(__file__, OPTS.tech_name)
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_4mux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=4,
|
||||
num_words=64,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class sram_1bank_8mux_1rw_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "bitcell_1rw_1r"
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_8mux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=2,
|
||||
num_words=128,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class sram_1bank_nomux_1rw_1r_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
|
||||
OPTS.bitcell = "bitcell_1rw_1r"
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_nomux_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=4,
|
||||
num_words=16,
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ import debug
|
|||
class sram_1bank_nomux_wmask_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=8,
|
||||
write_size=4,
|
||||
|
|
@ -51,4 +52,4 @@ if __name__ == "__main__":
|
|||
(OPTS, args) = globals.parse_args()
|
||||
del sys.argv[1:]
|
||||
header(__file__, OPTS.tech_name)
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
unittest.main(testRunner=debugTestRunner())
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_2bank_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
from sram_config import sram_config
|
||||
c = sram_config(word_size=16,
|
||||
num_words=32,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class timing_sram_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.spice_name="hspice"
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class timing_setup_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.spice_name="hspice"
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ class model_delay_test(openram_test):
|
|||
""" Compare the accuracy of the analytical model with a spice simulation. """
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class timing_sram_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.spice_name="ngspice"
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class timing_setup_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.spice_name="ngspice"
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ import debug
|
|||
class psram_1bank_2mux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class psram_1bank_4mux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class psram_1bank_8mux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class psram_1bank_nomux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_2mux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_4mux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_8mux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_1bank_nomux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class psram_1bank_nomux_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ import debug
|
|||
class sram_wmask_1w_1r_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ import debug
|
|||
class sram_wmask_func_test(openram_test):
|
||||
|
||||
def runTest(self):
|
||||
globals.init_openram("{}/config".format(OPTS.tech_name))
|
||||
config_file = "{}/tests/{}/config".format(os.getenv("OPENRAM_HOME"), OPTS.tech_name)
|
||||
globals.init_openram(config_file)
|
||||
OPTS.analytical_delay = False
|
||||
OPTS.netlist_only = True
|
||||
OPTS.trim_netlist = False
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue