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.

AWR1642BOOST: DSS code too big?

Part Number: AWR1642BOOST
Other Parts Discussed in Thread: MATHLIB

Hi,

I am working on implement  some add-on based on mmw_demo app(SDK 1.0.0.05).

I just add a dozen lines of code on DSS but got the some error  as below, I also post my last good build log to give you an idea where the image size stands. Please help me  to how to resolve this error.    

Best regards,

Xinsi Lin

==============Build failed=======================================
[C674 Device/Type: awr16xx/xwr16xx] Building file: dss/dss_main.c
"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 55:
warning #48-D: incompatible redefinition of macro "TRUE" (declared at line 322 o
f "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")
"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 56:
warning #48-D: incompatible redefinition of macro "FALSE" (declared at line 319
of "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")
[C674 Device/Type: awr16xx/xwr16xx] Building file: dss/dss_data_path.c
"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 55:
warning #48-D: incompatible redefinition of macro "TRUE" (declared at line 322 o
f "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")
"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 56:
warning #48-D: incompatible redefinition of macro "FALSE" (declared at line 319
of "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")
"dss/dss_data_path.c", line 1784: warning #128-D: expected a statement
cl6x -mv6740 --abi=eabi -g --define=SOC_XWR16XX --display_error_number --diag_wa
rning=225 --diag_wrap=off -z --reread_libs --warn_sections --ram_model -iC:/ti/c
csv7/tools/compiler/ti-cgt-c6000_8.1.3/lib -iC:/ti/mmwave_sdk_01_00_00_05/packag
es/ti/drivers/osal/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/soc/li
b -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/uart/lib -iC:/ti/mmwave_sdk
_01_00_00_05/packages/ti/drivers/crc/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages
/ti/drivers/mailbox/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/adcbu
f/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/edma/lib -iC:/ti/mmwave
_sdk_01_00_00_05/packages/ti/control/mmwavelink/lib -iC:/ti/mmwave_sdk_01_00_00_
05/packages/ti/control/mmwave/lib -iC:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dspli
b/lib -iC:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/lib -iC:/ti/mmwave_sdk_0
1_00_00_05/packages/ti/alg/mmwavelib/lib -llibosal_xwr16xx.ae674 -llibsoc_xwr16x
x.ae674 -llibcrc_xwr16xx.ae674 -llibuart_xwr16xx.ae674 -llibmailbox_xwr16xx.ae67
4 -llibmmwavelink_xwr16xx.ae674 -llibmmwave_xwr16xx.ae674 -llibadcbuf_xwr16xx.ae
674 -llibedma_xwr16xx.ae674 -llibmmwavealg_xwr16xx.ae674 -ldsplib.ae64P -lmathli
b.ae674                         \
        -ldss/mmw_configPkg_xwr16xx/linker.cmd --map_file=xwr16xx_mmw_demo_dss.m
ap obj_xwr16xx/dss_main.oe674 obj_xwr16xx/dss_config_edma_util.oe674 obj_xwr16xx
/dss_data_path.oe674 obj_xwr16xx/gen_twiddle_fft16x16.oe674 obj_xwr16xx/gen_twid
dle_fft32x32.oe674      \
        C:/ti/mmwave_sdk_01_00_00_05/packages/ti/platform/xwr16xx/c674x_linker.c
md dss/dss_mmw_linker.cmd -lrts6740_elf.lib -o xwr16xx_mmw_demo_dss.xe674
<Linking>
"dss/dss_mmw_linker.cmd", line 44: warning #10068-D: no matching section
"dss/dss_mmw_linker.cmd", line 36: error #10099-D: program will not fit into ava
ilable memory.  run placement with alignment fails for section ".fastCode" size
0x3f60 .  Available memory ranges:
   L1PSRAM      size: 0x4000       unused: 0x4000       max hole: 0x4000
error #10010: errors encountered during linking; "xwr16xx_mmw_demo_dss.xe674" no
t built

>> Compilation failure
gmake: *** [dssDemo] Error 1

=================Last good build==================================

[C674 Device/Type: awr16xx/xwr16xx] Building file: dss/dss_main.c

"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 55:

warning #48-D: incompatible redefinition of macro "TRUE" (declared at line 322 o

f "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")

"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 56:

warning #48-D: incompatible redefinition of macro "FALSE" (declared at line 319

of "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")

[C674 Device/Type: awr16xx/xwr16xx] Building file: dss/dss_data_path.c

"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 55:

warning #48-D: incompatible redefinition of macro "TRUE" (declared at line 322 o

f "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")

"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 56:

warning #48-D: incompatible redefinition of macro "FALSE" (declared at line 319

of "c:/ti/xdctools_3_50_01_12_core/packages/xdc/std.h")

cl6x -mv6740 --abi=eabi -g --define=SOC_XWR16XX --display_error_number --diag_wa

rning=225 --diag_wrap=off -z --reread_libs --warn_sections --ram_model -iC:/ti/c

