DDR(二)
DDR与SDRAM的最大区别:内部L-Bank的规格不同。
SDRAM中的L-Bank存储单元的容量与芯片位宽相同,
DDRAM中的存储单元的容量是芯片位宽的一倍。
所以一次的地址访问,可以进行2-Prefetch。内部的L-Bank一次传输2Nbit的数据,分为Nbit的数据传给复用器,
然后在DQS信号的控制下,每次分Nbit进行传输。
差分时钟,CK/CK#,其中的CK#并不能理解为第二个触发时钟,它起到的作用是校准CK的上下沿。
(在CK上升沿快,下降沿慢的情况下,CK#则是上升沿慢,下降沿快,两者交点偏差减小)
命令控制发生在CLK与CLK#的交叉点。
数据的采样与传输,完全依靠DQS来进行同步。
在读取操作中,DQS与数据信号同时产生,DDR中的CL也表示从CAS发出到DQS生成的间隔。DQS与DQ之间的时间间隔表示为tAC,
是一个DDR中的时间参数,由数据预取所带来。
在数据写入时,以DQS高低电平的中部作为数据周期分割点,而不是上下沿,但数据的接收触发仍为DQS的上下沿。
在DDR中,写入延时已经不是0,这个时间被叫做DQS相对于写入命令的延时时间(tDQSS,WRITE Command to
the first corresponding rising edge of DQS)
Burst length在DDR中基本只有2,4,8三种。在DDR2之后只有4,8。
在DDR中,不能再使用DQM信号来屏蔽输出数据。写入时,仍然有效。
DDR中的DQS信号采样单边信号,在DDR2之后,采样差分信号。
DDR中有两个时钟,一个是外部的总线周期,一个是内部的工作时钟。DLL(Delayed Locked Loop)便用来平衡两个时钟,
使其同步。不同于PLL,DLL主要是不断的生成内部时钟与外部时钟的延迟量,来不断校准两个时钟。
.........................................................................................................................................................
在DDR2中,实现了4-bit的Prefetch,但是由于内部时钟频率变为外部时钟频率的一般,
所以DDR与DDR2在外部时钟频率一样的情况下,数据的传输效率是一样的。
OCD(Off-Chip Driver):调整I/O接口端的电压,来补偿上拉/下拉电阻值。调整DQS与DQ之间的同步,是他们的上升沿/下降沿对齐。
ODT(On-Die Termination):将之前外部的终结电阻移到片内,吸收电路中的信号,不让其在电路上形成反射。
DDR(二)的更多相关文章
- RK30SDK开发板驱动分析(二):DDR频率配置
在内核配置界界面,我们可以很容易的配置DDR的频率,300M OR 600M, so easy! 那么它是如何起作用的呢? 回想 RK30SDK开发板驱动分析(一) 末尾提到MACHINE_START ...
- zedboard如何从PL端控制DDR读写(二)——AXI总线
虽然Xilinx已经将和AXI时序有关的细节都封装起来,给出了官方IP和向导生成自定义IP,用户只需要关注自己的逻辑实现,但是还是有必要简单了解一下AXI的时序,毕竟咱是做硬件设计的. AXI(Ad ...
- DDR的前世与今生(一)
作者:一博科技 DDR SDRAM全称为Double Data Rate SDRAM,中文名为"双倍数据率SDRAM".DDR是在原有的SDRAM的基础上改进而来,严格的说DDR应 ...
- DDR控制
先看下micron公司对DDR3命名的规则: 在设置xilinx ISE中的DDR时 在选择芯片时,不清楚该怎么选择. 请教汤工,给出的答案是Speed等级高的可以兼容等级低的芯片,个在实验之中用的是 ...
- SDRAM,DRAM,SRAM,DDR的概念
一:SDRAM SDRAM(Synchronous Dynamic Random Access Memory),同步动态随机存储器,同步是指 Memory工作需要同步时钟,内部的命令的发送与数据的传输 ...
- RAM,SRAM,DRAM,SDRAM,DDR RAM,ROM,PROM,EPROM,EEPROM,NAND FLASH,NOR FLASH的区别
RAM:由字面意思就可以理解,SDRAM SRAM DRAM(下面蓝色字体的这几种)都可以统称RAM,random access memory(随机存取存储器)的缩写,下面是51hei.com为大家整 ...
- zedboard如何从PL端控制DDR读写(五)
有了前面的一堆铺垫.现在终于开始正式准备读写DDR了,开发环境:VIVADO2014.2 + SDK. 一.首先要想在PL端通过AXI去控制DDR,我们必须要有一个AXI master,由于是测试,就 ...
- DRAM 内存介绍(二)
参考资料:http://www.anandtech.com/show/3851/everything-you-always-wanted-to-know-about-sdram-memory-but- ...
- PCB优化设计(二) 转载
PCB优化设计(二) 2011-04-25 11:41:05| 分类: PCB设计 目 前SMT技术已经非常成熟,并在电子产品上广泛应用,因此,电子产品设计师有必要了解SMT技术的常识和可制造性 ...
随机推荐
- Bundle文件的创建和使用(二)
1.概念: An NSBundle object represents a location in the file system that groups code and resources tha ...
- 探讨mvc下linq多表查询使用viewModel的问题
最近在开发mvc3的时候发现了一个问题,就是如何在view页面显示多表查询的数据,最简单的办法就是使用viewmodel了,以下本人使用viewmodel来实现多表查询的3中方法, 先贴代码再说: 1 ...
- Magento PHP Extension "curl" must be loaded解决方法
我记得我第一次在xampp装magento的时候,进入后台时提示PHP Extension "curl" must be loaded 在网页上查了下原因和解决方法,发现是mage ...
- 【C++】利用指针实现通过函数改变多个参数的值
写惯了python,对于C++的语法越来越生疏,不同于python中函数可以return多个变量,C++的函数要想返回多个参数可以利用指针实现. 因为在函数内部的变量都是局部变量,所以当参数传入函数中 ...
- visual studio2013 添加 dll库
在visual studio2013中添加C#的dll库.记录如下: 在solution explorer处右键,选择reference--> add References 选择Browser. ...
- 微信支付开发(3) JS API支付
由于微信支付接口更新,本文档已过期,请查看新版微信支付教程.地址 http://www.cnblogs.com/txw1958/category/624506.html 本文介绍如何使用JS API支 ...
- iptables调试方法
iptables调试时,使用到raw表.ipt_LOG内核模块.日志记录在kern.log中. 具体的步骤如下: 1.准备ipt_LOG内核模块 modprobe ipt_LOG 2.使用raw表,加 ...
- java中 set,list,array(集合与数组)相互转换
public static Object[] List2Array(List<Object> oList) { Object[] oArray = oList.toArray(new ...
- mysql 恢复
一.备份的目的 做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 二.备份需要考虑的问题 可以容忍丢失多长时间的数据:恢复数据要在多长时间内 ...
- Swift vs. Objective-C:未来看好 Swift 的十个理由
Swift vs. Objective-C:未来看好 Swift 的十个理由 是时候使用易入手又全面的Swif语言为iOS和mac OS X做应用开发了. 虽然编程语言不会那么容易消逝,但坚持衰落范例 ...