处理器架构几十年来发生了翻天覆地的变化。AMD的新处理器架构已经设计出来有一段时间了,由于AMD没有透露性能方面的任何细节,目前还不清楚新架构是否存在问题和是否能继续保持很强的竞争力。
英特尔准备在12月正式发售自己的Kentsfield四核心处理器,相关主板厂商也已经做好了全面准备。看来这次英特尔又一次走在了前面。那么AMD的四核心架构究竟是怎样的呢?
我们目前确定的就是AMD已经将新处理器架构命名为巴塞罗那(Barcelona)。巴塞罗那虽然不是全新的架构,但也将是一个高度优化的AMD x86-64架构。新的优化是非常之多,而且有着很重要的意义。尽管没有更巨大的革命性意义,我们可以准确地说巴塞罗那对Opteron的进步就像英特尔的Core 2架构对Pentium M架构一样。虽然只是一小步,但是基于原有架构的新设计将把性能提升到一个崭新的高度。
现在就让我们进入到令人激动的AMD新处理器架构之旅吧。
首先我们了解到巴塞罗那将是下一代服务器和工作站Opteron CPU的核心架构。当然下一代桌面处理器也将基于该架构,但是细节上会有很多不同。不过目前AMD并未透露这些差别的详细信息。
目前四核心Opteron定位的市场包括两大块:高性能的科学计算,包括金融分析、石油勘探和生物科学等等;另外一块就是多媒体编解码,如制作HD-DVD影像、视频压缩和相关应用。
这两块市场的相同之处就在于都需要高性能的浮点运算能力。过去十年来应用软件已经过渡到了SIMD(单指令多数据流,即一个命令处理多个操作数)时代,所以AMD要做的事实际上就是不断增强心核心的SSE处理单元。SSE是英特尔提出的单指令多数据流扩展技术,对各类多媒体计算和应用都起到了强化的作用。
下面这个表格列出了巴塞罗那架构的改进与增强
| 特性 |
当前CPU |
巴塞罗那核心 |
| SSE执行宽度 |
64位 |
128位 |
| 指令预取带宽 |
16字节/周期 |
32字节/周期 |
| 数据缓存带宽 |
2 x 64位加载/周期 |
2 x 128位加载/周期 |
| L2缓存/内存控制器带宽 |
64位/周期 |
128位/周期 |
浮点调度深度
|
36 dedicated x 64-bit ops |
36 dedicated x 128-bit ops |
另外,新架构下SSE MOV指令可以在浮点运算的“store”管线中处理。新架构每周期可以处理2条SSE操作,移动一条SSE指令。具体的改进有点类似于英特尔的Core 2处理器。
不同于英特尔,AMD没有加宽指令处理管线,不过也采取了一系列措施来提高每周期指令(instructions per cycle)的处理效率。

巴塞罗那的基础构架做了很多增强调整
这些措施包括:
1.更高级的分支预测功能:AMD新架构增加了一倍返回堆栈容量,添加了更多分支历史比特数据,并且内建了一个512项的间接分支预测器(indirect branch predictor)。
2.32字节的指令预取。通过减少预取指令的分拆来大幅提升处理效率。
3.边带堆栈优化器(Sideband stack optimizer).堆栈优化将减少对单位带宽的占用。
4.乱序载入处理(Out-of-order load execution)。某些指令在实际运行当中可以绕过其他指令的处理,而且指令的存储也可以不按顺序进行,这在某些环境下对效率的提高有着很关键的作用。
其它改进还包括对转换旁视缓冲器(TLB) 的优化、附加的Fastpath指令、比特操作扩展和SSE指令集等等。