1、SerDes技术概述

各位同学好,我是老李。在芯片验证这行摸爬滚打了十几年,今天咱们来聊聊SerDes。说实话,每次带新人时,我第一个要讲的就是这个。为什么?因为它是高速通信的命根子。

什么是SerDes?

SerDes,全称Serializer/Deserializer,中文叫串行器/解串器。说白了,就是把并行数据转成串行数据发出去,收回来再转回并行。

你可能会问:为什么要多此一举?嗯,我刚开始接触时也有这个疑问。后来在做一个PCIe项目时,才真正体会到它的价值。

核心功能:

  • 发送端:并行数据 → 串行数据(Serializer)
  • 接收端:串行数据 → 并行数据(Deserializer)

举个例子。假设你要传8位数据,用并行方式需要8根线。用SerDes呢?1根线就够了。你想想看,在芯片引脚资源那么紧张的情况下,这有多重要。

串行与并行通信的对比

咱们直接上表格,看得更清楚。

对比项 并行通信 串行通信(SerDes)
数据线数量 多(8/16/32根) 少(1-4对差分线)
传输距离 短(< 1米) 长(可达数米)
抗干扰能力 弱 强(差分信号)
时钟同步 需要独立时钟线 时钟嵌入数据中
典型速率 几百Mbps 几十Gbps
PCB布线难度 高(等长要求) 低

我在项目中遇到过一件事。有个同事坚持用并行总线做芯片间通信,结果板子一跑起来,信号串扰得一塌糊涂。后来换成SerDes,问题全解决了。说白了,高速场景下,串行是唯一的选择。

SerDes在高速通信中的核心地位

现在的通信标准,你数数看:PCIe、USB、SATA、以太网、HDMI...哪个离得开SerDes?

为什么会这样?原因有三:

  1. 速率瓶颈:并行总线速率上不去,因为信号偏移(skew)问题。我做过一个DDR3项目,为了调等长,layout工程师差点跟我翻脸。
  2. 功耗优势:串行传输每比特功耗更低。你想想看,同时翻转16根线和翻转1根线,哪个省电?
  3. 扩展性好:想要更高带宽?加通道就行。SerDes的通道化设计,让速率扩展变得很简单。

个人经验:做SerDes验证时,千万别只看功能。要重点关注抖动、眼图这些模拟指标。我曾经吃过亏,功能全对,但眼图一塌糊涂,流片回来根本没法用。

SerDes的基本架构

下面这张图是我自己画的,把SerDes的核心模块都标出来了。

SerDes 基本架构图 发送端(TX) 并行数据输入 Serializer 驱动器(Driver) PLL 时钟生成 控制逻辑 & 状态机 差分 传输线 接收端(RX) 接收器(Receiver) CDR 时钟数据恢复 Deserializer 解串器 并行数据输出 并行数据 串行处理 传输介质 接收处理

这张图里,发送端有PLL生成高速时钟,Serializer把并行数据转成串行,Driver负责驱动差分线。接收端呢,Receiver先接收信号,CDR从数据里恢复时钟,最后Deserializer转回并行。

注意:CDR是SerDes里最难搞的模块。我曾经在一个10Gbps的项目里,CDR锁定时间长了那么几微秒,整个链路就起不来。调试了整整两周,最后发现是环路滤波器参数没配好。

SerDes的关键技术指标

做验证时,这几个指标你必须盯死:

  • 数据速率:单位Gbps,比如10.3125Gbps(10G以太网)
  • 抖动性能:包括随机抖动(RJ)和确定性抖动(DJ)
  • 眼图张开度:眼高、眼宽,直接决定误码率
  • 误码率(BER):通常要求< 1e-12
  • 功耗:每Gbps多少毫瓦,现在都追求低功耗

嗯,这里要注意。很多新手只看速率,觉得速率高就牛。其实抖动和眼图才是硬功夫。我见过一个芯片,标称28Gbps,结果眼图闭得死死的,根本没法用。

小结

SerDes说白了就是高速通信的基石。从并行到串行,不是简单的线变少了,而是一整套技术的革新。做验证时,既要懂数字逻辑,也要懂模拟特性,这才是SerDes验证的难点所在。

下一节咱们会深入SerDes的状态机设计,那是控制整个链路握手的关键。先消化今天的内容,有问题随时交流。

可可精品资料库