ZYNQ学习之PetaLinux与Vitis的安装

2024-03-29 18:04

本文主要是介绍ZYNQ学习之PetaLinux与Vitis的安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基本都是摘抄正点原子的文章:<领航者 ZYNQ 之嵌入式Linux 开发指南 V3.2.pdf,因初次学习,仅作学习摘录之用,有不懂之处后续会继续更新~

一、Petalinux安装

1.1、Petalinux资源下载

 百度云安装包:

Petalinux 安装包:百度云-提取码:dv5y 

Petalinux 简介:

        Petalinux 工具是 Xilinx 公司推出的嵌入式 Linux 开发套件,包括了 u-boot、Linux Kernel、device-tree、rootfs 等源码和库,以及 Yocto recipes,可以让客户很方便的生成、配置、编译及自定义 Linux 系统。Petalinux 支持 Versal 、Zynq UltraScale+ MPSoC、Zynq-7000 SoC 以及MicroBlaze,可与 Xilinx 硬件设计工具 Vivado 协同工作,大大简化了 Linux 系统的开发工作。

具体的介绍可访问Petalinux工具网站:

https://china.xilinx.com/products/design-tools/embeddedsoftware/petalinux-sdk.html

(注:需要注册 Xilinx 账号并登陆才能下载)

 

1.2、PetaLinux依赖库以及软件安装

将 petalinux 安装包文件 petalinux-v2020.2-final-installer.run 拷贝到 share 共享目录,在 Ubuntu 系统中,打开终端,切换到/mnt/hgfs/share/目录,可以看到 petalinux 的安装文件 petalinux-v2020.2-final-installer.run 已在该目录,可直接访问,如下图所示:

89275ad3c9724a0a9bd3651fa13c9560.png

在安装 Petalinux 之前需要为 Ubuntu 系统安装一些必要的运行软件以及依赖库,所以需要确保 Ubuntu 能够正常上网。

1.2.1 使用命令安装

打开 Ubuntu Terminal 终端执行如下命令(该命令是一行,不要分开成多行):

sudo apt-get install iproute2 gawk python3 python build-essential gcc git make net-tools libncurses5-dev tftpd zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget git-core diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib automake zlib1g:i386 screen pax gzip cpio python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3

该命令暂未起作用,建议使用官方提供的脚本安装,参考下述2.1.2。

1.2.2 使用 Xilinx 提供的脚本 plnx-env-setup.sh安装。

该脚本可以从如下链接处下载:73296 - PetaLinux: How to install the required packages for the PetaLinux Build Host?

如下图所示:

0f2e919388b54332b6a294e2c21d2293.png

1c3fc122293c4fba8f40468db3d7ed6c.png

a2a082265126448fa34ae928fe92a161.png

将下载后的脚本拷贝到 Ubuntu 虚拟机中(本地共享文件处),打开 Ubuntu Terminal 终端,先切换到本地共享文件夹处,然后执行输入如下命令以执行此脚本:

cd /mnt/hgfs/share

sudo ./plnx-env-setup.sh

先切换到本地共享文件夹处,然后再执行上述命令,如下图所示:

9743057140934fd08e48cdeb6c291259.png

这里需要等待10分钟左右,如果系统中已经有部分库/软件,会弹出配置文件是否需要修改,输入y,如下图:

f5e4279a2dc74256b4abf830ff6d3f2d.png

为什么是Y?

  •  避免这个配置文件有新的默认更新部分,因此这里输入y,更新配置文件。
  •  如果其他库或软件需要这个配置文件并且配置被更改,则删掉其他库或软件再重新安装即可(毕竟工作量是不一样的)。

接下来等待2分钟左右软件以及库安装完成,如下图所示:

fa91369e499d4f07a2d93e34cb50518f.png

1.3 修改bash

Petalinux 工具需要主机系统的/bin/sh 是 bash,而 Ubuntu 默认的/bin/sh 是 dash,所以这里需要进行更改。运行如下命令进行更改:

sudo dpkg-reconfigure dash

执行结果如下图所示:

fef5f8781e6a44ec9d959d803851c3c9.png

选择“否”按下回车即可。

