Introduction.- System Verilog Assertions.- Immediate Assertions.- Concurrent Assertions – Basics (sequence, property, assert).- Sampled Value Functions $rose, $fell.- Operators.- System Functions and Tasks.- Multiple clocks.- Local Variables.- Recursive property.- Detecting and using endpoint of a sequence.- ‘expect’.- ‘assume’ and formal (static functional) verification.- Other important topics.- Asynchronous Assertions !!!.- IEEE-1800–2009 Features.- SystemVerilog Assertions LABs.- System Verilog Assertions – LAB Answers.- Functional Coverage.- Performance Implications of coverage methodology.- Coverage Options.
Ashok Mehta has been working in the ASIC/SoC design and verification field for over 20 years. He started his career at Digital Equipment Corporation (DEC) working as a CPU design engineer. He then worked at Data General, Intel (first Pentium design team) and after a route of a couple of startups, worked at Applied Micro and TSMC. He was a very early adopter of Verilog and participated in Verilog, VHDL, iHDL (Intel HDL) and SDF (standard delay format) technical subcommittees. He has also been a proponent of ESL (Electronic System Level) designs and at TSMC he released two industry standard Reference Flows that establish Reuse of Verification Environment from ESL to RTL. Lately, he has been researching 3DIC design verification challenges at TSMC which is where SystemVerilog Assertions played an instrumental role in stacked die SoC design verification.
Ashok earned an MSEE from University of Missouri. He holds 18 U.S. Patents in the field of SoC and 3DIC design verification.
This book provides a hands-on, application-oriented guide to the language and methodology of both SystemVerilog Assertions and Functional Coverage. Readers will benefit from the step-by-step approach to learning language and methodology nuances of both SystemVerilog Assertions and Functional Coverage, which will enable them to uncover hidden and hard to find bugs, point directly to the source of the bug, provide for a clean and easy way to model complex timing checks and objectively answer the question ‘have we functionally verified everything’. Written by a professional end-user of ASIC/SoC/CPU and FPGA design and Verification, this book explains each concept with easy to understand examples, simulation logs and applications derived from real projects. Readers will be empowered to tackle the modeling of complex checkers for functional verification and exhaustive coverage models for functional coverage, thereby drastically reducing their time to design, debug and cover.
This updated third edition addresses the latest functional set released in IEEE-1800 (2012) LRM, including numerous additional operators and features. Additionally, many of the Concurrent Assertions/Operators explanations are enhanced, with the addition of more examples and figures.
· Covers in its entirety the latest IEEE-1800 2012 LRM syntax and semantics;
· Covers both SystemVerilog Assertions and SystemVerilog Functional Coverage languages and methodologies;
· Provides practical applications of the what, how and why of Assertion Based Verification and Functional Coverage methodologies;
· Explains each concept in a step-by-step fashion and applies it to a practical real life example;
· Includes 6 practical LABs that enable readers to put in practice the concepts explained in the book.