Never miss a story from Verification. Subscribe for in-depth analysis and articles.
How often has this happened to you? You are re-using a part of a previous design in your new design, you are in the depths of coverage closure, both functional and design code coverage. You discover that many parts of the re-used design are actually not applicable in the new design, and you manually exclude those RTL lines of code. But wait – there is another design change, and your RTL now has been shifted around, the lines are no longer the same, and you need to go back into the code and manually re-apply all of your exclusions to get to that mandated 100% code coverage signoff metric your boss requires. So much for the kid’s hockey game…
But wait, you happen to have discovered a new feature within the Incisive Metrics Center (IMC) tool that might actually help you get your weekend back. Let's see, can this refinement resilience feature really do the job? Let's try. So you fire up IMC, set the appropriate flags in the coverage control file, and magically all of your refinements are re-applied to your design changes. Can it really be that simple, asks the engineer to the Cadence AE who assisted. "Yes, it can," says the AE. Now, let's learn a bit more about this cool time-saving feature.
To set up refinement resilience in IMC, all you need is to set the appropriate flag and point IMC to the right path for the coverage files. A set of default comparison rules are provided within IMC which users can edit, but mostly don’t have to. The IMC tool compares the refinement file (vRefine.xml) with the new design, and lines up those refinements that were created from the previous design.
Once applied, the new design contains all of the refinements from the previous, without the user having to do anything. Ah, but what if I do actually make a small change in the previously excluded section? No problem, IMC will highlight those changes as ‘orphans’ , and it will also highlight anything that it cannot match from the previous. Sounds great, right? It is. It works in GUI or batch mode; it operates with block, expression, toggle and FSM; it shows the orphans in a separate window within IMC; and it can be customized to accommodate special rules you may have.
This Incisive Metrics Center feature is fully supported and operational within IMC and Incisive vManager solution going back to the 13.2 release (2013).
Give it a try, get your weekends back.
John Brennan - IMC, vManager, and MDV Product Management Director