Intel Sandy Bridge微架构的指令流水线主要由下列3部分构成:

  • 有序发射前端,负责取指(x86指令)并将其译码为微指令(也叫微操作)。前端给流水线中的后续阶段提供稳定的微指令流,这些微指令流来自于最可能执行到的程序路径。
  • 乱序的超标量执行引擎,负责将微指令分发执行,每周期最多可分发6条微指令。Allocate/Rename单元将微指令重排列成“数据流”顺序;这样,一旦数据流需要的操作数以及执行资源具备,马上即可开始执行。
  • 有序退役单元,确保微指令的执行结果,包括可能产生的处理器异常,能够按照最初的程序设计顺序可见(即更新处理器架构状态,按原始x86指令顺序产生异常)

指令在流水线中的处理流程可以概述为以下几个阶段:

  1. 分支预测单元从程序中选择下一个要执行的指令块(注:不是一条指令,而是一个指令块,即“数据流”)。处理器会按下述顺序从存储资源中的查找这个指令块:

    1. 译码后微指令缓存
    2. 一级指令缓存,通过激活传统的译码流水线(即指令缓存/预译码器/指令队列/复杂与简单译码器/微指令这部分流水线)
    3. 如果必要,二级缓存,最后一级缓存LLC,以及存储器
  2. 这个代码块对应的微指令被送入重命名/退役部件(注:这是一个部件,不是两个)。重命名结束后,它们按照程序设计顺序被送入调度器,但是会按照“数据流”顺序被执行和回收(de-allocated)。对于同时具备执行条件的微指令,几乎总是尊徐先来先执行的原则。

微指令的执行总是要占用执行资源,这些资源被排列在3个栈中。每个栈中的执行单元与指令的操作数类型相对应(例如整型,浮点型,或SIMD类型)。

在分支指令实际执行时,可以获知分支预测是否失败。分支结果会通知给前端,让前端的译码工作“转向”,继而给执行引擎提供正确的分支路径上的微指令。处理器可以将“分支预测失败之前的工作”与“执行正确的分支路径的工作”重叠执行。

(英文原文如下:)

  1. 访存操作会被管理起来并进行重排序,从而获得执行并行性和最大的性能。一级数据缓存未命中时,会(将请求)转发给二级缓存。数据缓存都是非阻塞式的,可以同时处理多个未命中事件。
  2. 处理器异常(错误,陷入)在指令退役(或即将退役)时产生并通知给相应的单元。

如果开启了超线程技术,Intel Sandy Bridge微架构的每个处理器核可以支持两个逻辑处理器。

Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (3) - 流水线概述相关推荐

  1. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (1) - 特性概述

    Intel Sandy Bridge/Ivy Bridge Microarchitecture Intel Sandy Bridge微架构继承了Intel Core微架构与Nehalem微架构的成功之 ...

  2. Intel Haswell/Broadwell架构/微架构/流水线 (2)-流水线前端

    The Front End 除了继承了Sandy Bridge/Ivy Bridge微架构的前端特性,Haswell微架构对流水线前端做的额外增强如下: 微指令缓存(uop cache,即decode ...

  3. Intel, AMD及VIA CPU的微架构(39,完)

    21. 微架构的比较 已经调查的最先进微架构代表了不同的微架构核心:AMD,Pentium 4(NetBurst),Pentium M与Intel Core 2核心.现在我将讨论这些微架构的优缺点.我 ...

  4. Intel Haswell/Broadwell架构/微架构/流水线 (8)-Broadwell微架构

    The Broadwell Microarchitecture Intel Core™ M处理器基于Broadwell微架构.Broadwell微架构从Haswell演进而来同时还提供了多种增强.本节 ...

  5. Intel Core Enhanced Core架构/微架构/流水线 (3) - 流水线概述

    Intel® Core Microarchitecture Pipeline Overview Intel Core微架构的流水线包括: 有序发射前端,从内存中获取指令,利用4个指令译码器将x86指令 ...

  6. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (20) - IvyBridge微架构

    Intel® Ivy Bridge Microarchitecture 第三代Intel Core处理器是基于Ivy Bridge微架构的.上述的Sandy Bridge微架构的特性也都适用于Ivy ...

  7. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (19) - 系统代理

    System Agent 在Sandy Bridge微架构中实现的系统代理包括了如下的组件: 一个总裁器,用于管理所有的访问请求,并将这些请求路由(即转发)到正确的位置上.访问请求可能来自于环域(ri ...

  8. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (18) - 数据预取

    Data Prefetching 使用软件预取指令,硬件预取机制,或者两者的任意组合,都可以将数据投机式地加载到L1D中. 程序员可以使用4条SSE预取指令来实施软件控制的预取操作.这些指令给处理器提 ...

  9. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (17) - 互联环路LLC

    Ring Interconnect and Last Level Cache 片上系统设计提供了一个高带宽的双向环路总线,用于连接IA处理器核与核外的各子系统.在第二代Intel Core处理器2xx ...

  10. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (12) - 执行核

    The Execution Core 执行核的特点是1)超标量,2)乱序处理指令.通过高效处理最常用的操作,同时最小化潜在的时延,执行核优化了总体执行性能. 相比起前代微架构,Sandy Bridge ...

最新文章

  1. 2022-2028年中国演出市场深度调研与发展前景报告
  2. 蛇形摆matlab,小学生注意力辅导
  3. tensorflow中的placeholder()
  4. Feign-基于Feign远程调用
  5. python min函数时间复杂度_作为Python程序员,你真的会用max()和min()函数吗?
  6. 什么是 WebAssembly?
  7. 7.6 C程序的存储空间布局
  8. Android最佳实践之流畅设计
  9. 不用代码隐藏自定义列表
  10. object-c的静态变量(static)
  11. GPS坐标转换(一)-基础知识
  12. 词云图,词频图,专门统计某些关键词的词云词频
  13. 几何图形识别 python_pygame能识别简单的几何图形吗?
  14. GPT生成情人节表白情话,AI撩骚情人卡很搞笑!
  15. python opencv图像叠加/图像融合/mask掩模
  16. 普通路由器改4g路由器_4G工业路由器将加速工业物联网发展进程
  17. ruby--数值类(Numeric)
  18. 一些牛人榜样,多看看他们写的东西
  19. SEO网站优化之长尾关键词的站内布局
  20. 灰流丽能无效融合么_游戏王:史上最强融合卡片,不可阻挡,无法逆转!

热门文章

  1. Spark源码走读1——RDD
  2. 微信小程序canvas绘制图片的注意事项---不能是网络图片
  3. mysql 树形结构_结合RBAC模型讲解权限管理系统需求及表结构创建
  4. 仿qq邮箱源码程序_小伙子利用C++实现邮件程序发送和接收
  5. python中for循环运行不起_python中for循环不能正常工作
  6. php swoole多进程,PHP基于swoole多进程操作示例
  7. ROS入门笔记(十一):编写与测试简单的Service和Client (Python)
  8. java命令行参数_Java学习从入门到精通,JDK工具条知识点学习资料
  9. c语言编译前端,c语言编译器前端的设计与实现.doc
  10. c++对象回收问题_从垃圾回收解开Golang内存管理的面纱之三垃圾回收