NO INIT of external memory Variables in CCES
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.
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
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
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];
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
Please log in to reply.