Starting up on VHDL with a home-made XC9536XL development board

If you want to start learning or is trying to learn very-high-speed integrated circuit hardware description language (VHDL) – then project is perfect for you! It comes with a XC9536XL CPLD – or a complex programmable logic device in a PLCC package that you can replace in a breeze! It also comes with eight red LEDs that will serve as outputs, a dual in line package (DIP) switch that will serve as your inputs for your experiments.


Instead of settling for an ordinary clock source this project comes with a ATtiny2313 to provide the clock source – making the clock source not only accurate but also programmable. The board also features two programming ports the first is a JTAG port for programming the XC9536XL CPLD and the other is a 3×2 AVR programming port for the ATtiny2313. The board also breaks out the pins of the ATtiny2313 and XC9536XL CPLD into  female headers when you decide to use just the microcontroller

Blinking LEDs with XC9536 CPLD

CPLDs are meant for different tasks than running LEDs but why not. It may be a great starting point to know this type of IC. They are logical programmable devices that can replace a bunch of logical IC’s like 74hcXX. And depending on size of CPLD they can preform large number of operations on single chip this way reducing board space and power demand. So here is a nice project created with gEDA schematic capture.

It is really basic layout where 60Hz clock is generated with 555 timer. There are 8 LEDs connected to XC9536 I/O pins through current limiting resistors. It has one push button for input. Programming is done via JTAG. To get intuition about programming CPLD you can follow this tutorial.