Hardware Verification with SystemVerilog: An Object-Oriented Framework

  • 4h 8m
  • Mike Mintz, Robert Ekendahl
  • Springer
  • 2007

Verification is increasingly complex, and SystemVerilog is one of the languages that the verification community is turning to. However, no language by itself can guarantee success without proper techniques. Object-oriented programming (OOP), with its focus on managing complexity, is ideally suited to this task.

With this handbook—the first to focus on applying OOP to SystemVerilog—we’ll show how to manage complexity by using layers of abstraction and base classes. By adapting these techniques, you will write more "reasonable" code, and build efficient and reusable verification components.

Both a learning tool and a reference, this handbook contains hundreds of real-world code snippets and three professional verification-system examples. You can copy and paste from these examples, which are all based on an open-source, vendor-neutral framework (with code freely available at www.trusster.com).

Learn about OOP techniques such as these:

  • Creating classes—code interfaces, factory functions, reuse
  • Connecting classes—pointers, inheritance, channels
  • Using "correct by construction"—strong typing, base classes
  • Packaging it up—singletons, static methods, packages

In this Book

  • Introduction
  • Why SystemVerilog?
  • OOP and SystemVerilog
  • A Layered Approach
  • Teal Basics
  • Truss—A Standard Verification Framework
  • Truss Flow
  • Truss Example
  • Thinking OOP
  • Designing with OOP
  • OOP Classes
  • OOP Connections
  • Coding OOP
  • Block-Level Testing
  • Chip-Level Testing
  • Things to Remember
SHOW MORE
FREE ACCESS