指令级并行--控制相关的动态解决技术

合集下载

系统结构名词解释(3)

系统结构名词解释(3)

系统结构名词解释(3)系统结构名词解释结构冲突:因硬件资源满足不了指令重叠执行的要求而发生的冲突。

数据冲突:当指令在流水线中重叠执行时,因需要用到前面指令的执行结果而发生的冲突。

控制冲突:流水线遇到分支指令或其它会改变PC值的指令所引起的冲突。

定向:用来解决写后读冲突的。

在发生写后读相关的情况下,在计算结果尚未出来之前,后面等待使用该结果的指令并不见得是马上就要用该结果。

如果能够将该计算结果从其产生的地方直接送到其它指令需要它的地方,那么就可以避免停顿。

写后读冲突:考虑两条指令i和j,且i在j之前进入流水线,指令j用到指令i的计算结果,而且在i将结果写入寄存器之前就去读该寄存器,因而得到的是旧值。

读后写冲突:考虑两条指令i和j,且i在j之前进入流水线,指令j的目的寄存器和指令i的源操作数寄存器相同,而且j在i读取该寄存器之前就先对它进行了写操作,导致i读到的值是错误的。

写后写冲突:考虑两条指令i和j,且i在j之前进入流水线,,指令j和指令i的结果单元(寄存器或存储器单元)相同,而且j在i写入之前就先对该单元进行了写入操作,从而导致写入顺序错误。

这时在结果单元中留下的是i写入的值,而不是j写入的。

链接技术:具有先写后读相关的两条指令,在不出现功能部件冲突和Vi冲突的情况下,可以把功能部件链接起来进行流水处理,以达到加快执行的目的。

分段开采:当向量的长度大于向量寄存器的长度时,必须把长向量分成长度固定的段,然后循环分段处理,每一次循环只处理一个向量段。

半性能向量长度:向量处理机的性能为其最大性能的一半时所需的向量长度。

向量长度临界值:向量流水方式的处理速度优于标量串行方式的处理速度时所需的向量长度的最小值。

4.1解释下列术语指令级并行:简称ILP。

是指指令之间存在的一种并行性,利用它,计算机可以并行执行两条或两条以上的指令。

指令调度:通过在编译时让编译器重新组织指令顺序或通过硬件在执行时调整指令顺序来消除冲突。

第4章Computer Systems Architecture

第4章Computer Systems Architecture

输出相关(F6) 导致WAW冲突

22/134
Computer Systems Architecture
消除名相关

4.2 指令的动态调度
引入两个临时寄存器S和T 把这段代码改写为: DIV.D ADD.D S.D SUB.D MUL.D F0,F2,F4 S,F0,F8 S,0(R1) T,F10,F14 F6,F10,T 两个F6都换名为S

2/134
Computer Systems Architecture 4.1 指令级并行
4.1.1 指令级并行的概念
几乎所有的处理机都利用流水线来使指令重叠并
行执行,以达到提高性能的目的。这种指令之间 存在的潜在并行性称为指令级并行。
(ILP:Instruction-Level Parallelism)
本章研究:如何通过各种可能的技术,获得更多
的指令级并行性。
硬件+软件技术
必须要硬件技术和软件技术互相配合,才能够最大 限度地挖掘出程序中存在的指令级并行。
▲ 3/134
Computer Systems Architecture
1. 流水线处理机的实际CPI
4.1 指令级并行
理想流水线的CPI加上各类停顿的时钟周期数:
4.2 指令的动态调度
IBM 360体系结构只有4个双精度浮点寄存器,限
制了编译器调度的有效性。
360/91的访存时间和浮点计算时间都很长。
(也是Tomasulo算法要解决的问题)
3. 寄存器换名可以消除WAR冲突和WAW冲突。
考虑以下代码:
反相关(F8) 导致WAR冲突 DIV.D ADD.D S.D SUB.D MUL.D F0,F2,F4 F6,F0,F8 F6,0(R1) F8,F10,F14 F6, F10,F8

指令级并行的概念

