TI DSP programmers: What does a CPLD do? - Page 1
Forum section: electronics / general

author: Dimitri
author_rank: Newbie
timestamp: May 02, 2017, 09:12:07 pm
content: Hi,I am trying to build my own board based on c5505 DSP. I am an inexperienced designer, so reference schematics are great sources for me. Now for this DSP there is a USB dongle kinda like an inexpensive evaluation board for this DSP called TMS320C5505 eZdsp. Here you can reach schematics of it:http://support.spectrumdigital.com/boards/usbstk5505/revd/files/usbstk5505_Schematics_RevD.pdfThat thing has an on-board XDS100 emulator for programming the board. It consists of FTDI chip connected to JTAG. There is also proper emulator, XDS100 for programming various TI processors. Here you can reach that schematics as well:https://drive.google.com/open?id=0B5cUlQV6Qw81Wl9wNVJlbTRzcFkWhile comparing the schematics for these two I see various differences. Mainly the stand-alone emulator has something called CPLD. Do you know/guess what is it for ? Do you thing my design work if I copy the on-board thingy?

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: May 02, 2017, 09:24:33 pm
content: Quote from: Dimitri on May 02, 2017, 09:12:07 pmCPLD is a small programmable logic device. It generally needs programming, so copying the schematic won't work unless the system is set up ( as it the case, for example, with the Xilinx jtag programmer) to automatically program it from the host software. The CPLD JTAG pins are connected to the FTDI chip, so it's possible this may be the case.

author: Dimitri
author_rank: Newbie
timestamp: May 02, 2017, 10:14:40 pm
content: Hi mike,I found a very old version of that jtag emulator, it has some 74HC series chip instead of that CPLD. That explains its function I guess. Then why it is ommited in the on-board emulator? For versatility? You know that JTAG probe is expected to program various TI products, whereas in on-board stick it only programs the chip that it is connected to... Therefore I am inclined to follow the on-board case. So far I could not found much documentation on that. Actually I dont know what to decide.

author: Phoenix
author_rank: Frequent Contributor
timestamp: May 03, 2017, 02:28:34 am
content: From memory there are 3 versions of the XDS100 programmer. See the TI wiki for their differences.http://processors.wiki.ti.com/index.php/XDS100#XDS100v1_FeaturesThe FTDI chip is XDS100v1. The CPLD version is either v2 or v3.The FTDI v1 is very slow. I think it's probably a poor mans bit bashed JTAG. The others will use more sophisticated JTAG controllers programmed into the CPLD. Probably some packet buffering and timing stuff.

author: ebclr
author_rank: Super Contributor
timestamp: May 03, 2017, 05:28:10 am
content: CPLD and FPGA is like you have a small logic ic factory on your hands

author: rsjsouza
author_rank: Super Contributor
timestamp: May 04, 2017, 11:41:17 am
content: Quote from: Dimitri on May 02, 2017, 09:12:07 pmIIRC from one of the discussions on their forum, the CPLD is used only on the v2 variant (as pointed out by Phoenix) and it serves to isolate signals and perform some minor functions on it - nothing to do with performance, as the v1 uses a FT2232D (or L) and the v2 and v3 use the FT2232H.That said, Beaglebone White and a few F28x boards have a v2 variant without the CPLD. I know the BBW has an issue due to the absence of this CPLD (rebooting the host also reboots the board), but other than that I think they are functionally identical. My guess is the removal of this may be due to space or cost.