了解内存的基础知识 轻松挑好内存

社区服务
高级搜索
猴岛论坛电脑百科了解内存的基础知识 轻松挑好内存
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
0个回复

[网络问题]了解内存的基础知识 轻松挑好内存

楼层直达
〆 ˉ 壞壊

ZxID:9778602

等级: 大将
我爱你

举报 只看楼主 使用道具 楼主   发表于: 2010-08-07 0
内存的基础知识


  现代计算机中处理器每秒能够完成数十亿次操作,能够在极短的时间内完成大量的创建或修改数据的工作。

  就像是一位在长长的流水线上做装配工作的工人一样,将自己装配完成的产品找一个地方统一放置。处理器在处理信息的过程中也需要一个能够存储这些数据的地方,直到它们被再次调用并修改。

  因此在计算机中除了处理器之外,我们还需要一个数据存储装置。这也是为什么我们的计算机中会装配内存和硬盘的原因。

  由于计算机中的数据存储装置用途不同,速度不同,因此分为多种类型。如果说计算机的存储装置像人的大脑的话,硬盘就是用来保存长期记忆的场所。因此存储在硬盘中的信息能够永远地保存下去,而不会轻易地丢失。而主内存(Random Access Memory,RAM)则是用于存放临时信息的场所,不过这些临时信息并非可有可无,而是能够确保计算机正常运行的数据。只有存储在RAM中的数据,处理器才会考虑是否将它转移到硬盘上面长时间保存。

  现代的处理器通常还会在其内部集成一些高速缓存,这种缓存的速度是计算机中数据存储装置中最快的,但同时它们的容量也是最小的。而且并非所有的数据可以被存储在高速缓存中,只有那些使用最频繁的数据才会存储其中。因此它就如同人们的意识一样,存储在其中的资料联系着第一个操作的结束和第二个操作的开始。
随机存取存储器(RAM)内部存放的临时信息不能够像硬盘那样被长时间地保存起来,当计算机断电之后,存储在其中的数据也同时消失。而硬盘就可以通过其磁特性在断电的情况下继续保存数据。虽然硬盘有这一大特点,而且随着科技的进步硬盘的读写速度也在节节攀升。但仍远远不能够满足处理器的数据处理速度。如果只使用硬盘而不使用内存的话,计算机的整体速度将大幅下降。因此为了避免这种情况出现,科学家在计算机的架构中引入了随机存取存储器这一概念。RAM是一种速度极快,能够暂时保持资料的存储器。在现在的计算机中一般都是由RAM来直接和处理器对话,内存的频率和带宽如果和处理器像匹配的话,可以将系统数据传输瓶颈降低到最小。

  不过RAM光是存储还不够,处理器还需要在RAM上面“读/写”数据。为了实现这一功能而出现了DRAM(动态随机存取存储器, Dynamic RAM)。可以说现在所有的内存都采用了DRAM模块。DRAM是由硅芯片在一小块线路板上面整齐排列而成,而每个硅芯片中又纵横排列着很多逻辑单元。

  这些逻辑单元中由一个电容器和一个晶体管所组成,能够达到两种状态:充电(1)或者放电(0),并以此来对二进制的数据进行记录。这类型的内存由于动态特性的需求,需要不断的刷新电荷才能够继续保存其内部存放的信息。因此当计算机断电之后,DRAM中的所有数据都将消失得一干二净。在现在的桌面电脑中,能够直接通过将内存条插入主板相应的DIMM插槽,提升内存的容量。


内存的种类


  在今天的内存市场中主要有三种内存,它们分别是:SDRAM(Synchronous Dynamic RAM),DDR-SDRAM(Double Data Rate SDRAM)以及RDRAM(RAMBUS Dynamic RAM)。这篇文章将详细讨论这三种内存,注意当前市场的主流内存DDR-SDRAM已经又划分出若干版本(如DDR-II或GDDR3),这里只是统一介绍DDR-SDRAM的特点。

SDRAM(同步动态随机存取存储器)

  SDRAM是早期内存EDO(Extended Data Output)DRAM内存的改进版本。EDO常见于486或老奔系统上面,其主要缺点在于内存频率和系统频率不一致(不同步),这样将随机出现延迟和等待状态(处理器等待内存传输可用的数据),因此对系统的整体性能影响巨大。SDRAM初始频率为66MHz,这和当时的系统频率相一致。同步的好处显而易见,能够消除不必要的等待时间,尽量保证系统稳定高速的运行。除此之外SDRAM还能够在一个时钟周期之内完成数据存储请求和取回操作,并且能够在下一个时钟周期内准备好数据的传输和接收工作。
