AMD XDNA 2 / HX370 NPU 架构与手册归档
本目录收录 HX370 的架构资料、官方 AIE 手册与固定 commit 的源码快照。关于单核怎样执行矩阵乘、MAC 位于哪里,以及 C++ kernel 怎样组成多核程序,见从 AIE C++ 看架构与编程模型。
HX370 上实际枚举出的 NPU 是 NPU Strix,属于 AMD XDNA 2,工具链架构名为
aie2p。完整阵列为 8 列 × 4 行计算 tile = 32 个 AIE 计算核心;每个核心包含
标量处理器与 SIMD 向量单元。xrt-smi 的 6x8 包含 memory 与 shim 两行,不能算成
48 个计算核心。这里的 Scalar 数量按 32 个计算 tile 内各一个标量单元 计数,
不是宿主机 x86 CPU 核数,也不是 Hexagon 的硬件线程数。
图 1|HX370 XDNA 2 阵列与单核资源。依据下文的 NPU2 target model 与 AIE 手册绘制;实线表示逻辑数据/指令路径,虚线表示控制分发。
可编辑原图:amd_xdna2_hx370_architecture.svg。 橙色表示计算,蓝色表示软件管理的片上 SRAM,灰色表示接口与外部内存。 箭头表示逻辑数据路径;未标注未经实测的带宽、频率或持续 TOPS。
归档设备身份与证据
下表整理随资料引入的 2026-10-12 UTC 只读设备探测结果。原项目的完整
device-probe.json 未随本知识库归档,以下设备版本属于归档记录,不能在本站独立复核;
本次编写章节也没有重新连接设备或执行 benchmark。
表 1|归档设备身份与工具版本
| 身份 | 原始归档中的读取结果 |
|---|---|
| CPU / SoC | AMD Ryzen AI 9 HX 370 w/ Radeon 890M;12 核 / 24 线程 |
| NPU | NPU Strix,aie2p,拓扑 6x8;platform 报告 Total Columns: 8 |
| PCI | 0000:66:00.1,vendor/device 1022:17f0,revision 0x10 |
| Linux / 系统 | 7.0.0-38-generic / Ubuntu 24.04.5 LTS |
| XRT 工具 | /opt/xilinx/xrt/bin/xrt-smi,版本 2.25.37 |
| XRT source SHA | 0026185de81a179dc7d886197d3e35f9a179b4e8 |
| XRT binary SHA256 | 5370119f0d60e1e4e93bb584164a62efc726c308e815364c286f52f5e7be6ec5 |
| amdxdna | 2.25.260102.56.release_20260630,source SHA 88dda53eee336c998abca38c71d5bc79fb3633b8 |
| 驱动文件 | /lib/modules/7.0.0-38-generic/updates/dkms/amdxdna.ko.zst |
| NPU firmware | 1.1.2.64 |
| 分区状态 | 归档查询时 No hardware contexts running on device |
原始探测没有输入模型、加载模型 runtime 或执行 benchmark,因此这份归档只记录 架构与设备身份,不构成模型运行、精度或性能通过的证据。XRT CLI 的身份查询 也不能代替模型推理的执行记录。
架构、数量与容量
AMD 的 NPU2 target model 明确规定:物理列数为 8、总行数为 6,
row 0 为接口 tile,row 1 为 memory tile,其余四行为 compute tile。
NPU2 是 IRON/MLIR-AIE 的设备目标名称;不表示系统里有两颗 NPU。
aie2p 是该目标的编译器架构名;芯片/驱动显示名称是 NPU Strix。
表 2|阵列资源数量与容量
| 块 | 数量 | 单块规格 | 总量 / 角色 |
|---|---|---|---|
| Compute tile / AIE core | 32(8 列 × 4 行) | 标量单元 + 向量单元,VLIW 调度 | 分布式执行 C/C++ kernel |
| Scalar unit | 每个 compute tile 1 个,共 32 个 | 32-bit RISC,整数 ALU、分支等 | 属于 AIE 核心内部,不是 32 个 x86 核心 |
| Vector unit | 每个 compute tile 1 个,共 32 个 | 512-bit SIMD 寄存器;MAC / 矩阵 kernel | SIMD 宽度不等于所有指令的访存宽度或 MAC 吞吐 |
| Compute-tile data SRAM | 32 块 | 64 KiB | 2 MiB;工具链常称 L1,软件管理的 scratchpad |
| Compute-tile program SRAM | 32 块 | 16 KiB | 512 KiB;独立于 data SRAM |
| Memory tile | 8(row 1) | 512 KiB SRAM + DMA / stream switch | 4 MiB 分布式 scratchpad,工具链常称 L2 |
| Shim / interface tile | 8(row 0) | 对外 DMA / 接口 | 连接系统内存与 tile stream 网络 |
64 KiB、16 KiB、512 KiB 来自该 NPU2 模型继承的本地/程序存储定义 与 memory-tile 容量定义。容量是 编译器模型规格,不是设备 allocation 实测。 全阵列 data SRAM 为 6 MiB(2 MiB compute + 4 MiB memory),不意味着任一核心能 访问一个连续、统一、任意分配的 6 MiB buffer。program SRAM 单独计数。
数据通常走 system DDR/LPDDR → shim DMA → memory tile → compute-tile buffer,
再由向量单元计算并反向输出。stream switch 提供可配置的数据流网络;相邻 tile 的
内存访问及 cascade 路径是额外的数据交换机制,不是所有数据必须逐层经过的 CPU cache。
L1/L2 在这里描述片上存储层级,不具有 x86 L1/L2 cache 的透明替换语义。
与 Hexagon 图对照时,应比较 每个执行资源的层级:Hexagon 的 Q6 scalar core 搭配
HVX/HMX,而 XDNA2 将 scalar 与 vector MAC 分布到每个 AIE 计算 tile;矩阵 kernel
使用 tile 内的向量计算资源,不能直接套用一个独立、全阵列共享的 HMX ×1 块。
已证实、强推断与待验证范围
- 原始探测报告:CPU 型号、PCI 身份、NPU Strix /
aie2p、6x8、8 列, XRT/驱动/firmware 版本,以及探测时没有活动硬件 context;原始输出未随本站归档。 - 已证实(归档文献与代码):AMD NPU2 模型的 row/column 分类、三种 SRAM 容量; AMD AIE 手册的单核心 scalar/vector/VLIW 结构。32 个核心及 32 个标量单元是这些 规格的派生计数,不是通过 PMU 独立测出的执行单元数量。
- 强推断:设备报告与 Strix NPU2 模型匹配,因而图中的完整 32 核心结构适用于此设备。
- 待验证:具体任务获得的分区/列数、频率、各内存路径带宽、各 dtype 的持续吞吐。 原始探测时没有 context,不构成某模型独占 8 列或使用全部 32 核心的证据。
后续若要核实实际使用率,下一次改变 runtime 分区与 placement 层:加载固定
artifact、记录其 target/列分配与 kernel placement,再查询 aie-partitions 并采集
原生 trace;gate 是“编译 placement、设备 context 列范围和实际 kernel 执行记录闭合”。
更改这些会改变实际使用的 tile 数,但不会改变芯片的物理阵列规模。
下载的官方手册与适用边界
表 3|官方手册版本与阅读位置
| 文件 | 版本 | 用途 |
|---|---|---|
| AM020 AIE-ML Architecture Manual | v1.5,2026-02-18 | 第 55 页:scalar/vector 与两个 load/一个 store;第 61–62 页:scalar unit |
| AM027 AIE-ML v2 Architecture Manual | v1.1,2025-10-23 | 第 8 页:compute/memory tile;第 39 页:核心框图;第 45–47 页:scalar/vector;第 64 页:代际比较 |
两本 PDF 均从 docs.amd.com 官方 attachment API 下载,原始 URL、版本、日期、
SHA256 见 sources.json;SHA256SUMS 可离线验证。
它们的产品对象为 Versal adaptive SoC,是理解 AIE IP 的参考资料,不是完整的
HX370 SoC 手册。AM027 不应被简单等同为 Strix 的 aie2p ISA 合同;不能将其 PL、
PMC、NoC 布局、DMA 维度或所有新增 dtype 能力直接移植到 HX370。图中的 HX370
拓扑与容量优先依据 AMD MLIR-AIE 的 NPU2 target model,不依据 Versal 的整芯片布局。
固定版本的 AMD 上游资料还包括:
- MLIR-AIE architecture reference(本地快照)与
basic building blocks(本地快照),以及
AIETargetModel.h(本地快照),commit
766aca40deaf57b2a12b14e1e15985b878e7faae。 - amdxdna PCI ID 表(本地快照)与
AIE2 驱动入口(本地快照),commit
4848482178aa242ea40887b982544070f47d0f75。该源码快照是参考版本; 不能冒充归档设备已加载驱动的 source SHA。
upstream/ 是按原文保留的第三方源码/Markdown 快照(Markdown 保存为 .md.txt),其中相对链接沿用上游目录,
需通过 sources.json 中的原始 URL 在上游访问;本站导航以本 README 为准。
复核入口
在本知识库根目录执行归档校验;完整设备探测脚本属于原项目,未收录在本仓库:
cd content/hardware/on-device-npu/amd-xdna2
shasum -a 256 -c SHA256SUMS