DDR SDRAM工作机制简介.docx

上传人:小飞机 文档编号:3155533 上传时间:2023-03-11 格式:DOCX 页数:9 大小:42.01KB
返回 下载 相关 举报
DDR SDRAM工作机制简介.docx_第1页
第1页 / 共9页
DDR SDRAM工作机制简介.docx_第2页
第2页 / 共9页
DDR SDRAM工作机制简介.docx_第3页
第3页 / 共9页
DDR SDRAM工作机制简介.docx_第4页
第4页 / 共9页
DDR SDRAM工作机制简介.docx_第5页
第5页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《DDR SDRAM工作机制简介.docx》由会员分享,可在线阅读,更多相关《DDR SDRAM工作机制简介.docx(9页珍藏版)》请在三一办公上搜索。

1、DDR SDRAM工作机制简介DDR SDRAM工作机制简介 DDR SDRAM 简称 DDR SDRAM : Double Data Rate SDRAM,即双倍速率同步动态随机存储器。 双倍速率指能够在时钟的上升沿和下降沿各传输一次数据. DDR SDRAM是在SDR SDRAM内存基础上发展而来的,SDR SDRAM在一个时钟周期内只传输一次数据,它在时钟上升沿进行数据传输,而DDRSDRAM在时钟的上升沿和下降沿都可传输数据,因此传输数据的等效频率是工作频率的两倍. DDR SDRAM后续简称DDR,为描述方便 DDR SDRAM在FPGA系统中的应用 在该系统中,由FPGA完成各模块

2、之间的接口控制。FPGA接收从前端传送过来的高速数字信号,并将其存储在DDR 中;DSP通过FPGA读取DDR中的数据DSP信号处理后再送回到DDR ,最后由FPGA负责将数据输出。 FPGA: 现场可编程门阵列,相当于可编程半导体器件。 DDR SDRAM在FPGA系统的结构图 Input:数字视频流标准IIS数字音频流 Processor:Input送给FPGA+DDR子系统,实现音频视频分别缓存延迟,延迟后的数据通过系统内部的视频合成器和音频合成器,输出合成后的视频流和音频流 Output:合成后的数字视频流标准IIS数字音频流 图2 结构图 DDR SDRAM缓存子系统介绍如下: 1P

3、rocessor: FPGA+DDR子系统: 加工者;制造者 电脑】信息处理器;处理程序 Processor子系统分为两个主要模块:音视频缓存控制模块(A/V FIFO Logic Module)和接口控制模块(Ctrl Logic Module) 图3 2音视频缓存控制模块(A/V FIFO 内部逻辑) n 转换总线宽度 n 音频、视频数据分别送给仲裁逻辑 n 仲裁逻辑内部包含一个多跳转的状态机,负责视频和音频以及 RAM的动态刷新、中断的排队和数据读写操作,同时内含地址管理模块,实现音视频数据的分区存储和FIFO功能。First Input First Output n 延迟后的数据由DD

4、R控制器模块从DDR SDRAM中取出,同样经过仲裁逻辑分配给视频通道或音频通道,经过后端视频和音频合成器将数据恢复成为输入时的格式,最后送出FPGA。 图4 3缓存控制模块-关键逻辑和算法 -A/V 刷新中断排队和互斥管理逻辑 有效的管理逻辑-防止任何数据或刷新操作丢失 图5 音视频数据操作状态转移图 4. 缓存控制模块-关键逻辑和算法-地址管理和FIFO 溢出判别 n 因为音视频的地址是分开管理的,所以也可实现音视频的同步调整 n 视频和音频的数据率是不同的,所占用的空间也不同,内存空间分为3个区:视频存储区、音频存储区和扩展功能保留区,分区大小和延迟时间设置有关,可以根据用户的控制实时改

5、变,同时提供错误检测逻辑,如果用户的设置超过系统配置限制,系统自动设置为相近的有效值。(见图6所示) 图6 FIFO地址分区管理 5. 接口控制模块内部子模块逻辑结构 n 当前级FIFO控制单元有视频、音频或刷新操作时,会发出相应的中断请求:wr_int, rd_int, ref_int,在DDR控制模块看来,这几个中断应该同优先级并且互斥. n 响应数据写中断后,从总线上取得数据和地址,经过内部状态机的判断后,数据和地址被送入各自通道,复用后以DDR 写时序写入DDR,相应的命令和控制线信号也一同发出,完成写操作后,返回给前级FIFO 控制单元一个ack 信号,等待下一个中断操作. n 读数

