|
Needs Expansion |
|
Introduction
This document provides information on installation and setup of Quartus II v8.1 under Ubuntu 8.04 (Hardy Heron) using the following configuration:
Windows guest on a Ubuntu 8.04 (Hardy Heron) host using virtualization via VirtualBox
Quartus II v8.1 running on Windows guest
- Altera device connected to host computer
At the end of this tutorial, you should be able setup the configuration mentioned above and use Quartus II v8.1 both for design digital circuits and load them in Altera devices using Quartus II IDE, without the need to aquire a subscription license.
Although it is possible for the following instructions to work under a different version of Ubuntu, it is very important to use the indicated version of Quartus II software, as it has been reported that previous releases have some problems during installation on Linux flavors that are different from the ones officially supported (Red Hat Linux Enterprise 4/5 (32/64 bit), SUSE Linux Enterprise 9 (32/64-bit) and CentOS 4/5 (32/64 bit)), and would need extra steps that are not covered in this tutorial.
About Quartus II
At the time of writing this tutorial, Altera provides Quartus II software in two different versions:
- Quartus II Web Edition - Free version available only for Windows
- Quartus II Subscription Edition - Free 30 day trial. After that period, subscription license is required. Available for Windows and Linux
Although Quartus II Subscription Edition needs a license in order to work, several command line tools are provided as part of the installation that can be used without the need of that license. Two important commands of these tools that we will use during this tutorial are jtagd and jtagconfig.
jtagd communicates with and loads previously compiled designs into Altera devices using JTAG standard in two different connection modes:
- Local mode - The Altera device is fisically conected to the computer in which Quartus II software is running
- Remote mode - The Altera device is fisically connected to a remote computer that acts as a server. The Quartus II software running on the local computer communicates with the remote Altera device via the remote server
jtagconfig allows us to register and configure connection cables and Altera devices, and setup jtagd to act as a JTAG server
Setting up configuration
The following is a big picture of the steps that will be explained in this tutorial:
- Install Quartus II Web Edition in the guest system to be able to create, compile and load designs into Altera devices
Set up a JTAG server on host computer
Install Quartus II Subscription Edition in the host machine to be able to use jtagd and jtagconfig
Use jtagd and jtagconfig to setup a JTAG server
Communicate the Quartus II Web Edition installed in the guest system with the JTAG server running on the host via virtual networking
- Test configuration by loading a previously compiled design into Altera device
Setting up Quartus II Web Edition 8.1 in the Windows guest
Install VirtualBox (either normal or OSE version) on the host computer.
Create a new virtual machine and install WindowsXP or Windows Vista on it (only this versions of Windows are supported by Quartus II software)
Download Quartus II Web Edition Software v8.1 from Altera's site
- Install Quartus II Web Edition Software v8.1 in previously created Windows guest. No license file is required in this version of Quartus II software
At the end of this section, you should be able to run Quartus II on your Windows guest:
Setting up the JTAG server
Setup environment for Quartus II installation script
Remove csh and install tcsh on the host system
sudo apt-get remove csh tcsh sudo apt-get install tcsh
Make sure that /bin/sh points to bash.
ls -l /bin/sh lrwxrwxrwx 1 root root 4 2008-11-06 11:53 /bin/sh -> bash
If it's not pointing to bash, delete existing link and create a new one
sudo rm /bin/sh sudo ln -s bash /bin/sh
Install Quartus II Subscription Edition
Download Quartus II Subscription Edition Software v8.1 for Linux from Altera's site
Untar 81_quartus_linux.tar in the the host computer, in a directory of your choice
- Go to the directory where you untared the software and execute installation script
./install
Follow the instructions to complete the default installation. If you decide to do a custom installation, read readme.txt or the installation script help
./install --help
If you are using USB Blaster to connect the Altera device to the host computer, you will need to enable usbfs, which is disabled by default on Ubuntu 8.04 (Hardy Heron). Follow this instructions to do so. If you want to enable USB access to your VirtualBox installation (currently not available for OSE version) follow the instructions as is. Otherwise, change the group vboxusers for a group you'd like to restrict the access to usbfs.
Test your installation
Connect and turn on the Altera device to the host computer. Follow the instruction according to the cable you are using:
USB Blaster - USB cable connection is automatically detected when connected to the host computer, so executing jtagconfig should list the available Altera devices currently connected
$ALTERA_HOME/quartus/bin/jtagconfig ..
- LPT cable -
At the end of this section you should be able to execute jtagd and jtagconfig, that should be found in $ALTERA_HOME/quartus/bin. You will also be able to execute Quartus II IDE with free 30 day trial, although binary compilation and design loading into Altera devices are disabled.
$ALTERA_HOME/quartus/bin/quartus
Create a Ubuntu service for ''jtagd''
jtagd should be run as a service to be able to work as a JTAG server. The correct way to do this is installing it in the system run levels mechanism by creating an init.d script, placing it in /etc/init.d/, and creating symbolic links to /etc/rcn.d directories.
The following file implements a init.d script for jtagd.
Create a virtual network between guest and host systems
Test configuration
See Also
A see also section can be used to point users towards other trusted Ubuntu resources. For example, if a page exists in the official documentation on http://help.ubuntu.com, you can link to such a page. This section is optional.
<Link> - Explanation of link.
<Link> - Explanation of link.
<Link> - Explanation of link.
External Links
An external links section can be used to point users towards general information about the subject matter of the page, such as a wikipedia entry or project homepage. This section is optional.
<Link> - Explanation of link.
<Link> - Explanation of link.
<Link> - Explanation of link.