CN113703841B - 一种寄存器数据读取的优化方法、装置及介质 - Google Patents
一种寄存器数据读取的优化方法、装置及介质 Download PDFInfo
- Publication number
- CN113703841B CN113703841B CN202111063009.3A CN202111063009A CN113703841B CN 113703841 B CN113703841 B CN 113703841B CN 202111063009 A CN202111063009 A CN 202111063009A CN 113703841 B CN113703841 B CN 113703841B
- Authority
- CN
- China
- Prior art keywords
- register
- instruction
- operand
- read
- data
- 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
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/30003—Arrangements for executing specific machine instructions
-
- 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/30098—Register arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
本发明公开了一种寄存器数据读取的优化方法、装置及介质,本发明寄存器数据读取的优化方法包括在处理器中包含由多项寄存器值组成的操作数缓冲的情况下,利用现有的指令发射逻辑,在没有指令可发射使得发射逻辑空闲时,若寄存器端口空闲则将指令的操作数从寄存器中读出到操作数缓冲中进行缓冲以减少寄存器端口冲突的概率、提高处理器性能。本发明旨在在乱序微处理器中,通过利用寄存器端口访问的空闲时间将指令操作数读出,从而降低端口共享造成的冲突。
Description
技术领域
本发明涉及处理器微架构领域,具体涉及一种寄存器数据读取的优化方法、装置及介质。
背景技术
为了提高处理器性能,当前处理器普遍采用了乱序多发射的结构。乱序多发射的处理器架构能够提高指令并发的程度,最终提高每个时钟周期能够完成的指令数目。增大指令发射宽度需要在指令执行路径上增加相关的资源,例如指令执行部件的数量。增加执行部件的数量,可以提高指令执行的并发度,加快程序的执行。但是相应的也要付出代价。首先需要更多的资源来实现这些运算部件,其次芯片资源增大之后相应的时序也会变差。
每个执行部件在执行指令之前都要先读取操作数,操作数的来源可以是寄存器或者是数据旁路网络。增加执行部件后一个直接的问题就是有更多的部件需要读取寄存器。在多发射的微架构中,寄存器读取的端口高达15个。因为物理寄存器的数目可能高达200个,数量众多的寄存器端口会造成寄存器体积巨大,需要更多的资源来实现,寄存器访问的功耗和延迟都会增加。
指令执行时有以下特征:有的指令的数据是立即数,不需要读取寄存器;部分操作数可以从执行的数据总线上获取,并不需要读取寄存器;并不是所有的执行部件都要在同一个时刻读取寄存器。基于以上观察,可以在多个执行部件之间进行寄存器端口共享,即多个部件共用一个读数据的端口,从而减少寄存器读的端口。然而不管寄存器端口的共享策略如何,当共享寄存器端口的多个部件在同一个时钟周期都需要读取寄存器时,就会发生端口冲突。此时,必定要有部件放弃对寄存器的读,选择下个周期再发射。这种情况下,造成能并行执行的指令数降低,降低处理器性能。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种寄存器数据读取的优化方法、装置及介质,本发明旨在在乱序微处理器中,通过利用寄存器端口访问的空闲时间将指令操作数读出,从而降低端口共享造成的冲突。
为了解决上述技术问题,本发明采用的技术方案为:
一种寄存器数据读取的优化方法,在处理器中包含由多项寄存器值组成的操作数缓冲的情况下,利用现有的指令发射逻辑,在没有指令可发射使得发射逻辑空闲时,若寄存器端口空闲则将指令的操作数从寄存器中读出到操作数缓冲中进行缓冲以减少寄存器端口冲突的概率、提高处理器性能。
可选地,所述将指令的操作数从寄存器中读出到操作数缓冲中的步骤包括:
1)发射选择逻辑选择一个寄存器源操作数准备好的指令;
2)通过共享寄存器端口读取寄存器值;
3)将读取的寄存器值放到操作数缓冲中;
4)将读取的寄存器信息传递给选择的指令。
可选地,步骤2)中通过共享寄存器端口读取寄存器值时,该通过共享寄存器端口读取寄存器值的操作的优先级最低,以在共享逻辑中优先将寄存器的读端口给正常的指令发射。
可选地,步骤3)中将读取的寄存器值放到操作数缓冲中时,采用的实现方式是存放寄存器号和相应的数据,以便通过寄存器号匹配到相应的数据。
可选地,步骤3)中将读取的寄存器值放到操作数缓冲中时,采用的实现方式是只存放寄存器数据,通过将该操作数缓冲中的编号传递给相关指令,以获取到数据。
可选地,步骤4)中将读取的寄存器信息传递给选择的指令时,采用的策略是只将该信息改写到选择的指令中。
可选地,步骤4)中将读取的寄存器信息传递给选择的指令时,采用的策略是利用结果总线的广播路径将该寄存器的读取信息广播到发射队列中的所有指令,如果有指令用到了该寄存器,那么将寄存器的指针指向操作数缓冲,且该指令的源操作数字段中包含增加的一比特位以标示该操作数在寄存器中还是操作数缓冲中获取。
可选地,还包括发射选择逻辑进行指令发射的步骤:
S1)发射选择逻辑选择一个可以发射的指令;
S2)发射选择逻辑查看指令的源操作数的标记,看操作数是否已经在操作数缓冲中;如果在操作数缓冲中,则跳转执行步骤S3);否则,跳转执行步骤S4);若处理器我支持数据旁路的处理器,且源操作数标记为可以从旁路网络中获取,则直接跳转执行步骤S5);
S3)根据源操作数存储的信息访问操作数缓冲;跳转执行步骤S5);
S4)根据源操作数寄存器号读取相应的寄存器;跳转执行步骤S5);
S5)在多个源操作数的源中选择源操作数;
S6)根据指令操作码对源操作数数据进行相应的执行操作,并将操作的结果通过结果总线写到寄存器中。
此外,本发明还提供一种寄存器数据读取的优化装置,包括相互连接的微处理器和存储器,所述微处理器中包含由多项寄存器值组成的操作数缓冲,且所述微处理器被编程或配置以执行所述寄存器数据读取的优化方法的步骤。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行所述寄存器数据读取的优化方法的计算机程序。
和现有技术相比,本发明具有下述优点:
1、实现代价小,利用现有指令发射逻辑和现有寄存器读取端口,额外的代价只是具有少数几项的操作数缓冲。
2、无副作用,只在指令发射逻辑和寄存器端口都空闲时,读取寄存器,不会占用正常的指令发射逻辑。
3、能够减少寄存器端口冲突,提高性能。提高现有寄存器端口的利用率,减少寄存器端口冲突,提高处理器性能。由于寄存器端口冲突减少,在设计端口共享策略时,可以采用更激进的策略,甚至减少寄存器的读端口。
附图说明
图1为现有技术中处理器的指令发射和执行的原理示意图。
图2为本发明实施例一中处理器的指令发射和执行的原理示意图。
图3为本发明实施例一中将操作数从读出到操作数缓冲中以及指令发射的流程图。
具体实施方式
实施例一:
如图1所示,通常指令的发射和执行过程为:指令经过取指令、指令译码和指令分派,在发射队列中等待操作数和执行条件的具备;然后通过发射选择逻辑进行指令选择;被选择的指令通过共享寄存器端口从寄存器中读取操作数;到达指令对应的执行部件进行指令执行,并将执行的结果写回到寄存器中。但是,这种情况下,由于存在发射逻辑空闲、以及寄存器端口空闲的情况,仍然存在优化空间。
如图2所示,本实施例寄存器数据读取的优化方法在处理器中包含由多项寄存器值组成的操作数缓冲的情况下,利用现有的指令发射逻辑,在没有指令可发射使得发射逻辑空闲时,若寄存器端口空闲则将指令的操作数从寄存器中读出到操作数缓冲中进行缓冲以减少寄存器端口冲突的概率、提高处理器性能。本实施例寄存器数据读取的优化方法增加由多项寄存器值组成的操作数缓冲,在处理器中包含由多项寄存器值组成的操作数缓冲的情况下,利用现有的指令发射逻辑,在没有指令可发射时(发射逻辑空闲时),将指令的操作数从寄存器中读出(寄存器端口空闲时)。减少寄存器端口冲突的概率,提高处理器性能。
本实施例中,指令执行过程中的取指令、指令译码和指令分配等步骤和普通处理器结构设计一致。指令分派到发射队列后,在发射队列中等待指令成为可发射状态:该指令的所有源操作数都准备好并且相应的执行部件有空闲。通常情况下,一个指令有多个源操作数,这些源操作数中,有的是立即数,数据来自于指令码,无需读取寄存器。有些源操作数来自于其他指令,需要等待其它指令执行完后,才能获得相应的操作数。指令执行需要的多个源操作数中,有些可能先产生,有些需要长时间等待才能获取到。当指令所有的操作数都准备好后,还要看执行该指令的部件是否处于空闲状态。有些部件执行的指令,如除法指令,需要要10多个时钟周期才能完成,并且该部件不是流水执行的,所以其他指令需要等待部件已有的指令执行完,才能够发射新的指令。一个发射队列中通常存放有多个指令,当有任何一个指令处于可发射状态时,该队列就可以正常发射指令。发射队列每个时钟周期检查队列中的指令,如果没有可以发射的指令。那么进入寄存器读优化步骤,即将指令的操作数从寄存器中读出到操作数缓冲中;否则发射选择逻辑进行指令发射。
如图3所示,本实施例中将指令的操作数从寄存器中读出到操作数缓冲中的步骤包括:
1)发射选择逻辑选择一个寄存器源操作数准备好的指令;
2)通过共享寄存器端口读取寄存器值;
3)将读取的寄存器值放到操作数缓冲中;
4)将读取的寄存器信息传递给选择的指令。
作为一种可选的实施方式,为了降低对正常的指令发射的影响,本实施例步骤2)中通过共享寄存器端口读取寄存器值时,该通过共享寄存器端口读取寄存器值的操作的优先级最低,以在共享逻辑中优先将寄存器的读端口给正常的指令发射。
本实施例中,步骤3)中将读取的寄存器值放到操作数缓冲中时,采用的实现方式是存放寄存器号和相应的数据,以便通过寄存器号匹配到相应的数据。
本实施例中,步骤4)中将读取的寄存器信息传递给选择的指令时,采用的策略是只将该信息改写到选择的指令中。
如图3所示,本实施例还包括发射选择逻辑进行指令发射的步骤:
S1)发射选择逻辑选择一个可以发射的指令;此步骤和普通处理器中的发射选择逻辑一致,通常涉及从多个可以发射的指令中选取一个进行发射,选择的依据一般是“先进先出”,即这多个准备好的指令中选取最先进入发射队列的指令。
S2)发射选择逻辑查看指令的源操作数的标记,看操作数是否已经在操作数缓冲中;如果在操作数缓冲中,则跳转执行步骤S3);否则,跳转执行步骤S4);若处理器我支持数据旁路的处理器,且源操作数标记为可以从旁路网络中获取,则直接跳转执行步骤S5);
S3)根据源操作数存储的信息访问操作数缓冲;跳转执行步骤S5);
将读取的寄存器值放到操作数缓冲中有两种可实现方式:一种是存放寄存器号和相应的数据,那么寄存器号就可以匹配到相应数据;另一种只存放寄存器数据,通过将该操作数缓冲中的号传递给相关指令,就可以获取到数据。对应地,根据源操作数存储的信息访问操作数缓冲时,操作数缓冲的不同设计,可以访问所有的操作数缓冲,通过匹配寄存器号选取访问的数据;也可以直接使用存储的操作数缓冲号访问相应的数据。
S4)根据源操作数寄存器号读取相应的寄存器;跳转执行步骤S5);
S5)在多个源操作数的源中选择源操作数;例如,在操作数缓冲中读取的数据和寄存器中读取的数据进行选择,在支持数据旁路的处理器中还涉及和旁路网络中的数据进行选择。
S6)根据指令操作码对源操作数数据进行相应的执行操作,并将操作的结果通过结果总线写到寄存器中,该步骤和普通的处理器实现相同。
综上所述,本实施例寄存器数据读取的优化方法在处理器中包含由多项寄存器值组成的操作数缓冲的情况下,利用现有的指令发射逻辑,在没有指令可发射使得发射逻辑空闲时,若寄存器端口空闲则将指令的操作数从寄存器中读出到操作数缓冲中进行缓冲以减少寄存器端口冲突的概率、提高处理器性能。本实施例寄存器数据读取的优化方法具有下述优点:1、实现代价小,利用现有指令发射逻辑和现有寄存器读取端口,额外的代价只是具有少数几项的操作数缓冲。2、无副作用,只在指令发射逻辑和寄存器端口都空闲时,读取寄存器,不会占用正常的指令发射逻辑。3、能够减少寄存器端口冲突,提高性能。提高现有寄存器端口的利用率,减少寄存器端口冲突,提高处理器性能。由于寄存器端口冲突减少,在设计端口共享策略时,可以采用更激进的策略,甚至减少寄存器的读端口。
此外,本实施例还提供一种寄存器数据读取的优化装置,包括相互连接的微处理器和存储器,所述微处理器中包含由多项寄存器值组成的操作数缓冲,且所述微处理器被编程或配置以执行前述寄存器数据读取的优化方法的步骤。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行前述寄存器数据读取的优化方法的计算机程序。
实施例二:
本实施例与实施例一基本相同,其主要区别点为:本实施例步骤3)中将读取的寄存器值放到操作数缓冲中时采用了不同的实现方式。
本实施例中,步骤3)中将读取的寄存器值放到操作数缓冲中时,采用的实现方式是只存放寄存器数据,通过将该操作数缓冲中的编号传递给相关指令,以获取到数据。
此外,本实施例还提供一种寄存器数据读取的优化装置,包括相互连接的微处理器和存储器,所述微处理器中包含由多项寄存器值组成的操作数缓冲,且所述微处理器被编程或配置以执行前述寄存器数据读取的优化方法的步骤。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行前述寄存器数据读取的优化方法的计算机程序。
实施例三:
本实施例与实施例一基本相同,其主要区别点为:
本实施例步骤4)中将读取的寄存器信息传递给选择的指令时采用了不同的策略。
本实施例中,步骤4)中将读取的寄存器信息传递给选择的指令时,采用的策略是利用结果总线的广播路径将该寄存器的读取信息广播到发射队列中的所有指令,如果有指令用到了该寄存器,那么将寄存器的指针指向操作数缓冲,且该指令的源操作数字段中包含增加的一比特位以标示该操作数在寄存器中还是操作数缓冲中获取。
此外,本实施例还提供一种寄存器数据读取的优化装置,包括相互连接的微处理器和存储器,所述微处理器中包含由多项寄存器值组成的操作数缓冲,且所述微处理器被编程或配置以执行前述寄存器数据读取的优化方法的步骤。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行前述寄存器数据读取的优化方法的计算机程序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.一种寄存器数据读取的优化方法,其特征在于,在处理器中包含由多项寄存器值组成的操作数缓冲的情况下,利用现有的指令发射逻辑,在没有指令可发射使得发射逻辑空闲时,若寄存器端口空闲则将指令的操作数从寄存器中读出到操作数缓冲中进行缓冲;所述将指令的操作数从寄存器中读出到操作数缓冲中的步骤包括:
1)发射选择逻辑选择一个寄存器源操作数准备好的指令;
2)通过共享寄存器端口读取寄存器值;
3)将读取的寄存器值放到操作数缓冲中;
4)将读取的寄存器信息传递给选择的指令;
步骤3)中将读取的寄存器值放到操作数缓冲中时,采用的实现方式是存放寄存器号和相应的数据,以便通过寄存器号匹配到相应的数据;或者步骤3)中将读取的寄存器值放到操作数缓冲中时,采用的实现方式是只存放寄存器数据,通过将该操作数缓冲中的编号传递给相关指令,以获取到数据;
还包括发射选择逻辑进行指令发射的步骤:
S1)发射选择逻辑选择一个可以发射的指令;
S2)发射选择逻辑查看指令的源操作数的标记,看操作数是否已经在操作数缓冲中;如果在操作数缓冲中,则跳转执行步骤S3);否则,跳转执行步骤S4);若处理器支持数据旁路的处理器,且源操作数标记为可以从旁路网络中获取,则直接跳转执行步骤S5);
S3)根据源操作数存储的信息访问操作数缓冲;跳转执行步骤S5);
S4)根据源操作数寄存器号读取相应的寄存器;跳转执行步骤S5);
S5)在多个源操作数的源中选择源操作数;
S6)根据指令操作码对源操作数数据进行相应的执行操作,并将操作的结果通过结果总线写到寄存器中。
2.根据权利要求1所述的寄存器数据读取的优化方法,其特征在于,步骤2)中通过共享寄存器端口读取寄存器值时,该通过共享寄存器端口读取寄存器值的操作的优先级最低,以在共享逻辑中优先将寄存器的读端口给正常的指令发射。
3.根据权利要求1所述的寄存器数据读取的优化方法,其特征在于,步骤4)中将读取的寄存器信息传递给选择的指令时,采用的策略是只将该信息改写到选择的指令中。
4.根据权利要求1所述的寄存器数据读取的优化方法,其特征在于,步骤4)中将读取的寄存器信息传递给选择的指令时,采用的策略是利用结果总线的广播路径将该寄存器的读取信息广播到发射队列中的所有指令,如果有指令用到了该寄存器,那么将寄存器的指针指向操作数缓冲,且该指令的源操作数字段中包含增加的一比特位以标示该操作数在寄存器中还是操作数缓冲中获取。
5.一种寄存器数据读取的优化装置,包括相互连接的微处理器和存储器,其特征在于,所述微处理器中包含由多项寄存器值组成的操作数缓冲,且所述微处理器被编程或配置以执行权利要求1~4中任意一项所述寄存器数据读取的优化方法的步骤。
6.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有被编程或配置以执行权利要求1~4中任意一项所述寄存器数据读取的优化方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111063009.3A CN113703841B (zh) | 2021-09-10 | 2021-09-10 | 一种寄存器数据读取的优化方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111063009.3A CN113703841B (zh) | 2021-09-10 | 2021-09-10 | 一种寄存器数据读取的优化方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113703841A CN113703841A (zh) | 2021-11-26 |
CN113703841B true CN113703841B (zh) | 2023-09-26 |
Family
ID=78659856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111063009.3A Active CN113703841B (zh) | 2021-09-10 | 2021-09-10 | 一种寄存器数据读取的优化方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113703841B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017016255A1 (zh) * | 2015-07-29 | 2017-02-02 | 深圳市中兴微电子技术有限公司 | 微引擎的多发射指令并行处理方法及装置、存储介质 |
CN110647361A (zh) * | 2019-09-09 | 2020-01-03 | 中国人民解放军国防科技大学 | 一种空闲物理寄存器的获取方法和装置 |
CN111290786A (zh) * | 2018-12-12 | 2020-06-16 | 展讯通信(上海)有限公司 | 一种信息处理方法、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7743238B2 (en) * | 2003-05-09 | 2010-06-22 | Arm Limited | Accessing items of architectural state from a register cache in a data processing apparatus when performing branch prediction operations for an indirect branch instruction |
US7395415B2 (en) * | 2004-09-30 | 2008-07-01 | Intel Corporation | Method and apparatus to provide a source operand for an instruction in a processor |
-
2021
- 2021-09-10 CN CN202111063009.3A patent/CN113703841B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017016255A1 (zh) * | 2015-07-29 | 2017-02-02 | 深圳市中兴微电子技术有限公司 | 微引擎的多发射指令并行处理方法及装置、存储介质 |
CN111290786A (zh) * | 2018-12-12 | 2020-06-16 | 展讯通信(上海)有限公司 | 一种信息处理方法、设备及存储介质 |
CN110647361A (zh) * | 2019-09-09 | 2020-01-03 | 中国人民解放军国防科技大学 | 一种空闲物理寄存器的获取方法和装置 |
Non-Patent Citations (1)
Title |
---|
孙彩霞.乱序超标量处理器核的性能分析与优化.国防科技大学学报.2016,第38卷(第5期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN113703841A (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2928695B2 (ja) | 静的インタリーブを用いたマルチスレッドマイクロプロセッサおよびそれを備えたシステムでの命令スレッド実行方法 | |
US7793079B2 (en) | Method and system for expanding a conditional instruction into a unconditional instruction and a select instruction | |
US5553256A (en) | Apparatus for pipeline streamlining where resources are immediate or certainly retired | |
EP1023659B1 (en) | Efficient processing of clustered branch instructions | |
CN113535423A (zh) | 具有在预置未来时间执行指令的流水线控制的微处理器 | |
US5604878A (en) | Method and apparatus for avoiding writeback conflicts between execution units sharing a common writeback path | |
JP2000259412A (ja) | ストア命令転送方法およびプロセッサ | |
US11204770B2 (en) | Microprocessor having self-resetting register scoreboard | |
US20140047218A1 (en) | Multi-stage register renaming using dependency removal | |
JPH06242954A (ja) | 独立にアクセスされる中間記憶域を利用してスーパースカラ・プロセッサ・システムにおける命令ディスパッチを改善する方法およびシステム | |
CN110908716B (zh) | 一种向量聚合装载指令的实现方法 | |
US11900120B2 (en) | Issuing instructions based on resource conflict constraints in microprocessor | |
US20080320240A1 (en) | Method and arrangements for memory access | |
US9886278B2 (en) | Computing architecture and method for processing data | |
CN108845829B (zh) | 一种系统寄存器访问指令的执行方法 | |
CN112214241A (zh) | 一种分布式指令执行单元的方法及系统 | |
TW201606645A (zh) | 在處理器管線中管理指令順序 | |
CN112540796B (zh) | 一种指令处理装置、处理器及其处理方法 | |
US6862676B1 (en) | Superscalar processor having content addressable memory structures for determining dependencies | |
US7315935B1 (en) | Apparatus and method for port arbitration in a register file on the basis of functional unit issue slots | |
CN113703841B (zh) | 一种寄存器数据读取的优化方法、装置及介质 | |
EP0496407A2 (en) | Parallel pipelined instruction processing system for very long instruction word | |
US6725355B1 (en) | Arithmetic processing architecture having a portion of general-purpose registers directly coupled to a plurality of memory banks | |
CN112540792A (zh) | 指令处理方法及装置 | |
CN114610395A (zh) | 指令分派方法、装置、电子设备及计算机可存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |