作者:一博科技2 F9 E+ W( o/ [/ V
/ t, c; M( {: P& U% N6 @这次要谈到的话题是DDR的线长匹配,这个大家再熟悉不过了。回顾一下,总体原则是:地址,控制/命令信号与时钟做等长。DQ/DM信号与DQS做等长。为啥要做等长?大家会说是要让同组信号同时到达接收端,好让接收芯片能够同时处理这些信号。那么,时钟信号和地址同时到达接收端,波形的对应关系是什么样的呢?我们通过仿真来看一下具体波形。
$ u- J0 V8 U+ |* W: w9 C& L6 P( h( q6 }
U: h: Z5 k3 n6 w7 j/ T$ C建立如下通道,分别模拟DDR3的地址信号与时钟信号。3 w) }+ f- C2 w4 a1 i K
5 L+ u8 j# q9 L! ?4 V& S
图1 地址/时钟仿真示意图
" o: I2 C' G& H9 f- y+ [+ O* H: B
- U" r) R8 d8 Q) u9 M# Z: b5 E为方便计算,我们假设DDR的时钟频率为500MHz,这样对应的地址信号的速率就应该是500Mbps,这里大家应该明白,虽然DDR是双倍速率,那是指数据信号,对于地址/控制信号来说,依然是单倍速率的,我们在仿真时,地址/命令信号与数据信号的速率也是应该分开设置的,大家在设置信号速率时应该注意。下面来看看波形,在地址与时钟完全等长的情况下,地址与数据端的接收波形如下图2:红色代表地址信号,蓝色代表时钟信号。3 a# j% }- s7 b1 Z' ]5 O
) M' S# l; w! l) U% k
图2 时钟信号与地址信号波形
7 j3 ~+ u2 I' t8 w0 m/ I1 k0 ~ x, e, @' o- K
上面的波形我们似乎看不出时钟与地址之间的时序关系是什么样的,我们把它放在眼图中,时序关系就很明确了。这里粗略的计算下建立时间与保持时间。如下图
% K X4 L3 u9 v9 N* }7 g
; x% u' {! n1 ?( d7 j g% q' o图3 时钟信号与地址信号波形 7 K" T' j" Q1 c2 R- s5 l1 p5 Y
% R3 P6 m6 `2 s- v# U* ]" x2 T
由上图3.我们可以知道,该地址信号的建立时间大约为983ps,保持时间为1ns。这是在时钟与地址信号完全等长情况下的波形。如果地址与时钟不等长,信号又是什么样的呢?仿真中,我们让地址线比时钟线慢200ps,得到的波形与眼图如下:4 R/ m6 r( k) E% t, R+ d" ]
$ A; y3 Z* e# P) w- d8 X
图3 时钟信号与地址信号波形 ( V* A4 H0 @1 o% F
8 J2 K5 }$ S* Y+ h, Z) ^图4 时钟信号与地址信号波形 & W0 C n5 E, M; q
# Q0 ^0 [' {, ?/ X+ s/ e( Q. W由上图可知,在地址信号比时钟信号长的情况下,保持时间为780ps,建立时间为1.2ns。可见,相对于地址线与时钟线等长来说,地址线比时钟线长会使地址信号的建立时间更短。同理,如果时钟线比地址线长,则建立时间会变长,而保持时间会变短。
" {5 N I, ]& a) _3 J, p& Y' K
; d8 m, v& V; F3 h/ S& }/ g需要说明的是,这里的建立时间与保持时间只是粗略的估算,实际规范中定义的建立时间与保持时间要比这个复杂。我们的总体目标就是要使DDR的建立时间与保持时间保持足够的裕量,只有这样,数据才能够顺利的被读取或者写入。读到这里,我想小伙伴们已经对线长匹配与时序之间的关系有了更具体的认识。那么,双沿采样的DQS与DQ之间的关系又具体是什么样的呢?我们将在下篇文章中具体介绍,敬请期待。 |