zoukankan      html  css  js  c++  java
  • 计算机组成原理——指令流水线

    计算机组成原理——指令流水线

    1. 综述

      为提高CPU利用率,加快执行速度,将指令分为若干个阶段,可并行执行不同指令的不同阶段,从而多个指令可以同时执行。在有效地控制了流水线阻塞的情况下,流水线可大大提高指令执行速度。博客园知识库:CPU流水线的探秘之旅

      经典的五级流水线:取址、译码/读寄存器、执行/计算有效地址、访问内存(读或写)、结果写回寄存器。链接:史上最经典的5级流水线

      流水线阻塞的情况有三种(baidu知道):

      1. 结构相关:指令重叠执行的过程中,硬件资源满足不了指令重叠执行的要求,发生资源冲突,这时将产生结构相关。解决的办法是增加硬件资源,如解决访存冲突就采用指令Cache和数据Cache分离的哈弗结构。

      2. 数据相关:当一条指令需要前面某条指令的执行结果,而两者正在并行执行的情况下,将产生数据相关。解决方式:数据重定向,或称为旁路技术。

      3. 控制相关:有跳转语句、分支指令,或其他改变IP值的指令,将产生控制相关。解决方法:分支预测技术,投机执行,延迟分支。

      

      若I1和I2数据相关,如I2需要I1的结果,则I2在其译码阶段被阻塞,直到I1全部完成才恢复流动。

      

  • 相关阅读:
    银行卡号每隔四位添加一个分隔符
    clipboard.js实现文本复制
    选中|复制文本
    react---之下拉菜单默认选中的值始终不变的问题
    create-react-app支持less配置
    数对
    安置路灯
    被三整除
    牛牛找工作
    C++ std::pair
  • 原文地址:https://www.cnblogs.com/yongheng20/p/5864267.html
Copyright © 2011-2022 走看看