ΣSigmaStudio Ask AI Русский Log in

I want to memory copy L1 to DDR and DDR to L1 in 21569

Processors & DSP nandar Jun 21, 2021 00:00 2 replies Original on forum ↗
Subscribe
nandar Question
Jun 21, 2021 00:00

Hi

MemoryCopyListMode_21569 example project is copying memory from L1 to L1.

I want to copy DDR from L1 and L1 from DDR.

"Byte directive not allowed in a word-addressed section". error has occurred when declaring memory for DDR.
The following is a DDR declaration in section.
DSTALIGN section ("seg_swco") static uint8_t DestDataBuf [ADI_CACHE_ROUND_UP_SIZE (MEMCOPY_BUF_SIZE, uint8_t)];

Can you tell me how to solve it? Thank you.

err.PNG
err.PNG
CWest Reply
Jun 22, 2021 00:00

Hi Nandar,

I think the sections you're looking to map to are "seg_int_data" for L1 and "seg_sdram" for DDR. "seg_swco" is meant for short word code instructions compiled using the '-short-word-code' switch, which is why you're encountering an error trying to map byte-addressed data types there. You'll also need to make sure you've enabled 'Use external memory (SDRAM)' in the LDF section of the Startup Code/LDF add-in to map to the "seg_sdram" section.

You can find more information on the default LDF sections at "CrossCore® Embedded Studio 2.9.4 > SHARC® Development Tools Documentation > Linker and Utilities Manual > Linker > Link Target Description > Specifying the Memory Map > Default Memory Segments and Sections for SHARC Processors" in the CCES help.

Best,

Calum

nandar Reply
Jun 24, 2021 00:00

Hi Calum,

I set the SDRAM in the ldf file, so I was able to solve it.

Thank you very much.