2. 误码率基础:BER 定义、测量方法与关键物理因素
2.1 误码率到底在测什么?
误码率(Bit Error Ratio,BER)这个指标,说白了就是“发出去的比特里,有多少是错的”。公式很简单:
BER = (接收错误的比特数) / (发送的总比特数)
但这背后藏着很多门道。我见过不少刚入行的工程师,看到 BER = 1e-12 就觉得万事大吉,结果系统一跑实际业务就出问题。为什么?
因为你测到的 BER 和你真正关心的“系统可靠性”之间,隔着一层统计学的窗户纸。BER 是一个统计量,不是实时值。它需要足够长的测试时间、足够多的样本,才能逼近真实的误码概率。
所以我个人习惯在测试报告中同时标注:测试时长、发送总比特数、以及置信区间。光给一个 BER 数值,很容易被误读。
2.2 BER 的测量方法——你跑对流程了吗?
测量 BER 的方法有很多,但核心逻辑都一样:发已知序列 → 收序列比对 → 统计差错。下面这几种是我在实际项目中常用的:
2.2.1 标准 PRBS 测试法
PRBS(伪随机二进制序列)是业界最通用的测试码型。它模拟真实数据的随机性,但本身是确定性的,可以精确复现。常见的 PRBS 阶数:
| PRBS 类型 | 多项式 | 序列长度 | 典型应用 |
|---|---|---|---|
| PRBS7 | X⁷ + X⁶ + 1 | 127 bit | 低速串行链路、SERDES 眼图测试 |
| PRBS9 | X⁹ + X⁸ + 1 | 511 bit | QSGMII、千兆以太网 |
| PRBS15 | X¹⁵ + X¹⁴ + 1 | 32767 bit | 10G/25G 高速链路 |
| PRBS31 | X³¹ + X³⁰ + 1 | ~2.1G bit | 100G/400G 链路抖动与噪声评估 |
做 QSGMII 链路调试时,我习惯先用 PRBS9 做快速眼图扫描,再用 PRBS15 做长时间 BER 摸底。为什么?因为 PRBS9 序列短,眼图模式更集中,能快速暴露码间干扰(ISI)严重的方向;PRBS15 序列长,能更真实地反映链路的长时统计特性。
2.2.2 回环对比测试法
这种方法适合产线或板级调试。流程很简单:
- 将发送端和接收端通过同一个芯片或板级回路短接。
- 内部 PRBS 发生器发出测试序列,经过链路后再回环到接收端。
- 接收端比对并统计误码数。
优点是不需要外接诱码设备,板子上自己就能跑。缺点也很明显:测的是整条板级链路的“自收自发”,没法单独定位到某个器件或走线段。我曾经在一个 8 端口 QSGMII 交换板测试中,就用回环法快速筛选出两个端口 BER 异常高,然后追查发现是 PCB 上有一段差分对等长没做好,导致时序裕量吃紧。
2.2.3 误码注入校准法
这是做接收端容限测试时用的。通过误码分析仪(BERT)主动向接收端注入已知的误码,观察 DUT 能否正确纠错或重传。常见于以太网 FEC(前向纠错)性能验证。这种方法我不太推荐给新手,因为你得先校准仪器的误码注入精度,否则结果根本不可信。
2.3 影响 BER 的关键物理因素——我踩过的坑
影响误码率的因素很多,但归纳起来就三个大方向:信号完整性、时序裕量、以及噪声/串扰。下面这张图总结了它们之间的关系:
2.4 信号完整性损伤——别小看 PCB 走线
码间干扰(ISI) 是我在 QSGMII 链路调试中最头疼的问题之一。QSGMII 在 5 Gbps 线速率下,一个 UI 只有 200 ps。如果 PCB 走线上有一个阻抗不连续点(比如过孔、拐角、连接器),反射回来的能量会叠加到后续比特上。你想想看,200 ps 内信号还没稳定,下一个比特就来了,眼图怎么可能张开?
我记得有一次调试 10 层板上的 QSGMII 通道,眼图看上去马马虎虎,但 BER 一直下不了 1e-10。最后用 TDR 一测,发现有一段 1.5 英寸的走线阻抗掉到了 85 Ω(设计目标 100 Ω),正是那一段造成的 ISI 把眼高蚕食掉了。换板子改走线后,BER 直接跳到 <1e-15。
2.5 时序裕量——时钟是链路的命脉
BER 的另一大杀手是抖动(jitter)。抖动分两种:
- 确定性抖动(DJ):来自电源噪声、串扰、码型相关性。可以量化、可以仿真。
- 随机抖动(RJ):来自热噪声、1/f 噪声。服从高斯分布,不可预测。
QSGMII 链路的接收端有一个时钟数据恢复(CDR)电路,它会用 PLL 或相位插值器从数据流里“挖”出时钟。如果抖动太大,CDR 锁定后的采样点就会偏移,轻则误码,重则失锁。
我给大家一个经验值:对于 5 Gbps 的 QSGMII,总抖动(TJ)峰值不应超过 0.3 UI(约 60 ps)。超过这个门限,BER 很难保证在 1e-12 以下。这个数据是我自己跑过几百条链路后归纳的,你可以作为设计目标。
2.6 噪声与串扰——看不见的手
热噪声是物理极限,没法完全消除,但我们可以通过预加重和均衡电路来对抗。串扰则更隐蔽——差分线间耦合、相邻信号层重叠、电源平面谐振,都会导致串扰能量耦合到 QSGMII 通道上。
我曾经帮一个团队排查 BER 异常,板子上所有信号完整性仿真都过了,眼图也测了,就是 BER 偶尔跳高。直到我用近场探头扫描了整个背板区域,才发现一个开关电源的电感正好跨在 QSGMII 差分对上方。把电感挪位后,BER 稳坐了 3 年没出问题。
2.7 怎么设定 BER 测试的“及格线”?
不同应用场景对 BER 的要求不一样。我列一个对照表,方便你在设计时做参考:
| 应用场景 | 典型 BER 目标 | 备注 |
|---|---|---|
| 消费类以太网(家用路由器) | ≤ 1e-8 | TCP 重传可容忍 |
| 企业交换机(QSGMII) | ≤ 1e-12 | 无 FEC 时的典型目标 |
| 数据中心 25G/100G | ≤ 1e-15 | 配合 RS-FEC 可放宽 |
| 汽车雷达 / 安全链路 | ≤ 1e-15 或更低 | 强制性要求,可能需 CRC |
对于我们的 QSGMII 链路课程,后面几章我会重点讲如何把 BER 从 1e-8 压到 1e-12 甚至更低。但在此之前,你先把这章的基础打牢固了——怎么测、测多久、哪些物理因素最容易搞垮你的链路。
嗯,这一章就到这儿。你记住一句话:BER 不会骗你,但你会骗自己。误码率这个数字,只有在正确的测试方法、足够的统计时长、清晰的物理归因下,才有意义。