2024.2 版嵌入式软件和工具的新增功能

展开以下各部分,进一步了解 2024.2 版嵌入式工具的新增功能和增强功能。

嵌入式系统软件 2024.2:版本亮点

  • Yocto® Project:已更新至 Scarthgap 分支,在构建流程中加入了对 SDT 和 Lopper 的支持。
  • 启动加载程序和固件:
    • AMD Versal™ 自适应 SoC:增强了 PL 毛刺检测能力,优化了在 32K 边界处对长度不小于 8 的 CDO 命令的处理,并启用了 PMC_GPIO_EMIO 作为唤醒源。
    • Zynq™ UltraScale+™ MPSoC/RFSoC:解决了 WDT 相关的编译问题,并修正了 RPU 时钟 MUX 的配置。
    • FSBL:更新了 Zynq 7000 SoC 的 QSPI 存储器宏,并修复了 UltraScale+ 器件中的 WDT 复位问题。
  • AI 引擎器件驱动程序:启用了独立图编译,并支持子分区初始化。
  • 独立库:
    • XilSEM:延迟部分重配置后的自动初始化。
    • XilSecure:增加了对 RSA、ECDSA、SHA 和 KAT API 的 SSIT 支持。
  • 驱动程序和库(裸机和 Linux®):
    • OpenAMP:在 Lopper 中添加了错误配置检测功能;移除了对 Zynq 7000 SoC 的支持。
    • Xen Hypervisor:为新建虚拟机 (VM) 增加动态 PL 分配功能。
  • 多媒体:
    • Zynq UltraScale+ MPSoC/RFSoC:GStreamer 已升级至 1.22.x 版本,并通过 Xrandr 实现屏幕旋转功能。
    • HLS 视频 IP:为帧缓冲 IP 新增了对 YUV 444 12 位以及平铺 (Tile) 格式的支持;已包含相应的裸机驱动程序。
    • PL 连接视频 IP:增强了 HDMI Linux 驱动程序的功能;更新了 DP v2.1 TX 驱动程序,以改进对 LL CTS、MST 和 LTTPR 的支持。

2024.1 版嵌入式软件和工具的新增功能

展开以下各部分,进一步了解 2024.1 版嵌入式工具的新增功能和增强功能。

Yocto Project

(Yocto Project 在此版本中并未更新,计划将在 2024.2 版本同步至 Scarthgap 分支)

更新:

  • U-Boot 2024.01
  • Arm® Trusted Firmware 2.10
  • Linux Kernel 6.6
  • Qemu 8.1.0
  • Xen 4.18
  • OpenAMP 2023.10

变更:

  • 动态配置:实现动态配置调整功能增强。
  • AMD Zynq™ 和 Zynq MP 的默认二进制 (bin) 格式
  • 仅支持 bin/pdi 格式(不支持 dts):目前仅支持 bin/pdi 格式,DTS 已弃用。
  • fpgamanager bbclass 现已弃用
  • 移除已弃用的 Yocto Machine:
    • VCU118
    • KCU105
    • KC705
    • AC701

PetaLinux Tool

常规更新:

  • 移除了对所有 Ubuntu 18.x.x 主机操作系统的支持,并添加了对 Ubuntu 22.04.3 的支持;启动脚本中已添加 KASLR(内核地址空间布局随机化)支持。

主要组件更新:

  • U-boot 2024.1
  • Arm Trusted Firmware 2.10
  • Linux Kernel 6.6_LTS
  • Qemu 8.1
  • Xen 4.18
  • OpenAMP 2023.10

已停止支持的 BSP:

  • AMD Microblaze™:VCU118、KCU105、KC705、AC701
  • Zynq:zc706
  • AMD Versal™:VMK180-EMMC、VMK180-OSPI
  • Zynq MP:ZCU111

新 BSP (XSCT):

  • VEK280 量产版 BSP(含全新以太网 PHY 支持)

新的基于系统设备树 (SDT) 流程的 BSP:

  • ZCU102、ZCU104、ZCU105、ZCU216
  • ZCU208、ZCU208-sdfec、ZCU670
  • VCK190
  • VMK180
  • VPK120
  • VPK180
  • VEK280

通用基础设施

U-Boot

新增功能与增强功能

  • QSPI 闪存部件支持:W25Q256JWFIM、IS25LP02GG 和 IS25LX512M
  • OSPI 闪存部件支持:MX66UM2G45G
  • 已为 Zynq MP 和 Versal 平台启用 KASLR
  • 增加了对 OSPI 闪存的保护
  • U-Boot 已升级至 2024.01 版本
  • 新增 Defconfig:已为采用 AMD Zynq MP 的 Kria SOM 添加了默认配置 (defconfig) 文件
  • 现已为 Versal/Versal Net mini QSPI/OSPI 配置启用 CONFIG_LTO。

Arm Trusted Firmware (TF-A):

  • 升级到 TF-A 2.10 版

AMD Versal™ 启动、配置和安全性

AMD Versal 安全性:

  • RSA、ECDSA Versal Linux 驱动程序:为 Versal 器件引入了 RSA 和 ECDSA 的 Linux 驱动程序。
  • ZU+:​ - 上游安全镜像驱动程序:为 ZU+ 引入了上游安全镜像驱动程序。
  • Zynq MP SHA 向上游合并的待 Rebase 补丁:用于将 Zynq MP SHA 合并到上游以提高安全性的待 Rebase 补丁。
  • 分段配置 GA

AIE 资源管理器解耦:

  • AIE SSW 资源管理器现在已独立于之前的依赖项,可以实现更灵活的资源管理配置。

AIE 支持带子分区初始化的独立图编译:

  • AIE 现在支持带子分区初始化的独立图编译,这不仅能够更高效地利用资源,而且还可提高整体性能。

Linux PAN(特权访问禁止)支持:

  • 增加了对 Linux PAN(特权访问禁止)的支持,通过限制内核对特定内存区域的访问来增强安全性,从而减少潜在的漏洞。

XilSEM

  • Versal- Net
    • 针对 PL MB 和 A78 裸机环境的 XilSEM 客户端支持
       
  • Versal
    • 针对 SSIT 器件的 Tandem 设计支持
    • 针对 Mono 和 SSIT 器件的 DFx 设计支持
    • 继续为其他 mono(VE1752、VE2802)和 SSIT (VP2802) 器件提供支持

