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.