The growth of standards-based interfaces and the rapid advance in the state of the art for SoC design have created a real need for pro-quality verification IP (VIP). One interesting facet of VIP development is its parallel evolution with design IP. In both cases, IP has grown ever more complex and that rise in complexity pushes the make-versus-buy decision way over to the “buy” side of the scales. Why?
Well, just look at the complexity that’s involved. In a recent interview with Industry Insights blogger Richard Goering, Pete Heller said “Today, PCI Express 3 and USB 3.0 are each thousand page specs. It’s not realistic or sensible for a development team to use its own resources to create VIP to verify a standard protocol that adds literally no differentiation to their end product.” (Heller is the senior product line manager for VIP at Cadence.)
Heller’s conclusion, in a nutshell, applies to both design and verification IP. If you cannot create sufficient product differentiation—whether SoC or system—by developing proprietary IP for a specific function block or verification task, then you really should purchase a proven, pre-verified IP offering because you will save time (critical) and you will likely save money (from the improved reusability). In the mad rush to tape out a chip, few in-house VIP teams end up being rated on the reusability of their work. As a consequence, the reusability of in-house IP often takes a back seat to simply getting the task at hand accomplished.
As Goering states in his article, if you look back ten years or so, most verification teams created their own verification IP. They went to that effort for several reasons. First, the protocols being verified weren’t as complex as they are today. (Re-refer to Heller’s statement above if your memory is short.) Second, the market for commercial VIP was not as mature and the players had neither the experience nor the track record that they enjoy today. Finally, whether or not VIP that’s written in-house differentiates the target product, there’s always an NIH (not invented here) factor to deal with. It takes a certain amount of ego to step forward and design a product and the NIH factor always comes hand-in-hand with ego.
Heller provides some guidelines to help you make the right make-versus-buy decision with respect to VIP. I’ve decided to bullet those recommendations to help bring out Heller’s key points about commercial VIP:
- Commercial VIP should have been exercised across a range of user implementations to ensure quality.
- Commercial VIP must provide protocol compliance checking and functional coverage metrics.
- Commercial VIP needs to be reusable between projects.
- Commercial VIP must support multiple simulators, languages and methodologies.
- Commercial VIP must work at all abstraction levels from block level to subsystem to full chip (SoC) to avoid re-creation of verification environments at different points in the project life cycle.
You can see Richard Goering’s original interview with Pete Heller here.