Anders Stengaard Sørensen

Hands On Programmable Electronics
Hands On Programmable Electronics (HOPE) is an activity intended to increase the use of programmable electronics among students, by enabling our students to get Hands-On experience with various programmable technologies.

Presently HOPE aim at Microcontrollers, CPLDs, FPGAs and FPAAs


Microcontrollers are small computer systems where CPU, memory and I/O have been integrated in a single IC, that can easily be used for e.g. embedded control.

Over the years, many different microcontrollers have been in and out of fashion in our educations, and many of them are still in use, like the MC68HC11 and the PIC. We are currently trying to boost the use of the of the AVR microcontrollers from ATMEL, as they are easy to use, and have massive support by high quality software tools from a free software community.

The Microcontroller effort of HOPE currently include:
  • A programming interface for the 8-bit Atmel microcontrollers, also known as AVR-processors
  • A carrier-PCB for the atMEGA128 microcontroller, with integrated crystal and programming interface
  • A guide for using the atmega128 and atMEGA8 in your own designs (Not yet written)


Complex Programmable Logic Devices (CPLDs) are low-cost devices that can implement combinatorial logic functions, as well as simple sequential logic (e.g. counters and primitive state-machines).

Depending on the type, a CPLD can replace anything from 1 to more than 20 classic TTL or CMOS type IC's in a design. The programmable nature of CPLD's give the added advantage of beeing able to choose your own pin-configuration, making it very simple to fit a CPLD in your circuit board.

The CPLD effort of HOPE include:
  • A Xilinx compatible JTAG interface for programming Xilinx CPLD's
  • A Demo board for XC9536-PC44 and XC9572-PC44 CPLDs
  • Design tips for using Xilinx CPLD's in your own circuits
  • A guide for downloading and using the appropriate programming software
Using the JTAG interface, any Xilinx CPLD can easily be included in your design. Check the posibilities at the Xilinx CPLD page


Field Programmable Gate Arrays (FPGAs) are related to CPLD's, but are far more complex, allowing very complicated sequential logic (e.g. microprocessors) to be implemented.

We have a great deal of experience with Xilinx XC4000 and Spartan II series of FPGA's, and are preparing a Spartan III effort.


Field Programmable Analog Arrays (FPAA's) are analog counterparts of FPGA's, allowing analog circuits, such as amplifiers and filters to be implemented for LF applications. The FPAA technology is in its early stages compared to its digital counterparts, but the technology is promising and has a lot of interesting applications.

We are currently considering a FPAA effort