第2章 数字通信基础:信号、噪声与码间干扰

做Equalization调试,说白了就是在跟三个东西打交道:信号、噪声、码间干扰。这三兄弟搞不定,眼图就是一团浆糊。我刚开始接触高速串行链路时,总觉得只要信号幅度够大就行。嗯,后来被现实狠狠教训过——光看幅度,根本不够。

信号:模拟与数字的博弈

数字信号是什么?是0和1的序列。但在物理世界里,没有完美的方波。每个比特在传输时,信号会经历上升时间、下降时间、过冲、下冲。

举个例子。一个1 Gbps的NRZ信号,比特周期是1 ns。如果通道损耗大,1 ns内信号根本爬不到满幅度——这就叫幅度衰减。

我个人习惯把模拟信号想象成一条连续的河流,数字信号则是这条河上的采样点。你想想看,采样点选得不好,河流再平缓也没用。

关键指标:

  • 幅度:决定信噪比下限
  • 上升/下降时间:影响码间干扰
  • 抖动:定时裕量的直接杀手

噪声:通信系统的头号敌人

噪声分两种:加性噪声和乘性噪声。

加性噪声最典型的就是热噪声、散弹噪声。它不管你信号有没有,一直在那。我在项目中遇到过一条背板走线,屏蔽没做好,电源开关一动作,眼图直接塌掉——那就是加性噪声的典型表现。

乘性噪声跟信号有关,信号大的时候噪声也大。比如非线性器件产生的交调分量。这玩意更难对付,因为它不是固定的,信号变了它跟着变。

噪声类型 典型来源 对信号的影响 对应仿真工具
加性噪声 热噪声、电源纹波 底噪抬高,垂直张开度下降 SPICE瞬态噪声分析
乘性噪声 非线性放大器、混频器 产生交调,信号失真 谐波平衡仿真
码间干扰 通道损耗、反射 水平眼图闭合,误码率上升 通道S参数+瞬态仿真

这里要注意:噪声和码间干扰经常绑在一起出现。你单独优化其中一项,效果可能不明显。我曾经碰到过一个案例,噪声已经很低了,但误码率就是下不去。后来一查,问题出在码间干扰上。

避坑指南:

我曾经在调试时只盯着噪声看,忽略码间干扰。眼图垂直张开度确实不错,但水平张开度很差。结果误码率还是高。后来学乖了——眼图要同时看垂直和水平两个维度。

码间干扰(ISI):高速信号的隐形杀手

码间干扰是数字通信里最让人头疼的问题之一。它不是什么新概念——你翻翻上世纪的书就有。但在高速设计中,它变得尤其突出。

为什么会这样?因为通道的带宽是有限的。当比特周期和通道的建立时间可比时,前一个比特的能量还没完全消失,下一个比特就来了。前后比特混在一起,接收端分不清谁是谁。

比如一个长串的“1111”之后突然来个“0”。通道被前面的1充得满满的,突然要放电,结果这个“0”的幅度被抬高了,判出1来。这就是码间干扰的典型表现。

重要警告:

码间干扰不是用简单的增加信号幅度就能解决的。我曾经见过有人把发射端摆幅调到最大,结果收端的眼图反而更差——因为反射和过冲更严重了。记住,码间干扰的核心是时间问题,不是幅度问题。

处理码间干扰,我们通常用均衡(Equalization)。但在此之前,你必须先判断:到底是不是码间干扰在作祟?

我建议用两步走:

  1. 看眼图模板:如果眼图水平方向明显变窄,但垂直方向还好,码间干扰嫌疑很大。
  2. 跑PRBS码型:PRBS7和PRBS31跑出来的眼图差别大,基本就是通道的记忆效应在捣乱——这就是码间干扰。

调试建议:实战中的信号质量排查

根据我自己的经验,信号质量排查可以按这个顺序来:

  • 第一步:看发射端波形。先排除芯片本身的问题。
  • 第二步:测通道S参数。重点关注插入损耗和回波损耗。
  • 第三步:看接收端眼图。垂直张开度和水平张开度都要测。
  • 第四步:跑误码率。这是最终的判断标准。
  • 第五步:如果误码率高,回头检查噪声和码间干扰的比例。用抖动分解工具可以把随机抖动和确定性抖动分开——确定性抖动里很大一部分就是码间干扰。

这五步走下来,信号质量的问题基本能定位清楚。我个人习惯把每一步的测量数据都记下来,方便后续对比。

一句话总结:

信号质量 = 足够的幅度 + 足够的定时裕量 - 噪声 - 码间干扰。三者缺一不可。

信号、噪声与码间干扰关系框架

信号、噪声与码间干扰关系框架 数字信号 模拟信号 加性噪声 乘性噪声 码间干扰(ISI) 眼图观察 调试关键 1. 区分ISI与加性噪声 2. 用PRBS码型定位ISI 3. 眼图看水平+垂直张开度

这张图是我常用的思维框架。信号从数字到模拟再到恢复,中间要经历噪声和码间干扰的双重考验。眼图观察就是最后的裁判——行不行,眼图上见真章。

我建议各位在调试前先把这个框架画一遍,把当前问题的节点标出来。这样思路就清晰不少。