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.

bios configuration DM6467



Hi,everyone

    I want to know whether  I can use the DVSDK tools to configurate the memory of DSP in making servers.

    In DM6467, I make servers to congfigurate the DSP's cmd file. 

    I want to put the array into L2_SDRAM.

    I want to accelerate  handling speed.

   Thank you!

  • Hi Feng,

    You can use the #pragma DATA_SECTION directive to define a data section for your array in your code (refer to documentation on the TI code generation tools if you don't know about this) and then modify the link.cmd file in your DSP server package to put the array into the memory section you want (again the linker documentation has details on the linker command file syntax).

    You may also want to check out this wiki topic on memory configuration: http://processors.wiki.ti.com/index.php/Changing_the_DVEVM_memory_map

    Best regards,

    Vincent

     

  •  Vincent  thank you for your help!

     I have try it. But I can't make sure I have put the arry into L2_SDRAM.

    Can you show me how I can verify I have successfully added it?

    I want to make DSP sever packages.

    Shall I configurat the .tcf or .cfg files?

    How I can do it?

    I want you can show me the adding process.

     

    ------------------------------------------------------------------------------

    main.c

    ---------------------------------------------------------------------------------

    #pragma DATA_SECTION (buff,".mem1")

    static char buff[0x4000];

    ---------------------------------------------------------------------------------

    link.cmd

    --------------------------------------------------------------------------------

    memory

    {

    mem1: origin =0x00818000       length=0x4000

    }

    SECTIONS

    {

    .MEM1:     >   mem1

    }

     

  • Not sure if it makes a difference, but try to be consistent with your casing. To be clear, replace .mem1 with MYDATA as follows:

    #pragma DATA_SECTION (buff,"MYDATA")

    MYDATA > mem1

    To make sure you have your desired memory placement, verify it in the .map file produced by the compiler/linker. It is located in your server's directory under \package\cfg\<server_name>.map

    Besides what you have already done, you may have to modify your DSP/BIOS cache configuration in the .tcf file to ensure L2 memory is configured as RAM, if it isn't already so. Suggest you read up on C64PLUSL2CFG from the GBL module in your DSP/BIOS API guide for more details.

    Best regards,

    Vincent

  • Hi, Vincent:

       I have try to relace .mem1 with MYDATA. Then I make sure that I can't find the .map file located in my server's directory under \package\cfg\<server_name>.map. The cfg folder is empty. However my codec server can work normally, I have doubt in configurating the arry into L2 memory .I have posted  another subject about L1 and L2 .Sid suggested me that I can't directly use the cache with the address 0x0081 8000 to 0x0083 7FFF (128k L2 RAM/Cache) . The  RAM should be visited by EDMA,not by code.  (http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/99/p/53097/188671.aspx#188671).

     Can you give me more advise? Thank you!

     Hope for your letter

    Feng

  • Hi Feng,

    How are you compiling your DSP server image? My assumption was you compiled it using the XDCTOOLS after creating the server using a tool like the Server package wizard: http://processors.wiki.ti.com/index.php/RTSC_Codec_And_Server_Package_Wizards. If you follow the instructions, and rebuild the server package, the cfg folder should be populated. The .map file is key to verifying the actual memory map you are using. So if you are not finding it anywhere in your server's directory, I'd suggest maybe trying out the wizard while pointing it to your existing codec package, put back in the changes you had in your linker command file and then rebuild the server. You should then be able to find the .map file .

    Best regards,

    Vincent