0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

在任何平台上使用PetaLinux的先决条件

XILINX开发者社区 来源:XILINX开发者社区 2025-04-24 10:40 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文作者:AMD 工程师 Aravind Babu

本篇文章介绍了在任何平台上使用 PetaLinux 的先决条件。PetaLinux 是一种嵌入式 Linux 软件开发套件 (SDK),主要用于基于 FPGA 的系统级芯片 (SoC) 设计或 FPGA 设计。

安装要求

工作站最低要求:

8 GB RAM(针对 AMD 工具推荐的最低要求)

2 GHz CPU 时钟或同等频率(至少 8 核)

100 GB 可用 HDD 空间


支持的操作系统

完全移除 RHEL 和 CENTOS,与上游 Yocto 保持一致

Ubuntu Desktop/Server 20.04.2 LTS、20.04.3 LTS、20.04.4 LTS、20.04.5 LTS(64 位)、20.04.6 LTS、22.04 LTS、22.04.1 LTS、22.04.2 LTS 和 22.04.3 LTS

OpenSuse Leap 15.3 和 15.4

AlmaLinux 8.7 和 9.1

主机包列表

PetaLinux 要求在 Linux 主机工作站上安装标准开发工具和库,在 Linux 主机上安装版本说明中所列的库和工具。

以下是在安装 PetaLinux 之前,需要在主机上安装的程序包列表:

https://adaptivesupport.amd.com/s/article/000036178?language=zh_CN

PetaLinux 安装步骤

PetaLinux 工具要求您的主机系统 /bin/sh 为“bash”。如果您使用 Ubuntu 发行版,并且您的 /bin/sh 为“dash”,请咨询您的系统管理员,了解如何使用 sudo dpkg-reconfigure dash 命令来更改您的默认系统 shell /bin/sh。

您必须具有相应的访问权,才能安装版本说明中所述的必备程序包。PetaLinux 工具需要以非 root 用户的身份安装。

可以从 PetaLinux 下载页面下载 PetaLinux 安装程序:

https://china.xilinx.com/support/download/index.html/content/xilinx/zh/downloadNav/embedded-design-tools.html

如果您在运行安装程序时未指定任何选项,则 PetaLinux 工具默认安装到当前工作目录中。

1f01ffb4-1f6a-11f0-9310-92fbcf53809c.png

或者,您也可以指定安装路径。

1f1b37cc-1f6a-11f0-9310-92fbcf53809c.png

例如,要将 PetaLinux 工具安装到 /home//petalinux/ 中,请执行以下操作:

1f33a226-1f6a-11f0-9310-92fbcf53809c.png

注意

您不能以 root 用户身份安装 PetaLinux。如果您试图以 root 用户身份运行 PetaLinux 命令,则 BitBake 完整性检查可能会失败,这会导致无法继续构建。之所以执行这项检查,是因为以 root 用户身份运行构建非常危险;如果任何构建脚本误将文件安装到根路径 (/) 而不是它本应安装到的路径,则必须使安装立即失败,以免(在最坏的情况下)覆盖对 Linux 系统操作至关重要的文件,例如 /bin 或 /etc 中的文件。因此,不支持以 root 用户身份运行构建。

一旦安装完成,您就无法移动或复制已安装的目录。在前述示例中,您无法移动或复制 /home//petalinux/,因为完整路径存储在 Yocto e-SDK 环境文件中。

安装该软件期间,确保您对 /home//petalinux 有写权限。安装后,可以将权限更改为全局读取-执行 (0755)。将该工具安装到 /home//petalinux 目录并不是强制要求。您可以在具有 755 权限的任何位置安装该工具。

PetaLinux 2024.1 仅适用于从 AMD Vivado Design Suite 2024.1 导出的硬件设计。

您的 PetaLinux 和 Vivado 设计应始终使用相同版本。

PetaLinux 工作环境设置

在安装之后,通过 source 命令来运行所提供的设置脚本,以便完成剩余的设置。

PetaLinux 工作环境设置步骤

使用 source 命令来运行适当的设置脚本。PetaLinux 可以使用任何交互式 shell,示例如下:

以 Bash 作为用户 shell:

1f48dc04-1f6a-11f0-9310-92fbcf53809c.png

settings.sh:

https://www.godaddy.com/forsale/settings.sh?utm_source=TDFS_BINNS2&utm_medium=parkedpages&utm_campaign=x_corp_tdfs-binns2_base&traffic_type=TDFS_BINNS2&traffic_id=binns2&

以 C shell 作为用户 shell:

1f6f5c26-1f6a-11f0-9310-92fbcf53809c.png