多处理软件

  • 组件升级到 2023.10 版本
  • 支持 virtio-pci 和 virtio-console
  • Xen 版本更新至 4.18
  • 针对 Zynq MP 与 Versal 的工作流解耦构建流程
  • 无缓冲 IPI 内核邮箱驱动支持与 OpenAMP 测试用例验证

Linux Kernel 6.6 和 Ubuntu 24.04 更新

器件驱动程序和框架:

  • VCU、VDU、Mali-400 和 PS_DP:更新了 VCU、VDU、Mali-400 和 PS_DP 的器件驱动程序和框架,以确保与 Linux Kernel 6.6 版和 Ubuntu 24.04 版兼容。

框架:

  • V4L2 捕获和 DRM/KMS 显示:更新了 V4L2 捕获和 DRM/KMS 显示框架,以支持 Linux Kernel 6.6 和 Ubuntu 24.04,确保实现无缝集成和出色性能。

工作流解耦流程支持:

  • 为 GPU、VCU、VDU 和 PS_DP Linux 驱动程序添加了工作流解耦流程的支持,增强了资源管理和任务分配的灵活性和效率。

Linux

  • Linux Kernel 升级到 6.6
  • 提供 XXV 以太网的 ethool 和 phylink 支持
  • Versal DDRMC Linux EDAC 驱动程序增强
  • 支持全新 OSPI 及 QSPI 闪存部件

裸机和 FreeRTOS

  • 针对 AMD Microblaze™ V 的量产支持
  • FreeRTOS Kernel 升级到 10.6.1
  • LwIP 升级到 2.2.0
  • FATFS 升级到 R0.15
  • 支持全新 OSPI 及 QSPI 闪存部件
  • AXI I3C 裸机驱动程序主模式支持

工作流解耦

  • AMD Vitis 统一平台中对 AMD Versal Net 和 VP1902 的支持
  • 基于 SDT 的 Petalinux BSP 支持
  • Yocto 支持通过 SDT + Lopper 构建嵌入式软件组件。
  • 为 Versal 和 Versal Net 提供子系统/隔离支持
  • FPGA 全比特流加载和 DFX 支持
  • 统一 Vitis 中的 Windows® 性能改进
  • 统一 Vitis 的增强功能(增量构建,硬件错误检查)
  • 支持嵌入式软件多媒体驱动程序
  • 支持 AXI PCIe 和 PS PCIe EP 驱动程序

2023.2 版嵌入式软件和工具的新增功能

展开以下各部分,进一步了解 2023.2 版嵌入式工具的新增功能和增强功能。

Yocto Project

  • Yocto 次要版本升级到 4.1.4 (Langdale)
  • AMD 组件升级集成
  • 实现动态配置
  • 重命名 fpgamanager 类
  • 保留现有类别,以便向后兼容 1 个版本
  • 在 Versal™ 平台的引入阶段,加入对经典 SoC/分段启动流程的初步支持
  • 改进了 fpgamanger_custom / dfx_user_dts 类对多个 dtsi 的支持
  • 改进并添加了 README 文件,网址如下:
  • Machine 配置
    • 移除了 zcu1275 和 zcu1285
  • 多媒体
    • Mali400 默认为 Weston 9,Lima 默认为 Weston 10(Mali400 与 Weston 10 不兼容)
  • Kria
    • 增加对 K24 和 KD240 的支持
    • 使用 Yocto 取代 Petalinux ramdisk
  • RISC-V 裸机工具链
    • 增加 rv32ima 和 rv32imc multilib
  • Gen-machine-conf:
    • 在 dt-processor 脚本中增加 machine override 选项
    • 在 dt-processor 脚本中增加 machine inheritance 选项

PetaLinux

  • 为 MicroBlaze (MB) 引入 NFS 根支持
  • 实现自动化启动流程:当用户在设计中选择任意可用存储器时,该流程将自动执行。
  • 实现自动化 HBM 启动流程
  • 在 PetaLinux 工具中支持分段式启动流程模板
  • 移除对 Ubuntu 20.04 LTS 和 20.04.1 LTS 版本的操作系统支持
  • 增加对 Ubuntu 20.04.6 LTS 和 22.04.2 LTS 版本的操作系统支持
  • 增加对 OPEN SUSE Leap 15.4 和 AlmaLinux 9.1 版本的操作系统支持
  • 增加了一个配置选项,用于指定使用 gen-machine-conf 生成 Yocto machine conf 文件时所用的 inherit conf 文件
  • 增加了一个配置选项,用于指定生成 machine conf 文件的额外 MACHINEOVERRIDES
  • 在 PetaLinux 中实现无需重新构建的密码恢复机制
  • 进行迁移以使用 PetaLinux 提供的新版 FPGA 管理器模板类,具体内容参见 UG1144 用户指南

设备树生成器 (DTG)

  • 在 DTG 中加入了 DCMAC 支持。
  • 在 DTG 中增加了对 Versal 新型分段启动流程的支持

通用基础设施

U-Boot

  • 引入了对 QSPI 闪存的锁定/解锁支持
  • 修改了 SPI 模块,将缓存刷新操作替换为缓存无效操作
  • 为 ZynqMP 配置添加了合适的 USB 功能依赖项
  • 在 zynq_gem 网络模块中移除了 MDC 时钟分频器的硬编码配置
  • 在 Versal 平台中,若未启用驱动程序,则移除 boot_targets 的相关配置
  • AMD 板级模块新增功能:支持通过设备树选择 bootscr 的闪存偏移量或大小
  • 在 spi-nor mtd 模块中新增了对并行和堆叠存储器的支持
  • 在 spi-nor mtd 模块中加入了对 w25q256jwfim 的支持

Arm Trusted Firmware (TF-A) for Versal:

  • 实现了运行时 dtb 中的 DDR 地址预留
  • 新增了对 SMCC ARCH SOC ID 的支持
  • 已迁移到 xlat_v2
  • 将 irq 数组替换为了 switch case 语句
  • 添加了获取 chipid 信息的支持
  • 解决了与 IPI 计算相关的问题
  • 在报头中配置了本地/远程 ID

Arm Trusted Firmware (TF-A) for ZynqMP:

  • 在报头中配置了本地/远程 ID

