Hi everyone,One of our PCB's is using removable flash adapters, where a flash is placed which holds the firmware for our FPGA's. This is done to have a generic PCB where you could easily switch between different FPGA designs and therefore different functions of the PCB itself. To program the flash with the .sof file we usually use the Altera Byteblaster. But we regulary have requests from our suppliers for a binary file to program the flash with a third party programmer. Now there are different file formats from Altera which seem to be raw binary files like .rpd, .rbf or .hexout files. But all of them seem to have more than only firmware data to have included. Which means, if I load them to the flash like they are, the FPGA design won't work. My target now is to have a binary file after generation with Quartus which holds the design data in the way as it can be downloaded to a flash by a third party programmer. Is there any documentation or does anyone have experience with this topic?
Just found the tool and tried it. But the result looks completely different from the reference I have. If I compare my binary reference file with the one generated by sof2flash there is a significant difference. First of all the generated .flash file is a text file and not binary. The file shows binary values but they seem to be completely different from the ones i have in my binary reference file. The sof2flash tool description says: "The sof2flash utility takes an FPGA configuration file in SOF format and translates it to a FLASH file that can be programmed into the flash memory connected to an Altera FPGA". This lets me assume that the genereated file could directly be programmed to the flash. But with the file I have now, this is definitively not possible.My reference is a binary file which I have read from a flash where the firmware was loaded with Quartus programmer.
Why does the .flash file have to look like what you've got? It is a binary file. When you create the .flash file, you specify what address it should be placed in based on your Qsys system design or through the serial or parallel flash loader IPs.