Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (3) - 流水线概述
Intel Sandy Bridge微架构的指令流水线主要由下列3部分构成:
- 有序发射前端,负责取指(x86指令)并将其译码为微指令(也叫微操作)。前端给流水线中的后续阶段提供稳定的微指令流,这些微指令流来自于最可能执行到的程序路径。
- 乱序的超标量执行引擎,负责将微指令分发执行,每周期最多可分发6条微指令。Allocate/Rename单元将微指令重排列成“数据流”顺序;这样,一旦数据流需要的操作数以及执行资源具备,马上即可开始执行。
- 有序退役单元,确保微指令的执行结果,包括可能产生的处理器异常,能够按照最初的程序设计顺序可见(即更新处理器架构状态,按原始x86指令顺序产生异常)
指令在流水线中的处理流程可以概述为以下几个阶段:
- 分支预测单元从程序中选择下一个要执行的指令块(注:不是一条指令,而是一个指令块,即“数据流”)。处理器会按下述顺序从存储资源中的查找这个指令块:
- 译码后微指令缓存
- 一级指令缓存,通过激活传统的译码流水线(即指令缓存/预译码器/指令队列/复杂与简单译码器/微指令这部分流水线)
- 如果必要,二级缓存,最后一级缓存LLC,以及存储器
- 这个代码块对应的微指令被送入重命名/退役部件(注:这是一个部件,不是两个)。重命名结束后,它们按照程序设计顺序被送入调度器,但是会按照“数据流”顺序被执行和回收(de-allocated)。对于同时具备执行条件的微指令,几乎总是尊徐先来先执行的原则。
微指令的执行总是要占用执行资源,这些资源被排列在3个栈中。每个栈中的执行单元与指令的操作数类型相对应(例如整型,浮点型,或SIMD类型)。
在分支指令实际执行时,可以获知分支预测是否失败。分支结果会通知给前端,让前端的译码工作“转向”,继而给执行引擎提供正确的分支路径上的微指令。处理器可以将“分支预测失败之前的工作”与“执行正确的分支路径的工作”重叠执行。
(英文原文如下:)
- 访存操作会被管理起来并进行重排序,从而获得执行并行性和最大的性能。一级数据缓存未命中时,会(将请求)转发给二级缓存。数据缓存都是非阻塞式的,可以同时处理多个未命中事件。
- 处理器异常(错误,陷入)在指令退役(或即将退役)时产生并通知给相应的单元。
如果开启了超线程技术,Intel Sandy Bridge微架构的每个处理器核可以支持两个逻辑处理器。
Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (3) - 流水线概述相关推荐
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (1) - 特性概述
Intel Sandy Bridge/Ivy Bridge Microarchitecture Intel Sandy Bridge微架构继承了Intel Core微架构与Nehalem微架构的成功之 ...
- Intel Haswell/Broadwell架构/微架构/流水线 (2)-流水线前端
The Front End 除了继承了Sandy Bridge/Ivy Bridge微架构的前端特性,Haswell微架构对流水线前端做的额外增强如下: 微指令缓存(uop cache,即decode ...
- Intel, AMD及VIA CPU的微架构(39,完)
21. 微架构的比较 已经调查的最先进微架构代表了不同的微架构核心:AMD,Pentium 4(NetBurst),Pentium M与Intel Core 2核心.现在我将讨论这些微架构的优缺点.我 ...
- Intel Haswell/Broadwell架构/微架构/流水线 (8)-Broadwell微架构
The Broadwell Microarchitecture Intel Core™ M处理器基于Broadwell微架构.Broadwell微架构从Haswell演进而来同时还提供了多种增强.本节 ...
- Intel Core Enhanced Core架构/微架构/流水线 (3) - 流水线概述
Intel® Core Microarchitecture Pipeline Overview Intel Core微架构的流水线包括: 有序发射前端,从内存中获取指令,利用4个指令译码器将x86指令 ...
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (20) - IvyBridge微架构
Intel® Ivy Bridge Microarchitecture 第三代Intel Core处理器是基于Ivy Bridge微架构的.上述的Sandy Bridge微架构的特性也都适用于Ivy ...
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (19) - 系统代理
System Agent 在Sandy Bridge微架构中实现的系统代理包括了如下的组件: 一个总裁器,用于管理所有的访问请求,并将这些请求路由(即转发)到正确的位置上.访问请求可能来自于环域(ri ...
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (18) - 数据预取
Data Prefetching 使用软件预取指令,硬件预取机制,或者两者的任意组合,都可以将数据投机式地加载到L1D中. 程序员可以使用4条SSE预取指令来实施软件控制的预取操作.这些指令给处理器提 ...
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (17) - 互联环路LLC
Ring Interconnect and Last Level Cache 片上系统设计提供了一个高带宽的双向环路总线,用于连接IA处理器核与核外的各子系统.在第二代Intel Core处理器2xx ...
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (12) - 执行核
The Execution Core 执行核的特点是1)超标量,2)乱序处理指令.通过高效处理最常用的操作,同时最小化潜在的时延,执行核优化了总体执行性能. 相比起前代微架构,Sandy Bridge ...
最新文章
- 2022-2028年中国演出市场深度调研与发展前景报告
- 蛇形摆matlab,小学生注意力辅导
- tensorflow中的placeholder()
- Feign-基于Feign远程调用
- python min函数时间复杂度_作为Python程序员,你真的会用max()和min()函数吗?
- 什么是 WebAssembly?
- 7.6 C程序的存储空间布局
- Android最佳实践之流畅设计
- 不用代码隐藏自定义列表
- object-c的静态变量(static)
- GPS坐标转换(一)-基础知识
- 词云图,词频图,专门统计某些关键词的词云词频
- 几何图形识别 python_pygame能识别简单的几何图形吗?
- GPT生成情人节表白情话,AI撩骚情人卡很搞笑!
- python opencv图像叠加/图像融合/mask掩模
- 普通路由器改4g路由器_4G工业路由器将加速工业物联网发展进程
- ruby--数值类(Numeric)
- 一些牛人榜样,多看看他们写的东西
- SEO网站优化之长尾关键词的站内布局
- 灰流丽能无效融合么_游戏王:史上最强融合卡片,不可阻挡,无法逆转!
热门文章
- Spark源码走读1——RDD
- 微信小程序canvas绘制图片的注意事项---不能是网络图片
- mysql 树形结构_结合RBAC模型讲解权限管理系统需求及表结构创建
- 仿qq邮箱源码程序_小伙子利用C++实现邮件程序发送和接收
- python中for循环运行不起_python中for循环不能正常工作
- php swoole多进程,PHP基于swoole多进程操作示例
- ROS入门笔记(十一):编写与测试简单的Service和Client (Python)
- java命令行参数_Java学习从入门到精通,JDK工具条知识点学习资料
- c语言编译前端,c语言编译器前端的设计与实现.doc
- c++对象回收问题_从垃圾回收解开Golang内存管理的面纱之三垃圾回收