首页 代码覆盖率及脚本分析

代码覆盖率及脚本分析

举报
开通vip

代码覆盖率及脚本分析IP评测系统代码覆盖率分析脚本使用说明IPQualification:CodeCoverageAnalysisScriptsUserGuide版本号0.1Version0.1approvedRevisionHistoryNameDateReasonForChangesVersion目录TOC\o"1-5"\h\zHYPERLINK\l"bookmark6"\o"CurrentDocument"1.概述4HYPERLINK\l"bookmark8"\o"CurrentDocument"代码覆盖...

代码覆盖率及脚本分析
IP评测系统代码覆盖率 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 脚本使用说明IPQualification:CodeCoverageAnalysisScriptsUserGuide版本号0.1Version0.1approvedRevisionHistoryNameDateReasonForChangesVersion目录TOC\o"1-5"\h\zHYPERLINK\l"bookmark6"\o"CurrentDocument"1.概述4HYPERLINK\l"bookmark8"\o"CurrentDocument"代码覆盖率分析4HYPERLINK\l"bookmark10"\o"CurrentDocument"1.2设计流程5HYPERLINK\l"bookmark12"\o"CurrentDocument"2.使用方法5HYPERLINK\l"bookmark14"\o"CurrentDocument"完整性检查5HYPERLINK\l"bookmark16"\o"CurrentDocument"目录结构6HYPERLINK\l"bookmark18"\o"CurrentDocument"文件内容说明6HYPERLINK\l"bookmark20"\o"CurrentDocument"启动软件6HYPERLINK\l"bookmark30"\o"CurrentDocument"错误调试7HYPERLINK\l"bookmark32"\o"CurrentDocument"参考文档71.概述代码覆盖率分析代码覆盖率可以很好的检查测试平台和测试集合到底执行了一个目标代码的多少功能,因此我们可以采用代码覆盖率工具来做验证评估。一个验证环境的好坏可以通过各种代码覆盖率的分析结果来评估。以下是我们推荐的评估内容。语句覆盖率(statementcoverage):这个概念是指在模拟的过程中被执行语句所占的百分比。一个语句没有被执行到则肯定没有被检验过,因此我们规定在一个验证的过程中,语句覆盖率必需要达到100%。分支语句覆盖率(branchcoverage):这个概念是指在条件语句中(if,case)的分支被执行到的百分比。100%的语句覆盖率并不能保证100%的分支覆盖率,因为可能一个if语句并没有else的分支。我们在100%的语句覆盖率的基础上,进一步规定了100%的分支语句覆盖率的指标。目的就是确保类似于上述的分支语句在缺省条件下也进行过测试。条件覆盖率(conditioncoverage):条件覆盖率的概念有较多的标准。比较常用的概念如表达式的条件覆盖率(Erpr.Coverage),重点表达式的条件覆盖率(FocusedExpressionCoverage)。条件覆盖率可以指出在基本的条件(a>b)中以及较复杂的组合条件(a>b)or(b>c)中,有多少种条件组合被测试到。对于条件覆盖率,要达到较高的条件覆盖率比较困难,一般我们将条件覆盖率的指标定义为90%。路径覆盖率(pathcoverage):这个概念是指在一段顺序的代码中,实际所执行到的代码路径所占有可能路径的百分比。由于代码执行路径的数目会随着条件语句的数目而成指数增长,分析路径的覆盖率将会占用大量的模拟资源和时间。因此我们只是推荐在较小的子模块中分析,对于较大的系统,可以视具体情况来决定。这里使用的代码覆盖率分析工具是NC_Verilog和NC_Cover。设计流程2.使用方法2.1完整性检查确认在code_coverage目录下有以下子目录:work和worklib,work目录是当前工作目录,worklib是工作库目录,在work子目录下有以下文件,设计的原代码、测试激励文件、cds.lib文件、hdl.var文件。目录结构文件内容说明在文件cds.lib中定义了映射逻辑库名到物理地址中的库名,此处映射到上一层目录下的worklib。在文件hdl.var中定义了两个变量,变量LIB_MAP映射文件或目录到指定的库中,变量VIEW_MAP映射文件及其扩展名到指定的view名中。启动软件compile设计:测语句覆盖率命令:ncvlog-mess*.v测表达式覆盖率命令:ncvlog-linedebug*.v测状态机覆盖率命令:ncvlog-mess*.v注:假定已将所以需要编译的文件(均为.v文件)放到当前目录下。此步骤完成后会生成形如lib:cell:view的snapshot,在hdl.var中已将view名定为rtl。elaborate设计:测语句覆盖率命令:ncelab-coveragelib:cell:view测表达式覆盖率命令:ncelab-coveragelib:cell:view测状态机覆盖率命令:ncelab-coverage-access+rlib:cell:viewSimulate设计:命令:ncsim-tcllib:cell:view测语句覆盖率命令:coverage-statement测表达式覆盖率命令:coverage-expression测状态机覆盖率命令:coverage-fsmiic_test_1_byte.iic_pci1.iicctl.state-objectipg_clock(以iic_test_1_byte作为测试向量为例,只有子模块iicctl中存在状态机)运行测试:run退出程序:exit此时程序自动生成文件夹cover.cov,其中包含了覆盖率文件*.acv和*.dsn。记录设计结果,可到图形界面观察结果,也可生成覆盖率报告。生产覆盖率报告的命令:nccov-batchcover.cov/*.acv或*.dsn错误调试使用以下命令查找错误的位置,并根据错误提示信息修改脚本grepErrornccov.loggrepErrorncsim.loggrepErrorncelab.loggrepErrorncvlog.log参考文档:8HFUTVLSIDesignInstitute,IPQualificationProject
本文档为【代码覆盖率及脚本分析】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥15.0 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
xiaobingbing
暂无简介~
格式:doc
大小:60KB
软件:Word
页数:9
分类:建筑/施工
上传时间:2022-11-16
浏览量:3