4. 电气特性测量:从波形里看透信号质量
说实话,做 eMMC HS400 调试,电气特性测量是最能体现“手感和经验”的环节。很多人一上来就抓眼图,结果测出来乱七八糟,搞不清楚是芯片驱动能力不够,还是 PCB 走线有问题。
我个人习惯,先把四项基础测量理清楚:电压电平、上升/下降时间、抖动,最后才是眼图。一步一步排查,不容易被假象带偏。
4.1 电压电平测量:找到信号摆幅的“健康基线”
HS400 模式下,数据信号是双数据速率(DDR),单端电压电平有严格规范。说白了,你得先确认驱动端的输出高(VOH)和输出低(VOL)在不在规格内,接收端能不能正确识别。
我一般用示波器直接量 CLK、CMD、DATA 管脚,看以下三个关键参数:
- VOH:输出高电平,通常≥ VDDQ × 0.75
- VOL:输出低电平,通常≤ VDDQ × 0.25
- VIH / VIL:输入高/低阈值,保证接收裕量
我在项目中遇到过,某款 eMMC 的 VOH 只有 VDDQ × 0.68,结果终端设备频繁出读写错误。查了半天才发现是 PCB 上 eMMC 的供电滤波电容离得太远,导致瞬态压降过大。
测电压时,记得在靠近 eMMC 管脚处取点,避免走线压降引入误差。
| 参数 | HS400 典型值 | 单位 | 备注 |
|---|---|---|---|
| VDDQ | 1.8 | V | I/O 供电 |
| VOH | ≥ 1.35 | V | 10% 负载下 |
| VOL | ≤ 0.45 | V | 10% 负载下 |
4.2 上升/下降时间:别让波形变“软脚虾”
上升时间(tr)和下降时间(tf)直接决定了信号的边沿速率。HS400 要求极短的边沿时间,通常在 200 ps 以内。太慢了会导致时序窗口缩小,太快了会引入 SI 问题。
测量时注意:
- 从 20% 到 80% Vin 计算 tr
- 从 80% 到 20% Vin 计算 tf
- 使用低电容探头,高带宽示波器(至少 4 GHz)
我怎么判断边沿够不够快?给你个原则:tr(或 tf)不能超过数据周期的 20%。比如 HS400 在 200 MHz(周期 5 ns)下,tr/tf ≤ 1 ns。我曾经碰到过一块板的上升时间飙到 1.4 ns,眼图直接封死在 200 mV 以内。
提高边沿速率的办法很简单:把输出驱动强度调高,或者在 PCB 走线末端加串联匹配电阻(10~22 Ω)抑制反射。
4.3 抖动测量:信号里的“摇摆”到底有多乱
抖动,就是信号过阈值的时刻在时间轴上的不确定性。HS400 这种高带宽接口,对抖动的容忍度极低。
我习惯把抖动分为两类:
- 随机抖动(RJ):热噪声引起,近似高斯分布,很难消除
- 确定性抖动(DJ):由串扰、反射、电源噪声等决定
测量时重点关注总抖动(TJ)和峰-峰抖动(Pk-Pk)。
要测准抖动,建议用实时模式,捕获至少 10⁶ 个边沿,然后通过软件分离 RJ 和 DJ。
经验值:HS400 在 200 MHz 下,总抖动(TJ@10⁻¹² BEER)应 < 200 ps,其中峰-峰抖动 < 150 ps。超过这个数,眼图多半会闭合。
举个例子,我遇到过 DDR 时钟抖动大,查半天发现是 SoC 的 PLL 噪声。用频谱仪看时钟谐波,果然在 100 kHz 频率附近有个 10 mV 的 ripple,造成 10 ps 的确定性抖动。
4.4 眼图测试:信号质量的“最终审判”
眼图,就是把所有可能的数据边沿叠加在一起,看交叠区域是不是够“宽”和够“高”。HS400 的眼图模板(Mask)规定了禁入区域,一旦波形掉进去,说明 SI 不达标。
眼图测试要点:
- 采集至少 10⁶ 个 UI(单位时间间隔)
- 观察眼宽(Eye Width)和眼高(Eye Height)
- 检查 Mask 合规:模板区域无信号交叉
为什么要抓这么多点?你想想看,偶尔冒出来的噪声事件,比如电源瞬态,只在一百万个周期里出现一次。抓少了,你可能永远看不到那个 Bug。
| 眼图参数 | HS400 推荐值 | 单位 |
|---|---|---|
| 眼宽 | ≥ 0.4 * UI | ps |
| 眼高 | ≥ 200 | mV |
| Mask 余量 | ≥ 20% | % |
我曾经遇到过眼图 mask 余量只有 5%,定位半天发现是走线长 15 mm,导致过冲振荡。加了一个 22 Ω 串联电阻,余量提升到 25%。所以说,眼图不理想时别急着换 eMMC,先检查 PCB 阻抗匹配。
4.5 本章知识体系
下面这张图把电气特性测量的四个维度串联起来。建议你在实际调试时按这个顺序走,不要跳步。
4.6 我总结的几个实战注意点
- 不要相信单次测量:至少测 3 次取平均值,排除示波器设置或探头接触问题
- 看波形完整性:别只看眼图,先看单次波形有没有过冲、欠冲、振铃
- 记录温度:电气特性会随温度变化,室温下的合格不代表高温/低温合格
- 用标称负载:测试时尽量贴近实际负载条件。我见过用 50 Ω 负载测眼图看着挺好,一上系统就出问题