23-DDR3电路设计

视频链接

DDR3电路设计01_哔哩哔哩_bilibili

DDR3硬件电路设计

1、DDR3基本介绍

DDR存储器是高速硬件电路设计中不可或缺的一个重要部分,由于其高速特性,造成电路设计具有一定的挑战。其中原理图和PCB的设计都很重要,缺一不可!

//

感兴趣的话可以做一些仿真(sigrity:  时域、频域、电热仿真等)

详细内容参考B站更新的sigrity仿真内容

Sigrity-Power SI-走线阻抗和耦合性检查分析01_哔哩哔哩_bilibili

Sigrity-POWER SI 模型抽取-S参数的提取-01_哔哩哔哩_bilibili

Sigrity-SPEED2000 SRC-SI Metrics Check串扰分析01_哔哩哔哩_bilibili

POWER SI-噪声耦合分析01_哔哩哔哩_bilibili

POWER SI-3DFEM全波场S参数模型提取01_哔哩哔哩_bilibili

Power DC直流压降仿真分析01_哔哩哔哩_bilibili

Sigrity-Speed 2000 DDR Simulation 01_哔哩哔哩_bilibili

Optimize PI电容优化仿真分析01_哔哩哔哩_bilibili

//

RAM 随机存储器。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序。

按照存储信息的不同,随机存储器又分为静态随机存储器(Static RAM,SRAM)和动态随机存储器(Dynamic RAM,DRAM)。

静态随机存储器SRAM(Static RAM)不需要刷新电路即能保存它内部存储的数据。

DRAM则每隔一段时间,要刷新充电一次,否则内部的数据即会消失。

动态随机存储器SDRAM(Synchronous DRAM)即同步动态随机存取存储器。

1、同步是指Memory工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准(其总线工作在同步时序的方式下,总线时钟以CPU时钟频率为基准。)

2、动态是指存储阵列需要不断的刷新来保证数据不丢失;

3、随机是指数据不是线性依次存储,而是自由指定地址进行数据读写。

 DDR(X)就属于SDRAM。

同步SDRAM根据时钟边沿读取数据的情况分为SDR和DDR技术,DDR从发展到现在已经经历了五代,分别是:第一代DDR SDRAM,第二代DDR2 SDRAM,第三代DDR3 SDRAM,第四代,DDR4 SDRAM,第五代,DDR5 SDRAM。

DDR1

DDR2

DDR3

DDR4

DDR5

2.5V

1.8V

1.5V

1.2V

1.1V

随着技术的发展,DDR4到了DDR5,电压从1.2V将会变到1.1V,下降了8.3%,这是几代DDR总线以来下降比例最少的一次。所以对于低功耗的设计难度越来越大。这么低的电压,其抗干扰设计就会更加的难。对于电源完整性和信号完整性的设计要求就越来越严苛。

DDR3:第三代双倍数据率同步动态随机存取存储器(Double-Data-Rate Three Synchronous Dynamic Random Access Memory,一般称为DDR3 SDRAM)。

LPDDR3:Low Power Double Data Rate SDRAM,是一种低功耗DDR。

DDR3L:DDR3 Low Voltage,是一种低电压DDR。

DDR的厂家有三星、镁光、海力士、东芝、长鑫(国产)、紫光(国产)等。

2、DDR3命名规范及详解

2.1、DDR3容量计算

B代表Bank地址编号,C代表列地址编号,R代表行地址编号。

三个规格存储容量相同,差别只在于信号定义,封装也是相同的。

存储单元总数=××逻辑Bank数量

2.2、DDR3封装(78球和96球;4种尺寸大小)

封装(Packages):4/8bit芯片采用78FBGA封装,16bit芯片采用96FBGA封装。

