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.

UNIFLASH: TMS320F28374S

Part Number: UNIFLASH
Other Parts Discussed in Thread: TMS320F28374S

Hi sir,

I connect TMS320F28374S via JTAG and use UniFlash to test it.

I can use the uniflash to read the device form flash and ECC area, but I can't program the deivce via uniflash.

uniflash_log.txt read flash.png

Regards,

Raphael

  • Hello,

    What is the exact UniFlash version being used?

    Are you using a custom board? And with which debug probe?

    Thanks

    ki

  • Hi Ki,

    I recently updated Uniflash to version 9.3, and the same issue still occurs.
    I’m using a custom-designed programming adapter that we made ourselves. After upgrading to version 9.3, the same hardware setup can successfully read data from the IC through Uniflash, and I’ve confirmed that the data is correct. However, it still cannot perform programming (flashing) through Uniflash.

  • I see a variety of errors. What kind of file are you trying to flash (binary? hex? out?)

    Thanks

    ki

  • Hi Ki,

    I have tested using the BIN file and also the HEX file provided by the customer, and both failed. When using the BIN file, I checked the "binary" option and also set the flash start address.

  • How about the original *.out file from which the BIN and HEX files were generated from. Does the *.out file also fail?

  • Hi Ki,
    My customer only provided a HEX file for me to test, and I used a 1KB binary on my side for testing. So at this point, does it look like the issue is with the files? According to the log, I also saw errors related to not being able to halt the device, etc. Can those be ignored for now?
    In addition, I tested with the same hardware configuration and the same chip in CCS, and everything worked normally. The program runs correctly, and the "Test Connection" also passes.

    Additionally, could you please respond more promptly? My customer is asking for updates every day.

  • It could be that the HEX and BIN files were generated incorrectly. To speed up investigations, please have the customer provide the *.out file and the parameters passed to the hex utility to generate the HEX and BIN files. If possible, have them provide the entire project. You can send it by private E2E conversation if desired.

    Thanks

    ki

  • Hi Ki,
    I have tried using the .out file, but the same issue occurs. Also, when I directly click on "Calculate checksum," an error appears as well.

    [2025/11/13 下午2:32:21] [INFO] C28xx_CPU1: GEL Output: Memory Map Initialization Complete
    [2025/11/13 下午2:32:24] [ERROR] C28xx_CPU1: Error: (Error -1044 @ 0x0) The debug probe reported an error. Confirm debug probe configuration and connections, reset the debug probe, and retry the operation. (Emulation package 20.3.0.3656)
    [2025/11/13 下午2:32:24] [ERROR] C28xx_CPU1: Unable to determine target status after 20 attempts
    [2025/11/13 下午2:32:24] [ERROR] C28xx_CPU1: Failed to remove the debug state from the target before disconnecting. There may still be breakpoint op-codes embedded in program memory. It is recommended that you reset the emulator before you connect and reload your program before you continue debugging
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x000130@Program: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error executing PLL configuration algorithm. Operation cancelled. (0x0)
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: File Loader: Memory write failed: Unknown error
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read register PC: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005F800@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005FC00@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x000000@Program: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Cannot enable while the target is disconnected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Failed to run target while trying to execute pwrite_en.alg
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Flash operation timed out waiting for the algorithm to complete. Operation cancelled.
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Perform a debugger reset and execute the Boot-ROM code (click on the RESUME button in CCS debug window) before erasing/loading the Flash. If that does not help to perform a successful Flash erase/load, check the Reset cause (RESC) register, NMI shadow flag (NMISHDFLG) register and the Boot-ROM status register for further debug.
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D22E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D208@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D208@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D208@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D208@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D222@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D222@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D214@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D20E@Data: target is not connected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x0005D222@Data: target is not connected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x000000@Program: target is not connected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Cannot enable while the target is disconnected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not read 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Failed to run target while trying to execute pwrite_dis.alg
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Flash operation timed out waiting for the algorithm to complete. Operation cancelled.
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Perform a debugger reset and execute the Boot-ROM code (click on the RESUME button in CCS debug window) before erasing/loading the Flash. If that does not help to perform a successful Flash erase/load, check the Reset cause (RESC) register, NMI shadow flag (NMISHDFLG) register and the Boot-ROM status register for further debug.
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write 0x00000064@Data: target is not connected
    [2025/11/13 下午2:32:45] [ERROR] C28xx_CPU1: Error occurred during flash operation: Could not write register PC: target is not connected

  • There was a debug failure that resulted in the target disconnecting.

    Can this out file be loaded with CCS?

  • Hi Ki,

    This *.out file was provided by the customer for programming tests. I wrote a bootloader that runs in RAM, and I’m trying to program the customer’s image via SCI.

    The current problem is that after programming, the customer says that the ECC checksum read back in Uniflash is different between the image programmed by Uniflash and the one programmed by my bootloader. We are now trying to clarify this issue. However, I’m currently stuck because I cannot get Uniflash to connect to my programming adapter at all.

  • Raphael,

    Just to be clear you have your own custom programmer.  i.e. something like this: https://www.dediprog.com/product/SF100

    Does it use an FTDI chip? 

    Note that UniFlash supports working with specific TI compatible debug probes.

    Regards,

    John

  • Hi John,

    I’m not using any other programmer for testing right now. I’m only using the XDS100V3 with UniFlash to test the F28374S.
    I believe the circuit should be correct because I’m able to read the flash via UniFlash and JTAG.
    However, I’m unable to perform other operations such as program, erase, or calculate checksum.

    Is there anything I should modify or check?

  • I’m only using the XDS100V3

    ah ok, so you build a custom XDS100v3.

    Can you provide the out file that is failing for you?

  • Hi Ki,

    Could you provide a mail address? I can send the *.out file via mail.

  • Please start a private E2E conversation with me. You can attach the out file there.

  • Thank you for the *.out file. I don't see anything inherently wrong with it. I was able to load it using both CCS 20.3 and Uniflash 9.3 without issue. I used the closest target I had - F28377 with an external XDS100v3. 

    There must be some issue with your environment.

    I assume your F28374S board is a custom board and you are using an external XDS100v3 with it.

    The main error you got was a general debug probe failure:

    https://software-dl.ti.com/ccs/esd/documents/users_guide_ccs_20.4.0/ccs_troubleshooting-jtag-errors.html#the-emulator-reported-an-error

    However:

    I connect TMS320F28374S via JTAG and use UniFlash to test it.

    I can use the uniflash to read the device form flash and ECC area, but I can't program the deivce via uniflash.

    You only get this issue on program load but you can connect and read memory fine? Is this still correct? If so, then the debug probe is working fine here.

  • I’m using a custom-designed programming adapter that we made ourselves.

    I assume you made a custom XDS100v3 based debug probe which you are using. The error you are seeing can be caused by issues with the FTDI chip on your custom probe or bad connections. Please verify them.