56G PAM4 SerDes RX 32 路时间交织 SAR ADC 顶层与采样前端

1. 关键指标

项目 实现
链路位置 VGA2 之后,数字 offset 修正与 RX FFE 之前
ADC 架构 4 相 × 每相 8 个 slice,共 32 路时间交织
单路输出 7-bit offset-binary raw code,范围 0~127
并行接口 每个低速数据周期输出 32 个 sample,共 224 bit
四相顺序 0°、90°、180°、270°,相邻采样时刻相差 1 UI
单组时钟 周期 4 UI;50G PAM4 模式下为 6.640625 GHz
单 slice 等效采样率 50G PAM4 模式下为 830.078125 MS/s
采样结构 两级模拟 interleaver + slice 内差分 bootstrap

50G PAM4 模式的符号率为 26.5625 GBd,1 UI=37.647 ps。四个相位各取每四个 symbol 中的一个,因此单组时钟频率=符号率/4=6.640625 GHz;每组内 8 个 SAR slice 轮流工作,单个物理 slice 每 32 UI 转换一次,等效采样率=符号率/32=830.078125 MS/s。

这里的 slice 指单个 SAR ADC 转换子单元,sample 指采样值,symbol 指调制符号;三者分别用于描述物理单元、转换数据和链路时序。

32 路并行度与调制方式无关;PAM4 与 NRZ 的差别主要体现在符号映射、目标幅度和后级判决,采样时钟按各模式的符号率配置。

2. ADC 在 RX 链路中的位置

text 复制代码
RXP/RXN -> RTERM/BLWC -> Data CTLE -> VGA1 -> VGA2
-> 4-phase analog interleaver
-> 4 groups × 8 redundant SAR slices
-> group/top handoff -> 224-bit ADC raw data
-> offset-binary转signed + per-channel offset修正
-> 16-tap RX FFE -> PAM4 DFE / slicer

ADC 接收 VGA2 的差分输出,把每个 symbol 时刻的模拟幅度转换成 7-bit 数字码。它不做 PAM4 四电平判决,而是保留较细的幅度信息,让后级数字 FFE/DFE 完成均衡和判决。

BBCDR 使用 VGA2 后的独立 CDR CTLE 和二元采样器支路。主 ADC 与 BBCDR sampler 共享前端信号来源和恢复时钟体系,但采样器、电平码、offset 校准及输出用途均不同,不能当作同一组比较器。

3. 四相×八路的顶层组织

rx_adc32x_top 接收四个 4UI 时钟:

顶层时钟 ADC 相位 slice group
clk4_ip 0° group 0
clk4_qp 90° group 1
clk4_in 180° group 2
clk4_qn 270° group 3

四个时钟周期相同,上升沿依次相差 1 UI。每个 group 内有 8 个完全相同的 rx_adc_unit_slice,由 sample-pulse token 依次选通。group 0 处理 symbol 0、4、8......,group 1 处理 symbol 1、5、9......,其余同理。

顶层不是把四个 56-bit group bus 简单拼接,而是按时间顺序交叉展开。设 g=0~3 表示相位组,k=0~7 表示 group handoff 后的本地 sample 位置,则全局映射为:

text 复制代码
global_sample_index = 4*k + g
raw_data[((4*k+g)*7)+:7] = group[g].adc_data_out[k*7+:7]

因此 data[6:0]、data[13:7]、data[20:14]、data[27:21] 分别是连续的 0°、90°、180°、270°四个 sample,而不是同一相位的四个 slice。这个映射必须与 adc_dp、FFE 的 32 路顺序保持一致,否则会把时间交织误差误判成信道 ISI。

4. 两级模拟 interleaver

晶体管级层次:

text 复制代码
VGA2 differential input
-> non-overlap clock generator
-> n-sampler2x for 0°/180° ─┐
-> n-sampler2x for 90°/270° ├-> four p-sampler output stages
                              └-> phase-held 0°/90°/180°/270° nodes

第一层包含两组 rx_adc_interlvr_nsampler2x:一组处理 0°/180°,另一组处理 90°/270°。

第二层由四个 rx_adc_interlvr_psampler8x 组成,分别缓冲并驱动四个 phase group,每个相位输出连接到该 group 的 8 个 SAR slice。这种两级结构把高速输入端看到的开关负载与 32 个 slice 的总负载隔离开,同时给每个相位提供独立的偏置和驱动路径。

N/P 缓冲级的栅偏置决定静态电流与输出共模;电路功能分析可将偏置发生器等效为理想直流源,同时保留信号开关、尾管及负载。偏置应根据过驱动、饱和余量和带宽选取;跟踪误差、保持下垂与相位间串扰需由瞬态、AC/PAC 或 PSS 仿真确认。

四个 clk4_* 在 analog top 内先由本地时钟 buffer 驱动,再进入 rx_au_adc_clkgen,产生各组的 adc_clk_0/90/180/270 和起始 sample pulse。每相有独立的 del_ctrl_*[3:0],校准可改变局部边沿而不重排 224-bit 数据总线。时钟延迟单元、interleaver aperture 与 slice token 传播延迟共同决定有效采样时刻;验证时应同时测量模拟 phase-held 波形和数字 handoff 标志,不能只对外部 clk4_* 做理想相位比较。

