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.

How to put algorithm on L1P and L1D under Codec Engine enviroment?

Hi all,

In a naked DSP application , "#pragma DATA_SECTION , #pragma CODE_SECTION " , and CMD file is used for us to put out program on-chip.
But how our algorithm can be deposit on L1D,L1P,L2D,L2P,and on-chip shared ram , under CodecEngine or DSPBIOS application ?

There are totally 5 types of algorithm codec in out DSP server , one of which is expected to be run on L1PRAM and use L1DRAM.
And Codec Engine version is 1.2 , DSPBIOS version is bios_5_31_01

  • You can do the same for a DSP/BIOS application, so here is what you would do in your source file:

    #pragma CODE_SECTION (myfilter, " my_sect "); myfilter(…){ …. } 

    Please see item 6.8.1 of the document TMS320C6000 Optimizing Compiler v 6.1 User's Guide.

    After you do that in your source code, then you would have to add that section to the cmd file so the linker knows where to put it…. But you can not edit the cmd file that is generated by DSP/BIOS. At this point it is necessary to use a second cmd file. So just create a new source file. Save it as mycmd.cmd or another name. This file should tell the linker where to place you new section, for example.

    SECTIONS
    {
       my_sect        >  IRAM
    }
    

    After saving this file you should add this file to your project build.

    You can do similar for global variables with the DATA_SECTION Pragma. Please look at item 6.8.4 of the same document.