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.

CCSv3.1 Vs. CCSv4.x

Other Parts Discussed in Thread: TMS320C6416

I am a fresher to DSP.Last month I bought the C6713DSK for DSP study. At the very begining,I followmet the example step to step to be familiar with the CCS.Everything seems to be in the good condition, a problen arose until  the CCS updated to V4.X, as the vision of CCS with DSK is v3.1, but it goes withou a service code, that means the CCS would not work any more in the next 15 days.I worked on some examples, It worked well with CCSv3.1, but did n't work with CCSv4.x.For example, one project  comes from R.Chassaing's book, Digital Signal Processing and Applications with the TMS320C6713 and TMS320C6416 DSK. It generates a sinusoidal analog output waveform using a table-lookup method. It worked out right result under CCSv3.1, under CCSv4.2 the follow errors and warnings are given:

'Building file: ../sineLED.c'
'Invoking: Compiler'
"F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/bin/cl6x" -mv6700 -g --define=CHIP_6713 --include_path="F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/include" --include_path="F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/dsk6713/include" --include_path="F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/C6xCSL/include" --diag_warning=225 --mem_model:data=far --preproc_with_compile --preproc_dependency="sineLED.pp" --cmd_file="./configPkg/compiler.opt" "../sineLED.c"
"../sineLED.c", line 16: warning: function declared implicitly
"../sineLED.c", line 17: warning: function declared implicitly
"../sineLED.c", line 18: warning: function declared implicitly
"../sineLED.c", line 21: warning: function declared implicitly
"../sineLED.c", line 23: warning: function declared implicitly
"../sineLED.c", line 24: warning: function declared implicitly
"../sineLED.c", line 27: warning: function declared implicitly
"../sineLED.c", line 30: warning: last line of file ends without a newline
'Finished building: ../sineLED.c'

'Building target: sineLED.out'

'Invoking: Linker'
"F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/bin/cl6x" -mv6700 -g --define=CHIP_6713 --diag_warning=225 --mem_model:data=far -z -m"sineLED.map" --stack_size=0x1000 --warn_sections -i"F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/lib" -i"F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/include" -i"F:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/dsk6713/include" -i"F:/Program Files (x86)/Texas Instruments/ccsv4/MyProjects/Support" --reread_libs --rom_model -o "sineLED.out" -l"./configPkg/linker.cmd" "./sineLED.obj" "./c6713dskinit.obj" "./Vectors_poll.obj" -l"libc.a" -l"F:\Program Files (x86)\Texas Instruments\ccsv4\tools\compiler\C6000 Code Generation Tools 7.0.4\lib\rts6700.lib" -l"F:\Program Files (x86)\Texas Instruments\ccsv4\tools\compiler\C6000 Code Generation Tools 7.0.4\C6xCSL\lib_2x\csl6713.lib" -l"F:\Program Files (x86)\Texas Instruments\ccsv4\tools\compiler\C6000 Code Generation Tools 7.0.4\dsk6713\lib\dsk6713bsl.lib" "../dsk6713.cmd"
<Linking>
"../dsk6713.cmd", line 5: error: IVECS memory range overlaps existing memory
range IRAM
"../dsk6713.cmd", line 6: error: IRAM memory range has already been specified
"../dsk6713.cmd", line 6: error: IRAM memory range overlaps existing memory
range IRAM
"../dsk6713.cmd", line 7: error: SDRAM memory range has already been specified
"../dsk6713.cmd", line 7: error: SDRAM memory range overlaps existing memory
range SDRAM
error: errors encountered during linking; "sineLED.out" not built

>> Compilation failure
gmake: *** [sineLED.out] Error 1
gmake: Target `all' not remade because of errors.
Build complete for project sineLED

I have read some books about  CCSv4.x, unfortunately, I picked up the basic operation, the phylosophy of the soft is still unknow, the v4.x is very different from v3.x, Could anybody tell me how to cope with them.

 

  • The compiler warnings "function declared implicitly" means that you have functions in your code that do not have a prototype. This can lead to problems at runtime because the compiler will make assumptions about the values that are being passed/returned from these functions. My guess is that the project options in CCS 3.1 did not include the option to warn about missing function prototypes. In CCSv4, this warning is enabled by default (via compiler option --diag_warning=225), which is a good thing because it makes the programmer aware that they have missing prototypes.

    For the linker error, it seems that dsk6713.cmd is redefnining some memory regions that have already been defined. I see two linker command file listed in the command line: -l"./configPkg/linker.cmd" and "../dsk6713.cmd"

    Please check both these linker command files to see if they both need to be linked in, and if they do, that they do not contain overlapping memory region specifications.

    This wiki page contains a lot of good overview material on CCSv4: http://processors.wiki.ti.com/index.php/Code_Composer_Studio_v4
    I would suggest starting with the material in the Getting Started Guide: http://processors.wiki.ti.com/index.php/CCSv4_Getting_Started_Guide

     

  • Functions prototypes is surely a good thing, in the project, it is missed, I will repair it.

    I have doubted that 2 linker files exist, but It seems that the file linker.cmd is the default linker, and  dsk6713.cmd is what I want in the project. how to alternate the linker.cmd with dsk6713.cmd. In the CCSv3 times, it has no linker.cmd in default, we add dsk6713.cmd as the linker file. How to cope with the linker.

     

  • Check your project options under Build Properties->C/C++ Build->Linker->File Search Path. Most likely, the linker.cmd is specified there under the option "Include library file or command file as input". Select it and delete it. That should remove it from the project.