计算机指令的流水线执行与流水线冒险

目录

计算机指令流水线

流水线冒险

结构冒险

数据冒险

控制冒险


计算机指令流水线

流水线方式的洗衣房可以以并行的方式提高性能

计算机执行指令,同样可以以流水线的方式并行

MIPS 流水化的数据通路

流水线冒险

下一周期不能按时执行下一条指令

结构冒险

数据冒险

一条指令依赖于前面某条执行的计算结果

add s0, t0, t1 sub t2, s0, t3

下一条指令需要气泡停顿等待前面计算出结果

前推/旁路(forwarding/bypassing)

不要等待计算结果保存到目的寄存器,增加一条额外数据通路,将计算的结果直接传给下一条指令计算的输入

但是并非所有冒险都能通过前推来避免气泡停顿

lw s0, 20(t1)
sub t2, s0, $t3

前推+阻塞

在需要使用前一个指令的结果时,前一个指令还没有拿到结果,此时需要停顿一下

还可以通过调整指令的顺序来避免阻塞等待

控制冒险

分支预测

更有效的分析预测

相关推荐
苹果嘉尔1213818 分钟前
Linux系统编程——网络(TCP)
linux·运维·服务器
网安蟹佬霸22 分钟前
区块链与智能合约安全实战:从Solidity审计到DeFi漏洞深度剖析
运维·前端·网络·安全·自动化·区块链·智能合约
昌原的儿子LEO35 分钟前
Linux进程知识点总结
linux·服务器·c语言·数据库
IT小白杨1 小时前
哪种浏览器适合跨境电商?2026场景化方案建议与架构对比
服务器·chrome·经验分享·架构·安全架构·指纹浏览器
koi77u1 小时前
嵌入式学习---进程与线程(1)
linux·服务器·学习
三8441 小时前
WordPress REST API 参数校验机制剖析:为什么 author__not_in 无法直接盲注?
服务器·前端·数据库
椿.湫1 小时前
kubenetes pod管理
linux·运维·服务器
kobe_OKOK_1 小时前
ubuntu server 打包成一个压缩文件,并且在另一台电脑中解压缩
服务器·数据库·ubuntu
敲代码还房贷1 小时前
安装wsl报错:HCS_E_HYPERV_NOT_INSTALLED
linux·python·ubuntu
竣达技术1 小时前
告别人工巡检!竣达 BMS 电池巡检云监控终端,为蓄电池筑牢安全防线
运维·监控系统·机房监控