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 等常用功能

相关推荐
s09071366 天前
Zynq 7000使用NAND Flash启动UBIFS文件系统全攻略(基于PetaLinux 2017.4)
zynq·petalinux·ubifs·nand启动
Soari15 天前
Ziggo-CaaS-Switch软件配置: undefined reference to pthread_create
java·开发语言·fpga开发·tsn·zynq·交换机配置
s090713615 天前
ZYNQ 软硬件协同踩坑日记:PS写BRAM后,PL端连续4个地址读出相同数据的原因与解决办法
fpga开发·zynq·硬件设计
weixin_4509072818 天前
[ZYNQ Linux] 端侧AI模型部署(DPU)
zynq
s090713619 天前
ZYNQ7000 AXI DMA 接收中断(S2MM_introut)全解析:从硬件原理到Linux驱动开发
linux·驱动开发·dma·zynq
日拱一卒的小田1 个月前
ZYNQ学习笔记1-裸机-PS端中断配置、IO配置及PS/PL AXI交互
io·zynq·中断
s09071361 个月前
Zynq-7000 PetaLinux 千兆网卡 Link UP 但无法 Ping 通的终极排查与解决(以 KSZ9031 为例)
linux·skew·zynq·ksz9031·ping不通
weixin_450907281 个月前
[ZYNQ Linux] V4L2视频驱动
zynq
s09071361 个月前
【Zynq 进阶一】深度解析 PetaLinux 存储布局:NAND Flash 分区与 DDR 内存分配全攻略
linux·fpga开发·设备树·zynq·nand flash启动·flash分区
s09071361 个月前
【Zynq开发避坑指南】PetaLinux核心配置与 Vivado DMA 地址分配深度解析
内存·zynq·petalinux·地址映射