举个例子,如早期的奔腾II或者赛扬,它们的外频为66MHz,也就是说每秒钟运行6.66千万个周期,每个周期的运行时间是15纳秒。理论上说SDRAM能够在每个周期进行读操作和写操作 ,当然这只是理论上的结论。

  事实上一般说来SDRAM采用的内存芯片并不比老式的DRMA类型快多少,通常而言SDRAM需要多个时钟周期才能够正确定位横地址和纵地址,从而开始读写操作,这一般需要5个周期。但当第一个单元被正确定位之后,其他的相邻内存单元就会并发执行读/写操作,速度越来越快,直到达到一个周期内执行一个操作的程度。这就是所谓的爆发模式。

  在现在的计算机中,确保内存时钟频率和系统频率同步是提升整体速度的重要手段之一。因此当系统频率提升之后,内存也要随之而提升频率,才能够和最新的系统相匹配。SDRAM内存通常的速度为66MHz、100MHz和133MHz。人们更习惯将它们叫做PC66,PC100和PC133。不过请不要概念混淆,这后面跟的数字并不是指内存的运行频率,而是指总线频率或者与之相配的系统速度。

  由于不同SDRAM内存模块之间采用相近的工作方式,因此这种内存具有普遍的向后兼容性。也就是说具备高速率的内存(如PC133)在 100MHz的总线频率下,能够工作在较低的频率下(以PC100的方式运行)。如果你在总线频率仅有100MHz的系统中使用133MHz的内存频率的话,这对于系统性能没有任何帮助。另外还需要注意的一点在于较老的内存模块很可能无法兼容较新的SDRAM内存模块,这是因为在主板中默认的内存速度设置混乱所引起的,因此在主板上面混插新旧内存条的时候也容易引发兼容性问题。

  有些内存生产商生产的SDRAM内存有点奇怪,内存条的频率为166MHz。使用这种频率的主板和处理器组合找遍整个市场也找不到。因此这类型的内存不是为一般用户准备的。在厂家的广告中就可以发现,这些能够运行在更高时钟频率的内存是专门为希望超频的玩家准备的。因为总线速率提升之后,内存的频率也将随着而提升,否则就会造成系统的瓶颈。SDRAM内存采用168针的DIMM(Dual Inline Memory Module),容量从16MB到1GB不等。

  当前还有极少数的主板同时支持SDRAM和DDR-SDRAM,不过你已经无法买到支持SDRAM的新推出的系统平台了。但在二手旧货市场仍然随处可见SDRAM的身影。至少在两年之内,SDRAM仍然会占据二手内存市场的半壁江山。

DDR-SDRAM(Double Data SDRAM)

  在SDRAM规格之后,DDR-SDRAM的出现又是一次技术的进步。随着处理器时钟频率和前端总线频率的飞速提升,处理器在一段时间内能够处理的数据总量变得越来越巨大。例如当前的INTEL和AMD的主力产品Pentium 4和Athlon XP的运算速度已经达到了每秒数十亿次的惊人程度。仅仅从芯片的时钟频率看,处理器的性能已经非常了不起了,但由于有限的内存带宽,系统整体性能仍然受到了局限,因此传统的SDRAM内存已经不能够满足新处理器对数据的需求。

DDR-SDRAM在原有的SDRAM基础上使每一个时钟周期输出的数据变为两倍,相当于达到了同频率的SDRAM的最大理论带宽的两倍,从而极大地提升了原本紧缺的内存带宽。DDR-SDRAM输送和接受的数据都明显要多于SDRAM。这对于当前的Athlon XP和Pentium4来说是最合适的搭配了,为了适应不同总线频率的处理器,DDR-SDRAM也衍生出多种不同速率的内存模块。

  DDR-SDRAM的开发历史要追溯到上世纪90年代末,将这项技术的一次带入桌面PC市场的公司是NVIDIA在发布GeForce显卡的时候。之后在2000年,AMD在760芯片组上面第一次将DDR-SDRAM内存作为系统主内存使用,用于支持Athlon系列处理器。

  DDR-SDRAM采用184针DIMM模块,目前主要有以下几种速率:PC1600(200MHz),PC2100(266MHz), PC2700(333MHz),PC3200(400MHz),PC3500(433MHz),PC3700(466MHz),PC400 (500MHz),PC4200(533MHz)和PC4400(566MHz)。名称中的第一个数字,如“PC2100”意为此内存模块的最大带宽,也就是每秒最大能够提供多少MB的数据。后面的MHz是此内存运行时的时钟速率。单根DDR-SDRAM的容量从64MB到2GB不等。

