2. Ryzen Embedded硬件架构与最小系统设计

Ryzen Embedded 系列(如 V1000、V2000A、R1000 等)在工业 HMI 产品中承担核心计算、图形显示与多路外设接入任务。要把它用稳,第一步不是写驱动,而是把 SoC 内部拓扑、电源域和时钟树看清楚,再据此设计 DDR4、eMMC、调试串口与电源管理构成的最小系统。最小系统的目标是:上电后 SoC 能完成复位释放、时钟锁定、DDR 训练、固件加载,并至少通过调试串口输出启动日志,从而证明“芯片活着、内存可用、存储可读”。

一、SoC 内部拓扑:CPU、GPU 与 IO 的分工

Ryzen Embedded 采用 Zen 架构 CPU 核心(V1000 为 4 核 8 线程,V2000A 为 6 核 12 线程),集成 Radeon Vega GPU,并通过 Infinity Fabric 与 SoC 内部各子系统互联。从最小系统设计角度看,需要关注三条主线:

  • 计算域:CPU 核心 + L3 缓存,依赖 VDDCR_CPU 与 VDDCR_SOC 供电,时钟来自 100MHz BCLK 经内部倍频。
  • 显示域:Vega GPU 输出 DisplayPort/eDP,工业 HMI 常用 eDP 直连面板,需 VDDCR_GFX 与显示时钟。
  • IO 域:包含 DDR4 内存控制器、PCIe、SATA、USB、eMMC/SD、UART、I2C、GPIO 等,由 VDDCR_SOC 与 1.8V/3.3V IO 电源支撑。

下图给出最小系统视角下的 SoC 拓扑与关键外设连接关系,可作为原理图分块与电源域划分的参考。

Ryzen Embedded SoC Zen CPU 4C/8T · L3 4MB Vega GPU eDP / DP 输出 Infinity Fabric 互联 IO 控制器 DDR4 · PCIe · SATA · USB · eMMC · UART · I2C DDR4 内存 2× SODIMM / 板载 2400~3200 MT/s eMMC 5.1 8~64GB · HS400 调试串口 UART0 115200 8N1 · 3.3V USB-TTL 转接 电源管理 PMIC VDDCR_SOC 1.1V VDDCR_CPU 1.1V 1.8V / 3.3V IO 时钟树 100MHz BCLK · 25MHz 晶振 · 32.768kHz RTC 电源域划分: VDDCR_SOC(IO/内存控制器) · VDDCR_CPU(核心) · VDDCR_GFX(GPU) · 1.8V/3.3V(IO 与 eMMC) · VBAT(RTC 保持)

二、电源域与上电时序

Ryzen Embedded 的电源域不是简单“一路 3.3V 全搞定”。典型最小系统需要以下电源轨:

电源轨典型电压供电对象上电顺序
VDDCR_SOC1.1VSoC 内部 IO、内存控制器1
VDDCR_CPU1.1VCPU 核心2
VDDCR_GFX1.1VVega GPU2
1.8V IO1.8VDDR4 VDDQ、部分 IO3
3.3V IO3.3VeMMC、UART、I2C、GPIO3
VBAT3.0VRTC 域常供

上电顺序错误可能导致 SoC 内部 ESD 二极管导通、闩锁甚至永久损坏。工程上通常用 PMIC(如 RTQ2134、TPS65086 等)按顺序释放各路使能,并保证 VDDCR_SOC 先于 VDDCR_CPU 建立。复位信号 PWRGD 需在所有电源轨稳定后延迟至少 10ms 再释放,给 SoC 内部 PLL 锁定留出时间。

三、时钟树设计

最小系统至少需要三路时钟源:

  • 25MHz 主晶振:接入 SoC 的 OSCIN/OSCOUT,经内部 PLL 生成 100MHz BCLK 及 CPU/GPU 倍频时钟。晶振负载电容按 12pF 计算,走线尽量短且包地。
  • 32.768kHz RTC 晶振:接 VBAT 域,用于实时时钟保持。负载电容典型 6~12pF,需远离高频信号。
  • 100MHz 差分时钟:若使用 PCIe 或千兆网,需外部时钟发生器提供 HCSL 差分输出,AC 耦合电容 0.1μF。

