最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

NC

IT圈 admin 7浏览 0评论

NC

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 ] [-covdesign ] [-covtest ]
-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

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 ] [-covdesign ] [-covtest ]
-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分析。

发布评论

评论列表 (0)

  1. 暂无评论