run sta in parallel with drc, lvs and verification

This commit is contained in:
Marwan Abbas 2022-10-09 20:10:28 +02:00
parent ccb9a90977
commit 943a503441
2 changed files with 28 additions and 4 deletions

View File

@ -100,6 +100,12 @@ if __name__ == "__main__":
help="output directory",
required=True
)
parser.add_argument(
"-l",
"--logs_dir",
help="output directory",
required=True
)
parser.add_argument(
"-rc",
"--rc_corner",
@ -124,7 +130,7 @@ if __name__ == "__main__":
args = parser.parse_args()
output = os.path.abspath(args.output_dir)
log = os.path.abspath(os.path.join(output,"pt_logs"))
log = os.path.abspath(args.logs_dir)
try:
os.makedirs(output)

View File

@ -136,7 +136,24 @@ def run_sta(caravel_root, mcw_root, pt_lib_root, log_dir, signoff_dir):
cwd=f"{caravel_root}/scripts",
stdout=subprocess.PIPE,
)
run_pt_sta.run_sta_all("caravel", signoff_dir, log_dir)
sta_cmd = [
"python3",
"run_pt_sta.py",
"-a",
"-d",
"caravel",
"-o",
f"{signoff_dir}/caravel",
"-l",
f"{log_dir}"
]
p1 = subprocess.Popen(
sta_cmd,
cwd=f"{caravel_root}/scripts",
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
)
return p1
def check_errors(caravel_root, log_dir, signoff_dir, drc, lvs, verification):
drc_count_klayout = os.path.join(log_dir, "caravel_klayout_drc.total")
@ -337,10 +354,11 @@ if __name__ == "__main__":
if sta:
logging.info(f"Running PrimeTime STA all corners on caravel")
run_sta(caravel_root, mcw_root, "mpw-2-sta-debug", log_dir, signoff_dir)
sta_p = run_sta(caravel_root, mcw_root, "mpw-2-sta-debug", log_dir, signoff_dir)
if lvs and drc:
if lvs and drc and sta:
sta_p.wait()
drc_p1.wait()
lvs_p1.wait()
if lvs: