Problem
How do I program an EPCS device with a SOF file and Nios® II ELF file using the Quartus® II Programmer?
Solution
The steps needed to generate an EPCS programming file are as follows:
- Open the Nios II Command Shell (Nios II SDK Shell for pre-6.0 versions)
- Create a flash file from a SOF using the following command:
- sof2flash --epcs --input=<sof file name>.sof --output=<flash output file name>.flash --verbose
- Create a flash file from the ELF using the following command:
- elf2flash --epcs --base=0x0 --end=<end address> --after=<sof2flash output file name>.flash --input=<elf file name>.elf --output=<flash output file name>.flash
- Convert the ELF flash file from SREC to HEX
- nios2-elf-objcopy –input-target srec –output-target ihex <elf2flash output file name>.flash <Hex output file name>.hex
The last step will generate a valid HEX file with the correct addressing for an EPCS device. You are now able to use the Quartus II SOF file and the newly created HEX file to create an EPCS programming file. To do this, in Quartus II go to the File menu and choose Convert Programming Files.