(具体的参考datasheetP23-P26

尺寸:10.5MM  X   12MM

尺寸:10.5MM  X   9MM

尺寸:14MM  X   10MM

尺寸:14MM  X   9MM

2.3、DDR3的速率

3、DDR3与DDR2的区别:

1.突发长度(Burst Length,BL)

2.寻址时序(Timing)

3.DDR3新增的重置(Reset)功能

4.DDR3新增ZQ校准功能

5.参考电压分成两个

6.点对点连接

3.1、内存改进

1、逻辑Bank数量

2、封装(Packages)

3、降低功耗

3.2、性能优势

3.3、基本规格对比

DDR3

DDR2

电压VDD/VDDQ

1.5V/1.5V(+/-0.075)

1.8V/1.8V(+/-0.1)

I/O接口

SSTL_15

SSTL_18

数据传输速率(Mbps)

800/1066/1333/1600

400/533/667/800

容量标准

512MB-8GB

256MB-4GB

CL(CAS潜伏期)

5/6/7/8/9/10/11

3/4/5/6

AL(附加潜伏期)

0/CL-1/CL-2

0/1/2/3/4

RL(读取潜伏期)

AL+CL

AL+CL

WL(写入潜伏期)

AL+CWL(CWL=5/6/7/8)

RL-1

预取设计(bit)

8bit

4bit

逻辑Bank数量

8(512MB/1GB/4GB/8GB)

16

4(256MB/512MB)

8(1GB/2GB/4GB)

突发长度

BL4/BL8

BL4/BL8

封装

FBGA

78-ball:×4/×8

96-ball:×16

FBGA

60-ball:×4/×8

84-ball:×16

引脚标准

240Pin DIMM

240Pin DIMM

3.4、带宽速率对比

DDR3的催生是源于处理器外频增加引起的对内存带宽增长需求;

DDR3存在的最根本意义在于能提供比DDR2更高的数据传输率

带宽对比如下

内存

标准

核心

频率

I/O频率

有效传输频率

单通道

带宽

双通道

带宽

DDR2-667

PC2-5300

166MHz

333MHz

667MHz

5.3GB/s

10.6GB/s

DDR2-800

PC2-6400

200MHz

400MHz

800MHz

6.4GB/s

12.8GB/s

DDR3-800

PC3-6400

100MHz

400MHz

800MHz

6.4GB/s

12.8GB/s

DDR3-1066

PC3-8500

133MHz

533MHz

1066MHz

8.5GB/s

17.0GB/s

DDR3-1333

PC3-10600

166MHz

667MHz

1333MHz

10.6GB/s

21.3GB/s

DDR3-1600

PC3-12800

200MHz

800MHz

1600MHz

12.8GB/s

25.6GB/s

DDR38-bit预取技术,一次从存储单元预取8-bit的数据,在I/O端口处上下沿触发传输,8-bit需要4个时钟周期完成,所以DDR3I/O时钟频率是存储单元核心频率的4倍,由于是上下沿都在传输数据,所以实际有效的数据传输频率达到了核心频率的8倍。

4、DDR3基本技术原理

DDR里面主要使用了Double Data Rate和 Prefetch两项技术。

5、DDR3的各种频率

5.1、DDR的核心频率

5.2、时钟频率

5.3、数据传输频率
 

6、功能框图

7、DDR3的管脚定义(★)

DDR3的管脚可以分为电源线、时钟和复位、数据线、地址线和控制线

7.1、电源线

对于电源电压,DDR SDRAM系统要求三个电源,分别为VDDQ、VTT和VREF

管脚符号

类型

描述

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。

1、主电源VDD和VDDQ

主电源的要求是VDDQ=VDD,VDDQ是给IO buffer供电的电源,VDD是给内核供电。但是一般的使用中都是把VDDQ和VDD合成一个电源使用。

2、参考电源Vref

参考电源Vref要求跟随VDDQ,并且Vref=VDDQ/2,所以可以使用电源芯片提供,也可以采用电阻分压的方式得到。

3、用于匹配的电压VTT

VTT为匹配电阻上拉到的电源,VTT=VDDQ/2。

VTT要求电源即可以吸电流,又可以灌电流才可以。一般情况下可以使用专门为DDR设计的产生VTT的电源芯片来满足要求。而且,每个拉到VTT的电阻旁一般放一个10Nf~100nF的电容,整个VTT电路上需要有uF级大电容进行储能。

//常用TPS51200电源芯片

实战Power5-DDR---TPS51200---01_哔哩哔哩_bilibili

参考B站视频讲解//

7.2、时钟和复位

管脚符号

类型

描述

CK、CK#

Input

时钟。差分时钟输入,所有控制和地址输入信号在CK上升沿和CK#的下降沿交叉处被采样,输出数据选通(DQS、DQS#)参考与CK和CK#的交叉点。

RESET#

Input

复位,低有效,参考是VSS。

DDR3的时钟为差分走线,一般使用终端并联100欧姆的匹配方式。需要注意的是,差分线也可以使用串联匹配,使用串联匹配的好处是可以控制差分信号的上升沿缓度,对EMI可能会有一定的作用。

7.3、数据组

管脚符号

类型

描述

DQ0-DQ7

I/O

数据输入/输出,双向数据,DQ[7:0]参考VREFDQ

DQ8-DQ15

I/O

数据输入/输出,双向数据,DQ[15:8]参考VREFDQ

DM

Input

数据输入屏蔽(数据掩码)。DM是写数据的输入屏蔽信号,在写期间,当伴随输入数据的DM信号被采样为高的时候,输入数据被屏蔽,虽然DM仅作为输入脚,但是,DM负载被设计成与DQ和DQS脚负载相匹配。DM的参考是VREFCA。DM可选作为TDQS。

7.4、地址、控制、命令

管脚符号

类型

描述

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。

BA0

BA1

BA2

Input

Bank地址输入。定义ACTIVATE、READ、WRITE或PRECHARGE命令是对哪一个bank操作的。BA[2:0]定义在LOAD MODE命令期间哪个模式(MR0、MR1、MR2)被装载,BA[2:0]的参考是VREFCA。

A0-A9

A10/AP,

A11,

A12/BC#,

A13-A15

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。

ODT

Input

片上终端使能。ODT使能(高)和禁止(低)片内终端电阻。在正常使能操作时,ODT仅对下面的管脚有效:DQ[7:0],DQS、DQS#和DM。如果通过LOAD MODE命令禁止,ODT输入被忽略。ODT的参考是VREFCA。

RAS#、CAS#、WE#

Input

命令输入,这三个信号,连同CS#,定义一个命令,其参考是VREFCA。RAS#列地址选通;CAS#行地址选通;WE#:写使能。

TDQS、TDQS#

Output

终端数据选通。当TDQS使能时,DM禁止,TDQS和TDDS提供终端电阻。

DQS

DQS#

I/O

数据选通。读时是输出,边缘与读出的数据对齐。写时是输入,中心与写数据对齐。

8、DDR3硬件设计要点(★)

9、硬件实战设计 (★)

9.1、A7硬件实战

8.1.1、XC7A100T   2片DDR3硬件设计实战
8.1.2、A7  2片DDR3硬件设计实战

8.2、K7四片DDR3硬件设计实战

8.2.1、四片DDR3硬件设计实战

8.2.2、四片DDR3硬件实战

8.3、ZYNQ7020的DDR3设计实战

8.4、xilinx-S6 硬件实战

8.5、全志H3

8.6、瑞芯微  RK3288  

10、DDR3  PCB设计要点(★)

10.1、DDR3的PCB布局、布线通用设计要求

a)布局时首先要确认芯片是否支持FLY-BYE走线拓扑结构,来确定我们是采用T拓扑结构还是FLY-BYE拓扑结构。如果是T拓扑结构,上拉电阻放在T点处,如果使用FLY-BYE拓扑,则把上拉电阻放在最后一片芯片的后端,上拉电阻的走线长度要≤500Mil。

