Compare commits

...

1 Commits

4 changed files with 20 additions and 74 deletions

View File

@ -4,7 +4,7 @@ from comm import warning, info
def build(cfg): def build(cfg):
# import base modules # import base modules
from toffee_test.markers import match_version from toffee_test.markers import match_version
from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir, get_all_rtl_files
# check version # check version
if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"): if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"):
warning("frontend_ftq_redirect_mem: %s" % f"Unsupported RTL version {cfg.rtl.version}") warning("frontend_ftq_redirect_mem: %s" % f"Unsupported RTL version {cfg.rtl.version}")
@ -12,24 +12,15 @@ def build(cfg):
# check files # check files
module_name = "FtqPcMem" module_name = "FtqPcMem"
file_name ="FtqPcMemWrapper.sv" file_name ="FtqPcMemWrapper.sv"
dp_file_names = [ rtl_files = get_all_rtl_files("FtqPcMemWrapper", cfg=cfg)
"SyncDataModuleTemplate_FtqPC_64entry.sv",
"DataModule_FtqPC_16entry.sv"
]
dp_fpaths = [f"rtl/rtl/{dp_file_name}" for dp_file_name in dp_file_names]
dp_fpaths_after_get_root = [get_root_dir(dp_fpath) for dp_fpath in dp_fpaths]
fpath = f"rtl/{file_name}"
all_fpaths = dp_fpaths + [fpath]
## internal signals is now not determined
internal_signals_path="" internal_signals_path=""
f = is_all_file_exist(all_fpaths, get_rtl_dir(cfg=cfg))
#assert f is True, f"File {f} not found"
# build # build
# export SyncDataModuleTemplate__64entry.sv # export SyncDataModuleTemplate__64entry.sv
if not os.path.exists(get_root_dir(f"dut/{module_name}")): if not os.path.exists(get_root_dir(f"dut/{module_name}")):
info(f"Exporting {file_name}.sv") info(f"Exporting {file_name}.sv")
s,out,err = exe_cmd(f'picker export {get_rtl_dir(f"{fpath}",cfg = cfg)} --tname {module_name}\ s,out,err = exe_cmd(f'picker export {rtl_files[0]} --tname {module_name}\
--lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(dp_fpaths_after_get_root)) --lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(rtl_files))
assert s, f"Failed to export {file_name}.sv: %s\n%s" % (out, err) assert s, f"Failed to export {file_name}.sv: %s\n%s" % (out, err)
return True return True

View File

@ -4,7 +4,7 @@ from comm import warning, info
def build(cfg): def build(cfg):
# import base modules # import base modules
from toffee_test.markers import match_version from toffee_test.markers import match_version
from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir, get_all_rtl_files
# check version # check version
if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"): if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"):
warning("frontend_ftq_pd_mem: %s" % f"Unsupported RTL version {cfg.rtl.version}") warning("frontend_ftq_pd_mem: %s" % f"Unsupported RTL version {cfg.rtl.version}")
@ -12,23 +12,15 @@ def build(cfg):
# check files # check files
module_name = "FtqPdMem" module_name = "FtqPdMem"
file_name ="SyncDataModuleTemplate__64entry_2.sv" file_name ="SyncDataModuleTemplate__64entry_2.sv"
dp_file_names = [ rtl_files = get_all_rtl_files("SyncDataModuleTemplate__64entry_2", cfg=cfg)
"DataModule__16entry_8.sv",
]
dp_fpaths = [f"rtl/rtl/{dp_file_name}" for dp_file_name in dp_file_names]
dp_fpaths_after_get_root = [get_root_dir(dp_fpath) for dp_fpath in dp_fpaths]
fpath = f"rtl/{file_name}"
all_fpaths = dp_fpaths + [fpath]
## internal signals is now not determined
internal_signals_path="" internal_signals_path=""
f = is_all_file_exist(all_fpaths, get_rtl_dir(cfg=cfg))
#assert f is True, f"File {f} not found" ##some problem here
# build # build
# export SyncDataModuleTemplate__64_1entry.sv # export SyncDataModuleTemplate__64_1entry.sv
if not os.path.exists(get_root_dir(f"dut/{module_name}")): if not os.path.exists(get_root_dir(f"dut/{module_name}")):
info(f"Exporting {file_name}.sv") info(f"Exporting {file_name}.sv")
s,out,err = exe_cmd(f'picker export {get_rtl_dir(f"{fpath}",cfg = cfg)} --tname {module_name}\ s,out,err = exe_cmd(f'picker export {rtl_files[0]} --tname {module_name}\
--lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(dp_fpaths_after_get_root)) --lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(rtl_files))
assert s, f"Failed to export {file_name}.sv: %s\n%s" % (out, err) assert s, f"Failed to export {file_name}.sv: %s\n%s" % (out, err)
return True return True

View File

