HVP,hier verification plan,建立整个验证的plan,在验证后期,通过vcs的coverage db可以直接进行反标,

  包括反标code coverage,function coverage,testcase等。

coverage的database,包括vcs产生的db,自己拿到的external的data,

hvp提供一个feature list,pri,当前的design phase等信息,最终生成一份反标后的报告。

end user app包括两种方式,urg report,

                         spreadsheet annotator。(需要反标的excel的情况下)

  

一般描述一个verfication plan的方式有:

  1) HVP language,通过verdi和dve的gui界面创建有同样的效果。

  2) 使用一个spreadsheet,格式需要是MS excel,openoffice 2.0或更新的版本。(需要保存为xml格式)

spreadsheet的方式创建hvp,需要一定格式:

  

  1) matrics和attri需要单独的sheet,plan单独的sheet。

  2) plan的sheet中说明各个feature和sub feature,还有一些内建的attri/annotate。

  3) plan中单独的column指定,measure source和matics的项。

  

使用hvp language的方式创建plan,

plan...endplan,创建一个plan的域,其中可以声明其他的subplan,并且其他的sub_plan可以通过include将文件添加进来

plan中的attribute,内建的有:string----owner,int---at_least,int----test_expected,也可以自己声明,attribute,主要来用描述feature的一些特性,

plan中的annotation,内建的有:int----weight,string----description,也可以自己声明。annotation,也是用来描述feature的一些特性的。

  attribute与annotation的区别主要在于,attribute会按hier的向下传递。

  plan的很多信息都是有数据类型的,如enum,real,int,string等,定义时,需要注意。

feature的定义,包括名字,measure名字,其中的matrics类型,source的路径等。

  feature slave_write;

    weight = 2;

    Group = Group >= 0.8 (override掉内部的额100%的限制。直接大于0.8的时候变绿)

    measure test,Cond Demo;

      source = "**test1**"

    endmeasure

  endfeature

  其中matrics的类型,vcs内部支持的包括,Line,Cond,FSM,Toggle,Branch,Assert,Group,Group.count

              SnpsAvg,AssertResult,test,test.percent,test.compeltion这些。

  measure之后的Demo表示的是当前measure的名字,这个在所有的feature中都是可以相同的。但是matrics的类型,每个feature都是不同的

    code coverage,使用tree或者instance来指定hier,

    function coverage使用group或者group instance来指定hier,

    assertion使用property来指定hier,

    test直接使用testcase name来指定hier。

    内建的metrics是有自己内部的goal的,Line>80%,Group>90%等,可以自己设置。

  source中,指定的都是code,coverage group,coverage bin,test等的hier信息,可以使用通配符

    ?通配符,表示匹配任何一个字符;

    *表示匹配,0个或多个该hier内部的字符;

    **表示匹配,0个或多个不限制hier的字符;

除了vcs定义的几种matrics之外,也可以自定义matrics,这时hvp反标的时候,需要自己加userdata

  metric enum {pass, fail} demo_metric;

    goal = (demo_metric.fail <= 0);

    aggregator = sum;

  endmetric

  metric的数据类型,可以是ratio,percent,interger,real,enum,

    在定义过程中,必须执行goal的目标,并且制定计算方式。

    还需要自己建立userdata文件,

user_data的格式:

  HVP metric = demo_metric

  test1 = pass

  test2 = fail

在使用该自定义的metric的时候,与自定义的相同,需要执行source、name。

  measure demo_metric metric_demo;

    source = "**test1**", "**test2**"

  endmeasure

