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.

application never makes it out of SWI_startup

I am currently using CCS v3.3 and DSP/BIOS v5.33.06 and having problems getting the application to run. The application executes the main function and then starts executing the bios initialization and startups. It gets as far as SWI_startup and halts. This inidicates a stack problem. I have set my stack (.stack) to 4096 bytes and my system stack to 2048 bytes in DARAM. I thought that would be enough bytes for each. I would appreciate any suggestion on how to solve this problem.

Thanks

Barry

 

  • Barry,

    With the given information, I would check if you allocate the stack and sysstack in the same memory block. Please allocate them in separate memory blocks.

    Regards,

    Peter Chung

  • Peter,

    I define the stack sizes in my DSP/BIOS and it (i assumed) allocates the memory for the stacks. I have included  part of my memory generated by the build of the application:

    output attributes/

    section page orgn(bytes) orgn(words) len(bytes) len(words) input sections

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

    .clk 0 [ 000000c0 ] 00000060 * 00000000 UNINITIALIZED

    .far 0 [ 000000c0 ] 00000060 * 00000000 UNINITIALIZED

    .dsm 0 [ 000000c0 ] 00000060 * 00000000 UNINITIALIZED

    .pwrmdb 0 [ 000000c0 ] 00000060 * 00000000 UNINITIALIZED

    .hst 0 [ 000000c0 ] 00000060 * 00000000 UNINITIALIZED

    .sysstack  0 [ 000000c0 ] 00000060 * 00002048 UNINITIALIZED

    .stack 0 [ 00004150 ] 000020a8 * 00004096 UNINITIALIZED

    How do I allocate the memory differently if I need to without interfering with the allocation made by the DSP/BIOS.

    Thanks

    Barry

     

  • Barry,

    It appears that stack and sysstack are allocated in different memory block. Can you tell me the DSP name that you are using? Also, are you running your code on EVM or your own board?

    Regards,

    Peter Chung

     

  • Peter

    I am using a DSP 5505. I created a new project with just 1 task in it. It appeared to have the same problem. I have been running on our target but by having only one task I will be able to run it on an EVM tomorrow. I will not need the SRAM I have on our target with just the one task. I will let you know the results.

     

    Thanks

    Barry

     

  • Peter

    I ran the new application on an EVM but it will still not run on our target. I guess we have a problem in out target interfacing to the emulator.

    Regards,

    Barry

     

  • Barry,

    If you could, please send me the code that you ran on the EVM. I will see if I can run the code on EVM here.

    Regards,

    Peter Chung

     

  • Peter

    The application did run on my EVM. If you still want me to send the code to you I will. Just tell me how you want me to send the code (email I guess) and what files you want.

     

    Regards,

    Barry

  • Barry,

    If it is the case, it won't help much. Instead, we have some CSL examples that use DSP/BIOS.

    You can download it from http://focus.ti.com/docs/toolsw/folders/print/sprc133.html. Please download the low power CSL. Once you install it, look at the example4 under usb folder. You should be able to compare the DSP/BIOS configuration of the example to yours.

    Please let me know how it goes.

    Regards,

    Peter Chung