For Further Reading . . . . . . . . . . . . . . . . . . . . . . . 41 C h a p t e r 4 : A L a y e r e d A p p r o a c h . . . . . . . . . . . 43 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 A Whiteboard Drawing . . . . . . . . . . . . . . . . . . . . . . 46 An “ends-in” approach. . . . . . . . . . . . . . . . . . . . . 47 Refining the whiteboard blocks . . . . . . . . . . . . . . . 47 The “Common-Currency” Components . . . . . . . . . . . 48 The Interface Layer in Detail. . . . . . . . . . . . . . . . . . 49 The wire layer . . . . . . . . . . . . . . . . . . . . . . . . . . 50 The agent layer . . . . . . . . . . . . . . . . . . . . . . . . . 52 The transaction layer . . . . . . . . . . . . . . . . . . . . . 53 The Top-Layer Components . . . . . . . . . . . . . . . . . . 54 What is a Test? . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 The Test Component . . . . . . . . . . . . . . . . . . . . . . . 58 The Test Irritator . . . . . . . . . . . . . . . . . . . . . . . . . 60 A Complete Test . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 For Further Reading . . . . . . . . . . . . . . . . . . . . . . . 63 Part II: An Open-Source Environment with C++ . . . . . . 65 C h a p t e r 5 : T e a l B a s i c s . . . . . . . . . . . . . . . . . . . 67 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 What Teal provides . . . . . . . . . . . . . . . . . . . . . . . 68 Teal’s similarity to HDLs . . . . . . . . . . . . . . . . . . . 69 A tiny but complete example . . . . . . . . . . . . . . . . 69 Teal’s Main Components. . . . . . . . . . . . . . . . . . . . . 71 Using Teal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Your C++ test . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 A P r ac titioner ’s Handboo k ix Contents Creating registers . . . . . . . . . . . . . . . . . . . . . . . 74 Working with a reg or vreg . . . . . . . . . . . . . . . . . . 75 Logging Output . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Using Test Parameters . . . . . . . . . . . . . . . . . . . . . . 79 Accessing Memory . . . . . . . . . . . . . . . . . . . . . . . . . 81 A memory note example . . . . . . . . . . . . . . . . . . . 82 Constrained Random Numbers . . . . . . . . . . . . . . . . . 84 Required initialization . . . . . . . . . . . . . . . . . . . . . 84 Using random numbers. . . . . . . . . . . . . . . . . . . . . 84 Working with Simulation Events and Concurrency . . . . 86 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 For Further Reading . . . . . . . . . . . . . . . . . . . . . . . 88 Chapter 6: Truss: A Standard Verification F r a m e w o r k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 General Considerations . . . . . . . . . . . . . . . . . . . . . 93 Using a language other than C++ . . . . . . . . . . . . . . 93 Keeping it simple . . . . . . . . . . . . . . . . . . . . . . . . 94 Major Classes and Their Roles . . . . . . . . . . . . . . . . .
"synopsis" may belong to another edition of this title.
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’.
Written by two verification engineers, Hardware Verification with C++: A Practitioner’s Handbook is a four-part tour of how to perform object-oriented techniques.
Part I makes the case for C++, and shows a standard verification system using object-oriented programming (OOP).
Part II presents two open-source C++ libraries that enable efficient verification with C++ -- Teal, a C++ to Verilog interface, and Truss, a standard verification framework.
Part III focuses on OOP with examples from real verification projects.
Part IV puts it all together showing complete block-level and system-level verification systems.
"The handbook provides a clear understanding of object-oriented programming, and how it applies to hardware verification. It is clear to me that C++, together with Teal and Truss, could form a strong platform for the next generation of hardware verification."
Dr. Stanley Hyduke, CEO of Aldec, Inc.
"With this book I feel confident I can constitute a verification team that could make good use of C++ for verification, with all the positive results I would need for success. That is a breakthrough!"
Bob Fredieu, VP of Research and Development and Cofounder, Assertive Design
"Teal let us hit the ground running and focus on developing our intellectual property instead of simulation infrastructure. After two successful ASIC projects, we couldn’t be happier with its quality, completeness and compactness."
Bennet Ih, ASIC Verification Lead, SigmaTel Imaging Systems Group
"Hardware verification complexity has grown to be a software effort, requiring advanced techniques such as OOP. With clear techniques and examples, this handbook guides the reader through the complexities of using OOP to create testbenches. Regardless of what language you use, this book will help sharpen your skills."
Chris Spear, Verification Consultant, Synopsys, Inc., Author of SystemVerilog forVerification
"About this title" may belong to another edition of this title.
Seller: HPB-Red, Dallas, TX, U.S.A.
Hardcover. Condition: Good. Connecting readers with great books since 1972! Used textbooks may not include companion materials such as access codes, etc. May have some wear or writing/highlighting. We ship orders daily and Customer Service is our top priority! Seller Inventory # S_478830239
Seller: Better World Books, Mishawaka, IN, U.S.A.
Condition: Very Good. Pages intact with possible writing/highlighting. Binding strong with minor wear. Dust jackets/supplements may not be included. Stock photo provided. Product includes identifying sticker. Better World Books: Buy Books. Do Good. Seller Inventory # 40153513-6
Seller: WeBuyBooks, Rossendale, LANCS, United Kingdom
hardcover. Condition: Good. Most items will be dispatched the same or the next working day. A copy that has been read but remains in clean condition. All of the pages are intact and the cover is intact and the spine may show signs of wear. The book may have minor markings which are not specifically mentioned. Seller Inventory # rev5522529843
Quantity: 1 available
Seller: Romtrade Corp., STERLING HEIGHTS, MI, U.S.A.
Condition: New. This is a Brand-new US Edition. This Item may be shipped from US or any other country as we have multiple locations worldwide. Seller Inventory # ABBB-74786
Seller: Basi6 International, Irving, TX, U.S.A.
Condition: Brand New. New. US edition. Expediting shipping for all USA and Europe orders excluding PO Box. Excellent Customer Service. Seller Inventory # ABEOCT25-81456
Seller: SMASS Sellers, IRVING, TX, U.S.A.
Condition: New. Brand New Original US Edition. Customer service! Satisfaction Guaranteed. Seller Inventory # SNTA-74786
Seller: Basi6 International, Irving, TX, U.S.A.
Condition: Brand New. New. US edition. Expediting shipping for all USA and Europe orders excluding PO Box. Excellent Customer Service. Seller Inventory # ABEOCT25-81457
Seller: Romtrade Corp., STERLING HEIGHTS, MI, U.S.A.
Condition: New. This is a Brand-new US Edition. This Item may be shipped from US or any other country as we have multiple locations worldwide. Seller Inventory # ABBB-156579
Seller: UK BOOKS STORE, London, LONDO, United Kingdom
Condition: New. Brand New! Fast Delivery This is an International Edition and ship within 24-48 hours. Deliver by FedEx and Dhl, & Aramex, UPS, & USPS and we do accept APO and PO BOX Addresses. Order can be delivered worldwide within 6-10 days and we do have flat rate for up to 2LB. Extra shipping charges will be requested if the Book weight is more than 5 LB. This Item May be shipped from India, United states & United Kingdom. Depending on your location and availability. Seller Inventory # Cvs 9780387255439
Quantity: 5 available
Seller: Ria Christie Collections, Uxbridge, United Kingdom
Condition: New. In English. Seller Inventory # ria9780387255439_new
Quantity: Over 20 available