指令级并行的概念
指令级并行的概念
目 录
• 指令级并行简介 • 指令级并行技术 • 指令级并行应用场景 • 指令级并行面临的挑战与解决方案 • 指令级并行未来展望
01
指令级并行简介
定义与特点
定义
指令级并行是指计算机在执行程序时, 通过同时执行多个指令来提高处理速 度的一种并行处理技术。
特点
指令级并行主要依赖于处理器中的指 令流水线,通过并行执行多个指令, 实现处理速度的提升。
详细描述
超线程技术允许在一个物理处理器核心上同时运行多个线程,从而实现指令级的 并行处理。通过精细的调度和管理,超线程技术可以有效地利用处理器资源,提 高处理器的整体性能。
VLIW(Very Long Instruction Word)技术
总结词
VLIW技术是一种将多个操作码和操作数组合到一个长指令中,由处理器一次执行的方法。
VS
详细描述
EPIC技术强调在编译阶段对程序进行并 行化处理,通过分析程序中的指令关系和 数据依赖关系,自动地生成并行执行的代 码。EPIC技术的目标是最大化处理器的 并行执行能力,从而提高程序的执行效率 。
03
指令级并行应用场景
科学计算
科学计算是利用计算机进行大规模数值计算以解决科学研究 和工程领域中的复杂问题。指令级并行技术可以提高科学计 算的效率和精度,例如在气候模拟、流体动力学模拟、物理 模拟等领域的应用。
指令缓存失效问题
指令缓存失效问题
由于指令的执行结果可能被缓存在缓存中, 当指令并行执行时,缓存失效可能导致指令 重新读取数据,从而影响并行执行的效率。
解决方案
通过缓存行对齐技术,将并行执行的指令对 齐到同一缓存行,以减少缓存失效的次数。 此外,可以使用写回策略来将指令的执行结

2022年江苏第二师范学院计算机应用技术专业《计算机系统结构》科目期末试卷A(有答案)

2022年江苏第二师范学院计算机应用技术专业《计算机系统结构》科目期末试卷A(有答案)

2022年江苏第二师范学院计算机应用技术专业《计算机系统结构》科目期末试卷A(有答案)一、选择题1、多处理机的各自独立型操作系统()。

A.要求管理程序不必是可再入的B.适合于紧耦合多处理机C.工作负荷较平衡D.有较高的可靠性2、Cache存贮器常用的地址映象方式是( )。

A.全相联映象B.页表法映象C.组相联映象D.段页表映象3、下列说法中不正确的是( )A.软件设计费用比软件重复生产费用高B.硬件功能只需实现一次,而软件功能可能要多次重复实现C.硬件的生产费用比软件的生产费用高D.硬件的设计费用比软件的设计费用低4、从计算机系统结构上讲,机器语言程序员所看到的机器属性是( )。

A.计算机软件所要完成的功能B.计算机硬件的全部组成C.编程要用到的硬件组织D.计算机各部件的硬件实现5、"一次重叠"中消除"指令相关"最好的方法是( )。

A.不准修改指令B.设相关专用通路C.推后分析下条指令D.推后执行下条指令6、高级语言程序经()的()成汇编语言程序。

A.编译程序,翻译B.汇编程序,翻译C.汇编程序,解释D.编译程序,解释7、系列机软件应做到( )。

A.向前兼容,并向上兼容B.向后兼容,力争向上兼容C.向前兼容,并向下兼容D.向后兼容,力争向下兼容8、IBM360/91属于()A.向量流水机B.标量流水机C.阵列流水机D.并行流水机9、下列说法中不正确的是()A.软件设计费用比软件重复生产费用高B.硬件功能只需实现一次,而软件功能可能要多次重复实现C.硬件的生产费用比软件的生产费用高D.硬件的设计费用比软件的设计费用低10、在尾数下溢处理方法中,平均误差最大的是()A.截断法B.舍入法C.恒置"1"法D.ROM查表法二、判断题11、在一种机器的系统结构上实现另一种机器的指令系统,采用模拟方法比采用仿真方法更快捷。

()12、计算机仿真用微程序解释,计算机模拟用机器语言解释。

全局指令调度名词解释系统结构

全局指令调度名词解释系统结构

全局指令调度名词解释系统结构第一章名称解析:程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。

包括时间局部性和空间局部性。

软件兼容:一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上运行。

差别只是执行时间的不同。

时间重叠:在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。

资源重复:在并行性概念中引入空间因素,以数量取胜。

通过重复设置硬件资源,大幅度地提高计算机系统的性能。