csv7/tools/compiler/ti-cgt-c6000_8.1.3/lib -iC:/ti/mmwave_sdk_01_00_00_05/packag

es/ti/drivers/osal/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/soc/li

b -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/uart/lib -iC:/ti/mmwave_sdk

_01_00_00_05/packages/ti/drivers/crc/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages

/ti/drivers/mailbox/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/adcbu

f/lib -iC:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/edma/lib -iC:/ti/mmwave

_sdk_01_00_00_05/packages/ti/control/mmwavelink/lib -iC:/ti/mmwave_sdk_01_00_00_

05/packages/ti/control/mmwave/lib -iC:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dspli

b/lib -iC:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/lib -iC:/ti/mmwave_sdk_0

1_00_00_05/packages/ti/alg/mmwavelib/lib -llibosal_xwr16xx.ae674 -llibsoc_xwr16x

x.ae674 -llibcrc_xwr16xx.ae674 -llibuart_xwr16xx.ae674 -llibmailbox_xwr16xx.ae67

4 -llibmmwavelink_xwr16xx.ae674 -llibmmwave_xwr16xx.ae674 -llibadcbuf_xwr16xx.ae

674 -llibedma_xwr16xx.ae674 -llibmmwavealg_xwr16xx.ae674 -ldsplib.ae64P -lmathli

b.ae674 \

-ldss/mmw_configPkg_xwr16xx/linker.cmd --map_file=xwr16xx_mmw_demo_dss.m

ap obj_xwr16xx/dss_main.oe674 obj_xwr16xx/dss_config_edma_util.oe674 obj_xwr16xx

/dss_data_path.oe674 obj_xwr16xx/gen_twiddle_fft16x16.oe674 obj_xwr16xx/gen_twid

dle_fft32x32.oe674 \

C:/ti/mmwave_sdk_01_00_00_05/packages/ti/platform/xwr16xx/c674x_linker.c

md dss/dss_mmw_linker.cmd -lrts6740_elf.lib -o xwr16xx_mmw_demo_dss.xe674

<Linking>

"dss/dss_mmw_linker.cmd", line 44: warning #10068-D: no matching section

cp -f dss/mmw_configPkg_xwr16xx/package/cfg/dss_mmw_pe674.rov.xs dss_mmw_pe674.r

ov.xs

Built the DSS Millimeter Wave Demo [Preparing the BIN Format]

Parsing the input object file, xwr16xx_mmw_demo_dss.xe674.

Appending zeros 8463904

Appending zeros 8471568

Appending zeros 8481400

Appending zeros 8482024

File conversion complete!

******************************************************************************

Built the DSS Millimeter Wave OUT & BIN Formats

******************************************************************************

C:/ti/mmwave_sdk_01_00_00_05/packages\scripts\ImageCreator\xwr16xx\multicore_ima

ge_generator\MulticoreImageGen.exe LE 37 0x01000005 xwr16xx_mmw_demo.bin 0x35510

000 xwr16xx_mmw_demo_mss.bin 0xb5510000 C:/ti/mmwave_sdk_01_00_00_05/packages/..

/firmware/radarss/xwr16xx_radarss_rprc.bin 0xd5510000 xwr16xx_mmw_demo_dss.bin

Number of Input Files 3

Number of zeros 24

Number of zeros 8

Number of zeros 56

 

call C:/ti/mmwave_sdk_01_00_00_05/packages\scripts\ImageCreator\xwr16xx\crc_mult

icore_image\crc_multicore_image.exe xwr16xx_mmw_demo.bin xwr16xx_mmw_demo.bin.tm

p

size of App Image is 417024 bytes

cur_crc_read_addr 128

cur_crc_read_addr 107968

cur_crc_read_addr 244160

Failed to remove CRC temp file

 

perl C:/ti/mmwave_sdk_01_00_00_05/packages\scripts\ImageCreator\xwr16xx\append_b

in_crc\gen_bincrc32.pl xwr16xx_mmw_demo.bin

>>>> Binary CRC32 = e514adeb <<<<

>>>> Total bytes in binary file 417028 <<<<

******************************************************************************

Built the mmw Demo Flash Binary

******************************************************************************

  • Hello,
    With the addition of your code, the compiler is not able to allocate memory for fastCode section. This section is used to place/load contents to L3RAM but copy-in and run from L1PSRAM for faster execution (paging).
    As L1PSAM is limited to 32KB where 16KB is used for cache and another 16KB is to place fastCode section.

    If you adding up new code which resides in fastCode section then the compiler will throw an error as that memory area is already occupied and no more free memory.

    There are two ways to tackle this issue either take the new code out of fastCode section or reduce L1P cache allocation to the device (<SDK path>\package\ti\platform\xwr16xx\c674x_linker.cmd: #define L1P_CACHE_SIZE).

    Both of these options have their own tradeoffs, so considering that in mind choose one of the above options.


    Regards,
    Jitendra