微机原理与接口技术第十章

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


业 出
➢新增加一些64位指令


微 机
10.5 多核技术

理 与
➢指令流水线
接 口
让处理器重叠执行多条指令

术 ➢超标量处理器
·
第 4
利用多条指令流水线同时执行多条指令
版 ➢多处理器(Multiprocessors)系统

械 使用多个处理器并行执行多个进程或线程

业 出
➢多核(Multi-core)技术
➢ 64位方式的寄存器
技 术
新增8个64位通用寄存器R8~R15
· 第
新增8个XMM寄存器XMM8~XMM15
4
64位标志寄存器RFLAGS

64位指令指针RIP

械 工
➢ 64位方式的寻址方式

位移量——一个8位、16位或32位数值


基址——在32位或64位通用寄存器中的一个数值

变址——在32位或64位通用寄存器中的一个数值

多个任务按一定时间顺序轮流使用同一套硬件
设备
微 机
10.1.2 Pentium的超标量指令流水线

理 与
➢类似80486的5级流水线
接 口
➢后3级可以在两个流水线同时进行


· 第
指令预取PF
4 版
指令译码D1


工 业
地址生成D2 地址生成D2

版 社
执行EX
执行EX
回写WB
回写WB
U流水线
V流水线
超标量处理器
使用复杂的硬件电路动态调度
不需要修改软件或者重新编译
微 机
2. 乱序执行和寄存器重命名

理 与
➢ 乱序执行(Out-of-order Execution)
接 口
只要指令操作数就绪就执行,不必是指令的原始顺序
技 术
➢ 寄存器重命名(Register Renaming)
· 第
通过改变指令中寄存器操作数的名来消除名相关
技 术
指令分支路径,并按照推测结果发送和执行
· 第
指令
4
版 ➢推测正确,可以有效消除分支引起的停顿,
机 械
加快分支处理的速度





微 机
5. Intel x86处理器的结构发展

理 与
➢ 8086、80286和80386是早期的非流水线处理器
接 口
顺序串行发送和执行指令
技 术
➢ 80486是标量指令级并行处理器

理 与
➢ 64位线性地址空间,40位物理地址空间
接 口
➢ 32位扩展工作方式(IA-32e),两个子方式:
技 术
(1) 兼容方式
· 第
类似32位保护方式,应用程序只能存取最低4GB地址空间,
4
使用16或32位地址和操作数

允许64位操作系统运行大多数32位软件而无需修改,也
机 械
可以运行大多数16位程序
· 第
指令流水线、预取分支目标、内部数据旁路
4 版
➢ Pentium属于早期超标量指令级并行处理器

两条指令流水线、指令顺序发送、动态分支预测
械 工
➢ P6微结构属于高性能的超标量指令级并行处理器
业 出
动态执行技术
版 社
寄存器重命名、乱序执行、推测执行
➢ NetBurst微结构继承动态执行技术,并有所改进
接 口
应用程序中包含可以并行执行的多个线程

术 ➢同时多线程SMT
·
第 4
通过复制处理器的结构状态,让同一个处理器

上的多线程同时执行并共享处理器的执行资源
机 械
只需小规模改变处理器核心的设计,几乎不用
工 业
增加额外的成本就可以显著地提升效能
出 版
➢单芯片多处理器CMP

在一个芯片上制作多个处理器
微 机

理 与
➢并行性:在同一个时刻或同一段时间内处理
接 口
(完成)多个(两个或两个以上)任务
技 术
同时性:同一个时刻发生的并行性
· 第
并发性:同一段时间内发生的并行性
4
版 ➢并行性存在于计算机系统的各个层次
机 械
指令级并行:多条指令之间的并行
工 业
线程级并行:多个线程或进程之间的并行


多处理器系统:多个处理器系统之间的并行
版 社
41位指令编码、称为指令槽(Slot)
模板域体现3条指令间并行特性
不与Intel 80x86结构相兼容
微 机
10.2.2 P6微结构

理 与
系统总线

口 技
总线接口单元

L2 Cache
·
第 L1指令Cache
4

取指
L1数据Cache
取数
存数
机 顺序发送前端
械 工 业
(取指与译码单元)
读取指令
i1发往U流水线
i2做为下对指令的第1条指令i1
微 机
10.1.3 Pentium的动态分支预测


