FPGARelated.com
Books

Step-by-step Functional Verification with SystemVerilog and OVM

Sasan Iman 2008

NOTE: Examples in this book can be downloaded from SiMantis Inc. website.

BACK-COVER QUOTES:

"This detailed, step-by-step guide provides a thorough introduction to SystemVerilog and the Open Verification Methodology (OVM). With many examples and clear descriptions, it should be helpful to anyone involved in IC functional verification."

Richard Goering, Editor-in-Chief , SCDsource

 

 "Dr. Iman brings together all the essential elements to understand the use and application of OVM. Those with limited SystemVerilog knowledge will find Step-by-Step Functional Verification with SystemVerilog and OVM offers a complete introduction to SystemVerilog, and the SystemVerilog-savvy will find this a comprehensive OVM reference. This book has everything design and verification engineers would want to know to apply OVM to their most pressing challenges."

Dennis Brophy , Director of Strategic Business Development , Mentor Graphics

 

"The author of this book is well known in the design community as a leader in the verification space. SystemVerilog has provided a major step in our capability to verify our designs, especially in today’s world of 40 million gate SoCs. The combination has produced a very thorough step by step guide to the latest in verification methodology."

Gary Smith, Chief Analyst, Gary Smith EDA

 

"The Open Verification Methodology (OVM) is one of the most quickly and widely adopted new solutions ever for verifying complex chips. This book walks the reader through the OVM as well as the SystemVerilog language constructs upon which it is built. The breadth of Step-by-Step Functional Verification with SystemVerilog and OVM and its pragmatic approach make it an invaluable resource for both novice and experienced verification engineers."

Ted Vucurevich, CTO, Cadence


Why Read This Book

You should read this book if you want a practical, example-driven introduction to building production-quality SystemVerilog/OVM testbenches. It walks you through verification constructs, testbench components, constrained-random stimulus, and coverage in a step-by-step way so you can apply the techniques to real projects quickly.

Who Will Benefit

Engineers responsible for functional verification (assertions, directed and constrained-random testing) who already know Verilog/SystemVerilog basics and want to adopt OVM-style testbench architectures.

Level: Intermediate — Prerequisites: Basic digital design and Verilog/SystemVerilog familiarity (module/interfaces, simulation, testbench basics). Some exposure to simulator workflows (compile/run, waveforms) is helpful.

Get This Book

Key Takeaways

  • Apply SystemVerilog verification constructs (classes, randomization, interfaces, assertions) to build robust testbenches.
  • Build OVM components (drivers, monitors, sequencers, agents, environments) and assemble them into reusable verification environments.
  • Use the OVM factory, configuration database, and phasing to create flexible, configurable testbenches.
  • Develop constrained-random tests and collect functional coverage to quantify verification closure.
  • Implement scoreboards and checkers to perform automated functional checking and debug mismatches.
  • Integrate and run regression suites on common commercial simulators and manage test outputs/logging.

Topics Covered

  1. Introduction to Functional Verification and OVM
  2. SystemVerilog Essentials for Verification
  3. OVM Fundamentals and Object-Oriented Testbenches
  4. Transactions, Sequences, and Constrained Randomization
  5. Component Design: Drivers, Monitors, and Scoreboards
  6. Agents, Environments, and Test Architectures
  7. Factory, Configuration DB, and Phasing in OVM
  8. Functional Coverage and Coverage-Driven Verification
  9. Assertions and Protocol Checking
  10. Debugging, Logging, and Simulation Best Practices
  11. Advanced OVM Features and Reusable Verification IP
  12. Practical Examples and Complete Testbench Walkthroughs
  13. Appendices: OVM APIs, Example Downloads, and Migration Notes

Languages, Platforms & Tools

SystemVerilogVerilogOVM libraryMentor/ModelSim/Questa (examples applicable)Synopsys VCS (applicable)Cadence Incisive/Xcelium (applicable)

How It Compares

More hands-on and OVM-focused than general SystemVerilog references like "SystemVerilog for Verification" (Spear & Tumbush); predates and is narrower than UVM-centric texts but is useful if you must maintain or understand OVM-based environments.

Related Books