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 的电源域不是简单“一路 3.3V 全搞定”。典型最小系统需要以下电源轨:
| 电源轨 | 典型电压 | 供电对象 | 上电顺序 |
|---|---|---|---|
| VDDCR_SOC | 1.1V | SoC 内部 IO、内存控制器 | 1 |
| VDDCR_CPU | 1.1V | CPU 核心 | 2 |
| VDDCR_GFX | 1.1V | Vega GPU | 2 |
| 1.8V IO | 1.8V | DDR4 VDDQ、部分 IO | 3 |
| 3.3V IO | 3.3V | eMMC、UART、I2C、GPIO | 3 |
| VBAT | 3.0V | RTC 域 | 常供 |
上电顺序错误可能导致 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。
六、最小系统原理图分块建议
按功能分块绘制原理图,便于评审与调试:
- SoC 核心页:SoC 本体、去耦电容、复位电路、JTAG/调试接口。
- 电源页:PMIC、各路电源轨、上电时序网络、PWRGD 链。
- 时钟页:25MHz 晶振、32.768kHz 晶振、差分时钟发生器。
- DDR4 页:两片 DDR4、VTT、VREF、终端电阻、去耦。
- 存储与调试页:eMMC、UART0、SD 卡(可选)。
完成原理图后,先做电源域与上电时序的静态检查,再进行 PCB 布局。DDR4 区域优先布局,保证走线短且参考平面完整。最小系统板打样回来后,按上述验证顺序逐项测量,确认串口能输出完整启动日志,即认为最小系统硬件设计通过。