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.

C6713 Linker generated copy tables different CCS3.3 vs. CCS5.5



All:

In moving from CCS 3.3 to CCS5.5, it appears that the .hwi_vecs generated by DSP/BIOS are not being transferred from flash (where they are asked to reside) to internal RAM (where they need to run).

Do I need to add lines to the user linker command file to do the transfer?

We have several other copies being done, .text, .switch, .rts

In the past, (3.3) .hwi_vec was copied by including the bios-generated cmd file into the user.cmd file, but CCS 5.5 complains about doubly defined memory blocks, so it was excluded.

When I tried to create a second .cmd file with only the SECTIONS portion of the bios-generated cmd file, that did not do the copies.

So, how do I copy .hwi_vec from flash storage to internal RAM in a CCS 5.5 environment?

background: CCS5.5

                     C6713

                      external Flash at location 0x8000000.

 

  • Some further discussion on this - with CCS3.3, because the bios-generated linker command file is part of the user command file, here is the list of copy tables:

    LINKER GENERATED COPY TABLES


    binit @ 9031a378 records: 8, size/record: 12, table size: 100

    .text2: copy 118592 bytes from load addr=902d8000 to run addr=00000400

    .text4: copy 115936 bytes from load addr=902f4f40 to run addr=80000000

    .rts: copy 7072 bytes from load addr=90311420 to run addr=0002e060

    .text: copy 7392 bytes from load addr=90312fc0 to run addr=8001c4e0

    .switch: copy 300 bytes from load addr=9031a1a0 to run addr=0002fe00

     

    .data: copy 92 bytes from load addr=9031a2d0 to run addr=0002ff30

    .trcdata: copy 12 bytes from load addr=9031a32c to run addr=8001ed94

    .hwi_vec: copy 512 bytes from load addr=9031a400 to run addr=0002fc00

     

    With CCS5.5, because the bios-generated linker command file cannot be included into the user command file, here is the list of copy tables. Missing from the list below are .data, .trcdata, and hwi_vec - how do I get these added to the list on CCS 5.5?

    LINKER GENERATED COPY TABLES

     

    binit @ 903176dc records: 5, size/record: 12, table size: 64

    .text2: copy 109376 bytes from load addr=902d8000 to run addr=00000400

    .text4: copy 103264 bytes from load addr=902f2b40 to run addr=80000000

    .rts: copy 5760 bytes from load addr=9030bea0 to run addr=0002bcc0

    .text: copy 14176 bytes from load addr=9030d520 to run addr=80019360

    .switch: copy 288 bytes from load addr=90316300 to run addr=0002d540

     

    Thanks for any help!!

  • I found a way to fix the problem - by importing from CCS 3.3, I was able to get a basic project with errors that needed correcting. The biggest correction was to go into the linked bios file and comment out only the MEMORY and associated defines. I have then been able to get a project with no errors and 165 warnings...but it did give me a hex file that I could load into our target system and see a successful outcome.

  • Questions still remain - not getting proper placement of sections.

    When using CCS5 and DSP/BIOS, if .hwi_vecs are placed in Flash, and then loaded into RAM by a bootloader, how do you flag them?

    Under CCS3, the Bios-generated .cmd file could be linked in with user.cmd file - not so on CCS 5.

  • Hi Todd,

    What version of DSP/BIOS are you using?

    Todd

  • All:

    It appears that the problem is being able to load and run "applyTableBinitCmdFile.tci" from the DSP/BIOS .tcf file - this is located at the end of our .tcf file in an area called //!GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!

    Under CCS3.3, the .tcf would first import the file using

      utils.importFile( "applyTableBinitCmdFile.tci" );

    It would then add Binit information to the BIOS-generated .cmd file by using

      ti_tcapps_utils.applyTableBinitCmdFile (prog.name + ”cfg.cmd”,

                                                                      prog.name + ”cfg.cmd”,

                                                                      ”, table(BINIT)” );

     

    Can this same .tci file be run from CCS5.5? I have tried to see if the scripting environment could be used to set up the same .tci file.

    If the scripting environment can be used, how is that set up at the end of the .tcf file?

     

  • All:

    On CCS3.3, what is the mechanism used for ti_tcapps_utils? and utils.importFile?

    I could not find either of them in the CCS3.3 install directory, but on CCS3.3, it does appear to work. I was hoping to at least set the environment so that when it is tried to be invoked in CCS5.5, I would be able to process the command file to get a BINIT added to the Bios-generated linker command file.