Chinaunix首页 | 论坛 | 博客
  • 博客访问: 520282
  • 博文数量: 174
  • 博客积分: 4177
  • 博客等级: 上校
  • 技术积分: 1827
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-15 14:12
文章分类

全部博文(174)

文章存档

2018年(1)

2017年(1)

2013年(3)

2012年(9)

2010年(12)

2009年(5)

2008年(106)

2007年(37)

我的朋友

分类: 服务器与存储

2007-10-29 21:40:05

   初听“内存刷新”,很术语化,但看完这里的介绍后,也许您会有新的感觉,其中有种动态的美。

   通常主板上使用的内存条应该叫做动态 DRAM ,其中的数据是靠电容特性存储的。由于电容会放电,要维持数据,就要不断的给它充电。给动态 DRAM 定期充电的机制就叫做数据刷新时钟电路,即内存刷新电路。

   细品味起来感觉有些问题,“ DRAM ”中的“ D ”实际上就是动态的含义,似乎语意上有所重复。不过请大家原谅,因为生活中类似的地方很多。比如俄罗斯的苏伯汤,实际上苏伯就是俄语的汤。姑且就叫做动态 DRAM 吧,比动态 RAM 亲切。

   一般情况下,内存刷新电路必须在数毫秒( ms )之内对 DRAM 刷新一次,否则数据就会丢失。很象是一个流沙漏斗,一旦不加沙就会完全漏光。

   在标准的 PC 电路设计中,每隔 15 微秒( us )对 DRAM 充电一次,整个充电操作必须在 4ms 之内完成。

   近年来,由于 CPU 的速度越来越快,使得 DRAM 越来越跟不上 CPU 的速度,使二者的匹配关系失去平衡。这使 CPU 大材小用,不得不停下来,插入几个等待周期来配合慢速的内存刷新速度。因此产生了 AT 时代主板上的交叉( Interleave )刷新内存方法,这种设计要求至少有两个 BANK 。当一个 BANK 与 CPU 交换数据时,另一个 BANK 借机进行数据刷新。偷闲的刷新工作,使 CPU 总在工作。也许您应该知道电脑主板上的内存条为什么要分为 BANK 了,显然只让一个 BANK 插慢内存条势必使该方法失效;另外一种方法是 DRAM Page Mode ,也即动态 DRAM 页面模式。其原理是:在 CPU 对 DRAM 进行读写的一个周期中,只能对一个地址进行存取。可是如果把列地址固定,只连续改变内存的行地址,就可以得到一块连续的内存(可以称为一页),从而使 CPU 可以存取范围更大(页面)的数据,加快了数据存取过程。从单一地址到多个地址,从线性到页面的方法大大提高了 CPU 的效率,而且再也不依赖 BANK 的物理条件了。单单靠改进存取设计方法是不够的。使用新的内存材质,改进数据读写周期的触发电路,更高级的调整 CMOS 中关于 DRAM 的刷新周期进行优化设计等都可以提高 CPU 的效率,可喜的是动态的 DRAM 速度正在提高 PC133 标准正在流行, PC155 也指日可待。
来说,它占用的面积也更小,从而其价格也更便宜。我们知道,电容总是趋向于释放电荷,因此DRAM还需要周期性的刷新操作,否则数据就会丢失。正是因为DRAM需要周期的刷新操作,所以相对于静态()来说,DRAM是动态的。另外,当DRAM的电源供应停止后,存储于其中的数据会丢失,因此,DRAM是一 种非永久性存储器(易失性存储器)。DRAM中的电容通常被组织成一个正方阵列,这个阵列由若干行和若干列组成,其中的每一个电容都可以看成是阵列的一个 单元,这些单元通过阵列的行和列的地址译码器来寻址。对于任何一个单元的读操作,整个行均被读出,然后重新写回(刷新)。对于任何一个单元的写操作,整个 行均被读出,然后改变其中一个单元的值,最后将整个行写回。典型情况下,DRAM的制造厂家规定DRAM的每一行必须在64ms以内执行一次刷新操作。通 常使用刷新逻辑来自动完成刷新操作,这使得DRAM的实现更加复杂,但由于其价格便宜、容量大,因此它在某些应用场合比更加具有吸引力。

阅读(1125) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~