没有合适的资源?快使用搜索试试~ 我知道了~
首页Memory-SDRAM中文资料
Memory-SDRAM中文资料

包含DRAM和SRAM基础知识,以及SDRAM读取过程分析,写入过程分析,SDRAM控制器的设计,帮助大家初步了解SDRAM的架构
资源详情
资源评论
资源推荐

SDRAM 资料

DRAM 基础知识................................................................................................................................3
1.................................................................................................................................................... 3
2..................................................................................................................................................17
3..................................................................................................................................................26
4..................................................................................................................................................29
5 SDRAM 读取过程分析...........................................................................................................38
6 SDRAM 写入过程...................................................................................................................48
7..................................................................................................................................................54
SDRAM控制器的设计............................................................................................................. ..60
SDRAM 状态机..........................................................................................................................60

DRAM 基础知识
1
DRAM 和 SRAM 基础知识
RAM(RandomAccessMemory)随机存取存储器对于系统性能的影响是每个 PC 用户都非常清楚的,所以
很多朋友趁着现在的内存价格很低纷纷扩容了内存,希望借此来得到更高的性能。不过现在市场是多种内
存类型并存的,SDRAM、DDRSDRAM、RDRAM 等等,如果你使用的还是非常古老的系统,可能还需
要 EDODRAM、FPDRAM(块页)等现在不是很常见的内存。
对于很多用户或者有一定经验的高级用户来说,他可能能说出 AthlonXP 和 Pentium4 的主要不同点,能
知道 GeForce3 和 Radeon 之间的区别,但是如果真的让他说出各种内存之间的实现机理的主要差别或者解
释 CAS2 和 CAS3 之间的主要差别的话,就可能不是非常的清楚了。毕竟 CPU 和显卡之类的东西更容易
引起我们的兴趣。我个人在这方面的知识也是比较片面甚至是一知半解的,所以一直在收集这个方面的资
料。在网上有很多很好的资源,其中 Arstechnica、Aceshardware、simpletech 等网站的资料对于我系统的
了解这个方面的知识有很大的帮助。本文主要以 Arstechnica 的文章为基础编写而成,为大家比较详细的
介绍 RAM 方面的知识。
虽然 RAM 的类型非常的多,但是这些内存在实现的机理方面还是具有很多相同的地方,所以本文的将会
分为几个部分进行介绍,第一部分主要介绍 SRAM 和异步 DRAM(asynchronousDRAM),在以后的章
节中会对于实现机理更加复杂的 FP、EDO 和 SDRAM 进行介绍,当然还会包括 RDRAM 和 SGRAM 等等。
对于其中同你的观点相悖的地方,欢迎大家一起进行技术方面的探讨。
存储原理
为了便于不同层次的读者都能基本的理解本文,所以我先来介绍一下很多用户都知道的东西。 RAM 主要
的作用就是存储代码和数据供 CPU 在需要的时候调用。但是这些数据并不是像用袋子盛米那么简单,更
像是图书馆中用有格子的书架存放书籍一样,不但要放进去还要能够在需要的时候准确的调用出来,虽然
都是书但是每本书是不同的。对于 RAM 等存储器来说也是一样的,虽然存储的都是代表 0 和 1 的代码,
但是不同的组合就是不同的数据。
让我们重新回到书和书架上来,如果有一个书架上有 10 行和 10 列格子(每行和每列都有 0-9 的编号),
有 100 本书要存放在里面,那么我们使用一个行的编号+一个列的编号就能确定某一本书的位置。如果已
知这本书的编号 87,那么我们首先锁定第 8 行,然后找到第 7 列就能准确的找到这本书了。在 RAM 存储
器中也是利用了相似的原理

现在让我们回到 RAM 存储器上,对于 RAM 存储器而言数据总线是用来传入数据或者传出数据的。因为
存储器中的存储空间是如果前面提到的存放图书的书架一样通过一定的规则定义的,所以我们可以通过这
个规则来把数据存放到存储器上相应的位置,而进行这种定位的工作就要依靠地址总线来实现了。对于
CPU 来说,RAM 就象是一条长长的有很多空格的细线,每个空格都有一个唯一的地址与之相对应。如果
CPU 想要从 RAM 中调用数据,它首先需要给地址总线发送地址数据定位要存取的数据,然后等待若干个
时钟周期之后,数据总线就会把数据传输给 CPU。下面的示意图可以帮助你很好的理解这个过程。
上图中的小园点代表 RAM 中的存储空间,每一个都有一个唯一的地址线同它相连。当地址解码器接收到
地址总线送来的地址数据之后,它会根据这个数据定位 CPU 想要调用的数据所在的位置,然后数据总线
就会把其中的数据传送到 CPU。
上面所列举的例子中 CPU 在一行数据中每次知识存取一个字节的数据,但是在现实世界中是不同的,通
常 CPU 每次需要调用 32bit 或者是 64bit 的数据(这是根据不同计算机系统的数据总线的位宽所决定的)。
如果数据总线是 64bit 的话,CPU 就会在一个时间中存取 8 个字节的数据,因为每次还是存取 1 个字节的
数据,64bit 总线将不会显示出来任何的优势,women 工作的效率将会降低很多。
从“线”到“矩阵”
如果 RAM 对于 CPU 来说仅仅是一条“线”的话,还不能体现实际的运行情况。因为如果实际情况真的是这
样的话,在实际制造芯片的时候,会有很多实际的困难,特别是在需要设计大容量的 RAM 的时候。所以,
一种更好的能够降低成本的方法是让存储信息的“空格”排列为很多行--每个“空格”对应一个 bit 存储的位
置。这样,如果要存储 1024bits 的数据,那么你只要使用 32x32 的矩阵就能够达到这个目的了。很明显,
一个 32x32 的矩阵比一个 1024bit 的行设备更紧凑,实现起来也更加容易。请看下图:

知道了 RAM 的基本结构是什么样子的,我们就下面谈谈当存储字节的过程是怎样的:
上面的示意图显示的也仅仅是最简单状态下的情况,也就是当内存条上仅仅只有一个 RAM 芯片的情况。
对于 X86 处理器,它通过地址总线发出一个具有 22 位二进制数字的地址编码--其中 11 位是行地址,另
外 11 位是列地址,这是通过 RAM 地址接口进行分离的。行地址解码器(rowdecoder)将会首先确定行地
址,然后列地址解码器(columndecoder)将会确定列地址,这样就能确定唯一的存储数据的位置,然后
该数据就会通过 RAM 数据接口将数据传到数据总线。另外,需要注意的是,RAM 内部存储信息的矩阵
并不是一个正方形的,也就是行和列的数目不是相同的--行的数目比列的数目少。(后面我们在讨论
DRAM 的过程中会讲到为什么会这样)
剩余62页未读,继续阅读
















安全验证
文档复制为VIP权益,开通VIP直接复制

评论7