@ -4,7 +4,7 @@ from comm import warning, info
def build(cfg): def build(cfg):
# import base modules # import base modules
from toffee_test.markers import match_version from toffee_test.markers import match_version
from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir, get_all_rtl_files
# check version # check version
if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"): if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"):
warning("frontend_ftq_redirect_mem: %s" % f"Unsupported RTL version {cfg.rtl.version}") warning("frontend_ftq_redirect_mem: %s" % f"Unsupported RTL version {cfg.rtl.version}")
@ -12,23 +12,15 @@ def build(cfg):
# check files # check files
module_name = "FtqRedirectMem" module_name = "FtqRedirectMem"
file_name ="SyncDataModuleTemplate__64entry.sv" file_name ="SyncDataModuleTemplate__64entry.sv"
dp_file_names = [ rtl_files = get_all_rtl_files("SyncDataModuleTemplate__64entry", cfg=cfg)
"DataModule__16entry.sv",
]
dp_fpaths = [f"rtl/rtl/{dp_file_name}" for dp_file_name in dp_file_names]
dp_fpaths_after_get_root = [get_root_dir(dp_fpath) for dp_fpath in dp_fpaths]
fpath = f"rtl/{file_name}"
all_fpaths = dp_fpaths + [fpath]
## internal signals is now not determined
internal_signals_path="" internal_signals_path=""
f = is_all_file_exist(all_fpaths, get_rtl_dir(cfg=cfg))
#assert f is True, f"File {f} not found"
# build # build
# export SyncDataModuleTemplate__64entry.sv # export SyncDataModuleTemplate__64entry.sv
if not os.path.exists(get_root_dir(f"dut/{module_name}")): if not os.path.exists(get_root_dir(f"dut/{module_name}")):
info(f"Exporting {file_name}.sv") info(f"Exporting {file_name}.sv")
s,out,err = exe_cmd(f'picker export {get_rtl_dir(f"{fpath}",cfg = cfg)} --tname {module_name}\ s,out,err = exe_cmd(f'picker export {rtl_files[0]} --tname {module_name}\
--lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(dp_fpaths_after_get_root)) --lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(rtl_files))
assert s, f"Failed to export {file_name}.sv: %s\n%s" % (out, err) assert s, f"Failed to export {file_name}.sv: %s\n%s" % (out, err)
return True return True

View File

@ -4,7 +4,7 @@ from comm import warning, info
def build(cfg): def build(cfg):
# import base modules # import base modules
from toffee_test.markers import match_version from toffee_test.markers import match_version
from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir from comm import is_all_file_exist, get_rtl_dir, exe_cmd, get_root_dir, get_all_rtl_files
# check version # check version
if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"): if not match_version(cfg.rtl.version, "openxiangshan-kmh-*"):
warning("frontend_ftq_top: %s" % f"Unsupported RTL version {cfg.rtl.version}") warning("frontend_ftq_top: %s" % f"Unsupported RTL version {cfg.rtl.version}")
@ -12,44 +12,15 @@ def build(cfg):
# check files 1 # check files 1
module_name = "FtqTop" module_name = "FtqTop"
file_name ="Ftq.sv" file_name ="Ftq.sv"
dp_file_names = [ rtl_files = get_all_rtl_files("Ftq", cfg=cfg)
"SyncDataModuleTemplate__64entry.sv",
"SyncDataModuleTemplate__64entry_1.sv",
"SyncDataModuleTemplate__64entry_2.sv",
"SyncDataModuleTemplate__64entry_3.sv",
"DataModule__16entry.sv",
"DataModule__16entry_4.sv",
"DataModule__16entry_8.sv",
"DataModule__16entry_12.sv",
"FTBEntryGen.sv",
"FtqNRSRAM.sv",
"FtqPcMemWrapper.sv",
"SRAMTemplate_65.sv",
"SyncDataModuleTemplate_FtqPC_64entry.sv",
"DataModule_FtqPC_16entry.sv",
"array_0_0.sv",
"array_0_0_ext.v",
"ClockGate.sv",
"MbistClockGateCell.sv",
"sram_array_2p64x576m192s1h0l1b_ftq.sv",
"array_8.sv",
"array_8_ext.v",
"MbistPipeFtq.sv"
]
dp_fpaths = [f"rtl/rtl/{dp_file_name}" for dp_file_name in dp_file_names]
dp_fpaths_after_get_root = [get_root_dir(dp_fpath) for dp_fpath in dp_fpaths]
fpath = f"rtl/{file_name}"
all_fpaths = dp_fpaths + [fpath]
## internal signals is now not determined
internal_signals_path="" internal_signals_path=""
f = is_all_file_exist(all_fpaths, get_rtl_dir(cfg=cfg))
#assert f is True, f"File {f} not found"
# build # build
# export ftq.sv # export ftq.sv
if not os.path.exists(get_root_dir(f"dut/{module_name}")): if not os.path.exists(get_root_dir(f"dut/{module_name}")):
info("Exporting Ftq.sv") info("Exporting Ftq.sv")
s,out,err = exe_cmd(f'picker export --cp_lib false {get_rtl_dir(f"{fpath}",cfg = cfg)} \ s,out,err = exe_cmd(f'picker export --cp_lib false {rtl_files[0]} --tname {module_name}\
--lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(dp_fpaths_after_get_root)) --lang python --tdir {get_root_dir("dut")}/ -w {module_name}.fst -c --fs ' + ' '.join(rtl_files))
assert s, f"Failed to export Ftq.sv: %s\n%s" % (out, err) assert s, f"Failed to export Ftq.sv: %s\n%s" % (out, err)
return True return True