Digital integrated circuit design using verilog and systemverilog

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 des...

Descripción completa

Detalles Bibliográficos
Otros Autores: Mehler, Ronald, author (author)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Kidlington, England : Newnes 2015.
Edición:1st edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009629444606719
Tabla de Contenidos:
  • Cover; Title Page; Copyright Page; Table of contents; About the author; Preface; Acknowledgments; Chapter 1 - Introduction; Who should read this book; Hardware description languages and methodology; What this Book Covers; Historical Perspective; Verilog and Systemverilog; Book Organization; Chapter 2 - Bottom-up design; Primitive instantiation; Designing with primitives; Identifiers and escaped identifiers; Bus declarations; Design hierarchy and test fixtures; Port association; Timescales; Summary; Chapter 3 - Behavioral coding part I: blocks, variables, and operators; Top-down design
  • Synthesizable and nonsynthesizable codeRegister Transfer Level (RTL); Continuous assignments; Implicit continuous assignments; Functional blocks: always and initial; Named blocks; Sensitivity lists; Splitting assignments; Variables; Nets; Net aliases; Net signal strength; Registers; SystemVerilog variables; Var variables; Arrays; Bidirectional buses; Structures and unions; Operators; Assignment operators; Equality operators; Logical operators; Bitwise operators; Reduction operators; Arithmetic operators; Auto increment and auto decrement; Relational operators; Shift operators
  • Concatenation operatorReplication operator; Conditional operator; SystemVerilog combined assignment operators; Operator precedence; Summary; Chapter 4 - Behavioral coding part II: defines, parameters, enumerated types, and packages; Global Definitions; Parameters; Overriding Default Values; Local Parameters; Specify parameters; Enumerated Types; Constants; Packages; Filling a Scalable Variable with All Ones; Summary; Reference; Chapter 5 - Behavioral coding part III: loops and branches; Loops; While loop; Do while loop; For loop; Foreach loop; Forever loop; Repeat loop; Break and continue
  • DisableGenerate; Multiway branching; If statements; Case statements; Latch generation; Unique and priority; Summary; Reference; Chapter 6 - Subroutines and interfaces; Subroutines; Tasks; Functions; Parameters in subroutines; Managing subroutines; Interfaces; Interface modports; Summary; Chapter 7 - Synchronization; Latch instability; Flipflops, latches, and violations; Asynchronous assert, synchronous deassert; Slow-speed single-bit clocked asynchronous interfaces; High-speed single-bit clocked asynchronous interfaces; Multiple high-speed single-bit clocked asynchronous interfaces
  • Asynchronous parallel busesFIFO; FIFO operation and throughput; FIFO depth; High-speed asynchronous serial links; Summary; References; Chapter 8 - Simulation, timing, and race conditions; Simulation queues; Race conditions; Derived clocks and delta time; Assertions; Summary; References; Chapter 9 - Architectural choices; FPGA versus ASIC; Design reuse; Partitioning; Area and speed optimization; Power optimization; Summary; References; Chapter 10 - Design for testability; Yield, testing, and defect level; Fault modeling; Activation and sensitization; Logic scan; Boundary scan
  • Built in self-test