RDRAM(RAMBUS Dynamic RAM)

  RDRAM在现在的桌面PC市场上面已经基本绝迹。和DDR-SDRAM不同,RDRAM是一种专利内存标准,由RAMBUS开发研制成功。在1998年RDRAM第一次通过INTEL的鼎力协助进入桌面电脑市场,和高端的Pentium III以及早期的Pentium 4捆绑销售。不过遗憾的是,RAMBUS很快便因为内存技术专利费用的问题卷入了与英飞凌和现代等众多内存生产商的一系列官司纠纷中。

  由于RAMBUS对RDRAM技术收取专利费用,导致RDRAM价格昂贵,从而抑制了Pentium 4市场的销售,引发了INTEL的不满。再加上一系列的官司让众多内存生产商联合起来抵制RDRAM,转而生产DDR-SDRAM,让RDRAM失去了占领家庭用户和PC发烧友市场最好的机会。
价格过于昂贵也是导致RDRAM失败的重要因素之一,因此在2001年INTEL首次在低端市场的Pentium 4芯片组中使用SDRAM来代替RDRAM。由于SDRAM无法满足Pentium 4强大的数据吞吐率,因此INTEL在2002年发布了支持DDR-SDRAM的Pentium 4芯片组,从而将RAMBUS内存彻底从家庭用户和商业PC领域中赶了出去。直到此时RAMBUS才如梦初醒,在2003年1月撤销了对英飞凌的诉讼,情势在一夜之间发生了天翻地覆的变化,之前又有谁能想得到。

  在产品的设计和运行方面,RDRAM和DDR-SDRAM都有明显的不同。首先RDRAM的数据传输只有16bits,或者说每次传送2字节的数据。虽然SDRAM/DDR-SDRAM采用的是64bit的数据通道,但RDRAM的工作频率明显要高出DDR-SDRAM不少,最初的产品频率都已经达到了400MHz(PC800 RDRAM)。RDRAM每个时钟周期也是传输两倍的数据,在这一点上面和DDR-SDRAM很相似,因此有效数据传输率为800MHz。采用下面这个公式可以计算出RDRAM的最大理论带宽是多少:

