This is the code repository for Verilog Fundamentals, a YouTube tutorial series created by Cameron Kirk.
Learn hardware design in Verilog and write powerful hardware description language (HDL) code
HDL programming is made easy to understand with hands-on tutorials on the Verilog language. This video series gets you started with modern HDL programming in Verilog and proper usage of the relevant language features.
This series covers the following features:
- Tools required for getting started
- Modules and Ports
- Gate-Level Modeling
- Dataflow Modeling
- Behavioral Modeling
If you feel this tutorial series is for you, get started today!
This repo contains the code which accompanies the video series "Verilog Fundamentals", created by Cameron Kirk. The code is released under the MIT license.
Unless otherwise noted, all programs will compile cleanly on Windows, Linux, and macOS, and as Verilog or SystemVerilog. Code is tested with WSL2 and Visual Studio Code on Windows.
This video doesn't include any example programs.
This video doesn't include any example programs.
- demo02/top.v Create a Hello World Verilog Simulation.
- demo03/top.v Fundamental Values.
- demo04/top.v Implicit Declaration.
- demo05/top.v Integer Variable.
- demo06/top.v Modules.
- demo07/top.v Parameters.
- demo08/top.v Full Adder.
- demo09/top.v 4-to-1 Multiplexor (Mux).
- demo10/top.v Gate Delays.
- demo11/top.v 32-bit Full Adder
- demo12/top.v Case Equality
- demo13/top.v Bitwise vs Logical
- demo14/top.v Parity Bit
- demo15/top.v Bit shifting
- demo16/top.v 2-to-1 mux
- demo17/top.v Race Condition
- demo18/top.v Timing Controls
- demo19/top.v if Statements
- demo20/top.v Simple ALU
- demo21/top.v Traffic Signal
Following along with the code in this tutorial requires that you to have access to a Verilog compiler on a standard operating system. The example codes in this tutorial were carefully tested on Windows.
Instructions for installing all of the require software are provided in Video 3: Tools.
No non-free software is required to follow along with any of the examples in this tutorial.
Cameron Kirk is a software developer, consultant, and entrepreneur. He has many years of programming experience. He currently works full-time working on low-level code for IBM z/OS enterprise applications. He is active in the open-source community and creates YouTube programming tutorials in his spare time.
Please email me at cameron.kirk@metaphysicscomputing.com if you have any feedback or suggestions.