Functional verification of chip designs is a hefty topic, so it's only appropriate that it should be the subject of a hefty tome. In fact, it's almost remarkable that the authors of Comprehensive Functional Verification, who are all IBM verification-engineering veterans, could cover the waterfront in under 700 pages. But cover it they do, and like any good verification engineer, Comprehensive Functional Verification breaks its subjects down into digestible chunks that add up to a synergistic whole.
As noted in the book's foreword, functional verification has been described by the authors of the 2003 International Technology Roadmap for Semiconductors (ITRS) as having become "a bottleneck that has now reached crisis proportions." In Comprehensive Functional Verification, the authors seek to address the various stages of the verification process through hands-on exercises based on RTL implementations of a four-function calculator.
Copiously illustrated with charts, tables, flow diagrams, and code examples, the book begins with an introduction to verification and the verification flow, the fundamentals of simulation-based verification, and how to formulate a verification plan. Part II homes in closely on simulation, covering testbenches and checking, as well as verification reuse. Of note is the discussion of coverage, a much-misunderstood topic that is increasingly critical to verification success. Part III emphasizes formal verification, a technology that's gaining in favor despite the desire of many verification engineers to avoid it. Once designs are complex enough, there's no avoiding formal any more, and this book will help you come to grips with formal technology and how it fits into an overall verification strategy.
Part IV covers comprehensive verification, including completion of the verification cycle and advanced techniques such as high-level modeling. Finally, part V brings case studies, and it's here that the authors share some of their personal failures and successes, and what made them so.
Verification is an ever-changing discipline, and the authors are right up to date with the latest techniques, languages, and methodologies. There's considerable discussion of assertion-based verification, one of the field's hottest topics, and of the latest verification languages such as the Property Specification Language. Overall, there's much to learn here for both beginners and veterans.
If you're interested in functional verification, you might also like these books: