Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Bringing-up SoC boards can be board dependent. Therefore, an overview introducing into the basic requirements to bring-up the board TEI0022 could be very helpful. To reach this goal this guide shows users with basic knowledge of computers, basic ideas of FPGAs, and Software Design Tools,
a detailed insight into the required steps to create the necessary files for booting the Hard Processor System (HPS) of an Intel Cyclone V SoC from an SD card.

...

Only the SD card build requires low level access to the SD card and can therefore only be performed in native Linux environment.

Software:

 - Intel® Quartus® Prime Lite - Version 18.1 build 625

 - Intel® SoC FPGA Embedded Development Suite (SoC EDS) - Version 18.1 build 625 - Extension of Quartus Prime lite

 - Linux Installation - As OS or as a Virtual Machine - Windows Subsystem for Linux is not suitable

////

Step 1 - Intel Quartus Project

...

Step 2 - Preloader/Bootloader generation

After the generation of the Intel Quartus project, it is necessary to handle the SoC booting. The boot process, according to the next figure, consists of several steps:

Scroll Title
anchorFigure_Boot_Overview
titleFigure Boot Overview


Scroll Ignore
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmltrue

draw.io Diagram
borderfalse
diagramNameFigure_Boot_Overview
simpleViewertrue
width
linksauto
tbstyletop
diagramDisplayName
lboxtrue
diagramWidth641
revision3


Scroll Only
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmltrue

Image Added


  • BootROM:

The BootROM is hard coded into the chip. Its purpose is to detect the selected boot source and to perform a minimal HPS setup. After that the preloader can be loaded into the On Chip RAM (OCRM) and can be executed.

  • Preloader:

While executing the preloader, a further HPS and SDRAM initialization can be done. After that, the bootloader can be loaded and executed.

  • Bootloader:

The bootloader loads the linux operating system (OS) or a bare metal application into the RAM and starts them. If a linux OS is loaded, the kernel is loaded which loads the linux root file system.


In the second step, the in the first step generated handoff folder is used to generate the preloader and the main bootloader. Refer to "Preloader/Bootloader generation" for more detailed information.

...