在个人电脑20多年的发展历史上,AMD在与Intel的竞争中似乎从来没有像现在这样占据优势,这一切似乎都要归功于它推出的x86-64系列64位CPU。
AMD的64位之路
要不是有这样的大好机会,AMD想跳出来自己研发处理器架构并与Intel分庭抗礼,是非常需要勇气的。但是机会终究还是出现了,AMD决定自行研发自己的64位处理器架构,并命名为x86-64。从这个名字我们就能看出,AMD的64位指令系统是从x86扩充而来的,并且,AMD让新的64位处理器兼容以往的32位指令集,也就是说,AMD的新处理器,不但是一颗64位处理器,同时也是32位的。在AMD64结构中,出现了一个新的所谓“长模式(Long Mode)”,作用是设置CPU按照64位方式运行。长模式的命名也许是参照了众人熟悉的“实模式”和“32位模式”。长模式不仅指具有64位性能,而且寄存器还可以扩展为64位并加入了新的寄存器。长模式是通过控制位来激活的,该控制位称为LMA(Long Mode Active)。当LMA未被激活时,处理器运行在标准的x86模式下,可以运行的是16位或 32位的OS和应用,而当LMA被激活后,64位扩展方式就可以执行了,这时就是新的64位CPU。长模式还被划分为两种子模式,即“64位模式”和“兼容模式”。这两种子模式由CS(Code Segment)寄存器中的D位和L位控制。“兼容模式”表示可以在64位模式下运行16位或32位程序,这类似于386处理器中的虚拟86模式,旧的x86模式(32位或16位)被称为“法定模式(Legal Mode)”。当进入64位长模式时 (LMA=1, CS.L=1 and CS.D=0),操作数的标准大小还是32 位,寻址却是64 位了。长模式的性能可以综合概括为:虚拟的64位寻址,寄存器扩展到64位、附加的8个寄存器(R8-R15)、附加的8个SIMD寄存器(XMM8-XMM15)、64位指令指针、Flat寻址模式。其中,附加的新的SIMD寄存器使多媒体寄存器总数达到16个,弥补了x86结构中的薄弱环节。为了使增加的寄存器更具有逻辑性,AMD采取的是一种对16位和32位寄存器的顺延方式。这种方式提高了时钟速度使CPU性能更优。
相比于32位处理器,64位处理器的核心是经过改进的,两者的异同主要有以下几点:一级缓存维持原有的128KB,其中64KB为指令缓存,64KB为数据缓存。根据AMD64处理器的架构,二级缓存的寻址能力允许二级缓存的容量在1MB到8MB之间。但尽管Athlon已经可以支持8MB的二级缓存,但事实上AMD从来没有这样做。服务器市场是AMD64处理器的一个主攻目标,所以大于1MB的二级缓存是十分有必要的。另外AMD未来还将会使用三级缓存。AMD64处理器的管线长度比Athlon增加了两级,这使得它可以运行在更高的频率上。AMD64处理器在分支预测单元上作了改进。AMD64处理器支持更大的翻译后备缓冲区(Translational Lookaside Buffers,TLB)。以下分别做一个简单总结。
网友评论