下载此文档

X86架构.docx


文档分类:IT计算机 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
2019-7-14华为机密,未经许可不得扩散第2页,共3页
英特尔推出X86架构已满20年了,同486相比,Pentium向前迈进了一大步,而PII的前进步伐则没有这么大了,X86CPU的发展似乎已到了尽头。
英特尔非常清楚,是X8的原因之一就在于X87指令使用一个操作数堆栈。如果没有足够多的寄存器进行计算,你就不得不使用堆栈来存放数据,这会浪费大量的时间来使用FXCH指令(即把正确的数据放到堆栈的顶部)。
(5)4GB限制
这似乎不是问题,但是,在6年前,主流PC只有4MB内存,而目前的绝大部分PC装备了64MB以上的内存,是以前的16倍,所以,在下一个十年,PC内存突破1GB绝对不会令人惊讶,而且目前的大型服务器已经使用了1GB以上的内存,突破4GB内存的情况很快就会出现。
(5)芯片变大
所有用于提高X86CPU性能的方法,如寄存器重命名、巨大的缓冲器、乱序执行、分支预测、
2019-7-14华为机密,未经许可不得扩散第2页,共3页
X86指令转化等等,都使CPU的芯片面积变得更大,也限制了工作频率的进一步提高,而额外集成的这些晶体管都只是为了解决X86指令的问题。
二、下一代指令集:IA—64
Merced是第一款使用IA—64的处理器,这款CPU具有64位寻址能力和64位宽的寄存器,所以我们称它为64位CPU。由于具有64位寻址能力,它能够使用1百万TB的地址空间,足以运算企业级任务;64位宽的寄存器可以使Merced达到非常高的精度。
粗看起来,Merced很像其他的64位RISCCPU:指令的长度是固定的,由一个指令、两个输入和一个输出寄存器组成;指令只对寄存器操作;超标量,具有多个不同的流水线或执行单元,能够并行执行许多指令。那么,Merced的不同点在哪里呢?
(1)显性并行性
尽可能并行工作是提高CPU性能的最佳方法,如果你的CPU每个时钟周期可以执行8个指令,而竞争对手的CPU每个时钟周期只能执行4个指令,那么,他只能制造一个时钟频率是2倍于你的CPU,才能在速度上赶上你。我们知道,程序分支和指令依赖是造成难以并行执行许
多指令的障碍,而Merced采用的方法是让编译器告诉CPU哪些指令可以一起发布并执行。Merced接收来自于编译器的128位包,每个包含有3个40位指令和1个8位模板。每个指令又由3个7位寄存器地址(即可以使用2^7=128个寄存器)、一个6位预测寄存器和13位指令代码,其中,最有趣的莫过于模板。
这个8位模板包含了不同指令间的并行信息,编译器将使用模板告诉CPU,哪些指令可以同时发布。模板也包含了包的结束位,用以告诉CPU这个包是否结束,CPU是否需准备捆绑下两个或更多的包。现在你明白为什么EPICCPU的马力如此强劲了吧,高端CPU可以一起执行几个包。由于IA—64架构的64个通用寄存器和64个浮点寄存器(编注:原文如此),使CPU可以同时发布许多指令。当然,强悍的EPICCPU也需
要一个强悍的编译器,编译器的工作是检查指令依赖情况,把并行指令放在一起,并重新排序,使执行单元可以很顺畅地工作。
(2)分支预测
在现代CPU中,分支预测的正确率可以达到90%〜95%,虽然看起来还不坏,但当预测出错时,CPU就不得不清洗整条流水线。10%的预测出错率会让CPU损失3

X86架构 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息