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.
Christine Andress posted
7 months ago
AdminBest 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.
Try removing "-code-cov-scope-specs cov_spec" from your command line.
0 Votes
4 Comments
Sorted by
S
Shaun Luongposted
7 months ago
Admin
Hi Deniz. I have moved this post to the more appropriate forum, DSim -> Coverage.
0 Votes
D
Deniz Güzelposted
7 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üzelposted
7 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 Andressposted
7 months ago
AdminAnswer
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.
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
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
Attachments (1)
alucorevip.dpf
874 Bytes
0 Votes
Christine Andress posted 7 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
Shaun Luong posted 7 months ago Admin
Hi Deniz. I have moved this post to the more appropriate forum, DSim -> Coverage.
0 Votes
Deniz Güzel posted 7 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
Deniz Güzel posted 7 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
Christine Andress posted 7 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