应用背景
由于ZYNQ去掉DDR之后,arm空间仅剩余256kbit(192+64),而FSBL占用资源过多,所以对FSBL的配置相关操作进行压缩裁剪,整合到静态链接库,可以用于无FSBL的固化启动。 在FPGA端不ENABLE DDR,在SDK端正常建立工程,补充内容如下:
适用板卡
适用于ZYNQ7系列板卡。
移动部分文件
将导入SDK的平台文件夹下的ps7_init.c和ps7_init.h移动到src
添加静态链接库
新建一个文件夹(可直接添加在src中)添加libno_ddr_boot.a,将no_ddr_boot.h添加到src中。
添加路径信息
点击properties,添加相关编译信息
编辑directories,
编辑libraries,
更改平台文件
在platform.c文件中进行如下更改,包含以下头文件:
进行ps7_init的初始化,在109行添加init_FPGA();
生成镜像文件
使用该版本无需添加系统生成,只需添加elf和bit文件。
烧写固化
可以新建fsbl工程进行引导固化,屏蔽DDR有关的操作,可手动定义一个宏定义用于调过该段,XPAR_PS7_DDR_0
编译工程,生成的fsbl的elf用于引导固化烧写flash。
在jtag模式下进行烧写下载。
工程文件和静态链接库
私信或公众号获取。