Written for both new and experienced verification engineers, Hardware Verification with C++: A Practitioner's Handbook takes a street-smart look at verification of large designs, tackling Object Oriented Programming using C++ from a verification perspective. Special consideration is given to verification of third party IP. The book offers numerous examples of C++ classes and techniques. In addition, this book describes TEAL, a C/C++ Test Environment Abstraction Layer. It is intended for verification engineers who use TEAL. Engineers perform verification in order to minimize the probability of hardware functional errors, ensure that the hardware meets performance requirements, and ensure that the hardware is usable by software. TEAL aids in this endeavor by providing a set of capabilities that access HDL signals and enable actions based on changes in the values of these signals. In addition, it encourages independent generators, transactors, and checkers by providing for management of independent user created threads.
Because TEAL is a C/C++ library, algorithms can be developed that both validate the hardware design and can be re-used in the production software.
Mike Mintz has more than 20 years of software development experience. Five years ago, he switched back to hardware verification. He has managed groups of software developers and has more than 15 years of C++ programming experience. He implemented C++ verification systems at several companies, using C++, as well languages such as SystemVerilog, Vera and ‘e’.
Robert Ekendahl has a background in ASIC design and more then 12 years experience as a senior verification engineer. Has developed verification system and served as project manager for fortune 100 companies and start-ups with a focus on telecommunication. Has worked in C++ as well as languages such as Verilog, VHDL, C, Vera and ‘e’.