Hi Jose,
The ability for the FPGA to store arrays is a feature to be used very carefully, with the drawback being that it takes up significant FPGA space to do so. In an application such as what you described, there are other recommended methods of implementation that could better suit your needs. I would suggest using the User Memory space (80 kB on the 1M Gate FPGA, 192 kB on the 3M Gate FPGA). This will allow different access methods with array-like functionality, such as Memory Reads/Writes and FIFOs, in order to better accomodate your range of elements that varies between 32 and 1024 elements. Generally speaking, the largest sized array I've heard you can have on a 1M gate FPGA is 50 (32-bit integers), although I haven't specifically tried to compile that.
I great resources to learn more about FIFO's is the tutorial "Developing High Speed Continuous Buffered Data Acquisition Applications with CompactRIO":
http://zone.ni.com/devzone/conceptd.nsf/webmain/8E999A74E43AC76186256F5E0068CFAC
Regards,
Jeff M.
Applications Engineering
National Instruments