6、据和刷新操作原理大致相同。(见图7所示) 图7 DDR控制器模块逻辑结构 DDR SDRAM的系统控制流程 1. 系统上电 后,DDR处于空闲状态(Idle). 2. 初始化DDR 3. 当处于空闲状态时,控制器会每隔一个 刷新周期,对DDR进行自动刷新. 4. 当处于空闲状态时,用户还可以重置 模式寄存器. 5.读/写操作顺序: 先激活(Active)将要读(写)的行,对该行进行连续的突发读/写操作,用户发送突发终止命令,控制器自动产生预充电命令来关闭当前行。(见图8所示) 图8 控制器状态转移图 n 在DDR 能够被存取数据之前,需要先对其初始化。 n 初始化后,DDR 便进入正常的工作状

7、态,可对存储器进行读写和刷新。 n 预充电命令功能: 当要存取一个不同行的地址单元时,需要通过一个预充电操作关闭当前行。 n 自动刷新命令功能: 用来周期性地刷新DDR SDRAM,以保持其内部的数据不丢失。 DDR SDRAM的初始化过程 n DDR的初始化过程包含设置DDR的普通模式寄存器MRS (Mode Register Set)和扩展模式寄存器EMRS (Extended Mode Registers Set),用来制定DDR 的工作方式。 n MRS ( Mode Register Set) 模式寄存器设定 CAS latencyCAS潜伏期 , burst length突发长度,

8、 burst type突发类型 , mode (test Mode or normal mode), DLL reset (内部延迟锁定回路) (enable ,disable ), WR (write recovery) and various vendor specific options to make DDR2 SDRAM useful for various applications. n EMRS(1) (Extended Mode Register Set) ) 扩展模式寄存器设定 DLL, additive latency, driver impedance, ODT (On

9、Die Termination) and OCD (off chip driver impedance adjustment)输出驱动能力设置, DQS and output buffers disable, n EMRS(2) controls self-refresh related features. n EMRS(3) are reserved for future use DDR SDRAM几个名词介绍 n 突发长度:对DDR 的读和写操作是基于突发的:从一个选定的地址单元开始,连续存取设置好长度的地址单元, 该长度就是所谓的突发长度。 DDR 提供的可编程的读或写的突发长度为2,4

10、或8 。 n 突发类型: ,Latency(延迟)是指讯号从某一点传输到另一点所需的时间,代表延迟时间单位。把内存想成一个数据数组,内有CAS与RAS。写入或写出数据时,内存控制芯片先传送列的地址,然后CAS(行地址控制器)讯号才会被启动,而传递的数据则需等待CAS被启动之后才能进行传输。因此由CAS讯号被启动后,到数据被传输到总线之间的延迟时间,即称为CL值。即从DDR SDRAM 内核读出数据到数据出现在数据总线上所需要的时间 。CL值的大小与DDR的速度和存储器的时钟频率有关。 n DLL: 延迟锁相环 。 EMRS(1)设定OCD 的执行方式. n ODT :是一个控制引脚, 通过一个

11、命令集 和片上校准引擎来独立的自动校验数据输出驱动器的导通电阻与ODT的终结电阻值(termination resistance ),应用于DQ/DQS/DM信号, 改善信号品质. EMRS(1)设定输出驱动电阻的开关. DDR SDRAM的初始化过程(实例512Mb DDR2 NT5TU64M8BE) n n n n n n Apply power CKE low one clock ODT keep at a low state. Apply NOP and take CKE high. Precharge-All command:All banks must be in a precha

12、rged state Issue EMRS command.(to enable DLL and others) n Issue MRS command (for DLL reset.) n Issue Precharge-All command. n Auto-Refresh commands. n Issue a MRS command to initialize device operation. n execute OCD (Off Chip Driver impedance adjustment) Calibration 见图9所示 图9 DDR SDRAM 支持的常用命令 DDR

13、SDRAM 命令字主要由片选信号CS, 行地址选通信号RAS, 列地址选通信号CAS 以及读写控制信号WEB 三个信号控制并配合一定的地址、数据输入, 这些命令字信息和地址信息都是在时钟的上升沿进行锁存的。DDR SDRAM 基本控制操作包括初始配置, 激活要操作的地址, 充电、刷新以及读写操作。如表1所示 H:表示高电平 L:表示低电平 X:表示高低电平均无影响 DDR SDRAM的工作状态 对存储器进行读写和刷新 n DDR 数据信号在一对差分时钟(CLK与CLKn)的两个边沿控制下工作。命令(地址和控制信号)在时钟(CLK)的上升沿被触发。 n 随着数据DQ 一起传送的还包括一个双向的数