b)电源走线保证足够的通流能力:如果电源线宽度不足,当DDR3芯片所需的电流不超过电源走线的通流能力,会因驱动能力不足导致信号幅度不能达到DDR3接口规范的要求,最终导致对信号的错误处理。

c)确保回流路径的连续性:DDR3走线禁止跨分割,尽量参考地平面,也可参考DDR的IO电源,禁止参考其他电源。

d)避免在参考平面边缘走线:当DDR3信号的走线靠近参考平面的边缘时,保证走线与参考平面的边缘≥40 Mil的间距。

e)避免换层走线以减少过孔的数量:由于DDR3的工作频率很高,时钟和数据信号速率一般都会达到400MHz以上,为了避免过孔的寄生电容和电感对信号质量的影响,需要通过控制换层的次数严格控制时钟线上过孔的数量。

f)保持信号线间距:当两个不同信号线之间距离过近时,会因电磁场的耦合导致串扰的产生。为了降低这种串扰,需要在不同类型信号线之间保持大于3W间距,禁止反焊盘上走线。

10.2、DDR3电源设计要求

a) VTT电源孤岛尽可能靠近内存颗粒以及终端调节模块放置

b)终端调节模块的Sense引脚走线需要从VTT电源孤岛的中间引出

c)降低Vref上的噪声:Vref上的噪声会增加数据选通和数据信号之间的skew并且降低电压裕度。为了降低这些噪声的干扰,需要加大Vref的走线宽度并且将Vref的走线与其它走钱隔离。虽然Vref上的电流一般只有2mA左右。由于上述原因,一般需要保证其走线宽度不小于25 Mil,同时Vref与其它信号线之间保持25Mil的距离,此外Vref要避免电源噪声的影响,Vref走线时应该以地平面作为参考平面。