与 接
32位
32位
2位
口 技
转移指令地址 目标指令地址 历史

· 第
4 版
新项

不发生分支的移动方向
不分支
不分支
不分支
不分支

工 业 出
历史:11 预测:分
版支
历史:10 预测:分 支
历史:01 预测:分 支
版 社
推测执行
提高并行处理指令能力
微 机
10.2.1 指令级并行

理 与
➢指令级并行ILP
接 口
研究程序中指令之间存在的并行性

术 ➢发掘指令之间的并行执行能力
·
第 4
提高处理器内部操作的并行程度

没有相关的多个指令可以在超标量处理器的多
机 械
个流水线或多个执行单位同时执行
工 业
存在相关的多个指令需要尽量消除相关,也实

微 机
提高并行性的3种技术途径(路线)

理 与
➢时间重叠=时间并行
接 口
将一套硬件设备分解成多个可以独立使用的部
技 术
分,多个任务在时间上相互错开,重叠使用同
· 第
一套硬件设备的各个部件
4 版
➢资源重复=空间并行

通过重复设置资源、尤其是硬件资源,使得多
械 工
个任务可以同时被处理

出 版
➢资源共享

理 与
➢一个物理封装内制作两个或多个处理器执行
接 口
核心
技 术
➢基于不同的微结构有多种形式
·

基于NetBurst微结构
4

Intel Pentium至尊版处理器

Intel Pentium D

工 业
基于Pentium M微结构:Intel Core Duo
出 版
基于Intel Core微结构:英特尔酷睿系列
10.3.1 Pentium 4的NetBurst微结构







·
第 4
执行踪迹Cache

机 械 工 业 出 版 社
微 机
10.3.2 Pentium 4的超线程技术

理 与
➢超线程技术HT(Hyper Threading)
接 口
同时多线程技术的一种
技 术
使一个物理处理器看似有两个逻辑处理器
· 第
预测向前分支的条件转移指令不发生分支
4 版

械 工
jc begin
begin:

出 版



begin: call convert
jc begin
微 机
4. 推测执行(Speculative Execution)

理 与
➢推测执行=推断执行=前瞻执行
接 口
➢处理器采用静态和动态的分支预测技术推测
超线程技术 ➢熟悉Intel 64结构的工作方式和特点 ➢掌握并行计算机结构分类,了解Core微结
构和多核技术
钱晓捷,微机原理与接口技术·第4版——基于IA-32处理器和32位汇编语言
第10章 习题
10.1 简答题 10.2 判断题 10.3 填空题 10.5 10.6 10.8
版 社
将多个处理器核心集成在一个半导体芯片
微 机
10.5.1 并行计算机结构分类

理 与
➢单指令流单数据流SISD
接 口
单处理器(Uniprocessor)系统

术 ➢单指令流多数据流SIMD
·
第 4
同一个指令使用不同数据流被多个处理器执行

向量处理器、多媒体指令(SIMD指令)
机 械
➢多指令流单数据流MISD
工 业
(2) 64位方式
出 版
允许64位操作系统运行存取64位地址空间的应用程序。

应用程序还可以存取8个附加的通用寄存器、8个附加的
SIMD多媒体寄存器、64位通用寄存器和64位指令指针等
微 机
10.4.1 64位方式的运行环境

理 与
➢ 线性地址空间:264字节,物理地址空间:240字节
接 口
出 译码指令为微代码
版 社
处理指令分支
乱序执行核心 (分派与执行单元)
调度和执行微代码 包含5个执行端口
顺序退出单元 (退出单元)
顺序退出指令 写入寄存器和存储器结果
重排序缓冲区ROB (指令池)
等待执行的微代码缓冲区
微 机
10.3 同时多线程技术

理 与
➢线程级并行TLP(Thread-Level Parallel)
➢ Core微结构

4个译码单元,每个时钟可以译码4条指令
4

具有3个算术逻辑单元ALU,都支持SIMD指令执行

采用超标量结构,乱序处理指令
械 工
每个时钟退出4条指令
业 出
➢ Core微结构的特性
版 社
动态执行核心
先进的智能Cache
智能存储器存取
先进的数字媒体增强技术
示意图
微 机
10.5.3 Intel多核技术
历史:00
预测:不分支

分支
分支
分支
分支
发生分支的移动方向
微 机
10.2 动态执行技术

理 与
➢P6微结构的IA-32处理器
接 口
Pentium Pro、Pentium II和Pentium III

术 ·
➢动态执行是一系列技术的总称
第 4
寄存器重命名

乱序执行


静态分支预测

业 出
动态分支预测
出 版
现并行执行

指令是处理器执行的基本单位
微 机
1. 处理器结构的发展

理 与
➢传统的冯·诺依曼处理器
接 口
串行发送、串行执行
技 术
➢标量指令级并行处理器
· 第
串行发送、并行执行
4 版
➢超标量指令级并行处理器

并行发送、并行执行


超长指令字VLIW技术
业 出
编译程序静态调度软件程序
版 社
需要智能化的编译程序
· 第
每个逻辑处理器维持一套完整的结构状态
4 版
共享几乎物理处理器上所有执行资源
机 械
➢从软件角度看
工 业
这意味操作系统和用户程序像传统多处理器系

统一样在逻辑处理器上调度线程或进程

社 ➢从微结构角度看
这意味两个逻辑处理器的指令可以在共享的执 行资源上同时保持和执行
示意图
微 机
10.4 Intel 64技术

Intel Core 2 Duo处理器支持双核
Intel Core 2 Quad处理器则支持4核
示意图
第10章 并行处理技术
教 ➢理解并行性概念,了解超标量和动态分支 学 预测技术 要 ➢掌握指令级并行思想,理解乱序执行、寄 求 存器重命名、推测执行等概念
➢熟悉P6和NetBurst微结构的动态执行核心 ➢理解线程级并行思想,了解同时多线程和
钱晓捷,微机原理与接口技术·第4版——基于IA-32处理器和32位汇编语言
第 10 章
并行处理技术
10.1 超标量技术 10.2 动态执行技术 10.3 同时多线程技术 10.4 Intel 64技术 10.5 多核技术
微 机
10.1 超标量技术

来自百度文库理 与
➢标量(Scalar)数据:仅含一个数值的量
微 机
1. 超标量整数指令流水线







· 第
4 版
机 械 工 业 出 版 社
微 机
2. Pentium的指令配对

理 IF


i1是简单指令


并且i2也是简单指令

·
并且i1不是转移指令

4
并且i1和i2不存在数据相关

THEN


i1发往U流水线

业 出
i2发往V流水线
版 社
ELSE
接 口
➢向量(Vector)数据:具有多个数值的量

术 ·
➢标量处理器:进行单值数据操作的处理器
第 4
➢向量处理器:进行向量数据操作的处理器

机 ➢超标量Superscalar技术
械 工
提高标量指令的执行性能而设计的处理器
业 出
常用指令可以同时启动,并相互独立地执行


微 机
10.1.1 并行性概念

业 出
➢多指令流多数据流MIMD
版 社
每个处理器读取各自的指令,使用各自的数据
进行操作
多处理器系统、机群系统
微 机
10.5.2 Intel Core微结构

理 ➢ 新一代Intel x86结构处理器的核心


改进NetBurst微结构提高执行性能
口 技
利用Pentium M微结构降低执行功耗
术 ·
4 版
机 械
I1: mov eax,dvar1

业 出
I2: mov ebx,eax
数据相关


I3: add ecx,100
乱序执行
I4: mov eax,dvar2
名字相关
微 机
3. 静态分支预测

理 与
➢ 解决BTB中没有记录的转移指令的分支预测问题
接 口
预测无条件转移指令发生分支
技 术
预测向后分支的条件转移指令发生分支
比例因子——一个2,4或8数值,用于乘以变址数值
微 机
10.4.2 64位方式的指令

理 与
➢引入新指令前缀REX
接 口
用于存取64位寄存器和64位操作数

术 ➢扩展大多数整数通用指令的功能
·
第 4
使得它们都可以处理64位数据
版 ➢一小部分整数通用指令不被64位方式所支持

械 但非64位方式仍然支持
微 机
6. IA-64结构

理 与
➢ IA-64结构
接 口
Intel和HP公司合作开发的64位指令集结构
技 术
➢ EPIC技术
· 第
显式并行计算,源于VLIW技术
4 版
➢ Itanium处理器

英特尔公司推出的处理器
械 工
➢ 128位指令束(Bundle)
业 出
3条指令编码、加上5位模板域(Template)
相关文档
最新文档