Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

SystemVerilog Tutorials: Hardware Design & Verification

Coursera via Coursera

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
This comprehensive, hands-on course equips learners with the practical skills needed to design real hardware using SystemVerilog. Through a structured four-module progression, you will master the fundamentals of RTL development starting from basic modules and data types, moving into advanced constructs like structs, enums, and generate blocks, and culminating in the design of a fully functional digital calculator. Each module includes hands-on exercises, simulation-based assignments and guided coding practice This course is designed for engineering students, FPGA beginners, RTL designers, and software developers transitioning into hardware design. It is also ideal for embedded engineers, verification interns, and anyone preparing for digital logic, FPGA, or ASIC roles that require SystemVerilog proficiency. Learners should have a basic understanding of logic gates and binary arithmetic, along with some familiarity with digital circuits or introductory HDL concepts. No prior SystemVerilog experience is required, but comfort with technical problem-solving will help accelerate learning. By the end of the course, learner will be able to analyze how to model combinational and sequential logic, construct reusable parameterized modules, implement finite-state machines and write clean and scalable RTL. Along the way, you’ll apply real engineering practices such as hierarchical design, clean coding standards, testbench construction, and modular verification. By the end of the course, you will have built a complete modular calculator system designed, implemented, simulated, and tested entirely in SystemVerilog.

Syllabus

  • SystemVerilog Foundations & Basic Modules
    • This module introduces the foundations of SystemVerilog RTL design, including how to write modules, use ports and parameters, work with common data types, and model fixed-size static arrays. Students will install the Quartus Prime software and build their first hardware blocks and begin implementing the arithmetic core of the calculator.
  • Dynamic Data Structures, Custom Types & Operators
    • Learners explore dynamic arrays, queues, and associative arrays (testbench focus), create custom composite types using typedef, enum, and struct, and use SystemVerilog operators to implement logic and arithmetic. The calculator project is extended with an ALU and operation selector.
  • Sequential Logic and State Machine
    • Students learn how to design combinational circuits using assign, build sequential circuits using always_ff (registers, counters, pipelines), and implement decision logic using if and case. They then build the calculator's state machine and control logic.

Taught by

Emmanuel Ezeuko and Starweaver

Reviews

Start your review of SystemVerilog Tutorials: Hardware Design & Verification

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.