没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
SDRAM 的原理和时序
一、 SDRAM 内存模组与基本结构
我们平时看到的 SDRAM 都是以模组形式出现,为什么要做成这种形式呢?这首先要接触到两
个概念:物理 Bank 与芯片位宽。
1、 物理 Bank
传统内存系统为了保证 CPU 的正常工作,必须一次传输完 CPU 在一个传输周期内所需要的数
据。而 CPU 在一
个传输周期能接受的数 据容量就是 CPU 数据总线的位宽,单位是 bit
(位)。当时控制内存与 CPU 之间数据交换的北桥芯片也因此将内存总线的数据位宽 等同于
CPU 数据总线的位宽,而这个位宽就称之为物理 Bank(Physical Bank,下文简称 P-Bank)的
位宽。所以,那时的内存必须要组织成 P-Bank 来与 CPU 打交道。资格稍老的玩家应该还记 得
Pentium 刚上市时,需要两条 72pin 的 SIMM 才能启动,因为一条 72pin -SIMM 只能提供 32bit
的位宽,不能满足 Pentium 的 64bit 数据总线的需要。直到 168pin-SDRAM DIMM 上市后,才
可以使用一条内存开机。
不过要强调一点,P-Bank 是 SDRAM 及以前传统内存家族的特有概念,RDRAM
中将以通道(Channel)取代,而对 于像 Intel E7500 那样的并发式多通道 DDR 系
统,传统的 P-Bank 概念也不适用。
2、 芯片位宽
上文已经讲到 SDRAM 内存系统必须要组成一个 P-Bank 的位宽,才能使 CPU 正常工作,那么
这个 P-Bank 位宽怎么得到呢 ?这就涉及到了内存芯片的结构。
每个内存芯片也有自己的位宽,即每个传输周期能提供的数据量。理论上,完全可以做出一个
位宽为 64bit 的芯片来满足 P-Ban k 的需要,但这对技术的要求很高,在成本和实用性方面也
都处于劣势。所以芯片的位宽一般都较小。台式机市场所用的 SDRAM 芯片 位宽最高也就是
16bit,常见的则是 8bit。这样,为了组成 P-Bank 所需的位宽,就需要多颗芯片并联工作。对
于 16bi t 芯片,需要 4 颗(4×16bit=64bit)。对于 8bit 芯片,则就需要 8 颗了。
以上就是芯片位宽、芯片数量与 P-Bank 的关系。P-Bank 其实就是一组内存芯片的集合,这个
集合的容量不限,但这个集合的 总位宽必须与 CPU 数据位宽相符。随着计算机应用的发展,
一个系统只有一个 P-Bank 已经不能满足容量的需要。所以,芯片组开 始可以支持多个 P-
Bank,一次选择一个 P-Bank 工作,这就有了芯片组支持多少(物理)Bank 的说法。而在 Intel
的 定义中,则称 P-Bank 为行(Row),比如 845G 芯片组支持 4 个行,也就是说它支持 4 个
P-Bank。另外,在一些文档中 ,也把 P-Bank 称为 Rank(列)。
回到开头的话题,DIMM 是 SDRAM 集合形式的最终体现,每个 DIMM 至少包含一个 P-Bank
的芯片集合。在目前的 DIMM 标准中,每个模组最多可以包含两个 P-Bank 的内存芯片集合,
虽然理论上完全可以在一个 DIMM 上支持多个 P-Bank,比如 SDRAM DIMM 就有 4 个芯片选
择信号,理论上可以控制 4 个 P-Bank 的芯片集合。只是由于某种原因而没有这么去做。比如
设计难度、 制造成本、芯片组的配合等。至于 DIMM 的面数与 P-Bank 数量的关系,在 2001
年 2 月的专题中已经明确了,面数≠P-Ba nk 数,只有在知道芯片位宽的情况下,才能确定 P-
Bank 的数量,大度 256MB 内存就是明显一例,而这种情况在 Regist ered 模组中非常普遍。有
关内存模组的设计,将在后面的相关章节中继续探讨。
二、 SDRAM 内存芯片的内部结构
1、逻辑 Bank 与芯片位宽
讲完 SDRAM 的外在形式,就该深入了解 SDRAM 的内部结构了。这里主要的概念就是逻辑
Bank。简单地说,SDRAM 的内部 是一个存储阵列。因为如果是管道式存储(就如排队买
票),就很难做到随机访问了。
阵列就如同表格一样,将数据“填”进去,你可以它想象成一张表格。和表格的检索原理一
样,先指定一个行(Row),再指定一个列 (Column),
我们就可以准确地找到所需要的单
元格,这就是内存芯片寻址的基本原理。对于内存,这个单元格可称为存储单元, 那么这个表
格(存储阵列)叫什么呢?它就是逻辑 Bank(Logical Bank,下文简称 L-Bank)。
由于技术、成本等原因,不可能只做一个全容量的 L-Bank,而且最重要的是,由于 SDRAM
的工作原理限制,单一的 L-Ban k 将会造成非常严重的寻址冲突,大幅降低内存效率(在后文
中将详细讲述)。所以人们在 SDRAM 内部分割成多个 L-Bank,较 早以前是两个,目前基本
都是 4 个,这也是 SDRAM 规范中的最高 L-Bank 数量。到了 RDRAM 则最多达到了 32 个,在
最新 DDR-Ⅱ的标准中,L-Bank 的数量也提高到了 8 个。
这样,在进行寻址时就要先确定是哪个 L-Bank,然后再在这个选定的 L-Bank 中选择相应的行
与列进行寻址。可见对内存的访 问,一次只能是一个 L-Bank 工作,而每次与北桥交换的数据
就是 L-Bank 存储阵列中一个“存储单元”的容量。在某些厂商的 表述中,将 L-Bank 中的存
储单元称为 Word(此处代表位的集合而不是字节的集合)。
从前文可知,SDRAM 内存芯片一次传输率的数据量就是芯片位宽,那么这个存储单元的容量
就是芯片的位宽(也是 L-Bank 的位 宽),但要注意,这种关系也仅对 SDRAM 有效,原因将
在下文中说明。
2、内存芯片的容量
现在我们应该清楚内存芯片的基本组织结构了。那么内存的容量怎么计算呢?显然,内存芯片
的容量就是所有 L-Bank 中的存储单元 的容量总合。计算有多少个存储单元和计算表格中的单
元数量的方法一样:
存储单元数量=行数×列数(得到一个 L-Bank 的存储单元数量)×L-Bank 的数量
在很多内存产品介绍文档中,都会用 M×W 的方式来表示芯片的容量(或者说是芯片的规格/
组织结构)。M 是该芯片中存储单元的总数 ,单位是兆(英文简写 M,精确值是 1048576,
而不是 1000000),W 代表每个存储单元的容量,也就是 SDRAM 芯片的 位宽(Width),单
位是 bit。计算出来的芯片容量也是以 bit 为单位,但用户可以采用除以 8 的方法换算为字节
(Byte) 。比如 8M×8,这是一个 8bit 位宽芯片,有 8M 个存储单元,总容量是 64Mbit
(8MB)。
不过,M×W 是最简单的表示方法。下图则是某公司对自己内存芯片的容量表示方法,这可以
说是最正规的形式之一。
1个存储单元可能是8bit的,也可能是16bit,4bit等等.
存储单元的容量叫位宽,比如说16bit
剩余14页未读,继续阅读
资源评论
- passerbyyuan2016-04-10文档资料很好,满分
kilen1
- 粉丝: 2
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功