实现软件可移植的方法:采用系列机方法,只能在具有相同系统结构的各种机器之间实现软件移植,般是一个厂家生产的机器。

采用模拟与仿真的方法,可在不同系统结构的机器之间相互移植软件,对于使用频率较高的指令,尽可能用仿真方法以提高运算速度,而对于使用频率低且难于用仿真实现的指令则用模拟方法来实现。

采用统一的高级语言方法,可以解决结构相同或完全不同的各种机器上的软件移植,但是,要统一高级语言,语言的标准化很重要,但难以在短期内解决。

第二章2.1解释下列术语堆栈型机器:CPU中存储操作数的单元是堆栈的机器。

累加器型机器:CPU中存储操作数的单元是累加器的机器通用寄存器型机器:CPU中存储操作数的单元是通用寄存器的机器。

CISC:复杂指令集计算机RISC:精简指令集计算机寻址方式:指令系统中如何形成所要访问的数据的地址。

一般来说,寻址方式可以指明指令中的操作数是一个常数丶一个寄存器操作数或者是一个存储器操作数数据表示:硬件结构能够识别、指令系统可以直接调用的那些数据结构。

2.2区别不同指令集结构的主要因素是什么?根据这个主要因素可将指令集结构分为哪3类?答:区别不同指令集结构的主要因素是CPU中用来存储操作数的存储单元。

据此可将指令系统结构分为堆栈结构、累加器结构和通用寄存器结构。

2.3指令集结构设计所涉及的内容有哪些?指令集功能设计:主要有RISC和CISC两种技术发展方向;寻址方式的设计:设置寻址方式可以通过对基准程序进行测试统计,察看各种寻址方式的使用频率,根据适用频率设置必要的寻址方式。

计算机体系结构试题及答案

计算机体系结构试题及答案

计算机体系结构试题及答案12008年01月23日22:211、计算机高性能发展受益于:(1)电路技术的发展;(2)计算机体系结构技术的发展。

2、层次结构:计算机系统可以按语言的功能划分为多级层次结构,每一层以不同的语言为特征。

第六级:应用语言虚拟机-> 第五级:高级语言虚拟机-> 第四级:汇编语言虚拟机-> 第三级:操作系统虚拟机-> 第二级:机器语言(传统机器级) ->第一级:微程序机器级。

3、计算机体系结构:程序员所看到的计算机的属性,即概括性结构与功能特性。

For personal use only in study and research; not for commercial use4、透明性:在计算机技术中,对本来存在的事物或属性,从某一角度来看又好像不存在的概念称为透明性。

5、Amdahl提出的体系结构是指机器语言级程序员所看见的计算机属性。

6、经典计算机体系结构概念的实质3是计算机系统中软、硬件界面的确定,也就是指令集的设计,该界面之上由软件的功能实现,界面之下由硬件和固件的功能来实现。

7、计算机组织是计算机系统的逻辑实现;计算机实现是计算机系统的物理实现。

8、计算机体系结构、计算机组织、计算机实现的区别和联系?答:一种体系结构可以有多种组成,一种组成可以有多种物理实现,体系结构包括对组织与实现的研究。

9、系列机:是指具有相同的体系结构但具有不同组织和实现的一系列不同型号的机器。

10、软件兼容:即同一个软件可以不加修改地运行于系统结构相同的各机器,而且它们所获得的结果一样,差别只在于运行时间的不同。

11、兼容机:不同厂家生产的、具有相同体系结构的计算机。

12、向后兼容是软件兼容的根本特征,也是系列机的根本特征。

13、当今计算机领域市场可划分为:服务器、桌面系统、嵌入式计算三大领域。

14、摩尔定律:集成电路密度大约每两年翻一番。

15、定量分析技术基础(1)性能的评测:(a)响应时间:从事件开始到结束之间的时间;计算机完成某一任务所花费的全部时间。

archit44

archit44
系统结构
4.3 动态分支预测技术

指令并行
处理器可达到的指令级并行度越高,控制相关 的影响越大 动态解决技术利用硬件对程序运行时分支的行 为进行预测,提前对分支操作做出反应,加快 分支处理的速度。分支预测的效果不仅取决于 其准确性,而且与分支预测时的开销密切相关。 分支转移的最终延迟取决于流水线的结构、预 测的方法和预测错误后恢复所采取的策略 动态分支预测技术要记录分支指令的历史、并 据此决定预测的分支,还要尽快找到分支目标 地址,从而避免控制相关造成流水线停顿
4.4 多指令流出技术

