1.1. Boot Process
1.2. Boot Stages
1.3. Boot Devices
1.4. Second-Stage Boot Loader Support Package Generator Tool
1.5. Generating a Boot Loader with an External Flash Boot Device
1.6. Boot and FPGA Configuration
1.7. Boot Debugging
1.8. Appendix A: Building the UEFI Boot Loader
1.9. Revision History for Arria 10 SoC Boot User Guide
1.3.3. Booting From FPGA
In the figure below, the FPGA is configured first through one of its non-HPS configuration sources. The CSS block configures the FPGA fabric as well as the FPGA I/O, shared I/O and hard memory controller I/O. The HPS executes the second-stage boot loader from the FPGA. In this situation, the HPS should not be released from reset until the FPGA is powered on and programmed. Once the FPGA is in user mode and the HPS has been released from reset, the boot ROM code begins executing. The HPS boot ROM code executes the second-stage boot loader from the FPGA fabric over the HPS-to-FPGA bridge.
Figure 18. Boot From FPGA Flow