For those of you out there who want to learn about the world of programmed logic but are not experienced enough to Build Your Own CPLD Dev-Board, you’re in luck because a fairly cheap but very powerful FPGA development board is now on the market. It’s called the DE0 Nano!
This article will take a look at how to get Altera’s IDE: Quartus II installed onto a computer and how we use Quartus II to make an FPGA program, compile it and get it onto the DE0 Nano’s Cyclone IV FPGA. The DE0 Nano has many peripherals like an Accelerometer, RAM, A/D converter and more, but we’ll stay with the basics for this intro.
A great introduction to using the DE0 Nano FPGA board.
DE0-Nano – Altera Cyclone IV FPGA starter board. For every day projects, microcontrollers are low-cost and easy to use. But when you have a project that needs raw power and high speed you may want to check out FPGAs (Field Programmable Gate Arrays). FPGAs are like raw chips that you can design by hand. They run very fast and very efficiently. They are designed for mass-parallel execution so they’re very good at handling a lot of I/O pins at once, especially for real time video or audio or emulation applications.
FPGAs are also a lot of fun, in that you really get to play with how chips are designed. Unfortunately, we didn’t study FPGA’s in school and so we missed out on learning how to use them. When we saw this Altera starter pack, we thought it would be a great first FPGA board – compact but not ‘bare bones’ – at a great price! There’s no paper book included, but there is a very detailed Altera FPGA training curriculum that a student could use as part of a self-taught FPGA adventure.
The package comes with a single DE0 Nano development board, mini USB cable (you can program and power the module over USB) and two CDs with the software necessary to ‘compile’ and ‘upload’ code to the board. The software is available for Windows and Linux computers (no Mac)
The module itself contains a nice collection of accessories:
- Altera Cyclone IV FPGA (EP4CE22F17C6N)
- 22,320 Logic elements (LEs)
- 594 Embedded memory (Kbits)
- 66 Embedded 18 x 18 multipliers
- 4 General-purpose PLLs
- 153 Maximum FPGA I/O pins
- 50 MHz clock oscillator
- 8-channel 12-bit Analog/Digital converter (NS ADC128S022)
- 32 MB SDRAM
- On-board USB blaster programming interface
- USB mini-AB port
- 2Kb I2C EEPROM
- 4 DIP switches
- 8 Green LEDs
- ADXL345 3-axis Accelerometer
- Two 40-pin IDC-compatible headers provides 72 general purpose I/O pins
- One 26-pin header provides 16 digital I/O pins and 8 analog input pins to connect to analog sensors
To connect to the IDC headers, we suggest picking up a 40-pin female/female socket cable which will let you connect external sensors to the module once you’ve exhausted the on-board accessories