提起CPU架构或许很多朋友都不很了解,作为CPU设计中最为关键的一个环节,其架构的优劣,直接决定着处理器性能的表现,今天小编就带大家一起去探询这个复杂的世界!
这次我们针对目前中端处理器中最受关注的3款产品——Intel Pentium 4 630,Opteron 144,Athlon 64 3000+,希望对大家的选购有更进一步的帮助。
奔腾4 6xx架构浅淡:
在架构上,6xx系列处理器同之前的Prescott核心更加接近,不过它将L2缓存的容量增加了1倍,达到了2MB——这种改变大大增加了这款处理器的集成度,晶体管数量从原来的1.25亿个增至1.69亿个,DIE面积也从122mm2增至135mm2。对于64位扩展EM64T(Extended Memory 64 Technology)技术的支持是这个系列处理器最受业界关注的亮点。在64位操作系统的支持下,采用基于64位扩展技术编译的软件,新的Pentium 4 6xx处理器可以获得超过4GB以上的内存寻址能力。XD(eXecute Disable)bit技术也应用在了6xx系列处理器当中,之前的5xxj系列处理器也支持这项功能。Windows XP SP2开始提供了对于XD/NX功能的支持——微软称之为DEP(Data Execution Prevention)。微软估计50%左右的病毒攻击都是利用内存溢出来实现的,因此在支持这种技术的系统中,受到基于缓存溢出类型的危险代码攻击的几率将会明显降低。
EIST技术
Prescott核心把Intel处理器的功耗和发热量提高了一个崭新的“高度”,它采用0.09微米制程、集成了更多的L2缓存,更多的晶体管数量带来了功耗及热量的上升,功耗控制及节能技术也就显得更为必要起来。因此Intel便将以前应用于移动处理器上的EIST(Enhanced Intel Speedstep Technolog)移植了过来,用于改进Prescott核心处理器的功耗和发热量的问题。
Intel增加了三个方面的功能来增强处理器电源管理能力,这三个功能都能动态的调节处理器主频和电压,EIST(Enhanced Intel Speedstep Technolog)也只是其中之一:
1)C1E enhanced halt state
在Pentium 4 5xxJ系列处理器中增加了C1E halt state,它取代了以前的Pentium 4处理器和其它大部分x86处理器中的所常用的C1 halt state。C1 halt state由操作系统idel进行发出的HLT命令触发,然后处理器就会进入到低功耗的挂起状态(halt state)。最新的C1E halt state也是由HLT命令触发的,它是通过调节倍频来逐级的降低处理器的主频,同时还可以降低电压。显然C1E halt state比原来的C1 state具有更强大的功能。C1E halt State可以把6xx系列CPU的倍频降低到14X,对于P4 660来说这主频可以从原来的3.6GHz降低到2.8GHz,不过对于我们正在测试的Pentium 4 630来说,它的主频可以从3GHz降低到2.8GHz。
2)Enhanced SpeedStep
SpeedStep是一个根据处理器负载来调节主频和电压的模块,不过它的触发机制同C1E halt state是不同的。操作系统、BIOS的支持是必需的,操作系统通过ACPI进行调节。SpeedStep提供了更多的CPU频率和电压调节级别,因此可以比C1E halt更加精确的调节处理器的状态。
3)TM2 thermal throttling
最早推出的Pentium4处理器中就设计了温度回馈装置TM1(Thermal Monitoring 1),当处理器过热时,Pentium4处理器的主频会降低一半,此时功耗也会降低一半,从而降低处理器温度达到保护处理器安全的目的。 不过TM1的处理方式也有不少问题,Pentium 4处理器的TM行为并不为PC的其它部分所理解,比如内存会依然试图把处理器已经调用的但是却已经无力处理的数据不断的发送过来,频繁的工作会让内存的发热量也剧增。TM2机制则更加主动,它不会让内存陷入徒劳的循环之中。Intel把EIST引入到Pentium 4 6xx系列处理器中当然也是为了能有效的解决处理器发热量过大的问题,事实也正是如此,6xx系列处理器的功耗明显的比5xx系列有了改进。
皓龙1XX架构浅淡:
由于工艺限制,AMD Athlon 64集成1MB的二级缓存的良品率过低,所以现在的Athlon 64只能采用512KB的二级缓存,以提高良品率。但随着Intel Pentium 4 630的出现,Intel已经将二级缓存提升为2MB,在各项测试中,Intel Pentium 4 630凭借着更高的主频和更大的二级缓存,占尽了上风,Athlon 64显得力不从心。就在这危急存亡之际,AMD果断采取行动,改变市场策略,将原本面向服务器市场的集成1MB二级缓存的940封装Opteron 处理器改装为939针脚,面向桌面PC市场。
目前939封装Opteron已经全国几个大城市上市,据国外内各DIY高手测试,939封装Opteron 144在风冷情况下,主频可以上到
“Opteron”源自于拉丁文optimus——“最佳”的意思,它可以表达性能最好、最高的含义,它还含有灵活性、选择的意思。
Opteron微架构对32位X86软件提供固有支持的同时,又提供了灵活的升级途径来实现对AMD64架构的支持。Opteron处理器架构的设计是以“为用户提供新一代性能”为首要目标。要达到这一目标,需要在微架构的每时钟周期性能与处理器频率扩展能力之间实现良好的平衡,只有在两者都得到提高的同时,用户才真正可以得到由处理器结构改进而带来的真实性能的提升。
Opteron处理器改变了前一代(第七代)处理器的底层流水线结构,与前一代的微架构相比,Operon多出了两级管道,也就是说该产品拥有了12级整数操作流水线和17级浮点操作流水线,而更深的流水线使新一代的微架构拥有了更高的工作频率。Opteron处理器最初采用0.13微米SOI(Silicon on Insulator,绝缘硅)的工艺进行生产,而后来的产品采用90nm的工艺生产。良好的微架构保证了产品可以根据自造工艺的改善而得到很好的频率拓展。在拥有了更高的工作频率的同时,令Opteron性能进一步提高的关键则是提高了比以前更高的IPC(每时钟周期执行指令数)能力,这样就保证了用户得到的不会是一个只拥有高频率,但是性能却相对低下的产品。
与第七代微处理器结构相比,Opteron拥有更为出色的TLB结构,Opteron微架构增多了TLB入口的数量。通过把全局历史计数器中双峰计数器的数量增至16K,Opteron处理器加强了分支预测功能来提供更高的性能,特别是对较大的工作负荷。在高负载运算中,数据的正确性对运算的效率提高也是重要的一环。通过采用ECC(Error Correcting Code,纠错编码),处理器可以针对L1数据缓存、L2缓存数据与标签以及DRAM,对所有ECC保护阵列进行硬件排错。
在AMD新一代的Opteron处理器中,将兼容前几代处理器的增强指令,其中包括Intel MMX™和AMD’s 3DNow!™Professional技术(组合了增强的3DNow!技术和SSE)所支持的全部扩展指令。另外,新品AMD Opteron处理器还引入了对所有兼容SSE2、SSE3、X86-64技术所需要指令的支持。
AMD Opteron与我们常见的Athlon 64和Sempron 64处理器所不同的是芯片嵌入HyperTransport连接数量,Athlon 64和Sempron 64只有一条,可以提供6.4 GB/s的数据传输速率,而Socket 940 Opteron系列处理器可以提供三条连接。Socket 939 Opteron系列虽然同样具备三条HyperTransport连接总线,不过其中的两条在出厂时就已经被屏蔽。
Athlon 64架构浅淡:
在2004年末,AMD和IBM联合公布在晶体管工艺领域取得突破。这两家公司的工程师共同开发了一项称为Dual Stress Liner的技术,可以将半导体晶体管的响应速度提高24%。
其实这技术背后的原理是相当简单的。事实上,DSL很类似于英特尔在90nm生产技术中引入的应变硅技术。我们都知道,晶体管越微细化,运行速度就越高,但同时也会引发泄漏电流增加、开关效率降低,从而导致耗电和发热量的增加。而Dual Stress Liner通过向晶体管的硅层施加应力,同时实现了速度的提高与耗电量的降低。
换句话说,DSL能改变硅之间的原子格,从而让晶体管获得更快的响应时间及更低的热量。在一种情况下硅原子是被“拉开”的,而在另一种情况下则是“挤在一起”的,这通过把它们移到一个具有要么伸展,要么压紧的原子格的氮化物封闭层上来实现。与Intel使用的应变硅不同,来自AMD和IBM的DSL能够被用于两种类型的晶体管:NMOS和PMOS(具有n和p通道)而无需使用极难获得的硅锗层,硅锗层会增加成本,并且有可能影响芯片的产量。
DSL这种双重性性,让它比英特尔的应变硅更有效:DSL可以将晶体管的响应速度提升24%,而应变硅能提供的最大改进在15-20%。并且更重要的是,AMD和IBM 这项新技术对产量及生产成本并没有任何负面影响。由于在生产时无需使用新的生产方法,所以使用标准生产设备和材料便可迅速展开量产。另外,配合使用硅绝缘膜构造(SOI,绝缘体上硅)与应变硅,还可生产性能更高、耗电更低的晶体管。
新的Venice处理器核心是AMD第一款应用Dual Stress Liner技术的桌面处理器。这项新技术与目前的SOI技术共同使用可以让基于Venice的处理器能够达到更高的核心工作时钟频率。AMD工程师们预料,Dual Stress Liner和SOI一起结合可以让Athlon 64处理器的频率潜力有大约16%的增长。换句话说,基于Venice的CPU应该拥有达到2.8GHz的标称频率。
在生产技术转换过程中也引入了一些更具切实意义的东西。我们应该首先指出Venice处理器核心所支持的SIMD指令集有所扩展。目前基于Venice核心上的Athlon 64已经提供对SSE3指令的支持,就象基于象基于Prescott核心的Pentium 4处理器一样。然而,需要提醒你的是SSE3并不是一个完整的指令集,但仅仅只是SSE2指令集的扩展版本。
因此,Venice所支持SSE3指令集包括11条新指令:
(1)ADDPS,HSUBPS,HADDPD,HSUBPD
这几条是优化命令,它们能有效地优化标量向量乘积的计算,可以对程序起到自动优化的作用。这些指令对处理3D图形相当有用。
(2)ADDSUBPS,ADDSUBPD,MOVSHDUP,MOVSLDUP,MOVDDUP
这几条属于数据处理指令,这些指令可以简化复杂数据的处理过程,由于未来数据处理流量将会越来越大,因此Intel在这里应用的指令集最多、达到了五条。
(3)FISTTP
这属于数据传输命令,它有利于x87浮点转换成整数,并可以大大提高优化的效率。
(4)LDDQU
这属于特殊处理命令,这条指令主要针对视频解码,用来提高处理器对处理媒体数据结果的精确性。
在P4中SSE3还包括MONITOR、MWAIT两条指令,而在Venice核心中已经被省去了,因为它们只对Hyper-Threading技术起作用。
因此,基于Venice核心上的新Athlon 64处理器是目前支持最多SIMD指令集的处理器,包括3DNow!,SSE2和SSE3。从技术上来看,SSE3对于SEE2的改进非常有限,我们不应该期望SSE3指令集能为新Athlon 64带来大幅度的性能提升,而且性能提升也需要有软件支持为前提。尽管Intel在03年夏天就为软件开发者公布了SSE3指令指南,但目前支持SSE3软件的软件寥寥无几,而且都是一些特殊应用程序。
每推出一款新Athlon 64处理器核心,AMD工程师都会改良一下它们的整合内存控制器。虽然这可以在一定程度上增加处理器的性能,但更主要的是为了增加内存控制器对不同DIMM模块和不同配置的兼容性。
此前基于采用90nm 制程、Winchester核心的 Athlon 64处理器当与4条DDR400 SDRAM内存模块搭配使用时,性能将会受到一定程度是限制。如果在一个基于Winchester 核心的Athlon 64处理器的系统中使用4条单面DDR400 ,那么这些内存模块只能工作在2T默认模式下,这将会这导致使系统性能要比普通水准的性能低几个百分点。
如果使用4条双面内存模块装,DDR400 SDRAM将不能工作在它默认工作频率下,工作频率将会自动降到333MHz。AMD工程师们承诺在新的Venice核心中解决这个问题,他们也的确实现了他们的承诺。基于Venice的Athlon 64处理器能够没有任何限制地与四条单面DDR400 SDRAM内存一起运行,并且如果安装了双面DDR400 SDRAM DIMM的话,它们能够以2T时钟工作在400MHz下。
除了Venice内存控制器的兼容性得到改进外,内存控制器的性能也有显著的提升。在Venice运行在性能最佳模式时优,我们明显感受到增强型硬件数据预取和更多的写入联合缓存区(4个代替2个)所带来的性能提升。
所有这些改进正是基于Venice核心的Athlon 64处理器在同频下能胜过旧核心的原因,并且如果在系统中安装了四条内存模块的话,那性能提升将会更为明显。