Versal™ 启动、配置和安全性

  • Versal PLM 的增强功能
  • 在 Versal 中增加了 IPI 消息筛选支持
  • 针对 Versal 的 PLM 调试功能进行了改进

增强安全特性:

  • 缩短了 Versal 中的身份验证时间

Zynq MPSoC FSBL:

  • 解决了系统中只使用 UART 时的打印混淆问题

优化 Shim Tile 资源管理:

  • 通过引入更多的指标集,提升了 AIE 的跟踪和性能分析能力,从而更好地支持资源管理。

添加 DMA 和 AIE-ML 特定状态转储:

  • 增强了 AIE 状态报告功能:现可通过读取额外寄存器获取 AIE 及 AIE-ML 中有关缓冲区描述符的新信息,包括 Mem tile 的相关信息。

测量 AIE Tile Kernel 利用率:

  • 实现了 Linux 运行时函数功能,用于进行占用率计算,进而测量 AIE tile 内核的利用率。

控制用户空间对时钟门控单元的访问:

  • 移除了时钟门控单元的用户空间映射,以控制用户空间访问。
  • 忽略由访问时钟门控单元触发的错误信号。

软件库

XilSEM

  • XilSEM 客户端已实现对 R5-Split 模式下 FreeRTOS 的支持。
  • 为 XilSEM 命令执行了 IPI 消息筛选。

Xen PL011 完整仿真:

  • 对 Xen 进行了增强,实现了 PL011 UART 的完整仿真,从而让未修改的操作系统在 Xen 中更容易运行。

提升了未修改操作系统的兼容性:

  • 提高了将搭载 PL011 UART 驱动程序的操作系统作为 Xen 虚拟机运行的能力。

Xen 对带 SMP 功能的 Cortex-R52 的支持

  • 为 Cortex-R52 平台上的 Xen 启用了对称多处理 (SMP) 支持
  • 允许在一个 RPU 集群的两个 Cortex-R52 核心上运行 Xen。
  • 简化了 R52 多核间的器件分配与资源保护配置。

针对 Virtio 的 Xen 安全支持

  • 添加了对 Safe Virtio 的 Xen 支持,可安全地将 Virtio 器件开放给 Xen 虚拟机。
  • 支持在 Dom0 或任意 DomU 中运行 Virtio 后端服务。
  • 运行 Virtio 后端不再需要完整权限,从而提升了安全性与保障。

  • Versal-Edge VDU Control-SW 应用现已支持自动实例选择参数功能。
  • 在用户没有指定视频解码器的器件 ID 的情况下,控制软件应用将根据当前负载确定器件。

PL HLS 视频 IP 的增强功能:

  • 在帧缓冲写入 IP 中引入了对 YUV_420_8bit 3planar 格式的支持。
  • 在帧缓冲读取 IP 中实现了对 YUV_420_8bit 3planar 格式的支持。

Linux:

  • 在 OSPI 驱动程序中增加了闪存保护支持。
  • 引入了对 1G/10G 交换 IP 的支持。
  • 增强了 PTP Timer Syncer 驱动程序,为其添加了 EXTTS 支持,并在 PL 以太网和 PTP Timer Syncer 驱动程序中添加了 PHC 设备/索引支持。
  • 现已在裸机驱动程序和 FreeRTOS 中提供对功耗管理 (PM) 框架的支持。
  • 以抢先体验形式提供 RISC-V BSP 支持功能。
  • 增加了对 Versal QSPI 反馈时钟检查的支持。
  • 实现了对基于系统设备树的工作流解耦流程的支持(通过 2023.2 Unified Vitis 提供),适用于 Versal、Zynq MP、Zynq 和 MicroBlaze 平台。

裸机,FreeRTOS:

  • 在裸机驱动程序和 FreeRTOS 中引入了 PM 框架支持。
  • 以抢先体验形式提供 RISC-V BSP 支持功能。

  • PL HLS 视频 IP 的增强功能:
  • 在帧缓冲写入裸机驱动程序中引入了对 YUV_420_8bit 3planar 的支持。
  • 在帧缓冲读取裸机驱动程序中实现了对 YUV_420_8bit 3planar 的支持。
  • PL 连接视频 IP 的增强功能:
  • 在 HDMI 2.1 Tx 裸机驱动程序中增加了对 VTEM 包特性的支持。
  • 在 HDMI 2.1 Tx 裸机驱动程序的 EDID 解析器中引入了 SCDB 支持。
  • 在 Versal VEK280 开发板的 HDMI 2.1 Tx Linux 驱动程序中启用了支持 RGB888 格式的 TMDS 模式 (4kp60)。
  • 在 Versal VEK280 开发板的 HDMI 2.1 Rx Linux 驱动程序中提供了支持 RGB888 格式的 TMDS 模式 (4kp60) 支持。
  • 在 DP 1.4 Rx Linux 驱动程序中增加了 HDCP 2x 支持。
  • 在 HDMI 2.0 Rx Linux 驱动程序中实现了 HDCP 2x 支持。

Yocto、PetaLinux、DTG 嵌入式工具更新:

  • Yocto 次要版本升级至 4.1.4 (Langdale),集成了 AMD 组件升级。
  • 新增对 Versal 平台经典 SoC/分段式启动流程的初步支持,并对 fpgamanager 类进行了增强。

启动加载程序与固件更新:

  • 为 U-Boot 中的 QSPI 闪存引入锁定/解锁支持。

AI 引擎器件驱动程序与工具:

  • 通过引入更多的指标集,提升了 AIE 的跟踪和性能分析能力。
  • 增强了针对缓冲区描述符和资源管理的 AIE 状态报告。

多处理软件 - Xen:

  • 实现了 PL011 UART 的完整仿真,以便于运行未修改的操作系统并增强兼容性。
  • 新增对 Cortex-R52 的 SMP 支持,简化设备配置流程,并提供安全增强型 Virtio 支持,显著提升安全防护能力。

视频编解码单元 (VCU) 软件:

  • Versal-Edge VDU Control-SW 应用支持自动实例选择参数。
  • 如果没有提供视频解码器的器件 ID,则根据系统负载自动选择器件。

