3. Kria SOM硬件架构与接口认知
Kria SOM 的核心并不是一块“带 FPGA 的开发板”,而是把 Zynq UltraScale+ MPSoC、DDR、eMMC、QSPI、电源管理、时钟与部分高速接口集成到邮票孔/连接器模块上的量产级计算单元。理解它的第一步,是把 MPSoC 内部的 PS(Processing System)与 PL(Programmable Logic)看成两类职责不同、但共享内存与中断资源的计算域:PS 负责操作系统、网络协议栈、文件系统与通用控制;PL 负责确定性时序、并行数据通路、视频流水线与自定义加速。Kria 载板则把 SOM 的引脚“翻译”成 MIPI、USB、以太网、DisplayPort、PMOD 等外部接口,并承担供电与散热。
PS 与 PL 的资源边界
以 Kria KV260 常见的 K26 SOM 为例,PS 侧包含四核 Arm Cortex-A53(应用处理单元 APU)、双核 Cortex-R5F(实时处理单元 RPU)、Mali-400 GPU、DDR4 控制器、GTR 收发器以及一组固定外设控制器:GEM 以太网、USB 3.0、SD/eMMC、UART、I2C、SPI、GPIO。PL 侧则是可编程逻辑阵列、DSP48E2 切片、Block RAM/UltraRAM 以及可配置的 HP/HD 接口。两者之间通过 AXI 总线互联:PS 作为 AXI Master 访问 PL 中的 IP 寄存器或 DMA;PL 也可通过 AXI Master 直接读写 PS DDR,这就是“零拷贝”视频与 AI 推理数据通路的基础。
实际划分时,一个可复用的判断原则是:需要操作系统调度、网络、文件、图形界面的任务放 PS;需要纳秒级时序、多路并行、固定延迟的任务放 PL。例如 MIPI 摄像头输入、DisplayPort 输出、实时图像预处理通常放在 PL;而 RTSP 推流、模型加载、日志记录放在 PS。若把视频帧先写入 PL 再经 PS 搬运,会引入额外 DDR 带宽与延迟,因此常见做法是 PL 内完成 ISP/缩放,再通过 AXI DMA 写入 PS 内存。
载板接口的工程要点
MIPI CSI-2:Kria 载板通常提供 2 路 MIPI 摄像头接口,走 PL 侧 MIPI RX 硬核或软核。设计时要关注 lane 数、时钟频率与参考时钟来源。例如 1080p30 RAW10 摄像头,4 lane、每 lane 约 600 Mbps 即可满足;若使用 2 lane,则需提高单 lane 速率或降低分辨率。MIPI 对差分阻抗、等长和参考地非常敏感,载板走线应保持 100 Ω 差分阻抗,并避免跨分割地平面。
USB:PS 侧 USB 3.0 常用于连接摄像头、Wi-Fi 模块或存储。若使用 USB 摄像头做 AI 推理,需注意 UVC 数据先进入 PS 内存,再拷贝到 PL 或 DPU,会占用 DDR 带宽。对延迟敏感的场景,优先选 MIPI 直连 PL。
以太网:GEM 控制器支持 RGMII 或 SGMII。KV260 常见 1 路千兆 RJ45,用于 RTSP 推流、SSH 调试和模型更新。若做多路视频汇聚,需评估网络吞吐与中断负载,必要时启用 Jumbo Frame 或调整 TCP 窗口。
DisplayPort:DP 输出可由 PL 侧 DP TX 或 PS 侧显示控制器驱动。AI 推理结果叠加后送 DP 显示时,建议在 PL 内完成 OSD 叠加,避免 PS 反复读写帧缓冲。
PMOD:PMOD 是低速扩展口,适合接传感器、按键、OLED 或逻辑分析仪。它通常映射到 PL IO,电平为 3.3V,驱动能力有限,不要直接驱动电机或大电流负载。
电源与散热设计要点
Kria SOM 一般由载板提供 12V 输入,再经 SOM 内部 PMIC 产生 0.85V 核心、1.2V/1.8V/3.3V 等轨。载板设计要保证 12V 输入纹波小、瞬态响应快,并在 SOM 连接器附近放置足够的大容量储能电容。若使用外部风扇,建议由载板 5V 或 12V 供电,并通过 I2C 温度传感器读取 SOM 结温,实现分级调速。
散热方面,K26 SOM 的功耗随 PL 资源占用和 DPU 负载变化明显。无风扇被动散热时,需保证散热器与 SOM 顶面良好接触,并留出足够空气对流空间。若环境温度超过 40°C,建议加装风扇或降低 PL 时钟频率。实际调试时,可用 cat /sys/class/thermal/thermal_zone*/temp 观察温度,若持续超过 85°C,应检查散热器接触、风道和负载分配。
把上述关系落到一张“资源—接口—供电—散热”的检查表上,可以在载板选型或自研载板时快速判断:哪些信号必须走 PL,哪些可以走 PS,哪些接口需要独立供电与散热余量。Kria SOM 的硬件架构认知,最终要服务于“让正确的任务跑在正确的计算域上”。