ddr2+设计注意事项.docx
《ddr2+设计注意事项.docx》由会员分享,可在线阅读,更多相关《ddr2+设计注意事项.docx(9页珍藏版)》请在冰豆网上搜索。
ddr2+设计注意事项
关于DDR2设计说明:
1芯片选择:
MT47H64M16HR-37E
2管脚分配:
单片DDR2占用管脚资源如下表,一片需要一个FPGABANK:
管脚数目
占用BANK
特殊要求
数据线
16
1
DQS
4
1
需要连在CC_LC管脚
地址线
13
1
控制线
11
1
时钟clk
2
1
需要连在CC_LC管脚
将DDR2SDRAM的所有有关的数据线,地址线,控制线,时钟线,均连到FPGA的SSTL18_II电平的BANK上。
端接:
SSTL18_II电平在Virtex5的端接:
使用DCI的端接如下图:
具体电路的连接参照我们已经调通的一个板卡原理图设计。
主要是:
DDR2数据线、DQS信号等,与FPGA之间串接22欧姆电阻;对时钟、地址信号和控制信号通过47欧姆的电阻上拉至VTT(0.9V),PCB设计上需要较多因素。
PCB布线顺序:
数据线->地址线->控制线->时钟。
其中数据线包括DQ/DQS/DM,它们都是在时钟的双沿发生操作。
PCB布线要点:
(1)各种线的总长有要求;
(2)时钟(差分对)除了等长(<50mil),要需要25mil的安全距离。
两个时钟CK之间相差100mil之内。
(3)地址线不用等长,比时钟要长一些
(4)控制线比时钟要长一些
(5)每一个DataGroup(8bitsdata+DQS+DM)在同一层走线。
DDR2的数据线与DQS是源同步关系,等长处理。
同组的数据线以DQS基准等长(<50mil)。
组与组之间的长度差不超过1000mil。
DQS与CK之间的约束较弱,一般不考虑,长度差别不要超过1000mil就差不多。
(6)地址/命令/控制信号与时钟是源同步的,走线长度匹配并不严格要求。
DDR2SDRAM的供电参见电源章节。
还需要注意的是,需要把DQS信号都连接到IO_LxN_CC_LC的管脚上。
本时钟信号CK是FPGA输出给DDR2。
2供电
(1)VDD=1.8V
DDR2SDRAM内存的电流消耗取决于其容量的大小以及运行的环境和速度。
根据Micron公司的数据手册(1GbDDR2.pdf),MT47H64M16HR-37E在Operatingbankinterleavereadcurrent下IDD的最大电流为350mA(颗粒是-187E,最大为520mA)。
1.8V同时还给FPGA和PROM供电,决定采用LT1764来供电,最大输出电流是3A。
(2)VREF=0.9V
基本上没有电流从DDR2的VREF管脚上流过,仅有微安级大小的漏电流。
(3)VTT=0.9V
地址、命令和控制信号需要端接,IO端接电压为0.9V。
Micron公司的内存数据手册上没有明确说出此电压的消耗电流大小。
参考了两块Demo板,它们用的电源模块输出电流分别是5A和2.8A。
决定采用TPS74401供电,最大输出电流3A。
DDR LAYOUT
注:
转自
在现代高速数字电路的设计过程中,工程师总是不可避免的会与DDR或者DDR2,SDRAM打交道。
DDR的工作频率很高,因此,DDR的布线(或者Layout)也就成为了一个十分关键的问题,很多时候,DDR的布线直接影响着信号完整性。
下面本文针对DDR的布线问题(Layout)进行讨论。
信号引脚说明
VSS为数字地,VSSQ为信号地,若无特别说明,两者是等效的。
VDD为器件内核供电,VDDDQ为器件的DQ和I/O供电,若无特别说明,两者是等效的。
对于DRAM来说,定义信号组如下:
∙数字信号组DQ,DQS,xDM(选通信号),其中每个字节又是内部的一个信道Lane组,如DQ0~DQ7,DQS,LDM为一个信号组。
串行端接
∙地址信号组:
ADDRESS
∙命令信号组:
CAS#,RAS#,WE#
∙控制信号组:
CS#,CKEBA[0..1]
∙时钟信号组:
CK,CK#
印制电路板叠层,PCBStackups
推荐使用6层电路板,分布如下:
∙电路板的阻抗控制在50~60ohm
∙ 印制电路板的厚度选择为1.57mm(62mil)
∙填充材料Prepreg厚度可变化范围是4~6mil
∙电路板的填充材料的介电常数一般变化范围是3.6~4.5,它的数值随着频率,温度等因素变化。
FR-4就是一种典型的介电材料,在100MHz时的平均介电常数为4.2。
推荐使用FR-4作为PCB的填充材料,因为它便宜,更低的吸湿性能,更低的电导性。
一般来说,DQ,DQS和时钟信号线选择VSS作为参考平面,因为VSS比较稳定,不易受到干扰,地址/命令/控制信号线选择VDD作为参考平面,因为这些信号线本身就含有噪声。
电路板的可扩展性
根据JEDEC标准,不同容量的内存芯片一般引脚兼容,为了实现电路板的可扩展性,可以做如下处理,如128Mb与256Mb的兼容应用。
未用的DQ引脚
对于x16的DDR器件来说,未用的引脚要作一定的处理。
例如x16的DDR来说,DQ15:
DQ8未用,则处理如下,将相关的UDM/DQMH拉高用来屏蔽DQ线,DQ15:
DQ8通过1~10k的电阻接地用来阻止迸发写时的噪声。
端接技术
串行端接,主要应用在负载DDR器件不大于4个的情况下。
对于双向I/O信号来说,例如DQ,串行端接电阻Rs放置在走线的(靠近CPU端)中间,用来抑制振铃,过冲和下冲。
对于单向的信号来说,例如地址线,控制线,串行端接电阻放置在走线中间或者是信号的发送端,推荐放置在信号的发送端。
说明:
DDR的CK与CK#是差分信号,要用差分端接技术。
并行端接,主要应用在负载SDRAM器件大于4个,走线长度>2inch,或者通过仿真验证需要并行端接的情况下。
并行端接电阻Rt取值大约为2Rs,Rs的取值范围是10~33ohm,故Rt的取值范围为22~66ohm。
如果有必要的话,所有DDR的数据,地址,命令,控制线都是SSTL_2接口,要使用single-endedParallelTermination,如上图。
CKE也可以使用这种端接。
导线宽度和间距:
导线间距和导线宽度S1,S2,S3的定义如下:
∙S1表示同一信号组内两相邻导线之间的间距
∙S2表示不同信号组之间两相邻导线之间的间距
∙S3表示导线的宽度
导线宽度选择为:
导线间距选择:
几点说明:
1.DQS一般布线的位置是数据信号组内同一信号组中DQ走线的中间,因此DQS与DQS之间的间距一般不提
2.DQS与时钟信号线不相邻
3.为了避免串扰,数据信号组与地址/命令/控制信号组之间的走线间距至少20mil,建议它们在不同的信号层走线
4.时钟信号组走线尽量在内层,用来抑制EMI
导线走线长度
所有DDR的差分时钟线CK与CK#必须在同一层布线,误差+-20mil,最好在内层布线以抑制EMI。
如果系统有多个DDR器件的话,要用阻值100~200ohm的电阻进行差分端接。
(1)若时钟线的分叉点到DDR器件的走线长度<1000mil,要使用100~120ohm的差分端接,如下图:
(2)若时钟线的分叉点到DDR器件的走线长度>1000mil,要使用200~240ohm的电阻差分端接,因为两个200~240ohm的电阻并联值正好为100~120ohm。
如下图所示。
∙数据信号组的走线长度与时钟信号线的误差为+-500mil,组内同一信道的信号线走线误差为+-50mil,从而可以得到,组内不同信道的走线误差为+-1000mil,相同信道的DQS一般走线在DQ中间
∙地址线/命令/控制信号线与时钟信号走线的误差为+-400mil,组内走线误差为+-50mil
∙ 所有信号的走线长度控制在2inch(5cm)最好
去耦电容
∙推荐使用低ESL(2nH)的电容,大小在0.01uF~0.22uF,其中0.01uF针对高频,0.22uF针对低频
∙建议使用钽电容。
相对于电解电容来说,虽然它比较贵,但它具有较好的稳定性,较长的使用周期。
一般电解电容随着使用时间的加长,性能下降较多
参考电压
对于较轻的负载(<4DDR器件),可使用下图的方法:
对于较重的负载(>4DDR器件),可使用IC来产生VREF。
IC内部集成了两种电压VTT和VREF,其中VTT在重负载的情况下最高电流可达3.5A,平均电流为0A,VREF的电流比较小,一般只有3mA左右。
VREF走线控制
具体如下图所示:
DDR的VTT设计
当数据线地址线负载较重时,VTT的暂态电流峰值可达到3.5A左右,这种暂态电流的平均值为0A。
一些情况下不需要VTT技术(并行端接)。
∙系统中有2个或更少的DDR
∙总线上需要的电流不是很高,中等左右
∙通过仿真验证不需要
VTT电压的产生一般用IC,厂商包括:
IntersilmPhilips,Semiconductors,Fairchild,National,TI等等。
选用了IC实现VTT,推荐使用下面的原则:
∙VTT用Rt端接地址/控制/命令信号线,端接数据信号组VTT=VDDQ/2
∙VTT并不端接时钟信号线,时钟信号线使用前面说的差分端接技术
∙VTT与VREF走线/平面在同一层,必须具有150mil的距离,推荐它们在不同层
∙VTT走线/平面需要至少2个4~7uF的解耦电容,2个100uF的电容。
具体放置位置是VTT的两个端点(ateachend)
∙VTT表面走线宽度至少150mil,推荐250mil
∙上电时序:
VTT开始上电必须在VDDQ之后,避免器件latch-up,推荐VTT和VREF同时上电
∙如果走线要分支的话,建议使用T型分支。
具体见下图