We are developing a product that will require placement of user data into the EPCQ flash alongside fpga bitstream. We would like to prevent bricking the device in case of power failure using a secondary permanent bitstream used solely for updating. How is the bitstream to be loaded determined? Can it be selected in Quartus software? Can it be selected after programming? I know one can add multiple sof and hex files to a pof file but the device loads if and only if there is a bitstream in the lowermost default location.
For EPCQ flash device, the configuration schema that you are going to use is Active Serial (AS). For AS, we can use serial flash loader IP to interact with Flash Memory (EPCQ) for new bitstream programming during user mode and etc. You may find more about Serial Flash Loader IP at link below:
However, if you want to achieve reconfiguration with a jumper or switches and having 2 different bitstream stored in a Flash Memory, it cannot be done with serial flash loader. Instead, you need to use fast passive parallel configuration scheme for that. To do that, you will need to use Parallel Flash Loader IP. You may find more about Parallel Flash Loader IP at link below:
Thank you for the answer. We have changed the desing a little bit though. We will try relying on the Remote Update IP instead for which I have created another question as it is unrelated to this one.
Thank you again