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.

Asynchronous load option of 'loadti' DSS example doesn't seem to work correctly with xds100v2

Other Parts Discussed in Thread: CCSTUDIO

I am using loadti (DSS example) to load and run a program on a 'DM6437 with the asynchronous load option. When I use this with an xds510 emulator the target loads and runs as expected. However, when I do the same thing with an xds100v2 the target connects and loads, but doesn't run. As soon as I remove the xds100v2 from the JTAG pins on the board, the target runs as expexted. It seems as though the xds100 is keeping the target halted.

I'm using DSS from CCSv4.1.0.02006, and the following command line: 

loadti -c mytarget.ccxml -a myprogram.out

Is this expexted behavior?

-Ruben

  • I would expect the asynch load be supported on both. I tried out loadti with both my XDS510 USB and XDS100v2 and in both cases the asynch run option was respected. I did not try on a DM6437 however. I'll see if I can secure one.

  • I tried this out with a DM6437 EVM using an XDS100v2. The asynch run with loadti seems to work fine for me. Could you attach the application you are using where you see the issue?

    Thanks

    ki

  • Ki,

    Thanks for staying on this one. I have attached the test project (CCS3.3 project) of the executable I used to test this. You can see the .out file in the /Debug subdirectory.

    Ruben

    Ki-Soo Lee said:

    I tried this out with a DM6437 EVM using an XDS100v2. The asynch run with loadti seems to work fine for me. Could you attach the application you are using where you see the issue?

    MO_LEDBLINK.zip
  • Ruben,

    I can't seem to reproduce this. This is my output with the asynch option:

    ---------------

    > loadti -a -c xds100_dm6437.ccxml  -o MO_LEDBLINK.out

    ***** DSS Generic Loader *****

    START: 12:25:08 GMT-0500 (EST)

    Configuring Debug Server for specified target...
    Done
    Loading repository "C:\TI\CCS_4.1.0.02006\ccsv4\common\targetdb\"
    Loading file "C:\loadtitest\MO_LEDBLINK\Debug\.xds100_dm6437.ccxml.cache2"
    C:\Documents and Settings\a0389327\user\CCSTargetConfigurations\.omapl38_xds100v2.ccxml.cache2  [811 elements,  0.25s]
    C:\Documents and Settings\a0389327\user\CCSTargetConfigurations\.tci6488_evm_sd510usb.ccxml.cache2  [2347 elements,  0.563s]
    Parsed 3158 XML element(s), from 2 file(s), in 0.813 seconds
    TARGET: Texas Instruments XDS100v2 USB Emulator_0
    Connecting to target...
    testEnv.outFiles: MO_LEDBLINK.out
    Loading MO_LEDBLINK.out
    Done
    Target running...

    END: 12:25:17 GMT-0500 (EST)

    ---------------

    Without the -a option, I get the "Interrupt to abort . . ."  message after "Target running..." and I don't get the end timestamp. But I assume you are seeing that regardless of the -a option.

    I'm not sure what else could be the cause. Maybe you can try to see if you can do an asynch run from CCS (you can try the "run" command from the scripting console to do that). If that also fails, then there is something bigger going wrong.

    ki

  • Ruben,

    I re-read your original post and I see that it is not an asynch run that is the issue but an asynch load. Sorry for the misunderstanding. Regardless, everything works fine for me.

    Could you generate a verbose DSS log and attach it here? Use the -x option.

    Thanks

    ki

  • Ki,

    I get the same output with the async option, but the code doesn't run until I remove the emulator. You can test the program execution by checking GP[92], GP[93], or GP[94] pins with an oscilloscope. These pins are connected to LEDs on the customer H/W but they are also accessible on the EVM connector DC_P1, pins 72, 77, and 75. When I load this program with loadti async option and xds100v2 I get the same output as you but the pins don't start toggling until I pull off the emulator.

    Altenatively, you could modify and rebuild the project in CCS3.3 to blink the LED on the EVM.

    Ruben

    Ki-Soo Lee said:
    Ruben,

    I can't seem to reproduce this. This is my output with the asynch option:

    ---------------

  • Does everything work ok when running manually via CCS?

  • I modified the led example to continuously for the DM6437 EVM and tried it out. No problems with loadti using XDS100v2 as the leds are blinking as expected. I will pull in some emulation folks for more ideas.

    ki

  • Ki,

    Nothing that I can think of that would cause this, especially since you aren't able to reproduce. Are you using the same version of CCS that Ruben is?

    Ruben,

    Any chance you have access to another XDS100v2?  Or another EVM?  Just curious about the differences between your environment and Ki's.

     

  • I'm using the same version of CCS as Ruben. I tried out an XDS100v2 and an XDS100v1. I didn't the same exact app though. I don't have easy access to a scope.

  • Dan, I tried this on two EVMs with the same results but unfortunately I only have the one xds100v2. Can you loan me a different one to retry this test?

    -Ruben

    danr said:

    Ruben,

    Any chance you have access to another XDS100v2?  Or another EVM?  Just curious about the differences between your environment and Ki's.

  • Ki/Dan,

    The customer purchased several more xds100v2 emulators (part# BH-USB-100V2) and they all exhibit the same behavior. The program is properly loaded but it does not execute until we physically disconnect the emulator from the board. This is the command line that we're using for this:

    loadti -r -a -c xds100v2.ccxml -x logfile "IVS_DSP.out"

    What could be causing this?

    -Ruben

    danr said:

    Ki,

    Nothing that I can think of that would cause this, especially since you aren't able to reproduce. Are you using the same version of CCS that Ruben is?

    Ruben,

    Any chance you have access to another XDS100v2?  Or another EVM?  Just curious about the differences between your environment and Ki's.

     

  • Here is the logfile produced by the -x option.

    Ruben

    Ruben Perez said:

    Dan, I tried this on two EVMs with the same results but unfortunately I only have the one xds100v2. Can you loan me a different one to retry this test?

    -Ruben

  • Ruben Perez said:
    The customer purchased several more xds100v2 emulators (part# BH-USB-100V2) and they all exhibit the same behavior.

    I wonder if it is emulator specific. The only XDS100v2 I have is from Spectrum Digital. That works ok. I have a Blackhawk XDS100v1 which works fine. I'll see if I can hunt down a BH XDS100v2. 

    Dan, do you have one that you can try?

    Thanks

    ki

  • I asked Andrew to test on his system over at Blackhawk:

     

    Stephen,

     

    I am responding to your email on:

    Asynchronous load option of 'loadti' DSS example doesn't seem to work correctly with xds100v2

    but did not include the lengthy message content.

     

    We tested our products (XDS510, XDS560, XDS100v2) on a C6455 DSK and DM6437 EVM.  DM6437 log output using the USB100v2 is below (with and without -a option).  CCXML and LED.OUT files are attached.

     

    The OUT file loaded and ran in each case.  We'd be glad to try the MO_LEDBLINK.out  file if you want to send it to us.

     

    Andrew

     


     

    C:\Program Files\Texas Instruments\ccsv4\scripting\examples\loadti>loadti -r -a
    -c="C:\Documents and Settings\root\Desktop\USB100v2_C6437EVM.ccxml" C:\CCStudio_
    v3.3\boards\evmdm6437_v2\tests\led\Debug\led.out
     
    ***** DSS Generic Loader *****
     
    START: 16:30:25 GMT-0400 (EDT)
     
    Configuring Debug Server for specified target...
    Done
    TARGET: Texas Instruments XDS100v2 USB Emulator_0
    Connecting to target...
    C64XP_0: GEL Output:  EVMDM6437 Startup Sequence
     
    C64XP_0: GEL Output: Setup Cache
     
    C64XP_0: GEL Output: (L1P = 32K) +
     
    C64XP_0: GEL Output: (L1D = 32K) +
     
    C64XP_0: GEL Output: (L2 = ALL SRAM)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup PinMux...
     
    C64XP_0: GEL Output: (Normal operation)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup Power Modules (All on)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup PLL1
     
    C64XP_0: GEL Output: (DSP = 594 MHz +
     
    C64XP_0: GEL Output: SYSCLK2 = 198 MHz +
     
    C64XP_0: GEL Output: SYSCLK3 = 99 MHz +
     
    C64XP_0: GEL Output: Onchip Oscillator)...
     
    C64XP_0: GEL Output: [Already Set]
     
    C64XP_0: GEL Output: Setup PLL2
     
    C64XP_0: GEL Output: (VPSS = 54 MHz +
     
    C64XP_0: GEL Output: DDR2 Phy = 162 MHz +
     
    C64XP_0: GEL Output: Onchip Oscillator)...
     
    C64XP_0: GEL Output: [Already Set]
     
    C64XP_0: GEL Output: Setup DDR2 (162 MHz + 32-bit bus)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup EMIF CS2 - NOR Flash (8-bit bus)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output:  Startup Complete.
     
    Resetting target...
    testEnv.outFiles: C:\CCStudio_v3.3\boards\evmdm6437_v2\tests\led\Debug\led.out
    Loading C:\CCStudio_v3.3\boards\evmdm6437_v2\tests\led\Debug\led.out
    C64XP_0: GEL Output: Disable VPSS
     
    C64XP_0: GEL Output: Clear L2 Cache in DDR Range
     
    C64XP_0: GEL Output: Setup Cache
     
    C64XP_0: GEL Output: (L1P = 32K) +
     
    C64XP_0: GEL Output: (L1D = 32K) +
     
    C64XP_0: GEL Output: (L2 = ALL SRAM)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Disable EDMA events
     
    C64XP_0: GEL Output: Setup DDR2 (162 MHz + 32-bit bus)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output:
     
    Done
    Target running...
    C64XP_0: GEL Output: Clear L2 Cache in DDR Range
     
    C64XP_0: GEL Output: Setup Cache
     
    C64XP_0: GEL Output: (L1P = 32K) +
     
    C64XP_0: GEL Output: (L1D = 32K) +
     
    C64XP_0: GEL Output: (L2 = ALL SRAM)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Disable EDMA events
     
    C64XP_0: GEL Output:
     

     

    END: 16:30:40 GMT-0400 (EDT)
     
    C:\Program Files\Texas Instruments\ccsv4\scripting\examples\loadti>


     

    C:\Program Files\Texas Instruments\ccsv4\scripting\examples\loadti>loadti -c="C:
    \Documents and Settings\root\Desktop\USB100v2_C6437EVM.ccxml" C:\CCStudio_v3.3\b
    oards\evmdm6437_v2\tests\led\Debug\led.out
     
    ***** DSS Generic Loader *****
     
    START: 15:42:33 GMT-0400 (EDT)
     
    Configuring Debug Server for specified target...
    Done
    TARGET: Texas Instruments XDS100v2 USB Emulator_0
    Connecting to target...
    C64XP_0: GEL Output:  EVMDM6437 Startup Sequence
     
    C64XP_0: GEL Output: Setup Cache
     
    C64XP_0: GEL Output: (L1P = 32K) +
     
    C64XP_0: GEL Output: (L1D = 32K) +
     
    C64XP_0: GEL Output: (L2 = ALL SRAM)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup PinMux...
     
    C64XP_0: GEL Output: (Normal operation)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup Power Modules (All on)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup PLL1
     
    C64XP_0: GEL Output: (DSP = 594 MHz +
     
    C64XP_0: GEL Output: SYSCLK2 = 198 MHz +
     
    C64XP_0: GEL Output: SYSCLK3 = 99 MHz +
     
    C64XP_0: GEL Output: Onchip Oscillator)...
     
    C64XP_0: GEL Output: [Already Set]
     
    C64XP_0: GEL Output: Setup PLL2
     
    C64XP_0: GEL Output: (VPSS = 54 MHz +
     
    C64XP_0: GEL Output: DDR2 Phy = 162 MHz +
     
    C64XP_0: GEL Output: Onchip Oscillator)...
     
    C64XP_0: GEL Output: [Already Set]
     
    C64XP_0: GEL Output: Setup DDR2 (162 MHz + 32-bit bus)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Setup EMIF CS2 - NOR Flash (8-bit bus)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output:  Startup Complete.
     
    testEnv.outFiles: C:\CCStudio_v3.3\boards\evmdm6437_v2\tests\led\Debug\led.out
    Loading C:\CCStudio_v3.3\boards\evmdm6437_v2\tests\led\Debug\led.out
    C64XP_0: GEL Output: Disable VPSS
     
    C64XP_0: GEL Output: Clear L2 Cache in DDR Range
     
    C64XP_0: GEL Output: Setup Cache
     
    C64XP_0: GEL Output: (L1P = 32K) +
     
    C64XP_0: GEL Output: (L1D = 32K) +
     
    C64XP_0: GEL Output: (L2 = ALL SRAM)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Disable EDMA events
     
    C64XP_0: GEL Output: Setup DDR2 (162 MHz + 32-bit bus)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output:
     
    C64XP_0: GEL Output: Clear L2 Cache in DDR Range
     
    Done
    Target running...
    Interrupt to abort . . .
    C64XP_0: GEL Output: Setup Cache
     
    C64XP_0: GEL Output: (L1P = 32K) +
     
    C64XP_0: GEL Output: (L1D = 32K) +
     
    C64XP_0: GEL Output: (L2 = ALL SRAM)...
     
    C64XP_0: GEL Output: [Done]
     
    C64XP_0: GEL Output: Disable EDMA events
     
    C64XP_0: GEL Output:
     
    01  Testing LEDs...
        PASS
     
    ***ALL Tests Passed***
    NORMAL COMPLETION: 140464 cycles
     
    END: 15:42:52 GMT-0400 (EDT)
     
    C:\Program Files\Texas Instruments\ccsv4\scripting\examples\loadti>