AN 886: Intel® Agilex™ SoC器件设计指南

ID 683634
日期 1/22/2021
Public
文档目录

9.6. 选择Bootloader软件

典型的 Intel® Agilex™ SoC HPS引导流程如下图所示:

图 15. 典型的 Intel® Agilex™ SoC引导流程

引导加载程序(bootloader)软件是软件开发平台的重要组件之一。引导加载程序初始化系统之后,会加载并将控制传递到下一个引导映像,该映像可以是操作系统,也可以是裸机应程序。

Intel® Agilex™ SoC引导加载程序软件分为两个不同阶段:
  • First Stage Bootloader (FSBL) – 由SDM从FPGA配置比特流加载到HPS侧片上存储器:
    • 提供必要的初始硬件设置以配置HPS
    • 软件功能,以控制flash和HPS外设组件
    • 实用工具,使能早期调试和故障排除
  • Second Stage Bootloader (SSBL) –由FSBL加载到DDRAM中,并且可能具有比FSBL更大的能力,例如:网络访问,命令行接口和脚本支持。
针对 Intel® Agilex™ 器件使能的多个引导加载程序有:
  • U-Boot Bootloader:继承了开源领域多个可用功能,并且受到Linux* OS用户亲睐。U-Boot引导加载程序 由GPL许可管理。
  • UEFI Bootloader:功能丰富并且受RTOS用户欢迎,由开源BSD式许可管理。
  • ATF (ARM Trusted Firmware) Bootloader: 由UEFI使用,并仅提供第一阶段引导加载程序。其使用BSD式许可,可用于直接加载裸机应用程序,而无需SSBL。

指南:要为软件开发平台选择正确的引导加载程序,就需要使用最新版本,并熟悉GPL和开源BSD许可,同时考虑最符合需要的许可条款。

典型的HPS系统有数百个寄存器,必须根据MPU子系统,片上网络互连组件,DDRAM存储器,flash引导源和外设接口的给定配置设置这些寄存器。

指南:需要给定数量的初始设置,但不建议从scratch写入引导加载器。所提供的引导加载程序选项包含HPS各部分的最佳和默认配置设置。