Forum Discussion
Altera_Forum
Honored Contributor
21 years agoProgrmming the EPCS device
Hi NIOS users / experts, Our application has to update the content of EPCS device (both FPGA and application codes) dynamically. Therefore I am looking for documentation about how we can u...
Altera_Forum
Honored Contributor
21 years ago --- Quote Start --- originally posted by kwokwong@Dec 14 2004, 09:00 AM ......
i figured out that the epcs.flash contains the fpga configuartion and i can write it to starting at address 0. (am i right?).
i figured out (i maybe wrong) that the epcs_controller_boot_rom.flash - as outout of elf2flash - the application including the boot loader (from flash to ram).
i have compared the content of the epcs.flash with data starting from address 0 and they match to each other.
however i could find the contents of epcs_controller_boot_rom.flash in the flash. --- Quote End --- Hi Kwok Wong, when you compile and link your software NIOS II IDE creates 'epcs_controller_boot_rom.flash'. This file contains only your software. This is done by blocks starting with 32-Bit Length and 32-bit-Load-Address followed by as many data words as specified in the Length field (in bytes). These blocks are placed in the data fields of the S-records. In my design, I chose the block containing RAM data, load it to the RAM address and jump to the address, the last block (with length field = 0) provided in its address field. (And it works). When you run Tools->Flash Programmer (in NIOS II IDE) you have to select a configuration, specified in your custom board design together with a reference designator (in the last drop down box). Obviously you have named this configuration 'epcs' because the file 'epcs.flash' is created. This file is much more larger and contains ( I think) all: boot loader, firmware and FPGA configuration. But I couldn't figure out how the original data are merged together. As cyclone devices accept compressed configuration data, is it possible that all data bytes are automatically compressed then ? Mike