Need to deselect coverage for memory instance and any logic hierarchy below from top module.
Using " deselect_coverage -instance dut.mem_i... -be " option to deselect coverage during elaboration stage. The final coverage report still shows coverage for dut.mem_i and below.
Is there any other option in iccr or irun for deselecting coverage from getting reported?
What coverage types are you seeing under the dut.mem instance? I would not expect to see block or expression, based on your command above, but you might still have FSM and toggle enabled, depending on the preceding select_coverage commands. Are you accidentally using the "-coverage all" option on the run / ncelab command in addition to -covfile? This is a common mistake, and I would recommend always to use a covfile and never the -coverage option (unless you want all the default coverage options, which is pretty rare).
Can you share your entire coverage control file, so that we can see what else might be impacting this?
You might also need to "deselect_coverage -all -module <memory_module_name>..." if you had selected module based coverage as well.
As a post-processing step you can use IMC to exclude complete levels of hierarchy, just select the dut.mem instance in the GUI and click the exclude button in the toolbar. Just remember to save the refinement file (*.vRefine) for future use! I would however recommend fixing the elaboration coverage settings because that will improve simulation speed as well.
The intention is to disable the coverage for memory instances. But the block and expression coverage is also getting reported in GUI as well in html report.
I am using iccr for coverage analysis, will try to check the same with IMC.
Other parameters used in ccf are as mentioned below.
set_ignore_library_nameset_code_fine_grained_mergingset_implicit_block_scoring -offset_assign_scoringset_expr_scoring -allset_toggle_includex
Thanks for the help.
For select_coverage I am using -coverage bet option. As you pointed out -coverage all may be overriding deselect_coverage option.
I will use IMC hence forth for coverage analysis.
Thanks and best regards
OK, seriously I would advise removing "-coverage bet" from the command line and instead put "select_coverage" commands into the CCF.
For example:select_coverage -bet -instance dut...deselect_coverage -all -instance dut.mem...