Skip to content
All programs
Foundation program

SystemVerilog Fundamentals

The SystemVerilog language core — before verification.

A structured path through the SystemVerilog language itself: data types, arrays, procedural code, tasks and functions, hierarchy, packages, and interfaces. It organizes existing tutorials into one ordered sequence so you can move from Verilog to a solid SystemVerilog foundation before stepping into OOP-based verification.

8 modules53 lessons~10h 36m of reading

Prerequisites

  • Comfortable with Verilog RTL and basic digital design.

What you'll be able to do

  • Choose correctly between 4-state and 2-state types and reason about X/Z propagation.
  • Model registers, memories, and protocol frames with arrays, queues, structs, and unions.
  • Write clean procedural RTL and testbench logic using tasks, functions, and process control.
  • Structure designs with modules, packages, and interfaces with modports.

Competencies you'll develop

SystemVerilog language foundations

Set up a SystemVerilog toolchain and write, compile, and run a first program with correct module and testbench anatomy.

4-state & 2-state data modeling

Choose correctly between 4-state and 2-state types and reason about X/Z propagation, width, and signedness.

Arrays & aggregate data structures

Model registers, memories, and protocol frames with packed/unpacked arrays, dynamic arrays, queues, structs, and unions.

Operators & expressions

Apply SystemVerilog operators and expression semantics, including X/Z-aware equality and signed vs. unsigned evaluation.

Procedural control flow

Write correct procedural RTL and testbench logic with the always variants, blocking/nonblocking assignment, and control statements.

Tasks & functions

Structure reusable behavior with tasks and functions, understanding automatic vs. static lifetime and argument passing.

Modules & hierarchy

Compose designs from modules and packages with correct instantiation, parameterization, and scope.

Interfaces & modports

Bundle related signals with interfaces and enforce direction and access with modports.

Curriculum

02

Data Types

9 lessons
04

Operators & Expressions

10 lessons
06

Tasks & Functions

7 lessons
07

Modules & Hierarchy

7 lessons
08

Interfaces

5 lessons

Completion: work through all 8 required modules (53 lessons) to develop the 8 competencies above. Reading is the medium — there is nothing to enrol in or unlock.

Assessment

Planned

How understanding in this program would be checked. Assessment measures engineering reasoning against the competencies above — it is not part of the reading, and there is nothing to start or score here.

SystemVerilog Fundamentals — mastery assessment

Reasoning challenge

A reasoning-first assessment across the SystemVerilog language core: data modeling, aggregate structures, procedural code, tasks and functions, hierarchy, and interfaces.

Per-module knowledge checks

  • Foundations
  • Data Types
  • Arrays
  • Operators & Expressions
  • Procedural Statements
  • Tasks & Functions
  • Modules & Hierarchy
  • Interfaces