初试 xilinx petalinux (2022.1)

Posted 姚家湾

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初试 xilinx petalinux (2022.1)相关的知识,希望对你有一定的参考价值。

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

本文件参考《PetaLinux Tools Documentation: Reference Guide (UG1144)

petalinux 是什么?

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

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

petalinux 包含了下面几部分:

  1. Yocto Extensible SDK (eSDK )
  2. XSCT (Xilinx Software Command-Line Tool) and toolchains
  3. PetaLinux CLI tools

petalinux 的命令工具

  1. petalinux-create
  2. petalinux-config
  3. petalinux-build
  4. petalinux-util
  5. petalinux-package
  6. petalinux-upgrade
  7. petalinux-devtool
  8. petalinux-boot

petalinux 的安装

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

petallinux 设计流程

准备工作

  1. 为linux 配建硬件平台

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

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

  1. 执行下列命令,使 PetaLinux 工具可以使用
$source ~/petalinux/2022.1/settings.sh

建立petalinux新项目

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

$ petalinux-create --type project --template <PLATFORM> --name <PROJECT_NAME>

其中:<PLATFORM>可以选择

  1. versal (for Versal ACAP)
  2. zynqMP (for Zynq UltraScale+ MPSoC)
  3. zynq (for Zynq-7000 devices)
  4. microblaze (for MicroBlaze™ processor)

<PROJECT_NAME> 是你构建文件的名称

例如:

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

导入硬件平台

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

petalinux-config --get-hw-description <PATH-TO-XSA-FILE>

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

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

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

构建image

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

BOOT.bin 文件打包

  1. 使用petalinux-package命令
petalinux-package --boot --fsbl ./images/linux/zynqmp_fsbl.elf --u-boot --force
  1. 使用vivado工具

准备sd卡

可以参照下面的文章

How to format SD card for SD boot

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

  1. Boot 分区
  2. Root 分区

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

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

以上是关于初试 xilinx petalinux (2022.1)的主要内容,如果未能解决你的问题,请参考以下文章

整合Xilinx PetaLinux工程编译和Open Source U- Boot/Linux编译

Xilinx-Petalinux学习-00-开始

Xilinx-Petalinux学习-04-OpenCV的移植

在 Ubuntu 20.04 上安装 Xilinx Petalinux 时出现 python 错误

xilinx SDK 无法添加.h文件是怎么回事

学fpga(hls之vivadozynq和petalinux)