a193a60a2afb4ba5bfe63b6af4b1811d.png

1.4 安装 Petalinux

安装 Petalinux 就要考虑安装位置了,对于 Petalinux 这种体积庞大的工具,将其放在/opt 目录下。

在/opt 目录下新建专门存放 Petalinux 的文件夹,如/opt/pkg/petalinux/2020.2,在终端输入以下命令即可:

sudo chown -R $USER:$USER /opt

mkdir -p /opt/pkg/petalinux/2020.2

chown命令将/opt 目录的属主和属组更改为当前的用户名,如正在用的Ubuntu用户名为gbxluo,执行的 chown 命令就相当于“sudo chown -R gbxluo:gbxluo/opt”,

e98dc4b0bcda49b0996167088359e98b.png

然后通过 mkdir 创建安装目录。

08f49b138b754df7a34b98d8e43991a5.png

现在将 petalinux 安装在/opt/pkg/petalinux/2020.2 目录下,在终端中输入如下命令:

./petalinux-v2020.2-final-installer.run -d /opt/pkg/petalinux/2020.2

执行 Petalinux 的安装,等待 一段时间,当出现 “ Press Enter to display the license agreements”字样的时候,如下图所示:

cab350d7fd3e4d6dbb923067138769c2.png

提示按下回车键显示软件许可协议,按下键盘上的回车键 Enter,显示协议内容如下:

7d3cfd25d3754c1c8a5d548080c304c9.png

直接按下键盘上的 Q 键退出,回到之前的界面之后会出现一个选择项,询问我们是否接受 xilinx 最终用户协议。

b7ca1158bfa54bb2b8cbd2683c9ed038.png

这个显然是没得选,必须接受,否则无法进行下面的安装;输入 y 按回车接受。除了 xilinx 最终用户协议之外,还有两个协议也需要大家接受,会依次显示在终端上,同理也是输入 Y 按下回车接受(同理也是显示协议时,键入q退出)。

c56ad2967cae4e348ff6df1862719187.png

570e0efa8f1d47018fcc6317e558eb98.png

接受所有协议之后 Petalinux 安装工具便会继续安装,直到安装完成。安装完成之后,我们进入到安装目录下,目录内容如下图所示:

e3c489d6d84d4f48a01a8571f16e8b3c.png

1.5 设置 Petalinux 环境变量

在正式使用 petalinux 工具之前,需要先运行 petalinux 安装目录下的 settings.sh 脚本文件设置 petalinux 工作环境,settings.sh 脚本用于 bash,还有一个 settings.csh 用于 C shell,如下图所示:

0b2d9caf258d44088aedb0ae55b71fd0.png

一般默认情况下,使用 bash 登录 shell,所以 source 脚本文件 settings.sh 对 petalinux 所需的运行环境进行配置,命令如下:

cd /opt/pkg/petalinux/2020.2/

source settings.sh

需要注意的是该命令只对当前终端有效,重新打开终端后需要重新执行这一步。执行结果如下图所示:

53f4a00650814fb1bbebf2c3fdb57d9e.png

验证下工作环境是否已设置,在终端输入如下命令:

echo $PETALINUX

结果如下图所示:

7103c9515e464a58aa2ba6d59a09de5b.png

显示 Petalinux 的安装目录,表明工作环境已设置。现在可以使用 Petalinux 工具了。

 

鉴于每次打开终端使用 Petalinux 都需要设置相应的环境变量,我们为了方便,将设置 Petalinux 环境变量的命令设置成别名,这样我们使用起来就方便些。设置别名方法的很简单,在终端输入如下命令:

echo "alias sptl='source $PETALINUX/settings.sh'" >> ~/.bashrc

7058103f828b4f818fb685513c82e80c.png

以后打开终端后,输入 sptl 就可以设置 Petalinux 的环境变量了,无需输入长长的路径。sptl 的记忆法是 Source PeTaLinux 的环境变量

提醒:在使用 linux 的时候要善用别名但不要滥用别名。

应该是不要用关键字!

二、安装 Vitis 软件与JTAG驱动

注意:Vitis安装包含Vivado软件

