****** 三十二 ******、软设笔记【计算机体系结构】-流水线技术

流水线技术
流水线技术是指在程序执行时,多条指令重叠进行操作的一种任务分解技术。把一个任务分解为若干顺序执行的子任务,不同的子任务由不同的执行机构来负责执行,而这些执行机构可以同时并行工作。


(1)计算执行时间
假定有某种类型的任务,可以分为N个子任务,每个子任务需要时间t,则完成该任务所需的时间为N x t。
*若以传统的方式,完成k个任务需要的时间是kNt。
*使用流水线技术,花费的时间是Nt + (k-1)t。
注意,如果每个子任务所需的时间不同,其时间取决于执行顺序中最慢的那一个。
<1>流水线的吞吐率
指在单位时间内流水线所完成的任务数量或输出的结果数量。
TP = n / Tk


n为任务数,Tk是处理完成n个任务所用的时间


<2>加速比
是指不采用流水线的执行时间/采用流水线的执行时间。
用来衡量并行系统或程序并行化的性能和效果。


(2)影响流水线的主要因素
*转移指令:因为前面的转移指令还没有完成,流水线无法确定下一条指令的地址,因此也就无法向流水线中添加这条指令。
*共享资源访问的冲突:后一条指令需要使用的数据,与前一条指令发生冲突,或者相邻的指令使用了相同的寄存器
*响应中断:当有中断请求时,流水线也会停止。对于这种情况有两种响应方式:
>精确断点法:立即停止,这种方法能够立即响应中断;
>不精确断点法:流水线中的指令继续执行,不再新增指令到流水线。


一、指令系统
指计算机所能执行的全部指令的集合,它描述了计算机内全部的控制信息和“逻辑判断”能力。
一条指令包括:
*操作码
*地址码


根据地址码代表的地址类型,指令系统可以分为:
*立即寻址
*直接寻址
*剪接寻址
*寄存器寻址
*寄存器间接寻址


二、RISC与CISC
*为提高操作系统的效率,人们最初选择向指令系统中添加更多、更复杂的指令来实现,导致指令集越来越大。这种类型的计算机,称为复杂指令集计算机(CISC)。
*对指令数目和寻址方式做精简,指令的指令周期相同,采用流水线技术,指令并行执行程度更好,这类是精简指令集计算机(RISC)。




复杂指令系统计算机(CISC)的主要特点
(1)指令数量多:指令系统拥有大量的指令,有100-250条。
(2)指令使用频率相差悬殊:最常使用的是一些比较简单的指令,80%的时候使用的是20%指令。
(3)支持很多中寻址方式:通常为5-20种。
(4)变长的指令:指令长度不是固定的,变长的指令增加指令译码电路的复杂性。
(5)指令可以对存储器单元中数据直接进行处理:典型的CISC处理器通常都有指令能够直接对内存单元中的数据进行处理,其执行速度较慢。


精简指令系统计算机(RISC)的主要特点
(1)指令数量少:优先选取使用频率最高的一些简单指令以及一些常用指令,避免使用复杂指令。
(2)指令的寻址方式少:通常只支持寄存器寻址方式、立即数寻址方式以及相对寻址方式。
(3)指令长度固定,指令格式种类少:因为RISC指令数量少,
格式相对简单,其指令长度固定,指令之间各字段的划分比较一致,译码相对容易。
(4)只提供了Load/Store指令访问存储器:只提供了从存储器读数Load和把数据写入存储器Store两条指令,其余所有的操作都在CPU的寄存器间进行。
(5)以硬布线逻辑控制为主:为了提高操作的执行速度,通常采用硬布线逻辑来构建控制器。
(6)单周期指令执行:因为简化了指令系统,很容易利用流水线技术使得大部分指令在一个机器周期内完成。
(7)优化的编译器:RISC精简指令集使编译工作简单化。

猜你喜欢

转载自blog.csdn.net/qq_40223688/article/details/80308840
今日推荐