时钟树的核心判断依据是:上电后测量 25MHz 晶振是否起振(示波器探头需用 10× 低电容档),再测 SoC 的 CLK_REQ 或 BCLK 测试点是否有 100MHz 输出。若晶振不起振,优先检查负载电容、反馈电阻(通常 1MΩ)和电源是否到位。

四、DDR4 内存最小系统

DDR4 是原理图设计中最容易出问题的部分。以 2 片 16bit DDR4 组成 32bit 总线为例,关键设计点包括:

  • 拓扑:采用 fly-by 拓扑,地址/命令/控制信号从 SoC 出发依次经过两片 DDR4,终端电阻 39Ω 接 VTT。
  • VTT 电源:VTT 为 VDDQ/2(0.9V),需专用 VTT 稳压器或 LDO,吸收电流能力不低于 2A。
  • VREF:VREF 为 VDDQ/2,需 1% 精度分压并加 0.1μF 去耦。
  • 走线:数据组内等长 ±5mil,地址/命令组等长 ±20mil,阻抗控制 40Ω 单端 / 80Ω 差分。
  • 训练:SoC 上电后通过 DDR 训练(写电平、读电平、VREF 训练)确定采样窗口,训练失败会在串口输出 “DDR training failed”。

示例参数:DDR4-3200,CL22,1.2V VDD,0.9V VTT。若训练不稳定,可先降频到 2400MT/s 验证硬件,再逐步提升。

五、eMMC 与调试串口

eMMC 5.1 接 SoC 的 SD/eMMC 控制器,最小系统只需连接 CLK、CMD、DAT0~DAT7、RST_n 和 VCC/VCCQ。注意:

  • CLK 走线包地,长度尽量短,避免与 DDR 信号平行。
  • DAT 线需上拉 10kΩ 到 VCCQ(1.8V 或 3.3V,取决于 eMMC 工作模式)。
  • HS400 模式下需额外关注 DS(Data Strobe)信号,走线等长要求更严。

调试串口 UART0 是“最小系统的眼睛”。SoC 的 UART0 默认输出启动日志,电平 3.3V,波特率 115200 8N1。原理图上只需将 UART0_TX、UART0_RX、GND 引出到 4pin 排针或 USB-TTL 芯片。注意 TX/RX 交叉连接:SoC 的 TX 接转接板的 RX,SoC 的 RX 接转接板的 TX。上电后若串口无输出,依次检查:电源是否正常、复位是否释放、晶振是否起振、UART 引脚是否被复用为 GPIO。

最小系统验证顺序:先测各路电源电压与上电顺序 → 再测 25MHz 晶振起振 → 测复位释放时序 → 接串口看启动日志 → 若 DDR 训练失败则降频或检查 VTT/VREF → 最后确认 eMMC 能被固件识别。

六、最小系统原理图分块建议

按功能分块绘制原理图,便于评审与调试:

  1. SoC 核心页:SoC 本体、去耦电容、复位电路、JTAG/调试接口。
  2. 电源页:PMIC、各路电源轨、上电时序网络、PWRGD 链。
  3. 时钟页:25MHz 晶振、32.768kHz 晶振、差分时钟发生器。
  4. DDR4 页:两片 DDR4、VTT、VREF、终端电阻、去耦。
  5. 存储与调试页:eMMC、UART0、SD 卡(可选)。

完成原理图后,先做电源域与上电时序的静态检查,再进行 PCB 布局。DDR4 区域优先布局,保证走线短且参考平面完整。最小系统板打样回来后,按上述验证顺序逐项测量,确认串口能输出完整启动日志,即认为最小系统硬件设计通过。