CPU讲解大全
1.电源频率
主频也叫时钟频率,单位是MHz,用来表示CPU的运行速度。CPU主频=外部频率×倍频系数。很多人认为主频决定了CPU的运行速度,这不仅是片面的,对于服务器来说也是偏颇的。到目前为止,还没有一个确定的公式可以实现主频与实际运行速度之间的数值关系。即使是Intel和AMD这两大处理器厂商,在这一点上也有很大的争议。从英特尔产品的发展趋势可以看出,英特尔非常重视加强自身主频的发展。和其他处理器厂商一样,曾经有人拿一个1G的全美达做对比,运行效率相当于2G的Intel处理器。
所以CPU的主频和CPU的实际运算能力没有直接关系,主频表示的是CPU中数字脉冲信号振荡的速度。在英特尔的处理器产品中,我们也可以看到这样的例子:1 GHz的安腾芯片几乎可以和2.66 GHz的至强/骁龙一样快,或者说1.5 GHz的安腾2大约和4 GHz的至强/骁龙一样快。CPU的运行速度取决于CPU流水线各方面的性能指标。
当然主频和实际运行速度有关。只能说主频只是CPU性能的一个方面,并不代表CPU的整体性能。
2.外部频率
外部频率是CPU的参考频率,单位是MHz。CPU的外接频率决定了整个主板的运行速度。说白了,在桌面,我们所说的超频就是超级CPU的外频(当然一般来说,CPU的倍频是锁定的)。我相信这是很好理解的。但是对于服务器CPU来说,超频是绝对不允许的。前面说过,CPU决定主板的运行速度,两者同步运行。如果服务器CPU超频,改变外部频率,就会出现异步运行(很多台式电脑的主板都支持异步运行),造成整个服务器系统的不稳定。
目前大部分电脑系统中的外接频率也是内存和主板同步运行的速度。这样就可以理解为CPU的外部频率直接与内存相连,实现两者的同步运行。外部频率和前端总线(FSB)频率很容易混淆。下面前端总线给我们介绍一下两者的区别。
3.FSB频率
前端总线(FSB)的频率直接影响CPU与内存直接数据交换的速度。有一个公式可以计算出来,就是数据带宽=(总线频率×数据带宽)/8,数据传输的最大带宽取决于同时传输的所有数据的宽度和传输频率。比如目前支持64位的Xeon Nocona,其前端总线为800MHz。根据公式,其最大数据传输带宽为6.4GB/ s..
外频和FSB频率的区别:FSB的速度是指数据传输的速度,外频是指CPU和主板同步运行的速度。换句话说,100MHz的外部频率意味着数字脉冲信号每秒振荡1000万次;100MHz前端总线是指CPU每秒可接受的数据传输能力为100 MHz×64 bit÷8 byte/bit = 800 MB/s。
事实上,“HyperTransport”架构的出现在实际意义上改变了FSB的频率。之前,我们知道IA-32架构必须有三个重要的组件:内存控制器中枢(MCH)、I/O控制器中枢和PCI中枢,比如英特尔的典型芯片组Intel 7501和Intel7505,它们是为双至强处理器量身定制的。它们所包含的MCH为CPU提供了533MHz频率的前端总线,配合DDR内存,前端总线的带宽可以达到4.3GB/。然而,随着处理器性能的不断提高,给系统架构带来了许多问题。“HyperTransport”架构不仅解决了问题,还更有效地提高了总线带宽,如AMD皓龙处理器。灵活的HyperTransport I/O总线架构允许它集成内存控制器,使处理器可以直接与内存交换数据,而无需通过系统总线传输到芯片组。在这种情况下,AMD皓龙处理器中的前端总线(FSB)频率不知道从哪里开始。
4.CPU的位和字长
位:在数字电路和计算机技术中,采用二进制编码,编码只有“0”和“1”,其中“0”和“1”都是CPU中的一位。
字长:在计算机技术中,CPU在单位时间内(同时)一次能处理的二进制数的位数称为字长。因此,能够处理字长为8位的数据的CPU通常称为8位CPU。同样,32位CPU在单位时间内可以处理32位二进制数据。字节和字长的区别:由于常用的英文字符可以用8位二进制来表示,所以8位通常称为一个字节。字长的长度不是固定的,对于不同的CPU和字长是不一样的。8位CPU一次只能处理一个字节,而32位CPU一次可以处理四个字节。同样,字长为64位的CPU一次可以处理8个字节。
5.倍频系数
倍频系数是指CPU主频与外部频率的相对比例关系。在外部频率相同的情况下,倍频越高,CPU频率越高。但实际上,在外部频率相同的前提下,高倍频的CPU本身意义不大。这是因为CPU与系统之间的数据传输速度是有限的,一味追求高倍频来获取高频的CPU会有明显的“瓶颈”效应——CPU从系统获取数据的极限速度无法满足CPU运行的速度。一般英特尔的CPU除了工程版,都是用倍频锁定的,而AMD之前是不锁定的。
缓存
缓存大小也是CPU的重要指标之一,缓存的结构和大小对CPU的速度影响很大。CPU中的缓存运行频率非常高,通常与处理器同频,工作效率远大于系统内存和硬盘。在实际工作中,CPU经常需要重复读取同一个数据块,缓存容量的增加可以大大提高CPU内部读取数据的命中率,而无需在内存或硬盘中寻找,从而提高系统性能。但是由于CPU芯片面积和成本的因素,缓存很小。
L1缓存是CPU的第一层缓存,分为数据缓存和指令缓存。内置L1缓存的容量和结构对CPU的性能影响很大。然而,高速缓冲存储器都是由静态RAM构成的,并且结构复杂。在CPU的管芯面积不能太大的情况下,L1级缓存的容量不能做得太大。一般服务器CPU的L1缓存容量通常为32-256 KB。
L2缓存是CPU的二级缓存,分为内部和外部芯片。内部芯片二级缓存运行速度与主频相同,而外部二级缓存只有主频的一半。L2缓存容量也会影响CPU的性能。原则是CPU越大越好。目前国内最大的CPU容量为512KB,而服务器和工作站使用的CPU L2缓存高达256-1MB,有的高达2MB或3MB。
L3缓存(三级缓存)分为两种,早期的外置,现在的内置。其实际作用在于,L3缓存的应用可以进一步降低内存延迟,提高处理器在计算大数据量时的性能。降低内存延迟,提高大数据的计算能力,对游戏很有帮助。但是,通过在服务器领域添加L3缓存,性能仍有显著提高。例如,具有较大L3缓存的配置可以更有效地使用物理内存,因此它可以比较慢的磁盘I/O子系统处理更多的数据请求。具有更大L3缓存的处理器提供了更高效的文件系统缓存行为以及更短的消息和处理器队列长度。
其实最早的L3缓存应用在AMD发布的K6-III处理器上。当时L3缓存并没有集成到芯片中,而是由于制造工艺的原因集成到主板中。L3缓存,只能和系统总线频率同步,和主存区别不大。后来,L3缓存是英特尔为服务器市场推出的安腾处理器。然后是P4EE和至强MP。英特尔还计划在未来推出9MB三级高速缓存的Itanium2处理器和24MB三级高速缓存的双核Itanium2处理器。
但是L3缓存对于提高处理器的性能并不是很重要。比如配备1MB三级缓存的至强MP处理器,依然不是骁龙的对手,这说明前端总线的增加会比缓存的增加带来更有效的性能提升。
7.CPU扩展指令集
CPU依靠指令来计算和控制系统,每个CPU都设计有一系列与其硬件电路相匹配的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率最有效的工具之一。从目前的主流架构来看,指令集可分为复杂指令集和简化指令集两部分,而从具体应用来看,如英特尔的MMX(多媒体扩展)、SSE、SSE 2(流-单指令多数据-扩展2)、SEE3和AMD的3DNow!它们都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图像和互联网的处理能力。我们通常把CPU的扩展指令集称为“CPU指令集”。SSE3指令集也是目前最小的指令集。以前,MMX包含57个命令,SSE包含50个命令,SSE2包含144个命令,SSE3包含13个命令。目前SSE3也是最先进的指令集。英特尔Prescott处理器已经支持SSE3指令集。AMD将在未来的双核处理器中加入对SSE3指令集的支持,全美达处理器也将支持该指令集。
8.CPU内核和I/O工作电压
从586CPU开始,CPU的工作电压分为内核电压和I/O电压。通常,CPU的核心电压小于或等于I/O电压。其中,内核电压的大小取决于CPU的生产工艺。一般生产工艺越小,内核的工作电压越低。I/O电压一般为1.6~5V。低电压可以解决功耗过大和发热量过大的问题。
9.制造工艺
制造工艺的微米是指集成电路中电路之间的距离。制造技术的趋势是向更高密度发展。IC电路设计的密度越高,就意味着在相同尺寸和面积的IC中,你可以拥有更高密度和更复杂功能的电路设计。现在主要的180nm,130nm,90nm。最近官方已经表示有65nm的制造工艺。