赞
踩
注意点1:如果要固化的程序包含PL的逻辑功能,则需要在连接到SDK之前生成Bitstream文件。
固化文件是在SDK环境下生成,流程如下:
1、生成FSBL
FSBL 是一个二级引导程序,完成 MIO 的分配、时钟、PLL、DDR 控制器初始化、SD、QSPI 控制器初始化,通过启动模式查找 bitstream 配置 FPGA,然后搜索用户程序加载到 DDR,最后交接给应用程序执行。
1)新建一个名为FSBL的APP,模版选择ZYNQ FSBL;
2) APP生成后在fsbl_debug.h文件中添加调试宏定义FSBL_DEBUG_INFO,可以在启动时输出FSBL的一些状态信息,有利于调试。
3)修改后保存,SDK在保存后会自动编译,生成fsbl.elf文件;
2、创建BOOT文件
1)选择要下载的APP工程,右键选择Create Boot Image;
2)弹出的窗口中可以看到生成的 BIF 文件路径,BIF 文件是生成 BOOT 文件的配置文件,还有生成的BOOT.bin文件路径,BOOT.bin文件使我们需要的启动文件,可以放到SD卡启动,也可以烧写到QSPI FLASH。
3)在 Boot image partitions 列表中有要合成的文件,第一个文件一定是 bootloader 文件,就是上面生成的 fsbl.elf 文件,第二个文件是 FPGA 配置文件 bitstream,第三个是应用程序,在本实验中为 hello.elf,点击 Create Image 生成。
4)生成的BOOT.bin文件在第2)步的文件路径中能找见。
将固化文件烧写到QSPI FLASH的方法有三种,第一种是通过SDK软件进行烧写,第二种是通过vivado软件进行烧写,第三种是使用批处理文件快速烧写QSPI;步骤分别如下:
通过SDK软件烧写QSPI FLASH的流程如下:
1)在 SDK 菜单 Xilinx -> Program Flash
2)Hardware Platform 选择最新的,Image FIle 文件选择要烧写的 BOOT.bin,FSBL file 选择生成 的 fsbl.elf,Flash Type 选择 qspi_dual_parallel
3)点击program等待烧写完成。
vivado下烧写QSPI FLASH
1)在 HARDWARE MANGER 下选择器件,右键 Add Configuration Memory Device
2)选择对应的厂家、类型、以及width以便选择正确的QSPI .
3) 右键选择program configuration Memroy Device
4)选择要烧写的BOOT.bin文件以及fsbl.elf文件,点击OK,进行烧写。
使用批处理文件快速烧写QSPI流程如下:
1)新建一个program_qspi.txt文本文件,扩展名修改为bat。
2)新建的文件内容填写如下:
set XIL CSE ZYNQ DISPLAY UBOOT MESSAGES = 1
call c:\Xilinx\SDK\2017.4\bin\program_flash -f BOOT.bin -offset 0 -flash_type qspi_dual_parallel -fsbl.elf -verify
pause
上述标红部分为我们工具路径,按照安装路径适当修改,-f为要烧写的文件,-fsbl为要烧写使用的fsbl文件,-verify为校验选项。
2)把要烧录的BOOT.bin fsbl.elf program_qspi.bat文件放在一起
3)插上JTAG线后上电,双击bat文件即可烧写flash。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。