指令并行
将等于1的理想CPI减小,必须实现一个时钟周 期流出(发射issue)多条指令
超标量(Superscalar)处理器:每个时钟周期流出多条 指令(1~8),可以采用编译器进行静态调度顺序执行, 也可以采用硬件动态调度乱序执行 超长指令字(VLIW: Very Long Instruction Word):通 过编译器调度无关的多条指令(4~16)形成一条长指 令,每个时钟周期流出一条长指令 超级流水线(Super pipelining):将每个功能部件进一 步流水化,使得一个功能部件在一个时钟周期中可以处 理多条指令(可以简单地理解为很长的流水线)

WAW 冲突 (输出相关引起) 如果在SUB.D写入F10 之 前 ADD.D 执 行 结 束 , 会出现问题
寄存器换名可以消除WAR和WAW冲突
指令并行
DIV.D F4,F0,F2 SUB.D F10,F4,F6 ADD.D F8,F12,F14

DIV.D F4,F0,F2 SUB.D F10,F4,F6 ADD.D F8,F6,F14
① 根据历史记录(预测位状态)进行分支预测 ② 根据实际分支情况修改预测位

组成原理名词解释

组成原理名词解释

组成原理名词解释计算机实现:计算机实现是指计算机组成的物理实现。

它包括处理机、主存等部件的物理结构,器件的集成度和速度,信号传输,器件、模块、插件、底板的划分与连接,专用器件的设计,电源、冷却、装配等技术以及有关的制造技术和工艺等。

浮点数的误差:浮点数集 F 的误差可以这样定义, 令 N 是浮点数集 F 内的任一给定实数, 而 M 是 F 中最接近 N , 且被用来代替 N 的浮点数, 则定义绝对表数误差为:相对误差 (Relative Representation Rrror)为:浮点数表示方式的效率:浮点数表示方式的效率定义为:存储系统:两个或两个以上速度、容量和价格各不相同的存储器用硬件、软件、或软件与硬件相结合的方法连接起来成为一个系统,这就是存储系统。

虚拟存储系统:虚拟存储系统由主存储器与联机的外部存储器(目前一般为磁盘存储器)构成,采用硬件与软件相结合的方法来调度。

操作系统用内存管理部件管理虚存,实现用户透明的进程空间的 32位寻址。

并行存储器:并行存储器设置多个独立的存储器,让它们并行工作,在一个存储周期内可以访问到多个数据,提高存储器速度。

Cache 系统:Cache 系统是在主板或者 CPU 内部集成一块高速访问存储器,并与内存联合构成缓存系统。

缓存系统的原理类似于虚拟存储系统。

一般处理机中有一级 Cache ,它与主存储器构成一个两级的存储系统。

一些高性能处理机都采用两级 Cache 。

其中,第一级在 CPU 内部,它的容量比较小,速度很快。

第二级在主扳上,容量比较大,速度比第一级要低 5倍左右。

也有部分高性能处理机采用三级 Cache 。

前两级都在 CPU 内部。

全相联映象方式:全相联映象方式是指主存中的任意一块可以映象到 Cache 中的任意一块的位置上。

直接映象方式:直接映象方式是一种最简单,也是最直接的方法。

主存中一块只能映象到Cache 的一个特定的块中。

组相联映象:组相联方式是目前在 Cache 中用得比较多的一种地址映象和变换方式。

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

