zoukankan      html  css  js  c++  java
  • VCS中的覆盖率分析

    VCS在仿真过程中,也可以收集Coverage Metric。其中覆盖率类型有:

    1)Code Coverage:包括control_flow和value两部分的coverage,line_coverage, branch_coverage, toggle_coverage, 

                                  FSM_coverage。

    2)Functional Coverage:包括covergroup,SVA。

    Coverage Database的产生:包含所有的有关coverage的信息,默认放在simv.vdb文件夹下。

    db中的默认路径是,snps/coverage/db/testdata/line.verilog.data.xml

                         fsm/cond/tgl/branch等xml信息。

    在编译命令中:vcs [cover_options] [compile_options] source.v

    [cover_options]可以是:-cm line+cond+tgl+fsm+branch+assert

      -cm_dir在compile options中改变simv.vdb文件夹的位置。

      -cm_name指定testname。主要改变testname在db中的命名。

    在仿真过程中:simv [cover_options] [run_options]

    [cover_options]可以是:-cm line+cond+tgl+fsm+branch+assert

    [run_options]指定runtime options。

    Coverage Reports的产生:

    使用工具URG(Unified Report Generator)产生html格式文件。

            urg  -dir  dir1 [urg_option] -dbname merge

    使用DVE的GUI界面。

            dve -cov -dir <simv.vdb>

    使用verdi的gui界面。

        verdi -cov -covdir <simv.vdb>

        verdi -cov -h,打印coverage mode下的帮助信息

    其他的vcs编译和仿真中的option:

      -cm_hier,在编过程中,指定收集coverage的scope。

      -cm_assert_hier,在编译过程中,只是指定不收集coverage的assert hier。

          其中hier的表示,+/- module,+/- tree,+/-assert

      -cm_count,在gui和urg report中,显示次数,比如toggle的次数。

      -cm_glitch period,不收集一定范围的glitch的coverage。simulation option

      -cm_start/stop,指定coverage收集的时间,simulation option

    coverage group相关的option;

      -covg_disable_cg,关闭所有的coverage group的收集

    urg生成report中的option:

      -dir,指定需要拿到的db的hier,

      -dbname,指定输出的merge db的hier

      -elfile,指定exclusive的file,这样更好计算coverage。

      -elfilelist

      -noreport,不输出最终的report,只是merge db

      -format text/both,指定report的输出格式

      -matric [line,cond,fsm,tgl,branch,assert]执行计算的coverage类型

      -parallel,并行merge

      -full64,以64bit的程序进行merge

      

      -plan,-userdata,-userdatafile,-hvp_no_score_missing,指定hvp相关的生成信息。

  • 相关阅读:
    Sprite子节点透明度不能跟随父节点变化的问题求解(转)
    cocos2dx模拟器修改窗口大小
    VS中拒绝在if语句中赋值 (转)
    cocos2dx 开启控制台
    (原创)动态内存管理练习 C++ std::vector<int> 模拟实现
    cocos2dx-lua 圆角矩形 圆角图片 drawNode
    cocos2dx-lua 裁剪ClippingNode,圆形头像,其他形状图片
    cocos2dx-lua 文件操作
    (原创)cocos2dx-lua TableView官方demo分析
    lua table表判断是否为空
  • 原文地址:https://www.cnblogs.com/-9-8/p/4479034.html
Copyright © 2011-2022 走看看