I am working on a consumer product development. We have decided to use the Spartan 3 FPGA. But to keep the cost down, we want to use a very small PROM on the board. How could I program the Spartan 3 FPGA with a tiny PROM?
I was thinking of creating a compressed bitstream for the small processor interface logic that will take hardly 5 to 10% of the slices(that should lead to good compression ratios so as to fit in a tiny PROM) and then use this logic to self configure the new bitstream file from the processor interface and the FPGA having an external interface to talk to itself using selectMAP port (since Spartan 3 does not have any ICAP module).
But I have many questions:
- First of all, does Spartan 3 at all support self/dynamic reconfiguation as my microprocessor interface inside the FPGA has to keep working to configure the FPGA? So Spartan3 partial reconfiguration should not affect my functionality.
- I know there is a option called compressed bitstream. Is it possible to use compressed bitstream from the PROM at the powerup? I did not notice any decompression engine in the spart3 documentation. I need to use the compressed bitstream at the startup because I want to use the small PROM, but the partial reconfiguraton requires that very first configuration should be of full bit stream. So I need to have a tiny bitstream that can be loaded in the PROM, and used by the Spartan3 for the first time configuration.
Thank you ~Naveen