HVP language中的comment,同样使用/*和//来表示注释。同样支持`define,`include,`ifdef等宏

HVP language中支持,不同的项目阶段,可以对不同的HVP文件,在附加不同的配置文件;

1) override功能,主要是对attribute,annotation,goal的override。

    override ov_owner;

      topplan.subplan1.feature1.Line > 80%;

    endoverride

2) filter功能,主要针对内部的feature,内部语言删选顺序进行;

    filter my_view;

      remove feature where phase > 2;

      keep feature where phase == 5;

      keep feature where rounter == "N1" || rounter == "N2";   //留下内部还有attri rounter的feature。

    endfilter

3) until功能,建立一个针对时间的选择block;

    until 1-31-2014;

      override name;

      endoverride

    elseuntil 04-30-2014;

      override name;

      endoverride

    enduntil

在写好hvp文件和mod文件之后,可以通过hvp的命令,直接生成对应的doc和xls、

1) hvp genxls,生成xls

    -plan <hvpfile>  -outdir <dirname> -lca -expand_subplans “将plan和subplan生成在同一个sheet中”

2) hvp gendoc,生成doc

3) hvp annotate,对hvp plan进行反标、

    -plan <spreadsheet或者doc xml file>

    -mod <指定modifier文件>

    -usrdata <指定除了db之外的文件>

    -dir <vcs db>

    -elfile <指定exclude file>

    -hvp_no_score_missing <没有match到的feature不指定为0>

    -vc_lic_wait,等待lic

    -metric指定某个metric的反标。

HVP plan的更多相关文章

  1. 测试计划(Test Plan)

    测试计划(Test Plan) 版权声明:本文为博主原创文章,未经博主允许不得转载. 测试计划的概念: 测试计划是一个文档,描述了进行测试的测试范围,测试策略和方法,测试资源和进度.是对整个测试活动进 ...

  2. SQL Tuning 基础概述02 - Explain plan的使用

    1.explain plan的使用 SQL> explain plan for delete from t_jingyu; Explained. SQL> select * from ta ...

  3. POJ2175 Evacuation Plan

    Evacuation Plan Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4617   Accepted: 1218   ...

  4. New Plan!

    很久无写过blogs,荒废得差不多了,在博客园虽开bolg 5年多,但由于自己工作的问题,从开始的热情记录,到冷却冰冻,再到现在重拾起来,有一番感受:从大学刚毕业的制作网页菜鸟,开始接触DIV,CSS ...

  5. 分析oracle的执行计划(explain plan)并对对sql进行优化实践

    基于oracle的应用系统很多性能问题,是由应用系统sql性能低劣引起的,所以,sql的性能优化很重要,分析与优化sql的性能我们一般通过查看该sql的执行计划,本文就如何看懂执行计划,以及如何通过分 ...

  6. 【转】Oracle 执行计划(Explain Plan) 说明

    转自:http://blog.chinaunix.net/uid-21187846-id-3022916.html       如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQ ...

  7. MySQL慢查询Explain Plan分析

    Explain Plan 执行计划,包含了一个SELECT(后续版本支持UPDATE等语句)的执行 主要字段 id 编号,从1开始,执行的时候从大到小,相同编号从上到下依次执行. Select_typ ...

  8. Timusoj 1982. Electrification Plan

    http://acm.timus.ru/problem.aspx?space=1&num=1982 1982. Electrification Plan Time limit: 0.5 sec ...

  9. Oracle SQL explain/execution Plan

    From http://blog.csdn.net/wujiandao/article/details/6621073 1. Four ways to get execution plan(anyti ...

随机推荐

  1. Java 实现视频下载功能

    public static boolean httpDownload(String httpUrl, String saveFile) { // 1.下载网络文件 int byteRead; URL ...

  2. Android 常见问题解决

    1.Android 启动Activity后阻止EditText自动获取焦点 在EditText中添加如下属性即可 <LinearLayout android:focusable="tr ...

  3. rem实现移动端自适应页面

    一.把px转换成rem方案 1.cssrem插件 2.css预处理器 3.rem-unit插件 4.px2rem插件 rem就是相对于根元素的font-size来做计算,设置好根结点字体大小,子节点用 ...

  4. [C#] 動的にアセンブリをロードする

    アプリケーション ドメインにおいて起動時に読み込まれない別のアセンブリ (.dll や .exe) を読み込む場合.System.Reflection.Assemby クラスの Load メソッドを使 ...

  5. 二分三元组 CodeForces - 251A

    题目链接: https://vjudge.net/problem/35188/origin 题目大意: 要求你找到一个 i < j < k时有 a[k]-a[i] <= d的组的个数 ...

  6. Linux命令行参数前加--,-和不加杠

    参数前“-”的表明后面的参数是字符形式. 参数前“--”的则表明后面的参数是单词形式. 参数前有横的是System V风格. 参数前没有横的是BSD风格. 

  7. js异步

    1.定时器都是异步操作 2.时间绑定都是异步操作 3.AJAX中一般我们采用异步操作 4.回调函数可以理解为异步操作 异步:指的是每一个任务有一个或多个回调函数,前一个任务结束后,不是执行后一个任务, ...

  8. Java课程课后作业190315之从文档中读取随机数并得到最大连续子数组

    从我上一篇随笔中,我们可以得到最大连续子数组. 按照要求,我们需要从TXT文档中读取随机数,那在此之前,我们需要在程序中写入随机数 import java.io.File; import java.i ...

  9. Anaconda安装Package的问题(Permission Denied)

    最近需要用到低版本的pytorch,使用pytorch官网安装的pytorch版本是最新的0.4.1,而它的previous version的那个链接一直打不开. 因此考虑使用清华的镜像源: 1.In ...

  10. Unity进阶----AssetBundle_02(加载依赖关系及网络资源)(2018/10/31)

    网络资源加载: string path ="file://"+ Application.streamingAssetsPath + "\\windows\\123&quo ...