分为三个文件:
- .sh文件(这个文件可以理解成vmanager提交后用vcs进行之后的编译仿真过程):
- .vsif文件(这个文件可以理解成进行集体提交的过程),vmanager要识别并导入要回归的用例
- .flt文件(这个文件是对仿真生成文件的过滤)
下面详述每个文件里的东西:
.sh 文件:
- 包含snapshot_path,相当于你启动vmanager时他会自动生成一个路径:是${BRUN_SESSION_DIR}/session_build;
- case中描述test的几种形式,分别是:1. 不dump波形、不收集覆盖率;2.不dump波形,收集覆盖率;3.dump波形,不收集覆盖率… 每种case中用到的选项需要指出。例如:
- 随后就是用到变量的声明及仿真过程.具体地:a.判断是否存在含有上图中module_name和tests_type的filelist.f文件,存在后在-f中需要添加.f,随后开始xrun/vcs仿真过程。
对于vsif文件中描述了session的详细信息,具体包括:
session session_name {
top_dir : (指定session的具体位置);
output_mode: (指定输出模式:log_mode);
max_runs_in_parallel: (指定最多并行跑的用例数);
default_dispatch_parameter: (-q -P);
dut_type:;
dut_release_version:;
dut_svn_version:;
post_session_script:clean.sh(删除生成的中间文件/INCE_*、/xcelium.d);
};
group 回归集合名{
run_script:“.sh(上述的.sh文件)”;
scan_script:“.flt(下面讲到的仿真生成的log过滤文件)”;
sv_seed:random;
(count: ;)
test 具体test的名字{
run_mode:之前.sh文件定义好的case(mode);
dut_name:(做标识用,可以为用例名字);
sim_args:加的define的具体内容(指示说明作用,与define 保持一致,具体会在.sh中进行编译仿真时用到);
count:(回归次数);
timeout:超时多长时间结束仿真;
};
test …{};
…
};