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.

Multiple Task problem - Custom Target board, dm6437 - 16bit bus width

Hi,

When I create more than two tasks on a custom board based upon TI DM6437, I'am not able to execute three of them in parallel ! only two tasks works ar a time. I have tried almost everything (TSK_sleep, Semaphores, etc) it dint help.

For the information, when I use the TI Evaluation board (DM6437, 32 bit bus width ddr2) and create an application using NDK and add more than two tasks for doing different things, it works perfectly fine !!!

Please note that my custom target board has 64MB memory and I have set the GEL file correctly for setting bus width of ddr2 to 16bit. My algorithms are using around 50MB memory, Please let me know what can be different causes for this issue ?

Regards,

Vivek

 

 

  • The main reason I could see the third task running is if the first two tasks never block and happen to be higher priority, it may be worth taking a look at the BIOS execution graph to see what is running when to get a better idea of how this is breaking down. For example, if you never hit your third task, do you ever hit the idle task? If you limit the processing in your first two tasks so that they are sure to block than do you see the third task get started?

    In general your DDR2 bus width should not impact your ability to have many TSKs aside from performance, which could cause higher loading tasks to take longer and not complete as quickly. From an available memory perspective you should be fine as long as you can still allocate from the heap and the stack has not overflowed which would lead to either memory allocation error messages or a crash.