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.

Another FFT Demo Problem

Dear TI,

I now have a build problem with a project which previously built ok.

I get the error messages listed below.

I have tried to find the item called "ptrdiff_size=16" with no luck.

Thanks for your help!

Regards,

Charley

 

**** Build of configuration Release for project VC5505 FFT Filter Demo ****

 

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all

'Building file: ../GPIO.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="GPIO.pp" "../GPIO.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [GPIO.obj] Error 1

'Building file: ../codec_routines.asm'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="codec_routines.pp" "../codec_routines.asm"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [codec_routines.obj] Error 1

'Building file: ../configuration.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="configuration.pp" "../configuration.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [configuration.obj] Error 1

'Building file: ../dma_routines.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="dma_routines.pp" "../dma_routines.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [dma_routines.obj] Error 1

'Building file: ../filter_routines.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="filter_routines.pp" "../filter_routines.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [filter_routines.obj] Error 1

'Building file: ../fir.asm'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="fir.pp" "../fir.asm"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [fir.obj] Error 1

'Building file: ../hwafft.asm'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="hwafft.pp" "../hwafft.asm"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [hwafft.obj] Error 1

'Building file: ../i2s_register.asm'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="i2s_register.pp" "../i2s_register.asm"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [i2s_register.obj] Error 1

'Building file: ../i2s_routines.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="i2s_routines.pp" "../i2s_routines.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [i2s_routines.obj] Error 1

'Building file: ../main.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="main.pp" "../main.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [main.obj] Error 1

'Building file: ../rtc_routines.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="rtc_routines.pp" "../rtc_routines.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [rtc_routines.obj] Error 1

'Building file: ../spirom.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="spirom.pp" "../spirom.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [spirom.obj] Error 1

'Building file: ../spirom_RW.c'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="spirom_RW.pp" "../spirom_RW.c"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [spirom_RW.obj] Error 1

'Building file: ../vector.asm'

'Invoking: C5500 Compiler'

"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="vector.pp" "../vector.asm"

>> ERROR: Only --ptrdiff_size=16 is allowed for small memory model

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [vector.obj] Error 1

C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.

Build complete for project VC5505 FFT Filter Demo

  • Hi Charley,

    I am not terribly familiar with the C55x build tools and the nuances involved but I see that you have a compiler switch --ptrfiff_size=32. That's where the error is coming from. I suggest checking the C55x compiler manual to detemine if you should change this to 16, or if you should instead use a different memory model.

    charles hill said:
    'Building file: ../vector.asm'

    'Invoking: C5500 Compiler'

    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --asm_source=mnemonic --preproc_with_compile --preproc_dependency="vector.pp" "../vector.asm"

  • Charley,

    I think I misread your original issue. The ptrdiff_size flag can be found inside the project Build Properties->C5500 Compiler->Runtime Model Options. If you intend to stick with the Small Memory Model change the drop-down from 32 to 16. If you prefer the Large Memory Model you can leave this field set to 32.

  • Hi Tim, Charley,

    The FFT Filter Demo may have even require the Huge memory model, which is consistent with the 32-bit ptrdiff_size.

    The build tools will let you know if you have a memory model mismatch with any of the pre-compiled libraries (if applicable).

    See Memory Models: http://processors.wiki.ti.com/index.php/55x_FAQ#What_is_the_difference_between_the_Small.2C_Large_and_Huge_memory_models.3F

    Regards,
    Mark

  • Tim,

     

    Thanks for the reply.

    I did find the listing for ptrdiff in the properties section of the IDE.

    I set this value to prtfiff_size=32 but this caused other problems.

    I then set the memory model to huge. It had been set at small.

    I now get the following error message:

    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g -O2 --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c5500/include" --include_path="C:/A_TI_DSP/VC5505 FFT Filter Demo/Release" --include_path="C:/Program Files/Texas Instruments/bios_5_40_03_23/packages/ti/rtdx/include/c5500" --diag_warning=225 --sat_reassoc=off --ptrdiff_size=32 --fp_reassoc=off --memory_model=huge --asm_source=mnemonic --preproc_with_compile --preproc_dependency="codec_routines.pp" "../codec_routines.asm"

    >> ERROR: Huge memory model not supported for CPU revisions 1 or 2

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [codec_routines.obj] Error 1

    I looked for a place to change the CPU revison level.

    Any idea of how to change the rev level?

     

    Also, is there a build file that contains all of the selections made in properties so that I could compare the build details between a problem project and one that builds ok? There are so many items to look at in the  properties that it is really difficult to get this stuff to work.

    Thanks,

    Charley

  • Charley,

    For C5505/04/15/14 you may specify any of the following equivalent rev levels:

    core:3.3
    cpu:3.3
    5515
    5515:1.0

    Enter it into Project Build Properties --> C5500 Compiler --> Basic Options --> device+optional revision of target silicon (--silicon_version, -v): CPU:3.3

    http://processors.wiki.ti.com/index.php/55x_FAQ#What_are_the_CPU_versions_for_the_different_Silicon_versions_of_the_C55x_devices.3F

    The project files created by CCS4 are listed below:

    .cdtproject
    .project
    .ccsproject
    .cdtbuild

    .cdtbuild is the build file you are looking for (XML based)

    This link provides some documentation of the files: http://processors.wiki.ti.com/index.php/FAQ_-_CCSv4#Q:_Which_project_files_do_I_need_to_check_into_source_control.3F

    Hope this helps,
    Mark

  • hi,

    I hope you got the problem. You just need to modify the memory model like other ppl have pointed out.

    But, I would like to know, if you where able to compute the FFT efficiently ?

    I also trying to make something which can compute the FFT using HWAFFT..But, my code is compiling error free. But FFT is not getting computed.

    Could you post your FFT sub routine ???