What is current sinking and sourcing? Read the article on Current Sourcing and Sinking to find out.
If you don’t have a parallel port on your computer and can’t use the home built Xilinx JTAG programmer, then one alternative is to use the JTAGkey USB tool from Amontec.
The JTAGkey does not work directly with the Xilinx ISE software as the parallel programmer or Xilinx USB programmer does. Instead, the Xilinx iMPACT software that is normally used to program a CPLD or FPGA is used to produce a SVF file. Software from Amontec uses the SVF file to configure the CPLD.
The Amontec JTAGkey is a USB JTAG device for programming and debugging ARM microcontrollers. It can also be used to program FPGAs and CPLDs as well as do JTAG boundary-scan. The JTAGkey is made by the Amontec company in Switzerland.
Read more about the Amontec JTAGkey in the Amontec JTAGkey USB JTAG Tool article.
This introductory VHDL course uses a Xilinx CPLD board to teach the basics of logic design using VHDL. The course starts at a very basic level for absolute beginners in VHDL, but does assume some knowledge of digital electronics such as gates, truth tables, registers, etc.
This is a very practical course and consists of a brief introduction to CPLDs and VHDL, followed by a series of tutorials that teach VHDL by implementing various VHDL designs on the CPLD board.
The course consists of these articles and tutorials:
- VHDL CPLD Course Introduction – course information, hardware and software prerequisites.
- Introduction to VHDL and CPLD Devices – basic information on what a CPLD is and what VHDL is.
- Tutorial 1: VHDL Inverter and Buffer Code – how to make an inverter and buffer in VHDL and implement it in a CPLD. This tutorial also explains the basic structure and elements of VHDL.
- Tutorial 2: AND Gates, OR Gates and Signals in VHDL – make an AND logic gate, OR gate and learn about signals in VHDL.
- Tutorial 3: NAND, NOR, XOR and XNOR Gates in VHDL – implement NAND, NOR, XOR and XNOR logic gates in VHDL.
- Tutorial 4: Multiplexers in VHDL – implementing a 2 to 1 and 4 to 1 multiplexer in VHDL.
- Tutorial 5: Decoders in VHDL – implementing a 2 to 4 decoder with enable pin in VHDL.
- Tutorial 6: VHDL clock divider – divide a clock source down to a slower frequency
- Tutorial 7: VHDL binary counter – an 8-bit binary counter displayed on 8 LEDs
- Tutorial 8: Knight rider display in VHDL – implements an 8 LED knight rider display and shows how to initialize a register in VHDL
- Tutorial 9: S-R latch in VHDL – design a S-R latch using VHDL code
- Tutorial 10: Gated D Latch in VHDL – two ways of implementing a gated D latch in VHDL code
- Tutorial 11: Shift Registers in VHDL – two ways of coding a shift register in VHDL
- Tutorial 12: Ring Counters in VHDL – a ring counter in VHDL as well as a look at the VHDL ror, rol, srl and sll operators
- Tutorial 13: VHDL Data Types and Operators – a look at some of the data types and operators in VHDL
- Tutorial 14: Addition in VHDL – using the VHDL addition operator to add two 4-bit numbers and display the 5-bit result on LEDs
- Tutorial 15: VHDL SPI Receiver / Output Expander – a SPI receiver is written in VHDL and implemented on a CPLD, interfaces to a microcontroller
- Tutorial 16: Tristate Buffers in VHDL – single and quad tristate buffers written in VHDL code
- Tutorial 17: Forcing the State of a Pin in VHDL – force the logic state of a pin to high or low, or write a fixed bit pattern to a set of pins on a CPLD or FPGA
- Tutorial 18: Routing I/O Signals in VHDL – route microcontroller pins through a CPLD to connect them to peripherals
- Tutorial 19: Up/Down Counter in VHDL – up/down counters, also demonstrates VHDL “while” loop and VHDL generic values
- Tutorial 20: VHDL Case Statement LED Display Sequencer – uses the VHDL “case” statement to sequence patterns on a set of LEDs
- VHDL CPLD Course Conclusion – end of the VHDL CPLD course