一、Retimer 基础概念
什么是 Retimer?
Retimer,中文叫「重定时器」。说白了,它就是个信号再生器。
我刚开始接触高速设计时,总觉得 Retimer 就是个高级点的放大器。后来踩了坑才明白——它干的活远不止放大信号那么简单。
Retimer 的核心工作流程是这样的:
- 接收端把进来的信号采样
- 用内部的 CDR(时钟数据恢复)电路提取时钟
- 用这个干净的时钟重新把数据发出去
嗯,关键就在第三步。它不是在原信号上修修补补,而是直接「重造」了一个信号。
一句话总结:Retimer 把进来的信号吃掉,消化干净,再拉出一个全新的信号。
Retimer 与 Repeater / Redriver 的区别
很多工程师容易把这三者搞混。我当年也犯过这个错,项目都快 tapeout 了才发现选错了器件。
咱们直接看对比:
| 特性 | Repeater(中继器) | Redriver(红驱) | Retimer(重定时器) |
|---|---|---|---|
| 核心功能 | 放大信号 | 均衡 + 放大 | CDR + 再生 |
| 时钟处理 | 无 | 无 | 有(CDR) |
| 抖动抑制 | 无 | 部分 | 完全 |
| 延迟 | 最小(~1ns) | 较小(~2ns) | 较大(~10ns) |
| 协议感知 | 无 | 无 | 有(部分) |
| 适用速率 | < 5Gbps | 5-28Gbps | > 25Gbps |
你看,Repeater 就是个「傻大个」,只管把信号放大。Redriver 聪明一点,能做均衡补偿。但 Retimer 才是真正的「信号医生」——它能治病。
我的经验:在 PCIe Gen4(16Gbps)以上的链路中,我几乎只用 Retimer。Redriver 在 25Gbps 以上基本就是摆设,抖动根本压不住。
Retimer 在高速链路中的作用
为什么高速链路需要 Retimer?你想想看,信号在 PCB 上跑,每经过一个过孔、一段走线,都会引入损耗和抖动。到了 28Gbps 以上,眼图基本就是一团浆糊。
Retimer 主要干三件事:
- 时钟再生:用 CDR 把时钟从数据里提出来,抖动用 PLL 滤掉
- 信号重构:用干净的时钟重新发送数据,眼图重新打开
- 均衡补偿:内置 CTLE 和 DFE,补偿信道损耗
我曾经在一个 100Gbps 的背板项目中,链路长度超过 40 英寸。不加 Retimer 时,眼图完全闭合。加了之后,眼高从 0 恢复到了 200mV 以上。
注意:Retimer 不是万能的。它引入的延迟(通常 5-10ns)在某些协议中可能触发超时。PCIe 的 L0s 状态切换就是个典型例子——我吃过这个亏。
知识体系框架
下面这张图是我自己整理的 Retimer 知识体系,帮你快速建立全局认知:
避坑指南
最后分享几个我踩过的坑:
- 选型时别只看速率:有些 Retimer 标称支持 28Gbps,但实际抖动容限很差。我建议你看 datasheet 里的「抖动传递函数」曲线。
- 注意功耗预算:一个 Retimer 芯片功耗轻松上 1W,多通道设计时散热是个大问题。我曾经有个项目因为没算好散热,整板温度飙到 95°C。
- 不要忽略协议协商:PCIe 的链路训练、SAS 的 OOB 信号,Retimer 必须能透传这些低速信号。有些便宜的 Retimer 在这上面会出问题。
我的习惯:每次选 Retimer 前,先拿 EVB 板实测眼图和抖动。纸上谈兵没用,示波器上的波形才是真话。
好了,这一章就到这里。Retimer 的基础概念搞清楚了,后面咱们再聊 S 参数分析和去嵌方法。
公众号:蓝海资料掘金营,微信deep3321