当前位置:首页 > 工业控制 > 电子设计自动化
[导读]DDR布线在PCB设计中占有举足轻重的地位,设计成功的关键就是要保证系统有充足的时序裕量。要保证系统的时序,线长匹配又是一个重要的环节。我们来回顾一下,DDR布线,线长匹配的基本原则是:地址,控制/命令信号与时钟做等长。

DDR布线在PCB设计中占有举足轻重的地位,设计成功的关键就是要保证系统有充足的时序裕量。要保证系统的时序,线长匹配又是一个重要的环节。我们来回顾一下,DDR布线,线长匹配的基本原则是:地址,控制/命令信号与时钟做等长。数据信号与DQS做等长。为啥要做等长?大家会说是要让同组信号同时到达接收端,好让接收芯片能够同时处理这些信号。那么,时钟信号和地址同时到达接收端,波形的对应关系是什么样的呢?我们通过仿真来看一下具体波形。

建立如下通道,分别模拟DDR3的地址信号与时钟信号。

图1 地址/时钟仿真示意图

为方便计算,我们假设DDR的时钟频率为500MHz,这样对应的地址信号的速率就应该是500Mbps,这里大家应该明白,虽然DDR是双倍速率,但对于地址/控制信号来说,依然是单倍速率的。下面来看看波形,在地址与时钟完全等长的情况下,地址与数据端的接收波形如下图2,红色代表地址信号,绿色代表时钟信号。

图2 时钟信号与地址信号波形

上面的波形我们似乎看不出时钟与地址之间的时序关系是什么样的,我们把它放在一个眼图中,时序关系就很明确了。这里粗略的计算下建立时间与保持时间。如下图

图3 时钟信号与地址信号波形

由上图3.我们可以知道,该地址信号的建立时间大约为891ps,保持时间为881ps。这是在时钟与地址信号完全等长情况下的波形。如果地址与时钟不等长,信号又是什么样的呢?仿真中,我们让地址线比时钟线慢200ps,得到的与眼图如下:

图4 时钟信号与地址信号波形

由上图可知,在地址信号比时钟信号长的情况下,保持时间为684ps,建立越为1.1ns。可见,相对于地址线与时钟线等长来说,地址线比时钟线长会使地址信号的建立时间更短。同理,如果时钟线比地址线长,则建立时间会变长,而保持时间会变短。那么双倍速率的数据信号又是怎样的?下面通过具体的仿真实例来看一下。

图5 DQ 与 DQS仿真示意

仿真通道如上图所示,驱动端和接收端为某芯片公司的IBIS模型,仿真波形如下:

图6 DQ与DQS仿真波形

我们将DQS和DQ信号同时生成眼图,在一个窗口下观测,结果如下:

图7 DQ与DQS眼图

如上图所示,大家可能发现了,如果按照原始对应关系,数据信号的边沿和时钟信号的边沿是对齐的,如果是这样,时钟信号怎样完成对数据信号的采样呢?实际上并不是这样的。以上仿真只是简单的将两波形放在了一起,因为DQ和DQS的传输通道长度是一样的,所以他们的边沿是对齐的。实际工作的时候,主控芯片会有一个调节机制。一般数据信号会比DQS提前四分之一周期被释放出来,实际上,在颗粒端接收到的波形对应关系应该是这样的:

图8 平移后的眼图

通过主控芯片的调节之后,DQS的边沿就和DQ信号位的中心对齐了,这样就能保证数据在传输到接收端有足够的建立时间与保持时间。和上面分析时钟与地址信号一样,如果DQ与DQS之间等长做的不好,DQS的时钟边沿就不会保持在DQ的中间位置,这样建立时间或者保持时间的裕量就会变小。先简单的来看一张图

图9 延时偏差对时序的影响

上图中,T_vb与T_va表示的是主控芯片在输出数据时时钟与数据之间的时序参数。在理想情况下,时钟边沿和数据电平的中心是对齐的,由于时钟和数据传输通道不等长,使得时钟边沿没有和数据脉冲的中间位置对其,使得建立时间的裕量变小。在理解了这些基础问题之后,我们需要做的就是将这些时间参数转化为线长。

