HVP plan
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的更多相关文章
- 测试计划(Test Plan)
测试计划(Test Plan) 版权声明:本文为博主原创文章,未经博主允许不得转载. 测试计划的概念: 测试计划是一个文档,描述了进行测试的测试范围,测试策略和方法,测试资源和进度.是对整个测试活动进 ...
- SQL Tuning 基础概述02 - Explain plan的使用
1.explain plan的使用 SQL> explain plan for delete from t_jingyu; Explained. SQL> select * from ta ...
- POJ2175 Evacuation Plan
Evacuation Plan Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4617 Accepted: 1218 ...
- New Plan!
很久无写过blogs,荒废得差不多了,在博客园虽开bolg 5年多,但由于自己工作的问题,从开始的热情记录,到冷却冰冻,再到现在重拾起来,有一番感受:从大学刚毕业的制作网页菜鸟,开始接触DIV,CSS ...
- 分析oracle的执行计划(explain plan)并对对sql进行优化实践
基于oracle的应用系统很多性能问题,是由应用系统sql性能低劣引起的,所以,sql的性能优化很重要,分析与优化sql的性能我们一般通过查看该sql的执行计划,本文就如何看懂执行计划,以及如何通过分 ...
- 【转】Oracle 执行计划(Explain Plan) 说明
转自:http://blog.chinaunix.net/uid-21187846-id-3022916.html 如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQ ...
- MySQL慢查询Explain Plan分析
Explain Plan 执行计划,包含了一个SELECT(后续版本支持UPDATE等语句)的执行 主要字段 id 编号,从1开始,执行的时候从大到小,相同编号从上到下依次执行. Select_typ ...
- Timusoj 1982. Electrification Plan
http://acm.timus.ru/problem.aspx?space=1&num=1982 1982. Electrification Plan Time limit: 0.5 sec ...
- Oracle SQL explain/execution Plan
From http://blog.csdn.net/wujiandao/article/details/6621073 1. Four ways to get execution plan(anyti ...
随机推荐
- ant gradle curl等工具原理以及使用记录
1.ant是早一些的java 项目配置管理工具. 2.gradle是比maven还新的项目配置管理工具. 3.curl可以方便进行网络测试.curl可以方便用来http请求测试,支持各种命令,从这个角 ...
- You must configure either the server or JDBC driver (via the serverTimezone configuration property
使用JDBC连接MySql时出现:The server time zone value '�й���ʱ��' is unrecognized or represents more than one ...
- vue 安装及使用
一, vue.js 2.0 1, cnpm install vue-cli -g 全局安装 2, 运行vue查看安装是否成功(创建vue-cli目录: vue init webpack demo) ...
- mysql 插入百万条数据
利用mysql内存表插入速度快的特点,先存储过程在内存表中生成数据,然后再从内存表插入普通表中 一.创建内存表 CREATE TABLE `vote_record_memory` ( `id` ) N ...
- ES6 模块机制
ES6 实现了模块功能 将文件当作独立的模块,一个文件一个模块 每个模块可以导出自己的API成员,也可以导入其他模块或者模块中特定的API ES6 模块的设计思想,是尽量的静态化,使得编译时就能确定模 ...
- SpringBoot微服务架构下的MVC模型总结
SpringBoot微服务架构下的MVC模型产生的原因: 微服务概念改变着软件开发领域,传统的开源框架结构开发,由于其繁琐的配置流程 , 复杂的设置行为,为项目的开发增加了繁重的工作量,微服务致力于解 ...
- [SDOI2009]SuperGCD
题目链接 这题.高精度.恶心.难受. 那么高精度的gcd怎么做呢? 若a=b gcd(a,b)=a ①a偶b偶 gcd(a,b)=2*gcd(a/2,b/2) ②a偶b奇 gcd(a,b)=gcd(a ...
- PDF在线解除密码的方法是什么
大家在网上下载一些关于PDF文件的时候通常会发现有的PDF文件是有密码的,有密码的文件通常是不可以被转换的,这个时候我们就需要将其密码解除掉,这样后期不仅方便阅读也方便了PDF文件的转换. 操作工具: ...
- Python 学习笔记9 循环语句 For in
For in 循环主要适用于遍历一个对象中的所有元素.我们可以使用它遍历列表,元组和字典等等. 其主要的流程如下:(图片来源于: https://www.yiibai.com/python/pytho ...
- day22:初识面向对象
1,类可以理解为是一个模子,可以是代码精简,方便增加实例,方便修改,更加规范,能知道具体的属性,方法,但是不知道具体的值 2,对象有具体的值,属性和技能都是根据类规范的 3, 先有类才有对象 4,面向 ...