指令系统、流水线

指令系统

分类



寻址方式

设计

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

操作码设计

MIPS




流水线

MIPS流水线

改进后


取指(IF)

译码(ID)

执行(EX)

存储器访问

寄存器-寄存器 ALU

寄存器-立即值 ALU

分支

访存(MEM)

Load/Store

分支

写回(WB)

性能分析

吞吐率(TP)

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

实际吞吐率


效率


相关

结构相关

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

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

数据相关

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

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


流水线锁

插入暂停周期

流水线调度(指令调度)

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

控制相关

分支指令带来的暂停

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

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

延迟分支


向量处理机

向量处理方式

  • 水平处理方式
  • 垂直处理方式
  • 分组处理方式
相关推荐
吴建旭 智宅焕1 天前
智能家居B端客户路径诊断的系统架构设计与实现:背景采集、经验分层与交付确定性
系统架构·智能家居
长不大的杨瑞杰4 天前
ChatGPT 广告技术栈架构拆解:多轮意图、LLM 工具编排、ANN 召回与拍卖闭环
人工智能·chatgpt·系统架构·推荐系统·广告
艺杯羹5 天前
Windows原生软件锁设计:从暴力杀进程丢数据到零轮询事件驱动架构
windows·系统架构·开源·开源软件·内存管理·开源协议
jktantan5 天前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·后端·算法·spring cloud·系统架构
艺杯羹7 天前
MCP本地服务集成避坑:从Stdio管道僵死到双向JSON-RPC稳健通信
人工智能·python·ai·系统架构·大语言模型·ai编程·mcp
奇树谦7 天前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构
无心水8 天前
24、系统架构师论文写作专题 核心考点与学习笔记
笔记·学习·系统架构·架构师·安全架构·软考架构师·软考系统架构设计师
拆房老料9 天前
DeepSeek Super-agent 架构解析:从单任务 Agent 到持续运行的任务系统
人工智能·设计模式·系统架构
Jmyd01239 天前
文物3D数字化的技术选型指南:从WW/T 0115标准到落地工程,一次讲透采集、建档、管理与展示
3d·系统架构·博物馆·数字展厅·博物馆数字化
薛定谔的猫-菜鸟程序员10 天前
软件架构设计师开发资料大全(从入门到精通)
后端·python·系统架构·flask·架构设计师