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.

FLASH programming after production



Our new device incluede DSP C5504 and NOR Flash M29W320EB (2Mx16 bits),  JTAG connector and USB connector . Boot from NOR flash.  It will be mass production (50-100)K per year.

What gang programmer ( 8- 16 devices) may be used for flash programming at mass production? 

Thanks

  • Hi Sergey,

    I don't think a gang programmer will work because the DSP doesn't have on-chip Flash or any non-volatile memory to write to. During programming, you need to run a program on the DSP that writes to the external NOR Flash.

    These are the most common approaches:

    1) Program the flash before soldering onto the board (here you could use a gang programmer)

    2) Use the JTAG to load onto the DSP a programmer program that writes the production boot image to the NOR

    3) Boot from USB a programmer program that writes the production boot image to the NOR

    4) Use a commercial JTAG programmer that uses boundary scan to write the production boot image to the NOR

    Maybe others can share how they program their boards...

    Hope this helps,
    Mark

  • I have long been curious whether JTAG would allow enough control to directly program an attached Flash chip without actually running DSP code.  Since JTAG is intended as a boundary scan protocol, it seems that the JTAG controller should have access to every pin on the DSP.  Since the McBSP runs in SPI mode to program the Flash from a DSP program, it would seem possible for the JTAG control to manipulate the McBSP/SPI pins in exactly the same way.

    Is this possible?

    Granted, it might be too difficult to write such a JTAG control sequence, considering the massive number of pin state transitions that would be necessary to program the entire contents of a Flash device, and it also might be incredibly slow.  For all practical purposes, writing a DSP program that must be downloaded via the JTAG interface may be the only reasonable solution - I just would like to know whether direct programming is theoretically possible.

    At the very least, my naive assumption, when I first learned about JTAG by reading general descriptions, was that this sort of thing would indeed be possible.

  • Hi Sergey,

    Actually Xeltek supports your chip on many programmers including gang programmers and SuperBOT which is automated handler that can generate up to 1400 throughput per hour. I guess SuperBOT is exactly what you are looking for if you are planning to program 50K-100K per year. Please contact me for more information. mehmet@xeltek.com

    http://www.xeltek.com/device_search/page2.php?from_page=0&search_str=M29W320EB&package=*&prog_type=1000&manufacturer=NUMONYX&company=0

  • Hi Sergey,

    I had further investigation regarding your request. TMS320VC550  does not have a non volatile memory which is programmable (http://focus.ti.com/lit/ds/symlink/tms320vc5504.pdf). This chip is interfaced with a NOR flash M29W320EB on while only parallel programming support is available. Xeltek cannot support ISP programming for  M29W320EB.

    On the other hand, 50K/100K devices/year converts to 50,000/250 or 100,000/ 250days = 200/400 devices per day. This quantity does not require SuperBOT at all, it can be easily handled by a gang programmer. And the most cost effective gang programmer for your case will be SuperPro 5004EGP.

     


     


  • Hello Brian,

    While I have not done it with a TMS320C55x family device, I have indeed written programmers for production environments that used JTAG boundary scan to program off-chip flash devices by directly controlling the pins of the target processor.  I would expect it to work just as well for a 55x.  That being said, I will warn you that implementing such a method is not trivial and it will take significantly longer to program the parts than other methods.

    On the 55x parts, I typically use the USB ROM bootstrap to load firmware that programs the external part on the production floor.  In general it's less development effort and the part programming goes much faster.  I only resort to JTAG boundary scan when absolutely necessary because it is soooo much slower.

     

  • Mark,
    could you advise where to get more information, examples, etc, on point 4? Maybe do you know anything abt X100v3 Spectrum Digital?
    4) Use a commercial JTAG programmer that uses boundary scan to write the production boot image to the NOR
    Thanks
    Andrea