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

SystemVerilog Tutorials: Hardware Design & Verification

SystemVerilog Tutorials: Hardware Design & Verification


Instructors: Emmanuel Ezeuko
Access provided by Leidos
Recommended experience
What you'll learn
Design synthesizable SystemVerilog modules and integrate combinational and sequential logic to form complete digital subsystems.
Implement an Arithmetic Logic Unit (ALU) capable of performing core operations and basic arithmetic for calculator functionality.
Develop a finite state machine (FSM) to control complex system modes (calculator modes), user inputs, and operation sequencing.
Simulate, verify, and debug SystemVerilog designs to ensure functionality of the full calculator system.
Skills you'll gain
- Systems Design
- Embedded Systems
- Electronic Systems
- Software Design
- Design
- Data Structures
- Computer Engineering
- Test Engineering
- Process Optimization
- Verification And Validation
- Simulation and Simulation Software
- Programming Principles
- Field-Programmable Gate Array (FPGA)
- Data Synthesis
- Application Specific Integrated Circuits
- Hardware Design
- Analysis
- Skills section collapsed. Showing 10 of 17 skills.
Details to know

Add to your LinkedIn profile
1 assignment
February 2026
See how employees at top companies are mastering in-demand skills

There are 3 modules in this course
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.
What's included
5 videos2 readings1 peer review
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.
What's included
6 videos1 reading1 peer review
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.
What's included
6 videos1 reading1 assignment2 peer reviews
Offered by
Why people choose Coursera for their career

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
Explore more from Computer Science

University of Colorado Boulder

Universitat Autònoma de Barcelona

University of Colorado Boulder


