Arria 10 SoC引导用户指南

ID 683735
日期 10/30/2015
Public
文档目录

1.5.2. 使用QSPI的引导加载器生成实例

  1. 开启SoC EDS嵌入式command shell(命令行):
    $ ~/altera/15.0/embedded/embedded_command_shell.sh
  2. 从SoC EDS嵌入式command shell(命令行)开启BSP Editor工具:
    $ bsp-editor
  3. 选择File > New HPS BPS在窗口中创建新的HPS BSP且进行如下配置:
    1. Preloader settings目录中指定一个硬件HPS交付文件夹。
    2. BSP target directory文本框中指定引导加载器源文件夹。
    3. BSP Settings File name文本框中指定引导加载器配置和设置文件位置。
    图 23. 选择New BSP Editor Window
    图 24. 配置New BSP设置
  4. 完成域设置并在main菜单标签中指定源boot_device (QSPI)后,点击OK
    注: .rbf文件仅应用于从SD/MMC引导。在QSPI配置时, 无需编辑这些文本框,但必须通过转换脚本创建单一的.rbf文件。
    图 25. 在BSP Editor窗口中选择从QSPI器件引导
  5. 选择Generate,则引导加载器和U-Boot源文件被创建到您指定的作为BSP目标目录的文件夹中。
  6. 移至U-Boot引导加载器源文件夹并构建映像。
    $ cd ~/a10_soc_devkit_ghrd/software/arria10_uboot_bsp
    $ make

    以下项目在~/a10_soc_devkit_ghrd/software/arria10_uboot_bsp/文件夹中生成:

    表 5.  引导加载器可执行映像
    文件 说明
    u-boot_w_dtb.bin 基于器件树二进制的U-boot可执行文件
    uboot_w_dtb-mkpimage.bin 基于mkpimage header的U-boot可执行文件
    注: 如果您选择UEFI作为第二阶段引导加载器的源,请参阅“附录B:Building the UEFI Boot Loader”部分的该信息点。
  7. 从QSPI引导时,需要一个单一的.rbf文件,其中包含FPGA 内核架构配置和 I/O环设置。该要求不同于从SD/MMC引导时需要各自的.rbf文件。通过键入以下内容,为嵌入的command shell(命令行)完成转换:
    $ ~/altera/15.0/embedded/embedded_command_shell.sh
    $ cd ~/a10_soc_devkit_ghrd/
    $ quartus_cpf -c -o bitstream_compression=on output_files/ghrd_10as066n2.sof output_files/ghrd_10as066n2.rbf

    由此在~/a10_soc_devkit_ghrd/output_files/文件夹中创建一个名为ghrd_10as066n2.rbf的FPGA架构和I/O环配置的组合文件。

  8. 在U-Boot软件能够加载FPGA映像文件前,它必须具有关于映像的信息,如,长度或CRC。通过从嵌入的command shell运行mkimage工具将信息传递到U-boot工具:
    $ ~/altera/15.0/embedded/embedded_command_shell.sh
    $ cd ~/a10_soc_devkit_ghrd/
    $ mkimage -A arm -T firmware -C none -O u-boot -a 0 -e 0 -n "A10 GHRD RBF" -d
    output_files/ghrd_10as066n2.rbf  output_files/ghrd_10as066n2.rbf.bin

    由此创建FPGA架构和I/O环配置的组合文件包裹在U-Boot头(header)中。 这个个已生成文件名为ghrd_10as066n2.rbf.bin并能在 ~/a10_soc_devkit_ghrd/output_files/ghrd_10as066n2.rbf.bin文件夹中找到。

  9. 使用HPS Flash Programmer写U-Boot, 器件树映像以及.rbf文件到QSPI 引导卡。输入HPS Flash Programmer的文件必须始终有一个.bin扩展。如果您的文件没有,则必须为它们重命名。通过键入以下命令,写U-Boot和器件树组合映像到QSPI中:
    $ ~/altera/15.0/embedded/embedded_command_shell.sh
    $ quartus_hps -c 1 -o PV ~/a10_soc_devkit_ghrd/software/arria10_uboot_bsp/uboot_w_dtb-mkpimage.bin

    该命令需要一两分钟完成。

  10. 键入以下命令,写.rbf文件到QSPI器件:
    $ ~/altera/15.0/embedded/embedded_command_shell.sh
    $ quartus_hps -c 1 -o PV -a 0x720000 ~/a10_soc_devkit_ghrd/output_files/ghrd_10as066n2.rbf.bin

    该命令可能需要45分钟完成。Altera推荐首先使用HPS Flash Programmer编程;然而,进一步更新时,则使用U-Boot控制台加快这些步骤的执行。

  11. 上电电路板。它将从QSPI引导并止于U-boot控制台。