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.

SYS/BIOS based application is not booting from flash

Other Parts Discussed in Thread: TMS320C6748, SYSBIOS

Hello

I work with the TMS320C6748 DSP Platform, Code Composer Studio v5, SYS/BIOS 6.34.2.18, XDCTools version 3.24.5.48, with a custom HW

I have the following problem:

My SYS/BIOS based application which is flashed as AIS image to the NOR flash is not running.

When I load it using ICE it runs well.

Using the same burning process and ais configuration file I previously succeeded to run a non SYS/BIOS application.

I can also see, that when I load another application, when the SYS/BIOS application is burned, the loaded application, does run but doesn't receive any of the interrupts.

So it might be the same problem with the burned image...

Is there any special preparations for the SYS/BIOS based application to be made in order to boot from flash ?

I thought of adding the boot module to my application(using the XGCONF GUI) , but it cannot be done, for some reason (maybe not supported on my device)

Do you have any suggestions ?

Thank you in advance,

Alla

  • Hi Alla,

    Do you have a bootloader that copies the BIOS image from the Flash to the RAM and then jumps to the entry point ? Basically are you trying to run BIOS from Flash or RAM ?

    all pog said:

    I thought of adding the boot module to my application(using the XGCONF GUI) , but it cannot be done, for some reason (maybe not supported on my device)

    You are right. SYS/BIOS does not provide a boot module for C6748.

    Best,

    Ashish

  • Hi ,

    10x for the quick replay.

    We are using an AIS image which is prograamed with JTAG programmer into the flash.

    we do not use any bootloader , the AIS envelope and the microcode inside the dsp does it automaticaly ( as I wrote it works with another NON-SYS/BOIS application).

    By the way all the code and data of the application is mapped to the internal memories (all to the L2 none cached , and the stack to the L3 (the internal shared memory) so no issuies to external memory should happen.

     

    Thanks ,

    Alla.

  • Hi Alla,

    When the device boot fails, can please run the debug GEL file provided here and report back the log that you see. Note that  the device initialization is done by the AIS image so remove the device initialization GEL file before connecting to the DSP.

    The debug GEL file will provide the error code, Value of Program counter that can help us debug the issue.

    Other precautions that you can check for is that the bootloader uses L1D and L1P as full cache so no part of the initialization code should be placed in that space. Also check your application map file. We have noticed in the past that sometime the linker places some of the SYSBIOS code in external memory when it doesn`t find the appropriate section definition so look at the map file to ensure all of your application is in L2 and L3.

    Regards,

    Rahul

    PS: Since you were able to boot non-OS code, I am assuming that the you are writing the boot image at the address 0x6000004 and that the NOR flash is connected to CS2 of EMIFA.

  • Hi Rahul,

    Thank you for your help!

    We used the GEL file to see the Device Information for different images (SYS/BIOS  image vs. NON SYS/BIOS image) and saw that in the SYS/BIOS image  the PLL and PSC registers were not initialized properly.

    We configured those registers using the AISgen application and now the burned image is loaded and running!

    (Note that we did not need those configurations for the NON SYS/BIOS image, since it was configured in the code)

    Thanks again for your help !

    Alla