Certitude™ Methodology Primer:  Early Application Provides Significant Value

The Certitude™ Functional Qualification System identifies holes and weaknesses in the verification environment that can let RTL bugs slip through the process undetected.  Although you can apply Certitude at many different points throughout the verification process, experience has shown that an incremental approach beginning in the early stages is often best – providing immediate value and improving the verification environment over time while balancing resources vs. other verification activities.

When Should I Start Running Functional Qualification?
Functional Qualification requires a reasonably complete and functional RTL description and a set of simulation tests that exercise the RTL to verify that it conforms to the functional specification of the design.  However, this should not be interpreted as a requirement that “all” simulation tests must be available before functional qualification can begin.  In fact, users can gain valuable insight into the verification environment when only a small number of tests are available.  Consider, for example, the set of output stuck-at faults injected by Certitude in the early stages of qualification using its default class-based fault prioritization algorithm.  A verification environment with a small set of functional tests and the most basic checkers and assertions in place should probably detect these types of gross errors, even if tests that exercise the more complex and subtle aspects of the design are yet to be written.  An environment that doesn’t detect these faults is certainly more likely to let serious RTL bugs slip through the process unnoticed.

So, I’ve Qualified the Basic Aspects of My Environment – What’s Next?
As more tests are written, qualification can proceed incrementally.  For example, the completion and use of a “smoke suite” of tests – a set that exercises the major functional aspects of the design and is used as a first-level sign-off before significant RTL changes are checked into the design database – argues for expanded use of functional qualification to provide a more comprehensive measure of verification environment quality and identify holes and weaknesses that themselves invalidate the purpose of the “smoke suite”.  Again, Certitude’s automated fault prioritization process can be applied to guide the qualification at this stage with an expanded set of faults that stress-test the maturing verification environment.

Good News:  Incremental Qualification Accumulates Results Over Time
Functional qualification with Certitude is a cumulative process.  As you improve your verification environment, Certitude ensures that previously undetected faults are detected and then delves deeper into its prioritized fault list to qualify the more subtle aspects of your environment.  As a user, you get the benefits of early feedback on your environment – allowing you to find and fix problems to ensure that your environment is robust – and accumulation of qualification results over time to provide a complete assessment of the quality of your verification environment.



Comments


If you have trouble reading the code, click on the code itself to generate a new random code.