多媒体 IP 驱动程序(Linux/裸机):

  • 增加了对帧缓冲写入及读取裸机驱动程序中各种视频格式的支持。
  • 在 HDMI 2.1 Tx 和 Rx 裸机驱动程序中引入了新特性,并在选定的 Linux 驱动程序中提供了 HDCP 2x 支持。

2023.1 版嵌入式软件和工具的新增功能

展开以下各部分,进一步了解 2023.1 版嵌入式工具的新增功能和增强功能。

Yocto Project

  • 将 Yocto 版本升级到 4.1 (Langdale)
  • 更新了 Langdale 的社区层,其中包括 meta-jupyter、meta-ros 和 meta-openamp
  • 新增了 ZCU670、VHK158、VPK120、VPK180、VEK280、AC710、KCU105 和 VCU118 的设备配置支持
  • 针对 Linux、u-boot、TF-A、Xen、Qemu、GStreamer、Openamp/libmetal 集成了升级的 AMD 组件

PetaLinux

  • 将 Petalinux 工具升级到全新 Yocto 4.1 版 (Langdale)
  • 支持新的操作系统 - Ubuntu 20.04.5、22.04 LTS 和 22.04.1、Alma Linux 8.7 以及 Open Suse leap 15.3
  • VPK180、VEK280、ZCU111、VCK190、VPK180、ZCU104、SE7、SE9、K24c-SOM、K24I-SOM、KV240 入门套件以及 KD24 入门套件的 BSP 支持与更新

设备树生成器 (DTG)

  • 启用了覆盖层的语法糖
  • 为 DFX/CSOC 启用了自定义 DTSI 流程

通用基础设施

U-Boot

  • U-Boot 升级到主流 2023.01
  • Zynq MP:为 U-Boot 控制台新增显示驱动程序
  • Versal:增加对 Micron 闪存的 OSPI DDR 支持
  • Versal:为以太网添加 ADI phy 支持

Arm Trusted Firmware (TF-A)

  • TF-A 升级到上游 v2.8 版本。
  • Versal:将宏名称更新为通用名称,并将其移动到公共位置。
  • Versal:新增多中断处理基础设施

Versal™ 启动、配置和安全性

Versal PLM

  • 修复了 Versal Net 的 APU IPI 警告逻辑
  • 堆栈大小增加 1KB
  • 修正了镜像存储实现方案 - 如需了解更多详情,请参见 UG1304

PMU 固件 (PMUFW)

  • TF-A 升级到上游 v2.8 版本。
  • Versal - 将宏名称更新为通用名称,并将其移动到公共位置
  • Versal - 新增多中断处理基础设施

AI 引擎驱动程序 – Linux

AIE-ML Linux 调试

  • 新增对事件跟踪与分析的支持。
  • 新增 Mem Tile 事件支持
  • 新增对状态转储与 sysFS 的支持
  • 现已支持 V70 和 VEK280 器件

有关 AIE 驱动程序代码,请访问:https://github.com/Xilinx/aie-rt/tree/main-aie

软件库

XilPLMI

  • 新增了对从次级 SLR 转发 SSIT 单个 EAM 事件的支持
  • 修复了 Versal Net 的 CFI 回读逻辑
  • 新增对次级启动模式跳过 SRST 及多重启动寄存器更新的检查机制

XilLoader

  • 修复了启用 PLM_SECURE_EXCLUDE 时的编译警告

XilPDI

  • 在 XilPdi_ImgHdr 中添加了 PcrInfo 特性

OpenAMP 和 LibMetal

  • Libmetal 升级到 1.3.0,Open-amp 升级到 1.3.1

Xen Hypervisor

  • Xen 更新到 4.17
  • 支持 Virtio-disk 和 Virtio-net

  • 将 GStreamer 框架更新到 1.20.5 版本
  • 更新了 AMD V4L2 与 DRM 框架以支持 6.1 内核
  • 更新了 VCU、PS_DP 和 GPU Linux 器件驱动程序以支持 6.1 内核
  • VCU 新增功能:控制软件层添加了使用“--decode-intraonly”命令行选项解码纯帧内编码帧的功能

Versal AI Edge (VEK280):

  • VideoDecoderUnit (VDU) 软件支持
    • Control-SW、openMaxIL、MCU 固件二进制和内核模块驱动程序源代码库已发布
    • 支持 VDU 多流及多实例解码
    • 支持示例解码器测试应用

  • VCU 产品指南 (PG252) 更新
  • VVAS SDK v3.0 版本
    • 基于 Vivado 和 Petalinux v2022.2
    • 取决于 Vitis-AI v3.0
  • Versal VDU(视频解码器单元)
    • VDU 产品指南 (PG414) 更新:2023 年 7 月 8 日上线
    • VDU 通用访问版本:详见 github.com

  • VCU TRD v2023.1 已于 2023 年 5 月 10 日发布

裸机

  • lwip 升级至 2.1.3
  • lwip 功能增强:支持 PS SGMII 固定链路、多 MAC 及多 PHY 配置
  • FreeRTOS 升级至 10.5.1
  • 支持 WWDT Q&A 模式
  • 支持 eMMC 5.1 HS400 模式

Linux

  • Linux 内核升级至 6.1
  • 提供 Axi 以太网 phylink 支持
  • 提供 Versal 引脚控制器支持
  • 提供 GiGadevice OSPI 和 QSPI 闪存部件支持
  • 支持 eMMC 5.1 HS400 模式
  • 为 Versal 正式版本提供 Classic SoC Boot 支持

  • 为 ZU+ 102/104/106 和 VCK190 提供了 QNX BSP(请与您的现场应用工程师联系)
  • 通过 QNX 提供 VCU、DPU 支持 - 通过 QNX 软件中心提供正式版

  • Yocto 和 Petalinux
    • 将 Petalinux 工具升级到全新 Yocto 4.1 版 (Langdale)
    • VPK180、VEK280、ZCU111、VCK190、VPK180、ZCU104、SE7、SE9、K24c-SOM、K24i-SOM、KV240 入门套件以及 KD24 入门套件的 BSP 支持与更新
  • 设备树生成器 (DTG)
    • 为 DFX/CSOC 启用了自定义 DTSI 流程
  • AI 引擎驱动程序 – Linux
  • AMD 器件认证版 Ubuntu
  • Xen Hypervisor
    • Xen 更新到 4.17
  • 新的 VCU 功能
    • 控制软件层添加了使用“--decode-intraonly”命令行选项解码纯帧内编码帧的功能

