马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 joujoulian 于 2015-11-13 13:01 编辑
虽然DDR3的资料很多,ddr4和 eMMC也出现了,但是这里还是把DDR3的设计心得搬出来说一说:
1,上图,搞一张图纸大家都看得见
如图,DDR3 sdram芯片原理上简单得很,就几个注意点:
a.DATA bus--一般都多片拼接,数据线从0往后数,这里位宽32bits【DQ0~DQ31】,实际更据您需要的容量而定;
b.Addr bus--A0~A13,位宽14bits;
c.CLK:差分的
cke:时钟使能
ck_P,ck_N差分时钟
d.复位:ResetN
e.bank地址选择:BA0~BA2
f.端接:ODT
g.数据掩码、控制命令
如:/cs,/WE
h.电源 i,剩下就是电源引脚上的退耦电容/供电
引脚说明详细: 管脚符号 | 类型 | 描述 | A0-A9,A10/AP,A11,A12/BC#,A13 | Input | 地址输入。为ACTIVATE命令提供行地址,和为READ/WRITE命令的列地址和自动预充电位(A10),以便从某个bank的内存阵列里选出一个位置。A10在PRECHARGE命令期间被采样,以确定PRECHARGE是否应有于某个bank:A10为低,这个bank由BA[2:0]来选择,或者A10为高,对所有bank。在LOAD MODE命令期间,地址输入提供了一个操作码。地址输入的参考是VREFCA。A12/BC#:在模式寄存器(MR)使能的时候,A12在READ和WRITE命令期间被采样,以决定burst chop(on-the-fly)是否会被执行(HIGH=BL8执行burst chop),或者LOW-BC4不进行burst chop。 | BA0,BA1,BA2 | Input | Bank地址输入。定义ACTIVATE、READ、WRITE或PRECHARGE命令是对那一个bank操作的。BA[2:0]定义在LOAD MODE命令期间哪个模式(MR0、MR1、MR2)被装载,BA[2:0] 的参考是VREFCA | CK,CK# | Input | 时钟。差分时钟输入,所有控制和地址输入信号在CK上升沿和CK#的下降沿交叉处被采样,输出数据选通(DQS、DQS#)参考与CK和CK#的交叉点。 | CKE | Input | 时钟使能。使能(高)和禁止(低)内部电路和DRAM上的时钟。由DDR3 SDRAM配置和操作模式决定特定电路被使能和禁止。CKE为低,提供PRECHARGE POWER-DOWN和SELF REFRESH操作(所有Bank都处于空闲),或者有效掉电(在任何bank里的行有效)。CKE与掉电状态的进入退出以及自刷新的进入同步。CKE与自刷新的退出异步,输入Buffer(除了CK、CK#、RESET#和ODT)在POWER-DOWN期间被禁止。输入Buffer(除了CKE和RESET#)在SELF REFRESH期间被禁止。CKE的参考是VREFCA。 | CS# | Input | 片选。使能(低)和禁止(高)命令译码,当CS#为高的时候,所有的命令被屏蔽,CS#提供了多RANK系统的RANK选择功能,CS#是命令代码的一部分,CS#的参考是VREFCA。 | DM | Input | 数据输入屏蔽。DM是写数据的输入屏蔽信号,在写期间,当伴随输入数据的DM信号被采样为高的时候,输入数据被屏蔽。虽然DM仅作为输入脚,但是,DM负载被设计成与DQ和DQS脚负载相匹配。DM的参考是VREFCA。DM可选作为TDQS | ODT | Input | 片上终端使能。ODT使能(高)和禁止(低)片内终端电阻。在正常操作使能的时候,ODT仅对下面的管脚有效:DQ[7:0],DQS,DQS#和DM。如果通过LOAD MODE命令禁止,ODT输入被忽略。ODT的参考是VREFCA | RAS#,CAS#,WE# | Input | 命令输入,这三个信号,连同CS#,定义一个命令,其参考是VREFCA | RESET# | Input | 复位,低有效,参考是VSS,复位的断言是异步的。 | DQ0-DQ7 | I/O | 数据输入/输出。双向数据,DQ[7:0]参考VREFDQ | DQS,DQS# | I/O | 数据选通。读时是输出,边缘与读出的数据对齐。写时是输入,中心与写数据对齐。 | TDQS,TDQS# | Output | 终端数据选通。当TDQS使能时,DM禁止,TDQS和TDDS提供终端电阻。 | VDD | Supply | 电源电压,1.5V+/-0.075V | VDDQ | Supply | DQ电源,1.5V+/-0.075V。为了降低噪声,在芯片上进行了隔离 | VREFCA | Supply | 控制、命令、地址的参考电压。VREFCA在所有时刻(包括自刷新)都必须保持规定的电压 | VREFDQ | Supply | 数据的参考电压。VREFDQ在所有时刻(除了自刷新)都必须保持规定的电压 | VSS | Supply | 地 | VSSQ | Supply | DQ地,为了降低噪声,在芯片上进行了隔离。 | ZQ | Reference | 输出驱动校准的外部参考。这个脚应该连接240ohm电阻到VSSQ
|
2.pcb设计,也上图几张 关键要点: 0.布局合理,2片ddr芯片与cpu芯片保持同等距离,且需要预留绕线空间,便于走线等长处理,图中
1.数据线 走靠近GND的内部走线层,如图3、10层
2.地址线 走靠近GND的内部走线层,如图4,9层
3.相邻走线层走线尽力垂直交叉 4.差分时钟从源端(cpu)引出到两片ddr芯片,拓扑结构保持"Y"结构,切保证在分支点到两片ddr芯片的距离一致+/-5mil 5.关于走线间距,需要满足>=3W原则,图示差分时钟线宽间距为3.2mil/10.5mil,具体最好做一下仿真,叠层和板材不一样,相应的阻抗也不一样 6.关于电源:两组VREF/VDD,都需要走足够宽,根据经验需要走电源平面分割
7.等长蛇形线间gap保持>3w,图中为18.5mil 8.地址线addr bus/ba0~ba2/odt//cs/we等都采用Y结构从源端到ddr芯片端
9.走线不跨层,过孔最少原则 |