指令系统、流水线

指令系统

分类



寻址方式

设计

能够改变控制流的指令:分支、跳转、过程调用、过程返回

操作码设计

MIPS




流水线

MIPS流水线

改进后


取指(IF)

译码(ID)

执行(EX)

存储器访问

寄存器-寄存器 ALU

寄存器-立即值 ALU

分支

访存(MEM)

Load/Store

分支

写回(WB)

性能分析

吞吐率(TP)

单位时间流水线完成的任务数或输出的结果数

实际吞吐率


效率


相关

结构相关

某些指令组合在流水线中重叠执行时,产生资源冲突

解决方案:指令和数据分离;添加"气泡"

数据相关

指令在流水线中重叠执行时,流水线可能改变指令读/写的顺序,使得读/写的操作顺序不同于非流水线的实现顺序

分类
  • 写后读相关(RAW)
  • 写后写相关(WAW)
  • 读后写相关(WAR)
定向技术(旁路/短路)


流水线锁

插入暂停周期

流水线调度(指令调度)

编译器重新组织代码顺序消除暂停

控制相关

分支指令带来的暂停

减少流水线处理分支指令时的暂停时钟周期数有如下两种途径:

  • 在流水线中尽早地判断出分支转移是否成功。
  • 尽早地计算出分支转移成功时的PC值(即分支的日标地址)。

延迟分支


向量处理机

向量处理方式

  • 水平处理方式
  • 垂直处理方式
  • 分组处理方式
相关推荐
皮卡丘不断更3 小时前
告别“金鱼记忆”:SwiftBoot v0.1.5 如何给 AI 装上“永久项目大脑”?
人工智能·系统架构·ai编程
成茂峰3 小时前
软考高级·系统架构设计师 | 四、信息技术安全知识
安全·信息安全·系统架构·架构设计师
牵牛老人3 小时前
【Qt 开发后台服务避坑指南:从库存管理系统开发出现的问题来看后台开发常见问题与解决方案】
开发语言·qt·系统架构
行走正道6 小时前
CANN仓库日志系统架构 分级日志与性能开销优化源码解读
系统架构·cann
若风的雨1 天前
【deepseek 学习】RT-Thread 简介
系统架构
学历真的很重要1 天前
【系统架构师】第二章 操作系统知识 - 第二部分:进程管理(详解版)
学习·职场和发展·系统架构·系统架构师
智算菩萨1 天前
【网络工程师入门】DNS域名系统的深度解读与实践应用指南
网络·网络协议·系统架构
Coder_Boy_1 天前
企业级项目高并发监控场景-Spring Boot 集成 Graphite & InfluxDB 实战文档
java·spring boot·后端·系统架构
盈创力和20072 天前
本地可视 + 超低功耗:带 E-Ink 屏的 LoRa 温湿度终端系统架构与功耗优化实践
系统架构·电子墨水屏·lora温湿度传感器·无线温湿度监测·超低功耗设计
成茂峰2 天前
软考高级·系统架构设计师 | 三、信息系统基础知识
系统架构·软考高级·系统架构设计师