For those with a basic understanding of digital design, this book teaches the essential skills to design digital integrated circuits using Verilog and the relevant extensions of SystemVerilog. In addition to covering the syntax of Verilog and SystemVerilog, the author provides an appreciation of design challenges and solutions for producing working circuits. The book covers not only the syntax and limitations of HDL coding, but deals extensively with design problems such as partitioning and synchronization, helping you to produce designs that are not only logically correct, but will actually work when turned into physical circuits. Throughout the book, many small examples are used to validate concepts and demonstrate how to apply design skills.
This book takes readers who have already learned the fundamentals of digital design to the point where they can produce working circuits using modern design methodologies. It clearly explains what is useful for circuit design and what parts of the languages are only software, providing a non-theoretical, practical guide to robust, reliable and optimized hardware design and development.
Sprache
Verlagsort
Verlagsgruppe
Elsevier Science & Technology
Zielgruppe
Für Beruf und Forschung
Professional engineers; potential for use as background reading on graduate and senior undergraduate courses
Illustrationen
Approx. 150 illustrations
Maße
Höhe: 235 mm
Breite: 191 mm
ISBN-13
978-0-12-810133-9 (9780128101339)
Copyright in bibliographic data is held by Nielsen Book Services Limited or its licensors: all rights reserved.
Schweitzer Klassifikation
Ronald Mehler is a professor of electrical and computing engineering at California State University, Northridge. Before joining the faculty at CSUN, he worked in private industry for 20 years, mostly designing integrated circuits using hardware description languages and logic synthesis. The primary focus of his research has been on design automation for application specific integrated circuit (ASIC) development.
Autor*in
Professor of Electrical and Computing Engineering at California State University, Northridge
1. Introduction
2. Bottom-up design
3. Behavioral coding: Blocks, variables and operators
4. Behavioral coding: Parameters, defined and enumerated types
5. Behavioral coding: Loops, branching, arrays and other high-level constructs
6. Behavioral coding: Subroutines
7. Synchronization
8. Simulation, timing and race conditions
9. Architectural choices
10. Design for testability
11. Library modeling
12. Design examples