ADC 参考按公共 vref_root→32 个 slice 本地参考缓冲→CDAC 分层分发。公共根参考可用理想 0.500 V 表示;各 slice 的 MOS 参考缓冲仍承担充放电电流,局部输出阻抗与建立时间决定 reference droop,不能把所有 CDAC 底板直接视为理想电压节点。

5. slice 内 bootstrap 与保持节点

四相 interleaver 先在正确的 UI 位置形成 phase-held 模拟节点,随后 group 内被选中的 SAR slice 用差分 bootstrap 开关把该电压转移到本 slice 的 CDAC 顶板:

text 复制代码
phase-held P/N
-> differential bootstrap NMOS
-> CDAC top plate P/N
   = gain-cap top plate P/N
   = comparator input P/N
-> HOLD / asynchronous SAR conversion

每侧主采样 NMOS 的发布网表尺寸为 L=16 nm、NFIN=4、M=24。栅极由本地 bootstrap driver 驱动,track 阶段 boosted gate 随输入共模抬升,使主开关在较宽输入范围内近似维持稳定过驱动,减小导通电阻随输入变化引起的动态失真。

该 slice 没有独立的大型 hold capacitor。开关关断后,保持电荷分布在主冗余 CDAC、gain calibration 电容、比较器输入、电路寄生及 bootstrap 器件上。因此"采样电容"不能只按某一个显式元件计算;输入带宽、kT/C 噪声和比较器回踢(kickback)都必须在完整 slice 或 PEX 网络中评估。

每个 group 的 samp_pulse_in 进入第一个 slice,再沿 8 个 slice 逐级传播。token 有效时完成局部采样准备,token 结束后进入保持和转换窗口。token 主要负责把稳定的 phase-held 电压分配给八个低速 SAR 核心;真正相对于串行数据的 0°/90°/180°/270° aperture 仍由前面的四相 interleaver 时钟决定。

6. 八路结果 handoff 与低速并行输出

单个 SAR slice 完成转换后先产生本地 7-bit code,group 内的 rx_adc_ho_int 再把八个不同时刻完成的结果整理到同一个低速 frame。发布连接对应的 group-local 输出顺序为:

text 复制代码
physical slice order : 0 1 2 3 4 5 6 7
handoff bus order     : 4 5 6 7 0 1 2 3

前四个位置保存上一轮后半组 slice 4~7,后四个位置接入当前轮的 slice 0~3。这样在 top handoff 时刻,八个位置都属于同一个连续 32-UI frame,不会混入尚未完成的新结果。

clk_adc_handoff[1] 固定为 0。下游看到的是每个 handoff 周期 32 个按 symbol 时间排列的 7-bit sample。

每个物理 slice 还有唯一 5-bit 地址,由 3-bit 本地 slice index 与 2-bit group ID 组成。gain calibration 通过该地址选择某一个模拟 gain bank;数字 offset code 则在 32 路数组中按同一全局顺序保存。调试时需要同时核对物理地址、group-local handoff 位置和 224-bit global sample index,三者不是同一种编号。

相关推荐
在所不辞兄13 小时前
【零基础学智能仿真-63】ABACUS作业工具与MCP接口
人工智能·深度学习·神经网络·机器学习·智能仿真
楚山之石13 小时前
【Medical Image Analysis】深度学习医学图像合成综述:伪CT、合成MRI与合成PET的架构、性能与临床边界
图像处理·人工智能·学习·mr·mri
blackappleD13 小时前
百度 Unlimited OCR 2 拆解:SR-SWA 如何让百页文档的 KV 缓存不再涨
人工智能·llm
数字新视界13 小时前
国产动环数据库在智能机房环境监控中的应用与优势分析
大数据·人工智能·数据中心·机房管理·模块化机房
holly就是我13 小时前
AI 编程助手为什么跑偏?用开源 ccglass 看清 Prompt、工具调用和 Token 消耗
人工智能·后端
雨中飘荡的记忆13 小时前
额度又见底了?这个开源项目,给 AI 编程助手接上 61 家"加油站"
人工智能
天远Date Lab13 小时前
零信任架构实战:基于天远企业年报信息核验构建自动化商业保理财务与社保穿透评估网关
人工智能·架构·自动化
EnCi Zheng13 小时前
后端怎么把AI接口稳定安全低成本接进业务:超时重试、密钥隔离与成本熔断清单
人工智能·后端·安全·架构·api
loulanyue_13 小时前
给概率大模型套上确定性缰绳:GraphRAG、神经符号与知识超图重构可信AI底座——读陈华钧杨博等CNCC2026第十届知识图谱论坛实录
人工智能·rag
古法老登瞎折腾14 小时前
大数据智能运维实战(九):让 AI 查日志——找到异常,也保留上下文
java·大数据·运维·人工智能·spring ai·mcp