CN101539849A - 一种处理器以及一种寄存器选通方法 - Google Patents
一种处理器以及一种寄存器选通方法 Download PDFInfo
- Publication number
- CN101539849A CN101539849A CN200910082239A CN200910082239A CN101539849A CN 101539849 A CN101539849 A CN 101539849A CN 200910082239 A CN200910082239 A CN 200910082239A CN 200910082239 A CN200910082239 A CN 200910082239A CN 101539849 A CN101539849 A CN 101539849A
- Authority
- CN
- China
- Prior art keywords
- register
- parts
- input
- processor
- gate
- 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
Images
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
本发明提供了一种处理器及一种寄存器选通方法,能使处理器在增加寄存器数目时,仍具有较小的芯片面积和高速处理的能力。所述处理器包括部件一、部件二以及M个寄存器,当寄存器的数目从M增加到N时,所述N个寄存器包括:第一寄存器堆,包括K0个寄存器,用于被部件一用作输入和输出,并被部件二用作输入和输出;第二寄存器堆,包括K1个寄存器,用于被部件一用作输入,被部件二用作输出;第三寄存器堆,包括K2个寄存器,用于被部件一用作输出,被部件二用作输入;其中,K0+K1+K2=N,K0+K1=M,K0+K2=M。本发明在寄存器数目增加时,通过把处理器中的寄存器设置为使用方式不同的寄存器堆,可以不增加选通逻辑级数,即不降低处理器的电路延迟也不增加多余的电路面积。
Description
技术领域
本发明涉及处理器技术领域,特别是涉及一种处理器以及一种寄存器选通方法。
背景技术
处理器指具有运算器和控制器功能的大规模集成电路,在计算机体系结构或其它系统结构中起着关键性的作用。寄存器堆(register file)是构成处理器的重要部件,缓存和传输操作数是寄存器堆的基本作用,寄存器堆的性能优劣将直接影响处理器的处理能力。所述寄存器堆,是指处理器中多个寄存器(Register)的集合。寄存器堆中的寄存器可用于传送和暂存数据,也可参与算术逻辑运算并保存运算结果,还可以用于寻址,以及用来读写数据到电脑的周边设备。因此,较多的寄存器对于软件编程人员和处理器的编译器非常有利。
然而,使用效率、芯片面积、工作速度等,是设计处理器需要考虑的因素。设计处理器时,寄存器的数目不但影响处理器的工作速度,而且关系到处理器的面积。一般,现有的处理器中所设置的多个寄存器为一个通用寄存器堆,所述通用寄存器既可被用作输入,也可被用作输出。当处理器中的部件需要用到寄存器堆中的某个或者某些寄存器时,将通过选通器来进行选通。所述选通器通过选通逻辑来选通寄存器,每选通一个寄存器就需要用一个选通逻辑,寄存器的数目不同则需要的选通逻辑数目和选通逻辑级数也将不同。例如,一个处理器中,如果有8个寄存器,选通器将通过8个选通逻辑来进行选通,此时选通逻辑数目为8,8=23,所以选通逻辑级数为3级;如果有16个寄存器,则选通逻辑数目为16,16=24,所以选通逻辑级数为4级。
因此,如果增加寄存器的数目,将导致选通器的选通逻辑数目增加,而选通器的选通逻辑数目每翻一倍(2,4,8,...),所述选通器的选通逻辑级数将增加一级,选通器电路的延迟就会增加一倍,所以处理器的延迟和面积将同时变大。
例如,一个处理器包括两个部件,寄存器的数目为16个,假设这16个寄存器将全部用作输入或全部用作输出,即针对每个部件,用作输入的寄存器和用作输出的寄存器数目都为16。此时选通器的选通逻辑级数为4个(16=24);如果寄存器的数目从16增加到20,那么选通逻辑级数将从4个变为到5个(20>24,至少需要25才能满足)。这样,会因为增加了一级选通逻辑而增加电路延迟,并增大芯片面积。
发明内容
本发明所要解决的技术问题是提供一种处理器以及一种寄存器选通方法,能使处理器在增加寄存器数目的情况下,仍具有较小的芯片面积以及高速处理的能力。
为了解决上述问题,本发明公开了一种处理器,所述处理器包括部件一、部件二以及M个寄存器,当寄存器的数目从M增加到N时,所述N个寄存器包括:
第一寄存器堆,包括K0个寄存器,用于被部件一用作输入和输出,并被部件二用作输入和输出;
第二寄存器堆,包括K1个寄存器,用于被部件一用作输入,被部件二用作输出;
第三寄存器堆,包括K2个寄存器,用于被部件一用作输出,被部件二用作输入;
其中,K0+K1+K2=N,K0+K1=M,K0+K2=M。
所述处理器还包括:
输入选通器一,用于与所述部件一相连,并与所述第一寄存器堆和第二寄存器堆相连,完成部件一对寄存器的输入选通;
输出选通器一,用于与所述部件一相连,并与所述第一寄存器堆和第三寄存器堆相连,完成部件一对寄存器的输出选通;
输入选通器二,用于与所述部件二相连,并与所述第一寄存器堆和第三寄存器堆相连,完成部件二对寄存器的输入选通;
输出选通器二,用于与所述部件二相连,并与所述第一寄存器堆和第二寄存器堆相连,完成部件二对寄存器的输出选通;
控制器,用于根据请求信号,向所述输入选通器一、输出选通器一、输入选通器二和输出选通器二发出选通控制信号。
优选的,所述输出选通器一和输出选通器二设置在所述控制器中。
其中,当所述处理器包括M个寄存器或者包括N个寄存器时,所述输入选通器一、输出选通器一、输入选通器二和输出选通器二的选通逻辑级数都为m。
优选的,所述部件一和部件二分别为RISC处理器中的Load/Store部件和运算部件,则所述第一寄存器堆、第二寄存器堆和第三寄存器堆分别为RISC处理器中的通用寄存器堆、输入寄存器堆和目标寄存器堆;其中,
所述通用寄存器堆包括从寄存器0至寄存器L的K0个寄存器;
所述输入寄存器堆包括从寄存器L+1至寄存器L+K的K1个寄存器;
所述目标寄存器堆包括从寄存器L+K+1至寄存器L+2K的K2个寄存器;
其中K满足M+K=N。
本发明还提供了一种寄存器选通方法,所述寄存器所在的处理器包括部件一、部件二以及M个寄存器,当寄存器的数目从M增加到N时,所述方法包括:
预先将所述N个寄存器划分为第一寄存器堆,包括K0个寄存器;第二寄存器堆,包括K1个寄存器;第三寄存器堆,包括K2个寄存器;其中,K0+K1+K2=N,K0+K1=M,K0+K2=M;
处理器的部件一选取第一寄存器堆和第二寄存器堆用作输入选通,选取第一寄存器堆和第三寄存器堆用作输出选通;
处理器的部件二选取第一寄存器堆和第三寄存器堆用作输入选通,选取第一寄存器堆和第二寄存器堆用作输出选通。
其中,当所述处理器包括M个寄存器或者包括N个寄存器时,所述部件一和部件二的输入和输出选通逻辑级数都为m。
其中,所述输入和输出选通具体包括:
设置选通器分别与处理器中的部件和寄存器相连,所述选通器接收选通控制信号,根据所述选通控制信号选通相连的寄存器,并将选通的寄存器信息传送给该选通器相连的部件。
优选的,所述部件一和部件二分别为RISC处理器中的Load/Store部件和运算部件,则所述第一寄存器堆、第二寄存器堆和第三寄存器堆分别为RISC处理器中的通用寄存器堆、输入寄存器堆和目标寄存器堆;其中,
所述通用寄存器堆包括从寄存器0至寄存器L的K0个寄存器;
所述输入寄存器堆包括从寄存器L+1至寄存器L+K的K1个寄存器;
所述目标寄存器堆包括从寄存器L+K+1至寄存器L+2K的K2个寄存器;
其中K满足M+K=N。
与现有技术相比,本发明具有以下优点:
本发明在寄存器数目增加时,通过把处理器中的寄存器设置为使用方式不同的寄存器堆,可以不增加选通逻辑级数。即本发明不降低处理器的电路延迟也不增加多余的电路面积,还增加了总的寄存器数目,提高了软件开发和运行效率。
附图说明
图1是本发明实施例一所述一种处理器的结构图;
图2是本发明实施例二所述RISC处理器的结构图;
图3是本发明实施例三所述一种寄存器选通方法的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一:
参照图1,示出了本发明实施例一所述一种处理器的结构图。
寄存器是处理器内部重要的数据存储资源,是编程人员能直接使用的硬件资源之一。由于寄存器的存取速度比内存快,所以,要尽可能充分利用寄存器的存储功能,在使用过程中需要对寄存器进行适当的调度。在实际应用中,常把寄存器配置成寄存器堆的形式,来提高处理器的运行效率。例如MIPS微处理器具有32个通用寄存器,并且被配置成寄存器堆的形式使得寄存器资源得到充分的利用。本发明所述处理器用到了所述配置寄存器堆的原理,详细说明如下:
本实施例所述处理器包括部件一、部件二以及M个寄存器,当寄存器的数目从M增加到N时,所述N个寄存器102包括:
第一寄存器堆,包括K0个寄存器,用于被部件一用作输入和输出,并被部件二用作输入和输出;
第二寄存器堆,包括K1个寄存器,用于被部件一用作输入,被部件二用作输出;
第三寄存器堆,包括K2个寄存器,用于被部件一用作输出,被部件二用作输入;
其中,K0+K1+K2=N,K0+K1=M,K0+K2=M。
可以看出,本实施例所述处理器中,当寄存器的数目从M增加到N时,第一寄存器堆的K0个寄存器和第二寄存器堆的K1个寄存器被部件一用作输入寄存器,一共是M个寄存器;第一寄存器堆的K0个寄存器和第三寄存器堆的K2个寄存器被部件一用作输出寄存器,一共是M个寄存器;同理,被部件二用作输入寄存器和输出寄存器的寄存器数目也是M个。
所述处理器还包括:
输入选通器一,用于与所述部件一相连,并与所述第一寄存器堆和第二寄存器堆相连,完成部件一对寄存器的输入选通;
输出选通器一,用于与所述部件一相连,并与所述第一寄存器堆和第三寄存器堆相连,完成部件一对寄存器的输出选通;
输入选通器二,用于与所述部件二相连,并与所述第一寄存器堆和第三寄存器堆相连,完成部件二对寄存器的输入选通;
输出选通器二,用于与所述部件二相连,并与所述第一寄存器堆和第二寄存器堆相连,完成部件二对寄存器的输出选通;
控制器101,用于根据请求信号,向所述输入选通器一、输出选通器一、输入选通器二和输出选通器二发出选通控制信号,例如:
如果所述请求信号是部件一需要用到输入寄存器的请求信号,则所述控制器向输入选通器一发出控制信号,令输入选通器一对所述第一寄存器堆和第二寄存器堆进行选通;如果所述请求信号是部件一需要用到输出寄存器的请求信号,则所述控制器向输出选通器一发出控制信号,令输出选通器一对所述第一寄存器堆和第三寄存器堆进行选通。
其中,所述输出选通器一和输出选通器二可设置在所述控制器101中。
对于本实施例所述处理器,包括M个寄存器时,通过以下方法可知道需要用到的逻辑选通级数为多少。设需要用到的选通逻辑数目为2m,m即为选通级数,判断m的值方法为:如果M=2k,则选通逻辑数目2m=2k,选通级数m=k;如果2k<M<2k+1,则选通逻辑数目2m=2k+1,选通级数m=k+1。例如,所述处理器有32个寄存器时,设需要用到的选通逻辑数目为2m,因为寄存器的数目为32个,32=25,所以选通逻辑数目2m=25,选通级数m=5;如果所述处理器有40个寄存器,设需要用到的选通逻辑数目为2m,因为寄存器数目为40,25<40<25+1,即25<40<26,所以选通逻辑数目2m=26,选通级数m=6。
本实施例所述处理器中,设处理器包括M个寄存器,用作输入的寄存器和用作输出的寄存器数目都为M个时,输入和输出需要用到的选通逻辑数目分别为2m,选通级数为m。当寄存器的数目从M增加到N时,部件一和部件二可以从N个寄存器中选择寄存器来使用,能使用的寄存器数目增加了,寄存器数目的增加能提高编程人员进行软件开发的效率和处理器运行的效率。而当寄存器的数目从M增加到N时,被部件一、部件二用作输入和用作输出的寄存器数目仍然都为M,但针对同一个部件,用作输入和用作输出的寄存器不完全相同。因此,对于本实施例所述处理器,当寄存器的数目从M增加到N时,为部件一或部件二进行寄存器选通,需要用到的选通逻辑数目仍然为2m,选通逻辑级数仍然为m,不需要增加选通逻辑级数就能实现N个寄存器的选通,从而不会给选通器电路带来附加的延时。
综上所述,本发明实施例一所述处理器的各个部件能具有较高的使用效率、快速的存取效率,保证了工作速度。
实施例二:
参照图2,示出了本发明实施例所述RISC处理器的结构图。
除了RISC处理器,非RISC处理器也能运用本发明,因其运用原理与所述RISC处理器相同,在此不再详述。本实施例将以RISC处理器来对本发明作进一步说明。
RISC(精简指令集算法)的中心思想是简化硬件设计。在80年代,由于PC机不能满足图形处理和科学计算等应用的需求,而大型机又非常昂贵,因此创造了工作站这种相对便宜的台式系统。但是,用于PC机的处理器不可能满足工作站的需求,所以提出RISC处理器的思想。对RISC处理器的基本要求是使用效率高、芯片面积小、工作速度快。
一个RISC处理器包括一个Load/Store部件、一个运算部件以及M个寄存器。Load/Store部件即程序加载与存储部件,常用于处理程序;运算部件通常为算术逻辑部件,常用于处理数据,进行数据的算术逻辑运算等。
如图2所示,当RISC处理器中寄存器的数目从M增加到N时,本实施例把RISC处理器的寄存器堆设计成多个寄存器堆。本发明所述部件一和部件二分别为RISC处理器中的Load/Store部件和运算部件,则所述第一寄存器堆、第二寄存器堆和第三寄存器堆分别为RISC处理器中的通用寄存器堆、输入寄存器堆和目标寄存器堆,所述输入选通器一、输入选通器二、输出选通器一和输出选通器二分别为RISC处理器中的Load/Store部件输入选通器、运算部件输入选通器、Load/Store部件输出选通器和运算部件输出选通器;其中,
所述通用寄存器堆,包括从寄存器0至寄存器L的K0个寄存器;所述通用寄存器堆用于被Load/Store部件用作输入和输出,被运算部件用作输入和输出;
所述输入寄存器堆,包括从寄存器(L+1)至寄存器(L+K)的K1个寄存器;所述输入寄存器堆用于被Load/Store部件用作输入,被运算部件用做输出;
所述目标寄存器堆,包括从寄存器(L+K+1)至寄存器(L+2K)的K2个寄存器;所述目标寄存器堆用于被Load/Store部件用作输出,被运算部件用作输入;
其中K满足M+K=N。
例如,如果所述处理器中原有的寄存器数目为16个,当寄存器的数目从16个增加到20个时,寄存器的设置为:
通用寄存器堆,包括寄存器0-11,这组寄存器堆被Load/Store部件用作输入和输出,被运算部件用作输入和输出;
输入寄存器堆,包括寄存器12-15,这组寄存器堆被Load/Store部件用作输入,被运算部件用作输出;
目标寄存器堆,包括寄存器16-19,这组寄存器堆被Load/Store部件用作输出,被运算部件用作输入。
处理器中原有的寄存器数目为16时,需要用到的选通逻辑数目为16,16=24,选通级数为4。当寄存器的数目从16增加到20时,Load/Store部件和运算部件可以从20个寄存器中选择寄存器来使用,而此时,被Load/Store部件、运算部件用作输入、输出的寄存器数目仍然都为16,需要用到的选通逻辑数目仍然为24,选通逻辑级数仍然为4,不需要增加选通逻辑级数就能实现20个寄存器的选通,从而不会给选通器电路带来附加的延时。
所述Load/Store部件输入选通器,用于与Load/Store部件相连,并与所述通用寄存器堆和输入寄存器堆相连,完成Load/Store部件对寄存器的输入选通;
所述运算部件输入选通器,用于与所述运算部件相连,并与所述通用寄存器堆和目标寄存器堆相连,完成运算部件对寄存器的输入选通;
所述RISC处理器,还包括:
控制器202,用于根据请求信号,向选通器发出控制信号;
例如,如果所述请求信号是请求信号21,所述控制器向选通器发出为Load/Store部件选通寄存器的控制信号;如果所述请求信号是请求信号22,所述控制器向选通器发出为运算部件选通寄存器的控制信号。
所述Load/Store部件输出选通器和运算部件输出选通器,可以包括在处理器中,也可以不包括在处理器中。一种实现方式为,所述Load/Store部件输出选通器和运算部件输出选通器,包括在所述控制器中;如果请求信号是Load/Store部件需要用到输出寄存器的请求信号,则控制器直接向所述通用寄存器堆和目标寄存器堆发出Load/Store部件输出选通信号,进行寄存器选通;如果请求信号是运算部件需要用到输出寄存器的请求信号,则控制器直接向所述通用寄存器堆和目标寄存器堆发出运算部件输出选通信号,进行寄存器选通。
在RISC处理器中,更多的寄存器对软件编程人员和处理器编译器非常有利。一般情况下,增加寄存器数目时,会因增加了选通器的选通逻辑级数而增大处理器的面积,同时增加电路延时,降低了处理器的运行效率以及处理速度。本发明所述RISC处理器,能在增加寄存器数目时,用原有的选通逻辑数目就能对增加后的多个寄存器进行选通,因此不需要增加选通逻辑级数,不会增加电路延时,从而,既提高了处理器的运行效率,又不降低处理器的速度。
实际上,由于处理器内部结构比较复杂,在运行过程中会用到寄存器的部件有时不只两个,如果要在增加寄存器数目时不增加选通逻辑级数,按照本发明的思想设置的寄存器堆的数目也不限于三个。但是,对于所述情况下具有多个部件及多个寄存器堆的处理器,由于其基本设置原理与本发明实施例所述处理器的设置原理相同,所以本发明就不一一详述了。简单举例如下:
一个处理器,包括三个部件,分别为:L1、L2、L3;原有寄存器数目为M0,寄存器数目增加为N0后,N0个寄存器具体为:
寄存器堆A0,包括B0个寄存器,用于被部件L1用作输入和输出,被部件L2用作输入和输出,并被部件L3用作输入和输出;
寄存器堆A1,包括B1个寄存器,用于被部件L1用作输入,被部件L3用作输出;
寄存器堆A2,包括B2个寄存器,用于被部件L2用作输入,被部件L1用作输出;
寄存器堆A3,包括B3个寄存器,用于被部件L3用作输入,被部件L2用作输出;
其中,B0+B1+B2+B3=N0;B0+B1=M0;B0+B2=M0;B0+B3=M0。
实施例三:
针对上述实施例,本发明还提供了相应的寄存器选通方法实施例。
图3是本发明实施例二所述一种寄存器选通方法的流程图。
本实施例所述寄存器所在的处理器包括部件一、部件二以及M个寄存器,当寄存器的数目从M增加到N时,所述选通方法具体为:
S301,对所述N个寄存器进行设置;
预先将所述N个寄存器划分为第一寄存器堆,包括K0个寄存器;第二寄存器堆,包括K1个寄存器;第三寄存器堆,包括K2个寄存器;其中,K0+K1+K2=N,K0+K1=M,K0+K2=M;
S302,处理器的部件一选取第一寄存器堆和第二寄存器堆用作输入选通,选取第一寄存器堆和第三寄存器堆用作输出选通;
S303,处理器的部件二选取第一寄存器堆和第三寄存器堆用作输入选通,选取第一寄存器堆和第二寄存器堆用作输出选通。
其中,步骤S302和S303没有先后顺序之分。
对于本实施例所述选通方法,当处理器包括M个寄存器或者包括N个寄存器时,所述部件一和部件二的输入和输出选通逻辑级数都为m。
其中,所述输入和输出选通具体包括:
设置选通器分别与处理器中的部件和寄存器相连,所述选通器接收选通控制信号,根据所述选通控制信号选通相连的寄存器,并将选通的寄存器信息传送给该选通器相连的部件。
本发明提供的一种处理器以及一种寄存器选通方法,能使处理器在保证运行速度和运行效率的前提下,增加多个寄存器来使用,以满足处理器繁重的数据读写吞吐量的要求。在寄存器数目增加时,由于处理器中的寄存器被设置为对不同部件有着不同用途的多个寄存器堆,因此,当处理器中运行过程中需要用到寄存器时,用原有的选通逻辑就能对数目增加后的多个寄存器进行选通,而不需要增加选通逻辑的数目,不需要增加选通逻辑级数,使处理器不会因增加了寄存器数目而产生额外的电路延时。综上所述,本发明能使微处理器在寄存器数目增加时,具有较小的面积以及高速处理的能力,提高了软件开发和运行效率,处理器的性能得到了极大提高。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于方法实施例而言,由于其与装置实施例基本相似,所以描述的比较简单,相关之处参见装置实施例的部分说明即可。
以上对本发明所提供的一种处理器以及一种寄存器选通方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1、一种处理器,所述处理器包括部件一、部件二以及M个寄存器,其特征在于,当寄存器的数目从M增加到N时,所述N个寄存器包括:
第一寄存器堆,包括K0个寄存器,用于被部件一用作输入和输出,并被部件二用作输入和输出;
第二寄存器堆,包括K1个寄存器,用于被部件一用作输入,被部件二用作输出;
第三寄存器堆,包括K2个寄存器,用于被部件一用作输出,被部件二用作输入;
其中,K0+K1+K2=N,K0+K1=M,K0+K2=M。
2、根据权利要求1所述的处理器,其特征在于,还包括:
输入选通器一,用于与所述部件一相连,并与所述第一寄存器堆和第二寄存器堆相连,完成部件一对寄存器的输入选通;
输出选通器一,用于与所述部件一相连,并与所述第一寄存器堆和第三寄存器堆相连,完成部件一对寄存器的输出选通;
输入选通器二,用于与所述部件二相连,并与所述第一寄存器堆和第三寄存器堆相连,完成部件二对寄存器的输入选通;
输出选通器二,用于与所述部件二相连,并与所述第一寄存器堆和第二寄存器堆相连,完成部件二对寄存器的输出选通;
控制器,用于根据请求信号,向所述输入选通器一、输出选通器一、输入选通器二和输出选通器二发出选通控制信号。
3、根据权利要求2所述的处理器,其特征在于:所述输出选通器一和输出选通器二设置在所述控制器中。
4、根据权利要求2所述的处理器,其特征在于:
当所述处理器包括M个寄存器或者包括N个寄存器时,所述输入选通器一、输出选通器一、输入选通器二和输出选通器二的选通逻辑级数都为m。
5、根据权利要求1所述的处理器,其特征在于:
所述部件一和部件二分别为RISC处理器中的Load/Store部件和运算部件,则所述第一寄存器堆、第二寄存器堆和第三寄存器堆分别为RISC处理器中的通用寄存器堆、输入寄存器堆和目标寄存器堆;其中,
所述通用寄存器堆包括从寄存器0至寄存器L的K0个寄存器;
所述输入寄存器堆包括从寄存器L+1至寄存器L+K的K1个寄存器;
所述目标寄存器堆包括从寄存器L+K+1至寄存器L+2K的K2个寄存器;
其中K满足M+K=N。
6、一种寄存器选通方法,所述寄存器所在的处理器包括部件一、部件二以及M个寄存器,其特征在于,当寄存器的数目从M增加到N时,所述方法包括:
预先将所述N个寄存器划分为第一寄存器堆,包括K0个寄存器;第二寄存器堆,包括K1个寄存器;第三寄存器堆,包括K2个寄存器;其中,K0+K1+K2=N,K0+K1=M,K0+K2=M;
处理器的部件一选取第一寄存器堆和第二寄存器堆用作输入选通,选取第一寄存器堆和第三寄存器堆用作输出选通;
处理器的部件二选取第一寄存器堆和第三寄存器堆用作输入选通,选取第一寄存器堆和第二寄存器堆用作输出选通。
7、根据权利要求6所述的方法,其特征在于:
当所述处理器包括M个寄存器或者包括N个寄存器时,所述部件一和部件二的输入和输出选通逻辑级数都为m。
8、根据权利要求6所述的方法,其特征在于,所述输入和输出选通具体包括:
设置选通器分别与处理器中的部件和寄存器相连,所述选通器接收选通控制信号,根据所述选通控制信号选通相连的寄存器,并将选通的寄存器信息传送给该选通器相连的部件。
9、根据权利要求6所述的方法,其特征在于:
所述部件一和部件二分别为RISC处理器中的Load/Store部件和运算部件,则所述第一寄存器堆、第二寄存器堆和第三寄存器堆分别为RISC处理器中的通用寄存器堆、输入寄存器堆和目标寄存器堆;其中,
所述通用寄存器堆包括从寄存器0至寄存器L的K0个寄存器;
所述输入寄存器堆包括从寄存器L+1至寄存器L+K的K1个寄存器;
所述目标寄存器堆包括从寄存器L+K+1至寄存器L+2K的K2个寄存器;
其中K满足M+K=N。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910082239 CN101539849B (zh) | 2009-04-21 | 2009-04-21 | 一种处理器以及一种寄存器选通方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910082239 CN101539849B (zh) | 2009-04-21 | 2009-04-21 | 一种处理器以及一种寄存器选通方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101539849A true CN101539849A (zh) | 2009-09-23 |
CN101539849B CN101539849B (zh) | 2013-10-16 |
Family
ID=41123056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910082239 Expired - Fee Related CN101539849B (zh) | 2009-04-21 | 2009-04-21 | 一种处理器以及一种寄存器选通方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101539849B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440210A (zh) * | 2013-08-21 | 2013-12-11 | 复旦大学 | 异步时钟控制的寄存器堆读隔离方法 |
CN109606380A (zh) * | 2018-12-07 | 2019-04-12 | 英业达科技有限公司 | 网络控制装置、方法及车辆电控单元 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1236455A (zh) * | 1996-11-07 | 1999-11-24 | 爱特梅尔股份有限公司 | 具有risc结构的八位微控制器 |
EP1376336A2 (en) * | 1992-11-27 | 2004-01-02 | Motorola, Inc. | Extensible central processing unit |
CN101312199A (zh) * | 2007-05-21 | 2008-11-26 | 国际商业机器公司 | 多端口寄存器堆单元及其制造方法 |
-
2009
- 2009-04-21 CN CN 200910082239 patent/CN101539849B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1376336A2 (en) * | 1992-11-27 | 2004-01-02 | Motorola, Inc. | Extensible central processing unit |
CN1236455A (zh) * | 1996-11-07 | 1999-11-24 | 爱特梅尔股份有限公司 | 具有risc结构的八位微控制器 |
CN101312199A (zh) * | 2007-05-21 | 2008-11-26 | 国际商业机器公司 | 多端口寄存器堆单元及其制造方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440210A (zh) * | 2013-08-21 | 2013-12-11 | 复旦大学 | 异步时钟控制的寄存器堆读隔离方法 |
CN109606380A (zh) * | 2018-12-07 | 2019-04-12 | 英业达科技有限公司 | 网络控制装置、方法及车辆电控单元 |
CN109606380B (zh) * | 2018-12-07 | 2020-08-07 | 英业达科技有限公司 | 网络控制装置、方法及车辆电控单元 |
Also Published As
Publication number | Publication date |
---|---|
CN101539849B (zh) | 2013-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10877766B2 (en) | Embedded scheduling of hardware resources for hardware acceleration | |
CN104115093B (zh) | 包括多个处理元件之间的功率和性能平衡的用于能效和节能的方法、装置和系统 | |
US10127043B2 (en) | Implementing conflict-free instructions for concurrent operation on a processor | |
US10700968B2 (en) | Optimized function assignment in a multi-core processor | |
US20110231616A1 (en) | Data processing method and system | |
JP5431003B2 (ja) | リコンフィギュラブル回路及びリコンフィギュラブル回路システム | |
CN110427337B (zh) | 基于现场可编程门阵列的处理器内核及其运行方法 | |
KR20100053593A (ko) | 컴퓨터 시스템에서 다른 프로세서들에 대한 시스템 관리 인터럽트들을 방송하기 위한 메커니즘 | |
US20240143392A1 (en) | Task scheduling method, chip, and electronic device | |
CN112130901A (zh) | 基于risc-v的协处理器、数据处理方法及存储介质 | |
CN100489830C (zh) | 面向科学计算的64位流处理器芯片 | |
CN112199173A (zh) | 双核cpu实时操作系统数据处理方法 | |
CN115098412A (zh) | 外设访问控制器、数据访问装置及对应方法、介质和芯片 | |
CN104346132A (zh) | 应用于智能卡虚拟机运行的控制装置及智能卡虚拟机 | |
CN101876964A (zh) | 一种芯片的片上多处理器结构 | |
US20110055831A1 (en) | Program execution with improved power efficiency | |
CN101539849B (zh) | 一种处理器以及一种寄存器选通方法 | |
US11237994B2 (en) | Interrupt controller for controlling interrupts based on priorities of interrupts | |
US7904696B2 (en) | Communication paths for enabling inter-sequencer communication following lock competition and accelerator registration | |
CN107678781B (zh) | 处理器以及用于在处理器上执行指令的方法 | |
JP2014215624A (ja) | 演算処理装置 | |
CN116757132A (zh) | 异构多核fpga电路架构、构建方法及数据传输方法 | |
EP2731008A1 (en) | Resource contention in multiple cores | |
CN101526897B (zh) | 嵌入式处理器高速协处理器接口 | |
CN112486904A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131016 Termination date: 20190421 |
|
CF01 | Termination of patent right due to non-payment of annual fee |