流水CPU

并行处理技术
人们追求的目标之一是很高的运算速度,因此并行处理技术便成为计算机发展的主流。
冯•诺依曼的体系结构,采用的是串行处理。
这种计算机的主要特征是:计算机的各个操作(如读/写存储器,算术或逻辑运算,I/O操作)只能串行地完成,即任一时刻只能进行一个操作。
而并行处理则使得以上各个操作能同时进行,从而大大提高了计算机的速度。
并行性有着两种含义:一是同时性,指两个以上事件在同一时刻发生;二是并发性,指两个以上事件在同一时间间隔内发生。

计算机的并行处理技术可贯穿于信息加工的各个步骤和阶段,概括起来,主要有三种形式:时间并行,空间并行,时间并行+空间并行。
时间并行 指时间重叠,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
空间并行 指资源重复,以“数量取胜”为原则来大幅度提高计算机的处理速度。
时间并行+空间并行 指时间重叠和资源重复的综合应用,超标量流水技术。

流水CPU的结构
流水计算机的系统组成
通常由三大部分组成:指令部件、指令队列、执行部件。这三个功能部件可以组成一个3级流水线。
程序和数据存储在主存中,主存通常采用多体交叉存储器,以提高访问速度。

流水CPU的时空图
计算机的流水处理过程非常类似于工厂中的流水中配线。
首先把输入的任务(或过程)分割为一系列子任务,并使各个子任务能在流水线的各个阶段并发地执行。
当执行连续不断地输入流水线,在流水线的输出端连续不断地吐出执行结果,从而实现了子任务级的并行性。

流水CPU中的一个指令系统的任务分解。指令周期包含四个子过程:取指令(IF)、指令译码(ID)、执行运算(EX)、结果写回(WB),每个子过程称为过程段(Si),这样,一个流水线由一系列串联的过程段组成。
各个过程段之间设有高速缓冲寄存器,以暂时保证上一过程段子任务处理的结果。
在统一的时钟信号控制下,数据从一个过程段流向相邻的过程段。

非流水计算机的时空图
对非流水计算机来说,上一条指令的四个子过程全部执行完毕后才能开始下一条指令。
每隔4个是机器时钟周期才有一个输出结果。

流水计算机的时空图
对流水计算机来说,上一条指令与下一条指令的四个子过程在时间上可以重叠执行。

超标量流水计算机的时空图
一般的流水计算机因只有一条指令流水线,所以称为标量流水计算机。
超标量流水是指它具有两条以上的指令流水线。
每一个时钟周期可以执行两条指令。

流水线分类
指令流水线
将指令流的处理过程划分为取指令、译码、取操作数、执行、写回等几个并行处理的过程段。
算术流水线
如流水加法器、流水乘法器、流水除法器等。如STAR-100为4级流水计算器,TI-ASC为8级流水运算器,CRAY-1为14级流水运算器等。
处理机流水线(宏流流水线)
由一串级联的处理机构成流水线的各个过程段,每台处理机负责某一特定的任务。
数据流从第一台处理机输入,经处理后被送入与第二台处理机相联的缓冲存储器中。
第二台处理机从该存储器中取出数据进行处理,然后传送给第三台处理机,如此串联下去。

流水线中的主要问题
资源相关
资源相关当前所需的硬件部件正在为之前的指令工作。
资源相关是指多条指令进入流水线后在同一机器时钟周期内争用同一个功能部件所发生的冲突。
一条流水线由五部分组成分别为取指令(IF)、指令译码(ID)、计算有效地址或执行(EX)、访存取数(MEM)、结果写寄存器堆(WB)。
解决冲突的办法:
流水线停顿,产生空泡,延后一个周期;
增设一个存储器;
延后一个周期。
数据相关
数据相关:需等待之前的指令完成数据读写。
解决数据相关冲突的方法:
流水线停顿;
插入nop指令;
软件产生空泡。

控制相关(控制冒险)
控制相关冲突是由转移指令引起的。
控制相关需要根据之前的指令结果决定下一步行为。
延迟转移法
“先执行再转移”即发生转移取时并不排空指令流水线。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值