Professional VHDL simulators are more expensive than most individuals can afford. But fortunately, there are many free and legal alternatives that you can download and install.
Microsoft Windows is the easiest to install on, but many simulators also have a Linux version. FPGA vendors usually only support the Red Hat Linux distribution. But with a little effort, you can make it work in other distros, including Ubuntu.
Mac OS is the most challenging platform because there’s only one open-source simulator that works natively. I recommend installing another operating system in a virtual machine to get around the problem.
ModelSim / QuestaSim, produced by Siemens EDA (formerly Mentor Graphics), is one of the most popular HDL simulators. That’s why you will find many installation options for ModelSim on this list.
All free ModelSim versions are speed-restricted in some way. But they all look and feel the same, and they are sufficient, even for advanced VHDL projects.
ModelSim-Intel FPGA Edition
Works on: Windows, Linux (Red Hat or Ubuntu)
This is currently my favorite ModelSim option because it works on Windows and Linux, even Ubuntu, and it doesn’t require a license. You can use this ModelSim version for VHDL code targeting any architecture, not just Intel FPGAs.
Go to Intel’s Download Center for FPGAs to fetch the installer.
Make sure to select the Lite Edition, as shown in the image below. That’s the free alternative.
You don’t need to install the Quartus tool to use ModelSim. Instead, go for the ModelSim-Intel FPGA Edition (includes Starter Edition).
When you click the Download button, the webpage will ask for a username and password. You can create a free account by clicking the Register links on the right-hand side of that page.
Installing ModelSim on Ubuntu
If you are running Ubuntu Linux, you need to do a few changes to make it work.
Follow my recipe to get going with ModelSim on Ubuntu:
How to make ModelSim from Quartus Prime Lite work on Ubuntu 20.04
Couldn’t open “transcript”: permission denied
By the way, if you get this error in ModelSim after installing:
It’s because the transcript file isn’t writable.
You can quickly fix that by going to the installation directory (C:\intelFPGA0.1\modelsim_ase) and editing the modelsim.ini file with administrator privileges. Change the TranscriptFile setting to a different path. For example, the installation directory, as shown below.
ModelSim PE Student Edition
Works on: Windows
The student edition of ModelSim only works on Windows. Don’t bother attempting to run it on Linux using the Windows Emulator (Wine). I’ve tried many times, and it’s futile.
Unlike the Intel edition, this option requires a license. *You can request one for free, and you don’t need a verified university address. It works with any email address, but you should review the terms and conditions before downloading to ensure you are eligible.
* Update (Feb 19th, 2021): It’s not possible to easily download the Student Edition as an individual anymore. Only institutions can apply for licenses in bulk now.
Click here to apply for ModelSim licenses for your learning institution
ModelSim Lattice FPGA Edition
Works on: Windows, Linux (Red Hat)
Since December 2020, the Lattice iCEcube2 bundle also includes a free version of ModelSim. It works out-of-the-box on Windows or Red Hat Linux.
Get it from the iCEcube2 Design Software page.
You will need to create a free Lattice account and generate a license that’s node-locked to your computer. If you already have a license for the previous version of iCEcube2, you must repeat the process. The old license file doesn’t include ModelSim.
When you run the installer, you can choose to install iCEcube2 with or without ModelSim, as shown in the image above.
ModelSim ME (Microsemi Edition)
Works on: Windows, Linux (Red Hat)
Similar to the Intel and Lattice editions, there’s also an OEM version of ModelSim for Microsemi. It ships with the Libero SoC Design Suite, and you can download it using the link below.
Libero SoC v12.0 and later – Downloads
You will have to create a free account and generate a license.
Active-HDL Student Edition
Works on: Windows
Active HDL is a Windows-only VHDL simulator from Aldec that looks very much like ModelSim. And why wouldn’t it? It’s a winning formula.
Free Active-HDL Student Edition
The Aldec simulators are more affordable than ModelSim but still too expensive for most individuals. Fortunately, there’s a free student edition that you can download using the link above.
A verified .edu email isn’t required, but I encourage you to review the terms and conditions before downloading.
Xilinx Vivado
Works on: Windows, Linux (Red Hat or Ubuntu)
The Vivado all-in-one FPGA design software from Xilinx is available for Windows and Linux. It also contains a fully featured VHDL simulator (XSIM).
Vivado Design Suite – Downloads
Download the Self Extracting Web Installer using the link above, and make sure you select “WebPACK” when installing. That’s the free alternative.
You can use it with any VHDL project, but you would have to ignore all of the other features of the Vivado design suite; it’s heavily geared towards Xilinx.
Expect to use more Tcl scripting than with ModelSim if you want to create self-checking testbenches. The commands are also different, and I recommend diving into these two documents if you’re going to base your verification project on Vivado:
Vivado Design Suite Tcl Command Reference Guide (UG835)
Vivado Design Suite User Guide Using Tcl Scripting (UG894)
Installing Vivado on Ubuntu
In newer versions of Vivado, the GUI installer doesn’t work on Ubuntu. It quits before completing with a java.lang.IllegalStateException error printed to the console, as shown in the image below.
You can circumvent this error by using the Batch Mode Installation Flow, as described in the Xilinx UG973 document. After you have installed Vivado on Ubuntu, you can use the regular GUI version of the program.
GHDL / GTKWave
Works on: Windows, Linux, Mac
While the other simulators are available free of charge, GHDL is the only open-source alternative for Window, Linux, and Mac. Unlike the commercial simulators, GHDL is a console-based application; there’s no GUI. To view waveforms, you have to use a separate waveform viewer like GTKWave.
I applaud the initiative, but most companies use commercial simulators. Therefore, I have limited experience with GHDL.
You can install it easily on Ubuntu using apt:
sudo apt install ghdl gtkwave
And on Mac using Homebrew:
brew install ghdl brew cask install xquartz brew cask install gtkwave
Thanks to Shinya Yamada for sharing the brew recipe with VHDLwhiz.
VHDL simulator in a Virtual Machine (VM)
Works on: Windows, Linux, Mac
Sometimes, it’s easier to use a virtual machine than fight to install every program on your native system. That’s especially true on Mac, where it’s difficult to get the FPGA software working.
I run Windows 10 on my laptop, but I have an external hard drive with several Windows and Linux VMs that I use. It’s unproblematic.
The best is to install Windows 10 on the VM because it has the best support for FPGA software.
If you want Linux, I recommend going for a Red Hat-based system like CentOS or Fedora. Or Red Hat, of course, but that costs money, just like Windows. Most FPGA software officially only supports Red Hat, and you will have the least trouble installing on a closely related distro.
Or you can use Ubuntu and follow the steps in my walkthrough:
How to make ModelSim from Quartus Prime Lite work on Ubuntu 20.04
I actually used a VWware virtual machine while creating the video in the article above. If you use VMWare and Ubuntu 20.04 (Desktop), you will have the same setup as me, and it will work for sure.
EDA Playground
Works on: Windows, Linux, Mac
Finally, there exists a simulator alternative that you don’t have to install. EDA Playground is a cloud-based service that runs in your browser.
Click here to open EDA Playground.
You can choose between ModelSim, Aldec’s Riviera Pro, and several other simulators and FPGA tools after registering.
Unfortunately, the terms and conditions are quite strict, and that’s why I haven’t used it for any of VHDLwhiz’s tutorial videos. Broadcast or public presentation of the webpage is prohibited.
Are you missing something from the list? Let me know in the comment section below this article!
Thanks for your great liat it helps
Elico
You are welcome! ?
hello, thanks for the pretty extensive guide and it provide to be very informative and helpful. Is there anyway to obtain the modelsim pe student edition without the university license as seimens seems to have discontinued the individual installations.
I don’t think it’s possible to get the student edition as an individual. I recommend going for one of the free OEM versions. Apart from using slightly more disk space, they are equivalent to the former student edition.