64位体系结构的发展
摘要:64位技术揭开了信息时代的新篇章,目前已被普遍应用。本文介绍了64位的真正含义以及64处理器,并且举例对64位技术进行讲述。
引言
目前,64位处理器已经被我们广泛应用,但这并不代表着我们真正的理解64处理器。因此,对64位处理器有一个全面的了解是十分有必要的。被技术革新淘汰的32位处理器 ,它与64位处理器的区别在哪里呢?这样,我们就可以更加清晰的认识到64位处理器为我们带来了什么?
对于CPU有些了解的人也许都知道Pentium 3和Pentium 4,了解更深的,还会知道i386处理器把处理器从16位带到了32位的时代。处理器经过20多年的考验后,从32位跃升到64位,这可不同于1GHz到3GHz的频率提升。如果说频率的提升是把一条4车道的高速公路的时速限制从120公里提升到了360公里的话,那么从32位到64位的提升就是将这条提升了3倍时速限制的高速公路从4车道拓宽到了8车道,也就是说,这条公里的运力提升了一倍,这可是质的飞跃。
一、32位过渡64位之因
其实,处理器从32位跃升至64位,除了制造技术、处理器技术的不断进步外,也是与业内的两个巨头—Intel与AMD之间的竞争白热化这是分不开的。关心AMD的人应该知道,AMD的K7处理器Barton、Athlon XP受制于EV6前端总线带宽和核心工作频率提升能力不足等问题的困扰,无论是在性能、还是市场上的表现都不及Intel的P4处理器。AMD想要在性能上同Intel继续竞争,就必须突破目前前端总线带宽和核心工作频率给其带来的限制,而制造工艺的成熟和技术的发展,使得依靠新的处理器架构作为突破口成为了AMD的选择。而在AMD公司推出Athlon
64系列处理器后,Intel也匆匆推出了P4 3.2GHz Extreme Edition与之对抗,在此几个月后,著名的苹果电脑也推出了它的64位处理器PowerPC G5(PowerPC970)。
二、何为64位计算?
目前X86结构在32位寻址时最大空间只能是4GB,在很多大型数据库、数字内容的创建、视频内容的创建还有如CAD/CAM等需要将现实世界建模运算的软件都需要大量的内存容量,此外还有安全加密的需要则使得处理的数据成倍增长。在石油勘探、天气预测等需要大型数据运算的应用环境中,更是需要平台为运算提供更为充裕的内存容量。
64位平台的寻址能力达到了180亿GB,这在未来很长的一段时间内都可以解决中高端应用中的存储器寻址的瓶颈。64位平台除了可以提供64位的计算能力外,64位寻址也突破了以往32位寻址4GB的容量,更加适用于目前大数据处理的环境。
三、从理解64位到理解64位处理器
要清楚的理解64bit。首先,我们来看看一个很重要的概念:操作数和指令。“操作数”指的就是等待CPU处理的数据,同时也是指这些等待处理的数据所在的内存地址。而指令,就是指CPU通常所处理的指令。我们要说的64位处理器处理的64位指令,不是指这个指令具有64位长,其实是指其操作数最大可达64位,这也就要求存放操作数的通用寄存器也必须是64位的,64位处理器也就有64位的通用寄存器。同样,32位处理器(如Pentium 4,k7)的通用寄存器也就是32的了。
通用寄存器是CPU寻址和地址数据存放的地方。64位处理器的通用寄存器提升到了64位,增加程序员可见寄存器数量(这部分增加的寄存器称之为“寄存器扩展”),因而可供编程者使用的寄存器空间就更大,处理器的寻址能力和数据处理能力就会成倍的提高,性能就会更强。换句话来说,当64位处理器与32位处理器在处理同一条指令的时候,64位处理器访问内存,完成工作时消耗的等待时间就会更短,能处理的数据比32位处理器能处理的数据多一倍以上,同时,64位处理器能管理的内存容量也会比32位处理器的高出一倍,甚至是两倍。但需要说明的是,这部分寄存器扩展是需要64位操作系统、64位驱动程序以及64位应用程序的配合才可能发挥其突出的优势。
四、浅谈AMD 64位技术
与传统的x86或专有64位环境相比,AMD64环境有可能为很多种应用程序和使用环境带来好处。不能享受好处的应用程序不需要被移植,并可在AMD64环境中以全性能而运行。
AMD64最可能为以下类型的应用程序带来好处:需要大量内存寻址,如那些配备较大数据集的应用程序以及基于主机的桌面应用程序。必须管理大量同时用户或应用程序线程,如大型客户机解决方案以及用于客户关系管理、供应链管理、企业资源规划和数字权限管理等系统的解决方案的大型数据库和数据仓库应用程序。
图1 AMD 64处理器内存控制器的工作原理
2004年可以说是AMD重大变革的一年,基于Barton核心的 Athlon XP成为市场上最为畅销的AMD处理器, Athlon XP 2500+成为了用户心目中最具有性价比的处理器,为AMD的中低端市场打下了扎实的基础。古话说“逆水行舟,不进则退”,AMD也深知要与 Intel的P4抗衡,Socket 462架构越来越难了。因此AMD公司改变了销售策略,让Socket 462架构的产品去对付 Intel的赛杨系列。而主流和高端产品也就由Socket 754和Socket 939所代替。他把32位桌面处理器推向了64位,可以说是跨时代的一步。从此,桌面PC领域也就进入了64位的时代。在这方面AMD走在了Intel的前列。现在就介绍一下64位平台的主要技术革新:
(1)64位计算
(2)HyperTransport超级总线
(3)CPU内整合内存控制器
五、Intel 64位技术
Intel公司将其64位扩展技术的官方名称定为 Intel Extended
Memory64Technology(EM64T)。该技术在推出之时,认为将被未来的服务器、桌面甚至移动处理器所采用,能够支持64位代码运算和更大容量的内存。
和AMD64处理器类似,Intel EM64T处理器也加入了一种名为64位sub-mode的工作方式,采用64位平面线性寻址,加入8个新的通用寄存器,在SSE单元中也新加入了8个新寄存器。EM64T将同时支持32和64位运算,在运行64位程序时才会采用64位sub-mode工作方式,而在处理32位运算时依然是IA32工作结构。
而EM64T与AMD64也有不同之处,如AMD64中的NX位就与 Intel64位技术不尽相同。但总体来讲IA32e现在应该叫做EM64T和AMD64是互相兼容的,都可以运行64位代码。
Intel在IDF 2004大会上了展示了具备64位扩展技术的Xeon处理器,即 Nocona处理器。该款处理器在2004年第二季度已经面世。到2005年, Prescott处理器也采用这种技术来支持64位计算。Intel EM64T技术与AMD的服务器处理器0pteron的64位技术大体相同。新款至强( Nocona)的问世很可能是针对原来的64位处理器“安腾系列”的市场。
我们知道 Intel的Prescott支持64/32位混合模式,只需用软件方式就能打开 Prescott的64位功能。
新至强64的显著特性还在于支持32位应用程序的同时,运行64位应用程序,因此至强64处理器能够兼容所有的基于16位和32位软件,同时对64位架构下开发的应用软件也完全兼容。
Intel安腾2处理器是理想的64位解决方案,能支持当前大多数要求苛刻的关键业务企业和技术应用,包括数据库和商务智能,企业资源规划以及高性能计算等。与基于RISC的专有平台相比, Intel安腾2架构服务器能够以更低的成本提供相同或更出色的性能、可扩充性和可用性,以及更卓越的灵活性。