SystemVerilog is both a Hardware Description Language (HDL) and a Hardware Verification Language (HVL), widely used in the digital IC design flow—especially in pre-silicon verification and also at the RTL design stage.
This course is designed for undergraduate and graduate electrical engineering students, as well as professionals in related fields, who want to build a strong foundation in SystemVerilog (SV) for careers in IC design.
By the end of this course, you will be proficient in:
- SystemVerilog Data Types
- SV Operators
- SV Packages
- SV Interfaces
- Procedural blocks
- Procedural statements
- Tasks and Functions
- Arrays, Structures, Unions
- and more!
Start mastering SystemVerilog today and take the next step in your ASIC/IC design career.
Course Instructor
Course Introduction
DV Tools – Vivado
I. Installation
II. Project Management
III. Simulation
IV. Report Generation
I. Introduction to SystemVerilog Basics
1.1 What is digital design?
1.2 RTL and HDL
1.3 What is SystemVerilog?
1.4 Modules and Ports
1.5 Guidelines
II. SystemVerilog Data Types
2.1 Variables and Nets
2.2 4-State and 2-State Data Types
2.3 User defined data types
2.4 Enumerated Types
2.5 Signed and Unsigned
III. Operators
3.1 Legacy operators
Lab 1. Logical gates with operators
3.2 New operators
Lab 2. Multiplexer in cascade
3.3 Casting
Lab 3. Comparators
Ex. Minimum
IV. Structures
4.1 Declaration and assigning
4.2 Packed and Unpacked structures
4.3 Passing structure’s data
V. Unions
5.1 Unpacked unions
5.2 Tagged unions
5.3 Packed unions
VI. Arrays
6.1 Unpacked arrays
6.2 Packed arrays
6.3 Array initialization
6.4 Assignments in arrays
6.5 User defined types and arrays
6.6 Array querying system functions
VII. Packages
7.1 What is a package?
7.2 Access to content
VIII. Procedural Blocks, Tasks and Functions
8.1 Always block
8.2 Combinational block
8.3 Latched blocks
8.4 Sequential blocks
8.5 Tasks and Functions
IX. Procedural Statements
9.1 For Loop
9.2 While Loop
9.3 If Condition
Ex. Min Array
Ex. Shift Register
Ex. Register with Multiple Format
9.4 Case Statement
Ex. Bus Control
Ex. Demux
Lab 4. Arithmetic Logic Unit
Lab 5. Counter (binary)
Lab 6. Shift Register (bidirectional)
X. Finite State Machine
10.1 Introduction
10.2 Moore FSM
10.3 Mealy FSM
10.4 Tips to design an FSM
XI. SystemVerilog Interfaces
11.1 What is an Interface?
11.2 Construction and Implementation
XII. Generate
12.1 Loop Generate
12.2 Conditional Generate

