petalinux是什么?petallinux是如何设计的

电子说

1.3w人已加入

描述

目前网络上的许多项目都是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 分区。插入开发板成功了。




审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分