add flatglob to tech file; sky130 replica col lvs working

This commit is contained in:
Jesse Cirimelli-Low
2022-08-22 15:30:11 -07:00
parent caba726cfe
commit 11fa0777e8
3 changed files with 35 additions and 10 deletions
+13 -7
View File
@@ -26,7 +26,6 @@ import shutil
import debug
from globals import OPTS
from .run_script import *
# Keep track of statistics
num_drc_runs = 0
num_lvs_runs = 0
@@ -96,13 +95,24 @@ def write_drc_script(cell_name, gds_name, extract, final_verification, output_pa
f.write("gds warning default\n")
# Flatten the transistors
# Bug in Netgen 1.5.194 when using this...
f.write("gds flatglob *_?mos_m*\n")
try:
from tech import blackbox_cells
except ImportError:
blackbox_cells = []
try:
from tech import flatglob
except ImportError:
flatglob = []
f.write("gds readonly true\n")
for entry in flatglob:
f.write("gds flatglob " +entry + "\n")
# These two options are temporarily disabled until Tim fixes a bug in magic related
# to flattening channel routes and vias (hierarchy with no devices in it). Otherwise,
# they appear to be disconnected.
f.write("gds flatten true\n")
f.write("gds ordering true\n")
f.write("gds readonly true\n")
f.write("gds read {}\n".format(gds_name))
f.write('puts "Finished reading gds {}"\n'.format(gds_name))
f.write("load {}\n".format(cell_name))
@@ -164,10 +174,6 @@ def write_drc_script(cell_name, gds_name, extract, final_verification, output_pa
f.write("#!/bin/sh\n")
f.write('export OPENRAM_TECH="{}"\n'.format(os.environ['OPENRAM_TECH']))
# Copy the bitcell mag files if they exist
try:
from tech import blackbox_cells
except ImportError:
blackbox_cells = []
for blackbox_cell_name in blackbox_cells:
mag_file = OPTS.openram_tech + "maglef_lib/" + blackbox_cell_name + ".mag"
debug.check(os.path.isfile(mag_file), "Could not find blackbox cell {}".format(mag_file))