内存

内存分为RAM和ROM:
RAM, 是断电就会丢失数据,又分为SRAM和DRAM。 SRAM访问速度快,主要是作为cpu的内存,dram主要是作为硬盘,隔断时间需要自刷新一次,以保存电荷的状态。

 

1. 物理bank(Physical Ban, 简称P-Bank)

传统内存系统为例保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。而CPU在一个传输周期内能接受的数据容量就是CPU数据总线的宽度,单位是bit.

SDRAM: synchronous dynamic random access memory, 同步动态随机存储器。

同步是指其时钟频率与CPU前端总线的系统时钟频率相同,并且内部的命令的发送与数据的传输数都以它为基准。

动态是指存储阵列需要不断的刷新来保证书据不丢失。

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

 

SIMM: single in-line memory module, 单列内存模组。 内存模组就是我们常说的内存条,所谓单列是指模组电路板与主板插槽的接口只有一列引脚(虽然两侧都有金手指)

 

DIMM:double in-line memory module, 双列内存模组。所谓双列是指模组电路板与主板插槽的接口有两列引脚,模组电路板两侧的金手指对应一列引脚。

 

芯片位宽

sdram内存系统必须要要组成一个P-Bank的位宽,才能是CPU正常工作,那么这个P-Bank位宽是怎么得到的呢?这里涉及岛略内存芯片的结构。

每个内存芯片都有自己的位宽,理论上哇怒气那可以作出一个位宽为64Bit的芯片来满足P-Bank的需求,但是这对技术的要求太高,在成本和实用性方面都处于劣势。所以芯片的位宽一般都比较小,台式机所用使用的SDRAM芯片位宽最高也就是16bit, 常见的是8bit. 所以为例组成P-Bank,需要多个芯片并联工作。 对于16bit的内存芯片,需要4颗才能组成64bit的P-Bank。8bit的芯片,则需要8颗。

P-Bank其实就是一组内存芯片的集合。随着应用的不断发展,一个P-Bank已经不能满足容量的需求,芯片组开始支持多个P-Bank,一次选择一个P-Bank工作。这就有啦芯片组支持多少Bank的说法。Intel的定义中,称P-Bank为行(Row), 比如85G芯片组支持4个行,就是指它支持4个P-Bank, 另外一些文档中也把P-Bank称为Rank

DIMM是SDRAM集合形式的最终体现,每个DIMM至少包含一个P-Bank的芯片集合。在目前的DIMM标准中,每个模组最多可以包含两个P-Bank的内存芯片集合,虽然理论上一个DIMM可以支持多个P-Bank,但是受限于成本和工艺等原因,并没有这么去做。

 

SDRAM内存芯片的内部结构

1. 逻辑bank与芯片位宽

上面说的是SDRAM的外在形式,现在是了解SDRAM的内部结构。主要的概念是逻辑Bank, logic Bank, L-Bank

简单来说,SDRAM的内部是一个存储阵列,如果不是,而是管道式存储,就如排队买票,很难做到随机访问。

阵列就像表格,和表格的检索原理一样,先制定一个行row,然后指定一个列column,我们就可以准确的找到所需要的单元格,这就是内存芯片寻址的基本原理。对于内存,单个单元格称为存储单元,那么这个表格(存储阵列)叫什么呢?它就是逻辑Bank, L-Bank

能不能做一个全容量的L-Bank呢,把所有的存储单元放在一个L-Bank里面,答案是不行。

由于技术,成本等原因,最重要的是:SDRAM的工作原理限制,单一的L-Bank将会造成非常严重的寻址冲突,大幅度降低内存效率。

所以人们在SDRAM内部分割称多个L-Bank,以前是两个,现在基本是4个,这也是SDRAM规范中最高的L-Bank数量,在最新的DDR2标准中,L-Bank的数量提高到啦8个。

这样在寻址的时候第一步就要先确定是哪个L-Bank,然后在选择的L-Bank中选择对应的行和列。可见对内存的方位,一次只能是一个L-Bank工作,而每次与北桥交换的数据就是L-Bank存储阵列中的一个“存储单元”的容量。有一些厂商将L-Bank中的存储单元称为Word

 

2. 内存芯片的容量

内存芯片的容量就是所有L-Bank中的存储单元的容量总和。

总容量= 行数×列数(得到一个L-Bank的存储单元数量)×L-Bank的数量。

很多产品文档中都用M×W的方式来表示芯片的容量。

M是芯片中存储单元的总数,单位是M, 精确指是1048576,而不是1000000.

W代表每个存储单元的容量,也就是SDRAM的芯片位宽,单位是Bit。

下面是3种规格的容量,但是容量都是128Mbit.

2,097,152-WORDS*4Banks×16Bits    -- 1 WORD表示两个Bytes

4,194,304-WORDS*4Banks×8Bits

8,388,608-WORDS*4Banks×4Bits

为什么会有多种不同位宽的设计呢?是为了满足不同领域的需要。 P-Bank的位宽是固定的,当芯片位宽确定下来后,一个P-Bank中芯片的个数也就是自然确定略,P-Bank对芯片集合的位宽有要求,但是对芯片集合的容量则没有任何限制。高位宽的芯片可以让DIMM的设计简单那一些,但在芯片容量相同时,这种DIMM的容量就肯定比不上采用低位宽芯片的模组,因为后者在一个P-Bank中可以容纳更多的芯片。

比如上面提到的容量128Mbit,合计16MB.如果DIMM采用双P-Bank+16bit芯片设计,那么只能容纳8颗芯片。但是同样的使用4bit位宽芯片设计,可容纳32颗芯片,总计512MB, DIMM前后容量相差4倍,可见芯片位宽对DIMM设计的重要性。

8Bit 位宽芯片一般用于桌面台式机。

16bit位宽一般用于更大位宽的场合,比如显卡。

4bit位宽适用于大容量内存应用领域。

posted @ 2016-11-11 15:42  Magnum Programm Life  阅读(646)  评论(0编辑  收藏  举报