I've implemented a flash programmer for the EPCS1 serial flash, attached to a Cyclone, using the Serial Flash Loader entity. Programming and reading the flash works, but how do I create the data for programming it? I've programmed it with a Byte Blaster and a JIC file from within Quartus and comparing the content which was flashed with a RBF file, it looks like every byte is just mirrored (from LSB to MSB instead of MSB to LSB) and some bits at the beginning are different. Is it safe to use this RBF file for flashing the flash?
Another question: I would like to compare the flash content with some external file whenever the system starts, if an update is needed. Would be good, if I could just read some checksum or date signature inside the flash (currently I'm writing my own checksum at the last block of the flash). Is there a documentation of the RBF file format?