(内存频率)X(#数据通道宽度)/8 =800000000X16/8=1.6GB/s

  通过公式计算可以得出RDRAM PC800的理论最大带宽达到了1.6GB/s。在内存带宽上面RDRAM有着SDRAM不可比拟的优势,这也是INTEL将其指定为Pentium 4处理器的专用内存的主要原因。在实际使用中,RDRAM相比于SDRAM虽然有自己的带宽优势(站在当时的时间来说),但RDRAM需要更长的延迟时间才能够定位首个单元开始读/写操作。

  因此在无法发挥出高带宽特点的情况下,RDRAM所表现出来的性能比SDRAM或DDR-SDRAM都要差,这也是为什么在Pentium3 平台上面采用SDRAM内存所表现出来的性能反而更高的原因。RDRAM利用高频率来并发执行内存中的其他单元后,会因为其高频率的原因产生一个短暂的延迟。因此在后续推出的RDRAM内存模块具有更高的时钟频率(533/1066MHz以及600/1200MHz),增加的仅仅是其内存带宽而已。运行得最快的内存还是DDR-SDRAM。

  和DDR-SDRAM相同,RDRAM的某些芯片组也能够使用双通道模式的内存,不过这同样需要一组相同的内存条。另外由于RDRAM高频率也带来高发热量,因此RDRAM内存条上面都有一个金属散热板用于辅助散热。RDRAM主要有PC800,PC1066和PC1200几种类型(PC800是指实际频率加上每次传输双倍数据的总和),单根内存条的容量从64MB到512MB不等。RDRAM模块采用184针,封装方式叫做 RIMMs(RAMBUS Inline memory modules)。


应该选择哪种内存?


  要回答上面的问题之前还要了解几个因素。首先如果你已经有一台电脑,且并不想大刀阔斧的进行升级的话,你至少要先了解你当前主板所支持的内存种类。

  一般而言,主板都仅支持一种类型的内存:SDRAM,DDR-SDRAM或者RDRAM。如果你想增加你计算机中的内存总量的话,你需要了解你当前系统中所使用的内存容量多大,然后购买同类型,同速度的内存条(注意内存类型并不是内存的品牌,而是SDRAM,DDR或RDRAM中的哪一种)。与此相关的信息应该很容易在你的主板说明书上面找到。

  从理论上讲,使用SDRAM内存的系统,能够使用速度更快的内存条需要看主板是否支持以及内存正确的速度设置。比如说,在早期的INTEL Celeron系统采用66MHz时钟频率,因此仅需要PC66的SDRAM就行了,但也可以使用PC100和PC133 SDRAM,不过它们的时钟频率都只运行在66MHz的水平。虽然说SDRAM内存普遍具有向后兼容性,但在实际情况中由于SDRAM发布已久,电压和其他规格也几经变动,因此最稳妥的办法是采用主板说明书上面推荐的内存(如果有可能买到的话)。

  在技术更新时期的主板,有的具有支持多种内存的功能,比较常见的如同时支持SDRAM和DDR-SDRAM内存。具体的情况可以参考你的主板说明书,但因该注意的是,即使你的主板能够同时支持SDRAM和DDR-SDRAM内存,但那并不代表你能够将两种不同类型的内存混插。不同类型的内存是无法同时工作的。

  一些主板支持DDR和RDRAM内存采用双通道的方式进行工作,双通道的意思是两根彼此独立的内存模块在主板上被同时访问,因此得到两倍的最大带宽。不过这需要你使用完全相同的一组内存。如果你现在仅有一根内存条又准备使用双通道功能的话,建议你购买和当前内存完全相同的内存条。

  如果你计划购买一个全新的系统,那么你应该根据你所选择的处理器来购买相应的内存。虽然现在DDR2100和PC133是市场上最容易被找到,且最便宜的内存,但如果你购买INTEL或AMD最新系列的处理器的话则需要选择更高速率的DDR-SDRAM。如果你选择INTEL 800MHz前端总线的处理器或者AMD的Athlon 64处理器的话,则需要购买PC3200才能够充分发挥处理器的性能。

大容量内存的优势

  内存并不是越多越好,当然内存容量也不能太低,内存对计算机速度快慢的影响总是相对的。我们先来看看内存不足会引起什么样的后果。如果你同时打开了多个应用程序,那么内存的使用量就会猛增。当所有的可用内存都用尽了,系统就会使用虚拟内存(采用一部分硬盘空间作为扩展RAM),由于硬盘的速度和内存相比要慢许多,因此当操作系统频繁访问虚拟内存时,系统的整体速度就将大幅下降。

  如果你的计算机经常出现这种情况的话,那么增加内存将会是你提升系统性能的最佳办法。由于每个人的计算机使用环境不尽相同,因此最小内存的使用大小也不相同。如果你使用Windows2000操作系统,将内存容量从64MB升级到128MB,系统的性能将得到大幅的改观;同样的系统从 512MB升级到1GB内存对性能的提升就微乎其微了。每一位用户对系统内存的需求都不是固定的,这取决于所使用的操作系统和应用程序。

  例如使用新版本的Windows 2000/XP,系统内存的需求量就比使用Windows 9x/ME要大。对于系统测试来说,使用内存的大小对结果也有很大影响。比如说使用256MB和512MB的DDR内存,采用sysmark2002来评测系统性能。使用256MB DDR内存所得到的Internet Content Benchmark分数为425,Office Productivity分数为219;而使用512MB DDR测试的结果分别是452和246。由此可见不同内存容量对性能影响是巨大的。

  当然内存也并不是越多越好,系统测试中两者的分数之所以相差那么多,是因为测试时系统负载压力增大,尤其是在Sysmark的Office application测试中。系统的负载增加就需要使用更多的内存。不过测试归测试,在实际使用中是否需要升级内存主要在于你自己对当前系统表现的感受。 内存带宽和延迟

  在以前的I845PE平台上,单通道的DDR内存所提供的带宽并不能够满足Pentium4处理器的需求。但当INTEL发布 I865PE/I875P芯片组之后,采用双通道技术使DDR内存的发展发生了重大的变化。如同前文中所提及的那样,内存频率应该和前端总线速度相一致(或者说速率比为1:1),才能够充分发挥处理器的性能。如果选用800MHz前端总线的Pentium4处理器的话,那么所选用的内存也需要高频率才能够满足处理器的数据吞吐量。首先不说内存工艺和封装可能遇到的困难,高频率内存将带来更高的时间延迟(例如RDRAM),那么这种高频率内存的速度参数普遍较低。提高频率可以增加带宽,但同时会增加内存的时间延迟。因而带宽和延迟本来就是一对矛盾的技术参数。

  不过双通道技术在一定程度上缓解了这种矛盾的激化。双通道技术在大幅增加内存带宽的情况下,仍然保持了较低的时钟延迟。因此这项技术在DDR内存发展史上的确是一个重要的进步。


令人困惑的内存时间参数设置


  前文中所频繁提及的内存时间参数,通常意义上说就是系统在数据获取或传输之前处于等待内存的准备状态的时间长短。内存延迟时间就像是一个人进入餐厅吃饭,当你点完菜,并等待所点的菜送来的那一段时间。对于速度快的计算机而言,能够用较少时间就从内存中得到所需要的数据。因此反过来说,具有较低时间延迟的计算机通常也具有较高的性能表现。
对于内存延迟问题来说具有普遍性,不论你使用的是AMD还是INTEL的处理器都会遇到这种问题。这也是JEDEC(一个内存规则制定组织)对于延迟时间参数达不到2-2-2-5的内存不考虑其成为正式动态内存的标准的原因。

  内存延迟时间参数是由四个彼此独立的数字所组成(如:2-2-2-5)第一个数字代表CAS(Column Address Strobe)延迟,这通常是最重要的内存延迟参数。横线之后的第二个数字表示RAS-to-CAS延迟(Row Address Strobe),接下来分别是RAS Precharge延迟和Act-to-Precharge延迟。一般而言四个数中越往后值越大。 上图是Crucial DDR333的时间延迟图表。显示了CAS2,CAS2.5和CAS3的延迟情况(以CL=2为例)。注意横向起伏不定的那条线表示时钟信号的升降。由于是双倍数据传输率的RAM,因此在每个时间单元中有两个点。记录从读入命令和第一段输出数据之间的部分就是CAS延迟。CAS延迟采用时钟周期来表示, CAS值越大,代表最初所浪费的时钟周期越多。如CAS3中,读入命令在T0(Time=0)被发送,而第一段输出数据到T3(Time=3)才被执行。

  因此以此类推,采用能够运行在时间参数为2-2-2-5 DDR内存的计算机要比采用3-4-4-8的计算机运行得更快,更有效率。因此延迟时间较低的内存在接到指令到传输/接收数据的这一过程反应更快。


结语:选择高频率还是低延迟


  在竞争激烈的市场中,一旦某一家厂商推出了新产品或者新技术,其他的厂商必将蜂拥而起,在自己的产品线中推出使用新技术的新产品。如果哪一家厂商不这样做,那么留给他的就是消费者无情的指责和市场残酷的淘汰。
对于追求完美的消费者来说,到底是选用速度更快但访问时间较长的内存,还是选用速度稍慢但访问时间较短的内存而进退两难。鱼与熊掌不可兼得,要么选择高速内存(如PC4000 DDR),虽然内存延迟时间较长,但可以为处理器提供大量的带宽。从而弥补延迟时间较长的劣势。要么选择内存自身频率较低,但延迟时间相对较短的内存(如 PC3200和PC3500)。

  但如果处理器超频的话,内存带宽会受到限制。如果你不打算进行处理器超频的话,使用CL=2的PC3200应该是一个不错选择。较低的内存时间延迟,可以让处理器和内存之间的数据交换更有效率。高效的数据传输率对于游戏和3D应用都是影响巨大的,特别是对那些FPS(第一人称射击游戏)的玩家来说尤其如此。
没有人会记得我,潜水是我唯一的选择
« 返回列表
发帖 回复