嵌入式工具 2022.2 中的新增功能

展开以下各部分,进一步了解 2022.2 版嵌入式工具的新增功能和增强功能。

Yocto Project

  • Versal Classic SoC 的 fpgamanager bitbake 类支持
  • Zynq MP DFX 的 fpgamanager bitbake 类支持
  • 支持 ROS2 Humble 元层(Zynq MP、Versal)
  • 支持 Kria SOM、入门套件 QSPI 以及 SD 卡镜像构建
  • 初始 Versal Net 支持

PetaLinux

  • 为 Versal 提供经典 soc 命令行支持
  • 允许选择将启动参数追加到现有启动参数,无需覆盖
  • 在 petalinux-config 中为 plm 和 psm-fw 选项增加了外部及远程构建支持
  • 新增 Ubuntu 18.04.06,20.04.4 和 CENTOS/RHEL 8.6 操作系统支持,移除了 centos/RHEL 7.8 和 8.1 支持
  • VPK180 ES1 BSP、VHK158 EA BSP、VPK120 Prod BSP。

设备树生成器 (DTG)

  • 为 Versal 新增经典 SOC 支持
  • 在 DTG 中提供宽位拼接模块支持

通用基础设施

U-Boot

  • 在 Versal 中添加了通过 EL2 到 EL1 的切换来加载和执行 EL1 应用程序的支持。
  • 在 spi-nor 框架中,为每个写使能 (Write Enable) 命令添加了写禁用 (Write Disable) 命令。
  • 修复了子系统重启时无法检测 USB 的问题。
  • 修复了 USB 盘与键盘和鼠标等低速器件通过同一 USB 集线器连接时,无法检测 USB 盘的问题。

Arm Trusted Firmware (TF-A)

  • 为 xck24 芯片添加缺失的解码器
  • 实现新的 IPI 命令 PM_LOAD_GET_HANDOFF_PARAMS,以获取 TF-A 切换信息

Versal

Versal™ 启动与安全

  • SSI 技术 PLM - PLM 通信(SLR 间的通信)
  • PLM、工具中的版本管理
  • 安全锁定
  • 将软件加载到 HBM 中,无需任何额外的 DDR 内存
  • 篡改触发器和响应支持
  • 为 SSI 技术器件提供的、具备认证功能的硬件信任根启动方案

Zynq™ UltraScale+™

PMU 固件 (PMUFW)

  • PinCtrl API 支持启用/禁用 MIO 三态
  • 在因硬件限制而产生自刷新的情况下,禁用 CRC/奇偶校验重试特性
  • 修复了与以太网唤醒以及覆盖配置对象加载相关的错误

AI 引擎驱动程序 – Linux

增加了对 AIE-ML 器件的支持

  • 已部署窗口化事件追踪支持功能
  • 多应用交换性能增强
  • 新的矢量化矩阵乘法示例代码通过 BSP 提供

AIE 引擎驱动程序裸机

  • 增加了对 AIE-ML 器件的支持

软件库

XilSEM

  • 增加了对客户端和服务器中的 SSIT 器件的支持以及示例
  • 为使用 PLM SW 触发事件管理框架的 A72 linux 用户添加了 XilSEM 错误通知
  • 改进了 GT 仲裁超时处理与通知
  • 为基本位数据分类 (EBD) 提供了示例

OpenAMP 和 LibMetal

  • Libmetal 支持 A72 裸机

Xen Hypervisor

  • vTPM 支持
  • Xen 域能够访问虚拟 TPM 器件,以实现安全启动等功能
  • 易用性:自动生成直通 DTB
  • 使用 ImageBuilder 和 Lopper 自动生成直通设备树,以便将设备分配给 Xen 域

  • VCU 演示了在 AMD 的低延迟模式下处理 4:4:4 色度采样格式的能力:正式版本

VCK190 以太网 TRD(基于可切换 10/25G MRMAC 的 IEEE Std 1588 参考设计)

  • 设计升级至 2022.2

VCK190 多媒体 TRD(视频+ML)

  • 单传感器平台升级至 2022.2
  • 增加了使用 AIE 进行 4K 图像处理的支持
  • 添加 DPU 以执行对象检测

已弃用的 TRD

  • VMK180 PCIe TRD
  • VCK190 四路传感器平台
  • VCK190 HDMI 平台

注意:所有的目标参考设计都将在 2022.2 发布后的几周内提供。

裸机

  • 增加了为 ARMv8 读取 PMU 计数器的支持(Cortex-A53、Cortex-A72)
  • 增加了 PSI2C 的 SMBus 支持
  • 增加了对 Micron OSPI 闪存器件的 OSPI WP 特性的支持
  • 为 Cortex-A78 和 Cortex-R52 提供了裸机 BSP 支持
  • 为 Cortex-A78 和 Cortex-R52 添加了 FreeRTOS 支持

Linux

  • 增加了对 Versal OCM EDAC 的支持
  • 增加了对 GEM 通用 MDIO 总线探测处理的支持
  • 为 Versal 新增 Classic SoC Boot 支持

  • 为 ZU+ 102/104/106 和 VCK190 提供了 QNX BSP(请与您的现场应用工程师联系)
  • 通过 QNX 提供 VCU、DPU 支持 - 通过 QNX 软件中心提供正式版

  • 嵌入式软件构建工具和软件栈年度更新:
    • Linux Kernel - 5.15
    • Yocto Project:3.4
    • GNU Tool Chain - GCC 11.2
    • U-boot - 2022.01
    • Device Tree Compiler - 1.6.1
    • Xen Hypervisor - 4.1.6
    • Arm Trusted Firmware - 2.6
    • FreeRTOS - 10.4.6
  • 更新了 AI 引擎驱动程序,以支持 AIE-ML 器件
  • 为 Kria SOM 硬件功能和 ROS2 层增加器件驱动程序支持
  • 提供对 Ubuntu 22.04 LTS (Jammy Jellyfish) 发行版的支持
    • Zynq™ UltraScale+™ 和 Kria™ 上的 22.04 版本认证正在进行中
  • VCU 和多媒体设计与 TRD 更新
  • 提供支持 DPU 和 VCU 的 Zynq UltraScale+(102、104、106)适用的 QNX BSP

