CN112214241A - 一种分布式指令执行单元的方法及系统 - Google Patents
一种分布式指令执行单元的方法及系统 Download PDFInfo
- Publication number
- CN112214241A CN112214241A CN202011007561.6A CN202011007561A CN112214241A CN 112214241 A CN112214241 A CN 112214241A CN 202011007561 A CN202011007561 A CN 202011007561A CN 112214241 A CN112214241 A CN 112214241A
- Authority
- CN
- China
- Prior art keywords
- instruction
- execution unit
- execution
- instructions
- physical register
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000001419 dependent effect Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 abstract description 7
- 238000004377 microelectronic Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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/30098—Register arrangements
-
- 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/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
本发明涉及微电子技术领域,具体涉及一种分布式指令执行单元的方法及系统,本发明基于分布式执行单元A的思想,包括指令在译码器、重命名和指令分派阶段时,指令进入执行单元A执行。在执行单元A执行完成的指令,在指令分派阶段时,判断物理寄存器堆是否有空闲写端口,如果有空闲写端口,指针写回数据到物理寄存器堆,更新ROB,等待提交。如果没有空闲的物理寄存器堆写端口,指令进入保留站,并且翻译为MV指令,通过执行单元B的写端口,将指令结果写到物理寄存器堆。以较小的硬件为代价,增加执行单元A,执行单元A作为执行单元B的一个加速单元,可以提前执行数据准备好的指令,提高了流水线的执行效率。
Description
技术领域
本发明涉及微电子技术领域,具体涉及一种分布式指令执行单元的方法及系统。
背景技术
微处理器经过50多年的发展,微处理器的架构伴随着半导体工艺经历了蓬勃的发展。从单核到物理多核及逻辑多核;从顺序执行到乱序执行;从单发射到多发射;尤其在服务器领域,不断的追求处理器的性能。
目前,服务器芯片基本都是超标量乱序执行架构,处理器的流水线如图1所示,每条指令都经历从取指单元到重排序缓存流水线,指令在保留站中取到数据,然后在执行单元中执行,执行完成写回物理寄存器,然后再通过公共总线forward数据到依赖指令。
超标量处理器的架构已经趋于成熟,因此,结合指令集的特点,进行架构的优化,提升微处理器的性能成为一种有效的手段。
发明内容
针对现有技术的不足,本发明公开了一种分布式指令执行单元的方法及系统,用于解决上述背景技术中存在的问题。
本发明通过以下技术方案予以实现:
第一方面,本发明公开一种分布式指令执行单元的方法,所述方法包括以下步骤:
S1从存储单元取出所要执行的指令依次经过预译码器和译码器;
S2指令重名后进入指令分派阶段,并在执行单元A中执行;
S3判断指令分派阶段物理寄存器堆是否有空闲写端口;
S4如果有空闲写端口,指针写回数据到物理寄存器堆,更新ROB,等待提交;
S5如果没有空闲的物理寄存器堆写端口,指令进入保留站,并且翻译为MV指令,通过执行单元B的写端口,将指令结果写到物理寄存器堆。
更进一步的,所述执行单元A包含加减法指令执行单元、移位指令执行单元、逻辑运算指令执行单元和分支指令执行单元。
更进一步的,所述执行单元A中,每个执行单元每个时钟周期执行一条指令,译码器、重命名和指令分派发送源操作数已经准好或者可以通过forward得到源操作数指令的请求执行信号,每个执行单元根据优先级关系仲裁,仲裁成功的指令进入执行单元执行。
更进一步的,所述执行单元A中,如果是译码器请求的指令执行完成,指令的结果和指令目的寄存器的逻辑寄存器编码forward到译码器,译码器根据逻辑寄存器进行比较,取到指令间的依赖数据;
如果指令是重命名或者指令分派的指令执行完成,指令的结果和指令的物理寄存器编码forward到重命名、指令分派和保留站。
更进一步的,所述执行单元A中执行的指令包括立即数、MV相关的指令,LUI指令和ADDI译码为MV指令时,指令的结果在执行单元A中可以直接forward到依赖指令;
加减法指令、移位指令、逻辑运算指令及分支指令,这类指令在执行单元中需要运算,根据重命名得到的物理寄存器,forward指令结果到依赖指令。
更进一步的,当译码器、重命名及指令分派阶段相同类型指令请求在执行单元A执行时,优先级关系为:指令分派>重命名>译码器。
当指令分派阶段的指令在执行单元A中仲裁失败时,该指令进入保留站,在保留站中等待进行执行单元B中执行。
更进一步的,在译码器中比较相邻2拍指令的逻辑寄存器编码,得到指令转发的执行结果;在重命名、指令分派及保留站中根据重命名的物理寄存器转发指令执行结果;
在指令分派时,如果指令执行完成,并且物理寄存器堆有空闲的写端口,指令把执行结果写入物理寄存器堆,并且更新ROB,指令执行完成,等待提交;
如果在指令分派执行完成,但是没有空闲的物理寄存器写端口,指令进入保留站,指令翻译为MV指令,通过执行单元B的写物理寄存器端口,写回物理寄存器堆。
更进一步的,所述方法中,请求信号中指示了指令的类型,逻辑寄存器编码和物理寄存器编码,译码器产生的请求信号中,只有逻辑寄存器编码有效,物理寄存器编码无效,在仲裁模块中根据优先级判断,得到优先级最高的指令进入执行。
更进一步的,所述方法适用物理单核及物理多核、逻辑多核和服务器和集群;不限定指令级并行的带宽和重命名实现的架构、流水线级数、实现的工艺。
第二方面。本发明公开了一种分布式指令执行单元的系统,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器硬件执行第一方面所述的分布式指令执行单元的方法。
本发明的有益效果为:
本发明以较小的硬件为代价,增加执行单元A,执行单元A作为执行单元B的一个加速单元,可以提前执行数据准备好的指令,提高了流水线的执行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明背景技术微处理器流水线图;
图2是基于分布式指令执行单元的微处理器流水线图;
图3是本发明实施例执行单元A原理图;
图4是本发明实施例请求仲裁原理图;
图5是本发明实施例执行单元A执行结果forward图;
图6是本发明实施例执行单元A执行周期T=i图;
图7是本发明实施例执行单元A执行周期T=i+1图;
图8是本发明实施例执行单元A执行周期T=i+2。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例通过增加一个额外的执行单元A,执行单元A作为主执行单元B的加速单元。执行单元A执行一些出现频率较高、复杂度低的指令,执行单元B作为主执行单元,支持所有的指令。
执行单元A与执行单元B组成一个分布形式的执行单元架构。不管是CISC指令集还是RISC指令集,20%的指令出现的频率很高,并且是简单指令。简单指令包括一些基本运算操作的指令。最常见的基本指令是加减法、移位、逻辑运算、赋值MV等指令。
在微处理器的实现中,加法器、移位、逻辑运算和MV占的逻辑非常少,因此,从硬件资源开销和性能的提升两方面出发,增加执行单元A能够提升指令性能,并且不需要增加大量的硬件资源,如图2所示。
为了便于说明原理,加速执行单元A包含加减法指令执行单元、移位指令执行单元、逻辑运算指令执行单元和分支指令执行单元。每个执行单元每个时钟周期执行一条指令。
译码器、重命名和指令分派发送源操作数已经准好或者可以通过forward得到源操作数指令的请求执行信号,每个执行单元根据优先级关系仲裁,仲裁成功的指令进入执行单元执行。
如果是译码器请求的指令执行完成,指令的结果和指令目的寄存器的逻辑寄存器编码forward到译码器,译码器根据逻辑寄存器进行比较,取到指令间的依赖数据。
如果指令是重命名或者指令分派的指令执行完成,指令的结果和指令的物理寄存器编码forward到重命名、指令分派和保留站,如图3所示。
实施例2
本实施例公开执行单元A中执行指令:
1,立即数、MV相关的指令。LUI指令和ADDI译码为MV指令时,指令的结果在执行单元A中可以直接forward到依赖指令。
2,加减法指令、移位指令、逻辑运算指令及分支指令。这类指令在执行单元中需要运算,根据重命名得到的物理寄存器,forward指令结果到依赖指令。
3,当译码器、重命名及指令分派阶段相同类型指令请求在执行单元A执行时,优先级关系:指令分派>重命名>译码器。
4,当指令分派阶段的指令在执行单元A中仲裁失败时,该指令进入保留站,在保留站中等待进行执行单元B中执行。
5,执行单元A的执行结果forward到译码器、重命名、指令分派及保留站。在译码器中比较相邻2拍指令的逻辑寄存器编码,得到指令转发的执行结果;在重命名、指令分派及保留站中根据重命名的物理寄存器转发指令执行结果。
6,在指令分派时,如果指令执行完成,并且物理寄存器堆有空闲的写端口,指令把执行结果写入物理寄存器堆,并且更新ROB,指令执行完成,等待提交。
7,如果在指令分派执行完成,但是没有空闲的物理寄存器写端口,指令进入保留站,指令翻译为一条MV指令,在执行单元B中不再需要执行,只是为一条MV指令,通过执行单元B的写物理寄存器端口,写回物理寄存器堆。
为了便于说明请求信号的仲裁,假设流水线的宽带为4,因此每个流水线阶段产生的请求最多为4个。所有的请求信号先在仲裁中进行,仲裁成功后再执行,如图4所示。
译码器、重命名和指令分派指令的源操作数准备好后或者可以通过forward得到,分别最多产生4个请求信号,请求信号中指示了指令的类型,逻辑寄存器编码和物理寄存器编码。译码器产生的请求信号中,只有逻辑寄存器编码有效,物理寄存器编码无效。
在仲裁模块中根据优先级判断,得到优先级最高的指令进入执行。
1,如果译码器产生的请求信号仲裁失败时,在重命名或者指令分派会重新请求。
2,如果重命名产生的请求信号仲裁失败时,在指令分派会重新请求。
3,如果指令分派产生的请求信号仲裁失败时,指令进入保留站,不会在产生请求信号,指令需要在执行单元B中执行。
表格1请求信号详细描述
当译码器、重命名和指令分派有相同类型指令请求执行时,指令请求优先级的关系为:
dispatch_req0>dispatch_req1>dispatch_req2>dispatch_req3>rename_req0>rename_req1>rename_req2>rename_req3>decoder_req0>decoder_req1>decoder_req2>decoder_req3
执行单元A的执行结果forward到译码器,在译码器中比较前后相邻2拍指令的逻辑寄存器编码,如果逻辑寄存器编码匹配,并且译码器中的4条指令优先级最高,那么比较命中的指令可以forward数据。执行单元A的执行结果forward到重命名、指令分派和保留站,通过比较执行单元forward的物理寄存器和重命名、指令分派及保留站中指令的源寄存器的物理寄存器,如果比较结果匹配,那么可以得到数据,如图5所示。
通过执行单元A取到源操作的指令,也满足提前执行条件。因此,依赖指令在满足执行的条件时,也会请求在执行单元A中执行或者进入保留站,在保留站中也提前发射到执行单元B中执行。
实施例3
为了便于说明执行单元A的工作过程,本实施例以RISC-V指令集为例进行说明。由于RISC-V的加法、移位、逻辑运算等指令的逻辑实现简单,并且这些运算消耗的硬件资料较少,因此,在保留站之前增加执行单元A,执行单元A只支持部分简单指令,能够快速计算得到指令的结果,并且把指令的结果快速forward到依赖指令。
由于RISC-V指令比较精简,特别规定了X0为固定0,因此,指令可能在译码器、重命名、指令分派阶段已经得到所有的源操作数。这部分数据准备好的指令,如果仍然进入保留站,然后从保留站到执行单元B执行,那么这些数据准备好的指令不能快速的把结果forward到依赖指令。如果在执行单元A中执行完成,能够快速的将指令的结果forward到依赖的指令。
部分RISC-V的指令如下表:
表格2 RISC-V指令
这些指令比较适合在执行单元A中实现,执行单元A成为微处理器的一个加速引擎。
为了便于说明执行单元A的执行过程,以如下表格中的指令序列为例进行说明。
表格3 RISC-V指令示例
因为假设微处理器的带宽为4,因此每个时钟周期处理4条指令。在执行周期T=i时,执行addw,addiw,auipc和lbu指令。Auipc指令的r14和lbu指令的r14存在相关。由于auipc执行的操作为:PC+imm->rd,因此auipc进入加法器执行加法操作。在执行周期T=i+1时,auipc的结果forward到lbu和beq,因此lbu和beq的r14处于准备好状态。指令auipc已经执行完毕,在指令分派阶段,如果物理寄存器堆有空闲的写端口,那么auipc把结果写入物理寄存器堆,同时更新重排序缓存,指令等待提交。如果物理寄存器堆没有空闲的写端口,那么auipc进入保留站,并且翻译为一条MV指令,通过执行单元B写回物理寄存器堆。
在执行周期T=i+1时,执行指令addi,beq,lw和auipc。beq指令的r14通过执行单元A的forward路径得到,并且beq的r15也从指令addi得到,因为addi指令中的寄存器为r0,即为x0,x0固定为0,因此addi实现的是一条MV指令功能,r15的值为0000000000000041。Beq的源操作已经准备好,beq在执行单元A中进行执行。在执行周期T=i+2时给出beq是否发生跳转,如果发生跳转,产生刷新流水线控制信号,并且从新的地址重新取指令。
在执行周期T=i+2时,执行指令addi,lw,subw和sw。执行周期T=i+1指令的auipc与执行周期T=i+2的指令addi和lw存在依赖关系。Auipc指令forward的结果给addi和lw指令,addi和lw指令的源操作数准备好,并且addi进入执行单元A执行。执行单元A返回了执行周期T=i+1beq的执行结果。
在执行单元A执行的提前执行指令提升了流水线的执行效率,而不需要指令走完整条流水线,然后再进入执行单元B中执行。
实施例4
本实施例公开一种分布式指令执行单元的系统,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器硬件执行分布式指令执行单元的方法。
综上,本发明通过增加一个额外的执行单元A,执行单元A作为主执行单元B的加速单元。执行单元A执行一些出现频率较高、复杂度低的指令,执行单元B作为主执行单元,支持所有的指令。执行单元A与执行单元B组成一个分布形式的执行单元架构。以较小的硬件为代价,增加执行单元A,执行单元A作为执行单元B的一个加速单元,可以提前执行数据准备好的指令,提高了流水线的执行效率。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种分布式指令执行单元的方法,其特征在于,所述方法包括以下步骤:
S1从存储单元取出所要执行的指令依次经过预译码器和译码器;
S2指令重名后进入指令分派阶段,并在执行单元A中执行;
S3判断指令分派阶段物理寄存器堆是否有空闲写端口;
S4如果有空闲写端口,指针写回数据到物理寄存器堆,更新ROB,等待提交;
S5如果没有空闲的物理寄存器堆写端口,指令进入保留站,并且翻译为MV指令,通过执行单元B的写端口,将指令结果写到物理寄存器堆。
2.根据权利要求1所述的分布式指令执行单元的方法,其特征在于,所述执行单元A包含加减法指令执行单元、移位指令执行单元、逻辑运算指令执行单元和分支指令执行单元。
3.根据权利要求2所述的分布式指令执行单元的方法,其特征在于,所述执行单元A中,每个执行单元每个时钟周期执行一条指令,译码器、重命名和指令分派发送源操作数已经准好或者可以通过forward得到源操作数指令的请求执行信号,每个执行单元根据优先级关系仲裁,仲裁成功的指令进入执行单元执行。
4.根据权利要求3所述的分布式指令执行单元的方法,其特征在于,所述执行单元A中,如果是译码器请求的指令执行完成,指令的结果和指令目的寄存器的逻辑寄存器编码forward到译码器,译码器根据逻辑寄存器进行比较,取到指令间的依赖数据;
如果指令是重命名或者指令分派的指令执行完成,指令的结果和指令的物理寄存器编码forward到重命名、指令分派和保留站。
5.根据权利要求2-4任一项所述的分布式指令执行单元的方法,其特征在于,所述执行单元A中执行的指令包括立即数、MV相关的指令,LUI指令和ADDI译码为MV指令时,指令的结果在执行单元A中可以直接forward到依赖指令;
加减法指令、移位指令、逻辑运算指令及分支指令,这类指令在执行单元中需要运算,根据重命名得到的物理寄存器,forward指令结果到依赖指令。
6.根据权利要求1所述的分布式指令执行单元的方法,其特征在于,所述方法中,当译码器、重命名及指令分派阶段相同类型指令请求在执行单元A执行时,优先级关系为:指令分派>重命名>译码器。
当指令分派阶段的指令在执行单元A中仲裁失败时,该指令进入保留站,在保留站中等待进行执行单元B中执行。
7.根据权利要求1所述的分布式指令执行单元的方法,其特征在于,所述方法中,在译码器中比较相邻2拍指令的逻辑寄存器编码,得到指令转发的执行结果;在重命名、指令分派及保留站中根据重命名的物理寄存器转发指令执行结果;
在指令分派时,如果指令执行完成,并且物理寄存器堆有空闲的写端口,指令把执行结果写入物理寄存器堆,并且更新ROB,指令执行完成,等待提交;
如果在指令分派执行完成,但是没有空闲的物理寄存器写端口,指令进入保留站,指令翻译为MV指令,通过执行单元B的写物理寄存器端口,写回物理寄存器堆。
8.根据权利要求1所述的分布式指令执行单元的方法,其特征在于,所述方法中,请求信号中指示了指令的类型,逻辑寄存器编码和物理寄存器编码,译码器产生的请求信号中,只有逻辑寄存器编码有效,物理寄存器编码无效,在仲裁模块中根据优先级判断,得到优先级最高的指令进入执行。
9.根据权利要求1所述的分布式指令执行单元的方法,其特征在于,所述方法适用物理单核及物理多核、逻辑多核和服务器和集群;不限定指令级并行的带宽和重命名实现的架构、流水线级数、实现的工艺。
10.一种分布式指令执行单元的系统,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器硬件执行如权利要求1-9中任一项所述的分布式指令执行单元的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011007561.6A CN112214241B (zh) | 2020-09-23 | 2020-09-23 | 一种分布式指令执行单元的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011007561.6A CN112214241B (zh) | 2020-09-23 | 2020-09-23 | 一种分布式指令执行单元的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112214241A true CN112214241A (zh) | 2021-01-12 |
CN112214241B CN112214241B (zh) | 2023-11-24 |
Family
ID=74050724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011007561.6A Active CN112214241B (zh) | 2020-09-23 | 2020-09-23 | 一种分布式指令执行单元的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112214241B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022199035A1 (zh) * | 2021-03-22 | 2022-09-29 | 广东赛昉科技有限公司 | 一种固定常数相关指令的重命名方法及系统 |
CN116257350A (zh) * | 2022-09-06 | 2023-06-13 | 进迭时空(杭州)科技有限公司 | 一种针对risc-v矢量寄存器的重命名分组装置 |
CN116662006A (zh) * | 2023-06-06 | 2023-08-29 | 北京市合芯数字科技有限公司 | 多线程处理器重命名资源管理方法、系统、装置及介质 |
CN116880908A (zh) * | 2023-09-07 | 2023-10-13 | 北京开源芯片研究院 | 一种指令处理方法、装置、电子设备及可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742791A (en) * | 1996-02-14 | 1998-04-21 | Advanced Micro Devices, Inc. | Apparatus for detecting updates to instructions which are within an instruction processing pipeline of a microprocessor |
CN101477454A (zh) * | 2009-01-22 | 2009-07-08 | 浙江大学 | 嵌入式处理器的乱序执行控制装置 |
CN101763251A (zh) * | 2010-01-05 | 2010-06-30 | 浙江大学 | 多线程微处理器的指令译码缓冲装置 |
US20120260075A1 (en) * | 2011-04-07 | 2012-10-11 | Via Technologies, Inc. | Conditional alu instruction pre-shift-generated carry flag propagation between microinstructions in read-port limited register file microprocessor |
CN105426160A (zh) * | 2015-11-10 | 2016-03-23 | 北京时代民芯科技有限公司 | 基于sprac v8指令集的指令分类多发射方法 |
CN106537331A (zh) * | 2015-06-19 | 2017-03-22 | 华为技术有限公司 | 指令处理方法及设备 |
CN108027767A (zh) * | 2015-09-19 | 2018-05-11 | 微软技术许可有限责任公司 | 寄存器读取/写入排序 |
-
2020
- 2020-09-23 CN CN202011007561.6A patent/CN112214241B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742791A (en) * | 1996-02-14 | 1998-04-21 | Advanced Micro Devices, Inc. | Apparatus for detecting updates to instructions which are within an instruction processing pipeline of a microprocessor |
CN101477454A (zh) * | 2009-01-22 | 2009-07-08 | 浙江大学 | 嵌入式处理器的乱序执行控制装置 |
CN101763251A (zh) * | 2010-01-05 | 2010-06-30 | 浙江大学 | 多线程微处理器的指令译码缓冲装置 |
US20120260075A1 (en) * | 2011-04-07 | 2012-10-11 | Via Technologies, Inc. | Conditional alu instruction pre-shift-generated carry flag propagation between microinstructions in read-port limited register file microprocessor |
CN106537331A (zh) * | 2015-06-19 | 2017-03-22 | 华为技术有限公司 | 指令处理方法及设备 |
CN108027767A (zh) * | 2015-09-19 | 2018-05-11 | 微软技术许可有限责任公司 | 寄存器读取/写入排序 |
CN105426160A (zh) * | 2015-11-10 | 2016-03-23 | 北京时代民芯科技有限公司 | 基于sprac v8指令集的指令分类多发射方法 |
Non-Patent Citations (3)
Title |
---|
M. SMOTHERMAN等: "Improving CISC instruction decoding performance using a fill unit", 《IEEE》, pages 219 - 229 * |
张超 等: "M5-EDGE分布式取指模型设计", 《哈尔滨工业大学学报》, no. 05, pages 16 - 21 * |
龚鸣清 等: "基于ARMv8架构的面向机器翻译的单精度浮点通用矩阵乘法优化", 《计算机应用》, vol. 39, no. 06, pages 1557 - 1562 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022199035A1 (zh) * | 2021-03-22 | 2022-09-29 | 广东赛昉科技有限公司 | 一种固定常数相关指令的重命名方法及系统 |
CN116257350A (zh) * | 2022-09-06 | 2023-06-13 | 进迭时空(杭州)科技有限公司 | 一种针对risc-v矢量寄存器的重命名分组装置 |
CN116662006A (zh) * | 2023-06-06 | 2023-08-29 | 北京市合芯数字科技有限公司 | 多线程处理器重命名资源管理方法、系统、装置及介质 |
CN116662006B (zh) * | 2023-06-06 | 2024-02-23 | 北京市合芯数字科技有限公司 | 多线程处理器重命名资源管理方法、系统、装置及介质 |
CN116880908A (zh) * | 2023-09-07 | 2023-10-13 | 北京开源芯片研究院 | 一种指令处理方法、装置、电子设备及可读存储介质 |
CN116880908B (zh) * | 2023-09-07 | 2023-11-10 | 北京开源芯片研究院 | 一种指令处理方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112214241B (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112214241B (zh) | 一种分布式指令执行单元的方法及系统 | |
US9965274B2 (en) | Computer processor employing bypass network using result tags for routing result operands | |
CN1294484C (zh) | 利用重新调度的重放队列中断处理器中的重放依赖关系循环 | |
US5682492A (en) | Computer processor with distributed pipeline control that allows functional units to complete operations out of order while maintaining precise interrupts | |
US20160098279A1 (en) | Method and apparatus for segmented sequential storage | |
US20070083735A1 (en) | Hierarchical processor | |
US20080133889A1 (en) | Hierarchical instruction scheduler | |
US9811340B2 (en) | Method and apparatus for reconstructing real program order of instructions in multi-strand out-of-order processor | |
TWI719501B (zh) | 中央處理單元(cpu)、中央處理單元(cpu)控制器與在中央處理單元(cpu)中執行指令的方法 | |
US6148395A (en) | Shared floating-point unit in a single chip multiprocessor | |
US9170816B2 (en) | Enhancing processing efficiency in large instruction width processors | |
JPH10124391A (ja) | マージされたストア・オペレーションによってストア集束を行うためのプロセッサ及び方法 | |
US20080133868A1 (en) | Method and apparatus for segmented sequential storage | |
US10846092B2 (en) | Execution of micro-operations | |
US11900120B2 (en) | Issuing instructions based on resource conflict constraints in microprocessor | |
CN114675882A (zh) | 用于可缩放预留站的方法、系统和装置 | |
CN112559037A (zh) | 一种指令执行方法、单元、装置及系统 | |
WO1990010267A1 (en) | Distributed pipeline control for a computer | |
US10592517B2 (en) | Ranking items | |
CN111857830B (zh) | 一种提前转发指令数据的通路设计方法、系统及存储介质 | |
US7895413B2 (en) | Microprocessor including register renaming unit for renaming target registers in an instruction with physical registers in a register sub-file | |
US20190384608A1 (en) | Arithmetic processor and control method of arithmetic processor | |
CN112540789A (zh) | 一种指令处理装置、处理器及其处理方法 | |
US20140201505A1 (en) | Prediction-based thread selection in a multithreading processor | |
WO2024087039A1 (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 |