我现在使用的TMS320C6657的开发板,使用sys/bios,双核,单镜像程序,我是在程序中通过DNUM来区分核0 和 核1运行的代码段的,但是我现在遇到一个问题,就是我没找到方法把核0核1的全局数据定义在不同的DDR内存段中,我知道可以先用平台把DDR内存分成不同的段,但是我不知道怎么把这些数据分配在不同段?数据包括全局变量和任务里申明的局部变量
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.
我现在使用的TMS320C6657的开发板,使用sys/bios,双核,单镜像程序,我是在程序中通过DNUM来区分核0 和 核1运行的代码段的,但是我现在遇到一个问题,就是我没找到方法把核0核1的全局数据定义在不同的DDR内存段中,我知道可以先用平台把DDR内存分成不同的段,但是我不知道怎么把这些数据分配在不同段?数据包括全局变量和任务里申明的局部变量
Dear Customer,
Chinese language is a beautiful language. I really did not have a chance to learn it.
Would you please post your query in English ?
Thanks in advance,
Regards
Shankari G
The development board I am currently using, TMS320C6657, uses sys/bios, dual core, and single mirror programs. I use DNUM in the program to distinguish the code segments running on Core 0 and Core 1. However, I am currently facing a problem where I have not found a way to define the global data of Core 0 and Core 1 in different DDR memory segments. I know that the DDR memory can be divided into different segments using the platform, but I don't know how to allocate this data in different segments? The data includes global variables and local variables declared in the task
Hi
We have to use the linker.cmd to define our memory map and its sections.
For example:-
/****************************************************************************** * Copyright (c) 2010-2011 Texas Instruments Incorporated - http://www.ti.com * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the * distribution. * * Neither the name of Texas Instruments Incorporated nor the names of * its contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * *****************************************************************************/ /* * Linker command file * */ -c -heap 0x41000 -stack 0xa000 /* Memory Map 1 - the default */ MEMORY { L1PSRAM (RWX) : org = 0x0E00000, len = 0x7FFF L1DSRAM (RWX) : org = 0x0F00000, len = 0x7FFF L2SRAM (RWX) : org = 0x0800000, len = 0x080000 MSMCSRAM (RWX) : org = 0xc000000, len = 0x100000 DDR3 (RWX) : org = 0x80000000,len = 0x20000000 } SECTIONS { .csl_vect > MSMCSRAM .text > MSMCSRAM GROUP (NEAR_DP) { .neardata .rodata .bss } load > MSMCSRAM .stack > MSMCSRAM .cinit > MSMCSRAM .cio > MSMCSRAM .const > MSMCSRAM .data > MSMCSRAM .switch > MSMCSRAM .sysmem > MSMCSRAM .far > MSMCSRAM .testMem > MSMCSRAM .fardata > MSMCSRAM platform_lib > MSMCSRAM }
--
Once you build your program, a "*.map" will be created, in which we will be able to see the memory configuration, section allocation map and global symbols etc...
For example:-
****************************************************************************** TMS320C6x Linker PC v8.3.5 ****************************************************************************** >> Linked Wed Mar 27 16:34:04 2024 OUTPUT FILE NAME: <platform_test_evmc6657l.out> ENTRY POINT SYMBOL: "_c_int00" address: 0c051b20 MEMORY CONFIGURATION name origin length used unused attr fill ---------------------- -------- --------- -------- -------- ---- -------- L2SRAM 00800000 00080000 00000000 00080000 RW X L1PSRAM 00e00000 00007fff 00000000 00007fff RW X L1DSRAM 00f00000 00007fff 00000000 00007fff RW X MSMCSRAM 0c000000 00100000 0005eafa 000a1506 RW X DDR3 80000000 20000000 00000000 20000000 RW X SEGMENT ALLOCATION MAP run origin load origin length init length attrs members ---------- ----------- ---------- ----------- ----- ------- 0c000000 0c000000 00041000 00000000 rw- 0c000000 0c000000 00041000 00000000 rw- .sysmem 0c041000 0c041000 00011560 00011560 r-x 0c041000 0c041000 00011560 00011560 r-x .text 0c052560 0c052560 0000a000 00000000 rw- 0c052560 0c052560 0000a000 00000000 rw- .stack 0c05c560 0c05c560 00001026 00001026 r-- 0c05c560 0c05c560 00001026 00001026 r-- .const 0c05d588 0c05d588 000013a0 00000000 rw- 0c05d588 0c05d588 00000da0 00000000 rw- platform_lib 0c05e328 0c05e328 00000350 00000000 rw- .fardata 0c05e678 0c05e678 00000190 00000000 rw- .far 0c05e808 0c05e808 00000120 00000000 rw- .cio 0c05e928 0c05e928 00000048 00000048 r-- 0c05e928 0c05e928 00000048 00000048 r-- .switch 0c05e970 0c05e970 0000000c 00000000 rw- 0c05e970 0c05e970 00000008 00000000 rw- .neardata 0c05e978 0c05e978 00000004 00000000 rw- .bss 0c05e980 0c05e980 00000180 00000180 r-- 0c05e980 0c05e980 00000180 00000180 r-- .cinit SECTION ALLOCATION MAP output attributes/ section page origin length input sections -------- ---- ---------- ---------- ---------------- .sysmem 0 0c000000 00041000 UNINITIALIZED 0c000000 00000008 rts6600_elf.lib : memory.c.obj (.sysmem) 0c000008 00040ff8 --HOLE-- .text 0 0c041000 00011560 0c041000 000025a0 platform_test.obj (.text) 0c0435a0 00001fe0 rts6600_elf.lib : _printfi.c.obj (.text:__TI_printfi) 0c045580 00001f60 ti.platform.evm6657l.ae66 : platform.obj (.text) 0c0474e0 000019e0 : evmc6657.obj (.text) 0c048ec0 00001180 : evmc665x_nand.obj (.text) 0c04a040 00000d20 : evmc665x_i2c_eeprom.obj (.text) 0c04ad60 00000700 : evmc665x_uart.obj (.text) 0c04b460 00000640 rts6600_elf.lib : _printfi.c.obj (.text:_pconv_a) 0c04baa0 00000600 : divd.c.obj (.text:__c6xabi_divd) 0c04c0a0 00000600 ti.platform.evm6657l.ae66 : evmc665x_spi.obj (.text) 0c04c6a0 00000520 : evmc665x_nor.obj (.text) 0c04cbc0 000004a0 : evmc665x_fpga.obj (.text) 0c04d060 00000440 rts6600_elf.lib : _printfi.c.obj (.text:_pconv_g) 0c04d4a0 000003c0 : memory.c.obj (.text:free) 0c04d860 000003a0 : strtol.c.obj (.text:strtol) 0c04dc00 00000320 : fgets.c.obj (.text:_dofgets) 0c04df20 000002e0 : fputs.c.obj (.text:fputs) 0c04e200 000002c0 : _printfi.c.obj (.text:fcvt) 0c04e4c0 000002a0 : _printfi.c.obj (.text:_pconv_e) 0c04e760 00000240 : imath64.c.obj (.text:__c6xabi_divull) 0c04e9a0 00000220 : open.c.obj (.text:open) 0c04ebc0 000001c0 : imath40.c.obj (.text:__c6xabi_divul) 0c04ed80 000001c0 : _printfi.c.obj (.text:_ltostr) 0c04ef40 000001c0 : fopen.c.obj (.text:_openfile) 0c04f100 000001c0 : fputc.c.obj (.text:fputc) 0c04f2c0 000001c0 : ldexp.c.obj (.text:ldexp) 0c04f480 000001c0 : memory.c.obj (.text:malloc) 0c04f640 000001c0 : setvbuf.c.obj (.text:setvbuf) 0c04f800 000001a0 : hostrename.c.obj (.text:HOSTrename) 0c04f9a0 000001a0 : frexp.c.obj (.text:frexp) 0c04fb40 00000160 : _bufread.c.obj (.text:__TI_buff_read) 0c04fca0 00000160 ti.platform.evm6657l.ae66 : evmc665x_phy.obj (.text) 0c04fe00 00000140 rts6600_elf.lib : fopen.c.obj (.text:fopen) 0c04ff40 00000120 : _printfi.c.obj (.text:_pconv_f) 0c050060 00000120 : getdevice.c.obj (.text:getdevice) 0c050180 00000100 : fclose.c.obj (.text:__TI_closefile) 0c050280 00000100 : copy_decompress_rle.c.obj (.text:__TI_decompress_rle_core) 0c050380 00000100 : _printfi.c.obj (.text:_mcpy) 0c050480 00000100 : atoi.c.obj (.text:atoi) 0c050580 00000100 : fseek.c.obj (.text:fseek) 0c050680 000000e0 : hostlseek.c.obj (.text:HOSTlseek) 0c050760 000000e0 : hostopen.c.obj (.text:HOSTopen) 0c050840 000000e0 : hostwrite.c.obj (.text:HOSTwrite) 0c050920 000000e0 : _ltoa.c.obj (.text:__TI_ltoa) 0c050a00 000000e0 : _io_perm.c.obj (.text:__TI_wrt_ok) 0c050ae0 000000e0 : close.c.obj (.text:close) 0c050bc0 000000e0 : exit.c.obj (.text:exit) 0c050ca0 000000e0 : memset.c.obj (.text:memset) 0c050d80 000000e0 : printf.c.obj (.text:printf) 0c050e60 000000c0 : hostread.c.obj (.text:HOSTread) 0c050f20 000000c0 : hostunlink.c.obj (.text:HOSTunlink) 0c050fe0 000000c0 : autoinit.c.obj (.text:__TI_auto_init_nobinit_nopinit:__TI_auto_init_nobinit_nopinit) 0c0510a0 000000c0 : fflush.c.obj (.text:__TI_doflush) 0c051160 000000c0 : divu.asm.obj (.text:__divu) 0c051220 000000c0 : memory.c.obj (.text:minsert) 0c0512e0 000000c0 : memory.c.obj (.text:mremove) 0c0513a0 000000c0 : strtok.c.obj (.text:strtok) 0c051460 000000c0 : tls.c.obj (.text:tls:init:__TI_tls_init) 0c051520 000000a0 : hostclose.c.obj (.text:HOSTclose) 0c0515c0 000000a0 : fopen.c.obj (.text:__TI_cleanup) 0c051660 000000a0 : _io_perm.c.obj (.text:__TI_rd_ok) 0c051700 000000a0 : remu.asm.obj (.text:__remu) 0c0517a0 000000a0 : _printfi.c.obj (.text:_ecpy) 0c051840 000000a0 : getdevice.c.obj (.text:finddevice) 0c0518e0 000000a0 : memcpy64.asm.obj (.text:memcpy) 0c051980 000000a0 : strspn.c.obj (.text:strspn) 0c051a20 00000080 : trgmsg.c.obj (.text:__TI_readmsg) 0c051aa0 00000080 : llshift.c.obj (.text:__c6xabi_llshl) 0c051b20 00000080 : boot.c.obj (.text:_c_int00) 0c051ba0 00000080 : fclose.c.obj (.text:fclose) 0c051c20 00000080 : strncpy.c.obj (.text:strncpy) 0c051ca0 00000080 ti.platform.evm6657l.ae66 : evm665x_i2c.obj (.text) 0c051d20 00000080 rts6600_elf.lib : unlink.c.obj (.text:unlink) 0c051da0 00000060 : frcmpyd_div.c.obj (.text:__TI_frcmpyd_div) 0c051e00 00000060 : trgmsg.c.obj (.text:__TI_writemsg) 0c051e60 00000060 : llshift.c.obj (.text:__c6xabi_llshru) 0c051ec0 00000060 : imath64.c.obj (.text:_subcull) 0c051f20 00000060 : lseek.c.obj (.text:lseek) 0c051f80 00000060 : memccpy.c.obj (.text:memccpy) 0c051fe0 00000060 : memcmp.c.obj (.text:memcmp) 0c052040 00000060 : read.c.obj (.text:read) 0c0520a0 00000060 : strcmp.c.obj (.text:strcmp) 0c052100 00000060 : strcspn.c.obj (.text:strcspn) 0c052160 00000060 : write.c.obj (.text:write) 0c0521c0 00000040 : isinf.c.obj (.text:__c6xabi_isinf) 0c052200 00000040 : _printfi.c.obj (.text:__c6xabi_isnan) 0c052240 00000040 : args_main.c.obj (.text:_args_main) 0c052280 00000040 : vsprintf.c.obj (.text:_outs) 0c0522c0 00000040 : strlen.c.obj (.text:strlen) 0c052300 00000040 : vsprintf.c.obj (.text:vsprintf) 0c052340 00000040 : wcslen.c.obj (.text:wcslen) 0c052380 00000020 : errno.c.obj (.text:__c6xabi_errno_addr) 0c0523a0 00000020 : push.asm.obj (.text:__pop_rts) 0c0523c0 00000020 : push.asm.obj (.text:__push_rts) 0c0523e0 00000020 : _lock.c.obj (.text:_nop) 0c052400 00000020 : printf.c.obj (.text:_outc) 0c052420 00000020 : vsprintf.c.obj (.text:_outc) 0c052440 00000020 : printf.c.obj (.text:_outs) 0c052460 00000020 : signbit.c.obj (.text:_signbit) 0c052480 00000020 : startup.c.obj (.text:_system_post_cinit) 0c0524a0 00000020 : pre_init.c.obj (.text:_system_pre_init) 0c0524c0 00000020 : exit.c.obj (.text:abort) 0c0524e0 00000020 ti.csl.ae66 : csl_tsc.oe66 (.text:cslsys_section:tsc) 0c052500 00000020 rts6600_elf.lib : copy_decompress_none.c.obj (.text:decompress:none:__TI_decompress_none) 0c052520 00000020 : copy_decompress_rle.c.obj (.text:decompress:rle24:__TI_decompress_rle24) 0c052540 00000020 : fgets.c.obj (.text:fgets) .stack 0 0c052560 0000a000 UNINITIALIZED 0c052560 00000008 rts6600_elf.lib : boot.c.obj (.stack) 0c052568 00009ff8 --HOLE-- .const 0 0c05c560 00001026 0c05c560 00000e34 platform_test.obj (.const:.string) 0c05d394 00000004 --HOLE-- [fill = 0] 0c05d398 00000101 rts6600_elf.lib : ctype.c.obj (.const:.string:_ctypes_) 0c05d499 00000003 --HOLE-- [fill = 0] 0c05d49c 00000058 ti.platform.evm6657l.ae66 : platform.obj (.const:.string) 0c05d4f4 00000004 --HOLE-- [fill = 0] 0c05d4f8 00000028 : evmc665x_nand.obj (.const:.string:$P$T0$1) 0c05d520 00000028 : evmc665x_nand.obj (.const:.string:$P$T1$2) 0c05d548 00000024 rts6600_elf.lib : _printfi.c.obj (.const:.string) 0c05d56c 00000004 --HOLE-- [fill = 0] 0c05d570 0000000c platform_test.obj (.const:.string:$P$T1$2) 0c05d57c 00000004 --HOLE-- [fill = 0] 0c05d580 00000006 platform_test.obj (.const:.string:$P$T0$1) platform_lib * 0 0c05d588 00000da0 UNINITIALIZED 0c05d588 00000840 ti.platform.evm6657l.ae66 : evmc665x_nand.obj (platform_lib) 0c05ddc8 00000458 : platform.obj (platform_lib:uninit) 0c05e220 00000108 : platform.obj (platform_lib:init) .far 0 0c05e678 00000190 UNINITIALIZED 0c05e678 00000140 (.common:__TI_tmpnams) 0c05e7b8 00000044 (.common:gI2cBlock) 0c05e7fc 00000004 --HOLE-- 0c05e800 00000008 (.common:parmbuf) .cio 0 0c05e808 00000120 UNINITIALIZED 0c05e808 00000120 rts6600_elf.lib : trgmsg.c.obj (.cio) .neardata * 0 0c05e970 00000008 UNINITIALIZED 0c05e970 00000008 ti.platform.evm6657l.ae66 : platform.obj (.neardata) .rodata 0 0c05e978 00000000 UNINITIALIZED .bss 0 0c05e978 00000004 UNINITIALIZED 0c05e978 00000004 ti.platform.evm6657l.ae66 : evmc665x_spi.obj (.bss) .cinit 0 0c05e980 00000180 0c05e980 0000009b (.cinit.platform_lib.load) [load image, compression = rle] 0c05ea1b 00000094 (.cinit..fardata.load) [load image, compression = rle] 0c05eaaf 0000000b (.cinit..far.load) [load image, compression = rle] 0c05eaba 00000009 (.cinit..bss.load) [load image, compression = rle] 0c05eac3 00000009 (.cinit..neardata.load) [load image, compression = rle] 0c05eacc 00000008 (__TI_handler_table) 0c05ead4 00000004 --HOLE-- [fill = 0] 0c05ead8 00000028 (__TI_cinit_table) .switch 0 0c05e928 00000048 0c05e928 00000038 rts6600_elf.lib : _printfi.c.obj (.switch:__TI_printfi) 0c05e960 00000010 ti.platform.evm6657l.ae66 : evmc665x_nand.obj (.switch:NandCorrect4bitECC) .fardata 0 0c05e328 00000350 UNINITIALIZED 0c05e328 000001e0 rts6600_elf.lib : defs.c.obj (.fardata:_ftable) 0c05e508 000000a0 : write.c.obj (.fardata:_stream) 0c05e5a8 00000078 : write.c.obj (.fardata:_device) 0c05e620 00000026 platform_test.obj (.fardata:input_file_name) 0c05e646 00000002 --HOLE-- 0c05e648 0000000c rts6600_elf.lib : exit.c.obj (.fardata) 0c05e654 00000008 : memory.c.obj (.fardata) 0c05e65c 00000004 : _lock.c.obj (.fardata:_lock) 0c05e660 00000004 : _lock.c.obj (.fardata:_unlock) 0c05e664 00000004 : defs.c.obj (.fardata) 0c05e668 00000004 : errno.c.obj (.fardata) 0c05e66c 00000004 : fopen.c.obj (.fardata) 0c05e670 00000004 : open.c.obj (.fardata) 0c05e674 00000004 : strtok.c.obj (.fardata) MODULE SUMMARY Module code ro data rw data ------ ---- ------- ------- .\src\ platform_test.obj 9632 3654 38 +--+----------------------------+-------+---------+---------+ Total: 9632 3654 38 C:/ti/pdk_c665x_2_0_16/packages/ti/csl/lib/c6657/c66/release/ti.csl.ae66 csl_tsc.oe66 32 0 0 +--+----------------------------+-------+---------+---------+ Total: 32 0 0 C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug/ti.platform.evm6657l.ae66 platform.obj 8032 88 1384 evmc665x_nand.obj 4480 96 2112 evmc6657.obj 6624 0 0 evmc665x_i2c_eeprom.obj 3360 0 68 evmc665x_uart.obj 1792 0 0 evmc665x_spi.obj 1536 0 4 evmc665x_nor.obj 1312 0 0 evmc665x_fpga.obj 1184 0 0 evmc665x_phy.obj 352 0 0 evm665x_i2c.obj 128 0 0 +--+----------------------------+-------+---------+---------+ Total: 28800 184 3568 C:\ti\ccs930\ccs\tools\compiler\ti-cgt-c6000_8.3.5\lib\rts6600_elf.lib _printfi.c.obj 13440 92 0 memory.c.obj 1792 0 8 divd.c.obj 1536 0 0 fopen.c.obj 928 0 4 strtol.c.obj 928 0 0 fgets.c.obj 832 0 0 defs.c.obj 0 0 804 fputs.c.obj 736 0 0 imath64.c.obj 672 0 0 open.c.obj 544 0 4 trgmsg.c.obj 224 0 288 fputc.c.obj 448 0 0 getdevice.c.obj 448 0 0 imath40.c.obj 448 0 0 ldexp.c.obj 448 0 0 setvbuf.c.obj 448 0 0 frexp.c.obj 416 0 0 hostrename.c.obj 416 0 0 _io_perm.c.obj 384 0 0 fclose.c.obj 384 0 0 write.c.obj 96 0 280 _bufread.c.obj 352 0 0 copy_decompress_rle.c.obj 288 0 0 printf.c.obj 288 0 0 exit.c.obj 256 0 12 ctype.c.obj 0 257 0 atoi.c.obj 256 0 0 fseek.c.obj 256 0 0 hostopen.c.obj 224 0 8 _ltoa.c.obj 224 0 0 close.c.obj 224 0 0 hostlseek.c.obj 224 0 0 hostwrite.c.obj 224 0 0 llshift.c.obj 224 0 0 memset.c.obj 224 0 0 strtok.c.obj 192 0 4 autoinit.c.obj 192 0 0 divu.asm.obj 192 0 0 fflush.c.obj 192 0 0 hostread.c.obj 192 0 0 hostunlink.c.obj 192 0 0 tls.c.obj 192 0 0 hostclose.c.obj 160 0 0 memcpy64.asm.obj 160 0 0 remu.asm.obj 160 0 0 strspn.c.obj 160 0 0 vsprintf.c.obj 160 0 0 boot.c.obj 128 0 0 strncpy.c.obj 128 0 0 unlink.c.obj 128 0 0 frcmpyd_div.c.obj 96 0 0 lseek.c.obj 96 0 0 memccpy.c.obj 96 0 0 memcmp.c.obj 96 0 0 read.c.obj 96 0 0 strcmp.c.obj 96 0 0 strcspn.c.obj 96 0 0 args_main.c.obj 64 0 0 isinf.c.obj 64 0 0 push.asm.obj 64 0 0 strlen.c.obj 64 0 0 wcslen.c.obj 64 0 0 _lock.c.obj 32 0 8 errno.c.obj 32 0 4 copy_decompress_none.c.obj 32 0 0 pre_init.c.obj 32 0 0 signbit.c.obj 32 0 0 startup.c.obj 32 0 0 +--+----------------------------+-------+---------+---------+ Total: 32544 349 1424 Heap: 0 0 266240 Stack: 0 0 40960 Linker Generated: 0 380 0 +--+----------------------------+-------+---------+---------+ Grand Total: 71008 4567 312230 LINKER GENERATED COPY TABLES __TI_cinit_table @ 0c05ead8 records: 5, size/record: 8, table size: 40 platform_lib: load addr=0c05e980, load size=0000009b bytes, run addr=0c05d588, run size=00000da0 bytes, compression=rle .fardata: load addr=0c05ea1b, load size=00000094 bytes, run addr=0c05e328, run size=00000350 bytes, compression=rle .far: load addr=0c05eaaf, load size=0000000b bytes, run addr=0c05e678, run size=00000190 bytes, compression=rle .bss: load addr=0c05eaba, load size=00000009 bytes, run addr=0c05e978, run size=00000004 bytes, compression=rle .neardata: load addr=0c05eac3, load size=00000009 bytes, run addr=0c05e970, run size=00000008 bytes, compression=rle LINKER GENERATED HANDLER TABLE __TI_handler_table @ 0c05eacc records: 2, size/record: 4, table size: 8 index: 0, handler: __TI_decompress_rle24 index: 1, handler: __TI_decompress_none GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name address name ------- ---- 0c0524c0 C$$EXIT 0c051e58 C$$IO$$ 0c0524e0 CSL_tscEnable 0c0524e8 CSL_tscRead 0c047480 Convert_CoreLocal2GlobalAddr 0c0487a0 CorePllcGetHwSetup 0c048538 CorePllcHwSetup 0c048a98 DDR3Init 0c051520 HOSTclose 0c050680 HOSTlseek 0c050760 HOSTopen 0c050e60 HOSTread 0c04f800 HOSTrename 0c050f20 HOSTunlink 0c050840 HOSTwrite 0c049f10 NandGetDetails 0c0494b4 NandReadSpareArea 0c0498cc NandWriteDataBytes 0c049c0c NandWriteSpareArea 0c041c24 Osal_platformFree 0c041c0c Osal_platformMalloc 0c041c44 Osal_platformSpiCsEnter 0c041c64 Osal_platformSpiCsExit 0c048888 PowerUpDomains 0c0488c8 SetDDR3PllConfig 0c04ad60 UartInit 0c04b3c8 UartIsDataReady 0c04b408 UartIsDataReady_B 0c04b1a0 UartReadBaudRate 0c04b20c UartReadBaudRate_B 0c04b280 UartReadData 0c04b2b0 UartReadData_B 0c04b0b4 UartSetBaudRate 0c04b128 UartSetBaudRate_B 0c04b2e4 UartWriteData 0c04b348 UartWriteData_B 0c05e808 __CIOBUF_ 0c05ead8 __TI_CINIT_Base 0c05eb00 __TI_CINIT_Limit 0c05eacc __TI_Handler_Table_Base 0c05ead4 __TI_Handler_Table_Limit 0c05c560 __TI_STACK_END 0000a000 __TI_STACK_SIZE 0c05e970 __TI_STATIC_BASE 00041000 __TI_SYSMEM_SIZE UNDEFED __TI_TLS_INIT_Base UNDEFED __TI_TLS_INIT_Limit 0c050fe0 __TI_auto_init_nobinit_nopinit 0c04fb40 __TI_buff_read 0c0515c0 __TI_cleanup 0c05e648 __TI_cleanup_ptr 0c050180 __TI_closefile 0c052500 __TI_decompress_none 0c052520 __TI_decompress_rle24 0c0510a0 __TI_doflush 0c05e64c __TI_dtors_ptr 0c05e650 __TI_enable_exit_profile_output 0c051da0 __TI_frcmpyd_div 0c05e664 __TI_ft_end 0c050920 __TI_ltoa ffffffff __TI_pprof_out_hndl 0c0435a0 __TI_printfi ffffffff __TI_prof_data_size ffffffff __TI_prof_data_start 0c051660 __TI_rd_ok 0c051a20 __TI_readmsg 0c051460 __TI_tls_init 0c05e678 __TI_tmpnams 0c051e00 __TI_writemsg 0c050a00 __TI_wrt_ok ffffffff __binit__ 0c04baa0 __c6xabi_divd 0c051160 __c6xabi_divu 0c04ebc0 __c6xabi_divul 0c04e760 __c6xabi_divull 0c052380 __c6xabi_errno_addr 0c0521c0 __c6xabi_isinf 0c051aa0 __c6xabi_llshl 0c051e60 __c6xabi_llshru 0c0523a0 __c6xabi_pop_rts 0c0523c0 __c6xabi_push_rts 0c051700 __c6xabi_remu ffffffff __c_args__ 0c051160 __divu 0c05e668 __errno 0c0523a0 __pop_rts 0c0523c0 __push_rts 0c051700 __remu 0c052240 _args_main 0c051b20 _c_int00 0c05d398 _ctypes_ 0c05e5a8 _device 0c05e328 _ftable 0c05e65c _lock 0c0523e0 _nop 0c052460 _signbit 0c052560 _stack 0c05e508 _stream 0c051ec0 _subcull 0c000000 _sys_memory 0c052480 _system_post_cinit 0c0524a0 _system_pre_init 0c05e660 _unlock 0c0524c0 abort 0c050480 atoi ffffffff binit 0c050ae0 close 0c04fd80 configSerdes 0c05e320 emac_port_mode 0c05e668 errno 0c051ca0 evmI2CInit 0c050bc0 exit 0c051ba0 fclose 0c052540 fgets 0c051840 finddevice 0c04fe00 fopen 0c04cc4c fpgaControlUserLEDs 0c04ce10 fpgaDisableEepromWriteProtect 0c04ccf8 fpgaDisableNandWriteProtect 0c04cd88 fpgaDisableNorWriteProtect 0c04ce54 fpgaEnableEepromWriteProtect 0c04cd40 fpgaEnableNandWriteProtect 0c04cdcc fpgaEnableNorWriteProtect 0c04cee4 fpgaGetAMCDetect 0c04ce98 fpgaGetUserSwitch 0c04cfd0 fpgaReadConfigurationRegister 0c04cf28 fpgaWriteConfigurationRegister 0c04f100 fputc 0c04df20 fputs 0c04d4a0 free 0c04f9a0 frexp 0c04f9a0 frexpl 0c050580 fseek 0c05e2ac gDeviceEeprom0 0c05e2e4 gDeviceEeprom1 0c05e23c gDeviceNand 0c05de20 gDeviceNandBBlist 0c05e274 gDeviceNor 0c05e7b8 gI2cBlock 0c04cbc0 getBoardVersion 0c04cc04 getFpgaDevID 0c050060 getdevice 0c04aa10 i2cEepromMacRead 0c04a798 i2cEepromMacWrite 0c04a330 i2cEepromRead 0c04a520 i2cEepromWrite 0c04a084 i2cEepromWriteBlock 0c04a648 i2cEepromWriteByteAddr 0c05e620 input_file_name 0c04f2c0 ldexp 0c04f2c0 ldexpl 0c051f20 lseek 0c0431d4 main 0c04f480 malloc 0c051f80 memccpy 0c051fe0 memcmp 0c0518e0 memcpy 0c050ca0 memset 0c049d40 nandFlashBlockErase 0c04a024 nandInit 0c04caa0 nor_erase 0c04c720 nor_get_details 0c04c7b0 nor_init 0c04c838 nor_read 0c04c8c8 nor_write 0c04e9a0 open 0c05e800 parmbuf 0c046d6c platform_blocknpage_to_offset 0c046288 platform_delay 0c0462f8 platform_delaycycles 0c046800 platform_device_close 0c0473ac platform_device_erase_block 0c046934 platform_device_mark_block_bad 0c046688 platform_device_open 0c046af4 platform_device_read 0c046894 platform_device_read_spare_data 0c046e4c platform_device_write 0c046a54 platform_device_write_spare_data 0c05e970 platform_errno 0c04634c platform_external_memory_test 0c046224 platform_fpgaReadConfigReg 0c0461f8 platform_fpgaWriteConfigReg 0c045f88 platform_get_coreid 0c045f94 platform_get_emac_info 0c0460c8 platform_get_emac_start_evt_id 0c045a78 platform_get_info 0c04602c platform_get_macaddr 0c0460d0 platform_get_phy_addr 0c0460f4 platform_get_switch_state 0c045d78 platform_init 0c05e974 platform_init_return_code 0c0463c8 platform_internal_memory_test 0c046244 platform_led 0c046c54 platform_offset_to_blocknpage 0c046104 platform_phy_link_status 0c0461e0 platform_uart_init 0c046118 platform_uart_read 0c0461a4 platform_uart_set_baudrate 0c046184 platform_uart_write 0c046550 platform_write 0c046520 platform_write_configure 0c050d80 printf 0c0483e0 prog_pll1_values 0c04f100 putc 0c052040 read 0c0495b4 readNandPage 0c051d20 remove 0c04f2c0 scalbn 0c04f2c0 scalbnl 0c045960 serial_num_isvalid 0c04f640 setvbuf 0c04c0d0 spi_claim 0c04c3f4 spi_cmd 0c04c454 spi_cmd_read 0c04c4b4 spi_cmd_write 0c04c514 spi_read_word 0c04c288 spi_release 0c04c5e8 spi_write_word 0c04c2a0 spi_xfer 0c0520a0 strcmp 0c052100 strcspn 0c0522c0 strlen 0c051c20 strncpy 0c051980 strspn 0c0513a0 strtok 0c04d860 strtol 0c051d20 unlink 0c052300 vsprintf 0c052340 wcslen 0c052160 write 0c049934 writeNandPage 0c043178 write_boot_magic_number 0c048a4c xmc_setup GLOBAL SYMBOLS: SORTED BY Symbol Address address name ------- ---- 0000a000 __TI_STACK_SIZE 00041000 __TI_SYSMEM_SIZE 0c000000 _sys_memory 0c041c0c Osal_platformMalloc 0c041c24 Osal_platformFree 0c041c44 Osal_platformSpiCsEnter 0c041c64 Osal_platformSpiCsExit 0c043178 write_boot_magic_number 0c0431d4 main 0c0435a0 __TI_printfi 0c045960 serial_num_isvalid 0c045a78 platform_get_info 0c045d78 platform_init 0c045f88 platform_get_coreid 0c045f94 platform_get_emac_info 0c04602c platform_get_macaddr 0c0460c8 platform_get_emac_start_evt_id 0c0460d0 platform_get_phy_addr 0c0460f4 platform_get_switch_state 0c046104 platform_phy_link_status 0c046118 platform_uart_read 0c046184 platform_uart_write 0c0461a4 platform_uart_set_baudrate 0c0461e0 platform_uart_init 0c0461f8 platform_fpgaWriteConfigReg 0c046224 platform_fpgaReadConfigReg 0c046244 platform_led 0c046288 platform_delay 0c0462f8 platform_delaycycles 0c04634c platform_external_memory_test 0c0463c8 platform_internal_memory_test 0c046520 platform_write_configure 0c046550 platform_write 0c046688 platform_device_open 0c046800 platform_device_close 0c046894 platform_device_read_spare_data 0c046934 platform_device_mark_block_bad 0c046a54 platform_device_write_spare_data 0c046af4 platform_device_read 0c046c54 platform_offset_to_blocknpage 0c046d6c platform_blocknpage_to_offset 0c046e4c platform_device_write 0c0473ac platform_device_erase_block 0c047480 Convert_CoreLocal2GlobalAddr 0c0483e0 prog_pll1_values 0c048538 CorePllcHwSetup 0c0487a0 CorePllcGetHwSetup 0c048888 PowerUpDomains 0c0488c8 SetDDR3PllConfig 0c048a4c xmc_setup 0c048a98 DDR3Init 0c0494b4 NandReadSpareArea 0c0495b4 readNandPage 0c0498cc NandWriteDataBytes 0c049934 writeNandPage 0c049c0c NandWriteSpareArea 0c049d40 nandFlashBlockErase 0c049f10 NandGetDetails 0c04a024 nandInit 0c04a084 i2cEepromWriteBlock 0c04a330 i2cEepromRead 0c04a520 i2cEepromWrite 0c04a648 i2cEepromWriteByteAddr 0c04a798 i2cEepromMacWrite 0c04aa10 i2cEepromMacRead 0c04ad60 UartInit 0c04b0b4 UartSetBaudRate 0c04b128 UartSetBaudRate_B 0c04b1a0 UartReadBaudRate 0c04b20c UartReadBaudRate_B 0c04b280 UartReadData 0c04b2b0 UartReadData_B 0c04b2e4 UartWriteData 0c04b348 UartWriteData_B 0c04b3c8 UartIsDataReady 0c04b408 UartIsDataReady_B 0c04baa0 __c6xabi_divd 0c04c0d0 spi_claim 0c04c288 spi_release 0c04c2a0 spi_xfer 0c04c3f4 spi_cmd 0c04c454 spi_cmd_read 0c04c4b4 spi_cmd_write 0c04c514 spi_read_word 0c04c5e8 spi_write_word 0c04c720 nor_get_details 0c04c7b0 nor_init 0c04c838 nor_read 0c04c8c8 nor_write 0c04caa0 nor_erase 0c04cbc0 getBoardVersion 0c04cc04 getFpgaDevID 0c04cc4c fpgaControlUserLEDs 0c04ccf8 fpgaDisableNandWriteProtect 0c04cd40 fpgaEnableNandWriteProtect 0c04cd88 fpgaDisableNorWriteProtect 0c04cdcc fpgaEnableNorWriteProtect 0c04ce10 fpgaDisableEepromWriteProtect 0c04ce54 fpgaEnableEepromWriteProtect 0c04ce98 fpgaGetUserSwitch 0c04cee4 fpgaGetAMCDetect 0c04cf28 fpgaWriteConfigurationRegister 0c04cfd0 fpgaReadConfigurationRegister 0c04d4a0 free 0c04d860 strtol 0c04df20 fputs 0c04e760 __c6xabi_divull 0c04e9a0 open 0c04ebc0 __c6xabi_divul 0c04f100 fputc 0c04f100 putc 0c04f2c0 ldexp 0c04f2c0 ldexpl 0c04f2c0 scalbn 0c04f2c0 scalbnl 0c04f480 malloc 0c04f640 setvbuf 0c04f800 HOSTrename 0c04f9a0 frexp 0c04f9a0 frexpl 0c04fb40 __TI_buff_read 0c04fd80 configSerdes 0c04fe00 fopen 0c050060 getdevice 0c050180 __TI_closefile 0c050480 atoi 0c050580 fseek 0c050680 HOSTlseek 0c050760 HOSTopen 0c050840 HOSTwrite 0c050920 __TI_ltoa 0c050a00 __TI_wrt_ok 0c050ae0 close 0c050bc0 exit 0c050ca0 memset 0c050d80 printf 0c050e60 HOSTread 0c050f20 HOSTunlink 0c050fe0 __TI_auto_init_nobinit_nopinit 0c0510a0 __TI_doflush 0c051160 __c6xabi_divu 0c051160 __divu 0c0513a0 strtok 0c051460 __TI_tls_init 0c051520 HOSTclose 0c0515c0 __TI_cleanup 0c051660 __TI_rd_ok 0c051700 __c6xabi_remu 0c051700 __remu 0c051840 finddevice 0c0518e0 memcpy 0c051980 strspn 0c051a20 __TI_readmsg 0c051aa0 __c6xabi_llshl 0c051b20 _c_int00 0c051ba0 fclose 0c051c20 strncpy 0c051ca0 evmI2CInit 0c051d20 remove 0c051d20 unlink 0c051da0 __TI_frcmpyd_div 0c051e00 __TI_writemsg 0c051e58 C$$IO$$ 0c051e60 __c6xabi_llshru 0c051ec0 _subcull 0c051f20 lseek 0c051f80 memccpy 0c051fe0 memcmp 0c052040 read 0c0520a0 strcmp 0c052100 strcspn 0c052160 write 0c0521c0 __c6xabi_isinf 0c052240 _args_main 0c0522c0 strlen 0c052300 vsprintf 0c052340 wcslen 0c052380 __c6xabi_errno_addr 0c0523a0 __c6xabi_pop_rts 0c0523a0 __pop_rts 0c0523c0 __c6xabi_push_rts 0c0523c0 __push_rts 0c0523e0 _nop 0c052460 _signbit 0c052480 _system_post_cinit 0c0524a0 _system_pre_init 0c0524c0 C$$EXIT 0c0524c0 abort 0c0524e0 CSL_tscEnable 0c0524e8 CSL_tscRead 0c052500 __TI_decompress_none 0c052520 __TI_decompress_rle24 0c052540 fgets 0c052560 _stack 0c05c560 __TI_STACK_END 0c05d398 _ctypes_ 0c05de20 gDeviceNandBBlist 0c05e23c gDeviceNand 0c05e274 gDeviceNor 0c05e2ac gDeviceEeprom0 0c05e2e4 gDeviceEeprom1 0c05e320 emac_port_mode 0c05e328 _ftable 0c05e508 _stream 0c05e5a8 _device 0c05e620 input_file_name 0c05e648 __TI_cleanup_ptr 0c05e64c __TI_dtors_ptr 0c05e650 __TI_enable_exit_profile_output 0c05e65c _lock 0c05e660 _unlock 0c05e664 __TI_ft_end 0c05e668 __errno 0c05e668 errno 0c05e678 __TI_tmpnams 0c05e7b8 gI2cBlock 0c05e800 parmbuf 0c05e808 __CIOBUF_ 0c05e970 __TI_STATIC_BASE 0c05e970 platform_errno 0c05e974 platform_init_return_code 0c05eacc __TI_Handler_Table_Base 0c05ead4 __TI_Handler_Table_Limit 0c05ead8 __TI_CINIT_Base 0c05eb00 __TI_CINIT_Limit ffffffff __TI_pprof_out_hndl ffffffff __TI_prof_data_size ffffffff __TI_prof_data_start ffffffff __binit__ ffffffff __c_args__ ffffffff binit UNDEFED __TI_TLS_INIT_Base UNDEFED __TI_TLS_INIT_Limit [233 symbols]
I hope this helps!
Regards
Shankari G
Hi,
You can change the sections and re-direct to the memory according to your needs.
DDR3 is the one you have to refer to and focus on
--
For more details refer to the following docs.
https://www.ti.com/lit/ug/spru187u/spru187u.pdf
https://www.ti.com/lit/ug/spru186w/spru186w.pdf
--
Regards
Shankari G