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.

DSP/BIOS unknown task

Hi All : 

I meet a problem about the task. 

I create a task through TSK_create(). 

But the task state become to unknown state after calling the MBX_pend() 

Can someone help me analyze this issue??


DPS/BIOS version : 5.33.06
CGT version : 4.3.6

CCS version : CCS 3.3
DSP board : C5535EZDSP 

  • I'm thinking you may have overrun the TSK stack.

    What size stack have you given the TSK?

    What is your TSK function doing prior to calling MBX_pend()?

    Can you share the code for your TSK_create() call?

    Alan

  • Dear Alan : 

    Thanks for your reply.

    I've check my stack, it had overruned. But the app run standalong working fine.

    I'm doing app switching, two app would runtime switch.

    But the map file have something strange, the rts data is different with the first app. 

    But I don't copy the DSP/BIOS to RAM again. 

    Does it is the root cause??

    The different part is below.


    rts_lib_data
    * 0 [ 00008ea0 ] 00004750 * 00000418
    [ 00008ea0 ] 00004750 * 00000101 rts55x.lib : ctype.obj (.const:__ctypes_)
    [ 000090a2 ] 00004851 * 00000001 --HOLE-- [fill = 0]
    [ 000090a4 ] 00004852 * 00000024 : _printfi.obj (.const:.string)
    [ 000090ec ] 00004876 * 0000000c : _printfi.obj (.const)
    [ 00009104 ] 00004882 * 0000000c : ecvt.obj (.const)
    [ 0000911c ] 0000488e * 00000008 : divd.obj (.const:_initial_approx$1)
    [ 0000912c ] 00004896 * 00000002 : fputs.obj (.const:.string)
    [ 00009130 ] 00004898 * 00000002 : divd.obj (.const)
    [ 00009134 ] 0000489a * 00000002 : fltlid.obj (.const)
    [ 00009138 ] 0000489c * 00000002 : fltuld.obj (.const)
    [ 0000913c ] 0000489e * 00000119 : defs.obj (.bss) [fill = 0]
    [ 0000936e ] 000049b7 * 000000d0 : trgdrv.obj (.bss) [fill = 0]
    [ 0000950e ] 00004a87 * 00000001 : errno.obj (.bss) [fill = 0]
    [ 00009510 ] 00004a88 * 00000071 : lowlev.obj (.bss) [fill = 0]
    [ 000095f2 ] 00004af9 * 00000064 : ecvt.obj (.bss) [fill = 0]
    [ 000096ba ] 00004b5d * 00000001 : fopen.obj (.bss) [fill = 0]
    [ 000096bc ] 00004b5e * 00000004 : _lock.obj (.bss) [fill = 0]
    [ 000096c4 ] 00004b62 * 00000004 : exit.obj (.bss) [fill = 0]
    [ 000096cc ] 00004b66 * 00000002 : rand.obj (.bss) [fill = 0]


    rts_lib_data
    * 0 [ 00008ea0 ] 00004750 * 00000085
    [ 00008ea0 ] 00004750 * 0000000c rts55x.lib : ecvt.obj (.const)
    [ 00008eb8 ] 0000475c * 00000008 : divd.obj (.const:_initial_approx$1)
    [ 00008ec8 ] 00004764 * 00000002 : divd.obj (.const)
    [ 00008ecc ] 00004766 * 00000002 : fltlid.obj (.const)
    [ 00008ed0 ] 00004768 * 00000002 : fltuld.obj (.const)
    [ 00008ed4 ] 0000476a * 00000064 : ecvt.obj (.bss) [fill = 0]
    [ 00008f9c ] 000047ce * 00000004 : _lock.obj (.bss) [fill = 0]
    [ 00008fa4 ] 000047d2 * 00000002 : rand.obj (.bss) [fill = 0]
    [ 00008fa8 ] 000047d4 * 00000001 : errno.obj (.bss) [fill = 0]

  • I've solved the issue. 

    Thanks your support.

    The root cause is the difference of DSP/BIOS between two ap.