Intel系列CPU的流水线技术的发展

Intel系列CPU的流水线技术的发展
Intel系列CPU的流水线技术的发展

Intel系列CPU的流水线技术的发展

流水线技术一开始就是在巨型机、大型机上应用,后来Intel公司把这项技术运用于微处理器,这项技术的根本目的就是合理利用现有硬件,提高CPU处理能力。由于使用多种技术包括硬气件发展提高了微处理的运算速度,同时也拓展了微型机的应用范围。随着硬气件的发展以后还会出现这种“自上向下”的发展,今天我们使用的微型机就是往日的巨型机、大型机。流水线技术早在 Intel 的 X86 芯片中均得到了实现。流水线的使用使 CPU 的性能得到了很大的提升,而 Pentium 系列 CPU 产品更是一个高级的超标量处理器。

在Pentium III 的时候主要采用的技术1. 采用超标量双流水线结构超标量流水线设计是Pentium 微处理器技术的核心。所谓超标量就是处理器内部含有多个执行单元来完成多条指令的同时执行。Pentium 有两条分别称为U 和V 的指令流水线,各自有独立的算术逻辑单元ALU 及高速缓存结构。这种双流水线并行作业的方式,使得Pentium 在每个时钟周期内可同时执行两条指令。此外,还有一个执行单元,保证同时完成一条浮点运算指令。在Pentium III 时采用3 条独立的12 级超标量流水线。2. 分支预测技术为了减少由于转移导致流水线的效率损失,Pentium 采用分支预测技术来动态预测指令的目标地址,从而节省了CPU 的执行时间。通常在用户程序中包含不少的条件转移指令,在流水线计算机中,这些转移指令由于产生分支可能使予取和予译码指令作废。Pentium 内部有两个予取指令缓冲队列,在执行条件转移指令前,一个以顺序方式予取指令,另一个以转移方式予取指令,后者也称作分支目标缓冲器BTB(Branch Target Buffer),这是一个小的cache,它基于转移指令,尤其是循环转移的固有特点,可以认为在大多数情况下,当一条转移指令被再次执行时,其成功与否及转移目标与上次相同。据此可造动态的分支目标预测硬件。BTB 是一种效果较好的硬件机制,统计表明BTB 的容量较大时(如超过256 项)预测准确率可达90%。通过这种动态分支预测技术,不管是否产生转移,所需指令都在执行前予取好。3. 通过乱序来优化指令流水线在执行中采取了无序执行(out-of-order processing)技术。即当某条指令需要一些数据而未能立即执行完毕时,它将被剔出流水线并等待数据,CPU 则马上执行下条指令,就好比在装配线上发现某件产品不太合格,而被淘汰,等待返工一个道理。这样,可以防止一条指令不能执行而影响了整个流水线的效率。

随着CPU 频率不断地攀升,Intel 总是在自己某个核心的处理器到达极限之时采用新的、更长流水线的核心来消除频率的瓶颈(流水线越长,频率能更高)。但是这样做势必会带来一系列的问题。首先,由于现有芯片制造工艺的限制,频率的提升带来高功耗、高发热量的问题。尽管流水线增长,频率提升的空间相应增大,但是处理器频率提升的其它瓶颈却无法解决。而且过长的流水线意味着更加复杂的内部结构,生产的良品率也难以保证。其次,在CPU 的工作中,指令往往不是孤立的,许多指令按一定的顺序执行才能完成一个任务。而一旦某个指令在运算过程中发生了错误,或者执行了没有用的指令,那

么其后与之相关的指令就都没有用了。流水线深度一直是影响处理器效率的重要因素,流水线深度的增加可以让处理器时钟频率进一步提高,但是在有些实际应用中, 已经被证明了处理器流水线的长度与性能成反比。同时容易产生分支预测等问题,Prescott 核心的P4 达到的31 级流水线长度,要比当年的Pentium III 和Athlon 处理器高出许多,Netburst 微架构已无法解决这一问题, 原本计划使基于Netburst 微架构的下一代处理器Tejas 突破

5GHz, 但最终止步于3.8GHz。Prescott 最终走上失败之路。最后Intel 公司不得不放弃Pentium IV,频率至上的CPU 理论也被推翻。随后就进入了Core 架构,也就是多核时代,多个CPU 封装在一个芯片中,协调工作,来达到更高的性能,Netburst 架构和Prescott 架构被完全抛弃,流水线的深度再次回到了Pentium III 时代的 3 段12 级。

在Core架构中,其指令流水线深度达到14级,这个深度是要高于Pentium M的12级,但是却比AMD的K8处理器架构的17级要低上3级。目前的Core架构是兼顾执行效率和降低功耗的折中设计。流水线的“条数”与“级数”是完全不同的概念。能够完整执行各种指令的一系列功能单元组成“一条”流水线。而关于流水线级数,可以这样简单理解:一条流水线所包含的功能单元一般可以被划分为多个部分,它可以被划分成几个部分,就称这条流水线是“几级”的。Core微架构的14级有效流水线与Prescott核心的31级有效流水线的对比,也只有参考意义。那些仅仅根据这个数字的对比就断言Core微架构只能达到很低的频率的说法是不具有足够的说服力的。Conroe XE 3.33GHz处理器的存在已经让很多相信这个说法的人大吃一惊。而实际上,已经有很多玩家在风冷下将Conroe处理器超频达到4GHz 以上的频率。Intel酷睿CPU采用多核芯片,英特尔酷睿(TM)微结构体系结构采用了共享二级缓存的做法,有效加强了多核心架构的效率。这样的好处是,两个核心可以共享二级缓存,大幅提高了二级高速缓存的命中率,从而可以较少通过前端串行总线和北桥进行外围交换。除此之外,Core微架构加入了五大重要创新,其中包括宽区动态执行(Intel Wide Dynamic Execution)、高级智能高速缓存(Intel Adcanced Smart Cache)、智能内存访问(Intel Smart Memory Acess)及高级数字媒体增强技术(Intel Adcanced Digital Media Boost)、智能功率能力(Intel Intelligent Power Capability)。

流水线技术的发展,对于未来的CPU 流水线技术的发展,个人认为可能会有以下的几个方面。

1. CPU 线程的提高CPU 线程会越来越多,多线程的使用,CPU 的流水线效率和速度得到了使很大的提高,所以未来CPU 可能会出现一个CPU8 个、16 个、32 个甚至64 个线程的情况。

2.更多条数的流水线就像GPU 那样已经发展到32 条流水线并行工作,流水线条数的增加,使CPU 在相同的时间内完成更多的工作,相当于提高了CPU 的性能。Cache

3.提供更新的Cache 搜索算法和轮换算法Cache 不是越大越好,因为CPU 性能和Cache 的大小呈负指数二项式增长。当Cache 大小达到一定水平后,如果不及时更新Cache 的搜索算法和Cache 的轮换算法,CPU 的性能没法得到本质的提高。

4.一定量地减少流水线深度后PC 时代,是移动运算高发展的时代,所以CPU 应该向低功率,高性能的方向发展,所以流水线深度可能更小,但CPU 采用更好的架构以及更高的工艺来制造,达到和长流水线一样甚至更高的性能。

5.异步架构流水线的使用个人认为异步架构的使用是未来的一个必然趋势。

来源:

1..https://www.360docs.net/doc/a514547281.html,/more.asp?id=28184 4.Pentium 微处理器

2.百度文库 https://www.360docs.net/doc/a514547281.html,/view/46609d0d844769eae009edb0.html 5.现代微机结构_Pentium and core2

3.百度文库 https://www.360docs.net/doc/a514547281.html,/view/657b2578168884868762d666.htm l

4.https://www.360docs.net/doc/a514547281.html,/jdl2011/article/details/7754848

5.https://www.360docs.net/doc/a514547281.html,/file/ora66psxxi3ueivrvesuopsv_5.html

6.https://www.360docs.net/doc/a514547281.html,/view/63431.htm 酷睿-百度百科

相关主题
相关文档
最新文档