Hardware Verification with SystemVerilog: An Object-Oriented Framework

The previous part of the handbook was a high-level look at System-Verilog and how to architect a verification system by using layers. Now we focus on a specific implementation of such a system.
This part of the handbook introduces two open-source libraries, called Teal and Truss, that together implement a verification environment. The authors and others have used these libraries at several companies to verify real projects.
The libraries are free and open source because the authors feel strongly that this is the only way to unite and move the industry forward. Locking up people's "infrastructure" is not the way to encourage innovation and standardization both of which are needed if the verification industry is to improve.
Consequently, you'll find no simulator-company bias in these libraries. These libraries work on all major simulators.
In this part we discuss the following:
Teal, a set of utility classes and functions for verification
Truss, a layered verification framework that defines roles and responsibilities
How to use Teal and Truss to build a verification system
A first example, showing how all the parts we talk about fit together
Coming together is a beginning. Keeping together is progress. Working together is success.
Henry Ford
Building a verification system is a daunting task, but build we must. That is why we use the technique of layering, to break the problem down. By starting with the lowest...