mirror of
https://github.com/lowRISC/ibex.git
synced 2025-04-23 13:27:10 -04:00
Add Xcelium simulation setup
This commit is contained in:
parent
c011fda40e
commit
8c6395a257
3 changed files with 44 additions and 2 deletions
|
@ -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',
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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=(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue