| | | | | | | [文章信息] | | | 作者: | 异灵 | | 时间: | 2004-09-24 | | 出处: | 天极网 | | 责任编辑: | 天蝎 | |
| [文章导读] | | | 当初腹背受敌的DDR SDRAM经过3年的发展终于摆脱了来自各方面的狙击,最终走上了阳关大道。 | |
| |
|
| | | |
|
|
|
|
|
SRAM,静态(Static)RAM不存在刷新的问题,一个SRAM基本单元包括4个晶体管和2个电阻。它不是通过利用电容充放电的特性来存储数据,而是利用设置晶体管的状态来决定逻辑状态—同CPU中的逻辑状态一样。读取操作对于SRAM不是破坏性的,所以SRAM不存在刷新的问题。
2、SDRAM的结构和功能
内存最基本的单位是内存“细胞”—也就是我们前面展示给大家DRAM基本单元示意图所示的部分,对这个部分通称为DRAM基本单元。每个DRAM基本单元代表一个“位”—Bit(也就是一个比特),并且有一个由列地址和行地址定义的唯一地址。8个比特组成一个字节,它可代表256种组合(即2的八次幂),字节是内存中最小的可寻址单元。
很多DRAM基本单元连接到同一个列线(Row line)和同一个行线(Column line),组成了一个矩阵结构,这个矩阵结构就是一个Bank。大部分的SDRAM芯片由4个Bank组成,而SDRAM DIMM(Dual Inline Memory Module双列直插式)可能由8或者16个芯片组成。SDRAM DIMM有14条地址线和64bit数据线。
 每一个内存bank都有一个传感放大器(sense ampplifier),用来放大从基本单元读出(或者写入)内容时电荷。传感放大器根据从芯片组发送来的行地址读出相应的数据,这个读出过程需要一定的时间这就是RAS到CAS的延迟,简称TRCD。不同质量的SDRAM的TRCD需要2或者3个周期。现在已经有了正确的行地址,不过还不知道确切的到那个基本单元去获得信息。CAS延迟时间就是内存用于取得正确的列地址所需要的时间。
注:Latency(延迟)是一种等待的时间,这与内存芯片本身有关。那个C或CAS指的是Column Address Strobe(行地址控制器)。我们不妨将内存想成储存数据的数组、或是表格。为了要确定每个数据的位置,我们会将这些位置以行与列的方式来编号。如此一来,正如所想见的,除了CAS(行地址控制器)以外,还有RAS(列地址控制器)。
内存基本单元就把信号发送到DIMM的输出缓存,这样芯片组就可以读取它们了。现在我们有了前8个字节的内容,以及在传感放大器中有了正确的行地址,等到下面的24个字节的过程就简单了。这时就由内部计数器负责把下一个列地址的内存基本单元的内容发送到DIMM的输出缓存当中。这样每个时钟周期都有8个字节传送到输出缓存中,这种模式就叫做“突发模式”。
主内存的延迟时间(也就是所谓的潜伏期,从FSB到DRAM)等于下列时间的综合:FSB同主板芯片组之间的延迟时间(+/- 1个时钟周期),芯片组同DRAM之间的延迟时间(+/- 1个时钟周期),RAS到CAS延迟时间:RCD(2-3 个时钟周期,用于决定正确的行地址),CAS延迟时间 (2-3 时钟周期,用于决定正确的列地址),另外还需要1个时钟周期来传送数据,数据从DRAM输出缓存通过芯片组到CPU的延迟时间(+/- 2个时钟周期)。
可以看出,一个真正的PC100的SDRAM(CAS=2)的内存取得最前八个字节的时间是9个时钟周期,而另外24个字节只是需要3个时钟周期,这样PC100的SDRAM取得32个字节的数据只是需要12个时钟周期。对于同样的情况,也就是当二级缓存未命中的时候,CPU从内存取得数据所需要的延迟时间需要用如下方法计算:CPU倍频×内存延迟时间=CPU延迟时间。如果500MHZ(5×100MHz)的CPU需要5×9个延迟周期。也就是说如果二级缓存没有命中,CPU需要45个时钟中期才能得到新的数据。
究竟是什么决定DRAM速度?SDRAM是多bank结构,芯片组可以保持一部分曾经访问过的Bank的行地址,也就是说保持一部分已经被打开的“页面”。如果需要访问的数据在同一列中,那么芯片组不需要等待传感器进行变换—这种情况就叫做页面命中。
|
|
|
|
|
|
|
|