注意:从 2024.2 起,将弃用 PetaLinux settings.csh 支持。建议使用 bash 中的 settings.sh:

https://www.godaddy.com/forsale/settings.sh?utm_source=TDFS_BINNS2&utm_medium=parkedpages&utm_campaign=x_corp_tdfs-binns2_base&traffic_type=TDFS_BINNS2&traffic_id=binns2&

以下是第一次使用 source 命令运行设置脚本时的输出示例:

1f88715c-1f6a-11f0-9310-92fbcf53809c.png

验证工作环境已设置完成:

echo $PETALINUX

输出示例:/opt/pkg/petalinux

环境变量 $PETALINUX 应指向 PetaLinux 的安装路径。根据 PetaLinux 安装路径,输出可能与本示例不同。

创建 PetaLinux 工程

使用 PetaLinux BSP 创建工程

1.切换至您要在其中创建 PetaLinux 工程的目录。例如,如果您要在 /home/user 下创建工程,请运行以下命令:

cd /home/user

2.在命令控制台上运行 petalinux-create 命令:

petalinux-create project -s

基于已安装的 BSP 来引用开发板。输出如下:

1fa0e480-1f6a-11f0-9310-92fbcf53809c.png

在前述示例中,当该命令运行时,它会告诉您从 BSP 解压并安装工程。如果指定的位置在网络文件系统 (NFS) 上,则会将工程的 TMPDIR 更改为 /tmp/。否则,指定的位置为 $PROOT/build/tmp。

请勿从本地文件系统创建到 NFS 文件系统的符号链接。您无法使用 NFS 在构建中定位“tmp”目录,此操作将失败。

注意:在 NFS 上创建工程时,为了成功构建工程,PetaLinux 要求 TMPDIR 上至少有 50 GB(至多 100 GB)的空间。

如果 /tmp/ 也在 NFS 上,则会抛出一个错误。您可以在创建 PetaLinux 工程时使用以下命令更改 TMPDIR:

1fb6cb4c-1f6a-11f0-9310-92fbcf53809c.png

或者,您可以使用 petalinux-config > Yocto-settings 随时创建或修改 TMPDIR。

切勿将两个不同 PetaLinux 工程的 TMPDIR 配置为相同的位置,否则可能造成构建错误。切勿在工具安装区创建 PetaLinux 工程,也不得将工具安装区作为临时构建区使用。

如果 TMPDIR 位于 /tmp/..,则删除工程并不会删除 TMPDIR。要删除 TMPDIR,请运行 petalinux-build -x mrproper。

错误日志:

1fd26d16-1f6a-11f0-9310-92fbcf53809c.png

使用 AMD Vivado Design Suite 配置硬件平台

您可以使用 AMD Vivado Design Suite 创建硬件平台。无论如何创建和配置硬件平台,都需要设置少量的硬件 IP 和软件平台配置,使硬件平台能随时运行 Linux。具体说明如下:

AMD Zynq UltraScale+ MPSoC 和 AMD Versal 自适应 SoC

以下列出了 AMD Zynq UltraScale+MPSoC 和 AMD Versal 自适应 SoC 硬件工程启动 Linux 的硬件要求:

至少 2 GB 的外部存储器(必要)。

串行控制台 UART(必要)。

非易失性存储器,如 QSPI 闪存和 SD/MMC。此存储器是可选的,如果没有此存储器,则只有 JTAG 启动可正常工作。

以太网(可选,对网络访问必不可少)。

注意:如果使用带中断的软核 IP 或带中断的外部 PHY 器件,请确保中断信号已连接。


AMD Zynq 7000 器件

以下列出了 Zynq 7000 硬件工程启动 Linux 的硬件要求:

一个三重定时器计数器 (TTC)(必要)。

注意:如果启用多个 TTC,则 Zynq 7000 Linux 内核将使用来自设备树的第一个 TTC 块。确保其他内核不使用该 TTC。

至少 512 MB 的外部存储器控制器(必要)。

串行控制台 UART(必要)。

非易失性存储器,如 QSPI 闪存和 SD/MMC。此存储器是可选的,但若不提供,那么只有 JTAG 启动可正常工作。

以太网(可选,对网络访问必不可少)。

注意:如果使用软核 IP,请确保中断信号已连接。如果使用带中断的软核 IP 或带中断的外部 PHY 器件,请确保中断信号已连接。

AMD MicroBlaze 处理器 (AXI)

以下列出了 MicroBlaze 硬件工程启动 Linux 的要求:

IP 核检查表:

外部存储器控制器至少有 512 MB 存储空间(必要)

带中断连接的双通道定时器(必要)

串行控制台带中断连接的 UART(必要)

非易失性存储器,如线性闪存或 SPI 闪存(必要)

带中断连接的以太网(可选,但是网络访问的必要条件)

MicroBlaze 处理器配置:

系统从非易失性存储器启动时,MicroBlaze 处理器初始启动加载程序 fs-boot 至少需要 4 KB 的块 RAM(用于并行闪存)和至少需要 8 KB 的块 RAM(用于 SPI 闪存)。

注意:PetaLinux 仅支持 32 位 MicroBlaze 处理器。

导入硬件配置

导入硬件配置的步骤:

1. 使用 cd 导航到您的 PetaLinux 工程目录。

cd

2. 使用以下任一方法,通过 petalinux-config 命令导入硬件描述:

使用包含 XSA 文件的目录路径:

petalinux-config --get-hw-description

使用 XSA 文件路径:

如果您在指定文件夹中有多个 XSA 文件,则 petalinux-config 会抛出一个错误。

为避免出现此类错误,您可以按如下所示提供完整的 XSA 文件路径:

petalinux-config --get-hw-description

注意:稍后如果更改中的 XSA 文件,会导致后续执行 petalinux-config/petalinux-build 命令时都会出现“INFO: Seems like your hardware design:/system.xsa has changed”警告。这意味着您的 XSA 已发生更改。要使用最新的 XSA,请再次运行 petalinux-config --get-hw-description。这样会启动顶层系统配置菜单。为 PetaLinux 工程运行 petalinux-config --get-hw-description 命令时,该工具会检测所导入的硬件设计中发生的更改,并启动该菜单。

1fecf24e-1f6a-11f0-9310-92fbcf53809c.png

图:系统配置菜单

确保选定了“DTG Settings > (template) MACHINE_NAME”(DTG 设置 > (模板) MACHINE_NAME),并使用以下选项:

使用带默认 BSP/硬件工程的 AMD 评估板时,将 BSP 设置保留为 AUTO。这样会根据您的具体设计自动确定 DTG 机器配置。

对于定制开发板,请保留默认值。

对于在 AMD 评估板上实现的定制硬件设计,请使用下表中的值。

200c7b8c-1f6a-11f0-9310-92fbcf53809c.png

表:BSP 和机器名称

确保选中“Subsystem AUTO Hardware Settings”(子系统自动硬件设置),然后进入下图所示的菜单:

20253ff0-1f6a-11f0-9310-92fbcf53809c.png

图:Subsystem AUTO Hardware Settings

“Subsystem AUTO Hardware Settings →”菜单支持定制系统级硬件设置。您可以选择处理器、存储体、串行控制台或闪存。

构建 PetaLinux 系统镜像

使用 cd 导航到您的 PetaLinux 工程目录。

cd

petalinux-build

此步骤会生成设备树 DTB 文件、第一阶段启动加载程序(适用于 AMD Zynq 7000 器件、AMD Zynq UltraScale+ MPSoC 和 AMD MicroBlaze)、PLM(适用于 AMD Versal 自适应 SoC)、PSM(适用于 Versal 自适应 SoC)和 TF-A(适用于 Zynq UltraScale+ MPSoC 和 Versal 自适应 SoC)、U-Boot、Linux 内核、根文件系统镜像和 U-Boot 启动脚本 (boot.scr)。

最后,它会生成必需的启动镜像。

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

    关注

    1655

    文章

    22287

    浏览量

    630317
  • 嵌入式
    +关注

    关注

    5186

    文章

    20151

    浏览量

    328896
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217988
  • 操作系统
    +关注

    关注

    37

    文章

    7329

    浏览量

    128643

原文标题:开发者分享|使用 PetaLinux 的先决条件指南

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何在PetaLinux流程外创建模块

    PetaLinux 是一个强大的实用工具,支持设计人员轻松创建 Linux 镜像并在自己的目标平台上运行。PetaLinux 还能创建带有模板 Makefile 和 BB 文件的用户应用和模块,以便
    发表于 09-28 11:01 1475次阅读

    Petalinux许可证无效

    -v2013.10-finalPetaLinux许可证无效或未安装。plat [dirt] - 平台配置标记为脏我假设因为这个,我添加到我的SDK环境中的petalinux插件没有正确启动。谢谢
    发表于 04-06 10:24

    FreeRTOS的相关资料推荐

    堆内存管理从FreeRTOS V9.0.0起,可以完全静态分配FreeRTOS应用程序,而无需包括堆内存管理器2.1 本章简介与范围先决条件FreeRTOS是作为一组C源文件提供的,因此,成为一名
    发表于 02-28 11:14

    有人知道启用或禁用预取Nucleo L4R5ZI缓冲区时有先决条件吗?

    有人知道启用或禁用预取缓冲区时是否有任何先决条件吗?更具体地说,在 Nucleo L4R5ZI 睡眠示例中,预取缓冲区在主循环之前的 main() 中被禁用。在此之后它永远不会重新启用。(位
    发表于 12-28 12:01

    SystemC循环模型11.2版用户指南

    ,请参阅《快速模型用户指南》(100965)。 周期模型参考平台环境的先决条件周期模型参考平台中的所有模型必须是相同的版本(例如,全部为v10.x或全部为v11.x)。 不支持在参考平台
    发表于 08-12 06:21

    李开复提出发展人工智能的四个先决条件及人工智能的核心

    对人类社会带来革命性的影响。 李开复说,人工智能的核心是深度学习技术,想要发展有四个先决条件:第一是海量的 大数据,至少千万级别以上的;第二是这些数据需要标注,标注不见得是人来标注;第三条 件是垂直领域,不可以跨领域,因为一次
    发表于 09-14 08:46 4次下载

    petalinux(二)开启petalinux内核调试模式

    要调试基于Xilinx SDK的Linux内核模块,必须使能 KERNEL_DEBUG_INFO和KERNEL_DEBUGGING。这篇博文全面记录了在Petalinux中是如何处理的。解决方案
    发表于 11-18 13:46 1.2w次阅读
    <b class='flag-5'>petalinux</b>(二)开启<b class='flag-5'>petalinux</b>内核调试模式

    启停系统的定义及其先决条件与优势

    本文将介绍什么是启停系统以及汽车启停系统的先决条件,包括它的实施与优势。 燃油节省与CO2减排范围在5%至10%之间。随着燃油价格的攀升,高二氧化碳排放税的提高,再加上政府对减少汽车排放量的要求
    发表于 11-20 16:14 0次下载
    启停系统的定义及其<b class='flag-5'>先决条件</b>与优势

    西门子为企业数字化转型创造先决条件

    西门子数字化企业解决方案,为数字化转型创造了技术上的先决条件。在离散工业和过程工业的各个领域,西门子正携手客户全面推进数字化转型。无论何种企业规模,无论何种行业,落地工业 4.0 的时机已经成熟。
    的头像 发表于 09-05 10:57 3861次阅读

    德国电信起诉德国联邦通信修改了参与5G频率拍卖的先决条件

    据路透社报道,德国《世界报》周二称德国电信(DTEGn.DE)已对德国联邦通信机构提起诉讼,抗议其参与下一代移动网络频率拍卖的先决条件
    发表于 01-03 10:33 1302次阅读

    如何进行正确数据建模

    理解数据是控制任何企业的先决条件。但只有当这些知识能够被分享和传播时,理解才是有用的。有效的数据建模应该是任何企业架构师的首要关注点。
    的头像 发表于 09-28 02:37 4292次阅读

    petalinux安装过程

    Xilinx提供的手册《ug1144-petalinux-tools-reference-guide_chn》,该文档有说明petalinux版本支持的平台,本次使用的Ubuntu16.04。
    的头像 发表于 12-01 09:22 4441次阅读

    配方示例程序的先决条件

      列出配方示例程序的先决条件 1.一个存储所有配方记录的配方数据块。配方数据块存储在装载存储器中。 2.在工作存储器中存储一个配方副本的活动配方数据块。 >>>> 创建活动配方数据块 1.在“添加
    的头像 发表于 08-07 09:50 1036次阅读
    配方示例程序的<b class='flag-5'>先决条件</b>

    SAP B1 Web Client &amp; MS Teams App集成连载一:先决条件/Prerequisites

    一、先决条件/Prerequisites 在设置 SAP Business One 应用之前,确保您已具备以下各项:Before you set up the SAP Business One
    的头像 发表于 09-14 16:29 576次阅读
    SAP B1 Web Client &amp; MS Teams App集成连载一:<b class='flag-5'>先决条件</b>/Prerequisites

    PCB层叠结构设计的先决条件

    )出发,深入探讨PCB多层板的层叠结构设计的先决条件。 一、Core和PP的简要介绍 Core是PCB多层板的核心组成部分,它的两个表层都铺有铜箔,可作为信号层、电源层、地层等导电层。Core的上、下表层之间填充的是固态材料,具有良好的机械强度和电气性能。而PP则是一种半固态的树脂
    的头像 发表于 06-06 15:37 978次阅读
    PCB层叠结构设计的<b class='flag-5'>先决条件</b>