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.

problem converting dynamic TSK and MBX allocation to static for viewing in debugger

I want to view task timing in CCS3.3, but our app creates tasks and mailboxes dynamically, so I'm re-defining the tasks and mailboxes statically in the Configuration Editor (and commenting out the dynamic allocations). I can build the app successfully, and I see all the task names in the Execution Graph in the CCS debugger.

However, when I load the app to the target and choose "Go Main", the execution never gets to main(). If I Halt, I see this event in the log:

0 SYS_error called: error_id = 0x1

This is a memory allocation error, but how do I figure out which allocation failed? 

  • Curtis,

    This is probably a stack or heap size error. Try increasing each of those to see if it improves the situation.

    Regards,
    RandyP

  • RandyP,

    Yes, I discovered the problem with with heap and stack sizes when I opened the Kernel/Object View and ran to MEM_init(). However, when I increase the heap size in ISRAM beyond 0x10000 in the Configuration Tool, and run again, the Kernel/Object View still shows the heap size at 0x10000. I tried manually editing the .tcf file, but I got the same result.

    Thanks,

    Curtis

  • Curtis,

    A moderator moved your thread from the C64x Single Core Forum to the TI-RTOS Forum where you can more easily get good answers on BIOS questions. You may want to state which version of CCS and BIOS you are using, if you want to pursue this.

    Look in the .map file to see how big the .sysmem allocation is.

    Is 64KB large enough for your program to work correctly?

    Regards,
    RandyP

  • RandyP,

    I'm using CCS 3.3.38.2, BIOS 5.31.02.

    There is no .sysmem segment in the .map file. The program is much larger than 64KB.

    A summary of the problems I'm having:

    1. The Configuration Editor doesn't cleanly edit the .tcf file. It just adds new settings, but doesn't erase the old ones, so I don't always get my latest changes.

    2. When does the Config editor actually change the linker .cmd files? Which takes precedence in the link, .cmd or .tcf, or does it depend on link order?

    3. My hardware has SDRAM on the PCI bus, at address 0x80010000. Some segments and data seems to cause problems when moved into this segment from ISRAM. Is this problem caused by the debugger, or are there addressing limitations? Sorry if this is a newb questions.

    Thanks,

    Curtis