Debian Virtual CAE System
The Debian virtual CAE System is a Debian Linux based CAE environment based on Intel/Altera®, Quartus®, ghdl and gtkwave. The idea is to run Linux in a virtual machine. The lab as two different boards which require different Quartus Version.
- Altera DE1 board (Digitaltechnik, Entwurf digitaler Systeme 1) with Cyclone II FPGA
- NOT IN SS21!!! Altera DE1 SOC (Master VLSI, Master COM) with Cyclone V FPGA
The last version that supports Cyclone II fpga architecture is Quartus 13.0sp1. That version does not support the Cyclone V architecture. All quartus versions that support Cyclone V do not support Cyclone II. So unfortunately there is not one Quartus version that supports both fpga architecutures.
Preconfigured VirtualBox virtual machine
Hans Färber has build three different virtual machines:
- Altera DE1 Virtual Machine with Quartus 13.0sp1 and ghdl/gtkwave for Digitaltechnik, Digitaltechnik Praktikum and Entwurf digitaler Systeme 1
- Altera DE1 Virtual Machine with Quartus, Modelsim and Matlab for Master Courses
- Altera DE1 SoC board: SoC Virtual Machine (used in previous years for Master courses)
Build your own from scratch
The CAD software is based on Debian Linux, Quartus and other software. The software and the linux operating system are supposed to run in a virtual machine. If you do not use a virtualization environment, then you can install also directly on a native linux machine. See manual setup for manual installation hints.
Virtual Machine
Virtualization Software
There are different virtual machine environments.
VMWare
VMWare® provides a commercial version VMWare Fusion for Mac OS®. This has a very good integration in MacOS and I use it with MacOS 12.7.5 (Monterey). I have a commercial version but there is a free “VMWaver Fusion” for personal use also. They have “VMWaver Workstation” for Windows but I have not tested that.
VirtualBox
VirtualBox(r) is available for Windows, Linux and Mac OS. It is free. From my experience with MacOS it is not as good integrated as VMWare Fusion. If you want to use this, then download and install the the virtual machine software from https://www.virtualbox.org
UTM for Mac
UTM is based on QEMU. UTM/QEMU allows to run the amd64 based machine also on ARM M1/M2 based Apple Laptops. I have tested this on a Intel based MacBook Pro. It is slower than VMWare.
Get the .iso install image
Download the ISO file for Debian 12.5.0 preconfigured setup. You can download the image from here:
http:www.tha.de/homes/beckmanf/public/vcae-debian-12.5.0-1.iso
Create the virtual machine
This depends on the virtualization environment that you use. The iso contains a preconfigured debian installer which will install a machine with a user “caeuser” with password “caeuser”. The ISO file represents a CD like in a CDROM and will install a new virtual system. The things you need to configure in your virtualization environment are the hard disk size, the memory and the number of processors that your virtual machine shall have.
For all virtual machines choose “Conventional BIOS” and not “UEFI Boot”.
VMWare
Create a new virtual machine with minimum 30GB hard disk size. The hard disk will result in a file on the host operating system (Here MacOs) but the file size on the host will be dynamic, i.e. it will depend on the actual usage in the virtual machine. So you can also configure 120GB. Choose minimum 2GB ram or 50% of your RAM in your computer. Choose 50% of the processor cores on your computer.
Virtualbox
to be done
UTM
Make sure you choose “BIOS” boot mode and not “UEFI”. After the debian installer has finished you have to virtually eject the ISO file.
Finalize the installation
After the debian installer has finished you should reboot your virtual machine. It will start in terminal mode. You need to login as user “caeuser” with password “caeuser” to finalize the installation. After login do:
cd ./go.sh
That will install
- Altera Quartus II Web Edition Version 13.0sp1 (13.0.1 build 232)
- GHDL + gtkwave
- LXQt + Lightdm Window environment
These versions are required for the Altera DE1 board which is used in the digital design lab and is available in the library. This Quartus version is the last version that supports the Altera Cyclone II FPGA which is on that board. So do not install a later version if you want to use that board. The quartus software will be installed at “/opt/altera/13.0sp1”. The installation script “go.sh” installs the remaining software vi “ansible”.
Test the installation
Start Quartus GUI
quartus
Run some projects
Install git
sudo apt install git
Download the “Digitallabor” from the git server: https://gitlab.elektrotechnik.hs-augsburg.de/beckmanf/dtlab
cd mkdir projects cd projects git clone https://gitlab.elektrotechnik.hs-augsburg.de/beckmanf/dtlab.git
Now start a simulation
cd dtlab cd sim cd top_shift make wave
To run a synthesis
cd dtlab cd pnr cd top_simple make quartus
If you have a FPGA Board, you can download and test the design.
make prog
How this is done
The repository https://github.com/fredowski/vcae contains how the
- Debian preconfigured iso
- The quartus debian packages
- The ansible install scripts
- A vagrant setup
are made.
Install Quartus via the package
If you already have a native linux installed, then you can install quartus also via a debian package. In order to make the packages available on your installation. Copy the file "quartus.list"
- quartus.list
deb [arch=i386,amd64 trusted=yes lang=none] http://www.tha.de/homes/beckmanf/public/repository ./
to “/etc/apt/sources.d” and update the package repository database with
sudo cp quartus.list /etc/apt/sources.d sudo apt update
Intel Quartus 13.0sp1 for Cyclone II FPGA (Alter DE1 Board)
Quartus 13.0sp1 is a i386 architecture, so you need to add the i386 architecture to your system setup:
sudo dpkg --add-architecture i386
and then
sudo apt update sudo apt install quartus13:i386
Quartus 23.1 for Cyclone V (Altera DE1-SoC Board)
sudo apt update sudo apt install quartus23
Quartus path setup
In order to be able to start the binaries from the terminal, the path for the binaries has to be in the PATH environment variable. For that you have to modify the .bashrc file in your home directory. Append the following snippet to the .bashrc file with vi.
- .bashrc
# Include the ALTERA fpga software export PATH="$PATH:/opt/altera/13.0sp1/quartus/bin"
Then you have to logout and login again to make the changes active.