Build this single-sided Xilinx CPLD board at home and experiment with CPLDs and hardware description language (HDL). The source files for the project are in open source KiCad format so you can modify the circuit diagram and PCB if needed. Follow the VHDL CPLD course and learn to program a CPLD using VHDL code.
CPLD Board Details
The Xilinx CPLD board has the following features:
- XC9536XL CPLD from Xilinx
- Board and CPLD powered from 3.3V
- AVR microcontroller (ATtiny2313) provides clock source to CPLD
- CPLD is in-system programmable through 14-pin (2 × 7) header on board
- AVR microcontroller is in-system programmable through 6-pin (2 × 3) header on board
- 8 LEDs connected to CPLD pins
- 8 switch DIP switch pack connected to CPLD pins
- 1 push-button switch connected to CPLD pin
- Spare CPLD pins available on headers
- Spare microcontroller pins available on headers
The CPLD used in the design is a XC9536XL CPLD from Xilinx. This CPLD is powered from 3.3V. Xilinx do have 5V CPLDs, but these are usually much more expensive than the 3.3V CPLD range. The circuit is powered entirely from 3.3V.
The AVR microcontroller has been added primarily to provide a clock source for the CPLD. Normally a 3.3V oscillator in a SMT package would be used for a clock source, but this is a more specialized part and to keep the design through-hole, it was decided to use the AVR.
In order to fit the circuit to a single-sided PCB, a number of links were used on the board. These links have been added to the circuit as 0Ω resistors (zero ohm resistors). If you don’t want to buy 0Ω resistors you can just use a wire link in their place.
Circuit Diagram
The CPLD evaluation board schematic is in PDF format. The Ki Cad source files for the project can be found below under the Source Files heading.
CPLD Circuit Parts List
All of the parts used in the construction of the CPLD evaluation board are shown in the table below.
Note that crystal X1 and capacitors C7 and C8 are optional. They will only be needed if you would like to provide a more accurate clock signal to the CPLD or need a specific clock for some of the functions on the AVR.
Read More: Xilinx CPLD Board Electronic Project