How to configure Quartus II. Step by step guide

A project log for Arduino + CPLD = CPLD Fun Board!

Homemade low cost CPLD dev board (Arduino STM32F103 and Altera MAX II EPM240/EPM570 CPLD). Two dev boards into one.

just4funJust4Fun 10/23/2017 at 10:150 Comments

In the following I'll use Quartus II version 13.0SP1 (Service Pack 1) because for an other project I need the compatibility with the  Cyclone II FPGA series (this version is the must updated that supports those), and it is related to the EPM240T100 "flavor" of the CPLD Fun Board.

After installing Quartus II IDE (you can get it from here after a registration) it is necessary change some default setting to better suit the CPLD Fun Board.

This setting must be used for every new project, so in the following we'll see how to create a new project and apply the correct setting.

From the Quartus II menu select "File" -> "New Project Wizard..."

Click "Next >"

Fill the directory for the new project, and the others names. I suggest to use the same name for all the fields (as done in the photo). Remember to avoid names with spaces inside! Then click "Next >" again

click "Next >" again

In the "Family" field select MAX II, in the "Package" field select "TQFP" and select in the field "Available devices" the row "EP240T100C5". Click "Next >" when done

click "Next >" again

click "Finish" . Now you have an empty template and it's possible change the setting.

From the Quartus II menu select "Assignments" -> "Devices..."

click on the "Device and Pin Options..." button

set the "Enable device-wide reset (DEV_CLRn)" and "Enable device-wide output enable (DEV_OE)" check boxes. In this way you enable the "DEV_CLRn" key and the "DEV_OE" switch in the CPLD Fun Board.

These are two important functions: the first will reset all the FFs inside all the LEs (Logic Elements) with the "DEV_CLRn" key, and the second will enable the possibility to set all the CPLD pins to HiZ using the "DEV_OE" switch.

Some important notes about these two function:

Now you will set up the state of all the unused CPLD pins. "Unused" here means not referenced explicitly in the "programming" phase.

From the above windows, on the left side, choose "Unused Pins":

and in the "Reserve all unused pins" field set "As input tri-stated weak pull-up". This is the best (and safer) option for the CPLD Fun Board.

Now save this project. You'll use it later to set up a blink led example.