Question:
While allocating a buffer in SDRAM of '1,20,96,000' in size @32bit with a data file memory allocation failure error ea1144 is observed. How to resolve error ea1144?
Ex : .var arr[12096000]= {"../src/test.dat"};
Answer:
The ea1144 error occurs when the assembler runs out of host memory, i.e., the memory space available to 32-bit processes on Windows rather than memory available on the target. Unfortunately, the implementation of the .var directive is not really designed for large amounts of data as it holds the initializers in a list which is why host memory runs out much sooner than one would expect.
Therefore, we recommend converting the data file into binary format and including it into assembly like .inc/binary directive is more efficient in its use of host memory
.global Dumped_Input.;
Dumped_Input.:
.inc/binary "../src/Input_Data_21secs.bin";
.Dumped_Input..end: