首页 > 技术知识 > 正文

目前网络上的许多项目都是2019 年之前的版本,使用2022.1 版遇到各种小问题。这里使用一下petalinux工具。vivado,vitis HLS 都安装在windows 下,而petalinux 必须安装在linux 下,尝试安装在windows 10的wsl 上失败了 只能找个ubuntu PC 来安装。

petalinux 是什么?

PetaLinux 是一套直接构建在 Yocto 项目顶层的定制工具,用于实现与赛灵思平台的集成。因此,在某种意义上 PetaLinux 仍属于 Yocto。但赛灵思更进一步,通过提供一套额外的工具,简化了开发流程,使新手使用起来及其方便。

petalinux是xilinx zynq 的嵌入式Linux 软件开发工具(SDK)。它用来裁剪和生成zynq’ 的操作系统。他并不是linux 本身。

petalinux 包含了下面几部分:

Yocto Extensible SDK (eSDK )

XSCT (Xilinx Software Command-Line Tool) and toolchains

PetaLinux CLI tools

petalinux 的命令工具

petalinux-create

petalinux-config

petalinux-build

petalinux-util

petalinux-package

petalinux-upgrade

petalinux-devtool

petalinux-boot

petalinux 的安装

可以将vivado和petalinux 按照在同一个电脑上,也可以分开安装。我目前是在windows PC上安装了vivado,vitis 工具,而在另外一个ubuntu 电脑上安装了petalinux工具。安装没有太多的障碍,只是缺什么,装什么就可以了。

petallinux 设计流程

准备工作

为linux 配建硬件平台

开始做petalinux 设计之前,需要使用vivado 工具完成zynq 的硬件设计。完成以后,点击 File- ->Export–>Export Hardware,点击 OK。导出硬件设计文件XXX.xsa,

注意:以前的文件扩展名是hdf。老版本的项目需要升级成新的版本,输出xsa文件

执行下列命令,使 PetaLinux 工具可以使用

$source ~/petalinux/2022.1/settings.sh

建立petalinux新项目

建立一个petalinux_proj 文件夹,进入该文件夹

$ petalinux-create –type project –template –name

其中:可以选择

versal (for Versal ACAP)

zynqMP (for Zynq UltraScale+ MPSoC)

zynq (for Zynq-7000 devices)

microblaze (for MicroBlaze? processor)

是你构建文件的名称

例如:

petalinux-create –type project –template zynq –name z7nano

导入硬件平台

2019 年前的版本使用system.hdf 文件,而以后的版本使用system.xsa 文件,这需要将老版本的项目转换称为新版本的项目,或者重新建立一个项目,File- ->Export–>Export Hardware,点击 OK,产生xsa 文件

petalinux-config –get-hw-description

如果xsa 文件在当前目录中,输入下面的命令:

$ petalinux-config –get-hw-description=.

运行了一段时间后,出现system configuration menu.

构建image

$ petalinux-build 完成之后,images –linux 目录中包含了下列文件:

BOOT.bin 文件打包

使用petalinux-package“命令

petalinux-package –boot –fsbl ./images/linux/zynqmp_fsbl.elf –u-boot –force

使用“vivado“工具

准备sd卡

可以参照下面的文章

How to format SD card for SD boot

首先,linux 的boot sdcard 需要有两个分区:

Boot 分区

Root 分区

其次,要将BOOT.BIN image.ul 和boot.scr(2020.1 和以后版本)。如果简单地将BOOT.BIN和image.ul 拷贝到Boot 分区是不行的。这和z7nano 的文档有区别。国内公司的文档基本停留在2019 年之前。更新太慢。给学习者带来不便。

我简单粗暴地将images 中的内容都拷贝到boot 分区。插入开发板成功了。

审核编辑:刘清

猜你喜欢