您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 薪酬管理 > 内存和CPU匹配方法详解
内存和CPU匹配方法详解自从本人发表过《内存知识160问》后,受到网友们的热情关注。其中对内存如何跟CPU搭配始终是热门话题,仅一篇有关讨论内存跟CPU匹配的文章,在短短两三个月的时间,就有60余人次发表了评论。而且在评论中基本上都给予了积极地评价。这是很令人感动的。但是,在网上还有各式各样的说法,有许多说法,我不敢苟同。为此,我想把对这个问题的观点归纳一下,并把解决这个问题的方法表格化、数值化,以便使初步接触这个问题的网友能够自主进行计算,如果不会计算,你从我给出的表格中也会得到答案的。但是,可能有不妥之处。谨供网友们参考。1.内存和CPU的有关数据在正式讨论问题之前,我们首先要把内存的核心频率、时钟频率和数据频率之间的关系搞清楚,而且应该特别熟悉。这是讨论这个问题的基础。见下表:表1内存名称及各种频率列表file:///E:/temp/%E5%86%85%E5%AD%98%E5%92%8CCPU%E5%8C%B9%E9%85%8D%E6%96%B9%E6%B3%95%E8%AF%A6%E8%A7%A3%20-_files/9045920_1.jpg由表1可见,核心频率、时钟频率和数据频率之间有固定的关系。它们之间的比例关系见表2。表2.内存的核心频率、时钟频率和数据频率之间的比例关系file:///E:/temp/%E5%86%85%E5%AD%98%E5%92%8CCPU%E5%8C%B9%E9%85%8D%E6%96%B9%E6%B3%95%E8%AF%A6%E8%A7%A3%20-_files/9045920_2.jpg其中的核心频率又称颗粒频率或基本频率;时钟频率又称工作频率、内存频率、I/O频率、DRAM、DRAMFrequency、时脉或内存速度;数据频率又称等效频率或传输通道频率。本文只采用“核心频率”、“时钟频率”和“数据频率”三个名称。对这些名称一定要弄清楚。另外,有关CPU的名称也是五花八门的。例如,主频又称CoreSpeed;外频的名称就更多了,如BusSpeed、汇流排频率、FSB(和前端总线混用)等。2.内存和CPU搭配的基本原则我认为:无论你采用的CPU是Intel的,还是AMD的,当选配内存时都必须遵守三条基本原则。第一条是频率要同步:即内存的核心频率要等于或稍大于CPU的外频。不要给内存加上它不能承受的高频率,否则是频率“过载”。频率“过载”后,内存将拒绝工作。这样,电脑是要蓝屏的。当然,你给它加上低于核心频率的频率时,它会是胜任愉快的。第二条是带宽要匹配:应该设法使内存的数据带宽跟CPU前端总线的带宽相等,否则,数据的传输能力将受制于带宽较低的那端;第三条是主板要调控:因为以上两个条件有时是不可能同时能满足的。这就要靠主板来调控,调控的主要方法是异步设置。因为第一条是有关生或死的问题,所以,这一条必须满足。第二条就可以灵活处理了。另外,当讨论内存跟CPU如何搭配时,必须明确以下事项:①内存的核心频率小于外频时,内存会拒绝工作。表现是蓝屏。但是,在任何情况下,内存的核心频率大于CPU的外频时,内存都能正常工作。但是,系统也不会承认它的高频率。只承认它的核心频率等于外频。例如,你将DDR2-1066插入外频是200MHz的板子上时,系统将认为这个内存是DDR2-800。②Intel处理器的前端总线频率(FSB)是外频频率的4倍。但是,在历史上前端总线的频率和外频是同一个,所以,人们还是经常用FSB来表示外频(例如软件CPU-Z就是这样,它表示的“FSB:DRAM”实际上是指“CPU的外频:内存的时钟频率”)。AMD的内存,在K8以前,也有前端总线,不过,那时的前端总线频率是外频频率的两倍。K8以后AMD的CPU就没有前端总线了。③当讨论内存跟Intel平台的CPU的匹配时,必须知道CPU的外频或前端总线频率。知道一个就行,因为它们之间是四倍关系,此时,不必关心CPU的主频是多少。不过,自从有了Intel的i3/i5/i7后,参照的CPU频率已经不是外频和前端总线FSB,而是基本频率BF了。但是,在检测软件CPU-Z中,还是把BF频率称为外频的。在这种情况下,怎样配内存,请参看本文之6。④当讨论内存跟AMD平台的CPU匹配时,首先必须明确这个CPU是K8的?K10的?还是K8以前的?因为这三种CPU陪内存的方法是截然不同的。讨论K8以前的CPU时,只需知道外频或FSB;讨论给K8的CPU配内存时,只需知道CPU的主频,不要提HT总线,因为配内存跟HT总线无关;同样的原因,当为K10配内存时,如果你不超频,只需知道CPU或主板支持什么内存就可以了。因为K10架构的CPU配内存时是跟外频挂钩的,而AMDCPU的外频是固定在200MHz的。⑤当讨论内存跟CPU的搭配关系时,是根据内存和CPU的参数计算的,不必考虑主板。但是,当你对搭配方案作出选择后,还必须考虑主板是否支持。在一般情况下,主板的频率是应该高于FSB的频率的。⑥内存的异步就是使加给内存的频率是它能正常工作的频率。一般是指降频。但是,频率降下来的后果就是速度变慢和带宽变窄。所有主板都支持内存异步运行的。但是,支持的程度不同。⑦从内存跟CPU是否搭配的角度看,配内存时,不必考虑内存的容量是多少。但是,容量超过一定大小时,有时是要考虑主板是否支持的。⑧内存跟CPU是否匹配,跟CPU是几个核没有什么关系。以上就是我认为内存匹配的三大原则和八项注意。3.在Intel平台实现频率同步的方法在Intel平台,内存频率跟CPU同步的条件就是:内存的核心频率必须等于或稍大于CPU的外频。否则,就是“频率过载”,内存将停止工作,主要的表现形式是蓝屏。虽然对我这个说法经常听到不同的声音。但是,我坚信我的这个归纳方法是完全能站得住脚的。因为内存能够耐受多大的频率,完全是由核心频率决定的。时钟频率和数据频率都是在核心频率的基础上,通过技术手段放大出来的。当核心频率相等时,不同类型的内存会有不同的时钟频率和数据频率。例如,在Intel平台,当外频是200MHz时,为了实现频率同步,应该选DDR-400、DDR2-800或DDR3-1600。因为这几种内存的核心频率都是200MHz。这是十分重要的一条规律。但是,过去,人们都是把内存的同步条件说成“内存的时钟频率(而不是说“内存的核心频率”)等于或稍大于外频频率就是同步”。更多的是模棱两可的说法,比如说“内存的频率等于或稍大于外频,就是同步”。至今在网上的许多文章还是这样说的。相当混乱。我认为,在SD和DDR时代,说“时钟频率和核心频率相等就是同步”,是完全正确的。但是,在DDR2和DDR3出现以后,再这样说就是完全错误的,因为不同类型的内存。其核心频率跟时钟频率是不同的。因此,两种判别方法存在巨大差异。不过,囿于习惯,人们还是愿意用时钟频率来跟CPU的外频对比。我认为,按时钟频率跟CPU频率对比的方法来判断内存是否同步也不是不可以的。但是,必须把这个比作适当改动。比如说:“对于SDRAM和DDR,当内存的时钟频率跟CPU的外频相等时,就是内存同步。例如,当外频是200MHz时,应该配DDR-400的内存”;对于DDR2,就应该说:“当内存的时钟频率是外频的两倍时,就是内存同步。例如,当外频是200MHz时,应该配DDR2-800内存”;对于DDR3,就应该说:“当内存的时钟频率是外频的4倍时,就是内存同步。例如当外频是200MHz时,就应该配DDR3-1600内存”。这样说不是太啰嗦了吗!可是,在检测软件CPU-Z中,就是用CPU的外频(此处称其为FSB)跟时钟频率(此处称为DRAM)的比值关系表示内存是否同步的的。其关系见下表:表3内存同步时,CPU的外频跟内存的时钟频率的频率关系内存的类型DDRDDR2DDR3FSB:DRAM(即CPU的外频跟内存时钟频率之比)1:11:21:4注:在检测软件CPU-Z中,就是用“FSB”表示CPU的外频的,这是历史形成的误用。上表中的“DRAM”是指时钟频率。知道了以上原则,我们应该选什么样的内存跟CPU来匹配的问题也就迎刃而解了。我认为:对Intel的CPU在i3/i5/i7架构出现以前,只要能知道外频或前端总线频率(FSB=4倍外频)中的一个参数,就可以选择合适的内存了。不同型号的内存有不同的计算方法。具体计算方法是:①当在Intel平台选择DDR内存时有:DDR-×××后的三个“×”=FSB值÷2(1)例如,当Intel平台的FSB是533MHz时,如果选择DDR内存时,×××=533÷2=266,所以,应该选DDR-266型的内存。这样选也符合“内存的核心频率(133MHz)等于CPU外频(133MHz)”的原则。②当在Intel平台选择DDR2内存时有:DDR2-×××后的三个“×”=FSB值(2)例如,当Intel平台的FSB是800MHz时,如果选择DDR2内存时,×××=FSB值=800,所以,应该选DDR2-800型的内存。这样选也符合“内存的核心频率(200MHz)等于CPU外频(200MHz)”的原则。③当在Intel平台选择DDR3内存时有:DDR3-××××后的四个“×”=FSB值×2(3)例如,当Intel平台的FSB是800MHz时,如果选择DDR3内存,就应该选四个“×”等于800×2=1600的内存,即应该选DDR3-1600型的内存。这样选也符合“内存的核心频率(200MHz)等于CPU外频(200MHz)”的原则。下表就是我根据上述原则计算出来的、根据CPU的参数来选择内存的计算结果。这是根据频率同步的条件计算出来的最高频率。都存在向较低频率异步的空间。(i3/i5/i7架构的CPU如何选内存,见本文的6)表4.内存同步时外频频率跟内存型号的关系注①:表中的“频率比”是指同步的情况下,外频跟时钟频率的比,即在CPU-Z中的“FSB:DRAM”值。如果CPU-Z显示的不是这个值,那就是内存频率异步了。根据CPU-Z中的“FSB:DRAM”比,还可以很容易反求出来在电脑中安装的(或设置的)是什么型号的内存。例如,当你的CPU的外频是200MHz、而且安装的内存是DDR2时,如果CPU-Z的显示是“FSB:DRAM=1:1.66”的话,那就肯定你安装的内存不是在同步状态。因为DDR2内存同步时,其比是1:2。那么安装的是什么内存呢?可以有下述方法计算出来:因为200:X=1:1.66,所以,X=333。这个333就是实装内存的时钟频率值333MHz,由此可以断定,这个内存是DDR2-667。注②:DDR、DDR2和DDR3内存的针脚和插座都是不相同的,不能用错。所以,当选择主板时,要搞清楚主板支持哪类内存。目前,为了用户方便,有的主板同时具有DDR2和DDR3内存插槽。4.在Intel平台实现带宽相等的计算方法什么是带宽呢?在计算机领域,带宽又叫频宽,是指在固定的时间内可以传输的数据量,亦即在传输通道中可以传递数据的能力。带宽通常以比特每秒(bps)表示,即每秒可传输的位数。但是,为了简化,通常都是以MB/s或GB/s表示的。带宽的计算方法是:带宽=频率×总线位数/8(4)因为电脑内存总线的传输位数是64比特,所以,对于频率是800MHz的通道来说,带宽=800MHz×64b÷8b/B=6.4GB/s。还有一个简捷计算方法,就是带宽=频率数×8B(5)例如,当频率等于800MHz时,带宽就是800MHz×8B=6400MB/s=6.4GB/s。在表1中已经给出了不同频率和带宽关系的计算结果。这里说的带宽匹配,实际上就是频率的匹配。对于我们普通使用者,还是按频率来论述比较直观,因为带宽相等,就是频率相等。带宽匹配的原则是:内存的数据带宽应该跟CPU前端总线FSB的带宽相等,或者说:“内存的数据频率等于CPU的FSB频率,就是带宽匹配”。只有这样才能保证数据的顺利传输。如果有一方的带宽小于另一方,小带宽的一方就构成了“瓶颈”。但是,如果CPU已经选定了,内存的带宽大一些,并没有坏处。在满足同步的条件下,对DDR2来说,就会自动满足带
本文标题:内存和CPU匹配方法详解
链接地址:https://www.777doc.com/doc-2630538 .html