DDR2的设计经验经典流程_第1页
DDR2的设计经验经典流程_第2页
DDR2的设计经验经典流程_第3页
DDR2的设计经验经典流程_第4页
DDR2的设计经验经典流程_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DDR2的设计经验经典流程-1发布时间: 2012-11-23 21:28:34 来源: EDA中国DDR2的设计经验经典流程 EDA中国 撰写一、 获取设计要求参数 1、DDR信号:主要分为以下5类:<1>Data线(0-63)<2>Address线(0-13)<3>Command线<4>Control线<5>CLK线 (0-3)<6>电源线2获得电气参数要求(如:阻抗要求)DDR_DQS 100欧DDR_CLK 100欧DDR_command 60欧DDR_Control 60欧DDR ­_Data 60欧

2、二、确定叠构1从PCB加工商了解板材以及相关参数,2. 通过设计经验结合仿真工具确定最佳叠构。确定如下叠层结构: 根据数据传输特性和DATASHEET要求将DDR线分成1) DDR_command (BUS):a) M_a_a0. M_a_a13b) M_a_bs0.M_a_bs2c) M_a_Cas#d) M_a_Ras#e) M_a_We#2) DDR_Control (BUS):a) M_cke0,M_cke1,b) M_cs#0,M_cs#1,c) M_odt0,M_odt13) DDR_DATA (8 X BUS): DDR_D0a) M_A_DQ0M_A_DQ7b) M_A_Dm0

3、c) M_A_DQs0, M_A_DQs#0 DDR_D1- DDR_D7a) M_A_DQ56M_A_DQ63b) M_A_Dm7c) M_A_DQs7, M_A_DQs#74) DDR_CLK (DVI): DDR_CLK0a) M_CLK_Ddr#0b) M_CLK_Ddr0 DDR_CLK1a) M_CLK_Ddr#1b) M_CLK_Ddr1将BUS和差分对分类信息输入Constraint Manager,同时参考叠构结合仿真工具和设计经验将(线宽,间距,拓扑结构等)规则参数输入Constraint Manager 三、 布局Constraint Manager驱动布局。主要元件定位

4、:考虑:1. 从机构角度讲,一般DDR连接器的位置是机构外型决定,CPU的位置是由NET关系和DDR信号的要求物理参数决定,用测量工具测量大致定位, 2.考虑到一些长度控制约束和时序匹配问题,建议将元件中心距控制在最短限长线的2/3左右,可以结合ConstraintManager和DRC功能来近一步确认。3.连接长度限制线,当走线不在Constraint允许范围内,软件会显示DRC,ConstraintManager也会显示其超出值,为布局调整提供依据。 当走线在Constraint允许范围内,Constraint Manager也会显示需要后续饶线长度,为饶线空间提供参考依据。 周边电路布局

5、:BGA区域3mm内不能放器件,一般为4mm,便于BGA的贴装, DDR部分布局考虑:DXF、DFM、电气特性和电源分配,做出以下布局:四、布线 整体网络分布:无法区分<1>Data线(0-63) Address线(0-13) Command线,Control线,CLK线 (0-3)等信号线网络信息区分整理:通过“colordialog” 不同组的BUS赋予不同的颜色,从而更加直接不同BUS的分布状况。 区分显示:用NET显示工具将不同BUS和NET区分开,清晰显示便于走线规划,BUS拓扑设计:考虑:网络的密度和产品整体成本和电气特性以及EMI和EMC问题,结合PCB建议叠构对整个

6、产品做出如下分配。 通过GRE planer, 灵活规划不同BUS的叠层和BUS之间的相对位置,近一步衡量EMI 和EMC问题. 综合各种问题,对DDR的各组BUS做出如下图规划。DDR的所有信号网络都做微带线处理,分布于3 和4层。如下图;布线及线处理:考虑问题如下:1) Ddr_clk和DQS差分处理,a) 线宽b) 间距(差分对内间距, 对与对之间间距, 差分对与其他线的间距)c) 等长(差分对内等长, 对与对之间等长)2) Data BUS线处理a) 线宽b) 间距(BUS内间距, BUS之间间距, BUS与其他线的间距)c) 等长(BUS内等长, BUS之间等长)3) Command

7、和 control BUS线处理a) 线宽b) 间距(BUS内间距, BUS之间间距, BUS与其他线的间距)c) 等长(BUS内等长, BUS之间等长)1. Ddr_clk差分线处理对Ddr_clk0( M_Clk_Ddr#0, M_Clk_Ddr0)和Ddr_clk1( M_Clk_Ddr#1, M_Clk_Ddr1)做差分等长处理。同时与其他信号之间距离大于3倍的差分对间距,建议5倍以上,Ddr_clk差分对内等长,两对差分线,允许误差有时序决定,建议误差在15mil以内。 2. DQS差分线处理DQS 到其他信号间距最小是DQS差分对间距的3倍以上,建议5倍以上。等长处理建议:1) D

8、dr_clk 误差控制在10mil以内2) Ddr_Data Ddr_Command Ddr_Address Ddr_Control误差控制在15mil以内3) Ddr_Data Ddr_Command Ddr_Address Ddr_Control Ddr_clk之间的长度误差控制在30mil 以内.、4) Pin Delay注意: 一定要将芯片封装内部的绕线长度计算在内, 绕线长度参数可以从芯片封装厂商获取,输入ConstraintManager中,来驱动布线处理.五、电源处理VREF处理:VREF主要用作输入缓冲电平判断,电流较小,一般不大于3mA,,推荐线宽为1525mil;VREF到

