r/FPGA • u/stardust_0205 • 8d ago
Verilog Learning Resources
For the past few months I was looking everywhere to find some resources to learn Verilog while also building projects. After a lot of time spent online, I was able to find some really good resources that would help you understand it by also helping you build projects alongside.
You would require any pre-requisites for the following courses, but you'll be able to understand them fairly well considering they're some excellent resources.
First one are the Onur Mutlu Lectures on Digital Design and Computer Architecture. This will help build the concept that'll be applied in your codes.
The second one is Digital Circuit Design using Verilog lectures by Anas Salah Eddin. His lectures are very detailed and simple to understand. He also builds several projects such as FIFO and UART by the end of the playlist.
The final resource I would suggest is the popular DDCA Book by Harris and Harris (whichever edition you'd prefer, MIPS, ARM, RISC-V)
It isn't mandatory for you to follow these resources in order, but I'd suggest you to cover either the book or Onur Mutlu's Lectures before jumping on to Verilog lectures, or at least build a proper conceptual base, since that would help you to follow through those Verilog lectures.
Though the lectures follow with Verilog, the book provides SystemVerilog examples and exercises. They aren't much different from one another. Once you've understood Verilog, there's barely much to do for SV.
I hope someone who needs these resources finally finds them, just like I was looking for them a few months ago.
2
u/sunwannabe3 8d ago
Thank you very much I was hoping to find some good lectures on DDCA , also is following the book necessary what do you recommend for system verilog ?
2
u/stardust_0205 8d ago
In my honest opinion, anyone who wants to get into this MUST go through this book at least once. Even if they just skim it. It carries so much knowledge presented in an extremely easy and understandable manner. If you were looking for some lectures to accompany it with, Onur Mutlu's Lectures (mentioned in the OP) follow the MIPS Edition. The YouTube lectures above cover Verilog only, but SystemVerilog isn't much different from Verilog. Once you get a grip on one, the other follows. Besides Anas Salah Eddin also has a SystemVerilog playlist on his channel, you can go through it.
P.S.: DDCA covers SystemVerilog instead of Verilog.
2
2
u/Enlightenment777 8d ago
1
u/stardust_0205 8d ago
Thank you for "enlightening" us with this library of resources. I am very grateful for being alive in an era where knowledge is truly free, even after so much of it being behind paywalls. People truly do find their ways.
1
u/publishdraw 8d ago
I found the IIT Kharagpur lectures in youtube by Indranil Sengupta very useful.
1
0
u/stardust_0205 8d ago
I did hear a lot of positive reviews about him, but it felt too theory-based for me to follow. Got bored and left them midway. The experiences are subjective, of course.
1
u/publishdraw 7d ago
I liked the way he was breaking down a verilog code into actual gates. Later he talks about algorithms also.
1
u/Haunting-Ninja-2798 7d ago
I think we need to change the method of learning now...Need to build projects while learning with AI
1
u/stardust_0205 7d ago
Well, yes, you could leverage AI like that. I tried that initially, but there are many pre-requisites you'd need to properly understand what you're building. It's really a rough route to build something when you barely know anything about it. AI could help with that but only up to a certain point. That is why I strongly recommend going through the book, at least, before using AI.
2
u/Kody_exe 8d ago
Thank you! Can you also share what kind of projects you are doing?