Digital Design & Computer Architecture: Lecture 6b: Verification & Testing (Spring 2026)

Onur Mutlu Lectures
Onur Mutlu LecturesMar 11, 2026

Why It Matters

Effective verification prevents functional bugs and timing failures that can delay product releases and increase silicon costs, making simulation‑driven testbenches a vital skill for modern hardware engineers.

Key Takeaways

  • Simulation tools like Vivado enable functional verification efficiently.
  • High‑level HDL simulation is faster than low‑level SPICE.
  • Testbenches can be manual, self‑checking, or vector‑driven for verification.
  • Automated test vectors improve scalability for large digital designs.
  • Designers must provide timing constraints and hold‑time checks.

Summary

The lecture introduces circuit verification and testing as a core stage of digital design, emphasizing how engineers confirm that a synthesized HDL design is both functionally correct and meets timing constraints before silicon implementation.

The instructor contrasts functional verification—checking logical correctness—with timing verification, noting that high‑level HDL simulation (e.g., Vivado) offers rapid coverage, while low‑level SPICE or formal SAT‑solver methods provide deeper accuracy but at greater computational cost. Synthesis tools guarantee logical equivalence, and timing analysis tools flag setup, hold, and frequency violations.

Various testbench strategies are illustrated. A simple manual testbench applies hard‑coded inputs and inspects waveforms; a self‑checking bench embeds expected results and reports mismatches; a vector‑driven bench reads input‑output pairs from a file, automating thousands of cycles. The professor demonstrates Verilog constructs such as initial blocks, blocking assignments, and $display for debugging.

For students, mastering these verification flows translates directly to lab productivity and reduces costly re‑spins in industry. Automated, scalable testbenches enable comprehensive coverage of large designs, ensuring that timing constraints and functional intent survive synthesis and physical implementation.

Original Description

Digital Design and Computer Architecture, ETH Zürich, Spring 2026 (https://safari.ethz.ch/ddca/spring2026/)
Lecture 6: Verification & Testing
Lecturer: Prof. Onur Mutlu
Date: 11 March 2026
Recommended Reading:
====================
A Modern Primer on Processing in Memory
Memory-Centric Computing: Solving Computing's Memory Problem
Memory-Centric Computing: Recent Advances in Processing-in-DRAM
Intelligent Architectures for Intelligent Computing Systems
RowHammer: A Retrospective
Fundamentally Understanding and Solving RowHammer
Accelerating Genome Analysis via Algorithm-Architecture Co-Design
From Molecules to Genomic Variations: Accelerating Genome Analysis via Intelligent Algorithms and Architectures
RECOMMENDED LECTURE VIDEOS & PLAYLISTS:
========================================
Digital Design and Computer Architecture Spring 2025 Livestream Lectures Playlist:
Fundamentals of Computer Architecture Fall 2025 Livestream Lectures Playlist:
Seminar in Computer Architecture Spring 2025 Livestream Lectures Playlist:
Computer Architecture Fall 2024 Lectures Playlist:
Interview with Professor Onur Mutlu:
TCuARCH meets Prof. Onur Mutlu
Arch. Mentoring Workshop @ISCA'21 - Doing Impactful Research
The Story of RowHammer Lecture:
Accelerating Genome Analysis Lecture:
Memory-Centric Computing Systems Tutorial at IEDM 2021:
Intelligent Architectures for Intelligent Machines Lecture:
Featured Lectures:

Comments

Want to join the conversation?

Loading comments...