Add Xcelium simulation setup

This commit is contained in:
Tudor Timi 2020-05-21 18:28:43 +02:00 committed by Philipp Wagner
parent c011fda40e
commit 8c6395a257
3 changed files with 44 additions and 2 deletions

View file

@ -65,12 +65,21 @@ def gen_riviera_makefrag():
'SIM_OPTS += {1}').format(riviera_compile_opts, riviera_sim_opts)
def gen_xlm_makefrag():
xlm_compile_opts = run_ibex_config('xlm_opts', [
'--ins_hier_path', 'core_ibex_tb_top',
'--string_define_prefix', 'IBEX_CFG_'
])
return 'COMPILE_OPTS += {0}'.format(xlm_compile_opts)
def main():
argparser = argparse.ArgumentParser(description=(
'Generates a makefile fragment for use with the Ibex DV makefile that '
'sets up sim specific variables'))
sim_fns = {'vcs': gen_vcs_makefrag, 'riviera': gen_riviera_makefrag}
sim_fns = {'vcs': gen_vcs_makefrag, 'riviera': gen_riviera_makefrag, 'xlm': gen_xlm_makefrag}
argparser.add_argument('sim',
help='Name of the simulator',

View file

@ -108,3 +108,33 @@
qrun -simulate -snapshot design_opt <cov_opts> <sim_opts> -sv_seed <seed> -outdir <out>/qrun.out
cov_opts: >
-coverage -ucdb <out>/cov.ucdb
- tool: xlm
compile:
cmd:
- "xrun -64bit
-q
-access +rwc
-f ibex_dv.f
-sv
-uvm
-uvmhome CDNS-1.2
-define UVM_REGEX_NO_DPI
-elaborate
-l <out>/compile.log
-xmlibdirpath <out>
<cmp_opts>"
sim:
cmd: >
xrun -64bit
-R
-xmlibdirpath <out>
-l <sim_dir>/sim.log
-svseed <seed>
-svrnc rand_struct
+UVM_TESTNAME=<rtl_test>
+bin=<binary>
+ibex_tracer_file_base=<sim_dir>/trace_core
-nokey
<sim_opts>

View file

@ -225,7 +225,10 @@ def main():
lambda d, v: None, '/'),
SimOpts('riviera_compile_opts', 'Riviera compile',
lambda p, v: None,
lambda d, v: '+define+' + d + '=' + v, '/')
lambda d, v: '+define+' + d + '=' + v, '/'),
SimOpts('xlm_opts', 'Xcelium compile',
lambda p, v: '-defparam ' + p + '=' + v,
lambda d, v: '-define ' + d + '=' + v, '.'),
]
argparser = argparse.ArgumentParser(description=(