14、据选通信号DQS,接收方通过该信号来接收数据。DQS 作为选通信号在读周期中由DDR 产生,在写周期中由存储器的控制器产生 ( output with read data, input with write data )。该选通信号与数据相关,其作用类似于一个独立的时钟,并满足相应的时序要求。 n 由于DDR的数据接口在时钟的两个沿的触发下工作,其数据宽度(n)是存储器数据宽度(2n)的一半。为实现数据的大容量存储,设计时采用的是一个控制核同时对两片DDR进行操作,外接数据线的宽度由单片DDR 的16 位扩展到32位。 n 在执行读命令之前,先要激活将要读的行,某一行被激活之后将一直处于激活状

15、态,用户便可进行连续的突发读操作,直到用户发送突发终止命令,此时控制器将自动产生一个预充电命令来关闭当前行, 提高了系统的速率。 n 数据的存取以一个激活命令(ACTlVE command)开始,接着便是读或写命令。(地址选择 : ) 与激活命令一起被触发的地址位用来选择将要存取的区(bank)和页(或行);与读或写命令一起触发的地址位用来选择突发存取的起始列单元 n 当接收到中断命令时,若此时DDR 正在进行读(写)操作,控制器将会等到当前的读(写) 操作完成之后再发送刷新命令。 在刷新过程中, 用户如果有读(写)请求,控制器将在当前刷新周期完成之后再响应用户的请求。 再同步 n 读周期中,

16、从DDR 来的数据信号首先通过延迟后的DQS锁存到DDR触发器中。为了在FPGA内部能够使用该数据,还要将其同步到FPGA内部的时钟域上,这个过程称为再同步(resynchronization)。对于前一级DQS延迟后的信号锁存的数据再通过clk-90同步之后才送到内部数据总线上。 n 在写周期中,DQS与DQ必须是中心对齐的(centerahgn)。我们用clk_90时钟触发的DDR触发器产生DQS信号,因此,为了满足时序要求,从内部来的数据通过clk_90时钟锁存后再由clk触发的DDR触发器将其输出,从而保证DQS与DQ是中心对齐的。 n 双向的数据选通信号DQS:在读周期中由DDR S

17、DRAM来产生,与数据边沿对齐;在写周期中由存储器控制器来产生,与数据中心对齐。存储器输入的数据在DQS的两个沿都触发输出的数据也是以DQS的两个沿作为参考,同时还要以时钟CLK的两个沿作为参考。 n DQS相位延迟电路:在读周期中,DDR SDRAM输出的DQ和DQS信号是边沿对齐的。为了使用DQS作为选通信号来捕获DQ,DQS信号需要在FPGA内部相对于DQ信号作90的相位延迟。但是这个延迟不能使用锁相环(PLL)来完成,因为DQS信号不具有时钟的特性。因此,需要在DQS和读数据时钟之间加一个延迟链(delay chain) (见图10所示) 图10 DDR SDRAM的时序周期 n DD

18、R 通常会有4个或是5个周期。通常设定为2-3 2-7,即CAS-tRCD-tRP-tRAS。 n Ro RAStoCAS Delay:内存行地址传输到列地址的延迟时间wactive Delay,内存行地址选通延迟 Rowprecharge Delay,内存行地址选通脉冲预充电时间。 n 内存的延迟直接影响内存的周期 ,但是内存的周期是受到内存的基本频率所影响 。例如64BIT的总线,每秒3200MB的传输速率。变换频率的方法就是把数据从bytes转变成bits,然后把他分流,并且我们得到实际的频率,基本的频率是实际可以大到频率的一半。如: n 3200 MB/s x 8 bits = 256

19、00 Mb/s 25600 Mb/s / 64-bits = 400 MHz 400 MHz / 2 = 200 MHz base clock speed n 列的大小通常是1KB或是2KB,栏的大小则取决于装置的带宽和触发延迟。 n 1k page size for x 4 & x 8, 2k page size for x16 DDR SDRAM的读写操作 1.要激活所要操作的Row地址; 2. 通过Column 地址对这个Row地址里的数据进行操作。 3. 同一个存储单元 库里只能有一 个Row 处于激活状态, 所以在对另一个Row 进行操作时应首先关闭原先的Row 关闭。 (这个动作是由充电(pre-charge) 命令完成的) 读操作:DQS信号的边沿在时序上与DQ的信号边沿处对齐 写操作 :DQS信号的边沿在时序上与DQ信号的中心处对齐 (见图11所示) 图11 DDR总线读写操作时序 tDQSS:DQS 相对于写入命令的延迟时间 CL:从CAS 发出到DQS 生成的间隔 DQS:数据选通信号 CAS:指的是Column Address Strobe NT5TU32M16BG-25D 32Mx16

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号