微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等
1、创建Vivado硬件平台
①在Windows系统下使用Vivado生成项目工程,生成.SDK后缀的文件
②创建了一个名为petalinux的目录,并在petalinux目录下创建了hdf目录用于存放这个sdk文件夹,将sdk文件夹拷贝到用户节目路下的petalinux/hdf目录
2、设置Petalinux环境变量
指令:source /opt/pkg/petalinux/2018.3/settings.sh
或者 指令: sptl (echo “alias sptl=‘source $PETALINUX/settings.sh’” >> ~/.bashrc)
//输入sptl就可以设置Petalinux的环境变量
3、创建petalinux工程
指令:petalinux-create -t project --template zynq -n ZYNQ_QSPI_FLASH
创建一个名为“ZYNQ_QSPI_FLASH”的Petalinux工程,
template参数表明创建的petalinux工程使用的平台模板,
此处的zynq表明使用的是zynq平台模板的petalinux工程,用于zynq-7000系列的芯片。
name参数(此处简写为“-n”)后接的是petalinux工程名,如此处的“ZYNQ_QSPI_FLASH”。
4、配置petalinux工程
4.1 petealinux-config
指令:cd ZYNQ_QSPI_FLASH /进入到petalinux工程目录下
指令:petalinux-config --get-hw-description …/hdf/Navigator_7020.sdk/ //导入hdf文件
4.2 Linux Components Selection
括号里的“*”表示为已使能配置。
第一项是程序固化实验中的fsbl.elf文件。
第二项是自动更新ps_init。
第三项是配置u-boot的来源。
第四项是linux-kernel的来源。
4.3 Auto Config Settings
Auto Config Settings指的是:选择是否使能fsbl、Devicetree、Kernel和u-boot的自动配置
4.4 Subsystem AUTO Hardware Settings
根据hdf文件的信息自动配置的各个外设,基本上为默认设置。
“Serial Settings”配置项用于配置开发板的调试串口和串口波特率等参数。
4.5 Advanced bootable images storage Settings
配置启动引导镜像和内核镜像的存储媒介
Advanced bootable images storage Settings——boot image settings——image storage media——primary flash
Flash Settings
设置Flash分区中的容量大小,一般保持默认即可
5、配置Linux内核
指令:petalinux-config -c kernel
6、配置Linux根文件系统
指令:petalinux-config -c rootfs
7、配置设备树文件
//使用vi命令打开system-user.dtsi文件,如下所示:
指令:vi project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi
8、编译Petalinux工程
指令:petalinux-build
//该命令将生成设备树DTB文件、fsbl文件、U-Boot文件,Linux内核和根文件系统映像。
编译完成后,生成的映像将位于工程的images目录下
9、制作BOOT.BIN启动文件
petalinux-package --boot命令生成可引导映像,该映像可直接与Zynq系列设备(包括Zynq-7000和Zynq UltraScale + MPSoC)或基于MicroBlaze的FPGA设计一起使用。对于Zynq系列设备,可引导格式为BOOT.BIN,可以从SD卡引导。对于基于MicroBlaze的设计,默认格式为MCS PROM文件,适用于通过Vivado或其他PROM编程器进行编程
ZYNQ的启动文件BOOT.BIN一般包含fsbl文件、bitstream文件和uboot文件。
使用下面命令可生成BOOT.BIN文件:
指令:petalinux-package --boot --fsbl --fpga --u-boot --force
petalinux-package命令将PetaLinux项目打包为适合部署的格式,
其中“petalinux-package --boot”命令生成可引导映像
选项“–fsbl”用于指定fsbl镜像文件所在位置,后面接文件对应的路径信息,
如果不指定文件位置,默认对应的是images/linux/zynq_fsbl.elf;
选项“–fpga”用于指定bitstream文件所在位置,后面接该文件对应的路径信息,
默认对应的是images/linux/system.bit;
选项“–u-boot”用于指定U-Boot镜像所在位置,后面接该文件所在路径信息,
默认为images/linux/u-boot.elf。
10、vidado的SDK软件下载至flash
ZYNQ开发(八)Petaliunx的设计流程(QSPI Flash启动)
于 2022-01-11 15:11:41 首次发布