Install Quartus II
From Fpga4u
This page will guide you through all steps needed to install all the necessary tools for Windows to use your FPGA4U at home.
On Windows
Download the Installer
Go to the Download page of the Quartus II Web Edition here and download it.
Install Quartus II
- Execute the installer and follow the instructions until you reach Components Select.
- There, select:
- Quartus II Web Edition software (Free)
- Cyclone II family for FPGA4U
- Cyclone IV E family for FPGA4U DE0
- [Optional] ModelSim-Altera Starter edition (Free)
- Quartus II Web Edition software (Free)
- Note that it is possible to add more components later on.
- At the end of the installer you can run Quartus II. (No need to open the subscription page request). But before being able to program the board you will need to install the drivers.
If you are updating a previous version of Quartus II, do not forget to update the USB-Blaster driver accordingly or you may experience strange behavior from JTAG based features. |
Install USB drivers
FPGA4U DE0
Plug your board to your computer. Windows should ask you for the location of the drivers. Select the usb-blaster folder from your Quartus install. It is generally found in C:\altera\{VERSION}\quartus\drivers\usb-blaster.
FPGA4U
For the FPGA4U, the installation of the drivers may require a special procedure, because since firmware 4.2 the FPGA4U USB device implements two interfaces. The first interface emulates the official USB-Blaster of Altera and the second can be used to transfer data between your PC and the FPGA4U. When you plug your FPGA4U for the first time, Windows will detect that this is a composite device (i.e., device with multiple interfaces) and may ask for a driver for each interface. We don't want to install two drivers, but a single driver for this composite device. To do so:
- Close any driver installation wizard popping up.
- Go into the Device Manager (Keys Start+Break or Start -> Control Panel -> System, Hardware Tab, and Device Manager Button).
- In the USB devices list, look for a USB Composite Device with the following id: USB\VID_09FB&PID_6001&REV_0400. To get the ID of a device, right-click on it and select Properties -> Details -> Device instance id.
- If you cannot find it and have an Unknown device or a single Altera USB-Blaster that matches the id, simply continue this tutorial with this device instead.
- Once you found the USB Composite Device, update its driver (right-click -> Update driver...).
- Select manually the driver to install:
- Do not let Windows look for a driver for you.
- Select the driver from a specific location.
- Click on the Have Disk button.
- Select manually the driver located typically in C:\altera\{VERSION}\quartus\drivers\usb-blaster, where VERSION refers to the version of Quartus II.
- Click Ok to install the driver.
Now when you open the Programmer in Quartus II (Tools -> Programmer), Hardware Setup... should list USB-Blaster [USB-0]. If you have trouble programming the board or to use the USB interface, try to install the last version of the firmware.
Known Issues
A conflict was reported between Quartus II version 12.0 and Windows 7 and 8 64-bit systems that makes your FPGA unrecognized. The JTAG service (necessary to communicate with the FPGA) fails to be automatically setup during the Quartus installation and results in the Programmer failing to list the connected JTAG devices. A solution is proposed in the Altera forum: http://www.alteraforum.com/forum/showthread.php?t=36775
On Linux
Since Quartus II 10.0, the Web-edition is also available for Linux systems.
Download the Installer
Go to the Download page of the Quartus II Web Edition here and download it.
Install Quartus II
By executing the script, it should open a GUI similar to the Windows version. Like for windows, in the components selection dialog, make sure to select the Cyclone II family if you are using the regular FPGA4U or the Cyclone IV E for the FPGA4U DE0. Then, simply follow the instructions.
Troubleshooting
Some people experienced an error during the execution of the install script:
./altera_installer_gui: symbol lookup error: /usr/lib/libXi.so.6: undefined symbol: XESetWireToEventCookie
Apparently there is a conflict with the file libX11.so.6. Here is a simple workaround:
- Add the option --confirm to execute the install script.
sh altera_installer.external.sh --confirm Creating directory bin Verifying archive integrity... All good. About to extract 49568 KB in bin ... Proceed ? [Y/n] Y Uncompressing Altera Installer............................................................................................................................ OK to execute: ./altera_installer_gui --gui ? [Y/n]
- Before proceeding, in another terminal, go in the same directory than the install script and delete the file ./bin/libX11.so.6.
rm bin/libX11.so.6
- Now you can proceed.
OK to execute: ./altera_installer_gui --gui ? [Y/n] Y Fontconfig error: "conf.d", line 1: no element found Fontconfig warning: line 73: unknown element "cachedir" Fontconfig warning: line 74: unknown element "cachedir"
- The installer GUI should pop up.
Install USB drivers
If you have problem programming your FPGA4U board, verify that you have the latest firmware version (look at this page).
Since v4.2.0, the firmware fixes a bug, which would not let the board to be programmed in High-speed on Linux and Mac OS systems. |
To let users use the USB-Blaster device, you need to give them the right to.
On Gentoo, you must add your user to the usb group (in /etc/group) to be able to program the device.
On other distributions, you need to have write access to /proc/bus/usb/bus/id.
Here is an example for Ubuntu:
- Create a new rule file with your favorite text editor (like vim):
sudo vim /etc/udev/rules.d/51-usbblaster.rules
- Insert the following lines
# Altera USB-Blaster rule to set mode to 666. SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="0666"
- Load this new rule by typing:
sudo udevadm control --reload-rules
Known issues
Ubuntu (9.10 and 10.04)
For older Quartus versions than 11.0, we need to patch the JTAG server to look for devices in /sys/kernel/debug/usb/devices instead of /proc/bus/usb/devices, and in /dev/bus/usb/.../.../ instead of /proc/bus/usb/.../.../.
As the former won't fit in the string placeholder of the binary file, we choose to create a soft link.
sudo ln -s /sys/kernel/debug/usb/devices /dev/bus/usb/devices
This soft link will disappear on reboot, so if you don't want to type it every time, add this line in a script or in your /etc/rc.local file (without the sudo).
Now we will use sed to replace the paths that the JTAG server is looking at. There are 2 sets of commands, one for 32-bit OS and the other one for 64-bit. Select the set corresponding to your system. If you have a doubt, it won't harm to patch both files. Before executing the commands, replace <installation path> by your installation path (e.g., /opt/altera/10.0). Note that these commands will create a backup copy of the JTAG server (jtagd.bak).
For 32-bit OS:
sudo sed -i.bak 's/\/proc\/bus\/usb\/%03u\/%03u/\/dev\/bus\/usb\/%03u\/%03u\d0/g' <installation path>/quartus/linux/jtagd sudo sed -i 's/\/proc\/bus\/usb\/devices/\/dev\/bus\/usb\/devices\d0/g' <installation path>/quartus/linux/jtagd
For 64-bit OS:
sudo sed -i.bak 's/\/proc\/bus\/usb\/%03u\/%03u/\/dev\/bus\/usb\/%03u\/%03u\d0/g' <installation path>/quartus/linux64/jtagd sudo sed -i 's/\/proc\/bus\/usb\/devices/\/dev\/bus\/usb\/devices\d0/g' <installation path>/quartus/linux64/jtagd
Now, if you execute
<installation path>/quartus/bin/jtagconfig
You should get something like this:
<installation path>/quartus/bin/jtagd: 59: ARGV[0]=--user-start: not found <installation path>/quartus/bin/jtagd: 59: ++val: not found <installation path>/quartus/bin/jtagd: 59: ARGV[0]=--config: not found <installation path>/quartus/bin/jtagd: 59: ++val: not found <installation path>/quartus/bin/jtagd: 59: ARGV[0]=/home/user/.jtagd.conf: not found <installation path>/quartus/bin/jtagd: 59: ++val: not found 1) USB-Blaster [USB 1-1.1] 020B30DD EP2C15/20
On Mac OS using a virtual machine
If you are on Mac OS, a solution is to use a virtual machine running Windows or Linux. You can follow the same steps as described in the On Windows or On Linux sections for Quartus and drivers installation.
If you have problem programming your board, verify that you have the last firmware version (look at this page).
Since v4.2.0, the firmware fixes a bug, which would not let the board to be programmed in High-speed on Linux and Mac OS systems. |