2022.1 版嵌入式软件和工具的新增功能

展开以下各部分,进一步了解 2022.1 版嵌入式工具的新增功能和增强功能。

Yocto Project

  • 在 aarch64 架构上,将 systemd 设置为默认的 init 管理器
  • 禁用自动登录(上游更改)
  • 移除直接根登录(上游更改)
  • 支持 Versal DFX(单插槽)
  • 弃用 BOARD/BOARD_VARIANT,转而采用 machine inheritance 模型

PetaLinux

  • 用户首次登录时,需要为默认用户设置密码
  • 弃用 MicroBlaze 精简架构
  • 兼容新旧版本 VCK190/VMK180 板卡的通用 BSP

设备树生成器 (DTG)

  • 自动生成 AIE 时钟信息。
  • Versal 中支持 DFX 单插槽

通用基础设施

U-Boot

  • 增加了 Zynq UltraScale+ pinctrl 驱动程序
  • 增加了 Zynq UltraScale+ GPIO 模式引脚驱动程序
  • 增加了对 SLG7XL45106 I2C GPO 扩展器的支持
  • 新增功耗域驱动程序,以加载动态 PMU 配置对象
  • 增加了对 USB2244 SD over USB 的支持
  • 新增 USB5744 USB 集线器复位功能
  • 支持动态 SD 配置
  • 增加了从 EEPROM 中的多记录 FRU 数据读取 MAC 地址的功能
  • 增加了从 PHY 节点读取 ethernet-phy-id 并通过 GPIO 复位 PHY 的功能

Arm Trusted Firmware (TF-A)

  • 禁用 -mbranch-protection 标志,避免 GCC 11.2 导致 TF-A 体积增大
  • 为处理 Versal 中的 EEMI 命令,添加了通用接口

Versal

PLM 启动支持

  • XilPLMI_v1.6 - 增加了对 XMPU/XPPU EAM 错误的处理支持
  • XilPLMI_v1.6 - 为每个 SSIT 节点启用了 ssit_sync
  • XilPM_v4_0 - 为 Versal 器件提供了 SRST 序列
  • XilPM_v4_0 - 移除了用于 XPPU/XMPU 保护的 CDO 命令
  • 此操作可通过 PDI 中的 CDO 实现
  • XilPM_v4_0 - 为 AIE1 添加了运行时操作支持

Zynq™ UltraScale+™

FSBL

  • 解决了非零多重启动偏移引起的辅助启动问题
  • 新增对 ZCU670 电路板的支持

PMU 固件 (PMUFW)

  • 更新了写入另一个叠加配置对象的权限
  • 在 ENABLE_DYNAMIC_MIO_CONFIG 宏下增加了对动态 SD、GEM 和 USB 配置的 IOCTL 支持
    • 默认情况下禁用
  • 多次调用现有节点的叠加配置时报错
  • 添加了可使用 ENABLE_DDR_XMPU 宏手动启用 DDR XMPU 设置的用户选项
    • 默认情况下禁用

AIE 时钟频率调节

  • 在运行时,应用或工具可通过 xbutil 或 XRTAPI 更改 AIE 频率要求
  • 在运行时,应用或工具可通过 xbutil 或 XRTAPI 获取 AI 引擎频率,如下所示。
  • AI 引擎频率可以调低或调高
    • 最大频率受限于平台设计中 Vivado/Vitis 的设置。
  • 使用 xbutil 高级子命令设置或获取 AIE 时钟频率

裸机错误处理

  • 增加了对报告裸机 AIE 驱动程序中的 AIE 错误的支持
    • 此前仅 Linux 受支持
  • 裸机错误处理代码可供第三方操作系统/RTOS 移植时参考

  • 升级至 Ubuntu 22.04 LTS (Jammy Jellyfish)
  • 5 月中旬为 Kria SOM 套件发布测试版
  • 6 月中旬为 Kria SOM 套件和 ZCU10x 评估板发布最终版
  • ZCU10x 镜像现在包含 ZCU111 (Zynq UltraScale+ RFSoC)

OpenAMP 和 LibMetal

  • 在 Zynq UltraScale+ 平台上,OCM 内存可用于 APU 和 RPU 之间的 RPMsg
  • OpenAMP 和 LibMetal 同步到 2021.10 上游版本
  • 在 Kria SOM 平台上启用了 OpenAMP

Xen Hypervisor

  • 改进了虚拟机与虚拟机之间的通信机制
  • PV 驱动程序支持 dom0less 虚拟机
  • 将可编程逻辑块动态分配给运行虚拟机

  • 在低延迟 GOP 应用中动态插入 IDR 帧
  • VCU 处理 YUV 4:4:4 10 位支持:正式版本
  • 自定义 AMD YUV 4:4:4 编解码解决方案
  • 更新了 V4L2、PS DisplayPort DRM 和 VCU 内核驱动程序,以支持 Linux v5.15
  • AMD GStreamer 已变基至 v1.18.5 版本
  • 将 VCU 编解码器时钟设置移动至 vcu 模块
  • 使用更新的时钟名称序列和索引更新了 VCU 设备树节点定义
  • 在 PS DisplayPort 上支持 44.1k 和 48k 采样率音频
    • 符合 IEC60958 标准

VMK180

  • PCIe TRD 更新至 2022.1

VCK190

  • 四路传感器平台:演示语义分割以及基于来自图像传感器的四个视频源进行的对象检测
  • 单传感器平台:演示基于来自图像传感器的视频源进行的面部检测
  • HDMI 平台:演示使用 AIE 的 4k 图像处理
  • MRMAC 四客户端 4x 10/25G MRMAC 交换功能
  • MRMAC IEEE 1588 时间戳

ZCU106

  • 原有 VCU TRD 升级至 2022.1 工具
  • 新设计模块:VCU 处理 YUV 4:4:4 格式

  • 软件栈版本年度更新
  • Linux Kernel 5.15、Yocto Project 3.4 Honister
  • 为 Kria SOM 硬件特性增加额外的器件驱动程序支持
  • Ubuntu 发行版支持更新至 22.04 LTS (Jammy Jellyfish)
  • VCU 和多媒体设计更新

