← All programmes

Advanced Digital IC

UpcomingRecorded course

Move from working Verilog modules to digital blocks whose architecture, timing, interfaces, and implementation tradeoffs can be explained and measured.

A closer look at Advanced Digital IC.

Digital integrated circuits bring logic and state together within an integrated device.

About this course

Move from working Verilog modules to digital blocks whose architecture, timing, interfaces, and implementation tradeoffs can be explained and measured. This course develops RTL and microarchitecture foundations through arithmetic units, pipelined datapaths, static timing analysis, clock and reset crossings, and FIFO design. Synchronous design comes first; asynchronous interfaces follow only after their assumptions and failure modes are established. Planned exercises connect simulation evidence with synthesis and timing reports, then introduce the stages of an automated physical implementation flow using an educational platform. The emphasis is disciplined digital design and interpretation of results. Transistor-level analog design, custom layout, foundry qualification, and professional physical-design signoff are outside scope. A final block-level project brings the design specification, constraints, verification results, and implementation observations together.

View the complete course guide

Learning objectives

  • Translate a block specification into a documented datapath, controller, and interface contract.
  • Compare arithmetic architectures and pipeline choices using latency, throughput, area, and timing evidence.
  • Write basic timing constraints and explain setup, hold, skew, uncertainty, and slack reports.
  • Select CDC and reset strategies appropriate to single-bit controls, pulses, and multibit transfers.
  • Implement and verify synchronous FIFOs before designing a Gray-pointer asynchronous FIFO.
  • Identify switching-activity and resource-sharing tradeoffs without treating rough estimates as signoff power.
  • Run an introductory synthesis and implementation flow and explain its main inputs, artifacts, and limitations.
  • Deliver a reproducible capstone with RTL, tests, constraints, measured results, and remaining assumptions.

Curriculum

Prerequisites

  • Combinational and sequential logic, finite-state machines, and binary arithmetic.
  • Synthesizable Verilog, module hierarchy, parameters, and correct blocking/nonblocking assignment use.
  • Basic self-checking simulation, waveform inspection, and debugging.
  • Comfort reading simple scripts and running command-line tools.

Course requirements

  • A computer with a code editor, terminal, and waveform viewer.
  • Access to a Verilog-capable simulator suitable for the planned RTL exercises.
  • A working Yosys and OpenSTA installation or an equivalent synthesis and static-timing environment.
  • For implementation exercises, an OpenROAD Flow Scripts environment and a compatible public educational platform; installation may require Linux, WSL, or containers.
  • Git and enough local storage for tool builds, platform files, simulation traces, and implementation artifacts.

Who this course is for

  • Learners who can already write and simulate synthesizable Verilog.
  • Students developing stronger RTL design and microarchitecture judgment.
  • Engineers seeking an introductory bridge from RTL behavior to timing and implementation reports.

Practice projects

Planned exercises for applying the syllabus.

  1. Pipelined arithmetic block

    Planned exercise: specify a fixed-width multiply-accumulate datapath, compare iterative and pipelined versions, verify arithmetic corner cases, and report latency, throughput, and synthesized timing/area tradeoffs.

  2. Dual-clock streaming buffer

    Planned exercise: build and test a synchronous FIFO, extend it to a power-of-two asynchronous FIFO with Gray-coded pointer crossings, and document reset behavior, occupancy boundaries, and CDC assumptions.

  3. Constrained RTL implementation capstone

    Planned exercise: integrate a small streaming datapath and controller, create clock and I/O constraints, run synthesis and an introductory physical flow, and explain the reports and unresolved limitations.

Curriculum references

Course availability

The research-informed outline describes the planned learning sequence. Enrolment, teaching media, dates and fees remain subject to confirmation.

Programme questions