This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320LF2406A: C240x BSDL Files for JTAG Programming

Part Number: TMS320LF2406A
Other Parts Discussed in Thread: TMS320LF2403A

I have been interested in obtaining the BSDL files for JTAG programming of the Texas Instruments TMS320LF2406A and the TMS320LF2403A.

Initially, JTAG programming of these DSP/MCUs could only be done through the IDE with the use of a JTAG emulation/debugging adapter.

This adapter is no longer available, and the IDE is too cumbersome to use on a production basis.

We have been production programming these parts for many years now, using the SCI interface, which is very slow.

These ICs are still in current production and are in large usage worldwide.

The demand for our products using these parts continues to grow.

I seek to try to do production programming using the much faster JTAG method, just as we already do for our newer products using newer DSP/MCUs.

 

We have been unable to locate any BSDL file for these parts, whether through TI or elsewhere.

Referring to BSDL files, the webpage www.jtag.com/bsdl-files states: “According the Boundary-scan standard IEEE 1149.1, these files must also be made freely available by the vendors of the IC’s to their customers.”

We have had no luck in obtaining them.

 

Any help you might provide would be greatly appreciated.

  • John,

                    You may be aware the LF240xA devices were in NRND status for several years before being pulled out of that status. The entire toolchain for these devices is now obsolete and there is very limited support for these devices (support now is only through e2e).  Unfortunately, these devices do not support boundary scan. This is mentioned at the bottom of the first page of the datasheet “IEEE Standard 1149.1−1990, IEEE Standard Test-Access Port; however, boundary scan is not supported in this device family.” See https://www.ti.com/lit/SPRS145 

    JTAG programming: Either the Prg2xx command line utility (or) SDFlash GUI (or) CCS flash plugin can be used. Supported debug probes are XDS510PP+ or XDS510USB. Note that the company that manufactured these debug probes (Spectrum Digital) has shut down and is no longer in business. However, you may be able to buy these probes online. SDFlash was developed by Spectrum Digital, so no support is available for that tool. Even if you manage to buy a XDS510PP+ probe, you may not be able to find a PC with a parallel port. 

    These two 3rd parties have programming solutions for LF240xA devices: 

    www.elprotronic.com/collections/c2000   

    www.codeskin.com/programmer 

    If you would like to do this yourself, these posts may provide some useful information:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/795141/ccs-tms320lf2407a-read-flash-contents

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/536017/lf2407a-flash-programming

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/667445/dms-320lf2407apgea-read-copy-firmware    

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000-microcontrollers---internal/f/c2000-microcontrollers---internal-forum/1116931/tms320lf2407a-algorithm-file 

    Sorry I am unable to help you better.

  •  

    JS:

    Thank you for your help.   There is a large amount of useful information you have provided here.  However, I need further help:

    HJ:

    You may be aware the LF240xA devices were in NRND status for several years before being pulled out of that status

    JS:

    We use newer DSP/MCUs for new designs.  I am trying to resolve a production issue for our legacy products that have increased demand especially in the medical sector.

    HJ:

    . The entire toolchain for these devices is now obsolete and there is very limited support for these devices (support now is only through e2e).  Unfortunately, these devices do not support boundary scan. This is mentioned at the bottom of the first page of the datasheet “IEEE Standard 1149.1−1990, IEEE Standard Test-Access Port; however, boundary scan is not supported in this device family.” See https://www.ti.com/lit/SPRS145 

    JS:

    The data sheet says: “Real-Time JTAG-Compliant Scan-Based Emulation, IEEE Standard 1149.1† (JTAG)”  ----  “† IEEE Standard 1149.1−1990, IEEE Standard Test-Access Port; however, boundary scan is not supported in this device family.”

    We are not trying to use the JTAG port for boundary scan itself.  JTAG ports can be used for other purposes, such as emulation, programming, etc.   In our case, we are trying to use the JTAG port specifically for programming.  The chip’s JTAG port does support programming -- as the original CCS utilized this.

    HJ:

    JTAG programming: Either the Prg2xx command line utility (or) SDFlash GUI (or) CCS flash plugin can be used. Supported debug probes are XDS510PP+ or XDS510USB. Note that the company that manufactured these debug probes (Spectrum Digital) has shut down and is no longer in business. However, you may be able to buy these probes online. SDFlash was developed by Spectrum Digital, so no support is available for that tool. Even if you manage to buy a XDS510PP+ probe, you may not be able to find a PC with a parallel port.

    JS:

    We have various Spectrum Digital JTAG interfaces.  Moreover, SPRU357C refers to SPDU079A which details how to create the hardware for the JTAG interface.  (Useful for just such a case as a provider “company shutdown”.)

    HJ:

    These two 3rd parties have programming solutions for LF240xA devices: 

    www.elprotronic.com/collections/c2000

    JS:

    They do not support JTAG programming for the 240x parts – only SCI programming.

    HJ:   

    www.codeskin.com/programmer 

    JS:

    The readme.txt file says:  “Note, however, that we can not support the 2402, 2403 or 28020/280200 due to the limited size of its internal RAM.”  (Yet, CCS 3.3 had no problem.)

    HJ:

    If you would like to do this yourself, these posts may provide some useful information:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/795141/ccs-tms320lf2407a-read-flash-contents

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/536017/lf2407a-flash-programming

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/667445/dms-320lf2407apgea-read-copy-firmware    

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000-microcontrollers---internal/f/c2000-microcontrollers---internal-forum/1116931/tms320lf2407a-algorithm-file 

    Sorry I am unable to help you better.

    JS:

    These are very useful links!  I wish I had been in touch with you earlier!  Thank you for all your efforts.

    (Although, the last link yields a “Page not found” error.)

    However, just as TI anticipated (in SPDU079A) the need for anyone to be able to create the hardware side of the JTAG interface, and not be dependent on the continued existence of any hardware vender, I believe the JTAG committee anticipated the same need for the software side of this.  Note that the webpage www.jtag.com/bsdl-files states: “According the Boundary-scan standard IEEE 1149.1, these files must also be made freely available by the vendors of the IC’s to their customers.”  (Refering to BSDL files; emphasis mine.)

    I have been made aware of a few JTAG programming softwares that need only the appropriate BSDL file and the users firmware file in order to program chips.  Related venders said to me that the reason they don’t support the 240x series is because they were unable to obtain the BSDL files.

    I checked the Wayback Machine for the years shortly after the release of the 240x, and I found links that may have originally connected to BSDL files, but I am not sure of that, and in any case, I couldn’t locate them there.

    My interpretation of the JTAG requirement, would be that the BSDL files must be provided any time during the production and sale of the parts, regardless of the status of official Support by the manufacturer.

    If you think my analysis is reasonable, can you bring this to a higher level within TI?

    Thank you.

  • We are not trying to use the JTAG port for boundary scan itself.  JTAG ports can be used for other purposes, such as emulation, programming, etc.   In our case, we are trying to use the JTAG port specifically for programming.  The chip’s JTAG port does support programming -- as the original CCS utilized this.

    Understand and agree with you.

    We have various Spectrum Digital JTAG interfaces.  Moreover, SPRU357C refers to SPDU079A which details how to create the hardware for the JTAG interface.  (Useful for just such a case as a provider “company shutdown”.)

    I think the problem is not the hardware; it is the software (or more precisely, the programming utility). You already have the needed JTAG debug probes; if not, you can find them eBay. SPDU079A, a 30-year old document, was primarily written for the XDS510 emulator. This is a PC-ISA-bus based emulator. You may recall the ISA bus in old PC-AT.

    They do not support JTAG programming for the 240x parts – only SCI programming.

    True. One company that may be able to help you with JTAG-based solution is https://bpmmicro.com/. You can also check https://www.dataio.com/

    “According the Boundary-scan standard IEEE 1149.1, these files must also be made freely available by the vendors of the IC’s to their customers.”  (Refering to BSDL files; emphasis mine.)

    What you really need is the algorithm files for the C/E/P operation, not the BSDL file. I can provide the files but how will you use them?  Do you have a working XDS510PP+ emulator? Take a look at https://www.ti.com/tool/SPRC141 (runs on Win XP only).

    I have been made aware of a few JTAG programming softwares that need only the appropriate BSDL file and the users firmware file in order to program chips.  Related venders said to me that the reason they don’t support the 240x series is because they were unable to obtain the BSDL files.

    No BSDL file available for this device.

    If you think my analysis is reasonable, can you bring this to a higher level within TI?

    I understand your requirement. Unfortunately, the decision to drop support for LF240xA devices was made several years ago. Nothing can be done to revive support for these devics with the latest hardware. If you have a PC with a working XDS510PP+, I can send you the Prg2xx.exe utility along with the C/E/P algo files. This would be the fastest way for you to get going. If you have more questions, we can discuss over a call.

  • XDS510USB or XDS510USB+ also work with LF240xA devices, although I don't recall having used them to program the flash. It would help if you indicate what kind of JTAG debug probes ("emulators") you have and whether you have a working copy of CCSv3.3. If you have a working setup (PC+Emulator+CCS3.3), you can check if Prg2xx works for you. Essentially, this is what you are trying to do. i.e. programming the device via JTAG without using the IDE. If this still too slow a solution, you need to work with the vendors I suggested for a gang-programming solution.