下面我们通过具体实例来看看时序的计算,下图是Freescale MPC8572 DDR主控芯片手册,这张图片定义了从芯片出来的时候,DQS与DQ之间的相位关系。

图10 MPC8572时序图

图11 MPC8572时序参数

颗粒端为美光DDR,该芯片的时序图以及时序参数如下图所示,这张图片则定义了颗粒端芯片识别信号所需要的建立时间与保持时间。

图12 DDR颗粒时序图以及时序参数

我们用T_pcbskew来表示DQ与DQS之间的延时偏差,如果想要得到足够的时序裕量,则延时偏差要满足以下关系:

T_pcbskew《T_vb-T_setup

T_pcbskew》T_hold-T_va

代入数据,有:

T_vb-T_setup=375-215=160ps

T_hold-T_va=-160ps

这样,如果传输线的速度按照6mil/ps来计算,T_pcbskew为+/-960mil。大家会发现裕量很大,当然这只是最理想情况,没有考虑时钟抖动以及数据信号的抖动,以及串扰、码间干扰带来的影响,如果把这些因素都考虑进来,留给我们布线偏差的裕量就比较小了。

综上所述,时序控制的目的就是要保证数据在接收端有充足的建立时间与保持时间,明白了这一点,我们在线长匹配这个问题上就能做到胸有成竹,游刃有余了。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

PCB可以说是电子世界的基石。在现代科技领域,印刷电路板(Printed Circuit Board,简称PCB)已经成为了电子产业的基础和核心。从家用电器到航空航天,从智能手机到计算机服务器,几乎所有的电子设备都离不开...

关键字: PCB pcb设计

就目前国际电子电路的发展现状和趋势而言,PCB的发展前景是十分广阔的,但是我们在设计过程中难免遇到一些错误,本文就将带你来看PCB的发展前景以及常见的几种错误,这些错误你会犯吗?在这些错误影响电路板的整体功能之前就认识它...

关键字: PCB技术 pcb设计

一般来讲,PCB在设计完成后,要检查以下11项工作

关键字: PCB pcb设计 pcb检查

做过PCB的朋友都知道,PCB在开展SMT贴片加工的时候,通常有3种方法:全手工、半自动、全自动。全手工就是刷钢网,置放电子元器件都是手工进行操作。半自动就是指手工刷钢网,置放电子元器件上自动贴片机。全自动就是指刷钢网和...

关键字: PCB pcb设计

设计过PCB的小伙伴都知道,我们在进行pcb设计的时候,需要根据不同的PCB板结构以及一些电子产品的需求来进行各种不同区域的设计,包括允许布局区域设计、禁止布局区域设计。允许布线区域设计等等。在allegro设计中,设置...

关键字: PCB pcb设计

我们再用oscard的时候,orcad输出网表出现“Duplicate Pin Name”的错误,应该怎么处理呢?

关键字: orcad duplicate pcb设计

logic的快捷键很多是系统设置好的,快捷键在每个菜单命令的后面都有显示,下面列举一些比较常用的命令快捷键:

关键字: PCB pcb设计 logic

在pcb设计过程中,有时候因为阻抗的变化,我们需要更改已经布好的走线,单根走线非常好更改,直接使用change命令修改线宽即可,对于差分信号,有线宽、线距,所以我们不能直接用change命令修改,要用到我们软件自带的自动...

关键字: allegro pcb设计

这里主要分析一下以下几个问题:布局问题,布线问题,生产工艺

关键字: ad显示板 pcb设计

关于PCB设计中有效降低设计风险,你知道多少?设计PCB的过程中,我们要克服很多问题。比如:元器件的选择,节约成本,元器件间的兼容问题,以及本文所阐述的如何规避PCB设计风险等其他问题,该怎么有效的设置呢?所以了解这些问...

关键字: pcb设计 降低设计风险 信号完整性
关闭
关闭