处理器流水线原理

一、流水线原理介绍

        处理器流水线是一种用于提高处理器性能的技术,它将指令执行过程分成多个阶段,并允许同时处理多条指令。每个阶段都执行处理器指令执行过程中的一个特定部分,使得多条指令可以同时处于不同的执行阶段,从而提高了处理器的效率。

        当我们把洗车过程比作一个流水线时,可以将其分为几个阶段,类似于处理器流水线的概念:

  1. 准备阶段(Fetch): 在这个阶段,你准备好所有需要用到的洗车工具和清洗用品,比如水桶、洗车液、海绵和刷子。这类似于处理器从内存中提取指令并准备执行的过程。

  2. 清洗车身阶段(Decode): 在这个阶段,你开始清洗车身,使用海绵和洗车液擦拭车表面,去除污垢和尘土。这类似于处理器对指令进行解码,并准备好执行所需的操作。

  3. 清洗车轮阶段(Execute): 在这个阶段,你专门清洗车轮,使用刷子和水冲洗掉轮胎上的泥土和刹车灰。这类似于处理器执行指令所需的实际操作,如算术运算或数据传输。

  4. 冲洗阶段(Memory Access): 在这个阶段,你用水冲洗整个车身,确保所有清洗剂和泡沫都被冲洗干净。这类似于处理器从内存中读取或写入数据的过程。

  5. 擦拭和上光阶段(Writeback): 在这个阶段,你用软布擦拭车身并上车蜡,使车身光亮。这类似于处理器完成指令执行,并将结果写回到寄存器或内存中。

        整个洗车过程可以看作是一个流水线,通过分阶段的处理,你可以同时进行不同的操作,提高洗车的效率,就像处理器流水线提高了处理器的性能一样,而要付出的代价是什么呢?每个不同的阶段之间的延迟和额外的人工成本(硬件成本)。

        所以流水线化的一个重要特性就是提高了系统的吞吐量, 也就是单位时间内服务的顾客总数(单位时间执行指令的总数), 不过它也会轻微地增加延迟,也就是服务一个用户所需要的时间(一条指令执行所需要的时间)。

 二、实例分析

        一个执行某种计算的逻辑和一个保存结果的寄存器组成,时钟信号控制在每个特定的时间加载寄存器。这里假设这个计算逻辑需要300ps(皮秒,即10^(-12)s),加载寄存器需要20ps。

(一)、未流水线化的

GIPS是每秒千兆条指令(每秒十亿条指令),用这个单位来描述吞吐量。而吞吐量的倒数为延迟,就是一条指令完整执行所需要的时间,在这里是320ps,吞吐量为3.12GIPS。

 (二)、流水线化的

        在各个阶段之间放上流水线寄存器,这样每条指令都会按照三步经过这个系统, 从头到尾需要三个完整的时钟周期。操作1执行完A阶段,操作2就可以进入B阶段了,这样在稳定状态下,三个阶段都是活动的。在这个系统中,时钟周期是100ps+20ps=120ps,延迟是120ps *3 = 360ps,计算的到吞吐量是8.33GIPS。

        可以看到,我们将吞吐量提高到8.33 / 3.12=2.67倍,代价是增加了一些硬件成本,和由于流水线寄存器造成的少量的延迟(360 / 320 = 1.12)。

 (三)、流水线的局限性

1)不一致的划分

        通过所有的阶段的延迟和仍为300ps,但是将三个阶段分别划分为50ps、150ps、100ps,又因为时钟速率有是由最慢的阶段的延迟决定的,即必须设置为150ps+20ps=170ps,这样的话,A阶段会空闲100ps,C阶段会空闲50ps,吞吐量为5.88GIPS,延迟为510ps。

 2)流水线过深, 收益反而下降

        将计算分为6个延迟为50ps的阶段,这个系统的时钟周期为50ps+20ps=70ps,吞吐量为14.29GIPS,虽然我们将每个阶段计算时间缩短了两倍,但是吞吐量只提高了14.29/8.33=1.17,这是因为流水线寄存器的存在,导致吞吐量没有加倍,可以看出,随着流水线的加深,流水线寄存器的延迟成为了吞吐量提高的限制性因素。

 

  • 14
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清墨书晚风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值