只要预测出错,往往是连续两次而不是一次。
5.解决方法 采用两个预测位的预测机制。 在两个预测位的分支预测中,更改对分支的 预测必须有两次连续预测错误。 两位分支预测的状态转换图
虚拟存储器的特点
9/28
4.3 控制相关的动态解决技术
分支不成功 分支成功 分支成功 分支不成功 分支预测: 不成功 01 分支成功 00 11 分支成功 10
F8,F6,F2
F10,F0,F6 F6,F8,F2
25/28
4.3 控制相关的动态解决技术
解 状态如图4.15所示。
保留站
名称
Add1
忙 操作 no no
Vj
Vk
Qj
Qk
目的
Add2
Add3
no
#3 #5
Regs[4 Mult1 no MULTD Mem[45+Regs[R2]] Mem[34+Regs[R2]] #3 Mult2 yes DIVD
第四章 指令级并行
4.3 控制相关的动态解决技术

处理器一个时钟周期流出多条指令受到以下两 个因素的限制:
• •
流出 n 条指令的处理器中,遇到分支指令 的 速度也快了n倍;
根据 Amdahl 定律可知,随着机器 CPI 的降 低 , 控制相关对性能的影响越来越大。
虚拟存储器的特点
1/28
4.3 控制相关的动态解决技术
20/28
4.3 控制相关的动态解决技术
(2)在控制相关消除之前指令前瞻执行; (3)对基本块采用动态调度。 2. 基于硬件的前瞻是动态地根据数据相关性来选择 指令和指令的执行时间。
实质:数据流驱动运行(data-flow execution)
只要操作数有效,指令就可以执行。 3.指令的确认 前瞻执行的指令产生的结果要一直到指令处 于非前瞻执行状态时,才能确定为最终结果,才
虚拟存储器的特点
13/28
1. 分支目标缓冲结构和工作过程
当前 PC 查找、比较 地址标示 分 支 目 标 缓 冲 分支目标 PC 分支目标指令
命中? N
Y
命中,则认为本指令是分支,且分支成功,以分支 目标缓冲中分支目标 PC 作为下一条指令地址
没有命中,则认为本指令不是 分支,按普通指令执行
图4.12 分支目标缓冲的结构和工作过程
虚拟存储器的特点
18/28
4.3 控制相关的动态解决技术
4. 对分支预测机制的一种改进 在缓冲区中不仅存入目的地址,而且还存入一 个或多个目标指令。 有两种潜在的好处:

在连续取指令之前,可以较长时间的访问缓冲 区,这时的分支目的缓冲区较大。
对目的指令进行缓冲,构成称为分支目标指令 缓冲(branch folding)的结构,它可使无条 件分支的延迟达到零,甚至有的条件分支也可 达到零延迟 。
26/28
ROB
项号
1
忙 no no LD LD
指令
F6,34(R2) F2,45(R3) F8,F6,F2 F10,F0,F6
状态 确认 确认 写结果 写结果 执行
目的
F6 F2 F0
值 Mem[34+Regs[R2]] Mem[45+Regs[R3]] #2Regs[F4] #1-#2
2
3 4 5 6
虚拟存储器的特点
12/28
4.3 控制相关的动态解决技术
4.3.2 分支目标缓冲
目标:将分支的开销降为零。 方法:分支目标缓冲 将分支成功的分支指令的地址和它的分支目 标地址都放到一个缓冲区中保存起来,缓冲区 以分支指令的地址作为标示;取指令阶段,所 有指令地址都与保存的标示作比较,一旦相同, 我们就认为本指令是分支指令,且认为它转移 成功,并且它的分支目标(下一条指令)地址 就是保存在缓冲区中的分支目标地址。 这个缓冲区就是分支目标缓冲区(BranchTarget Buffer,简记为BTB,或者BranchTarget Cache)。
23/28
虚拟存储器的特点

使用再定序缓冲的处理部件的硬件结构
从指令部件来 再定序缓冲 ……
浮点 操作 队列
去存储器 操作总线 操作数总线 (地址/数据)
浮点寄存器组
保留站 从存储器来 (取的结果) ) FP 加法器 公共数据总线 FP 乘法器
图4.14 采用Tomasulo算法并支持前瞻执行的DLX浮点部件的结构
决定预测的走向。 记录分支历史的方法有以下几种: (1)仅仅记录最近一次或最近几次的分支历史; (2)记录分支成功的目标地址;
•,相当于前
面两种方式的结合; (4)记录分支目标地址的一条或若干条指令。
虚拟存储器的特点
3/28
4.3 控制相关的动态解决技术
分支预测缓冲技术(Branch-Prediction Buffer或者 Branch History Table,简写为BTB或者BHT): 目前广泛使用的最简单的动态分支预测技术。 使用一片存储区域,记录最近一次或几次分支特 征的历史。 1. 只有1个预测位的分支预测缓冲
2
2 0
不是
不是
表4.3 采用BTB技术时指令在各种情况下的延迟
虚拟存储器的特点
16/28
4.3 控制相关的动态解决技术
例4.7 按表4.3计算分支转移总的延迟,根据下面的假 设,计算分支目标缓冲的性能。 (1)对于BTB中的指令,预测准确率90% (2)缓冲区命中率90% (3)不在BTB中分支转移成功的比例为60% 解 根据表4.3的分类,性能计算包括4个部分: ( 1 )在 BTB 中,预测成功,实际成功,此时的 延迟为0。 (2)在BTB中,预测成功,实际不成功,此时 的延迟为:
虚拟存储器的特点
5/28
4.3 控制相关的动态解决技术
2. 分支预测缓冲技术包括两个步骤

