Toggle coverage and Expression coverage does not included in coverage report

Posted 3 months ago by Deniz Güzel

Post a topic
Answered
D
Deniz Güzel

Hi, I am currently trying to take line, toggle and expression coverage from a verification IP. I have prepared cov_spec file and gave option 

-code-cov a

for covering all. However, final db only consist line, functional and assertion coverage. I also wanted to see expression and toggle coverage. Can you describe me except instrumenting using +b option what should I do. Below  .dpf file given. 

Thanks

0 Votes

C

Christine Andress posted 3 months ago Admin Best Answer

Hello,

The options "+acc+b -code-cov a" should be sufficient, as long as you are not additionally limiting the gathering of expression/toggle/block coverage with the -code-cov-scope-specs option.

Your .dpf file indicates you are using "-code-cov-scope-specs cov_spec" as an option.  I suspect the contents of your cov_spec file are turning off the collection of toggle and expression coverage.

(Note: for the -code-cov-scope file, "+b" means "block coverage (only)", not "callback access" like it would mean in an -acc-specs file.  See https://help.metrics.ca/a/solutions/articles/154000141188 for more details).

Try removing "-code-cov-scope-specs cov_spec" from your command line.


0 Votes


4 Comments

Sorted by
S

Shaun Luong posted 3 months ago Admin

Hi Deniz. I have moved this post to the more appropriate forum, DSim -> Coverage.

0 Votes

D

Deniz Güzel posted 3 months ago

Hi Christine,
Thank you for the feedback. As you guessed, I was not aware of +b option in cov_spec file means only block coverage. Changing cov_spec file content from "path tb.dut +b " to "path tb.dut +" solved issue. I always assumed this "path tb.dut +a" for (a)ll coverage but that was wrong estimation. 

Note: Removing cov_spec file option is not the case because of the known issue in DSIM about UVM environment requires path directive else it crashes when collecting coverage. See

Thank you

0 Votes

D

Deniz Güzel posted 3 months ago

Hi Christine,

 I am using cov_spec file because only give scope DUT to collect block/expression/toggle coverage. Removing cov_spec file is not the case because of simulator crash related with UVM  if i do not define cov_scope. 
See https://help.metrics.ca/support/discussions/topics/154000626463

As you told you in note I totally misunderstood +b flag in cov_spec file. When I have access to my environment I am going to try changing cov_spec file content from "path tb.dut +b " to "path tb.dut + ". I have tried "path tb.dut +a" before for (a)ll coverage but that was also mistaken approach of mine

I am going to mark this entry as answer tomorrow after running simulation.

Thanks for the help. 

0 Votes

C

Christine Andress posted 3 months ago Admin Answer

Hello,

The options "+acc+b -code-cov a" should be sufficient, as long as you are not additionally limiting the gathering of expression/toggle/block coverage with the -code-cov-scope-specs option.

Your .dpf file indicates you are using "-code-cov-scope-specs cov_spec" as an option.  I suspect the contents of your cov_spec file are turning off the collection of toggle and expression coverage.

(Note: for the -code-cov-scope file, "+b" means "block coverage (only)", not "callback access" like it would mean in an -acc-specs file.  See https://help.metrics.ca/a/solutions/articles/154000141188 for more details).

Try removing "-code-cov-scope-specs cov_spec" from your command line.


0 Votes

Login to post a comment