In my design I am using an EP4CE10E22 (Cyclone IV) FPGA and a (Micron?) M25P40 chip for memory configuration.
I have two questions:
1) Is the memory chip suitable for CycloneIV?
2) How can I understand what the size of the memory chip should be?
If you are asking about whether the M25P40 memory capacity can fit the EP4CE10E22 (Cyclone IV) bitstream size, please refer to "Example 1" from the EPCS datasheet. The "Example 1" shows how you can calculate(estimate) the FPGA compress .rbf size to determine which EPCS device is suitable for FPGA device. The same calculation concept is applicable for other SPI flash too.
Refer to Table 8–2 for the uncompressed Raw Binary File (.rbf) sizes for Cyclone IV devices from the Cyclone IV handbook in the following link:
Check the following link for Micron's flash compatibility with Intel FPGAs. You will need to choose the Flash with a high enough capacity so that the design configuration data can fit into it.
The Cyclone IV E device has a maximum uncompressed configuration file as stated below : EP4CE10 2,944,088 Mbits
So, the m25P40 with 4Mbits should be more than enough to store uncompressed configuration data easily.