Zynq7020 petalinux 基础篇(1)- 工程搭建

1.开发背景

Zynq7020 有 2 个 A9 核,支持运行 Linux 系统和 FreeRTOS 等,这里主要使用 Linux,利用Linux 的开发生态减少复杂的外设开发。

2.开发需求

实现工程搭建和工程编译导出

3.开发环境

Zynq7020 + Ubuntu18.04 + Vivado2020.2 + petalinux2020.2

4.实现步骤

注意,这里默认你有可用的 Vivado 导出硬件 .xsa 文件

4.1 工程创建

bash 复制代码
# 创建工程模版 工程模版名 zynq7020 后面的指令需要进到这个工作区运行
petalinux-create -t project --template zynq -n zynq7020
cd zynq7020

4.2 硬件导入

导入 .xsa 文件,指定路径即可,如果只是配置工程,则不需要制定文件文件

bash 复制代码
# 导入硬件文件 zynq_wrapper.xsa
petalinux-config --get-hw-description ./zynq_wrapper.xsa

4.3 配置工程

工程配置都是基于 make menuconfig 那种界面实现的,配置就完事了,一般保持默认即可,根据自己的板卡执行配置。

以下两个路径可以从官方下载原始文件,一般开发板资料也有,配置指定路径既可,取消 Enable Network sstate feeds,默认的可能下载比较慢。

-> Yocto Settings -> Add pre-mirror url

-> Yocto Settings -> Local sstate feeds settings

bash 复制代码
# 配置工程
petalinux-config

# 配置uboot
petalinux-config --c u-boot

# 配置 kernel
petalinux-config -c kernel

# 配置 rootfs
petalinux-config -c rootfs

4.4 编译工程

bash 复制代码
# 编译全工程
petalinux-build

# 编译引导
petalinux-build -c bootloader

# 编译 uboot
petalinux-build -c u-boot

# 编译 kernel
petalinux-build -c kernel

# 编译 rootfs
petalinux-build -c rootfs

16 核编译的快感,nice

关键文件:

zynq_fsbl.elf:第一阶段引导文件,主要职责是把 ddr 搞起来,有大内存就好办事了

u-boot.elf:第二阶段启动文件,主要职责是启动内核,可以操作一般文件了

system.bit:fpga 文件,fpga 异构体独有的文件,就是 fpga 程序,推荐第二阶段加载

boot.scr:引导脚本,uboot 启动后使用这个脚本配置后续启动项

zImage:内核镜像,包含众多的外设驱动功能和系统调度

system.dtb:设备树二进制文件,主要描述了板卡外设细节

rootfs.tar.gz:文件系统,应用类软件功能,包含 ssh 等常用功能

相关推荐
s09071363 天前
ZYNQ 中 AXI BRAM 的使用详细的说明。
fpga开发·zynq
s09071363 天前
Xilinx FPGA 中ADC 数据下变频+ CIC 滤波
算法·fpga开发·fpga·zynq
s09071366 天前
使用xilinx的fir IP核实现LFM信号匹配滤波的详细过程及原理
fpga开发·xilinx·fir·zynq·脉冲压缩
s09071367 天前
ZYNQ7000关于JTAG电路设计注意事项
fpga开发·zynq·硬件设计设计
s09071367 天前
ZYNQ几种boot模式下sdk文件区别
fpga开发·sdk·zynq
s09071367 天前
Xilinx 7系列FPGA的FFT IP核简介
fpga开发·zynq·fft
brave and determined1 个月前
可编程逻辑器件学习(day22):“让ARM穿上FPGA的马甲“:赛灵思Zynq的命名哲学与技术革命
arm开发·嵌入式硬件·fpga开发·zynq·fpga设计·嵌入式设计·fpga开发流程
碰大点2 个月前
第8章 zynq uboot更新系统镜像并引导启动和个人心得
驱动开发·fpga开发·uboot·zynq
weixin_450907282 个月前
第六章 QT和OPENCV交叉编译开发环境以及QT远程调试
zynq