CN110109705A - 一种支持嵌入式边缘计算的超标量处理器分支预测方法 - Google Patents
一种支持嵌入式边缘计算的超标量处理器分支预测方法 Download PDFInfo
- Publication number
- CN110109705A CN110109705A CN201910398692.2A CN201910398692A CN110109705A CN 110109705 A CN110109705 A CN 110109705A CN 201910398692 A CN201910398692 A CN 201910398692A CN 110109705 A CN110109705 A CN 110109705A
- Authority
- CN
- China
- Prior art keywords
- branch
- processor
- performance
- instruction
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004364 calculation method Methods 0.000 title claims abstract description 17
- 238000011156 evaluation Methods 0.000 claims abstract description 24
- 238000012549 training Methods 0.000 claims abstract description 18
- 238000004088 simulation Methods 0.000 claims abstract description 8
- 238000004445 quantitative analysis Methods 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims abstract description 6
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 claims description 18
- 229910052710 silicon Inorganic materials 0.000 claims description 18
- 239000010703 silicon Substances 0.000 claims description 18
- 230000009191 jumping Effects 0.000 claims description 17
- 238000012544 monitoring process Methods 0.000 claims description 16
- 230000002902 bimodal effect Effects 0.000 claims description 12
- 238000013461 design Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 229920006395 saturated elastomer Polymers 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 2
- 238000007619 statistical method Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 abstract description 7
- 230000007246 mechanism Effects 0.000 abstract description 4
- 238000004904 shortening Methods 0.000 abstract description 3
- 238000003860 storage Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3846—Speculative instruction execution using static prediction, e.g. branch taken strategy
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种支持嵌入式边缘计算的超标量处理器分支预测方法,通过动态分支预测技术量化分析,采用计算机体系结构模拟软件GEM5,对分支预测器的分支方向、分支地址预测准确率进行模拟与定量分析。本发明还解决处理器性能模型抽象层次高所导致的评估精度问题,并提出一种缩短分支预测器训练时间的机制,以及简化进程切换处理的分支预测方法;不仅提升分支预测器的命中率,而且减少处理器功耗。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种支持嵌入式边缘计算的超标量处理器分支预测方法。
背景技术
嵌入式边缘计算AI芯片往往是针对特定AI应用、直接在终端设备上做深度学习计算的SoC芯片,对功耗、能效比有很强的要求。除主控处理器、视频解码等模块,深度学习加速计算在边缘计算SoC芯片中,扮演着越来越重要的角色。主控处理器、深度学习加速卡的软硬件协同策略,是提升边缘计算SoC芯片性能的关键技术。
超标量,通过提高指令并行度(ILP),是提高处理器性能的重要途径。超标量与超长指令字(VLIW)技术作为挖掘指令并行度的重要手段,分别在硬件层面与软件层面,对指令进行调度。超标量技术由硬件决定指令并行性,对于编译器要求较低,软件可移植性较强;超长指令字技术由软件调度指令并行性,大大降低硬件复杂度,但软件复杂度较高,寄存器、功能单元数目增多,并且超长指令字的程序兼容性较低。
伴随着处理器微体系结构的不断发展和日益复杂,在处理器研制过程中进行性能分析显得非常重要。性能分析可以分为硅前、硅后两个阶段。硅前分析的常用手段是创建性能模型,模型的抽象层次通常较高,因此精度有限,所以硅前分析方法多数用于设计空间探索。
分支预测器:高性能处理器中大部分采用流水线技术,随之而来的待解决问题是跳转指令的周期损失,对于深度流水线结构的处理器,则更为明显。因此,成熟、精准的分支预测器,对于提升处理器性能非常关键。
双峰预测器:双峰预测器的原理图如图(2)所示,核心部分为BTB表,表中存储着跳转指令的信息,包括四个域:模式标志位、跳转指令地址、跳转目标地址和下一分发包首地址。MF用于标注跳转指令的类型,“0”表示非条件执行的跳转指令,“1”表示条件执行的跳转指令。下一分发包首地址的作用是当预测指令发生跳转,但实际却不发生跳转的情况下,检测出分支预测器出错,进而清空流水线,并且重新取指执行。
双峰预测器产生预测错误的情况,主要有以下三种:
(1)预测跳转,但实际不跳转。
(2)预测不跳转,但实际跳转。
(3)预测跳转,实际也跳转,但跳转的目标地址错误。
当预测错误时,要清空流水线,从正确的位置重新执行,并且更新BTB表和BHT等信息。对于上面三种情形,错误的纠正方法不完全相同。对于情况(1)的预测错误,重新执行的正确位置是BTB表中存储的跳转指令的下一个分发包的首地址,BTB表项不需要更改,BHT状态需要转换;对于情况(2)的预测错误,重新执行的正确位置是实际跳转的跳转目标地址,BTB表项需要更新,写入实际跳转的跳转信息,并转换BHT状态;对于情况(3)的预测错误,重新执行的正确位置是实际跳转的跳转目标地址,BTB表项根据实际跳转情况进行更新,BHT状态需要转换。
对于预测错误,可能的原因是BTB表冲突,由于BTB表项有限,不同的跳转指令可能映射到同一表项上,取得预测信息显然不是准确的。可适当增大BTB表,但会增加额外的硬件面积。预测器的准确率与硬件面积需折中考虑。对于BTB冲突的情形,本发明采用的应对方法是表项中记录最近一次执行的跳转指令信息。原因是最近一次执行的跳转指令,再一次执行的概率更大。
对首次遇到的跳转指令,由于BTB表中没有该跳转指令的信息,导致无法预测,可能产生两种结果:
(1)没有进行预测,但实际发生跳转。
(2)没有进行预测,实际也不发生跳转。
对于情况(1),要清空流水线,从跳转目标地址取指执行,将实际跳转信息写入BTB表中,并更新对应的BHT项状态;对于情况(2),无需清空流水线,只需将实际跳转信息写入BTB表中,BHT状态仍保持不变。
第二次遇到相同的跳转指令时,实际发生跳转的场景,BHT项状态为“01”,预测方向仍为不跳转,依然无法正确预测。直到第三次遇到此跳转指令时,BHT项状态为“11”,才能正确预测。所以,双峰预测器对同一条跳转指令的训练次数为2次。
PAp预测器:对于循环分支跳转指令,双峰预测器可以正确预测前面数次跳转的场景。若最后一次出现不跳转,该预测器是无法正确预测的。为此,本发明引入PAp预测器,该预测器能充分考虑到相同跳转指令内部执行的依赖关系,PAp预测器的结构如图(3)所示。
发明内容
基于背景技术存在的技术问题,本发明提出一种支持嵌入式边缘计算的超标量处理器分支预测方法。
本发明提出的一种支持嵌入式边缘计算的超标量处理器分支预测方法,包括以下步骤:
S1:动态分支预测器量化分析部件:采用计算机体系结构模拟软件GEM5,以及CoreMark、Dhrystone Benchmark,对2bC、GAg、PAg、GAp、PAp、G-share、TAGE等预测器的分支方向、分支地址的预测准确率进行性能模拟,以及统计分析,得出分支预测器的准确率与硬件实现复杂度之间的定量关系;
S2:基于硬件计数器的处理器体系结构性能分析部件:性能分析分为硅前、硅后两个阶段;
硅前性能分析的常用手段是创建性能模型,而性能模型的抽象层次通常较高。因此,该方法精度有限,常用于设计空间探索;
抽象层次较高的性能模型无法进行细粒度的、微体系结构级的性能分析和优化,一般需要使用RTL模型或者抽象层次接近RTL代码的模型;
硅后性能分析的常用手段是使用硬件性能计数器,现代处理器往往均实现基于硬件计数器的处理器体系结构性能分析部件;
S3:处理器专用性能监测部件:处理器专用性能监测部件往往由若干性能计数器组成,该部件与处理器核处于同一时钟域。该部件对来自处理器核的性能事件进行统计,并将统计结果输出给关键数据汇总部件;
性能计数器的个数,依据分析需要可以通过参数化,任意添加或删减,并对需要统计的所有事件进行计数;
S4:关键数据汇总部件:处理器专用性能监测部件和基于硬件计数器的处理器体系结构性能分析部件所统计的所有事件,均被送到关键数据汇总部件。关键数据汇总部件实现与待统计的性能事件数目一致的影子寄存器,在寄存器使能条件被触发时,使用性能寄存器的值更新影子寄存器;
影子寄存器的更新可以由定时器触发,也可以根据关键数据汇总部件给出的收集使能信号触发;
影子寄存器的输出送到一个多路选择器,该选择器根据读出地址决定将哪个事件输出给关键数据汇总部件;
S5:缩短分支预测器的训练时间:在取指阶段,通过PC、ASID快速译码,并确定是否为跳转指令;对于仅存在一种跳转方向的非条件执行跳转指令,采用双峰预测器预测,可减小面积、降低功耗与训练时间,并减少硬件存储资源的负担;
S6:分支预测器的状态机优化:为避免偶然的分支指令跳转方向波动的干扰,学术界在1位分支预测器的基础上,提出2位分支预测。2位分支预测器(2位饱和计数器)通过四个状态,记录分支指令的跳转方向;
S7:基于ASID、PC的分支预测器:在取指令的同时,进行分支预测,以确保下个周期可根据分支预测器的预测结果继续取指令;
在产生指令的同一时钟周期,根据PC值、ASIC预测该周期指令组中是否存在分支指令,以及分支指令的方向和目标地址。
优选地,所述步骤S6中,训练一条方向为跳转的跳转指令,需要两次训练,第三次才能正确预测。
优选地,所述步骤S8中,在所述处理器的流水线各个状态中,分支预测的处理是越靠前越好。
优选地,所述步骤S5中,对于存在两种跳转方向的条件执行跳转指令,采用改进型PAp预测器进行预测,提供预测命中率。
优选地,所述步骤S6中,这四个状态分别是强跳转状态(11)、弱跳转状态(10)、弱不跳转状态(01)、强不跳转状态(00),当分支预测正确时,则强化当前状态;否则,弱化当前状态。
本发明具有以下有益效果;
1、提出一种动态分支预测技术量化分析方法,统计出预测准确率与硬件实现复杂度之间的量化关系,为设计出具有高准确率和低复杂度的动态分支预测器提供参考
2、提出、实现一种基于硬件计数器的处理器核微体系结构级性能分析方法,充分利用RTL模型的准确性,结合性能监测单元指导软件优化的设计思想,解决CPU性能模型抽象层次高所导致的性能评估精度问题;
3、提出一种缩短分支预测训练时间的机制,在取指阶段,通过快速预解码,确定是否为跳转指令;对于仅存在一种跳转方向到非条件执行跳转指令,采用双峰预测器预测,可减小面积、降低功耗与训练时间,并减少存储资源的负担;对于存在两种跳转方向的条件执行跳转指令,采用改进型PAp预测器进行预测,提升分支预测命中率,并减少流水线中抹掉的指令,进而提升处理器的效率;
4、提出一种基于ASID、PC的分支预测方法,既保证处理器的执行效率,在进程切换过程中,也无需清空分支预测器中的内容。
附图说明
图1为双峰预测器原理图;
图2为双峰预测器2bit饱和计数器状态机;
图3为PAp预测器结构图;
图4为基于硬件计数器的处理器核性能分析方法;
图5为专用性能监测单元系统框图;
图6为数据收集单元系统框图;
图7为PHT的传统状态机与改进型状态机对比;
图8为一种基于ASID、PC快速解码的分支预测方法;
图9为本发明提出的一种支持嵌入式边缘计算的超标量处理器分支预测方法的流程总图。
具体实施方式
下面结合具体实施例对本发明作进一步解说。
一种支持嵌入式边缘计算的超标量处理器分支预测方法,包括以下步骤:
S1:动态分支预测器量化分析部件:采用计算机体系结构模拟软件GEM5,以及CoreMark、Dhrystone Benchmark,对2bC、GAg、PAg、GAp、PAp、G-share、TAGE等分支预测器的分支方向、分支地址预测准确率进行性能模拟,并统计分析,得出预测准确率与硬件实现复杂度之间的定量关系;
S2:基于硬件计数器的处理器体系结构性能分析部件:处理器性能分析分为硅前、硅后两个阶段;
硅前性能分析的常用手段是创建性能模型,模型的抽象层次通常较高,精度有限,多用于设计空间探索;
抽象层次较高的性能模型无法进行细粒度的、微体系结构级的性能分析和优化,需要使用RTL模型或者抽象层次接近RTL代码的模型;
硅后性能分析的常用手段是使用硬件性能计数器,现代处理器往往使用基于硬件计数器的处理器体系结构性能分析部件;
为了从微体系结构级分析处理器核的性能瓶颈,本发明在处理器核的外部添加一个处理器专用性能监测部件。
由于该部件仅用于硅前处理器核性能分析和优化,不需要集成到处理器核中,因此不受硬件实现代价的制约,进行微体系结构分析需要的任何事件(即处理器核内部硬件信号),均可以送到处理器专用性能监测部件。关键数据汇总部件收集性能监测部件所统计的各类事件。关键数据汇总部件可以在整个性能统计过程结束后进行,也可以按照一定时间间隔定期进行。收集到的数据输出给结果分析器,结果分析器通过分析各类事件寻找处理器核运行相应应用程序时的性能受限因素。
S3:处理器专用性能监测部件:处理器专用性能监测部件由若干性能计数器组成,如图(5)所示,该单元和处理器核运行在同一时钟域,对来自处理器核的性能事件进行统计,并把统计结果输出给关键数据汇总部件;
性能计数器的个数依据分析需要,可以参数化任意添加或删减,能够同时对需要统计的所有事件进行计数;
S4:关键数据汇总部件:处理器专用性能监测部件和基于硬件计数器的处理器体系结构性能分析部件的所有事件,均被送到关键数据汇总部件,如图(6)所示。关键数据汇总部件实现与待统计的性能事件数目一致的影子寄存器,在寄存器使能条件被触发时,使用性能寄存器的值更新影子寄存器;
影子寄存器的更新可以由定时器触发,也可以由关键数据汇总部件给出的收集使能信号触发;
影子寄存器的输出送到一个多路选择器,该选择器根据读出地址决定将哪个事件输出给结果分析器;
S5:缩短分支预测器的训练时间:在取指阶段,通过PC、ASID快速译码,并确定是否为跳转指令;对于仅存在一种跳转方向的非条件执行跳转指令,采用双峰预测器预测,可降低面积、功耗与训练时间,并减少存储资源的负担;
S6:分支预测器的状态机优化:为避免偶然的分支指令跳转方向波动的干扰,学术界在1位分支预测器的基础上,提出2位分支预测,如图(7)所示,2位分支预测器(2位饱和计数器)通过四个状态记录分支指令的跳转倾向;
这四个状态分别是强跳转状态(11)、弱跳转状态(10)、弱不跳转状态(01)、强不跳转状态(00),当分支预测正确时,则强化当前状态;否则,弱化当前状态。
基于上述方法,训练一条方向为跳转的跳转指令,需要两次训练,第三次才能正确预测,对于PAp预测器,每个PT模式状态都需要两次训练,如果是for循环,训练次数为两倍循环次数,分支预测器的代价相当大,为此,结合2位分支预测器中传统有限状态机特性,提出一种新的有限状态机;如图(7)所述。
改进后的PAp训练时间减半,但是对于循环次数较多的指令,训练代价仍较大。对此,提出一种硬件循环机制,来优化、解决此问题。
以下是一段包含有循环操作的C代码。
for(i=0;i<10000;i++){
d[i]=a[i]+1;}
如果没有使用硬件循环,其对应的汇编代码如下。
寄存器x4存放的是已执行的循环次数,寄存器x5存放的是需要执行的总循环次数,在每一次循环操作最后,要将寄存器x4加1,然后与寄存器x5比较,如果不相等,那么转移到循环起始位置继续执行。这样的一个过程有两个地方影响效率:
(1)每次循环,要将x4加1。
(2)每次循环,要做一个分支转移,如果分支预测做得不好,那么会浪费至少一个周期。
引入硬件循环以改进循环效率,引入硬件循环后的汇编代码如下。
第一条指令lp.setupi设置了循环次数,设置了循环段的终止地址,随后就是循环段代码,与没有使用硬件循环的汇编代码相比,此处减少了判断是否循环次数达到的代码,同时减少了分支转移指令,效率因此提高
S7:基于ASID、PC的分支预测:在取指令的同时,进行分支预测,以确保下个周期可根据预测的结果继续取指令;
如图(8)所示,在产生指令的同一时钟周期,根据PC值、ASIC预测该周期指令组中是否存在分支指令,以及分支指令的方向和目标地址;
本发明提出一种动态分支预测技术量化分析方法,统计出预测准确率与硬件实现复杂度之间的量化关系,为设计出具有高准确率和低复杂度的动态分支预测器提供参考;提出、实现一种基于硬件计数器的处理器核微体系结构级性能分析方法,充分利用RTL模型的准确性,结合性能监测单元指导软件优化的设计思想,解决CPU性能模型抽象层次高所导致的性能评估精度问题;提出一种缩短分支预测训练时间的机制,在取指阶段,通过快速预解码,确定是否为跳转指令;对于仅存在一种跳转方向到非条件执行跳转指令,采用双峰预测器预测,可降低面积、功耗与训练时间,并减少存储资源的负担;对于存在两种跳转方向的条件执行跳转指令,采用改进型PAp预测器进行预测,提升分支预测命中率,并减少流水线中抹掉的指令,进而提升处理器的效率;提出一种基于ASID、PC的分支预测方法,既保证处理器的执行效率,在进程切换过程中,也无需清空分支预测器中的内容。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (5)
1.一种支持嵌入式边缘计算的超标量处理器分支预测方法,其特征在于,包括以下步骤:
S1:动态分支预测器量化分析部件:采用计算机体系结构模拟软件GEM5,以及CoreMark、Dhrystone Benchmark,对2bC、GAg、PAg、GAp、PAp、G-share、TAGE等预测预测器的分支方向、分支地址预测准确率进行性能模拟,并对模拟结果进行统计分析,得出各分支预测器的准确率与硬件实现复杂度之间的量化关系;
S2:基于硬件计数器的处理器体系结构性能分析部件:性能分析一般分为硅前、硅后两个阶段;
硅前性能分析的常用手段是创建处理器性能模型,模型的抽象层次通常较高,往往精度有限。所以,硅前分析方法多数用于设计空间探索;
抽象层次较高的性能模型,无法进行细粒度的、微体系结构级的处理器性能分析、优化,一般需要使用RTL模型或者抽象层次接近RTL代码的模型;
硅后性能分析的常用手段是基于硬件性能计数器,现代处理器子系统往往实现性能监测单元PMU;
S3:处理器专用性能监测部件:处理器专用性能监测部件由若干个性能计数器组成,该部件与处理器均工作在同一个时钟域下。处理器性能监测部件,主要用于实时统计处理器核的性能事件,并将统计结果输出给关键数据汇总部件;
性能计数器的个数,根据处理器子系统性能分析的需要,可通过参数化处理,实现添加或删减,并对所有待统计处理器性能事件进行计数;
S4:关键数据汇总部件:处理器专用性能监测部件、处理器体系结构性能分析部件所统计的所有事件,均被送到关键数据汇总部件。关键数据汇总部件实现与待统计的性能事件数目一致的影子寄存器,当寄存器使能条件被触发时,使用性能寄存器的值更新影子寄存器;
影子寄存器的更新可以由硬件定时器触发,也可以由关键数据汇总部件给出的收集使能信号触发;
影子寄存器的输出,被送到一个多路选择器,并根据读出地址决定将哪个事件输出给结果分析器;
S5:缩短分支预测器的训练时间:在取指阶段,通过PC、ASID快速译码,并确定当前指令是否为跳转指令;对于仅存在一种跳转方向的非条件执行跳转指令,采用双峰预测器预测,可降低面积、功耗与训练时间,并减少硬件存储资源的负担;
S6:分支预测器的状态机优化:为避免偶然的分支指令跳转方向波动的干扰,学术界在1位分支预测器的基础上,提出2位分支预测器。2位分支预测器(2位饱和计数器)通过四个状态记录分支指令的跳转倾向;
S7:基于ASID、PC的分支预测器:在取指令的同时,进行分支预测,以确保下个时钟周期,处理器可根据分支预测器的结果继续取指令;
在产生PC的同一时钟周期,根据PC值、ASIC预测该周期指令组中是否存在分支指令,以及分支指令的方向和目标地址。
2.根据权利要求1所述的一种支持嵌入式边缘计算的超标量处理器分支预测方法,其特征在于,所述步骤S6中,训练一条方向为跳转的跳转指令,需要两次训练,第三次才能正确预测。
3.根据权利要求1所述的一种支持嵌入式边缘计算的超标量处理器分支预测方法,其特征在于,所述步骤S8中,在所述处理器的流水线各个状态中,分支预测的处理是越靠前越好。
4.根据权利要求1所述的一种支持嵌入式边缘计算的超标量处理器分支预测方法,其特征在于,所述步骤S5中,对于存在两种跳转方向的条件执行跳转指令,采用改进型PAp预测器进行预测,提高预测命中率。
5.根据权利要求1所述的一种支持嵌入式边缘计算的超标量处理器分支预测方法,其特征在于,所述步骤S6中,这四个状态分别是强跳转状态(11)、弱跳转状态(10)、弱不跳转状态(01)、强不跳转状态(00)。当分支预测器的结果正确时,则强化当前状态;否则,弱化当前状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910398692.2A CN110109705A (zh) | 2019-05-14 | 2019-05-14 | 一种支持嵌入式边缘计算的超标量处理器分支预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910398692.2A CN110109705A (zh) | 2019-05-14 | 2019-05-14 | 一种支持嵌入式边缘计算的超标量处理器分支预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110109705A true CN110109705A (zh) | 2019-08-09 |
Family
ID=67489894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910398692.2A Pending CN110109705A (zh) | 2019-05-14 | 2019-05-14 | 一种支持嵌入式边缘计算的超标量处理器分支预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110109705A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111078295A (zh) * | 2019-11-28 | 2020-04-28 | 核芯互联科技(青岛)有限公司 | 一种乱序高性能核的混合分支预测装置及方法 |
CN111221575A (zh) * | 2019-12-30 | 2020-06-02 | 核芯互联科技(青岛)有限公司 | 一种乱序高性能处理器的寄存器重命名方法及系统 |
CN114816536A (zh) * | 2022-06-30 | 2022-07-29 | 飞腾信息技术有限公司 | 一种分支预测处理方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109716293A (zh) * | 2016-09-21 | 2019-05-03 | 高通股份有限公司 | 在基于处理器的系统中使用融合处理器核心执行分布式分支预测 |
-
2019
- 2019-05-14 CN CN201910398692.2A patent/CN110109705A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109716293A (zh) * | 2016-09-21 | 2019-05-03 | 高通股份有限公司 | 在基于处理器的系统中使用融合处理器核心执行分布式分支预测 |
Non-Patent Citations (4)
Title |
---|
付家为等: "一种支持Superscalar-VLIW混合架构处理器的混合分支预测设计", 《计算机应用与软件》 * |
吴金磊: "处理器核的性能分析及其分支预测结构优化", 《中国优秀硕士论文电子期刊网 信息科技辑》 * |
王伟: "乱序处理器分支预测器性能建模", 《中国优秀硕士论文电子期刊网 信息科技辑》 * |
肖泽强: "动态分支预测技术分析与量化研究", 《信息技术》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111078295A (zh) * | 2019-11-28 | 2020-04-28 | 核芯互联科技(青岛)有限公司 | 一种乱序高性能核的混合分支预测装置及方法 |
CN111221575A (zh) * | 2019-12-30 | 2020-06-02 | 核芯互联科技(青岛)有限公司 | 一种乱序高性能处理器的寄存器重命名方法及系统 |
CN114816536A (zh) * | 2022-06-30 | 2022-07-29 | 飞腾信息技术有限公司 | 一种分支预测处理方法、装置、设备及存储介质 |
CN114816536B (zh) * | 2022-06-30 | 2022-09-20 | 飞腾信息技术有限公司 | 一种分支预测处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Heckmann et al. | The influence of processor architecture on the design and the results of WCET tools | |
KR101994636B1 (ko) | 데이터 처리장치의 추적 | |
Cher et al. | Skipper: a microarchitecture for exploiting control-flow independence | |
CN100480994C (zh) | 分支目标缓冲器及其使用方法 | |
CN109643273A (zh) | 用于时间旅行调试和分析的程序跟踪 | |
CN110109705A (zh) | 一种支持嵌入式边缘计算的超标量处理器分支预测方法 | |
KR20180021812A (ko) | 연속하는 블록을 병렬 실행하는 블록 기반의 아키텍쳐 | |
CN108287730A (zh) | 一种处理器流水线结构 | |
CN108885579B (zh) | 用于根据核追踪进行数据挖掘的方法和设备 | |
CN101763249A (zh) | 对非控制流指令减少分支检验 | |
Collins et al. | Control flow optimization via dynamic reconvergence prediction | |
US10564992B2 (en) | Simulation apparatus and storage medium | |
CN109964207A (zh) | 用于时间行程调试和分析的基于高速缓存的跟踪 | |
CN104169886A (zh) | 通过地址的运行时间检测间接采样 | |
CN104169887A (zh) | 通过指令操作码的运行时间检测间接采样 | |
Eisinger et al. | Automatic identification of timing anomalies for cycle-accurate worst-case execution time analysis | |
Pruett et al. | Branch runahead: An alternative to branch prediction for impossible to predict branches | |
Butts et al. | Characterizing and predicting value degree of use | |
US20080222400A1 (en) | Power Consumption of a Microprocessor Employing Speculative Performance Counting | |
Choi et al. | Accurate branch prediction for short threads | |
Premillieu et al. | Syrant: Symmetric resource allocation on not-taken and taken paths | |
CN107592924A (zh) | 用于对由处理器执行的指令进行优化的方法和装置 | |
US20090037161A1 (en) | Methods for improved simulation of integrated circuit designs | |
Salverda et al. | Accurate critical path prediction via random trace construction | |
US6430682B1 (en) | Reliable branch predictions for real-time applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190809 |