2.1 Vitis安装包

Vitis 是用来开发 Linux 应用的软件,使用这个软件开发 Linux 应用,既方便了工程管理, 也免去了自己写 Makefile 的必要。

Linux系统下的Vitis与Windows 系统下的Vitis 软件的使用方法基本是一样的。

百度云资源:

Linux版本百度云资源提取码:vy0b 

d56578f6d9d5475b80eb602fb778037e.png

2.2 本地安装 Vitis 软件

2.2.1 解压缩

将百度云中的资源全部下载复制到本地share 共享文件夹下,有如下文件:

Xilinx_Unified_2020.2_1118_1232.z01

Xilinx_Unified_2020.2_1118_1232.z02

Xilinx_Unified_2020.2_1118_1232.z03  
 Xilinx_Unified_2020.2_1118_1232.z04
 Xilinx_Unified_2020.2_1118_1232.zip
安装说明.txt

进入 Ubuntu 系统中,打开终端,切换到/mnt/hgfs/share/目录,可以看到 Vitis 的压缩包文件都已在该目录:

0b9d6108c3ba43fa89b58037691a7746.png

在windows环境下,选中“Xilinx_Unified_2020.2_1118_1232.zip”并右键解压缩,如下图:

6c6dba2af25144dbae80dc18b26e7d2e.png

安装说明内容如下:

注意Vivado(LINUX)下的Vivado安装包的压缩文件比较大,所以我们进行了分包压缩,这里分成了五个压缩包。
安装时需要将该文件夹下的五个压缩包全部下载下来,五个压缩包下载完成后,只需要解压其中的“Xilinx_Unified_2020.2_1118_1232.zip”文件,则可解压全部文件。

3642036ea99840ae9b775eb0a56a9a68.png

 解压后的文件夹:

037d06e7912745b796280dc8d55e5343.png

2.2.2 安装Vitis

解压完成后,进入该文件夹下,输入

sudo ./xsetup

弹出如下图所示的安装界面:

2165e28891b440ee88aa37525185a5ef.png

 

ce7212d236384ff198eb88a63c539261.png

fc2fd32c367141618a389b50f7516ce5.png

点击上图中“Next”,在接下来的安装产品选择界面中,选择默认的“Vitis”,

注意 Vitis 软件包含了 Vivado 软件,然后点击“Next”按钮,如下图所示:

98b700f8355341aab34f2b2edb51842f.png

进入 Vitis Software Platform 设置界面,包含的器件库选项中只保留 Zynq-7000 一项,其 它器件都取消勾选,如下图所示:

a8762d7aaf7f47eaacbbf65c8f191a1f.png

点击“Next”进入许可协议界面,全部勾选同意,如下图所示:

d5452bf489354e24a1aa5757dec17b36.png

点击“Next”,进入安装路径选择界面,这里设置为“/opt/pkg/tools/Xilinx”,如下图所示:

8e63bbdcbeca44b69470f846f1bf9e1c.png

点击“Next”,在弹出的路径确认窗口中点击“yes”,如下图所示:

b338d13d2e6849fdb53736170fde33be.png

接下来进入“Installation Summary”界面,点击“Install”开始下载并安装,如下图所示:

c0e03a2619c841a9ae6ef3360204f491.png

安装需要的时间比较长,我们只需要等待其安装完成就行。

87ee79a9449b4969b57db2ae60e9807a.png

75efa292f0d94ea783af4f0f7983419c.png

关闭Xilinx Information Center:

dfc37c584f2846158a25f7f3a40100e1.png

 

2.2.3 创建Vitis桌面快捷方式

在 Ubuntu 中,所有的快捷方式都是存放在 /usr/share/applications 中的,因此安装完成后,桌面上并没有软件的快捷方式。

解决方法:创建一个类似于“快捷方式”一样的文件放在该目录中即可。

打开终端输入如下命令:

cd /usr/share/applications

sudo gedit Vitis.desktops

在/usr/share/applications目录下创建Vitis.desktop 文件并弹出gedit编辑窗口,输入如下内容:

[Desktop Entry]

Encoding=UTF-8

Type=Application

