This Verilog course covers the coding for synthesis and simulation. It explains the concept of hardware description language and basic concepts like data types and operators. Then it explains advanced concepts like assignments, procedural blocks, synthesis coding style and testbench coding. This course is composed of theory modules, quiz, labs and project. You can watch the videos repeatedly to understand the theory well and practice more through quiz and labs. Doing the labs and projects will make you a hands-on RTL programmer.
Read full details1: Introduction to verilog HDL
2: Data Types
3: Verilog Operators
4: Advanced Verilog for Verification
5: Assignments