Cadence中的Incisive Comprehensive Coverage(ICC) solusion提供在仿真中的覆盖率分析。

ICC中的覆盖率类型有两大类:

1)Code Coverage:主要检查代码的执行量,其中包括的小类有:Block Coverage(Branch Coverage),

Statement Coverage(Expression Coverage),Toggle Coverage。

2)Functional Coverage:主要检查由PSL,SystemVerilog assertion,covergroup声明的覆盖点。也包括两小类:基于PSL,SVA

等声明性语句的控制导向的功能覆盖。基于SV Covergroup的数据导向的功能覆盖。

为了加入覆盖率的分析功能。

1)ncelab中,加入以下define。ncelab [-coverage <coverage_types> | -covfile<coverage_configuration_file>]

[-covdut <DUT_module>]

[other_elaboration_options]

2)在ncsim中,加入如下define。ncsim [-covoverwrite] [-covworkdir <workdir>] [-covdesign <design>] [-covtest <test>]

-covoverwrite使能新的结果覆盖输出文件和文件夹。

-covworkdir指定workdir,默认是cov_work/design/test。剩余两个指令类似。

如果使用irun来运行,则将上述命令加在一起即可。

irun [-coverage <coverage_types> | -covfile<coverage_configuration_file>] [-covdut <DUT_module>]

[-covoverwrite] [-covworkdir <workdir>] [-covdesign <design>] [-covtest <test>]

ICC的图形界面叫做ICC Analyzer,通过命令iccr -gui来打开。通过命令iccr -gui -test来加载测试用例或通过图形界面的open。GUI Mode

还有一种写command file,  iccr <command_file>来执行。

在合并不同的test的coverage时,ICC提供两种模式:

1)Standard Merge:ICC默认的Merge behavior。首先copy the primary test model(.ucm),将secondary test中与primary test

相同的覆盖项合并,如相同的Covergroup,SVA,FSM,expression等。

2)Union Merge:通过set_merge -union来设置。首先copy the primary test model(.ucm),将secondary test中所有的覆盖项都

加入primary test。

merge [coverages] {<test_list> | -testfile <filename>} -output <output_test> [-message]

[coverages] ::= [-code] [-toggle] [-fsm] [-functional]

<test_list> ::=<primary_test> {<one_or_more_secondary_tests>}

Eg: merge  test1  test2   test3   -output  all

应用命令report_html命令来产生html格式的覆盖率报告。

cadence不再使用ICC工具,改用IMC进行coverage分析。

NC_Verilog中的工具ICC的更多相关文章

  1. Eclipse与Android源码中ProGuard工具的使用

    由于工作需要,这两天和同事在研究android下面的ProGuard工具的使用,通过查看android官网对该工具的介绍以及网络上其它相关资料,再加上自己的亲手实践,算是有了一个基本了解.下面将自己的 ...

  2. OpenCV成长之路(3):模仿PhotoShop中魔术棒工具

    本文的主题实际上是图像的颜色空间的转换,借助一个颜色选取程序来说明OpenCV中颜色转换函数的用法以及一些注意事项. 一.几种常见的颜色空间: RGB颜色空间:RGB采用加法混色法,因为它是描述各种“ ...

  3. 秒味课堂Angular js笔记------Angular js中的工具方法

    Angular js中的工具方法 angular.isArray angular.isDate angular.isDefined angular.isUndefined angular.isFunc ...

  4. JUC学习笔记--JUC中并发工具类

    JUC中并发工具类 CountDownLatch CountDownLatch是我目前使用比较多的类,CountDownLatch初始化时会给定一个计数,然后每次调用countDown() 计数减1, ...

  5. JQuery中的工具类(五)

    一:1.serialize()序列表表格内容为字符串.返回值jQuery示例序列表表格内容为字符串,用于 Ajax 请求. HTML 代码:<p id="results"&g ...

  6. 逆向中静态分析工具——IDA初学者笔记之字符串分析

    逆向中静态分析工具——IDA初学者笔记之字符串分析 程序中往往包含很多字符串资源,这些资源存在于PE文件的rdata段,使用IDA反编译后,可以查找到这些字符串, 逆向破解程序通常需要一个突破点,而这 ...

  7. 逆向中静态分析工具——IDA初学者笔记

    逆向中静态分析工具——IDA初学者笔记 //****************************************************************************** ...

  8. Java中的线程--线程中的工具

    这主要想写一下Java中的jdk提供的一些线程中的工具, 一.semaphore信号灯 Semaphore可以维护当前访问自身的线程个数,并提供了同步机制,使用Semaphore可以控制同时访问资源的 ...

  9. jquery-12 jquery中的工具方法有哪些

    jquery-12 jquery中的工具方法有哪些 一.总结 一句话总结:四个较常用方法.1.isArray();2.isFunction();3.isEmptyObejct();4.trim(); ...

随机推荐

  1. Promise在await报错后,如何继续往下跑...

    一.resolve 当a>0时,正常情况依次输出A.B.C console.log("A"); let result = await this.test(); console ...

  2. oracle如何设置表空间autoextensible自动扩容

    SELECT a.tablespace_name "表空间名", total / 1024 / 1024 "表空间大小单位M", free / 1024 / 1 ...

  3. iOS - 获取安装所有App的Bundle ID

    先导入#import <objc/runtime.h>头文件 使用runtime获取设备上的所有app的bundle id // Class LSApplicationWorkspace_ ...

  4. CBV流程之View源码解析

    CBV是基于反射实现根据请求方式不同,执行不同的方法. 请求流程:view源码解析 1.urls.py :请求一定来执行视图下的as_view方法.也可以直接点击as_view()来找源码. 2.vi ...

  5. 关于htc m9w更新后手机无限重启的解决办法

    更新htc sense7.0后,手机无限重启.网上搜了一下,是和谷歌框架冲突的原因,但是机子本身没有root,删除不了gms.只能死马当活马医,把能看到google应用都给删了,就解决了. 步骤: 长 ...

  6. Java 8新增的Lambda表达式

    一. 表达式入门 Lambda表达式支持将代码块作为方法参数,lambda表达式允许使用更简洁的代码来创建只有一个抽象方法的接口(这种接口被称为函数式接口)的实例,相当于一个匿名的方法. 1.1 La ...

  7. HOJ 2985 Wavio Sequence(最长递增子序列以及其O(n*logn)算法)

    Wavio Sequence My Tags (Edit) Source : UVA Time limit : 1 sec Memory limit : 32 M Submitted : 296, A ...

  8. opencv学习笔记——cv::mean()函数详解

    opencv中封装了一个专门用于求解cv::Mat均值的函数,即cv::mean(&cv::Mat),该函数会得到Mat中各个通道的均值,若要获取指定通道的均值,做进一步解析即可. 具体使用方 ...

  9. Django的视图与网址之加法计算

    在最新的Django2.1中,views.py中采用的地址映射方式发生了变化,通过一个加法运算我们来看一看. 方法一:在视图views.py中定义视图逻辑,求解两个数的加法运算:c = a + b,定 ...

  10. Redis used_cpu_sys used_cpu_user meaning (redis info中cpu信息的含义)

    Redis 中 used_cpu_sys 和 used_cpu_user含义. 在Redis的info命令输出结果中有如下四个指标,redis官网给出了下面一段解释,但是还是不明白什么意思. used ...