从DRAM内存原理看SDRAM的速度(3)
清水反应 2001-04-09 14:17:26
然后内存基本单元就把信号发送到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工作的基本原理,下面让我们了解一下决定RAM技术速度的因素。
还是延迟时间……
究竟是什么决定DRAM速度?SDRAM是多bank结构,芯片组可以保持一部分曾经访问过的Bank的行地址,也就是说保持一部分已经被打开的“页面”。如果需要访问的数据在同一列中,那么芯片组不需要等待传感器进行变换——这种情况就叫做页面命中。这时RAS到CAS延迟时间就是0个时钟周期,只需要经过CAS延迟就能在内存缓冲调入正确数据。所以,页面命中就意味着我们只需要等待列地址的确立,就能得到需要的数据了。不过有的情况下,芯片组请求的内存页面不是处于打开的状态,这就叫做页面失效。在这种情况下,RAS到CAS延迟时间将是2或者3时钟周期(根据内存的品质不同而不同)。这种情况就是前面我们讨论过的情形。如果芯片组已经保持了某一个Bank的某一个行地址,也就是在某一个bank已经打开了一个页面,而请求的数据是位于同一个bank的不同行地址的数据,这种情况是最糟糕的。这样就意味着传感放大器需要首先回写旧的行地址,然后再转换新的行地址。回写旧的行地址所占用的时间叫做“预转换时间”(Precharge time),当遇到这种情况时,是最坏的情况。
|
|
|
|