For a research project I want to write into a block in Simulink from Matlab. The block is filled with a bitmap which should contain 2 million 32 bit values. This should then be splitted into 32k of 32 bit values so that it can be passed to the FPGA using "XDATA Write".
My hardware is a DS1005 card from dSPACE with an DS5203 (SX95) board also from dSPACE.
I tried using a "constant" block with 2 million zeros for initialization and a "selector" block with a 1:32000 input vector for selection. Here you can see my implementation:
Simulating and compiling works as intended which results in a 32000 entry long vector which is passed to the FPGA. But when trying to upload the program to the dSPACE, the error "Program cannot be executed in real-time. (12)" which seems to be something like out of resources...
But when I just create a constant block with 2 million zeros it works. Also limiting the "BufferData" to 100.000 and "Constant 1" to 100 compiles and uploads too. So, the implementation I made doesn't seem to be effective. Here you can see the settings of my "Selector1" block:

Are there better options to split the 2 million entry vector into sub vectors? Did I set up something wrong? Is there a kind of "Vector Split" block or similar which can handle that amount of data? Is there even a better option for that case probably for the "BufferData" constant or the passing of the data to the FPGA?
I would be glad for any help!
EDIT:
I simplified the splitting using a "MATLAB function" block:
With the following code:
function y = fcn(u)
y = u(1:32000);
end
Still the same error message...