update engine.py

This commit is contained in:
daitoto 2021-11-25 13:18:51 +08:00 committed by GitHub
parent 9c4cf965a6
commit 5636b67a6f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 23 deletions

View File

@ -8,7 +8,7 @@ import apps.cds.place as place1
import apps.cds.cts as cts1
import apps.cds.route as route1
import apps.cds.drc as drc1
import apps.opensource.syn.yosys as syn2
import apps.opensource.syn as syn2
def run(design, flow):
design_name = design.top_name
@ -21,18 +21,10 @@ def run(design, flow):
if x[0] == "GenusSynth":
script_path = "../scripts/"
tmp_op_syn = eval("syn1." + "GenusSynth" + "(design)")
for param in flow.params_syn:
tmp_op_syn.setParams(param[0], param[1])
tmp_op_syn.config(design, design_name + "_" + x[1])
make_file.write("all:\n")
make_file.write("\tgenus -legacy_ui -batch -files " + script_path + design_name + "_" + x[1] + ".tcl\n")
if x[0] == "YosysSynth":
script_path = "../scripts/"
tmp_op_syn = eval("syn2." + "YosysSynth" + "(design)")
tmp_op_syn.config(design, design_name + "_" + x[1])
make_file.write("all:\n")
make_file.write("\tyosys " + script_path + design_name + "_" + x[1] + ".ys\n")
#if x[0] == "OpenROADSynth":
if x[0] == "InnovusFloorplan":
tmp_op_fp = eval("fp1." + "InnovusFloorplan" + "(design)")
@ -47,11 +39,8 @@ def run(design, flow):
overall_tcl.write('source %s/%s_to_pdn.tcl\n'%(tcl_path, design_name))
if x[0] == "InnovusPlace":
tmp_op_place = eval("place1." + "InnovusPlace" + "(design)")
for param in flow.params_place:
if param[1] == True:
tmp_op_place.setParams(param[0])
tmp_op_place.config(design, design_name + "_" + x[1])
tmp_op_pdn = eval("place1." + "InnovusPlace" + "(design)")
tmp_op_pdn.config(design, design_name + "_" + x[1])
overall_tcl.write('source %s/%s_to_place.tcl\n'%(tcl_path, design_name))
if x[0] == "InnovusCTS":
@ -61,19 +50,17 @@ def run(design, flow):
if x[0] == "InnovusRoute":
tmp_op_route = eval("route1." + "InnovusRoute" + "(design)")
for param in flow.params_route:
tmp_op_route.setParams(param[0], param[1])
tmp_op_route.config(design, design_name + "_" + x[1])
overall_tcl.write('source %s/%s_to_route.tcl\n'%(tcl_path, design_name))
overall_tcl.write('set dbgLefDefOutVersion 5.8\ndefOut -floorplan -netlist -routing %s.def\n'%(design_name))
if x[0] == "InnovusDRC":
tmp_op_drc = eval("drc1." + "InnovusDRC" + "(design)")
tmp_op_drc.config(design, design_name + "_" + x[1])
overall_tcl.write('source %s/%s_to_drc.tcl\n'%(tcl_path, design_name))
#make_file.write("\tinnovus -batch -files " + script_path + "flow.tcl")
run_path = util.getRunPath(design, "Yosys")
make_file.write("\tinnovus -batch -files " + script_path + "flow.tcl")
run_path = util.getRunPath(design, "Cadence")
os.chdir(run_path)
print(os.getcwd())
#cmd_clean = 'rm innovus.* genus.*'
@ -81,8 +68,8 @@ def run(design, flow):
#cmd_clean = 'rm -rf fv'
#subprocess.Popen(cmd_clean, shell=True).wait()
cmd = 'make'
#subprocess.Popen(cmd)
subprocess.Popen(cmd, shell=True).wait()
subprocess.Popen(cmd)
#subprocess.Popen(cmd, shell=True).wait()
return design
return 0