CN104461468B - 基于处理器指令快速完成的精确异常维护方法及装置 - Google Patents
基于处理器指令快速完成的精确异常维护方法及装置 Download PDFInfo
- Publication number
- CN104461468B CN104461468B CN201410582418.8A CN201410582418A CN104461468B CN 104461468 B CN104461468 B CN 104461468B CN 201410582418 A CN201410582418 A CN 201410582418A CN 104461468 B CN104461468 B CN 104461468B
- Authority
- CN
- China
- Prior art keywords
- instruction
- processor
- retirement
- exception
- unit
- 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.)
- Active
Links
Abstract
一种基于处理器指令快速完成的精确异常维护方法,包括如下步骤:1)查询处理器指令快速完成时是否检测到异常,若检测到异常则执行步骤2),否则跳到步骤3)执行;2)该指令执行结束并同步于退休响应精确异常,返回到步骤1);3)该指令正常退休并缓存指令的地址与处理器状态信息;4)查询指令正常退休后的执行过程中是否检测到异常,若检测到异常则执行步骤5),否则跳到步骤6)执行;5)根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,返回到步骤1);6)该指令正常回写执行结果,返回到步骤1)。以及提供一种精确异常维护装置。本发明充分利用流水线的执行效率,提升处理器性能。
Description
技术领域
本发明涉及处理器的精确异常技术领域,尤其是一种基于处理器指令快速完成的精确异常维护方法及装置。
背景技术
处理器的设计中,性能以及精确异常一直是关键的设计指标。随着大数据时代的到来,计算任务越来越复杂,对处理器的性能以及精确异常的要求越来越苛刻。
精确异常是指引起异常的指令对处理器状态不产生影响,要求:该指令之前的全部指令已经完成对处理器状态的更新;该指令之后的任何指令没有更改处理器状态;记录该指令的地址和处理器状态,异常处理结束后恢复处理器状态并重新执行。
目前常见的精确异常维护方法包括:当译码得到该指令可能产生异常,则停顿后续指令的发射,直到该指令执行完毕且没有发生异常;允许后续指令的乱序执行,通过退休单元记录指令执行顺序,直到指令执行完毕才能从流水线中按序退休并回收所占用的退休单元表项。这些方法会导致流水线频繁停顿,无法充分利用流水线的执行效率,以至于在某些高性能处理器中,如Alpha 21064,Power 2,MIPS R8000,精确异常模式与非精确异常模式相比,执行速度慢很多(超过10倍)。
发明内容
为了克服已有的处理器精确异常维护方法的无法充分利用流水线的执行效率、限制处理器性能的不足,本发明提供一种有效减少了处理器精确异常模式下的流水线停顿,充分利用流水线的执行效率,提升处理器性能的基于处理器指令快速完成的精确异常维护方法及装置。
本发明解决其技术问题所采用的技术方案是:
一种基于处理器指令快速完成的精确异常维护方法,所述精确异常维护方法包括如下步骤:
1)查询处理器指令快速完成时是否检测到异常,若检测到异常则执行步骤2),否则跳到步骤3)执行;
2)该指令执行结束并同步于退休响应精确异常,返回到步骤1)检测下一条指令;
3)该指令正常退休并缓存指令的地址与处理器状态信息,执行步骤4);
4)查询指令正常退休后的执行过程中是否检测到异常,若检测到异常则执行步骤5),否则跳到步骤6)执行;
5)根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,返回到步骤1)检测下一条指令;
6)该指令正常回写执行结果,返回到步骤1)检测下一条指令。
进一步,步骤1)中,所述的快速完成包括三种情况:①指令处于译码阶段尚未执行时从流水线中退休、②多执行周期指令处于执行阶段尚未得到最终计算结果时从流水线中退休、③装载/存储指令尚未完成对存储器的读/写时从流水线中退休。
再进一步,步骤1)中,所述的处理器指令包括定点指令、矢量指令、浮点指令,装载/存储指令。
更进一步,步骤1)中,指令执行周期长度大于或等于1。
步骤3)中,将指令的退休与回写分开,若指令快速完成时尚未检测到异常,则允许该指令从整条流水线中正常退休,最后一级流水线的程序计数器将指向下一条指令,并在此时缓存该指令的地址与处理器状态信息,所述的处理器状态信息包括处理器在指令退休时是否响应了中断请求或调试请求。
步骤5)中,所述的处理器现场包括异常现场、中断现场、调试现场的影子地址寄存器以及影子状态寄存器;步骤5)所述的处理器现场恢复不对寄存器堆进行恢复更新,寄存器堆包括定点寄存器堆、矢量寄存器堆、浮点寄存器堆和控制寄存器堆。
步骤5)中,若指令在退休后的执行过程中检测到异常,则处理器将异步于退休进行异常、中断、调试请求优先级判断,确保进行精确响应。
步骤5)中,通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常。
步骤6)中,通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常。
一种基于处理器指令快速完成的精确异常维护装置,包括:
取指单元,处于流水线的最前级,负责从存储器中读取指令并送入流水线;
指令译码单元,连接取指单元的输出端,负责对取指单元送入的指令进行译码,得到指令的类型、是否需要回写寄存器堆、源寄存器号、目的寄存器号,执行周期等信息;
指令发射单元,连接指令译码单元的输出端,负责检测指令的相关性,根据译码得到的指令类型,将相关性已消除的指令发射到相应的执行单元,相关性包括数据相关、控制相关、执行单元资源冲突;
执行单元,连接指令发射单元的输出端,包括定点执行单元、浮点执行单元、矢量执行单元、装载存储单元,负责各类指令的流水执行,各执行单元均需要多个周期执行完毕;
寄存器堆,连接结果缓冲单元的输出端,包括定点寄存器堆、浮点寄存器堆、矢量寄存器堆、控制寄存器堆,负责保存变量的值;
退休单元,连接执行单元快速完成的输出端,负责维护最后一级流水线的程序计数器并查询指令快速完成时是否检测到异常,若检测到异常,则该指令执行结束并同步于退休响应精确异常,否则该指令正常退休并缓存指令的地址与处理器状态信息,最后一级流水线的程序计数器将指向下一条指令;
结果缓冲单元,连接执行单元执行完成的输出端,将指令退休与指令回写分开,负责保存指令的执行结果并查询指令正常退休后的执行过程中是否检测到异常,若检测到异常,则根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,否则该指令正常回写执行结果,结果缓冲单元通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常;
指令地址和处理器状态缓冲单元,连接退休单元以及异常/中断/调试优先级仲裁单元的输出端,负责在快速完成指令正常退休时保存该指令的地址和此时处理器的状态信息,处理器的状态信息包括处理器是否响应了中断请求或调试请求,用于正确恢复处理器现场。
进一步,所述精确异常维护装置还包括:
异常/中断/调试优先级仲裁单元,连接退休单元以及结果缓冲单元的输出端,负责根据处理器指定的编程模型对检测到的异常、中断、调试请求进行优先级排序并响应优先级最高的请求;
影子地址寄存器和影子状态寄存器,连接指令地址和处理器状态缓冲单元的输出端,负责保存处理器响应异常/中断/调试请求时的现场,用于在异常/中断/调试处理完成后恢复现场重新执行。
本发明的有益效果是:1)减少了处理器精确异常模式下的流水线停顿,提升了性能;2)无需额外步骤恢复寄存器堆,实现简单。
附图说明
图1是基于处理器指令快速完成的精确异常维护方法的流程图;
图2是基于处理器指令快速完成的精确异常维护装置的框架图。
图3是本发明装置中退休单元的架构图。
图4是本发明装置中指令地址和处理器状态缓冲单元的架构图。
图5是本发明装置中结果缓冲单元的架构图。
图6是本发明装置中异常/中断/调试优先级仲裁单元的架构图。
具体实施方式
下面结合附图对本发明作进一步描述。
实施例1
参照图1~图5,一种基于处理器指令快速完成的精确异常维护方法,包括如下步骤:
1)查询处理器指令快速完成时是否检测到异常,若检测到异常则执行步骤2),否则跳到步骤3)执行;
2)该指令执行结束并同步于退休响应精确异常,返回到步骤1)检测下一条指令;
3)该指令正常退休并缓存指令的地址与处理器状态信息,执行步骤4);
4)查询指令正常退休后的执行过程中是否检测到异常,若检测到异常则执行步骤5),否则跳到步骤6)执行;
5)根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,返回到步骤1)检测下一条指令;
6)该指令正常回写执行结果,返回到步骤1)检测下一条指令。
步骤1)中所述的处理器指令包括定点指令、矢量指令、浮点指令,装载/存储指令;指令执行周期长度大于或等于1;不论该指令执行过程中是否可能产生异常。
步骤1)中所述的快速完成包括三种情况:指令处于译码阶段尚未执行时从流水线中退休、多执行周期指令处于执行阶段尚未得到最终计算结果时从流水线中退休、装载/存储指令尚未完成对存储器的读/写时从流水线中退休。
步骤3)中将指令的退休与回写分开,若指令快速完成时尚未检测到异常,则允许该指令从整条流水线中正常退休,最后一级流水线的程序计数器将指向下一条指令,并在此时缓存该指令的地址与处理器状态信息,所述的处理器状态信息包括处理器在指令退休时是否响应了中断请求或调试请求。
步骤5)中所述的处理器现场包括异常现场、中断现场、调试现场的影子地址寄存器以及影子状态寄存器;步骤5)所述的处理器现场恢复不对寄存器堆进行恢复更新,寄存器堆包括定点寄存器堆、矢量寄存器堆、浮点寄存器堆、控制寄存器堆。
步骤5)中若指令在退休后的执行过程中检测到异常,则处理器将异步于退休进行异常、中断、调试请求优先级判断,确保进行精确响应。
步骤5)以及步骤6)中通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常,确保不会污染寄存器堆。
本实施例的流水线工作原理如下:
取指单元从片外存储器或片上高速缓存读取指令送入流水线;指令译码单元负责对送入的指令进行译码,得到指令的类型、是否需要回写寄存器堆、源寄存器号、目的寄存器号,执行周期等信息,并按照指令的顺序在退休单元以及结果缓冲单元中创建相应的表项,如图3,5所示,从而对指令进行标记,需要注意的是每条指令均在退休单元中创建相应的表项用于记录乱序执行指令的原始顺序,仅需要回写寄存器堆的指令在结果缓冲单元中创建相应的表项用于保存乱序执行指令的计算结果;当退休单元或结果缓冲单元表项满时,停顿发射、译码、取指流水线,直到有空表项允许创建新指令;指令发射单元根据译码得到的指令类型以及源寄存器信息检测指令的相关性,将相关性已消除的指令发射到相应的执行单元,相关性包括数据相关、控制相关、执行单元资源冲突。
定点指令、矢量指令、浮点指令、装载/存储指令无条件在进入执行单元的第一个周期向退休单元发起快速完成,不论该指令执行完成所需的周期数以及执行过程中是否可能产生异常;如图3所示,退休单元查询指令快速完成时是否检测到异常,若检测到异常,则该指令执行结束并从退休单元中按序退休,进而同步于退休进行异常、中断、调试请求优先级判断,如图6所示,确保进行精确响应,若未检测到异常,则该指令正常从退休单元中按序退休,并在退休时将该指令的地址和处理器是否响应了中断请求或调试请求的信息存入指令地址和处理器状态缓冲单元,如图4所示,此时最后一级流水线的程序计数器将指向下一条指令,该退休指令的最终执行结果将保存在结果缓冲单元中,如图5所示,从而将指令的退休与回写分开,加速退休单元表项的回收,减少后续指令的停顿。
如图5所示,结果缓冲单元通过队列缓存计算结果或停顿执行流水线阻止后面的指令回写寄存器堆直到队列顶部指令整个执行完毕且没有检测到异常,确保寄存器堆不会被污染,处理器现场恢复不对寄存器堆进行恢复,其中寄存器堆包括定点寄存器堆、矢量寄存器堆、浮点寄存器堆、控制寄存器堆。结果缓冲单元查询指令退休后的执行过程中是否检测到异常,若检测到异常,则按照结果缓冲单元中记录的顺序异步于退休进行异常、中断、调试请求优先级判断,如图6所示,确保进行精确响应,并根据相应缓存的指令地址与处理器状态信息,如图4所示,更新异常现场、中断现场、调试现场的影子地址寄存器以及影子状态寄存器,若没有检测到异常,则处理器正常执行后续指令,并按照结果缓冲单元中的顺序更新寄存器堆。
实施例2
参照图2~图5,一种基于处理器指令快速完成的精确异常维护装置,包括:
取指单元,处于流水线的最前级,负责从存储器中读取指令并送入流水线;
指令译码单元,连接取指单元的输出端,负责对取指单元送入的指令进行译码,得到指令的类型、是否需要回写寄存器堆、源寄存器号、目的寄存器号,执行周期等信息;
指令发射单元,连接指令译码单元的输出端,负责检测指令的相关性,根据译码得到的指令类型,将相关性已消除的指令发射到相应的执行单元,相关性包括数据相关、控制相关、执行单元资源冲突;
执行单元,连接指令发射单元的输出端,包括定点执行单元、浮点执行单元、矢量执行单元、装载存储单元,负责各类指令的流水执行,各执行单元均需要多个周期执行完毕;
退休单元,连接执行单元快速完成的输出端,负责维护最后一级流水线的程序计数器并查询指令快速完成时是否检测到异常,若检测到异常,则该指令执行结束并同步于退休响应精确异常,否则该指令正常退休并缓存指令的地址与处理器状态信息,最后一级流水线的程序计数器将指向下一条指令;
结果缓冲单元,连接执行单元执行完成的输出端,将指令退休与指令回写分开,负责保存指令的执行结果并查询指令正常退休后的执行过程中是否检测到异常,若检测到异常,则根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,否则该指令正常回写执行结果,结果缓冲单元通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常,确保不会污染寄存器堆;
指令地址和处理器状态缓冲单元,连接退休单元以及异常/中断/调试优先级仲裁单元的输出端,负责在快速完成指令正常退休时保存该指令的地址和此时处理器的状态信息,处理器的状态信息包括处理器是否响应了中断请求或调试请求,用于正确恢复处理器现场;
异常/中断/调试优先级仲裁单元,连接退休单元以及结果缓冲单元的输出端,负责根据处理器指定的编程模型对检测到的异常、中断、调试请求进行优先级排序并响应优先级最高的请求;
影子地址寄存器和影子状态寄存器,连接指令地址和处理器状态缓冲单元的输出端,负责保存处理器响应异常/中断/调试请求时的现场,用于在异常/中断/调试处理完成后恢复现场重新执行;
寄存器堆,连接结果缓冲单元的输出端,包括定点寄存器堆、浮点寄存器堆、矢量寄存器堆、控制寄存器堆,负责保存变量的值。
Claims (11)
1.一种基于处理器指令快速完成的精确异常维护方法,其特征在于:实现所述精确异常维护方法的精确异常维护装置包括:
取指单元,处于流水线的最前级,负责从存储器中读取指令并送入流水线;
指令译码单元,连接取指单元的输出端,负责对取指单元送入的指令进行译码,得到指令的类型、是否需要回写寄存器堆、源寄存器号、目的寄存器号,执行周期等信息;
指令发射单元,连接指令译码单元的输出端,负责检测指令的相关性,根据译码得到的指令类型,将相关性已消除的指令发射到相应的执行单元,相关性包括数据相关、控制相关、执行单元资源冲突;
执行单元,连接指令发射单元的输出端,包括定点执行单元、浮点执行单元、矢量执行单元、装载存储单元,负责各类指令的流水执行,各执行单元均需要多个周期执行完毕;
寄存器堆,连接结果缓冲单元的输出端,包括定点寄存器堆、浮点寄存器堆、矢量寄存器堆、控制寄存器堆,负责保存变量的值;
退休单元,连接执行单元快速完成的输出端,负责维护最后一级流水线的程序计数器并查询指令快速完成时是否检测到异常,若检测到异常,则该指令执行结束并同步于退休响应精确异常,否则该指令正常退休并缓存指令的地址与处理器状态信息,最后一级流水线的程序计数器将指向下一条指令;
结果缓冲单元,连接执行单元执行完成的输出端,将指令退休与指令回写分开,负责保存指令的执行结果并查询指令正常退休后的执行过程中是否检测到异常,若检测到异常,则根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,否则该指令正常回写执行结果,结果缓冲单元通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常;
指令地址和处理器状态缓冲单元,连接退休单元以及异常/中断/调试优先级仲裁单元的输出端,负责在快速完成指令正常退休时保存该指令的地址和此时处理器的状态信息,处理器的状态信息包括处理器是否响应了中断请求或调试请求,用于正确恢复处理器现场;
所述精确异常维护方法包括如下步骤:
1)查询处理器指令快速完成时是否检测到异常,若检测到异常则执行步骤2),否则跳到步骤3)执行;
2)该指令执行结束并同步于退休响应精确异常,返回到步骤1)检测下一条指令;
3)该指令正常退休并缓存指令的地址与处理器状态信息,执行步骤4);
4)查询指令正常退休后的执行过程中是否检测到异常,若检测到异常则执行步骤5),否则跳到步骤6)执行;
5)根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,返回到步骤1)检测下一条指令;
6)该指令正常回写执行结果,返回到步骤1)检测下一条指令。
2.如权利要求1所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤1)中,所述的快速完成包括三种情况:①指令处于译码阶段尚未执行时从流水线中退休、②多执行周期指令处于执行阶段尚未得到最终计算结果时从流水线中退休、③装载/存储指令尚未完成对存储器的读/写时从流水线中退休。
3.如权利要求1或2所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤1)中,所述的处理器指令包括定点指令、矢量指令、浮点指令,装载/存储指令。
4.如权利要求1或2所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤1)中,指令执行周期长度大于或等于1。
5.如权利要求1或2所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤3)中,将指令的退休与回写分开,若指令快速完成时尚未检测到异常,则允许该指令从整条流水线中正常退休,最后一级流水线的程序计数器将指向下一条指令,并在此时缓存该指令的地址与处理器状态信息,所述的处理器状态信息包括处理器在指令退休时是否响应了中断请求或调试请求。
6.如权利要求1或2所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤5)中,所述的处理器现场包括异常现场、中断现场、调试现场的影子地址寄存器以及影子状态寄存器;步骤5)所述的处理器现场恢复不对寄存器堆进行恢复更新,寄存器堆包括定点寄存器堆、矢量寄存器堆、浮点寄存器堆和控制寄存器堆。
7.如权利要求5所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤5)中,若指令在退休后的执行过程中检测到异常,则处理器将异步于退休进行异常、中断、调试请求优先级判断,确保进行精确响应。
8.如权利要求1或2所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤5)中,通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常。
9.如权利要求5所述的基于处理器指令快速完成的精确异常维护方法,其特征在于:步骤5)中,通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常。
10.一种基于处理器指令快速完成的精确异常维护装置,包括:
取指单元,处于流水线的最前级,负责从存储器中读取指令并送入流水线;
指令译码单元,连接取指单元的输出端,负责对取指单元送入的指令进行译码,得到指令的类型、是否需要回写寄存器堆、源寄存器号、目的寄存器号,执行周期等信息;
指令发射单元,连接指令译码单元的输出端,负责检测指令的相关性,根据译码得到的指令类型,将相关性已消除的指令发射到相应的执行单元,相关性包括数据相关、控制相关、执行单元资源冲突;
执行单元,连接指令发射单元的输出端,包括定点执行单元、浮点执行单元、矢量执行单元、装载存储单元,负责各类指令的流水执行,各执行单元均需要多个周期执行完毕;
寄存器堆,连接结果缓冲单元的输出端,包括定点寄存器堆、浮点寄存器堆、矢量寄存器堆、控制寄存器堆,负责保存变量的值;
其特征在于:所述精确异常维护装置还包括:
退休单元,连接执行单元快速完成的输出端,负责维护最后一级流水线的程序计数器并查询指令快速完成时是否检测到异常,若检测到异常,则该指令执行结束并同步于退休响应精确异常,否则该指令正常退休并缓存指令的地址与处理器状态信息,最后一级流水线的程序计数器将指向下一条指令;
结果缓冲单元,连接执行单元执行完成的输出端,将指令退休与指令回写分开,负责保存指令的执行结果并查询指令正常退休后的执行过程中是否检测到异常,若检测到异常,则根据缓存的指令地址与处理器状态信息恢复处理器现场,并异步于退休响应精确异常,否则该指令正常回写执行结果,结果缓冲单元通过队列缓存计算结果或停顿执行流水线,阻止后面的指令回写寄存器堆,直到该退休指令整个执行完毕且没有检测到异常;
指令地址和处理器状态缓冲单元,连接退休单元以及异常/中断/调试优先级仲裁单元的输出端,负责在快速完成指令正常退休时保存该指令的地址和此时处理器的状态信息,处理器的状态信息包括处理器是否响应了中断请求或调试请求,用于正确恢复处理器现场。
11.如权利要求10所述的基于处理器指令快速完成的精确异常维护装置,其特征在于:所述精确异常维护装置还包括:
异常/中断/调试优先级仲裁单元,连接退休单元以及结果缓冲单元的输出端,负责根据处理器指定的编程模型对检测到的异常、中断、调试请求进行优先级排序并响应优先级最高的请求;
影子地址寄存器和影子状态寄存器,连接指令地址和处理器状态缓冲单元的输出端,负责保存处理器响应异常/中断/调试请求时的现场,用于在异常/中断/调试处理完成后恢复现场重新执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410582418.8A CN104461468B (zh) | 2014-10-27 | 2014-10-27 | 基于处理器指令快速完成的精确异常维护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410582418.8A CN104461468B (zh) | 2014-10-27 | 2014-10-27 | 基于处理器指令快速完成的精确异常维护方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104461468A CN104461468A (zh) | 2015-03-25 |
CN104461468B true CN104461468B (zh) | 2017-10-20 |
Family
ID=52907586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410582418.8A Active CN104461468B (zh) | 2014-10-27 | 2014-10-27 | 基于处理器指令快速完成的精确异常维护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104461468B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951276B (zh) * | 2015-06-24 | 2017-05-31 | 福州瑞芯微电子股份有限公司 | 一种芯片指令高速缓存失效的检测方法及系统 |
CN107436752B (zh) * | 2017-07-20 | 2020-12-01 | 龙芯中科技术有限公司 | 异常现场恢复方法、装置及计算机可读存储介质 |
CN107943518B (zh) * | 2017-11-24 | 2021-07-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种局部跳转指令取指电路 |
CN108182083B (zh) * | 2017-12-06 | 2021-12-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种支持断点调试的取指译码电路 |
CN112540789A (zh) * | 2019-09-23 | 2021-03-23 | 阿里巴巴集团控股有限公司 | 一种指令处理装置、处理器及其处理方法 |
CN117472445B (zh) * | 2023-12-26 | 2024-04-23 | 睿思芯科(深圳)技术有限公司 | 基于发射缓冲的超标量处理系统、方法及相关设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1514356A (zh) * | 2003-03-31 | 2004-07-21 | 杭州中天微系统有限公司 | 一种cpu中低开销的支持精确异常模型的地址存储方法 |
CN100385391C (zh) * | 2006-05-25 | 2008-04-30 | 西北工业大学 | 嵌入式实时精确异常机制的硬件实现方法 |
JP5533538B2 (ja) * | 2010-10-12 | 2014-06-25 | 富士通株式会社 | 情報処理装置、エミュレーション処理プログラム及びエミュレーション処理方法 |
-
2014
- 2014-10-27 CN CN201410582418.8A patent/CN104461468B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104461468A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104461468B (zh) | 基于处理器指令快速完成的精确异常维护方法及装置 | |
US11379234B2 (en) | Store-to-load forwarding | |
TWI468937B (zh) | 產生分支記錄的方法與系統及儲存分支記錄的處理器 | |
TWI450104B (zh) | 用於最大預測的效能增益之異質多處理器運算平台中之應用程式排程 | |
HRP20190661T1 (hr) | Filtriranje prekidanja programa kod provođenja transakcije | |
CN104156197A (zh) | 微处理器以及微处理器操作方法 | |
US20130055033A1 (en) | Hardware-assisted program trace collection with selectable call-signature capture | |
JP2005182825A5 (zh) | ||
CN107851020A (zh) | 用于指令存储器效率的设备和处理架构 | |
CN104221005B (zh) | 用于从多线程发送请求至加速器的机制 | |
WO2012055303A1 (zh) | 网络处理器异常检测方法及系统 | |
RU2014143109A (ru) | Обработка транзакций | |
CN104919418A (zh) | 用于分支预测的基于置信度阈值的相对路径执行 | |
JP5815596B2 (ja) | プロシージャリターンシーケンスを加速するための方法およびシステム | |
JP2009134771A5 (zh) | ||
TW201516681A (zh) | 用於快取佔有率判定與指令排程之方法及設備 | |
TW201439904A (zh) | 在提前執行中管理潛在無效結果 | |
TW201342038A (zh) | 微處理器、死結或活結狀態解除方法以及其電腦程式產品 | |
US20150363203A1 (en) | Apparatus and Method for Bias-Free Branch Prediction | |
US9697040B2 (en) | Software replayer for transactional memory programs | |
EP3767462A1 (en) | Detecting a dynamic control flow re-convergence point for conditional branches in hardware | |
JP2006216027A5 (zh) | ||
TW201224991A (en) | Next-instruction-type field | |
CN105511839B (zh) | 用以改善在处理器中重新执行加载的装置与方法 | |
US8117425B2 (en) | Multithread processor and method of synchronization operations among threads to be used in same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |