Hi,
I've been trying to get the HUA demo from MCSDK running on my C6678 DSP board through CCS6, the project can compile but has the following error:
C66xx_0: File Loader: Verification failed: Values at address 0x000000008143E020 do not match Please verify target memory and memory map.
C66xx_0: GEL: File: C:\ti\mcsdk_2_01_02_06\demos\hua\evmc6678l\Debug\hua_evmc6678l.out: a data verification error occurred, file load failed.
I think it has something to do with our memory map configuration, here is what we have in our evm.cfg file:
Program.sectMap[".vecs"] = {loadSegment: "MSMCSRAM", loadAlign:8}; /* CSL per core data structures */
Program.sectMap[".switch"] = {loadSegment: "MSMCSRAM", loadAlign:8}; /* CSL per core data structures */
Program.sectMap[".cio"] = {loadSegment: "MSMCSRAM", loadAlign:8}; /* per core data structures */
Program.sectMap[".args"] = {loadSegment: "MSMCSRAM", loadAlign:8}; /* per core data structures */
Program.sectMap[".cppi"] = {loadSegment: "MSMCSRAM", loadAlign:16}; /* per core data structures */
Program.sectMap[".far:NDK_OBJMEM"]= {loadSegment: "MSMCSRAM", loadAlign:16}; /* NDK structures */
Program.sectMap[".nimu_eth_ll2"]= {loadSegment: "MSMCSRAM", loadAlign:16}; /* per core data structures */
Program.sectMap[".qmss"] = {loadSegment: "MSMCSRAM", loadAlign:16}; /* per core data structures */
Program.sectMap[".resmgr_memregion"] = {loadSegment: "MSMCSRAM", loadAlign:128}; /* QMSS descriptors region */
Program.sectMap[".resmgr_handles"] = {loadSegment: "MSMCSRAM", loadAlign:16}; /* CPPI/QMSS/PA Handles */
Program.sectMap[".resmgr_pa"] = {loadSegment: "MSMCSRAM", loadAlign:8}; /* PA Memory */
Program.sectMap[".stack"] = "MSMCSRAM";
Program.sectMap[".bss"] = "DDR3"; /* BSS. .neardata and .rodata are GROUPED */
Program.sectMap[".neardata"] = "DDR3";
Program.sectMap[".rodata"] = "DDR3";
Program.sectMap["systemHeap"] = {loadSegment: "DDR3", loadAlign:128}; /* XDC Heap .. eg Memory_alloc () */
Program.sectMap[".far"] = "DDR3";
Program.sectMap[".cinit"] = "DDR3";
Program.sectMap[".const"] = "DDR3";
Program.sectMap[".text"] = "DDR3";
Program.sectMap[".code"] = "DDR3";
Program.sectMap[".data"] = "DDR3";
Program.sectMap[".sysmem"] = "DDR3"; /* Malloc memory area */
Program.sectMap["platform_lib"] = "DDR3"; /* Platform Library data structures */
Program.sectMap[".gBuffer"] = {loadSegment: "DDR3", loadAlign:32}; /* Upload buffer used by the Web Server */
Program.sectMap[".far:WEBDATA"] = {loadSegment: "DDR3", loadAlign: 32}; /* Web Pages and web server structures */
/* For newer BIOS 6.32 Program.sectMap[".far:taskStackSection"]= "MSMCSRAM"; */ /* BIOS task stacks */
Program.sectMap[".far:taskStackSection"]= "MSMCSRAM";
Program.sectMap[".far:NDK_PACKETMEM"]= {loadSegment: "MSMCSRAM", loadAlign: 128}; /* NDK Buffer Pool */
Also this is an excerpt from the generated linker.cmd file. The length of the DDR3 regions seems too long since there are 8 cores and not enough room from 0x80000000 to 0xf0000000:
MEMORY
{
L2SRAM (RWX) : org = 0x800000, len = 0x80000
MSMCSRAM (RWX) : org = 0xc000000, len = 0x400000
DDR3 : org = 0x80000000, len = 0x20000000
}
We have other projects debugging successfully, so it shouldn't be an issue with the hardware setup.
Thanks,
Shang