SerDes 知识详解 一、 SerDes 的作用 1.1 并行总线接口 在SerDes 流行之前,芯片之间的互联通过系统同步或者源同步的并行接口传输数据,图1.1 演示了系统和源同步并行接口。 随着接口频率的提高,在系统同步接口方式中,有几个因素限制了有效数据窗口宽度的继续增加。 ➢ 时钟到达两个芯片的传播延时不相等(clock skew) ➢ 并行数据各个 bit 的传播延时不相等(data skew) ➢ 时钟的传播延时和数据的传播延时不一致(skew between data and clock) 虽然可以通过在目的芯片(chip #2)内用 PLL 补偿时钟延时差(clock skew),但是 PVT 变化时,时钟延时的变化量和数据延时的变化量是不一样的。这又进一步恶化了数据窗口。 源同步接口方式中,发送侧 Tx把时钟伴随数据一起发送出去, 限制了clock skew 对有效数据窗口的危害。通常在发送侧芯片内部,源同步接口把时钟信号和数据信号作一样的处理, 也就是让它和数据信号经过相同的路径,保持相同的延时。这样 PVT 变化时,时钟和数据会朝着同一个方向增大或者减小相同的量,对 skew 最有利。 我们来做一些合理的典型假设,假设一个 32bit 数据的并行总线, a)发送端的数据skew = 50 ps ---很高的要求 b)pcb 走线引入的skew = 50ps ---很高的要求 c)时钟的周期抖动 jitter = +/-50 ps ---很高的要求 d)接收端触发器采样窗口 = 250 ps ---Xilinx V7 高端器件的IO 触发器 可以大致估计出并行接口的最高时钟 = 1/(50+50+100+250) = 2.2GHz (DDR)或者 1.1GHz (SDR)。 利用源同步接口,数据的有效窗口可以提高很多。通常频率都在 1GHz 以下。在实际应用中可以见到如 SPI4.2 接口的时钟可以高达 DDR 700MHz x 16bits 位宽。DDR Memory 接口也算一种源同步接口,如 DDR3 在 FPGA 中可以做到大约 800MHz 的时钟。 要提高接口的传输带宽有两种方式,一种是提高时钟频率,一种是加大数据位宽。那么是不是可以无限制的增加数据的位宽呢?这就要牵涉到另外一个非常重要的问题-----同步开关噪声(SSN)。 这里不讨论 SSN 的原理,直接给出 SSN 的公式: SSN = L *N* di/dt。 L 是芯片封装电感,N 是数据宽度,di/dt 是电流变化的斜率。 随着频率的提高,数据位款的增加,SSN 成为提高传输带宽的主要瓶颈。图 1.2 是一个DDR3 串扰的例子。图中低电平的理论值在 0V,由于 SSN 的影响,低电平表现为震荡,震...