第2章:光模块系统架构
做光模块设计这么多年,我见过不少新人一上来就盯着CDR芯片看,结果连信号从哪来、往哪去都没搞明白。说实话,这就像修车不看发动机舱,光盯着轮胎看——方向就偏了。
这一章,咱们把光模块的全局架构理清楚。你只有知道CDR在整个链路中扮演什么角色,后面调试时才不会抓瞎。
2.1 光模块整体框图
先看一张我手绘的框图,这是最经典的直调光模块架构。你想想看,光模块说白了就是“电-光-电”的转换器。
核心思路:发射端把电信号转成光信号发出去,接收端把光信号转回电信号。CDR就藏在接收端的关键位置。
这张图我画得比较简洁,但核心链路都在了。发射端从左到右,接收端从右到左。注意看,CDR在接收端的位置——它紧跟在TIA之后,在电接口输出之前。
2.2 发射端链路详解
发射端其实相对简单。我习惯把它分成三步走:
- 电接口输入——来自交换机或路由器的串行数据,通常是CML或LVPECL电平
- 激光驱动器——把电信号放大到足以驱动激光器的幅度
- 激光器(TOSA)——电光转换,把电信号变成光信号送入光纤
一个小经验:我曾经调试过一个10G模块,发射端眼图总是张不开。查了半天,发现是驱动器的偏置电流设置不对。你想想看,激光器没工作在最佳偏置点,眼图能好吗?后来我把偏置电流调高了3mA,眼图立马就开了。
发射端的关键参数,我列个表给你参考:
| 参数 | 典型值 | 说明 |
|---|---|---|
| 调制幅度 | 1.5~2.5 Vpp | 驱动激光器的电压摆幅 |
| 偏置电流 | 20~80 mA | 根据激光器类型调整 |
| 上升/下降时间 | < 30 ps | 影响眼图质量 |
| 光功率 | -3 ~ +3 dBm | 入纤光功率 |
2.3 接收端链路详解
接收端才是CDR的主战场。这里我多说几句,因为很多坑都在这段链路上。
接收端的信号流是这样的:
- 光电探测器(ROSA)——把光信号转成微弱电流信号,通常只有几十微安
- 跨阻放大器(TIA)——把电流信号转成电压信号,并放大到几百毫伏
- CDR——从带噪声的数据中恢复出干净的时钟和数据
- 电接口输出——输出符合协议标准的串行数据
注意!这里有个常见的误解:有人觉得TIA出来的信号已经很好了,不需要CDR。我告诉你,这想法很危险。TIA输出的信号虽然幅度够了,但抖动很大,时钟信息也不干净。直接送给后端芯片,大概率会误码。
我举个例子你就明白了。假设TIA输出信号的抖动是30ps RMS,对于25Gbps的信号(UI=40ps),这抖动已经占了将近一个UI的75%。没有CDR做时钟恢复和重定时,这数据根本没法用。
2.4 CDR在接收链路中的核心作用
CDR到底干了什么?说白了就三件事:
- 时钟恢复——从数据流中提取出同步时钟
- 数据重定时——用恢复出的时钟对数据进行重新采样
- 抖动滤除——抑制高频抖动,输出干净的数据
核心观点:CDR是接收链路的“净化器”。没有它,光模块的接收灵敏度、误码率指标都无从谈起。
我记得有一次做400G SR8模块的调试,接收端眼图看着还行,但误码率就是下不去。后来用示波器一看,发现TIA输出的数据存在明显的低频抖动。CDR的环路带宽没调好,低频抖动没滤干净。我把环路带宽从2MHz调到5MHz,误码率立马从1E-6降到了1E-12。
嗯,这里要注意:CDR的环路带宽不是越大越好。带宽太大,会引入更多噪声;带宽太小,又跟不上数据的变化。这个平衡点,需要根据实际链路情况来调。
2.5 接收链路的信号质量演变
为了让你更直观地理解CDR的作用,我画了一张信号质量变化图:
从这张图你能看到,信号质量在逐级改善。CDR是最后一道关卡,也是最关键的一道。
2.6 实际设计中的注意事项
最后,我分享几个实际设计中的经验:
- PCB走线要短——TIA到CDR的走线尽量控制在5mm以内,长了会引入额外抖动
- 电源去耦要做好——CDR对电源噪声很敏感,我习惯在每个电源引脚放一个100nF+10nF的组合电容
- 差分阻抗要匹配——接收端的差分走线阻抗控制在100Ω±10%,否则会有反射
- 参考时钟要干净——CDR需要参考时钟,这个时钟的抖动直接影响恢复质量
避坑指南:我曾经在一个25G模块项目中,CDR死活锁不住。查了两天,最后发现是参考时钟的晶振质量太差,相位噪声超标了10dB。换了高精度晶振后,问题立刻解决。所以,别在参考时钟上省钱。
好了,这一章的内容就到这里。光模块的系统架构你心里应该有数了。CDR的位置和作用,咱们后面还会反复提到。
公众号:蓝海资料掘金营,微信deep3321