I apologize for what is probably a simple question, but I am having trouble understanding the boot process for the E300 board. I assume that when the board is powered up the EEPROM or OTP or SRAM tells the FPGA to get the program data from the SPI Flash, and I read something about the code being located at 0x20004000.
So as I understand it the basic steps are:
- Apply power
- FPGA configures itself into a E3 Core Complex from the SPI Flash since the FPGA itself is volatile
- The E3 Core then goes to 0x20004000 and looks for a program (say, a “Hello World” program for example)
- The program then starts to run
Is that even remotely correct? And what are the specific details I am missing from the process?
Thanks in advance!