CN101739237B - 微处理器功能性指令实现装置和方法 - Google Patents
微处理器功能性指令实现装置和方法 Download PDFInfo
- Publication number
- CN101739237B CN101739237B CN 200910243808 CN200910243808A CN101739237B CN 101739237 B CN101739237 B CN 101739237B CN 200910243808 CN200910243808 CN 200910243808 CN 200910243808 A CN200910243808 A CN 200910243808A CN 101739237 B CN101739237 B CN 101739237B
- Authority
- CN
- China
- Prior art keywords
- instruction
- functional
- functional instructions
- instructions
- identifier
- 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
Landscapes
- Advance Control (AREA)
Abstract
本发明公开一种微处理器功能性指令实现装置和方法。该装置包括译码模块,发射模块,所述译码模块包括标识子模块,用于判断待处理指令是否为功能性指令,并生成标识符,标识待处理指令是否为功能性指令;并将待处理指令与标识符一起送到所述发射模块的操作队列;状态修改子模块,用于当待处理指令要写入操作队列时,根据标识符的值判断待处理指令是功能性指令后,将待处理指令的指令状态直接修改为已发射且结果已写回。其减少运算单元的运算负载,从而提高处理器的性能以及降低处理器的功耗。
Description
技术领域
本发明涉及计算机微处理器体系结构技术领域,特别是涉及计算机微处理器中指令实现的处理装置和方法,尤其是涉及一种微处理器中对程序执行结果没有任何影响的功能性指令实现装置和方法。
背景技术
现代计算机中,微处理器通过执行指令来完成有效的工作,而这些指令的集合则被称之为指令集。不同的微处理器可能实现不同的指令集。这些指令用来指示微处理器去从内存取数到寄存器中,或是将寄存器中的值保存到内存特定的位置中;或是对两个寄存器里的值做加减乘除等运算;或是做布尔运算,例如将对两个寄存器里的值做与,或,比较等操作;或是左移或右移寄存器的值等等。微处理器的这些指令大都是用与运算相关的缩略词所表示,比如一条典型的处理器的指令ADD,表示加操作,即将一个寄存器的值与另一个寄存器的值相加,其结果保存在另一个寄存器中。
但是,微处理器的指令集中还有一类功能性指令,功能性指令是指那类特殊指令,它们虽然进入流水线参与执行,但实际上对整个程序的执行结果不产生任何影响,仅仅是为了一些特殊的原因需加入到程序中。这类功能性指令对整个程序执行结果没有任何影响,但是却是为了实现一些特定的目的而加入到计算机程序中,例如空操作(NOP)指令与流水线停顿指令(MIPS指令集中的wait,或INTEL指令集中的halt),前缀指令等等。
例如NOP指令作为一条普通的指令,指示微处理器不做任何操作,即它是一条空操作指令。当微处理器执行这条指令后,不会对微处理器的状态产生任何的影响。NOP指令最初的用意是用来让处理器通过执行NOP指令产生一定的延迟,但又不修改处理的状态。比如在执行某条特定指令之前需要等待一些时间发生时,计算机就可以使用NOP指令来达到等待的目的。例如在一个流水的微处理器结构中,一条从内存取数到寄存器的LOAD指令后跟着对这个寄存器做加法的ADD指令,若这个ADD指令需紧跟在LOAD指令后面,那么可能会得到错误的执行结果。这是因为LOAD指令需要花费两拍或更多拍才能从内存中取得想要的值,所以当ADD指令执行时,LOAD指令还未将正确的值送入寄存器中,那么ADD指令将取得错误的操作数从而使运算结果出错。
除了增加延迟以外,NOP指令还有另外的用处,特别是在MIPS处理器结构中,因为MIPS指令集中要求所有的跳转指令都必须有延迟槽。虽然延迟槽指令紧跟着跳转指令,但是对于大部分跳转指令而言,不管这条跳转指令是否跳转与否,延迟槽的指令都必须执行。但是对微处理器而言,并不能为每条跳转指令都能插入合适的延迟槽指令,这时候就需要NOP指令来填充延迟槽。因为执行NOP指令对处理器而言并不会修改任何机器状态,NOP指令作为延迟槽指令就再合适不过。
NOP指令还有一个重要的用处,就是用来做指令对齐。MIPS指令集中所有的指令的长度都是一个字,所以比如对实现了MIPS指令集,且指令cache(缓存)的cache行是8个字的处理器而言,若想让两条指令必须在一个cache行中,那么可以在程序中填充NOP指令,直到这两条指令处于一个cache行。因为填充的NOP指令不会修改处理器的状态,因此在执行结果上看,与没有NOP指令是一样的。
而对于流水线停顿指令(wait或halt)而言,这类指令用来停止流水线指令的执行,当程序发现处理器没有有效的工作在运行时,即可执行一条这种指令。
在现有技术中,一般处理器体系结构的功能性指令都被编码成普通运算指令。比如在MIPS指令集中NOP指令的编码与SLLr0,r0,0,即NOP指令其实等同于将0号处理器向左移0位的指令。因为在MIPS指令集中,0号处理器是常值0,因此NOP指令等效于空操作,不会修改处理的任何状态。同样,NOP指令在intel与ARM指令集中有类似的处理。
虽然NOP指令本质上是一个空操作,不会修改处理器的任何状态。但是现有技术中,为了达到NOP指令所要求的功能,在执行NOP指令时,与其他指令一样,需要经过以上五级流水才算做完。即译码阶段,NOP指令经过译码单元译码后成为运算写入操作队列并标识其状态为未发射;发射阶段,NOP指令被发射到对应的指令运算功能单元,并修改其状态为已发射;执行并写回阶段,指令运算功能单元将运算的结果写回到操作队列,并修改其状态位已写回;提交阶段,将运算结果提交,但提交的结果不会修改任何机器的状态。
从以上分析可以看出,现有技术中,对于功能性指令,并未修改微处理器的状态,在将其发射到指令运算功能单元后,指令运算功能单元仍旧会按着普通的运算指令进行操作,这无疑于加重了微处理器的负载,让微处理器做了无效的工作,从而延迟了有效的运算,浪费了微处理器的功耗。
发明内容
本发明的目的在于提供一种微处理器功能性指令实现装置和方法,其减少运算单元的运算负载,从而提高处理器的性能以及降低处理器的功耗。
为了实现所述目的,本发明提供一种微处理器功能性指令实现装置,包括译码模块,发射模块,所述译码模块包括标识子模块和状态修改子模块;
所述标识子模块,用于判断待处理指令是否为功能性指令,并生成标识符,标识所述待处理指令是否为功能性指令;并将所述待处理指令与标识符一起送到所述发射模块的操作队列;
所述状态修改子模块,用于当所述待处理指令要写入操作队列时,根据标识符的值判断所述待处理指令是功能性指令后,将所述待处理指令的指令状态直接修改为已发射且结果已写回;
所述功能性指令是指对程序执行结果不产生影响的指令。
更优地,所述的功能性指令实现装置,还包括寄存器文件模块;
所述发射模块还包括功能性指令提交子模块,用于当所述待处理指令要发射到寄存器文件模块时,根据标识符的值判断所述待处理指令是功能性指令后,释放所占用的操作队列项。
更优地,所述的功能性指令实现装置,还包括指令运算功能单元;
所述发射模块根据标识符的值,判断出那些待处理的非功能性指令,将所述非功能性指令发射到指令运算功能单元中进行运算。
更优地,所述的功能性指令实现装置,还包括取指模块,其按照指令在程序中出现的先后次序从内存或指令缓存中获取指令并送入到译码模块中译码。
为实现本发明目的还提供一种微处理器功能性指令实现方法,包括下列步骤:
步骤S100,在译码阶段,若发现译码的待处理指令是功能性指令时,则生成标识符,所述标识符用以指示所述待处理指令是否为功能性指令,所述待处理指令与对应的标识符一起送到操作队列;
步骤S200,当所述待处理指令写入操作队列时,根据对应的标识符判断出是功能性指令,则将其指令状态直接修改为已发射且结果已写回。
更优地,所述的功能性指令实现方法,还包括下列步骤:
步骤S300,根据标识符的值,判断待处理指令为非功能性指令时,则将所述非功能性指令发射到指令运算功能单元中进行运算。
步骤S400,根据待处理指令及对应的标识符,将功能性指令提交,并释放所占用的操作队列项;
所述功能性指令是指对程序执行结果不产生影响的指令。
本发明的微处理器功能性指令实现装置和方法,具有以下有益效果:
1)降低了指令运算功能单元的负载:在本发明的微处理器功能性指令实现装置和方法中,对功能性指令的执行进行处理,从而无需将功能性指令发射到对应的指令运算功能单元,这样指令运算功能单元就无需做一些无效的操作,从而降低了指令运算功能单元的负载;
2)提高了指令运算功能单元的性能:在本发明的微处理器功能性指令实现装置和方法中,因为功能性指令无需占用运算单元,因此可以让其他的指令使用运算单元,从而提高了运算单元的利用率,进而提高的运算单元的性能。
3)降低了处理器的功耗:在本发明的微处理器功能性指令实现装置和方法中,因为功能性指令无需在运算单元中执行,因而运算单元无需做一些无用的工作,从而降低了处理器的功耗。
附图说明
图1是本发明实施例的微处理器功能性指令实现装置示意图;
图2是本发明实施例的微处理器功能性指令实现方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的一种微处理器功能性指令实现装置和方法进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明而不是对本发明的限制。
在本发明实施例中,以基于的五级流水线的微处理器执行部件结构为例对本发明的微处理器功能性指令实现装置和方法进行说明,但是应当理解的是,本发明并不限于此。
和其他大部分处理器一样,作为一种可实施方式,本发明实施例的微处理器功能性指令实现装置和方法,基于的流水线结构,包括以下流水级:取指,译码,发射,执行并写回,提交,所有的指令都是按着指令在程序中出现的先后次序取指,译码;乱序发射;乱序执行;有序提交。
本发明实施例的基于的流水线结构的微处理器指令执行部件包括以下五个部分,分别是:
取指模块1:负责流水线的取指,其按照指令在程序中出现的先后次序从内存或指令缓存(cache)中获取指令,并送入到译码模块2中译码。
译码模块2:负责指令的译码,其按照指令在程序中出现的先后次序将指令译码(译码后的指令称为操作),并送到操作队列中,其操作的状态为未发射;
发射模块3:负责指令的发射,其从操作队列中选择未发射且操作数已准备好的操作发射到相应的指令运算功能单元4;并将发射出去的操作的状态修改为已发射。
指令运算功能单元4:负责指令的运算,各个指令运算功能单元4执行从操作队列发射过来的操作,并将运算结果写回到发射模块操作队列相应的项,修改这个操作的状态位已写回。包括访存部件、运算部件等。
寄存器文件模块5:接收指令的提交,若操作队列队头的操作已发射且运算结果已经返回,那么发射模块3提交指令,将运算结果写回寄存器文件模块5中的寄存器。
在本发明实施例的微处理器功能性指令实现装置中,在微处理器的功能性指令的执行过程,考虑到这类指令的功能,仍将它们送入流水线中,但是却不将其发射到指令运算功能单元4,从而减少指令运算功能单元4的无效工作。
本发明的微处理器功能性指令实现装置,在译码模块2中,包括标识子模块22,用于判断当前待处理指令是否为功能性指令,并生成标识符,标识该待处理指令是否为功能性指令;并将所述待处理指令与标识符一起送到发射模块3的操作队列。
译码模块的标识子模块22,在译码过程中发现当前待处理指令是功能性指令后,产生一标识符,标识该待处理指令是功能性指令,然后将这个标识符与该待处理指令一起送入到发射模块3的操作队列。
在译码模块中,还包括状态修改子模块21,用于当当前待处理指令要写入操作队列时,根据标识符的值判断该待处理指令是功能性指令后,将该待处理指令的指令状态直接修改为已发射(issuded==1)且结果已写回(WB==1)。
作为一种可实施方式,在译码模块2译码过程中,增加两个指令状态位:发射状态位issuded和结果状态位WB。
当发射状态位为issuded==1时,表示当前待处理指令已发射;当发射状态位为issuded==0时,表示当前待处理指令为未发射;
当结果状态位WB==1时,表示当前待处理指令执行结果已写回;当结果状态位WB==0时,表示当前待处理指令执行结果未写回。
发射模块3根据标识符的值,判断出那些待处理的非功能性指令,将该非功能性指令发射到指令运算功能单元4中进行运算。
因为功能性指令在写入操作队列时,已经将其指令状态修改为已发射且结果已写回,那么功能性指令不会被选中发射到相应的指令运算功能单元4中。
所述微处理器功能性指令实现装置,所述发射模块3中,包括功能性指令提交子模块31,用于当当前待处理指令要发射到寄存器文件模块时,根据标识符的值判断该待处理指令是功能性指令后,释放所占用的操作队列项。
当标识为功能性指令需要提交时,仅将其所占用的操作队列项释放,不修改任何机器状态,即不修改任何通用寄存器以及cache的内容。
相应地,本发明实施例还提供一种微处理器功能性指令实现方法,包括下列步骤:
步骤S100,在译码阶段,若发现译码的当前待处理指令是功能性指令时,则生成标识符,该标识符用以指示该待处理指令是否为功能性指令,该待处理指令与对应的标识符一起送到操作队列。
步骤S200,当该待处理指令写入操作队列时,根据对应的标识符判断出是功能性指令,则将其指令状态直接修改为已发射(issuded==1)且结果已写回(WB==1)。
步骤S300,根据标识符的值,判断出待处理指令为非功能性指令时,则将该非功能性指令发射到指令运算功能单元中进行运算。
在发射阶段,因为功能性指令在写入操作队列时,已经将其指令状态修改为已发射且结果已写回,那么功能性指令不会被选中发射到相应的指令运算功能单元4中,而只选出那些待处理的非功能性指令发射到指令运算功能单元4中进行运算。
步骤S400,根据该待处理指令及对应的标识符,将功能性指令提交,并释放所占用的操作队列项。
在提交阶段,若标识为功能性指令的操作到了操作队列头,因为功能性指令对应的执行状态是已发射且结果已写回,于是这类指令可以提交。而功能性指令的提交与普通指令不同的是,它仅需要释放所占用的操作队列项,而不需修改寄存器的值即可完成指令提交。
下面进一步列举两个具体的实施例子。
例1.设本例中,操作队列中共有8项,即同时能有8条指令同时在流水线中执行。设现在队列中共有5条指令,且队列头指针指向第4条指令(队列头指针指向将要提交的指令项)。首先译码模块2对取指模块1送来的两条指令进行译码,发现其中第一条指令是除功能性指令外的普通指令,于是将其功能性指令标识写为0;而第二条指令是空操作指令(比如NOP),故将对应的功能性指令标识写为1。接着这两条译码后的指令被送到操作队列,且这两条指令按着它们在程序中的次序写入操作队列,于是第一条指令将放入操作队列的第六项,第二条指令被放入操作队列的第七项。因为第一条指令的功能性指令标识为0,所以其在操作队列里的状态标识分别如下:功能性指令标识位为0;issued位为0;WB位为0。而第二条指令的功能性指令标识位为1,其在操作队列里的标识分别如下:功能性指令标识位为1;issued位为1;WB位为1。
在发射阶段,在操作队列的这些指令中选出还未发射过的指令,即issued位为0的项,若其操作数准备好,则将其发射到对应的指令运算功能单元4。于是队列从第四条指令往后找还未发射过的指令,若第四条,第五条指令的操作数都未准备好,但是第六项指令的操作数准备好,那么将第六条指令发射到相应的指令运算功能单元4。而第七条指令的issued位已经为1,故第七条指令不会被选中发射到指令运算功能单元4,以后也不被选中。
在提交阶段,若队列头指针指向第七项,因为其issued位为1且WB位为1,那么将这条指令提交。因为这项的功能性指令标识位为1,所以提交过程仅将这条NOP指令占用的操作队列项释放,而不会去修改任何寄存器。
例2.设本例中,操作队列中已经没有有效的指令(队列头指针指向第一项),即因为指令cache的不命中而长时间不能为流水线提供新的指令。这时,若取指模块1取来两条指令,这两条指令被送入译码模块2进行译码。经译码后,发现第一条指令是流水线停顿指令(例如wait),那么其功能性指令标识位为1;第二条指令是普通指令,于是其功能性指令标识位为0。紧接着这两条指令被送入操作队列,分别被写入操作队列的第一项和第二项。因为第一条指令的功能性标识为1,固其在操作队列的状态标识分别如下:功能性标识位为1;issued位为1;WB位为1。而第二条指令的功能性指令标识位为0,其在操作队列的状态标识分别如下:功能性指令标识位为0;issued位为0;WB位为0。
在发射阶段,发射模块3将从操作队列中找到还未发射且操作数已准备好的指令将其发射到对应的指令运算功能单元4。第一项的issued位为1,不符合条件;而第二项的issued位为0符合条件,若第二项的操作数已准备好,那么将第二项的指令发射到对应的指令运算功能单元4。
在提交阶段,发射模块3从操作队列中找到已经发射且结果已经写回的项,将其提交。第一项的issued位为1且WB位也为1,符合条件,那么提交这条指令。因为操作队列的这项的功能性指令标识为1,因此提交逻辑仅将这条指令所占用的操作队列项释放掉,而不修改任何寄存器即不修改处理器状态。可见,若wait指令在送到操作队列时,若其同时也是队列头指向的指令,那么这条wait指令可以立即提交。
本发明实施例的微处理器功能性指令实现装置和方法,将这类功能性指令送入流水线,但是实际上却不做任何功能运算,从而减少运算指令运算功能单元的负载,进而在提高处理器的性能的同时降低处理器的功耗。
最后应当说明的是,很显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型。
Claims (7)
1.一种微处理器功能性指令实现装置,包括译码模块,发射模块,其特征在于,所述译码模块包括标识子模块和状态修改子模块,
所述标识子模块,用于判断待处理指令是否为功能性指令,并生成标识符,标识所述待处理指令是否为功能性指令;并将所述待处理指令与标识符一起送到所述发射模块的操作队列;
所述状态修改子模块,用于当所述待处理指令要写入操作队列时,根据标识符的值判断所述待处理指令是功能性指令后,将所述功能性指令的指令状态直接修改为已发射且结果已写回;
所述功能性指令是指对程序执行结果不产生影响的指令。
2.根据权利要求1所述的功能性指令实现装置,其特征在于,还包括寄存器文件模块;
所述发射模块还包括功能性指令提交子模块,用于当所述待处理指令要发射到寄存器文件模块时,根据标识符的值判断所述待处理指令是功能性指令后,释放所占用的操作队列项。
3.根据权利要求1或2所述的功能性指令实现装置,其特征在于,还包括指令运算功能单元;
所述发射模块根据标识符的值,判断出那些待处理的非功能性指令,将所述非功能性指令发射到所述指令运算功能单元中进行运算。
4.根据权利要求3所述的功能性指令实现装置,其特征在于,还包括取指模块,其按照指令在程序中出现的先后次序从内存或指令缓存中获取指令并送入到译码模块中译码。
5.一种微处理器功能性指令实现方法,其特征在于,包括下列步骤:
步骤S100,在译码阶段,若发现译码的待处理指令是功能性指令时,则生成标识符,所述标识符用以指示所述待处理指令是否为功能性指令,所述待处理指令与对应的标识符一起送到操作队列;
步骤S200,当所述待处理指令写入操作队列时,根据对应的标识符判断出是功能性指令,则将其指令状态直接修改为已发射且结果已写回;
所述功能性指令是指对程序执行结果不产生影响的指令。
6.根据权利要求5所述的功能性指令实现方法,其特征在于,还包括下列步骤:
步骤S300,根据标识符的值,判断待处理指令为非功能性指令时,则将所述非功能性指令发射到指令运算功能单元中进行运算。
7.根据权利要求6所述的功能性指令实现方法,其特征在于,还包括下列步骤:
步骤S400,根据所述待处理指令及对应的标识符,将功能性指令提交,并释放所占用的操作队列项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910243808 CN101739237B (zh) | 2009-12-21 | 2009-12-21 | 微处理器功能性指令实现装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910243808 CN101739237B (zh) | 2009-12-21 | 2009-12-21 | 微处理器功能性指令实现装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101739237A CN101739237A (zh) | 2010-06-16 |
CN101739237B true CN101739237B (zh) | 2013-09-18 |
Family
ID=42462765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910243808 Active CN101739237B (zh) | 2009-12-21 | 2009-12-21 | 微处理器功能性指令实现装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101739237B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102830952B (zh) * | 2012-09-05 | 2014-12-24 | 无锡江南计算技术研究所 | 基于指令块的指令发射控制方法及装置、以及处理器 |
CN104516726B (zh) * | 2013-09-27 | 2018-08-07 | 联想(北京)有限公司 | 一种指令处理的方法及装置 |
CN110825436B (zh) * | 2018-08-10 | 2022-04-29 | 昆仑芯(北京)科技有限公司 | 应用于人工智能芯片的计算方法和人工智能芯片 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1521618A (zh) * | 1997-08-29 | 2004-08-18 | ���µ�����ҵ��ʽ���� | 对指令列译码并执行指令的处理器 |
US7210024B2 (en) * | 2005-02-10 | 2007-04-24 | Qualcomm Incorporated | Conditional instruction execution via emissary instruction for condition evaluation |
CN101164042A (zh) * | 2005-03-04 | 2008-04-16 | 高通股份有限公司 | 在条件指令将不执行时停止等待源操作数 |
-
2009
- 2009-12-21 CN CN 200910243808 patent/CN101739237B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1521618A (zh) * | 1997-08-29 | 2004-08-18 | ���µ�����ҵ��ʽ���� | 对指令列译码并执行指令的处理器 |
US7210024B2 (en) * | 2005-02-10 | 2007-04-24 | Qualcomm Incorporated | Conditional instruction execution via emissary instruction for condition evaluation |
CN101164042A (zh) * | 2005-03-04 | 2008-04-16 | 高通股份有限公司 | 在条件指令将不执行时停止等待源操作数 |
Non-Patent Citations (3)
Title |
---|
YHFT_DX高性能DSP指令流水线设计与优化;甄体智;《中国优秀硕士学位论文全文数据库》;20091207;正文第3.4部分、4.3部分、图4.5 * |
廖恒,李三立.虚拟寄存器结构.《计算机学报》.1996,(第11期),正文第3部分. * |
甄体智.YHFT_DX高性能DSP指令流水线设计与优化.《中国优秀硕士学位论文全文数据库》.2009,正文第3.4部分、4.3部分、图4.5. |
Also Published As
Publication number | Publication date |
---|---|
CN101739237A (zh) | 2010-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109313556B (zh) | 可中断和可重启矩阵乘法指令、处理器、方法和系统 | |
JP5512803B2 (ja) | ベクトル命令を取り扱うためのデータ処理装置および方法 | |
CN101770358B (zh) | 微处理器跳转指令分支预测处理系统和方法 | |
CN101201811B (zh) | 用于soc的加解密协处理器 | |
US20090106533A1 (en) | Data processing apparatus | |
CN101739237B (zh) | 微处理器功能性指令实现装置和方法 | |
US20140129805A1 (en) | Execution pipeline power reduction | |
US6862676B1 (en) | Superscalar processor having content addressable memory structures for determining dependencies | |
EP3767462A1 (en) | Detecting a dynamic control flow re-convergence point for conditional branches in hardware | |
EP1974254B1 (en) | Early conditional selection of an operand | |
CN104216681A (zh) | 一种cpu指令处理方法和处理器 | |
CN112559048B (zh) | 一种指令处理装置、处理器及其处理方法 | |
US6983359B2 (en) | Processor and method for pre-fetching out-of-order instructions | |
US20150309796A1 (en) | Renaming with generation numbers | |
US9213547B2 (en) | Processor and method for processing instructions using at least one processing pipeline | |
US11593115B2 (en) | Processor, device, and method for executing instructions | |
US12039329B2 (en) | Methods, systems, and apparatuses to optimize partial flag updating instructions via dynamic two-pass execution in a processor | |
CN112540789B (zh) | 一种指令处理装置、处理器及其处理方法 | |
US11500644B2 (en) | Custom instruction implemented finite state machine engines for extensible processors | |
JP7409208B2 (ja) | 演算処理装置 | |
Shum et al. | Design and microarchitecture of the IBM System z10 microprocessor | |
CN111813447B (zh) | 一种数据拼接指令的处理方法和处理装置 | |
US20120079237A1 (en) | Saving Values Corresponding to Parameters Passed Between Microcode Callers and Microcode Subroutines from Microcode Alias Locations to a Destination Storage Location | |
US20120079248A1 (en) | Aliased Parameter Passing Between Microcode Callers and Microcode Subroutines | |
CN112579168A (zh) | 指令执行单元、处理器以及信号处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Patentee after: Loongson Zhongke Technology Co.,Ltd. Address before: 100080 No. 10 South Road, Haidian District Academy of Sciences, Beijing Patentee before: LOONGSON TECHNOLOGY Corp.,Ltd. |
|
CP03 | Change of name, title or address |