Name=Xilinx Vitis 2020.2

Comment=Xilinx Vitis 2020.2 Icon=/opt/pkg/tools/Xilinx/Vitis/2020.2/doc/images/ide_icon.png Exec=/opt/pkg/tools/Xilinx/Vitis/2020.2/bin/vitis

bcb402b093dd4868ac4f84c024093fda.png

保存之后,退出编辑界面,回到终端修改该文件的权限,输入:

sudo chmod 777 Vitis.desktop

555971dc2a394864abee623c2d7c675e.png

最后进入到/usr/share/applications目录中即可看到visits软件快捷方式,双击即可打开Vitis软件:

3ccfa2efa0544d2590506b1072d9c8a9.png

双击Vitis.desktop即可打开Vitis软件,如下图:

e35044aa4d4a4abaa17d31a5b3c7ca7f.png

创建 Vivado 和 Vitis HLS 是相同的步骤,在编辑的.desktop 文件分别输入:

Vivado 示例:

[Desktop Entry]

Encoding=UTF-8

Type=Application

Name=Vivado 2020.2

Comment=Vivado 2020.2 Icon=/opt/pkg/tools/Xilinx/Vivado/2020.2/doc/images/vivado_logo.png

Exec=/opt/pkg/tools/Xilinx/Vivado/2020.2/bin/vivado

Vitis HLS 示例:

[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=Vitis HLS 2020.2
Comment=Vitis HLS 2020.2
Icon=/opt/pkg/tools/Xilinx/Vitis_HLS/2020.2/doc/images/vitis_hls_icon.png
Exec=/opt/pkg/tools/Xilinx/Vitis_HLS/2020.2/bin/vitis_hls

双击即可打开软件,如果出现未信任的应用程序启动器,点击“Trust and Lanch”即可。

 

2.3 JTAG cable驱动的安装与删除

在嵌入式开发中,都是通过在线 jtag 进行调试的,这种调试方式方便快捷,在使用 Petalinux 进行 Linux 开发中,其实也是可以使用 JTAG 的,不过对于 Linux 系统,由于安装驱动程序需要 root 或 sudo 访问权限,因此从 Vivado 2015.4 版本开始,默认不安装 jtag 驱动。这样 Vivado 安装程序和 Petalinux 安装程序可以在没有 root 或 sudo 特权的 Linux 系统上运行。这也导致了在 linux 系统中,jtag 驱动需要手动安装。

2.3.1 安装JTAG cable驱动

下面介绍如何在 Ubuntu 主机中安装jtag 驱动(其他 Linux 系统同样适用)。

需要注意的是在安装 jtag 驱动之前,请不要将 jtag 下载器连接到电脑,已经接到电脑的,最好先拔掉。

在 Ubuntu 系统中,打开终端,以普通用户运行即可。进入到 petalinux 安装目录,如下图所示:

e9cc03b15ec548bd86ad2316b247ea93.png

可以看到有一个名为“tools”的目录,jtag 驱动程序在该目录下,输入以下命令进入到 jtag 驱动程序所在位置:

cd tools/xsct/data/xicom/cable_drivers/lin64/install_script/install_drivers

可以看到该目录下有一个名为“install_drivers”的文件,如下图所示:

f05a9522a23c476893a58c09f99a266c.png

输入如下命令,以 root 权限执行该文件,安装 jtag 驱动程序:

sudo ./install_drivers

执行结果如下图所示:

6e7d5075cff540f48abe8be4a9d4d699.png

 

2.3.2 删除JTAG cable驱动

在遇到 jtag 驱动问题时,如何删除 jtag 驱动。

注意如无特需情况,请不要执行下面的命令:
sudo rm -f /etc/udev/rules.d/52-xilinx-digilent-usb.rules
sudo rm -f /etc/udev/rules.d/52-xilinx-ftdi-usb.rules
sudo rm -f /etc/udev/rules.d/52-xilinx-pcusb.rules

参考链接:

ZYNQ领航者V2开发板 — 正点原子资料下载中心 1.0.0 文档

 

 

这篇关于ZYNQ学习之PetaLinux与Vitis的安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/859268

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss