Intro Module for getting a feel for verilog
- Verilog Tutorial
- SystemVerilog Tutorial
- SystemVerilog Assertions Tutorial
- SystemVerilog DPI Tutorial
- SystemVerilog for Design
- SystemVerilog for Verification
- Interfacing with C
- Writing Testbenches using SystemVerilog
- Get on the caddy systems -
ssh -Y <SUNetID>@caddy.stanford.edu
, clone this repo:git clone https://github.com/mbstrange2/verilog_tutorial_edge_count.git
, then activate tcsh :tcsh
and source the setup file in the reposource setup_ee271.cshrc
- YOU NEED TO BE ON THE STANFORD NETWORK FOR THIS - EITHER ON CAMPUS OR THROUGH THE VPN - First off, the gold code is in
edge_cnt_gold.sv
. I implore you to try figuring it out on your own and implementing your solution inedge_cnt.sv
before looking at mine. I've provided obvious places to insert code in this module with comments. - To run your module, you need to edit
edge_cnt_tb.sv
to instantiate your module instead of mine -> comment outedge_cnt_gold
on line 12, and uncommentedge_cnt
on line 13 - You can uncomment the different
$display()
lines inedge_cnt_tb.sv
to aid in debugging from the command line. - Different compile options:
make compile
: simply compiles the executablesimv
make wave
: compiles the executablesimv
ready to run with waveform dumpingmake run
: compiles and runs the./simv
make run_wave
: compiles and runs./simv
and will dump a waveform totest.vcd
- You can look at the waveform by running
dve
then opening the vcd withFile->Open Database