9、其他信号线的间距不应小于20mil。 VTT处理:一般在DDR2系统中VTT仅用于地址、命令和控制信号的端接。标准DDR2电源为1.8v,VTT电源为0.9V,VTT所使用的铜皮宽度应该足够大(推荐150mil以上)。 1.8v 处理: 六、EMC处理1) 完整的参考平面2) 带状线处理 建议重要信号杜绝有下图走线处理, 整体效果:以下内容主要是针对DDR2 667内存的设计。     信号分组:    DDR2的布线中习惯把信号分成若干组来进行设计,分成同组的信号具有相关或者相似的信号特性。    时钟

10、组:差分时钟信号,每一对信号都是同频同相的。ckp0和ckn0为一对。    数据组:对主板64位DDR2内存来说数据每8位(也就是一个byte)为一组可以分为八组,数据dq0:7、数据掩码dqm0、数据选通差分信号dqsp0和dqsn0为一组,以此类推。同个数据组的信号应该在同一个信号层上走线,换层也应该一起换,为了方便在同一个信号层走线可以将数据位互换。比如dq2信号在走线的时候发现如果按照原理图来走线会跟dq4交错,这样就不得不换层走线,我们通过互换数据位就可以使信号走同层,对内存来说每一位存进什么内容读出也是什么内容,互换不会受影响,但是互换的条件必须是在

11、同一组内8个bit之间。    地址/命令组:MA0:14、BA0、BA1、BA2、RAS、CAS、WE    控制组:时钟使能CKE、片选CS、终端电阻选通ODT为一组,对内存条来说DIMM0用到了CKE0、CKE1、CS0、CS1、ODT0、ODT1。做板载内存设计的时候,可以只用CKE0、CS0、ODT0,控制4片16位的内存芯片。    PCB叠层:    对六层板来说一般的叠层都是top、GND、singnal2、singnal3、POWER、bottom,信号一般

12、情况下以GND为参考平面比较好。走线的阻抗由走线宽度、走线的铜箔厚度、走线到参考平面的距离、参考平面的铜箔厚度和板介质材料决定,PCB设计的时候应该遵守CPU厂家阻抗设计要求来设置叠层。一般PCB设计软件也能计算阻抗,找PCB生产厂家了解了板材介质厚度的资料后可以自行设计叠层、线宽。地址/命令信号、控制信号可以以1.8V内存工作电压为参考平面。    长度控制:     对DDR2这种高频的信号来说走线长度应该计算到CPU核心,这就引入了一个叫封装长度的概念。硅晶元经过物理化学的方法刻蚀而成CPU核心,再将CPU核心封装到一

13、块小的PCB基板上就成了我们常见的CPU。那块小的PCB上管脚到CPU核心的走线长度被称为封装长度。    到同一行列(rank)内存的时钟长度应该控制在正负5mil以内。     同一个数据组内所有走线长度控制在数据选通信号DQS的正负20mil范围内为宜,不同数据组之间长度可以不同,但是应该控制在时钟信号的正负500mil以内。    地址/命令组信号长度控制不是特别严格,INTEL凌动N450要求控制在时钟信号负500mil到正1000mil以内。也就是说最长和最短的信号可以相差

14、1500mil,但是布线的时候还是尽量把信号长度差缩小比较好。布线的时候这组信号长度完全相等也没有问题,但是这样占用的PCB空间也大,花费的时间也多。如果地址/命令信号长度超出时钟信号几千mil,那就需要在BIOS固件中好好调节了。控制在CPU要求的范围内,需要做板载内存的时候只需要配置好内存SPD就可以了。    控制组信号长度控制要求和地址/命令组信号的要求类似,设计的时候应该按照CPU厂家的要求来做,INTEL凌动N450要求控制在时钟信号0mil到正1000mil以内。    走线间距:    一般来说走线都应该按照3W原则来走线,也就是同一个平面上线与线的间距为3倍线的宽度。但是这个不是必须的,intel要求的就比较小。一般走线蜿蜒线的间距可以为16到20mil,对时钟信号可以加大到30mil。不同组信号之间的距离应该适当拉大,可以为20mil以上,地址/命令组和控制组信号的间距可以比较小8mil以下都可以。BGA扇出的地方间距可以小,出线后应该以CPU设计要求来走线。   

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论