Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
12 years ago

USB clones and JTAG Indirect SFL mode

Hi,

Trying to figured out things about my issue about Programming EPCS JTAG Indirect using SFL ( http://www.alteraforum.com/forum/showthread.php?t=44011 ), I did many searches in Altera forum, but elsewhere too.

Seeing this thread http://www.alteraforum.com/forum/showthread.php?t=41023&page=2, I came to the conclusion that maybe my problem is related to my USB Blaster itself, I'm using an $9 clone (with sandpapered cpu with 244 buffer) ...

Continue searching, I found this thread discussing about tons of different clone flavors : http://www.eevblog.com/forum/microcontrollers/altera-usb-programmer/15/

So, I decided to order a new clone which, this time, use an FT235+CPLD, I choose this one :

http://www.ebay.com/itm/ft245-cpld-usb-blaster-programmer-download-for-altera-fpga-cpld-stable-version-/180978173969?pt=lh_defaultdomain_0&hash=item2a2323c811

(hoping I've made good decision compared to more expensive ones)

There were also Cypress FX2 clones, but I feared that even if hardware will work, maybe the firmware for those are not included since they are mostly generic EZ-USB Dev boards.

Can someone confirmed me the following things :

1) Cheap clone (with sandpapered cpu with 244 buffer) will never be compatible with JTAG SFL mode ? (If my conclusion is good)

2) Is all or most of the FT245 works fine in JTAG SFL mode ?

Thanks in advance,

5 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I've received my new USBlaster which use FT245+CPLD yesterday.

    I've got the JTAG-Indirect-SFL working to program the EPCS flash correctly, but unfortunately, this new clone is unable to do "examine", it shows the following :

    Info (209060): Started Programmer operation at Fri Mar 7 11:05:22 2014

    Info (209016): Configuring device index 1

    Info (209017): Device 1 contains JTAG ID code 0x020F10DD

    Error (209040): Can't access JTAG chain

    Error (209040): Can't access JTAG chain

    Error (209015): Can't configure device. Expected JTAG ID code 0x020F10DD for device 1, but found JTAG ID code 0xFFFFFFFF.

    Error (209053): Unexpected error in JTAG server -- error code 35

    Error (209012): Operation failed

    Info (209061): Ended Programmer operation at Fri Mar 7 11:05:23 2014

    But even programming, for which it succeed one time, it seems to be intermittent, another trial failed :

    Info (209060): Started Programmer operation at Fri Mar 7 11:08:44 2014

    Info (209016): Configuring device index 1

    Info (209017): Device 1 contains JTAG ID code 0x020F10DD

    Error (209040): Can't access JTAG chain

    Error (209015): Can't configure device. Expected JTAG ID code 0x020F10DD for device 1, but found JTAG ID code 0x00820F10.

    Error (209012): Operation failed

    Info (209061): Ended Programmer operation at Fri Mar 7 11:08:45 2014

    Some other trials failed to communicate with SFL :

    Info (209060): Started Programmer operation at Fri Mar 7 11:11:15 2014

    Info (209016): Configuring device index 1

    Info (209017): Device 1 contains JTAG ID code 0x020F10DD

    Info (209007): Configuration succeeded -- 1 device(s) configured

    Error (209062): Flash Loader IP not loaded on device 1

    Error (209012): Operation failed

    Info (209061): Ended Programmer operation at Fri Mar 7 11:11:16 2014

    And finally, without doing anything special, I got it worked once :

    Info (209060): Started Programmer operation at Fri Mar 7 11:17:26 2014

    Info (209016): Configuring device index 1

    Info (209017): Device 1 contains JTAG ID code 0x020F10DD

    Info (209007): Configuration succeeded -- 1 device(s) configured

    Info (209018): Device 1 silicon ID is 0x14

    Info (209044): Erasing ASP configuration device(s)

    Info (209023): Programming device(s)

    Info (209011): Successfully performed operation(s)

    Info (209061): Ended Programmer operation at Fri Mar 7 11:17:35 2014

    Also, on some other FPGA boards, Quartus programmer is unable to connect to JTAG chain at all.

    So, I guess I will have to purchase a more expensive USBlaster if I don't want to suffer of all those troubles anymore.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Thanks, Dave, I knew already about Terasic Blaster...

    It is only that I hate paying for something that should be so simple, especially when it is costing more than the board actually been programmed. (It remember me times when I've started playing with FPGAs, in the nineties, when I used to build my own tools)

    Anyway, fortunately, when I've ordered the FT245+CPLD few weeks ago, I've also ordered another cheap one, $8, which look very simiar like the one I used since months, the one with "sandpapered" MCU.

    This one just came in this afternoon. I've tried with without much hope, but a big smile appear on my face : Hey ! this one is working ! and not intermittent at all ! Hourra ! :-)

    I've open the small plastic enclosure, and discovered that it is completly different from the other, although the enclosures and stickers are similiar. This one is using a SiLab MCU with 74HC125.

    Conclusion, yes, sometime it is maybe waste of time and money to try to save few pennies, but sometime it can be rewarded ... :-)

    Ciao
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    You should also consider the possibility that the problems are promoted by board related signal quality problems of the JTAG interface (e.g. ringing TCK) rather than only a bad programming adapter. If so, the combination of programming adapter, particularly driver impedance, and board matters. Similar problems have been observed with previous original Altera USB Blaster versions, too.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    It is only that I hate paying for something that should be so simple ...

    --- Quote End ---

    The USB-Blaster logic is not particularly complicated. The protocol is documented here:

    http://sourceforge.net/apps/mediawiki/urjtag/index.php?title=cable_altera_usb-blaster

    The developer of UrJTAG reverse-engineered the protocol a while ago, and created FT245+CPLD, FX2, and SiLabs clones. Most of the clones you buy on eBay are based on this source.

    As FvM points out, the problem with your other clone could be related to signal integrity. You could probe it with a scope and take a look.

    Cheers,

    Dave