分支预测 如果当前缓冲记录的预测位为“1”,则预
测分为成功;如果预测位为“0”,则预测分支 为不成功。

预测位修改 如果当前分支成功,则预测位置为“1”; 如果当前分支不成功,预测位置为“0”。
3. 分 支 预 测 错 误 时, 预测位就被修改 ,并且需 要恢复现场,程序从分支指令处重新执行。
否则预测下一次分支不成功。

预测位的修改和两位预测时相同: 当分支成功时计数器的值加1,不成功时减1。

研究表明: n位分支预测的性能和两位分支预测差不多, 因而大多数处理器都只采用两位分支预测。
11/28
4.3 控制相关的动态解决技术
7.对于真实的应用程序,两位的分支预测的准 确率可达到多少呢? SPEC89标准程序的测试: 在 使 用 4096 个 记 录 项 的 缓 冲 区 时 , 分 支 预测准确率可达到99%到82%。 使用无穷多历史记录项的分支预测缓冲, 只有少量程序的分支预测准确率仅仅比 4096 个记录项提高 1% ,多数程序的预测精度是相 同的。 因此,对于 SPEC89 应用环境而言, 4K 的 缓冲区是恰当的。 8.上述分支预测机制对于改进后的DLX流水线没 有帮助。
虚拟存储器的特点
6/28
4.3 控制相关的动态解决技术
得到分支结果 i+1 分支指令 i-1 i i+2
猜测执行路径 实际执行路径
p+1
p+2
图4.10 分支预测执行不成功和重新执行过程
虚拟存储器的特点
7/28
4.3 控制相关的动态解决技术
例4.6 一个循环共循环10次,它将分支成功9次, 1 次不成功。假设此分支的预测位始终在 缓冲区中。那么分支预测的准确性是多少? 解 这种固定的预测将会在第一次和最后一次 循环中出现预测错误。
4.3 控制相关的动态解决技术
分支预测: 成功
分支不成功 分支不成功
图4.11 具有两个分支预测位的分支预测缓冲状态转换机制
虚拟存储器的特点
10/28
4.3 控制相关的动态解决技术
6. n位分支预测缓冲

采用n位计数器,则计数器的值在0到2n-1之间:
当 计 数 器 的 值 大 于 或 等 于 最 大 值 的 一 半 ( 2n-1 ) 时,则预测下一次分支成功;
yes MULTD F0,F2,F4
yes SUBD yes DIVD
F8
F10 F6
yes ADDD
F6,F8,F2
写结果
#4+#2
浮点寄存器状态表
域 ROB号 忙
F0 3 yes
F2
F4
F6 6
F8 4 yes
F10 5 yes
… … …
F30
no
no
yes
no
通过再定序缓冲,可以在进行精确异常处理的同时进行动态指令调度。
第一次预测错误是源于上次程序的执行, 因为上一次程序最后一次分支是不成功的。
最后一次预测错误是不可避免的,因为前 面的分支总是成功,共九次。 因此,尽管分支成功的比例率是90%, 但分支预测的准确性为80%(两次不正确, 8次确)。
虚拟存储器的特点
8/28
4.3 控制相关的动态解决技术
4.1位预测机制的缺点
预测错误,清除取来的 指令并从分支的另外 一个目标取指令,删除 BTB 中对应项
预测成功, 后续指令无 延迟执行
问题:解决预测错误或不命中的延迟。
4.3 控制相关的动态解决技术
3. 采用BTB技术时指令在各种情况下的延迟
指令在BTB中? 预测结果 实际的动作 是 是 延迟周期 0
成功
成功
成功
不成功 成功 不成功

索引:分支指令地址的低位。

存储区:1位的分支历史记录位,又称为
预测位,记录该指令最近一次 分支是否成功。
相关文档
最新文档