d)禁止将VREF、VTT作为信号的参考平面,且然VREF和VTT电压相同,但VTT的噪声比较大,建议将VREF,VTT分开为不同的网络,从不同的电源或者通过分压电路进行供电。

10.3、DDR3信号线的走线要求和对比


DDR3信号线的走线要求如下表所示:

备注:表中所给的走线约束数据为一般性要求,如果DDR控制器的手册中对走线另有要求,则按手册要求进行约束。

10.4、DDR3线的分类

  1. 数据信号组

组别

信号名

设计要求

Byte[0]

DDR3_DQ[0:7],

DDR3_DM0

DDR3_DQS_P/N0

  1. 阻抗:40&60Ω,85&100Ω
  2. 布局:ECC校验位放于链路第一片的位置(中间位置也可);数据高低位顺序根据连接情况摆放,无特定顺序要求;
  3. 布线层:每个Byte同组同层布线;最好以GND平面,且上下必须有完整的电地平面做参考;
  4. 间距:单端3W,差分5W;
  5. 等长要求:Byte内等长误差控制在±0.2mm(±5mil尤佳),Byte间建议600mil内;差分线P/N差距不超过2mil。
  6. 链路优化:选择布线层应考虑过孔stub最小。

Byte[1]

DDR3_DQ[8:15],

DDR3_DM1

DDR3_DQS_P/N1

Byte[2]

DDR3_DQ[16:23],

DDR3_DM2

DDR3_DQS_P/N2

Byte[3]

DDR3_DQ[24:31],

DDR3_DM3

DDR3_DQS_P/N3

  1. 命令/控制组及时钟

DDR3_A[0:14]

  1. 拓扑结构:Fly-by,
  2. 阻抗:40&60Ω,85&100Ω。
  3. 布局:端接VTT电阻以及时钟终端匹配阻容放置在Fly-by的末端,长度小于700mil;
  4. 间距:单端3W,差分5W;
  5. 时钟信号与控制、命令信号从DDR3控制器,到达每片DDR3 SDRAM颗粒的等长误差控制在±0.5mm(±10mil尤佳) ;

DDR3 _BA[0:2]

DDR3_ODT

DDR3 _CASn

DDR3_RASn

DDR3_WEn

DDR3_CKE

DDR3_CSn

DDR3_CK_P/N

DDR3_RESET

10.5、DDR3走线拓扑

DDR2的走线是“T”型结构,见附件。

DDR3的走线是“Fly-bye”结构,见附件。Fly-bye可以提高信号的完整性。不是所有的DDR3都走FLY-BYE!需要查看主控芯片是否支持读写平衡功能。如果不支持读写平衡功能,那么这个设计就不能使用Fly_by的拓扑结构。

详细内容参考视频讲解

  • 44
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DDR3(Double Data Rate 3)是一种内存标准,用于计算机系统中的随机存取存储器(RAM)。FPGA(Field-Programmable Gate Array)是一种可编程逻辑器件,可以根据设计者的需求进行定制和重新配置。 在设计DDR3FPGA硬件电路时,需要考虑以下几个方面: 1. DDR3接口电路设计DDR3具有复杂的接口电路要求,包括时钟、地址、数据和控制信号等。设计者需要根据DDR3规格手册提供的电路设计指导,实现正确和稳定的信号传输。 2. 时序和时钟管理:DDR3对时序和时钟要求非常严格,需要精确控制数据的传输速率和延迟。设计者需要使用FPGA内部的时钟管理模块来生成和管理时钟信号,并确保DDR3接口与FPGA内部逻辑的时序兼容。 3. 信号完整性和噪声抑制:DDR3接口对信号完整性要求高,需要采取一系列措施来抑制噪声、提高信号质量,如使用终端电阻、布线规划、屏蔽和电源滤波等。 4. 控制器设计:DDR3FPGA之间需要一个控制器来管理数据的读写操作。设计者需要实现控制器的状态机、数据缓存和错误检测纠正等功能,并与DDR3接口电路进行适配。 5. 性能优化和调试:在设计完成后,需要对DDR3FPGA硬件电路进行性能优化和调试。通过对时序和延迟进行调整,可以提高数据传输速率和稳定性。 需要注意的是,DDR3FPGA硬件电路设计是一项复杂的任务,需要具备一定的电路设计FPGA开发经验。在设计过程中,可以借助一些EDA(Electronic Design Automation)工具和仿真器来辅助完成设计和验证工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值