全部博文(343)
分类:
2006-03-20 22:04:16
经过测试,计算机从内存存取时间大约需要 200ns( 纳秒 ), 但从硬盘存取则需要 12,000,000ns ,这二者之间相差 600,000 倍,这也正是使用者会觉得计算机越来越慢的因素,因为本来 CPU 在处理数据时,都是从内存上面来读取,速度相当的快,可是当 Windows XP 使用了 Swapping 后,就变成从硬盘上面来读取,整个系统性能自然就慢了下来,这时使用者会发现,怎么硬盘灯一直闪,一直在跑!正是这个原因,而现在大多数的 3D游戏,如魔兽争霸 III ( Warcraft III )等等,都是相当吃内存的游戏,所以玩久了,一定会发现越跑越慢,因为内存已经不负使用,而改用虚拟内存,这会儿硬盘可是操的很凶呢!
所以,使用者只要增加系统内存,让 Windows XP 不去执行 Swapping 这个过程,整个计算机性能自然会很快,记住!这与提升 CPU 所达到的加快处理速度不同,而是减少让操作系统去使用到虚拟内存的机会,这不仅让计算机在高速运作下的时间变长,换句话说,也间接提升了硬盘使用寿命,所以聪明的使用者,在升级计算机的同时,应该先考虑系统内存的多寡才是最聪明的,因为不管你的 CPU 处理速度有多快,如果遇上是从硬盘读取数据来处理的话,基于硬盘的机械结构问题,是怎么快也快不上来!
那么,读者一定有个疑问,到底要多少的内存容量,系统才会足够呢?以 Windows XP 为例,官方所建议的最佳化内存容量为 128MB ,但笔者觉得这根本不够,至少要 256MB ,才够让一般使用者感受到他的快速,而如果使用者有玩大量场景的 3D 游戏的话,至少要 512MB 以上才够看!所以如果你的内存容量仍旧在 128MB 的话,赶快升级一下吧!那么,要升级内存的话,必须先了解内存,以市场上的主流内存 为例,接下来笔者就教教大家,怎么认识内存!!
内存
最早出现的内存模块,说实话已不可考,因为各家的规格并不一样,谁是最早出现的,很难查证,但真正被业界大量采用的,是以SIMM ( Single In-Line Memory Module )模块为基础的内存,他是一种正反两面线路都连在一起的内存,以8位(8bit)为一个单位做传输, Pin脚数为 30 ,后来当 CPU 进演到 32 位处理时, SIMM 规格的内存也演进到能够传输 32 位( 32bit ), Pin 脚数也提升到 72Pin ,而这二个类型的内存在 Pin 脚数上不仅不同,连长度也不一样,直到 586 时期, 72Pin 的内存仍旧被大量采用。
30Pin 的 SIMM 内存
72Pin 的 SIMM 内存
早期的 SIMM 插槽
内存
由于 SIMM 内存是以正反两面都连在一起的线路所设计,到了后期无法符合内存颗粒渐增的问题(因为内存颗粒密度加大,容量变多),于是发展出 DIMM ( Dual In-Line Memory Modules )为基础线路设计的内存,他的设计类似于 SIMM 技术,不过正反两面的线路设计是分开的,各自拥有其独立的线路,数据传输也提升到 64 位( 64bit ),针脚数也增加到 168Pin ,所以在长度上比72针的SIMM 内存更长。
Synchronized DRAM (SDRAM)
在 1996 年时期, SDRAM 技术出现在业界上,他是让内存“首次”以频率为标准的设计,目的是让内存工作频率与中央处理器计时同步化,这使得内存控制器能够掌握准备所要求的数据所需的准确频率周期,因此从此不需要延后下一次的数据存取。而 SDRAM 的规格不止一种,有最先推出的 PC66 SDRAM ,即是以 66MHz 为工作频率, PC100 SDRAM ,即是以 100MHz 为工作频率,以及后来 的 SDRAM 等,而 SDRAM 是以 DIMM 为架构所设计的内存。
Synchronized DRAM
Double Data Rate Synchronized DRAM (DDR SDRAM)
2000年底,由 主导的 Rambus 内存,与 VIA 和 AMD 主导的 DDR SDRAM 内存规格之战,一直是 DIY 玩家茶余饭后的话题,而这场内存战争最后由 DDR SDRAM 阵营获胜。 DDR SDRAM ,全名为( Double Date Rate Synchronized DRAM ),是新一代的 SDRAM 技术,与传统的 SDRAM 技术差别在于,他可以在一次的频率周期中的波峰及波谷(也就是上升与下降)传送数据,达到二倍的数据量,举例来讲,以 133 MHz 的内存总线设计的 DDR SDRAM ,即可达到 266MHz 的实际数据传输率,这不仅让内存厂商不需更换大量硬设备即可量产,在成本上也容易控制,使得目前的内存架构主流变成 DDR SDRAM 。
历代主流内存
PC2700 ? PC3200 ?这是什么?
常常在电脑商场的广告 DM 上,或是一般的计算机类书报杂志,会看到这类名词“PC3200 、 256MB DDR RAM ”,或是“DDR400 、 256MB DDR SDRAM”,到底这个 PC3200 、 DDR400 是什么意思呢?先前提到过,以 133MHz 所设计的 DDR SDRAM ,可以达到 266MHz 的实际传输频率,所以这组跑 266MHz 的 DDR SDRAM 内存,又可称为 DDR266 SDRAM 内存,同理, DDR400 SDRAM 即是指他可以跑 400MHz 的实际传输率。
那 PC 3200 又是什么?他即是指内存的数据传输量,以 DDR400MHz 为例,他的频率为 200MHz ,但是他支持 Double Data Rate 技术,所以实际频率要乘以 2 ,也就是 200x2=400MHz ,而 DDR SDRAM 是以 DIMM 为基础架构,一次可以传送 64 位(也就是 64bit ),如果换算成字节( Byte ),就要除以 8 ,也就是 64 / 8 = 8Byte ,所以 DDR400 的实际传输量如下:
200(MHz)×2×8(Byte)=3200 MB/s (单位为Byte)
所以读者了解了吗? PC 3200 等同于DDR 400的内存,只是PC 3200所代表的意思是内存的传输量,而 DDR400 所代表的是内存的频率,换言之, PC2700 即是 DDR333 、 PC2100 即是 DDR266 。
内存判断方式
要看一条 DDR 内存的好坏,最简单的方式即是选择“厂商”,选择较有名的厂商,比较有保障,一来品质较稳定,二来厂商也不会因为丢了自己的信誉,而夸大内存频率,不过这里笔者还是教一下,怎么看一条 DDR 内存,要看一条 DDR 内存的好坏,可以从规格以及内存颗粒二方面所着手,规格指的是内存工作频率,以及 CL 时间(稍后再述),内存颗粒指的是内存上所采用的内存颗粒为何,一般只要是大厂,所搭配的内存颗粒都不会太差,且品质相当稳定,不过如果遇到杂牌的内存,读者可要多费心了,要看一下内存颗粒上所标示的工作频率是否符合包装盒上的标示,才不会被骗,那要怎么判断内存颗粒的工作频率为何呢?一般来讲,在内存颗粒的上面,都会有一组型号,在型号的最后面,都会有一个数字,有可能是 6 ,有可能是 5 ,或是 4 ,当然命名方式各家都不相同,以 KINGMAX 的 DDR433 内存为例,上头的内存颗粒采用 KINGMAX KDL388P4EA-46 ns ,也就是 4.6 纳秒,这时读者可以以 1000 去除以 4.6 ,会得 217.39 ,而这个数字也就是这款内存颗粒的工作频率,由于他是 DDR SDRAM ,所以 217 要再乘以 2 得 434 ,才是真正的工作频率,符合包装盒上所标示的 DDR433 规格,所以这个方法,读者也可以用来判断你家里的内存颗粒,看看是不是符合包装盒上所标示的规格哦!
KINGMAX DDR433 内存采用 KDL388P4EA-46 ns 颗粒
计算出来的频率,符合内存上所标示的规格
内存的运作方式
那么,内存是如何运作的呢?在讲这个之前,先来了解一下跟内存速度有相当大关系的三个名词,分别是 CAS Latency (行地址控制器延迟 / CL )、 RAS-to- Delay (列地址控制器至行地址控制器延迟)、以及 Row Active Time (列动态时间),当然读者看到这些专有名词时,一定会跟笔者一样,看的一头雾水,什么行?什么列,看不太懂,没关系,笔者把他解释的白话一点,应该就看的懂了。
内存的数据单元是以矩阵( Matrix )方式做排列,由行与列的所交错而成,而每一个交叉点即代表一个内存位,数据便是储存在这个内存位上,换句说话,读者可以把整个内存看成一个窗体,数据是储存在窗体中的表格内,循序储存,而它的运作方式是,首先内存控制器先送出单元的列地址,作为模块逻辑寻址用,在经过一段时间,列地址会被送去暂存区,接着控制器会再送出行地址控制,以传送行地址讯号,一直到选择单元的内容送至内存芯片的输出寄存器( Output Register )上,再进行下一次动作,所以 RAS-to-CAS Delay 指的是列地址暂存后,到行地址执行的这段时间,而 CAS Latency 指的是行地址送出信号的时间,所以二者的时间越短,内存的执行效率就越快,而如果储存数据刚好相临的话,只需变成行地址讯号即可,因为内存控制器已经知道列地址,不需再重新寻址一次,所以行地址控制器延迟( CAS Latency ,又称 CL )在内存的处理性能中就扮演着相当重要的角色,也是一般内存上最常标示的项目,那读者会问,列与列更换时是什么?就是 Row Active Time (列动态时间)。
Bank 区块寻址
支持 DDR 内存的,会把内存储存区再细分成四个块( Banks )或是更多,每个分离的部份即代表了一个内存区 Bank ,换句说话,内存控制器可以分别对这四个部份做同步寻址,因此而增加了数据的传输率,因为当数据被一个内存 Bank 读取时,另外一个 Bank 可以寻址新的资料区,所以一般在主板的说明手册上,常看到主板支持内存几个 Bank ,如何搭配,即是指这个意思,如 Intel 845G 支援 4 个 Bank , Intel 865PE 支持 8 个 Bank ,即指是可以对 4 或是 8 个 Bank 做同步寻址。
双面不代表就是双 Bank
有些内存在设计上为了增加性能,会以 2 个 Bank 做设计,而不是以 1 个,不过一般人常会把二个 Bank 与二面内存搞混,其实这是错的,内存的双面设计,与是否采用 2 Banks 设计是不同的,双面设计是以实体线路的方面做区分,把内存颗粒分别设计在正反两面, 2 Banks 是以电气方面做区分,把内存数据单元分成二部份,二者不能混为一谈,因为一条双面的 DDR 内存,有可能只采用 1 Bank 设计,而不是 2 Banks 。