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.

DM8168 debugging DSP

Hello

I write some code which I want to be executed on DSP.

I created a CCS project for C6000 compiler and would like to debug it. According to http://processors.wiki.ti.com/index.php/Connecting_to_DSP_on_C6A8168,_DM8168,_DM8148 I create a project for ARM, launch debug session, load GEL file, do Scripts->TI816X CPU BRINGUPS->C674x. From here I don't quite understand how to debug my project for C6000. I can load ".out" file to DSP, core TI XDS100v2 USB Emulator/C674X_0 turns into running state, but I don't see how to launch my program or use some debugging options (step by step, f.e.)

I use CCS 5.2.1, EVMDM8168 and XDS100v2 simulator.

Thanks in advance.

Sergey.

  • Hi Sergey,

    if you are in debug mode there should be all the buttons you need along the top.  Run, pause, stop, single stepping etc.

    Perhaps the best thing to recommend would be that you run through some of our training material/workshops.

    http://processors.wiki.ti.com/index.php/Category:CCS_Training

    This should help you get started.

    Best Regards,
    Lisa

  • Hi Lisa,

    Thanks for reply.

    When I load ".out" file on DSP, these buttons (resume, step into, step over etc) become unavailable. This file was compiled from CCS project for C6000 in debug mode. 

    Just in case here's console output:

    CortexA8: GEL Output: EVM816x Startup Sequence

    CortexA8: GEL Output: PRCM Setup Complete
    CortexA8: GEL Output: Configuring Pad Functions...
    CortexA8: Output: Main PLL Init is in Progress, Please wait .....
    CortexA8: Output: Main PLL Init is Done .....
    CortexA8: Output: EVM816x DDR PLL Init is in Progress for 796 MHz DDR Clock, Please wait .....
    CortexA8: Output: DDR3 Selected.
    CortexA8: Output: DM816x DDR PLL Init is Done .....
    CortexA8: Output: EVM816x DDR2/3 PRCM Init is in progress .....
    CortexA8: Output: EVM816x DDR2/3 PRCM Init is Done .....
    CortexA8: Output: Initializing EMIF1 .....
    CortexA8: Output: DDR3 SWLEVELING DONE FOR EMIF0
    CortexA8: Output: DDR3 SWLEVELING DONE FOR EMIF1
    CortexA8: Output: DM816x EMIF Init is Done @ 796MHz Clock Rate.....
    CortexA8: GEL Output: Startup Complete.

    CortexA8: GEL Output: GEL Reset
    CortexA8: Output: PRCM for C674x is in Progress, Please wait.....
    CortexA8: Output: C674x L2 RAM Accesses are FAILED
    CortexA8: Output: C674x L2 RAM Accesses are PASSED
    CortexA8: Output: User Can Connect to C674x
    C674X_0: GEL Output: EVM816x Startup Sequence

    C674X_0: GEL Output: PRCM Setup Complete
    C674X_0: GEL Output: Configuring Pad Functions...
    C674X_0: Output: Main PLL Init is in Progress, Please wait .....
    C674X_0: Output: Main PLL Init is Done .....
    C674X_0: Output: EVM816x DDR PLL Init is in Progress for 796 MHz DDR Clock, Please wait .....
    C674X_0: Output: DDR3 Selected.
    C674X_0: Output: DM816x DDR PLL Init is Done .....
    C674X_0: Output: EVM816x DDR2/3 PRCM Init is in progress .....
    C674X_0: Output: EVM816x DDR2/3 PRCM Init is Done .....
    C674X_0: Output: Initializing EMIF1 .....
    C674X_0: Output: DDR3 SWLEVELING DONE FOR EMIF0
    C674X_0: Output: DDR3 SWLEVELING DONE FOR EMIF1
    C674X_0: Output: DM816x EMIF Init is Done @ 796MHz Clock Rate.....
    C674X_0: GEL Output: Startup Complete.

    C674X_0: GEL Output: GEL Reset

    Sergey.

  • Hi Sergey,

    I see in your screen shot your are running.  Hit pause and the other buttons should no longer be greyed out.

    Best Regards,
    Lisa

  • Yes, they are, but I get "No source available for "0x1ba0e868" error and still can't invoke my code for debugging. 

    It looks like it doesn't enter into main() function and I need to do something else to launch program.

    Sergey.

  • Hi Sergey,

    I don't think you are necessarily doing anything wrong, but may need to point the debugger to the source.

    The message is saying that the debugger cannot find the source file for this function. It might be from the run-time support library, of whose sources files are normally not known to the debugger. You will usually see this when you break in any code from the run-time library ( like at the entry point of your application (c_int00) and the exit point or abort routines).

    Please keep us informed.

    Best Regards,
    Lisa

  • Hi Sergey,

    just thought I would check for any updates with your enquiry.

    Best Regards,
    Lisa

  • Hi Lisa,

    Eventually I am managed to debug my project via JTAG. I created project for C6000 and target configuration file for DM8168. Before debugging my project I run target configuration file in debug mode and wake up DSP core. Only after that I can succesfully debug my code for DSP.

    Thanks for help.

    Sergey. 

  • Hi Sergey,

    ok, glad to hear you are now debugging.  Thanks for the update and all the best with development.

    Best Regards,
    Lisa

  • Hi Sergey,

    I also have a problem like your problem,how should i wake up dsp core?
    I'm using ccs Version 6.0.1.00040.

    console Output:

    CortexA8: GEL Output: EVM816x Startup Sequence

    CortexA8: GEL Output: PRCM Setup Complete
    CortexA8: GEL Output: Configuring Pad Functions...
    CortexA8: Output: Main PLL Init is in Progress, Please wait .....
    CortexA8: Output: Main PLL Init is Done .....
    CortexA8: Output: EVM816x DDR PLL Init is in Progress for 796 MHz DDR Clock, Please wait .....
    CortexA8: Output: DDR3 Selected.
    CortexA8: Output: DM816x DDR PLL Init is Done .....
    CortexA8: Output: EVM816x DDR2/3 PRCM Init is in progress .....
    CortexA8: Output: EVM816x DDR2/3 PRCM Init is Done .....
    CortexA8: Output: Initializing EMIF1 .....
    CortexA8: Output: DDR3 SWLEVELING DONE FOR EMIF0
    CortexA8: Output: DDR3 SWLEVELING DONE FOR EMIF1
    CortexA8: Output: DM816x EMIF Init is Done @ 796MHz Clock Rate.....
    CortexA8: GEL Output: Startup Complete.

    CortexA8: GEL Output: GEL Reset
    CortexA8: Output: PRCM for C674x is in Progress, Please wait.....
    CortexA8: Output: C674x L2 RAM Accesses are FAILED
    CortexA8: Output: C674x L2 RAM Accesses are PASSED
    CortexA8: Output: User Can Connect to C674x
    C674X_0: GEL Output: EVM816x Startup Sequence

    C674X_0: GEL Output: PRCM Setup Complete
    C674X_0: GEL Output: Configuring Pad Functions...
    C674X_0: Output: Main PLL Init is in Progress, Please wait .....
    C674X_0: Output: Main PLL Init is Done .....
    C674X_0: Output: EVM816x DDR PLL Init is in Progress for 796 MHz DDR Clock, Please wait .....
    C674X_0: Output: DDR3 Selected.
    C674X_0: Output: DM816x DDR PLL Init is Done .....
    C674X_0: Output: EVM816x DDR2/3 PRCM Init is in progress .....
    C674X_0: Output: EVM816x DDR2/3 PRCM Init is Done .....
    C674X_0: Output: Initializing EMIF1 .....
    C674X_0: Output: DDR3 SWLEVELING DONE FOR EMIF0
    C674X_0: Output: DDR3 SWLEVELING DONE FOR EMIF1
    C674X_0: Output: DM816x EMIF Init is Done @ 796MHz Clock Rate.....
    C674X_0: GEL Output: Startup Complete.

    C674X_0: GEL Output: GEL Reset
    ////////////////////////////////////////////////////////////////////
    DSP core is SUSPENDED.
    When I load the program error is:

    C674X_0: File Loader: Data verification failed at address 0x00800800 Please verify target memory and memory map.
    C674X_0: GEL: File: D:\DSP Project\CCS V6\DSSP\Debug\DSSP.out: a data verification error occurred, file load failed.

    how should i fix it?

    Thanks in advance.

    Mohammad.