1、DDR3DDR3简介简介什麽是什麽是DDRDDR即DDR SDRAM的簡稱 Double Data Rate Synchronous Dynamic Random Access Memory即雙倍速率同步动态随机存取存储器。 SDR SDRAM采用单端(Single-Ended)时钟信号, 在一个时钟周期内只传输一次数据;而 DDR由于工作频率比较快,采用可降低干扰的差分时钟信号作为同步时钟。在一个时钟周期内可以传输两次数据,它能够在的DQS上升沿和和下降沿各传输一次数据。低电压传输:差分信号传输的电压是信号电压幅值的一半。抗干扰能力强:干扰噪声一般会等值、同时的被加载到两根信号线上,而其差值
2、为0,即噪声对信号的逻辑意义不产生影响。能有效抑制电磁干扰(EMI):由于两根线靠得很近且信号幅值相等,这两根线与地线之间的耦合电磁场的幅值也相等,同时他们的信号极性相反,其电磁场将相互抵消。因此对外界的电磁干扰也小。差分信号的优点?SDR, DDR, DDR2 and DDR3 EvolutionsDDR 的发展的发展Input/Output Functional DescriptionFunctional Block Diagram 2GB, 256Mx64 Module(1Rank of x8) Functional Block Diagram 2GB, 256Mx64 Module(1
3、Rank of x16) Input/Output Functional DescriptionSDRAM在读写数据时重点注意以下信号:(1)CLK:时钟信号,为输入信号。所有的命令信号与地址信号的逻辑状态都需要通过CLK的上升沿采样确定。(2)CKE:时钟使能信号,为输入信号,高电平有效。CKE信号的用途有两个:一、关闭时钟以进入省电模式;二、进入自刷新状态。CKE无效时,SDRAM内部所有与输入相关的功能模块停止工作。(3)CS#:片选信号,为输入信号,低电平有效。只有当片选信号有效后,SDRAM才能识别控制器发送来的命令。(4)RAS#:行地址选通信号,为输入信号,低电平有效。(5)CA
4、S#:列地址选通信号,为输入信号,低电平有效。(6)WE#:写使能信号,为输入信号,低电平有效。(7)DQS:数据选通讯号,data可以通过DQS的上升沿与下降沿传输。在读模式时,DQS由memory发给CPU,DQS与data边沿对齐。在写模式时,DQS由CPU发给memory,DQS与data中间对齐。CLK的上升沿V+V-+_Physic Bank内存控制器(CPU)的位宽必须与内存条的位宽相等,这样才能在一个时钟周期内传输所有数据,这个位宽就被成为一个物理Bank(P-Bank,也称为RANK),通常是64bit。P-Bank其实就是一组内存芯片的集合。理论上,完全可以做出一个位宽为6
5、4bit的芯片来满足P-Bank的需要,但这对技术的要求很高,在成本和实用性方面也都处于劣势。所以芯片的位宽一般都较小。常见为4bit、8bit、16bit 。这样,为了组成P-Bank所需的位宽,就需要多颗芯片并联工作。 对于8 bit芯片,需要8颗并联才能工作(88 bit= 64bit) 对于16bit芯片,需要4颗并联才能工作(416bit= 64bit) 这个集合的容量不限,但这个集合的总位宽必须与CPU数据位宽相符。芯片组可以支持多个P-Bank,但是一次只选择一个P-Bank工作。片选信号(CS#)来选择是哪个P-BANK。1B = 1Byte=1字節字節=8bit1b = 1b
6、it=1 比特比特Logical BankDDR3芯片的内部是8个如同表格一样的存储阵列,通过BA0:2来选择哪一个“表格”。在表格中先指定一个行再指定一个列,就可以准确地定位到某个单元格,这就是内存芯片寻址的基本原理。对于内存,这个单元格可称为存储单元,它是L-bank中的基本存储单位,容量是若干bit,对应芯片的位宽。而每个bit则是存放于单独的存储体中,存储体是内存中最小的存储单位。这个表格(存储阵列)就是逻Bank(Logical Bank,简称L-Bank)。大容量内存颗粒都是由多个逻辑Bank叠加而成的。如果把一个L-Bank看作是一片平面的矩阵纸,内存颗粒是由多片这样的纸叠起来的
7、。目前DDR3内存芯片基本上都是8个L-Bank设计,也就是说一共有8个这样的“表格”。 寻址的流程是先确定目标地址所在的Rank和L-Bank,接着要确定行(Row),然后再确定列(Colum)。找到了存储单元后,被选中的芯片就进行统一的数据传输。P-Bank & L-Bank 模组的容量=芯片的容量芯片个数 芯片的容量=存储单元数量芯片位宽芯片位宽 存储单元数量=行数列数(得到一个L-Bank的存储单元数量)L-Bank的数量4個個L-Bank要用要用BA0:1 8個個L-Bank要用要用BA0:2DDR2有4/8个L-bankDDR3有8个L-bankP-Bank &芯片位宽芯片位宽4G
8、B 2R* 8 PC3L-12800S容量容量Rank数量数量每颗芯片每颗芯片位宽位宽DDR3L传输速率传输速率12800S means 12800Mb/sec,meaning the transfer speed rating of the module12800/8=1600MBps4GB 1R* 8 PC3L-12800SDDR 关键参数关键参数SPD SPD:SPD: Serial Presence DetectSerial Presence Detect(串行存在检测),它是1个8针的SOIC封装(3mm*4mm)256字节的EEPROM(Electrically Erasable
9、Programmable ROM电可擦写可编程只读存储器)芯片,存储着关于内存模组的配置信息,如P-Bank数量,电压,行地址/列地址数量,位宽,各种主要操作时序(如tRCD,CL,tPR等)。SPDSPD的信息由模组生产商写入的信息由模组生产商写入,主要用途就是协助controller精确调整内存的物理/时序参数,以达到最佳的使用效果。在开机时,系统透过SM Bus access SPD,controller 会根据SPD中的参数信息来自动配置相应的内存时序与控制寄存器,避免人为出现调校错误而引起故障。如果没有SPD,就容易出现死机或致命错误的现象。On board memory不需要SPD
10、.DDR3 Serial Presence Detect Table Serial Presence Detect must Consistent with the latest JEDEC revisionDDR3 Serial Presence Detect Table http:/ spec & measure示波器,探棒,軟體,SPEC 示波器(Scope):DPO70604 頻寬4GHz或更高速的示波器 探棒(Probe):Tektronix P7240,P7360 軟體:Dos模式下執行MT420 Spec: JEDEC Standard No. 79-3E量測時注意事項 測試時所
11、架的地線越短越好。 架的線越靠近終端越好,必要時要刮線或量測點 如果是写,终端测在memory端;如果是读,终端测在CPU端。 在量測DDR之前要先確定Clock跑出來的頻率對不對。 EX:以DDR3 1600(data rate 1600MHZ )為例,Clock要800MHz typical 示波器带宽的选择示波器带宽的选择示波器带宽定义 示波器的输入端加入一固定电压的正弦波信号,逐渐增加该正弦波的频率,直到示波器上显示该正弦波电压为原来的电压为原来的0.707倍或倍或-3dB,此时的频率,即为示波器的规格带宽。fBW : 规格带宽或规格带宽或-3dB 带宽带宽20log0.707 = -
12、3dB示波器带宽示波器带宽v.s.正弦波振幅正弦波振幅信号带宽信号带宽v.s.上升时间上升时间一非正弦波信号的带宽一非正弦波信号的带宽,可以其上升时间来决定。若此信号通过一低通滤波器一低通滤波器(一阶一阶),则其带宽(BW)为0.35/上升时间(tr),也就是说 BWxtr=0.35,若此信号通过的为一非一阶的低通滤波器,则tr与BW的乘积会更高,比如0.4BW = 0.35/ tr示波器带宽示波器带宽v.s. 上升时间上升时间探棒带宽探棒带宽v.s. 上升时间上升时间DDR3 待测信号待测信号ItemMeasureSignalnameStatusDIMMSideCHA1CS0#S0#2SRA
13、S#RAS#3SCAS#CAS#4WE#WE#5MA(Longest)M_A_A146MA(Shortest)M_A_A107DQ(Longest)M_A_DQ628DQ(Shortest)M_A_DQ19DDR3待测项目待测项目MeasureItemSpecificationSetupTime0.17nsHoldTime0.12nsOvershoot-0.4VRingUpVREF+0.150VMeasureItemSpecificationSetupTime0.01nsHoldTime0.025nsOvershoot-0.4VRingUpVREF+0.150VCommand & Addres
14、sDATADDR3量测步骤量测步骤 量測時請在Dos模式下執行Memory test測試程式進行量測。 基準電壓量測 量測前用三用電表點出VDD和VREF的電壓,填入下面表格VREF_DDRSpecificationMeasuredVREF0.49*VDD0.51*VDD0.755VSpecificationMeasuredVDD1.4251.575V1.51VVDD_DDR寻找寻找SO-DIMM 测试点测试点1.參閱DDR3的204pin圖,找出Clk、Clk#、CS、CAS#、RAS#、WE#對應的金手指是第幾pin,然後用萬用表的蜂鳴檔去尋找內存條上最遠端的測點。金針Clk and Cl
15、k# 接線第第1pin第第203pin奇数面1-203偶数面2-204第71pinCK0,CK0#101&103pinDDR3 SDRAM SO-DIMM Pinout.寻找寻找SO-DIMM 测试点测试点 2.需找Address與Data的最長與最短線。 打開allegro,點擊“CM” 圖標寻找寻找SO-DIMM 测试点测试点 選擇electrical-net-total each length,然後選擇需要比對的信號,點擊“F9”寻找寻找SO-DIMM 测试点测试点 3.比對出最長最短線后在根據204pin圖找出對應的Address和Data是第幾pin,然後用萬用表的蜂鳴檔去尋找內存條
16、上最遠端的測點。 對於Address參考的時鐘是CLK,與command信號一致 對於DATA線,參考的時鐘是DQS,并需要進行讀寫判定。Control signal 的抓取的抓取 Control signal : Input signal(CS#、CAS#、RAS#、WE#、Address) Setup time和hold time之量測,設定邊緣觸發、調節觸發Level 差分探棒抓取CLK,单端探棒分别抓取CS#, RAS#, WE#, Address信号。建立时间保持时间VIL & VIH specControl signal 的抓取的抓取 Spec Control signal的的量量
17、测测建立時間建立時間(Setup time)(Setup time) Setup time0.17ns10100 Control signal的的量量测测保持時間保持時間(Holdtime) Hold time0.12ns Control signal的的量量测测 Overshoot和Undershoot之量測Overshoot-0.4vOvershoot/Undershoot SpecControl signal的的量量测测 Ring down和Ring up之量測Ring down是訊號上升到最高點時所向下反射的訊號 Ring up是訊號下降到最低點時所向上反射的訊號Ring downVr
18、ef+0.15vRing upWrite相位關係:Read是edgealigned,write是centrealignedDQS Preamble:Read preamble為負,為負,Writepreamble為正為正Read是是edge alignedwrite是是centrealignedRead preamble为负为负由上圖可以知道在由上圖可以知道在ReadRead時時DQSDQS是先一個拉是先一個拉LOWLOW的波形的波形Write preamble为正为正由上圖可以知道在由上圖可以知道在WriteWrite時時DQSDQS是直接是直接RiseRise的,且的,且DQDQ的有效值在
19、的有效值在DMDM拉拉LOWLOW時才成立時才成立47DDR read/wirte判定判定黃色黃色DQSDQS藍色藍色DATADATAReadpreamble為負為負Writepreamble為正為正48DDR read/write判定幅度幅度:ReadWriteData signal 的抓取的抓取 DATA signal : Setup time和hold time之量測,設定邊緣觸發、調節觸發Level 差分探棒抓取DQS,单端探棒分别抓取DATA 最长,最短信号。建立时间保持时间Setup/hold time specData signal 的量测的量测 Setup time Hold
20、timeData signal 的量测的量测 Overshoot/undershoot Ring up/ring downData & Data Strobe Note: Data(single end)與Data Strobe(differential)是相對應的(如下): Data0 Data7 所對應的Data Strobe為 DQS0,DM0 Data8 Data15 所對應的Data Strobe為 DQS1,DM1 Data16 Data23 所對應的Data Strobe為 DQS2,DM2 Data24 Data31 所對應的Data Strobe為 DQS3,DM3 Data
21、32 Data39 所對應的Data Strobe為 DQS4,DM4 Data40 Data47 所對應的Data Strobe為 DQS5,DM5 Data48 Data55 所對應的Data Strobe為 DQS6,DM6 Data56 Data63 所對應的Data Strobe為 DQS7,DM754DDR Swap在在Layout時,可能會遇到走線交錯的情況,這時需要對走線進行調換。時,可能會遇到走線交錯的情況,這時需要對走線進行調換。 同一組信號線內的信號(構成一個Byte)可以進行任意調換. 組與組之間的信號可以調換,需要同時調換需要同時調換DQ,DQS,DMMemory 模
22、组厂商模组厂商Layout guide Single-Ended and Differential TargetsDDR3L信號在IN1, IN2的走線請保持垂直以防止signals crosstalk,若無法避免走線平行時,可走45度儘量錯開DDR3L信號在IN1的繞線以水平繞線為主,在IN2的繞線以垂直繞線為主,並儘量縮短平行走線長度SO-DIMM 端之control與command 訊號附近之0.1uF小電容盡量靠近connector本身,並與SO-DIMM同面.Every signal transitioning into other layer through a via, the
23、corresponding referencing via should be inserted as close as possible and should not extend beyond 50 mils.Signal via to GND via ratio of 2:1 has to be followed for good referencing during layer transitionsAll signal routing layers must be referenced to solid GND or power plane.The reference planes
24、should be continuous. Routing over power plane partitions or voids is not allowed.Layout guide 2.DDR3 SDRAM Layout FormulasLength Matching Formulas to SO-DIMM per Channel Configurations:Clock-10 mils Clock-to-Clock Clock+10 milsClock-100 mils Control-to-Clock Clock+100 milsClock-500 mils Command-to-Clock Clock+500 milsClock-500 mils Strobe-to-Clock Clock+1000 milsStrobe-20 mils Data-to-Strobe Strobe+20 mils