AMD64bitCPU架构.doc
《AMD64bitCPU架构.doc》由会员分享,可在线阅读,更多相关《AMD64bitCPU架构.doc(8页珍藏版)》请在三一办公上搜索。
1、AMD 64-bit CPU架构跃然舞台你真的需要一个64-bit的CPU吗?在我们开始进入讨论AMD的x86-64结构以及与其竞争的其他方案比较之前,我们首先要说明一下我们是否需要64-bit的处理器。微处理器的“进化”原则相当简单。技术进步导致原先在高端企业级上的产品不久之后就转到了普通用户的桌面系统上,就是说,企业级的产品需求永远是高于普通桌面PC的等级的。现在64-bit的CPU刚被应用在了高端机上,也就证明了,目前64-bit CPU并非是每个人都需要的。64位处理器针对的主要对象是目前对32位系统感觉受限制的用户。最容易得到的证明就是不少硬件设计人员都由衷地感到:“啊!我们确实需要
2、一块itanium来设计我们的下一代芯片!”现在的CPU设计已经到了令人难以置信的复杂,让AMD和Intel的工程师从运用64位处理器中提高的工作效率可以说是令人匪夷所思。同样的,一些用来设计汽车,卫星以及一些其他的非常复杂的产品的MCAD软件(机械计算机辅助设计软件)也将通过64位系统得到不少的性能提升。另外,超大规模的数据库软件也会从64位结构获得不少好处,原因是他们将从64位的大内存寻址区域获得不少优势。 可见其企业级应用是相当广泛的。例如,安全和加密技术这样需要64位内存寻址功能的程序,可以不用将数据分为几个部分来进行操作,这样带来的效率提高是相当明显的。AMD和Intel列举了大量6
3、4位系统的优势,并且将天气预报系统作为了最好的例证。生死相搏: x86-64 vs IA-64现在的AMD处于一种相当特殊的位置:一方面,AMD是相当弱小的,根本不可能阻挡Intel在各方面的优势以及成功,但另一方面,它又是相当有实力的,它开发的CPU足以与Intel产品在主流市场相抗衡,同时又发布了与Intel的IA-64完全不同的64 bit架构,这样的竞争是不同寻常的,因为这个竞争将把用户带到另一个CPU的战国时代,使用不同CPU的计算机之间程序不通用,使得用户必须决定究竟采用什么样的系统才是他们需要的,两个体系的大碰撞,最终意味着其中一个必须从PC舞台上消失。从结构上来说,Intel的
4、转移计划是相当简单的。他们将继续研发生产他们的IA-32架构CPU,包括Pentium III,Celeron以及即将到来的Pentium 4,用来面向那些只需要让32位程序得到最佳工作效率的用户,所有的用户都不能也不可能从这些CPU中得到64位系统的好处,因为它们根本不是64位的CPU。而如果你想升级到64位系统,那么你就必须放弃所有的32位程序,并且完整得移植到即将到来的IA-64体系,获得性能优势的同时,必须承受一定的痛苦。对于某些需要得到64位内存寻址系统的利益的用户来说,扩大内存需求已经是迫在眉睫的了,有些系统对于现有的4GB内存限制已经感觉到巨大的压力,特别是一些数据库系统,由于现
5、有的32位寻址而导致了一些速度和功能限制。这样,Intel推出了他们的64 bit处理器解决方案,那就是itanium。从itanium的设计上我们可以发现,对于这个解决方案来说,很不幸的的在于如果你和你的公司必须使用一些32位的x86程序,而且需要这些程序发挥最大效率,同时又必须转移到64位程序,那么一个单独的itanium系统,或者说纯粹的基于IA-64的系统将并非一个最好的解决方案。比较理想的方法是用一个Pentium 4处理器来负责32位系统的处理,而用一个itanium系统来负责64位程序。相对来说,很显然,Pentium 4是最好的32位处理器系统。事实上Intel在其IA-64刚
6、发布的时候就宣称,其不兼容原有的x86指令集,这样也就意味着使用IA-64的代言人的itanium时你将不得不放弃你现有的任何32位操作系统和程序。这对于用户的平台移植是有相当大的影响的,因为目前处于PC界的程序大多数都已经是32位的,少部分还是16位的。IA-64的指令集中也包括有不少原有的指令,但含义已经完全不同了,其内存定位于纯64位寻址,而原先程序基于32位寻址将导致程序出错。另外,很多Pentium 4处理器中支持的,例如out_of_order指令被剔除,作为64位系统的不兼容指令。所以,简单来说,32位程序将不能直接运行于itanium上。不过Intel似乎也发现这样一来对于平台
7、移植会受到用户的抵制,所以就通过软件模拟32位,让原先的32位程序能继续运行,不过效率要大打折扣。这样的方案将迫使Intel去面临一种选择,可能会丢失一大批用户,因为他们不可能完全移植到一个纯64位系统上,但同时也有其相当的好处,由于不需要原先的32位兼容系统,CPU将减少很多累赘,对于执行效率和发热指标来说,都将是一个非常大的优势。AMD的处理方式完全不同,因为他们并不打算追随Intel去进行那个不兼容的道路,鉴于RDRAM的前车之鉴,以及AMD在IA-64这条路上的落后态势,于是就有两种道路让他们选择:1)对64 bit方案持观望态度,并不介入,但这样虽然少了不少风险,却同时也意味着他们很
8、快会丢失已经争取到的现有的CPU界地位。2)设计一个新的64 bit Architecture(架构),用来和Intel的IA-64 CPU进行激烈竞争。我们刚才提到了AMD不得不将面对一个CPU的位提升问题,他们不会选择第一种方案,显然,他们必须在现有客户基础上,选择后一方案。由于其计划推出晚,且影响不如Intel大,就意味着他们不可能受到类似Intel的新架构那样重视,所以他们能做的只能是类似15年前Intel做的那样,改编并延续x86指令集,扩展到64 bit支持,使CPU不仅能完整支持32位程序,还能兼容64位系统指令,并称之为x86-64架构。这个解决方案的优势是十分显著的,你可以从
9、AMD提供的系统中直接得到32位的最佳解决方案,同时也能得到64位系统的兼容。两者被合并到一个内核。这就减轻了用户对选择64位系统的痛苦,因为他不必等待一个最佳时刻去移植他的程序到一个纯64位系统上去,x86-64可以提供一个既能运行32位程序又能运行64位程序的平台,而且是在同一个芯片上就可以完成所有功能。 不过也相当不幸,由于必须兼容过去的x86指令集,所以原先的x86指令集中一些固有的诟病也被保留了,就如同试图腾空的飞机被装载了过多辎重,显得有些累赘,CPU将必须被设计得十分庞大,晶体管数量将会是一个天文数字,不论在散热还是在工作效率上来说,都值得怀疑。我们就此通过Email向AMD 方
10、面表达了我们的忧虑,得到的回答是:“我们不认为性能表现会受到结构的约束,我们更相信运行效率将会随CPU的频率提高而成正比地上升。”显然,AMD对他们的CPU的性能是相当有信心。简单来说,用x86-64可以让你利用64位的优势,同时又对于原先的x86指令集保留,完全兼容。正如15年以前Intel在它的80386中所做的一样,同时兼容32位和16位程序,现在AMD也在让它的K8做同样的事情。架构的重要性在让我们了解IA-64和x86-64这两个架构之前,让我们先来看看程序是如何运作的:首先,程序员运用编程语言来编辑程序,这些程序在这个阶段还不过是一些文本文件。接下来,语言编译器将这些文本编译成机器
11、语言,这样这个程序就成为了计算机可以读懂的机器语言了。最后计算机执行这些机器语句,并且将结果展现出来。从这个过程中,我们发现,编辑程序时,程序的算法是相当重要的,这影响到了程序的工作效率,我们可以将程序员的编程能力比喻成“词汇量”,他的词汇量大,那么他编辑的程序就会相当简洁明了,可看性强,而执行效率高。同样,在编译过程和计算机执行过程中,架构就成了编译器的“词汇量”,假设一个架构繁杂而且命令重复性大,转换过程多,机器指令长度长,就会导致资源的大量浪费。这就意味着,如果编译器的词汇量小,那么无论计算机的频率有多高,执行单条命令的速度有多快,或者同时可以执行多少条指令,它的浪费将是相当大的,因为它
12、影响了整个系统,对所有程序都有影响。在目前这样一个工业发达的时期,竞争的任何一方都不可能在计算机频率和CPU的具体结构上超越对手很多,这样,一个机器执行效率问题就相当重要了,也就是说,CPU架构是影响计算机运行速度的很重要一环。IA-64架构的运行作为与AMDx86-64架构的对比,我们来看看Intel所制定的IA-64架构有什么技术特点和其运作情况。相对于AMD的x86-64架构,IA-64显得就相当的清晰明了了,首先,IA-64不从硬件上支持x86的很大一批指令集,也就意味着现有的包括Microsoft Windows 2000和Microsoft Windows Me。其次,它拥有完整的
13、64位CPU的一切特性和功能,属于不折不扣的高端产品,能在它上面运行的程序只有纯64位操作系统和应用软件。最后,它的软件前景并非相当乐观,但却并不悲观,毕竟目前个人电脑的软件业霸主Microsoft已经打算开发基于IA-64系统的64位操作系统,据悉可能是Windows 2000的64 bit版本,或者是Windows 2000的后继者Whistler的64位版本。Intel认为,目前的架构开发面临一些挑战。1、 目前的工业标准体系架构都是连续型的执行,效率低(执行完前面的命令才能继续后一个命令,不能并行执行);2、 是目前的低效率的单指令;3、 程序中不可预知的分支导致的预测错误从而引起效率
14、降低;4、 对内存寻址的依赖性;5、 寄存器和内存寻址受到数量限制;6、 流水线的长度和循环问题;这些仅仅是一些基础的挑战,而Intel在试图面对这些挑战时,觉得如果不废除现有的x86指令集这样一个繁复的CISC指令集显然只是一种修修补补,不能大幅度提升性能。在过去,CISC(复杂指令集)指令集和RISC(精简指令集)指令集这两种指令集曾经进行过一番斗争,最终,IBM等公司采用了RISC技术,占据了高端的服务器、大型终端和大型计算机领域,而Intel采用了CISC(后来包含了一定的RISC指令成分),占领了低端和PC市场。竞争到现在这样一个阶段,显然Intel认为CISC已经发展到尽头,它对资
15、源的低利用效率已经不能再依靠高频率来弥补,所以决定将整个架构更偏向RISC。IA-64就是这样的一个产物,当然由于CISC在某些应用中的优势,Intel也善于结合CISC和RISC指令进入一个架构,所以它还是保留了不少CISC指令。在这么我们这样一篇技术简介性文章中,我们并不能将IA-64这样一个全新的架构通过短短的一段话向各位讲解清楚,但我们可以说明一下它工作的优势,它是如何面对上面这些问题的:1、 更改现有工业标准体系,建立IA-64架构后将采用并行运算方式的体系;2、 单指令简化,即每条指令执行的功能减少,但执行效率变高;3、 由于运行指令并行化,并且采用了程序控制指令,使分支预测更加准
16、确,提高运算的利用效率;4、 增加程序运行时的并行运算预测能力,使内存中需要的数据更容易在Cache中命中;5、 增加内存的总容量,扩展到2的64次方,由原先的4GB内存扩展到惊人的180亿GB容量,并支持64位浮点数和32位浮点数,高精度的数字计算,提供高达82位的数据宽度。6、 利用GR Stack来降低save/restore需要的调用,减少寄存器使用数量,使用的是Register Stacker Engine(RSE),使用全新的寄存器,总共128个64位寄存器,其中32个是静态的,96个是动态的。7、 现有流水线采用的是顺序结构,一条运行结束后进行下一条,IA-64采用并行流水线结构
17、,提高了工作效率。8、 高速运算功能,在平行运算时,提供了2倍于运算频率的运算速度,简单来说,如果同样做连续除法,在相同时间内,若原有的架构可以运行3次,那么在频率相同的情况下IA-64架构CPU可以进行6次运算。 我们可以发现,itanium的性能确实强过IA-32体系产品很多,如果以同样频率的Pentium III Xeon 500和itanium 500MHz相比的话,性能比较应该在2:15左右。IA-64还有很多特性,但我们不能一一讲述,其最主要的功能已经基本提到了。目前,IA-64的第一批产品itanium已经正式发布,并将在2001年的第二季度交付使用,已有约5000片在500-8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AMD64bitCPU 架构
链接地址:https://www.31ppt.com/p-2397602.html