iVerilog Setup
Local System Verilog Environment
Please Log In for full access to the web site.
Note that this link will take you to an external site (https://shimmer.mit.edu) to authenticate, and then you will be redirected back to this page.
Installation
IcarusVerilog (or iVerilog for short) is an open-source Verilog simulation and synthesis tool we use for making fast simulations of Verilog projects. iVerilog works on all three families of operating systems. Details for different operating systems are provided on this site. A few notes from our experience:
- If you're on Mac, just install it using homebrew. That seems to be the least painful.
- If you're using Linux, just use whatever instructions you like. I've had no problem with both Debian and Ubuntu for what it is worth.
- If you're on Windows, it's best to just use the installer. There's a link to the installer page at the bottom of the official docs, or you can grab it here. Make sure to check the box to add the executable folders to the path when you install. There's also an option in the installer to also install GTKWave, feel free to check that too.
From here, use your terminal shell to ensure that iVerilog was installed and is accessible in your shell by running iverilog -v
, which should print out the version of Icarus installed, and some license/usage information.
Generally this semester, we won't be running iVerilog directly, but instead running its simulations within cocotb, a python library for writing testbenches in Python.1 Continue on to the next page for details on how to install it!
Footnotes
1Since we'll be writing testbenches with Python, we'll use cocotb to spin up our iVerilog simulations. Testbenches can also be written in SystemVerilog directly, as they were in 6.205 before Fall 2024! If you're running SystemVerilog testbenches, the iVerilog simulator can be called directly, and an example of how to do this can be found here.