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.

CCS/TMS320DM6437: Error launching debug session

Part Number: TMS320DM6437
Other Parts Discussed in Thread: SYSBIOS

Tool/software: Code Composer Studio

Hello.

I got new emulator XDS560v2 STM and installed CCS4 to work with it. My board is TM320DM6437. 

When I try to launch debug session for first simple "HelloWorld" project I get the following message:

"An error was encountered when attempting to load the program".

What is wrong and how can I fix the problem?

Before it I worked with this board with XDS510 USb emulator and CCS3.3. Everything worked good.

Thank you

Alex Tsirlin

  • Alex,

    The error you mentioned is very generic and could be caused by many factors. Are you sure your project was built without errors so the program can be loaded to the target? If you send a capture of the Build console and a screenshot of the debugger that may help understand what may be happening in this case.

    One remark: unless there is a strong reason that you need to use CCSv4, I would recommend you to use a newer version of CCS with it.

    If the reason is licensing, after CCSv7 was released all CCSv4/5/6 can be used free of charge.
    processors.wiki.ti.com/.../Licensing_-_CCS

    Regards,
    Rafael
  • Dear Rafael,

    thank you for your reply and sorry for delay.

    I attached all screens with all information. There is no compilation error, only load problem. And I don't have such problem with this board, but with CCS3.3 and XDS 510 emulator. May be problem is in GEL file? I did not understaand how can I change GEL file in CCS4. 

    I have a big working project on CCS3.3 and I think it will be difficult to move it directly to CCS6. So, I started with CCS4.

    Thank you for your help.

    Alex     

  • Alex,

    Thanks for sending the screenshots. I see what is going on: the project you are using lacks a linker command file (*.cmd) for the DM6437 device - these files were added starting with CCSv5.2 and later. Also, the appropriate GEL files were also added starting with this version. 

    You have two options in this case:

    - Download the DaVinci Support files from this wiki page and extract to your copy of CCS - carefully read all the instructions on the page. When creating your target configuration file (*.ccxml) you should select the Spectrum Digital XDS560v2 STM USB Emulator (as you are already doing) and the EVMDM6437 (as it contains the appropriate GEL file). 

    - Download a newer version of CCS that already contains these files.

    Regardless of the version of CCS, you should be able to manually launch the target and load the previously generated .out file. This will allow you to validate the debug environment. To do this on CCSv4, follow steps 1 through 4 of this wiki page. If you plan to migrate to a newer version, both CCSv5 and CCSv6 use a similar concept shown here

    All that said, moving ahead with a project for such older device is something to be very carefully planned:

    - If the product that uses this project is in maintenance mode, I would strongly recommend keeping CCSv3.3 to build the project and use CCSv5.5 for debugging (it was the last version that supported the full DSP/BIOS real-time analysis tools). 

    - If this is a new product based on the DM6437, then the effort to migrate to a newer DSP/BIOS version present on CCSv5.5 may be worthwhile. You can even try to migrate to the newer SYSBIOS product (the latest that supports your device is 6.42.03.35), but that adds another layer of migration.  

    For details about the DSP/BIOS → SYSBIOS migration please refer to the document SPRAAS7 and the TI-RTOS forum. 

    Hope this helps,

    Rafael

  • Dear Rafael,

    Thank you for your reply! I will try all options one by one.

    Alex

  • Dear Rafael,

    I still need your (or somebody's else) help.

    I installed CCS5.5, but still I don't succeed to load program, to put or to see GEL file. Still I do something wrong.

    Attached some print screens.

    Thank you in advance

    Alex

  • Alex,

    I don't see in your HelloWorld project a linker .CMD file, therefore the linker will allocate everything starting at address 0x0 and this will forcefully fail when loaded to the target (if I recall correctly the DM6437 does not have memory at address 0x0). To add a linker cmd file, you can select the DM6437 in the dropdown menu in the second screenshot.

    Also, the target does not seem to have a GEL file. This is fine if you use the default DM6437 linker CMD file above, as it will use only the internal RAM, but it will fail if the original code uses DDR. 

    In this case, you can add a GEL configuration by opening your target configuration file (under the project directory named targetConfigs) and select EVMDM6437. 

    To help you move forward, I attach two projects I have here: one Hello world and one based on DSP/BIOS.

    Hope this helps,

    Rafael

    DM6437_Hello.zip

    DM6437_stairstep_BIOS5.zip

  • Dear Rafael,

    thank you for your help!! 

    I will try your projects. Thanks a lot

    Alex

  • Dear Rafael,

    My progress is going very slow... I tryed your helooWorls project. When I try to run debug I get a message that I write to forbidden memory. I is possible with my board. So I tryed to change GEL file. According to this document ( processors.wiki.ti.com/.../GSG:CCSv5.0_Adding_GEL_files_to_a_target_configuration) point 3 I can change it in "Initialization script".

    But I don't have it in my case. (see attachment). Can you help me with it? Or just give me a link to right manual.

    Thank you

    Alex

  • Alex,

    I don't see the error message in the screenshot you sent, but I just thought about one additional detail: the board has some configuration switches that may prevent code from being loaded to it. Details are shown at the thread below:

    e2e.ti.com/.../1999672

    Hope this helps,
    Rafael