Post Go back to editing

LDF problem on adsp-21584

Hello

I'm new to the LDF format for ADSP-21584.

I have an object "DataGlobal" that compiles without problems.

I would like to load this object in a shared memory block accessible from SHARC1 and SHARC2.

I've tried to create a SHARED_MEMORY segment in the LDF file

$EXTERNAL_OBJECTS = Common/DataGlobal.doj;

and below the MEMORY block I've added:

SHARED_MEMORY
{
OUTPUT($COMMAND_LINE_OUTPUT_DIRECTORY\SHARED.sm)

$OBJECTS_EXTERNAL = $EXTERNAL_OBJECTS;

SECTIONS
{
DataGlobal
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS($OBJECTS_EXTERNAL(DataGlobal))
} > mem_L2B1P3_bw
}
}

And inside PROCESSOR 21584_CORE_1 I've added:

LINK_AGAINST($COMMAND_LINE_OUTPUT_DIRECTORY\SHARED.sm)

This is obviously not enough since the linker still reports:

[Warning li2060] The following input section(s) that contain program code
and/or data have not been placed into the executable for processor '21584_CORE_1'
as there are no relevant commands specified in the LDF:

Common/DataGlobal.doj(DataGlobal)

Followed by [Error li1060]  The following symbols are referenced, but not mapped...

What am I missing?

Ideally I would like to create my own memory block inside the MEMORY block, something like 

MSData           { TYPE(BW RAM) START(0x20090000) END(0x20097fff) WIDTH(8) } 

But this only results in similar error codes.

Please advice on which steps are necessary to successfully map objects into memory - and how to enable sharing of memory segments between SHARC1 and SHARC2 on ADSP-21584.

Thanks 

Parents Reply Children