1. 概述:Repeater 与 Retimer 的作用和区别
1.1 我们为什么要谈信号中继?
做高速数字设计这么多年,我最常被问到的一个问题是:“PCB板子走线长了,信号眼图睁不开,是加Repeater还是加Retimer?”
你想想看,一块几块钱的芯片能跑到几十Gbps,但信号在铜箔上每走一英寸都会损耗。到了接收端,眼图可能已经闭得差不多了。说白了,我们得在中间找个“加油站”。
Repeater和Retimer就是干这个的。它们都能把衰减的信号重新整一整,让数据继续往下传。但我得先给你泼盆冷水——这哥俩干活的方式完全不同,选错了,轻则多花几块钱,重则整板废掉重来。
核心目的就一句话:在信号质量下降到接收端无法正确识别之前,把信号“救回来”。
1.2 基本定义:它们到底长什么样?
Repeater — 物理层的信号放大器
Repeater,有些人也叫它红眼驱动或中继器。它的工作很简单:把进来的信号做个限幅放大,再原封不动推出去。
它不关心数据是什么,只关心信号摆幅够不够大。我见过不少工程师把它当成“万能药”,其实它只解决一个问题——信号幅度衰减。
Retimer — 带时钟恢复的智能中继
Retimer就复杂多了。它会用内部的CDR(时钟数据恢复)电路把数据里的时钟重新提出来,然后用干净的本地时钟重新采样数据,再发出去。
我习惯把Retimer理解为“信号净化器”。它不光能把幅度搞对,还能把抖动的边沿也修平整。嗯,这里要注意,Retimer工作时肯定会引入延迟,通常几个纳秒,这是重采样带来的代价。
| 维度 | Repeater | Retimer |
|---|---|---|
| 工作原理 | 模拟限幅放大 | CDR + 重采样 |
| 信号抖动处理 | 不处理,甚至引入噪声 | 消除随机抖动 |
| 链路延迟 | 极低(数十皮秒) | 较高(纳秒级) |
| 协议感知 | 无 | 有(解析训练序列) |
| 功耗 | 较低 | 较高 |
我个人习惯:纯数字工程师总喜欢把Repeater和Retimer混着叫。但做SI的千万别混,一混就会在工程评审会上挨批。我会在PCB上直接标注清楚:这颗是CTLE限幅器,那颗是带CDR的Retimer,不给Layout同事留任何幻想空间。
1.3 典型应用场景
不同的场景得用不同的家伙。我按信号速率和链路长度给你掰扯掰扯。
先说Repeater的战场:
- PCIe Gen3/Gen4较短的板内走线(例如主板CPU到南桥),经过一段过孔后眼图有些闭合,但抖动还在可接受范围。
- SATA/SAS链路上驱动多个连接器,比如数据中心背板架构,硬盘控制器到背板连接器。
- LVDS或其他并行总线,速率在几Gbps以下,你只想把共模噪声干掉,别的不需要做。
我在一次项目中就吃过亏:设计了一块25Gbps的板卡,布线只过了3个过孔,却用了一颗昂贵的高端Retimer。评审时老专家问我为什么不加Repeater完事?我当时脸都红了。
再说Retimer必须上的场景:
- 超长电缆和光模块链路,比如100G以太网中,几十米到上百米的QSFP线缆连接。这种场景下的累计抖动,放大器再猛也无能为力。
- 多次中继级联,特别是当你需要经过多颗缓冲器时。如果你第一级用Repeater,抖动只会逐级叠加。
- PCIe Gen5/Gen6 长距离扩展,要过M.2插槽或CXL互联,协议层需要Retimer做训练序列解析和均衡参数协商。
我曾经踩过一个坑:在某个多板互联项目中,我图省事全用了Repeater结构。结果链路里累计的确定性抖动太大了,系统跑个性能测试就挂。最后老老实实换成Retimer,跑几周都没问题。记住:抖动能治就治,不要攒到一起算总账。
1.4 信号中继的核心目的拆解
说白了,我们加任何中继器都为了三件事:
- 抵消传输介质带来的衰减——无论是PCB板材的介质损耗、铜箔的表面粗糙度、还是连接器的阻抗不连续。
- 修复信号波形完整性——不只是让信号幅度变大,还要让上升下降时间、过冲、振铃都在眼图模板的兜里。
- 保持协议和时序一致性——对于Retimer来说,这是硬功夫。它要保证数据的抖动和时钟恢复后的时序满足接收端要求。
其实很多时候,我们在选型时容易忽略第三点——协议一致性。我遇到过的一个情况:某次项目的Retimer在低速链路初始化阶段表现正常,但在突发数据传输时,由于CDR环路带宽设置不太对,低频抖动被放大,导致整个通道卡死。
所以我的建议是:选型前一定要仔细看数据手册里的抖动传递函数和CDR锁定时间,别只看眼图和速率的宣传数字。
1.5 一张图看懂核心逻辑
下面这张图是我做培训时必画的。它把Repeater和Retimer在整个链路里的位置和作用一次性说明白。
1.6 归纳总结
我讲这些不是让你死记硬背定义。真正做项目时你得想明白:
- 如果只是解决前一级的输出幅度不足以驱动下一级,加Repeater最划算——成本低、延迟小、不用改协议栈。
- 如果链路上有电缆、连接器、背板等多重不连续器件,抖动会越来越糟,这时候宁愿多花点钱上Retimer,省得后面返工。
- 记住,Repeater不感知协议,它就是一个模拟放大器。Retimer则带着数字大脑,能读懂训练序列,能动态调整均衡参数。
一句话口诀:幅度不够用Repeater,时序不行上Retimer;链路干净简单选前者,链路复杂频繁级联必须后者。
我个人经验是:年轻工程师总喜欢在原理图上画得越复杂越显得自己厉害。其实很简单,看眼图模板的余量。余量大于20%,用Repeater就行。余量小于20%,甚至眼图已经半闭状态,赶紧上Retimer,别犹豫。