FPGARelated.com
Books

Verilog for Digital Design

Vahid, Frank; Lysecky, Roman 2007

* Ideal as either a standalone introductory guide or in tandem with Vahid's Digital Design to allow for greater language coverage, this is an accessible introductory guide to hardware description language

* Verilog is a hardware description language used to model electronic systems (sometimes called Verilog HDL) and this book is helpful for anyone who is starting out and learning the language

* Focuses on application and use of the language, rather than just teaching the basics of the language


Why Read This Book

You should read this book if you want a compact, example-driven introduction to Verilog that emphasizes writing synthesizable code and using simulation to validate designs. It translates digital‑logic concepts into practical Verilog recipes so you can move quickly from paper designs to runnable HDL and simple FPGA implementation.

Who Will Benefit

Undergraduate students and engineers new to hardware description languages who need a hands-on, practical guide to Verilog for implementing combinational/sequential circuits and basic FPGA workflows.

Level: Beginner — Prerequisites: Basic digital-logic knowledge (Boolean algebra, gates, flip-flops) and familiarity with programming concepts; no prior Verilog required.

Get This Book

Key Takeaways

  • Write synthesizable Verilog modules for combinational and sequential logic
  • Model and implement finite state machines in a clear, synthesis-friendly style
  • Build hierarchical designs and instantiate modules to create datapaths and simple processors
  • Develop testbenches and use simulation to validate HDL behavior before synthesis
  • Differentiate synthesizable versus non-synthesizable (simulation-only) constructs
  • Apply basic synthesis and implementation-minded coding practices suitable for FPGA targets

Topics Covered

  1. Introduction to Verilog and HDL concepts
  2. Modules, ports, and hierarchical design
  3. Data types, operators, and expressions
  4. Combinational modeling (assign, always @*)
  5. Sequential modeling (always @(posedge), flip-flops)
  6. Finite State Machines and control logic
  7. Datapaths, registers, and arithmetic units
  8. Memories, buses, and module interfacing
  9. Testbenches and simulation techniques
  10. Synthesis considerations and synthesizable subset
  11. Design examples and lab-style exercises
  12. Appendices: language summary and coding conventions

Languages, Platforms & Tools

VerilogFPGA (general)ModelSimIcarus VerilogVerilatorCommon vendor synthesis tools (Xilinx/Intel flows) — conceptually discussed

How It Compares

More tutorial and example-oriented than Samir Palnitkar's Verilog HDL (which is a broader language reference); pairs well with general digital-design texts like Brown & Vranesic but focuses specifically on practical Verilog coding rather than exhaustive language coverage.

Related Books