2021.2 版嵌入式软件和工具的新增功能

  • 为 PetaLinux 新增 MCS 生成支持
  • 支持从 Image.gz 文件启动(Zynq UltraScale+ MPSoC 和 Versal 自适应 SoC)
  • 在整个软件栈中执行基于 IOCTL 的动态重新配置
  • 对 ZCU102、ZCU104、ZCU106 和 Kria KV260 上的 Ubuntu 20.04 LTS 的官方支持
    • 有关更多信息,请参阅 AMD Wiki (wiki.xilinx.com)
  • 在 FSBL (Zynq UltraScale+) 和 U-Boot 中支持新闪存器件
  • 改进了 Linux 多媒体基础设施支持
  • 在 Xen 的 ImageBuilder 中提供 SecureBoot(身份验证)支持
  • Xen 中增强了客户机之间的通信
  • 提供高达 4Kp30 的 VCU 编码/解码支持

2021.1 版嵌入式软件和工具的新增功能

展开以下各部分,进一步了解 2021.1 版嵌入式工具的新增功能和增强功能。

Yocto 组件

PetaLinux

  • Zynq MP 和 Versal PetaLinux BSP 启动至基于 tinyram 的 rootfs,切换到基于 ext 的完整 rootfs。默认 rootfs 配置适用于 ext4 上的完整 rootfs。
    • ZCU102、ZCU104 和 ZCU106 现在都有支持 Vitis 的设计和 XSA。
    • 全新 ZCU670 BSP 现已推出。
    • PetaLinux 工具已支持 MicroBlaze 处理器的发行版启动 (distro boot)。
    • 默认情况下,PetaLinux 在配置过程中使用 bitbake 而非 devtool。

AI 引擎调试

  • 用于 AIE 状态转储的 SYSFS 节点。

FSBL、PLM 和 BootGen(启动)

  • PLM 支持从运行时应用接收 DDR 镜像存储
  • 添加了权限控制与检查,允许一个子系统管理另一个子系统的生命周期。
  • 在不同的软件层添加事件管理通知支持
  • 在 PLM 间传输的 IPI 消息中添加 CRC 校验值
  • XilSecure 客户端支持裸机应用
  • 向 PLM 发出的子系统重启成功提示
  • 添加了 PLM 定期检查,可确保 PSM 处于活跃状态
  • 在 Vitis 中添加了 Versal 启动镜像创建向导

PLM(运行时)

  • (PLM) NOC 运行时时钟门控(未使用时自动启用)
  • (PLM) 面向 PSM 的 FuSa 保活机制
  • (PLM) 系统错误订阅/通知机制 – 内核级增强支持

4U-Boot

  • 更新至 v2021.01
  • 在 Micron SPI 闪存器件的 U-Boot 中提供块保护命令支持。
  • zynqmp mmio_read 和 zynq MP mmio_write 命令可用于从 U-Boot 访问安全寄存器。

4Arm Trusted Firmware

  • 在 ATF 中增加了事件管理接口支持
  • Arm Trusted Firmware v2.4

Linux

  • 更新到 Linux Kernel - 5.10.x
  • 提供 VFIO 框架支持 - 允许用户空间应用将虚拟存储器映射到 IOVA 地址中
  • 提供 DMABUF 和 DMA Fence 支持 - 允许用户空间应用直接管理内核空间存储器,实现应用和驱动程序之间的缓冲区共享
  • Rebase 补丁已发布

FreeRTOS

  • FreeRTOS 版本已升级到 10.4.3

Linux Device Drivers

  • 更新了 AXI 以太网驱动程序,以支持所有 Linux ethtool 功能
  • 为 Versal 新增 Linux EDAC 驱动程序支持

裸机驱动程序

  • AXI 定时器的裸机驱动程序 (Versal ACAP)
  • 更改了 DWC3 驱动程序中的 ULPI 复位逻辑

  • 更新了开源库:binutils (2.35)、gcc (10.2)、gdb (9.2)、glibc (2.32)、newlib (3.3)、Device Tree Compiler - v1.6.0

Xen Hypervisor

软件栈更新

  • Arm:ATF v.2.4
  • Yocto Project: 3.2 Gatesgarth
  • Denx: U-boot v2021.01
  • Xen:v4.14
  • Linux:v5.10.x

Zynq™ UltraScale+™ 多媒体与视频编解码器单元

通用 VCU 更新

  • VCU 对 HLG (Hybrid Log Gamma) 的支持
  • 在控制软件下演示低延迟 Phase2 模式的实时视频流水线
  • NTSC 分辨率 (486i) 增强
  • 金字塔型 GOP 的动态 IDR 帧插入
  • IDR 切片类型增强
  • GStreamer 中的单色 (GRAY8/GRAY10) 支持
  • VCU PL DDR4 控制器 IP 增强:为用户提供添加 DDR 自定义部件的机制

VCU TRD 设计 (ZCU106)

  • HLG 支持全面的流水线
  • SDI Rx (HLG) à Encode à Decode à SDI Tx (HLG)

VCU 关注区 (ROI) TRD (ZCU106)

  • Avnet Quadsensor 摄像头输入
  • 基于 Vitis AI v1.4

4Power Advantage Tool:(ZCU111、ZCU208、ZCU216、(自适应 SoC):VCK190、VMK180)

  • 将对 Power Advantage Tool 的支持扩展至新的工具版本、量产芯片以及新产品
  • 自适应 SoC Python 库将功耗测量集成到 TRD 和演示中

混合安全性:禁用低安全等级功耗管理主控制器

  • 可禁用低安全等级 APU 功耗管理,以便提供混合安全性支持
  • 可禁用低安全等级 APU 复位
  • 通过标志选择整合了工具支持

Versal 功耗域:FPD,系统功耗域

  • 即将发布支持深度睡眠的工具及架构构建块。

开发板评估与管理 (BEAM) 工具:VCK190、VMK180

  • 开箱即用体验。开发板配置与测试。
  • 轻松访问开发/演示仪表板:Versal 电动工具、自适应 SoC Cockpit、功耗管理仪表板(测试版)

Power Advantage Tool (SC):VCK190、VMK180

  • 与 Versal 无关,因此可以使用 TRD/演示/客户设计混合匹配
  • 将自适应 Soc 设置与 BEAM 工具、视频演示及剪切粘贴 Python 定制 Wiki 进行了整合

