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

NO INIT of external memory Variables in CCES

Processors & DSP svmerlin Jan 16, 2018 00:00 4 replies Original on forum ↗
Subscribe
svmerlin Question
Jan 16, 2018 00:00

I am using CCES with the SC589 EZ Kit and performing very large FFT's in external memory. I would like to know how to create the large arrays in C++ without init so it doesn't take so long to download the exe.

ADIApproved Reply
Jan 22, 2018 00:00

Hello,

In case if you have data in files (eg: input1024_1024.dat as attached), you would include the data into array which is in external memory by using below method.

#pragma section("seg_sdram")

float uiCoeffBuff[LENGTH] = {
#include "coeff1024.dat"
} /*assuming that coeff1024.dat file is in same source folder*/

Best Regards,

Jithul

svmerlin Reply
Jan 23, 2018 00:00

Jithul,

Thanks, but that's not exactly what I was trying to accomplish. I want to declare a large array and have the array just left alone in memory and have no data put in it at load time, so that no time is spent loading it.

Secondly I am trying to allocate 2 large arrays and would like to place one in DDR3 memory block 0 and the other in DDR3 Block 1, two physically different memory chips on 2 different buses. How do I tell the linker to place them in the different chips?

Ed

ADIApproved Reply
Feb 8, 2018 00:00

You can refer to the attached .ldf file where i have created section called mysdram0 and mysdram1. Now you can declare the large array as mentioned below. Please let me know if this doesn't answer your query.

#pragma section ("mysdram0")
unsigned int arrayA[large_size];

#pragma section ("mysdram1")
unsigned int arrayB[large_size];

EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin