使用PetaLinux的先决条件指南

FPGA开发圈 2025-04-24 12:03


本文作者: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 工具默认安装到当前工作目录中。

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

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

注意

  • 您不能以 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:

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:

注意:从 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 命令运行设置脚本时的输出示例:


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

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 来引用开发板。输出如下:

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


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


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


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

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


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


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


错误日志:


使用 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 命令时,该工具会检测所导入的硬件设计中发生的更改,并启动该菜单。


图:系统配置菜单


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

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

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

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


表:BSP 和机器名称


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


图: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开发圈 这里介绍、交流、有关FPGA开发资料(文档下载,技术解答等),提升FPGA应用能力。
评论 (0)
  • 随着电子元器件的快速发展,导致各种常见的贴片电阻元器件也越来越小,给我们分辨也就变得越来越难,下面就由smt贴片加工厂_安徽英特丽就来告诉大家如何分辨的SMT贴片元器件。先来看看贴片电感和贴片电容的区分:(1)看颜色(黑色)——一般黑色都是贴片电感。贴片电容只有勇于精密设备中的贴片钽电容才是黑色的,其他普通贴片电容基本都不是黑色的。(2)看型号标码——贴片电感以L开头,贴片电容以C开头。从外形是圆形初步判断应为电感,测量两端电阻为零点几欧,则为电感。(3)检测——贴片电感一般阻值小,更没有“充放
    贴片加工小安 2025-04-29 14:59 40浏览
  • 在CAN总线分析软件领域,当CANoe不再是唯一选择时,虹科PCAN-Explorer 6软件成为了一个有竞争力的解决方案。在现代工业控制和汽车领域,CAN总线分析软件的重要性不言而喻。随着技术的进步和市场需求的多样化,单一的解决方案已无法满足所有用户的需求。正是在这样的背景下,虹科PCAN-Explorer 6软件以其独特的模块化设计和灵活的功能扩展,为CAN总线分析领域带来了新的选择和可能性。本文将深入探讨虹科PCAN-Explorer 6软件如何以其创新的模块化插件策略,提供定制化的功能选
    虹科汽车智能互联 2025-04-28 16:00 82浏览
  • 贞光科技代理品牌紫光国芯的车规级LPDDR4内存正成为智能驾驶舱的核心选择。在汽车电子国产化浪潮中,其产品以宽温域稳定工作能力、优异电磁兼容性和超长使用寿命赢得市场认可。紫光国芯不仅确保供应链安全可控,还提供专业本地技术支持。面向未来,紫光国芯正研发LPDDR5车规级产品,将以更高带宽、更低功耗支持汽车智能化发展。随着智能网联汽车的迅猛发展,智能驾驶舱作为人机交互的核心载体,对处理器和存储器的性能与可靠性提出了更高要求。在汽车电子国产化浪潮中,贞光科技代理品牌紫光国芯的车规级LPDDR4内存凭借
    贞光科技 2025-04-28 16:52 90浏览
  • 4月22日下午,备受瞩目的飞凌嵌入式「2025嵌入式及边缘AI技术论坛」在深圳深铁皇冠假日酒店盛大举行,此次活动邀请到了200余位嵌入式技术领域的技术专家、企业代表和工程师用户,共享嵌入式及边缘AI技术的盛宴!1、精彩纷呈的展区产品及方案展区是本场活动的第一场重头戏,从硬件产品到软件系统,从企业级应用到高校教学应用,都吸引了现场来宾的驻足观看和交流讨论。全产品矩阵展区展示了飞凌嵌入式丰富的产品线,从嵌入式板卡到工控机,从进口芯片平台到全国产平台,无不体现出飞凌嵌入式在嵌入式主控设备研发设计方面的
    飞凌嵌入式 2025-04-28 14:43 95浏览
  • 一、智能家居的痛点与创新机遇随着城市化进程加速,现代家庭正面临两大核心挑战:情感陪伴缺失:超60%的双职工家庭存在“亲子陪伴真空期”,儿童独自居家场景增加;操作复杂度攀升:智能设备功能迭代导致用户学习成本陡增,超40%用户因操作困难放弃高阶功能。而WTR096-16S录音语音芯片方案,通过“语音交互+智能录音”双核驱动,不仅解决设备易用性问题,更构建起家庭成员间的全天候情感纽带。二、WTR096-16S方案的核心技术突破1. 高保真语音交互系统动态情绪语音库:支持8种语气模板(温柔提醒/紧急告警
    广州唯创电子 2025-04-28 09:24 125浏览
  • 晶振在使用过程中可能会受到污染,导致性能下降。可是污染物是怎么进入晶振内部的?如何检测晶振内部污染物?我可不可以使用超声波清洗?今天KOAN凯擎小妹将逐一解答。1. 污染物来源a. 制造过程:生产环境不洁净或封装密封不严,可能导致灰尘和杂质进入晶振。b. 使用环境:高湿度、温度变化、化学物质和机械应力可能导致污染物渗入。c. 储存不当:不良的储存环境和不合适的包装材料可能引发化学物质迁移。建议储存湿度维持相对湿度在30%至75%的范围内,有助于避免湿度对晶振的不利影响。避免雨淋或阳光直射。d.
    koan-xtal 2025-04-28 06:11 96浏览
  •  探针台的维护直接影响其测试精度与使用寿命,需结合日常清洁、环境控制、定期校准等多维度操作,具体方法如下:一、日常清洁与保养1.‌表面清洁‌l 使用无尘布或软布擦拭探针台表面,避免残留清洁剂或硬物划伤精密部件。l 探针头清洁需用非腐蚀性溶剂(如异丙醇)擦拭,检查是否弯曲或损坏。2.‌光部件维护‌l 镜头、观察窗等光学部件用镜头纸蘸取wu水jiu精从中心向外轻擦,操作时远离火源并保持通风。3.‌内部防尘‌l 使用后及时吹扫灰尘,防止污染物进入机械滑
    锦正茂科技 2025-04-28 11:45 72浏览
  • 2025年全球人形机器人产业迎来爆发式增长,政策与资本双重推力下,谷歌旗下波士顿动力、比亚迪等跨国企业与本土龙头争相入局,产业基金与风险投资持续加码。仅2025年上半年,中国机器人领域就完成42笔战略融资,累计金额突破45亿元,沪深两市机器人指数年内涨幅达68%,印证了资本市场对智能终端革命的强烈预期。值得关注的是,国家发展改革委联合工信部发布《人形机器人创新发展行动计划》,明确将仿生感知系统、AI决策中枢等十大核心技术纳入"十四五"国家重大专项,并设立500亿元产业引导基金。技术突破方面,本土
    电子资讯报 2025-04-27 17:08 241浏览
  • 在电子电路设计和调试中,晶振为电路提供稳定的时钟信号。我们可能会遇到晶振有电压,但不起振,从而导致整个电路无法正常工作的情况。今天凯擎小妹聊一下可能的原因和解决方案。1. 误区解析在硬件调试中,许多工程师在测量晶振时发现两端都有电压,例如1.6V,但没有明显的压差,第一反应可能是怀疑短路。晶振电路本质上是一个交流振荡电路。当晶振未起振时,两端会静止在一个中间电位,通常接近电源电压的一半。万用表测得的是稳定的直流电压,因此没有压差。这种情况一般是:晶振没起振,并不是短路。2. 如何判断真
    koan-xtal 2025-04-28 05:09 116浏览
  •     今天,纯电动汽车大跃进牵引着对汽车电气低压的需求,新需求是48V。车要更轻,料要堆满。车身电子系统(电子座舱)从分布改成集中(域控),电气上就是要把“比12V系统更多的能量,送到比12V系统数量更少的ECU去”,所以,电源必须提高电压,缩小线径。另一方面,用比传统12V,24V更高的电压,有利于让电感类元件(螺线管,电机)用更细的铜线,缩小体积去替代传统机械,扩大整车电气化的边界。在电缆、认证行业60V标准之下,48V是一个合理的电压。有关汽车电气低压,另见协议标准第
    电子知识打边炉 2025-04-27 16:24 219浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