"For a professional sports team...to have so much more success than other teams playing under the same set of rules got me thinking about standards in our industry."
Welcome to the DVCon US 2019 edition of Verification Horizons. We here in New England are still basking in the glow of yet another Patriots Super Bowl victory to go along with the Red Sox having won the World Series in October. That makes six championships for the Patriots and four for the Red Sox since 2001, not to mention one each for the Celtics and Bruins. I know that many of you either may not care or find it really annoying that we keep winning, but since this is my one opportunity to gloat to 70,000 readers, I can’t help myself.
For a professional sports team like the Patriots, who by the way have played in nine of the last 18 Super Bowls, to have so much more success than other teams playing under the same set of rules got me thinking about standards in our industry. Just as the NFL defines rules for everything from on-field play to salary-cap and other personnel issues, an industry standard specifies the rules that vendors and users must follow to allow fair competition. The excitement comes from one team’s (or one company’s) ability to innovate within those rules to surpass the competition and provide value to their fans (or users).
We start off this issue with a great article from our friends at Axiomise on the “Ten Rules to Successfully Deploy Formal.” Each of the ten rules includes practical advice for how to make it work for you, so whether you’re new to formal verification, considering adopting it, or an old hand at using it, I’m sure you’ll find some great pearls of wisdom.
We continue exploring formal verification with “Formal Apps Take the Bias Out of Functional Verification” by my Mentor colleague Bill Au. Bill gives us a nice overview of Mentor’s Questa® Formal Verification Apps, which automate many of your critical verification tasks without requiring you to know how to write assertions or even really understand how formal verification works. Bill also includes a few anecdotes about how a few of these automated apps were used successfully on some typical projects.
As useful as Formal Apps can be, you may eventually have to write assertions on your own. In “Simplifying Assertion Validation Using UVM Callbacks,” my colleague Arushi Jain shares some great insights into how you can use UVM callbacks to inject errors in your stimulus to make sure that your assertions are doing what you think they are. While I’m not generally a big fan of callbacks myself, I have to admit that Arushi makes a good case for their utility in modifying the stimulus stream in more targeted ways than simply overriding a sequence via the factory can let you do.
Next, in “Effective Elements Lists and the Transitive Nature of UPF Commands,” our Low Power expert, Progyna Khondkar, gives us an in-depth look at linking blocks in your HDL to specific elements of your UPF. In particular, we’ll see how several commands in UPF are (or can be specified as) transitive and thus apply to child elements when specified for the parent. By understanding these relationships and a few basic UPF commands, you’ll learn how to establish the exact relationships you need between your UPF description and DUT objects to define an accurate UPF model for your design.
Last but not least, we continue our Portable Stimulus series by Mentor’s Portable Stimulus guru, Matthew Ballance. In “Selecting a Portable Stimulus Application Focal Point,” Matthew helps us take a step back and think about the organizational implications of adopting Portable Stimulus.