自适应 SoC Cockpit(公开版安全更新)

  • 可轻松查看并编辑 Versal 寄存器。绘图与文件特性。
  • 与注册文件相对应。
  • 系统控制器 IP 仪表板的构建块。

功耗管理仪表板

  • 测试版提供功耗域/隔离岛的实时状态可视化,GUI 架构支持后续扩展时钟与性能监控。
  • 独立于 Versal,因此可以混合搭配,以查看任何 Versal 应用的功耗管理状态

HSDP/SmartLynq+ EDT 和视频

调试 PCIe

  • 基于 PCIe 接口的 PS 高速调试功能现已开放抢先体验。
  • 基于 PCIe 接口的 PL (Chipscope) 高速调试功能现已开放抢先体验。
  • 基于 PCIe 的 PS + PL 调试功能现已开放抢先体验。

Soft Aurora HSDP 示例

VCK190 / VMK180 (Versal™)

  • VMK180 TRD
    • VMK180 多媒体 TRD(6 月底)
    • VMK180 PCIE TRD(6 月底)
  • VCK190
    • VCK190 以太网 TRD(7 月底)
    • 支持 DPU 的 VCK190 单路传感器 TRD(7 月底)
    • 支持 DPU 的 VCK190 四路传感器 TRD(7 月底)
    • 支持 AI 拼接器的 VCK190 HDMI TRD(7 月底)

BEAM 工具

  • 针对 VCK190 和 VMK180 推出全新测试版 BEAM 工具(系统控制器镜像),其中包括:
    • Power Advantage Tool
    • 开发板测试
    • 开发板配置
  • 9 月底投入量产

Zynq UltraScale+ RFSoC

  • RFSoC Gen1、Gen2 和 Gen3 RF DC 评估工具更新
  • RFSoC Gen1、Gen2 和 Gen3 PetaLinux BSP 更新
  • 为 RFSoC Gen 3 提供量产支持

2020.2 版嵌入式软件和工具的新增功能

嵌入式软件:

  • PetaLinux 现已集成至 AMD Unified Installer(仅限 Linux)
  • PetaLinux 文档合并了 UG1157 和 UG1144
  • 在 petalinux.xilinx.cn 上可找到每个架构的二进制 Linux 发行版
  • 设备树生成器支持 Linux Kernel v5.0+
  • 设备树生成器支持复杂的多媒体流水线
  • 在 KC705、AC701 和 KCU105 PetaLinux BSP 中提供 Vivado CED 支持
  • KCU105、ZCU106、VCU118 PetaLinux BSP 中的 Micron DDR 停产问题缓解方案
  • 量产 Zynq UltraScale+ RFSoC Gen3 PetaLinux BSP

嵌入式工具 2019.1 中的新增功能

嵌入式 Linux 工具

  • PetaLinux 工具 – 从 AMD 下载中心下载 PetaLinux 工具
    • 支持 GCC 8 系列工具链
    • 主机操作系统支持
      • Red Hat/CentOS - 7.4、7.5、7.6
      • Ubuntu - 16.04.5 LTS、18.04 LTS
    • 支持 BSP
      • SP701 (Spartan 7) - 支持初始板
      • ZCU1275 (Zynq UltraScale+ RFSoC) - 通过 FMC 插件卡实现以太网连接,通过 Uboot 提供 TFTP 启动支持
      • ZCU1285 (Zynq UltraScale+ RFSoC) - 仅限专区访问

AMD GitHub 页面上提供的所有资源:https://github.com/Xilinx

启动加载程序与固件更新

  • FSBL 更新
    • Vivado 在 AMD 评估板上支持 DIMM SPD 数据
    • 使用 PSU_DYNAMIC_DDR_CONFIG_EN Tcl 参数实现
  • PMUFW 更新
    • 更新为 1.6 版
    • PMUFW 安全评估正在进行中,计划于 2019 年 7 月前完成

U-Boot 和 ARM Trusted Firmware

  • U-Boot 更新
    • USB 3.0 主机支持
    • 支持多主机 I2C
    • 基于 XilSecure 的 SHA 和 RSA 操作
    • 闪存器件更新
闪存器件 密度 (Mb) 电压
IS25LP128F 128 3.3
IS25WP128F 128 1.8
IS25LP256D 256 3.3
IS25WP256D 256 1.8
IS25LP512M 512 3.3
IS25WP512M 512 1.8
  • ATF 更新
    • 针对 IPI 消息提供的校验和支持
    • 增强了对时钟基础设施的 API 支持
    • 增强型器件运行时检测机制

多媒体框架更新

特性 控制
软件
GStreamer 支持
32 条同步数据流 - 480p(编码和解码)
VCU 解码器 - 支持动态分辨率变化
VCU 编码器 - 支持动态分辨率变化
VCU 编码器 - 支持跳帧
VCU 编码器 - 时间层视觉质量提高(仅 Pyramidal GOP)
支持 VCU PL DDR 控制器(4KP60、4-2-2、10 位、同时编解码)- 公开发布
支持 DCI 4K (4096x2160@60fps)(-2、-3 速度等级)
支持 NAL 单元插入
支持多流音频 + 视频编码/解码
支持上限 VBR 速率控制

RTOS 和库

  • FreeRTOS 更新
    • 更新至 v10.1.0
  • LwIP 更新
    • 更新至 v2.1.1

OpenAMP 和 Xen 更新

  • OpenAMP
    • RPU 主控制器支持裸机应用
  • Xen Hypervisor
    • 支持官方 Dom0-less
    • 客户控制的每器件功耗管理(基于 EEMI)

MicroBlaze 软核处理器

  • 支持公开发布的 64 位 MicroBlaze
    • 整个 AMD 生态系统均受支持
    • 裸机及 FreeRTOS BSP

Zynq UltraScale+ RFSoC 更新

  • 工具支持
    • 针对 Zynq UltraScale+ RFSoC Gen2 和 Gen3 提供全面的 Vivado 和 XSDK 支持
    • 支持 RF 数据转换器评估工具
    • 支持 RF Analyzer
    • 支持 Power Advantage Tool
  • 支持运行时软件
    • API 支持高频振动切换
    • SDFEC Linux 内核驱动程序升级已开始