a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 67|回复: 1

[计算机四级] 全国计算机四级考试复习纲要七(4)

[复制链接]
发表于 2012-7-31 20:48:14 | 显示全部楼层 |阅读模式
(3)超流水及超标量技术这是RISC为了进一步提高流水线速度而采用的新技术。( a' B0 c! O, m  S. q
(4)硬线逻辑与微程序相结合在微程序技术中,微指令的格式可分为3类:水平型、垂直型、混合型。水平型微指令一次就能控制多种信息的并行传送,具有执行速度快、效率高、灵活性强、微程序短等优点。垂直型微指令与机器码指令类似,规整直观,容易掌握,但效率低,速度慢。混合型则在两者之间。目前,大多数RISC芯片采用的微程序都是高度水平型的微指令或者是用毫微程序方式实现,以便减少或免去微指令的译码时间,直接控制通路操作来加快微指令的流水和解释。
& B/ u6 c! M; g& F2 @(五) 指令的流水处理* j, t- D- u9 E5 ^7 b
1.流水线的基本概念
! K5 \& [( j: ?) B1 \4 O* @(1)指令控制方式指令控制方式有3种,顺序方式、重叠方式、流水方式。顺序方式是指各条机器指令之间顺序串行地执行,执行完一条指令后才取下一条指令,而且每条机器指令内部的各个微操作也是顺序串行地执行。这种方式的优点是控制简单。缺点是速度上不去,机器各部件的利用率低。重叠方式是指在解释第K条指令的操作完成之前,就可开始解释第K+1条指令。通常采用的是一次重叠,即在任何时候,指令分析部件和指令执行部件都只有相邻两条指令在重叠解释。这种方式的优点是速度有所提高,控制也不太复杂,缺点是会出现冲突、转移、相关等问题,在设计时必须想办法解决。流水方式是模仿工业生产过程的流水线(如汽车装配线)而提出的一种指令控制方式。流水(pipelining)技术是把并行性或并发性镶嵌到计算机系统里的一种形式。它是一种把重复的顺序处理过程分解为若干子过程,每个子过程能在专用的独立模块上有效地并发工作的技术。在概念上“流水”可以看成是“重叠”的延伸。差别仅在于“一次重叠”只是把一条指令解释分解为两个子过程,而“流水”则是分解为更多的子过程。为了描述流水线的工作,我们画出时空图,它是分析评价流水线性能的重要工具。+ M! Z# w' j7 _8 }% t5 f
(2)流水线的种类2 i& a4 a& m0 E% p( w7 \0 v
①从流水的级别上,可分为部件级、处理机级以及系统级的流水。2 ^+ Z( M  m1 g* L9 d2 {
②从流水的功能上,可分为单功能流水线和多功能流水线。/ b0 {, x( L8 W+ K* Q* ?
③从流水的联接上,可分为静态流水线和动态流水线。这是针对多功能流水线而分的。: V9 g4 A( _+ ^- j) \7 e* [0 `
④从流水是否有反馈回路,可分为线性流水线和非线性流水线。
$ {* W; J; z" p; W⑤从流水的流动顺序上,可分为同步流水线和异步流水线。
5 `0 C+ Q' X+ o) D8 Z) M+ A⑥从流水线的数据表示上,可分为标量流水线和向量流水线。
回复

使用道具 举报

 楼主| 发表于 2012-7-31 20:48:15 | 显示全部楼层

全国计算机四级考试复习纲要七(4)

(3)流水的相关处理
* N6 L. E3 \$ {①局部性相关处理由于流水机器同时解释多条指令,这些指令可能有对同一主存单元或同一寄存器的“先写后读”的要求,这时就出现了相关,这种相关包括指令相关、访存操作数相关以及通用寄存器组相关等,它只影响相关的两条或几条指令,而且至多影响流水线的某些段推后工作,并不会改动指令缓冲器中预取到的指令内容,影响是局部的,所以称为局部性相关。解决局部性相关有两种方法:一种是推后法,即推后对相关单元的读,直至写入完成。另一种是通路法,即设置相关专用通路,使得不必先把运算结果写入相关存储单元,再从这里读出后才能使用,而是经过相关专用通路直接使用运算结果,这样可以加快速度。
% ]$ @& d5 m0 }2 s. a( o②全部性相关处理转移指令(尤其是条件转移指令)与它后面的指令之间存在关联,使之不能同时解释,执行转移指令时,可能会改动指令缓冲器中预取到的指令内容,从而会造成流水线吞吐率和效率下降,比局部性相关的影响要严重得多,所以称为全局性相关。解决全局性相关有三种方法:一种是猜测转移分支;一种是加快和提前形成条件码;还有一种是加快短循环程序的处理。条件转移指令有两个分支:一个分支是按原来的顺序继续执行下去,称为转移不成功分支。另一个分支是按转移后的新指令序列执行,称为转移成功分支。许多流水机器都猜选转移不成功分支,这样做时,猜对的机率很大,流水线的吞吐率和效率就会比不采用猜测法时高得多。除猜测法外,还可以尽早获得条件码以便对流水线简化条件转移的处理。这意味着能精确地预知流向哪个分支。事实上,完全有可能提前形成条件码,例如一个乘法算所需时间较长,但在运算之前就能知道其结果为正或为负,或者是否为零,因此,加快单条指令内部条件码的形成,或者在一段程序内提前形成条件码,对转移问题的顺利解决是很有好处的。由于程序中广泛采用循环结构,所以流水线大都采用特殊措施以加快循环程序的处理。例如使整个循环程序都放入指令缓冲存储器中,对提高流水效率和吞吐率均有明显效果。
0 y0 q' o1 ~- @③流水的中断处理中断和转移一样,也会引起流水线断流。好在中断出现的概率要比条件转移出现的概率低得多,因此只要处理好断点现场保护及中断后的恢复,尽量缩短断流时间即可。) I$ x# j% w8 O+ ]. s7 ~! `9 j
2.RISC中的流水技术  f$ Q6 o" d, O1 l' d9 k8 w. v
RISC中采用的流水技术有3种:超流水线、超标量以及超长指令字。
2 S' z' c- l, c" w, E! b+ {$ n(1)超流水线技术超流水线(superpipelime)技术是RISC采用的一种并行处理技术。它通过细化流水、增加级数和提高主频,使得在每个机器周期内能完成一个甚至两个浮点操作。它的实质是以时间换取空间。超流水机器的特征是在所有的功能单元都采用流水,并有更高的时钟频率和更深的流水深度。由于它只限于指令级的并行,所以超流水机器的CPI值稍高,CPI的含义是每个指令需要的机器周期数(clock cycles per instruction)。不过,它在时钟频率高方面的优点大于其在CPI方面的缺点。
5 i" G+ C2 J5 s(2)超标量技术超标量(superscalar)技术是RISC采用的又一种并行处理技术。它通过内装多条流水线来同时执行多个处理,其时钟频率虽然与一般流水接近,但它却有更小的CPI。它的实质是以空间换取时间。许多研究人员都曾建议过“多指令分发”(multiple instruction issue)技术,Agerwala和Cocke把这种方法作为RISC思想的扩充,并创造了Supersalar一词。超标量结构正变得越来越复杂。除了指令数目增加外,在执行程序时还要靠硬件来对指令的处理顺序进行动态控制。硬件的复杂性还将随着时钟频率的提高而增加。
9 z& D& }* b8 p5 d% q1 D# _% e" z(3)超长指令字技术超长指令字(very long instruction word)简称为VILW技术,它由LIW发展而来。VLIW和超标量都是80年代出现的概念,其共同点都是要同时执行多条指令,其不同在于超标量依靠硬件来实现并行处理的调度,VILW则充分发挥软件的作用,而使硬件简化,性能提高。例如,超标量同时分发4条指令已经困难,但是VLIW同时分发8条指令的产品已经指日可待。因此,VLIW有更小的CPI值,但也要有足够高的时钟频率。为使每个功能单元都保持在忙状态,在直线代码序列(straightline code sequence)中必须使经过调度的指令有足够的工作。这是使用跟踪调度(trace scheduling)技术,通过解开循环(unˉrolling loops)和跨过基本块调度代码(scheduling code across basic blocks)来完成的。总之,利用VLIW可以提高指令处理的并行程度,减小CPI,简化控制硬件而可以设置更多的运算器和扩大Cache容量,同时还能提高与内存间数据传输的速率,以便采用更高的时钟频率,使得在超标量潜力已尽的情况下把微处理器的性能再提高2至5倍以上。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-16 02:02 , Processed in 0.263328 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表