CN101685386A - 用于处理任意宽度数据的算术逻辑单元及其处理方法 - Google Patents

用于处理任意宽度数据的算术逻辑单元及其处理方法 Download PDF

Info

Publication number
CN101685386A
CN101685386A CN200910163703A CN200910163703A CN101685386A CN 101685386 A CN101685386 A CN 101685386A CN 200910163703 A CN200910163703 A CN 200910163703A CN 200910163703 A CN200910163703 A CN 200910163703A CN 101685386 A CN101685386 A CN 101685386A
Authority
CN
China
Prior art keywords
control signal
displacement
data
width
operand
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.)
Pending
Application number
CN200910163703A
Other languages
English (en)
Inventor
程旭
张良
佟冬
李险峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIDA ZHONGZHI MICROSYSTEM SCIENCE AND TECHNOLOGY Co Ltd BEIJING
Original Assignee
BEIDA ZHONGZHI MICROSYSTEM SCIENCE AND TECHNOLOGY Co Ltd BEIJING
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIDA ZHONGZHI MICROSYSTEM SCIENCE AND TECHNOLOGY Co Ltd BEIJING filed Critical BEIDA ZHONGZHI MICROSYSTEM SCIENCE AND TECHNOLOGY Co Ltd BEIJING
Priority to CN200910163703A priority Critical patent/CN101685386A/zh
Publication of CN101685386A publication Critical patent/CN101685386A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

本发明公开了一种用于处理任意宽度数据的算术逻辑单元及其处理方法,该逻辑单元包括通用算术逻辑单元,还包括:第一移位器A,用于对第一源操作数进行预处理,并将预处理结果输出至通用算术逻辑单元的输入端口A;第二移位器B,用于对第二源操作数进行预处理,并将预处理结果输出至通用算术逻辑单元的输入端口B;第三移位器C,用于通用算术逻辑单元的输出数据进行后处理;通用算术逻辑单元对第一移位器A、第二移位器B的预处理结果执行算术逻辑运算。本发明可以处理操作数位宽小于通用算术逻辑单元数据宽度的任意操作数。

Description

用于处理任意宽度数据的算术逻辑单元及其处理方法
技术领域
本发明涉及处理器结构技术领域,特别是涉及一种增强型算术逻辑单元及其处理任意宽度数据的方法,所述增强型算术逻辑单元可应用于对操作数宽度有特殊需求的处理器设计,包括数字信号处理器(DSP)、图形图像处理器、多媒体处理器设计等领域。
背景技术
算术逻辑单元(Arithmetic Logic Unit,简称ALU)是处理器***数据通路设计中的核心部件,其功能是通过电路实现对输入数据的算术运算(如加法、减法)和逻辑运算(如与、或、非)并将运算结果输出。在处理器设计中,所有处理器的数据通路设计都包括算术逻辑单元;许多设计通过改变或增强ALU设计,来提高***性能,降低功耗,加速操作等。一般地,处理器数据通路中的ALU部件包含两个源操作数输入端口和一个结果操作数输出端口,以及一些标志位输出端口。
目前许多算术逻辑单元的设计,通过增加移位器来优化其在某一特定方面的性能,比如有些设计在ALU部件的某一源操作数输入端口前加入移位器,也有一些在ALU的结果操作数输出端口后加入移位器。日本专利号为JP62097032的一种发明,在ALU的一个输入端口上增加一个移位器。在执行乘法操作时,该移位器预先对源操作数进行移位,再把结果送给ALU进行算术逻辑运算。还有一些设计,是在ALU的源操作数某一输入端口和结果操作数输出端口各增加一个移位器,用来规格化输入输出数据。这类设计对数据的处理机制如下:输入数据先经过移位器的右移操作降低数据表示精度,使ALU部件的操作变得更简单,然后ALU根据指令操作符处理右移后的操作数,ALU的操作结果再通过移位器逻辑左移相应位数,保持与源操作数格式的一致。
微处理器通常在操作数宽度方面受到限制,即无法对小于通用ALU数据位宽的任意宽度操作数进行操作。数据位宽为N的ALU能够处理宽度为N的操作数,但无法处理从1到N-1的任意宽度操作数。在数字信号处理器中,通常还需要操作宽度8/16/24的数据。一些处理器设计会在数据通路中提供至少两个ALU,一个用来做16位相关操作,一个用来做24位相关操作,即便如此,其支持的位数依然受硬件限制,无法支持任意位宽。目前普遍采用的单指令多数据流(Single Instruction Multiple Data,简称为SIMD)技术,也只能处理几种固定位宽的操作数,而引入SIMD需要大规模修改指令***和结构设计。
发明内容
本发明所要解决的技术问题在于提供一种用于处理任意宽度数据的算术逻辑单元及其处理方法,用于克服微处理器操作数宽度的限制,实现对任意宽度的数据处理,使得微处理器在执行算术逻辑操作时,可以处理操作数位宽小于通用算术逻辑单元数据宽度的任意操作数。
本发明的另一目的是提供一种用于处理任意宽度数据的算术逻辑单元,包括通用算术逻辑单元,其特征在于,还包括:
第一移位器A,其数据输出端口与所述通用算术逻辑单元的输入端口A相连接,用于根据使能信号、移位位数控制信号对第一源操作数进行预处理,并将预处理结果输出至所述输入端口A;
第二移位器B,其数据输出端口与所述通用算术逻辑单元的输入端口B相连接,用于根据使能信号、移位位数控制信号、移位类型控制信号对第二源操作数进行预处理,并将预处理结果输出至所述输入端口B;
第三移位器C,其数据输入端口与所述通用算术逻辑单元的输出端口C相连接,用于根据使能信号、移位位数控制信号对所述通用算术逻辑单元的输出数据进行后处理;
所述通用算术逻辑单元对所述第一移位器A、所述第二移位器B的预处理结果执行算术逻辑运算。
所述的用于处理任意宽度数据的算术逻辑单元,其中,所述第一移位器A的移位类型包含逻辑左移。
所述的用于处理任意宽度数据的算术逻辑单元,其中,所述第二移位器B包含通用的移位类型。
所述的用于处理任意宽度数据的算术逻辑单元,其中,所述第三移位器C的移位类型包含算术右移。
所述的用于处理任意宽度数据的算术逻辑单元,其中,所述第一移位器A和所述第三移位器C根据所述使能信号控制是否执行移位操作,所述第二移位器B根据所述使能信号控制是否执行逻辑左移;所述使能信号由预设的控制信号产生。
所述的用于处理任意宽度数据的算术逻辑单元,其中,所述第一移位器A、所述第二移位器B和所述第三移位器C根据所述移位位数控制信号控制所执行移位操作的移位位数,所述移位位数控制信号由预设的控制信号产生。
所述的用于处理任意宽度数据的算术逻辑单元,其中,所述第二移位器B根据所述移位类型控制信号控制执行移位操作的类型,所述移位类型控制信号由预设的控制信号产生。
为了实现上述目的,本发明还提供了一种用于处理任意宽度数据的方法,其特征在于,包括:
步骤一,对指令进行译码,并根据译码结果从数据地址空间取出第一源操作数、第二源操作数,同时产生使能信号、移位位数控制信号和移位类型控制信号;
步骤二,根据所述使能信号、所述移位位数控制信号对所述第一源操作数进行预处理,根据所述使能信号、所述移位位数控制信号、所述移位类型控制信号对所述第二源操作数进行预处理;
步骤三,对预处理后的所述第一源操作数、所述第二源操作数执行算术逻辑运算;
步骤四,根据所述使能信号、所述移位位数控制信号对执行算术逻辑运算后的数据进行后处理,并输出结果。
所述的用于处理任意宽度数据的方法,其中,所述指令的指令编码中包含移位位数域、使能位域。
所述的用于处理任意宽度数据的方法,其中,所述步骤二中,进一步包括:
当所述使能信号有效时,根据所述移位位数控制信号对所述第一源操作数、所述第二源操作数分别执行相应的位数逻辑左移操作,得到预处理后的所述第一源操作数、所述第二源操作数;
所述步骤四中,进一步包括:
当所述使能信号有效时,对执行算术逻辑运算后的数据进行算术右移操作,并将结果作为最终结果输出。
本发明的有益技术效果:
本发明引入增强型算术逻辑单元设计的处理器,可以更好的支持对多种宽度操作数进行算术逻辑运算的应用。比如数字信号处理器,需要处理各种数据位宽的操作数。其中对音频的处理多是16位;图像处理的许多计算是8位的,而且不加入饱和处理,就需要进行9位的ALU操作。图像处理还需要对各种数据宽度的位操作;当然DSP中还有通用的32位算术逻辑运算。整个设计中,完全可以加入32位处理宽度的增强型算术逻辑单元,来满足处理所有宽度操作数的需求。增强型算术逻辑单元解决了目前微处理器操作数宽度受限问题,实现了微处理器在执行算术逻辑操作时,可处理小于其数据位宽的任意宽度数据的能力。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1是本发明处理任意宽度数据的增强型算术逻辑单元的结构示意图;
图2是本发明处理任意宽度数据的方法流程图;
图3是发明实施例中加法运算各操作数的运算二进制数值。
具体实施方式
下面结合附图和具体实施方式对本发明的技术方案作进一步更详细的描述。
如图1所示,是本发明处理任意宽度数据的增强型算术逻辑单元的结构示意图。
用于处理任意宽度数据的增强型算术逻辑单元2,包括通用算术逻辑单元203,还包括两个分别与通用算术逻辑单元203的输入端口相连接的移位器A201和移位器B 202、以及与通用算术逻辑单元203的输出端口相连接的移位器C 204,其中:
移位器A 201,其数据输出端口与通用算术逻辑单元203的输入端口A2031相连接,用于根据使能信号、移位位数控制信号对操作数A进行预处理,并将预处理结果操作数A′输出至输入端口A 2031。
移位器B 202,其数据输出端口与通用算术逻辑单元203的输入端口B2032相连接,用于根据使能信号、移位位数控制信号、移位类型控制信号对操作数B进行预处理,并将预处理结果操作数B′输出至输入端口B 2032。
移位器C 204,其数据输入端口与通用算术逻辑单元203的输出端口C2033相连接,用于根据使能信号、移位位数控制信号对通用算术逻辑单元203的输出数据(操作数C′)进行后处理,得到操作数C。
操作数A、操作数B均为源操作数。
移位器A 201,其移位类型只包含逻辑左移,其输入控制信号包括使能信号和移位位数控制信号。
移位器B 202,包含所有通用的移位类型,其输入控制信号包括使能信号、移位位数控制信号和移位类型控制信号。
移位器C 204,其移位类型只包含算术右移,其输入控制信号包括使能信号和移位位数控制信号。
使能信号由预设的控制信号产生方法产生,用于控制移位器A 201和移位器C 204是否执行移位操作,控制移位器B 202是否执行逻辑左移。
移位位数控制信号由预设的控制信号产生方法产生,用于控制移位器A201、移位器B 202和移位器C 204所执行移位操作的移位位数。
移位类型控制信号由预设的控制信号产生方法产生,用于控制移位器B202执行移位操作的类型。
增强型算术逻辑单元203处理任意宽度数据的具体实现过程如下:
首先,控制模块1对含有指明使能标识、移位宽度和移位类型的指令进行译码,并根据译码结果从数据地址空间取出源操作数A、B,并同时产生使能信号、移位位数控制信号和移位类型控制信号;
然后,移位器A 201和移位器B 202分别接收源操作数A、B,移位器A 201根据使能信号、移位位数控制信号对源操作数A进行预处理得到操作数A′,移位器B 202根据使能信号、移位位数控制信号、移位类型控制信号对操作数B进行预处理,得到操作数B′,并将操作数A′、操作数B′传递至通用算术逻辑单元203的输入端口;
再者,通用算术逻辑单元203对预处理过的两个操作数A′、操作数B′执行算术逻辑运算,并将运算结果传递至移位器C 204;
最后,移位器C 204根据使能信号、移位位数控制信号对数据进行后处理,并将结果输出。
指令的指令编码中包含移位位数域与使能位域。
当使能信号有效时,具体为:
1)移位器A 201和移位器B 202根据移位位数控制信号对两个源操作数分别执行相应的位数逻辑左移操作,并将结果传递至通用算术逻辑单元203;
2)通用算术逻辑单元203对预处理过的两个源操作数执行算术逻辑运算,并将运算结果传递至移位器C 204;
3)移位器C 204根据移位位数控制信号对数据进行算术右移操作,并将结果作为最终结果输出。
在图1中,该实施方式主要由控制模块1和增强型算术逻辑单元2构成。其中控制模块1由指令译码器101和控制信号产生单元102组成,指令译码器101接收指令,控制信号产生单元102根据指令产生使能信号、移位位数控制信号和移位类型控制信号用于控制增强型算术逻辑单元2的操作。增强型算术逻辑单元2的设计,是在原有通用算术逻辑单元203的一个输入端口A 2031加入移位器A 201,另一输入端口B 2032加入移位器B 202,输出端口C 2033加入移位器C 204。
为使已有***中能实现处理任意宽度操作数功能,需要在原有算术逻辑操作指令编码上增加移位位数域和使能位域。这两个域作为指令编码的一部分会传送给指令译码器101和控制信号产生单元102。移位位数域用于指明操作数的位数,对于N位数据宽度的通用算术逻辑单元203,移位位数域的指令编码宽度为log2N上取整,则该位域的取值范围从0到N-1;移位位数域的具体数值与待处理源操作数的宽度直接相关,要处理M位(0<M<N)数据宽度的操作数,为简化计算设定该域取值为N-M。使能位域用于标识算术逻辑运算类指令所处理的源操作数的数据宽度是特定宽度操作数,还是与通用算术逻辑单元203的数据宽度一致的操作数。使能位域的指令编码宽度为一位,其使能信号为0时,表示待处理的是与通用算术逻辑单元203的数据宽度一致的操作数;其使能信号为1时,表明待处理的是小于与通用算术逻辑单元203的数据宽度任意宽度的源操作数。
实现本发明的增强型算术逻辑单元2的方法,不需要对指令译码器101进行修改,即所新增加的移位位数域和使能位域,不需要指令译码器101进行特殊译码操作,对这两个域的译码主要由控制信号产生单元102执行。控制信号产生单元102的一个输入是指令编码,该单元会根据指令中的移位位数域和使能位域而生成相应的控制信号。而且控制信号产生单元102不需要对这两个域进行特殊处理,而是直接将移位位数域作为相同宽度的移位位数控制信号输出,将使能位域作为相同宽度的宽度标识控制信号输出。移位位数控制信号输出给移位器A 201、移位器B 202、移位器C 204,控制这三个移位器的移位位数;使能信号送给三个移位器,指明指令所要处理的操作数类型。
对所加入的三个移位器采用限定工作方式的方法,从而控制增强型算术逻辑单元2实现处理任意宽度操作数的功能。
移位器A 201是加入了逻辑判断,包含逻辑左移功能的简化移位器,其输入包括源操作数、移位位数控制信号和使能信号;输出为经过预处理后的源操作数。移位器A 201的工作原理为:首先移位器A 201对使能信号进行判断,如果使能信号为0,表明要进行的是普通的算术逻辑操作,此时移位器A 201的逻辑左移功能处于禁用状态,即直接把源操作数送到输出端口输出,传递给通用算术逻辑单元203;如果使能信号为1,表明要进行的是特定宽度操作数操作,此时移位器A 201的逻辑左移功能有效,结合移位位数控制信号,对源操作数进行逻辑左移后,将结果送到输出端口并传递给通用算术逻辑单元203。
移位器B 202是加入逻辑判断的通用移位器,其输入包括源操作数、移位位数控制信号、使能信号和移位类型信号,输出为经过预处理后的源操作数。移位器B 202的工作原理为:首先移位器B 202对使能信号进行判断,如果使能信号为0,表明要进行的是普通的算术逻辑操作,此时移位器B 202根据移位类型信号和移位位数控制信号,进行各种类型的移位操作,并将处理后的结果传递给通用算术逻辑单元203;如果使能信号为1,表明要进行的是特定宽度操作数操作,此时移位器B 202的移位类型固定为逻辑左移,结合移位位数控制信号,对源操作数进行逻辑左移后,将结果送到输出端口并传递给通用算术逻辑单元203。
移位器C 204是加入了逻辑判断,包含算术右移功能的简化移位器,其输入包括来自通用算术逻辑单元203的操作数、移位位数控制信号和使能信号,输出为经过处理后的结果操作数。移位器C 204的工作原理为:首先移位器C204对使能信号进行判断,如果使能信号为0,表明做普通的算术逻辑操作,此时移位器C 204的算术右移功能处于禁用状态,即直接把通用算术逻辑单元203的运算结果送到输出端口输出;如果使能信号为1,表明要进行的是特定宽度操作数操作,此时移位器C 204的算术右移功能有效,结合移位位数控制信号,对操作数进行算术右移后,将结果送到输出端口作为结果操作数输出。
上面对控制模块1、增强型算术逻辑单元2的各部分功能进行了详细的描述,对于一个位宽为N的通用算术逻辑单元,要执行M位的源操作数的算术逻辑运算,其中0<M<N,即低M位为实际有效数字,可通过图2中的步骤实现。具体如下:
步骤211,将指令经过指令译码器101进行译码后,从译码得到的数据地址中取出两个N位操作数,分别记为操作数A和操作数B,则两操作数中的低M位为实际有效数字。同时控制信号产生单元102置移位位数控制信号值为N-M,置使能信号有效;
步骤212,将操作数A和操作数B分别发送到移位器A 201和移位器B202,移位器A 201和移位器B 202分别在控制信号的作用下对操作数A和操作数B进行逻辑左移N-M位处理,得到操作数A′和操作数B′。
此过程中,使能信号有效,使能移位器A 201和移位器B 202,逻辑左移的N-M位由移位位数控制信号指定;
步骤213,通用算术逻辑单元203接收操作数A′和操作数B′,并对操作数A′和操作数B′执行算术逻辑运算,得到结果操作数C′,并置相应标志位。操作数C′将作为移位器C 204的输入数据输送至移位器C 204,且操作数C′的数据位宽是N位;
步骤214,移位器C 204接收操作数C′,并对其进行算术右移操作,得到移位后的结果操作数C,此时,操作数C就是最终结果。
该步骤中,与源操作数A和操作数B一致,结果操作数C的实际有效数据是低M位,其它位都是进行符号扩展的填充位。
两个M位数据经过两个输入端口的移位操作、通用算术逻辑单元203的算术逻辑运算和输出端口移位操作后,得到M位的操作结果。所有的中间过程由硬件自动完成,编程人员的操作就是准备源操作数,并发出相应指令,然后从通用算术逻辑单元203的输出端口得到最终操作结果。
参考图1、图2和图3,举一个实际的例子进行相应说明。本例中,利用32位的数据通路,对两个22位的操作数执行加法操作,即C=A+B,N=32,M=22。其中,设定操作数A的值为无符号十进制数4190466,用十六进制表示为0x3FF102;操作数B的值为无符号十进制数63128,用十六进制表示为0xF698。执行加法后的正确结果操作数C应该是十进制数4253594,用十六进制表示为0xE79A,并且需要置进位标示位。执行下面步骤:
步骤一,指令译码后,根据译码结果从数据地址空间取出两个操作数,源操作数A值为0x003FF102,源操作数B的值为0x0000F698。这两个操作数的二进制格式分别见图3中的301和302。此时移位位数控制信号值的值为01010,移位器使能信号有效;
步骤二,移位器A 201对源操作数A执行逻辑左移得到操作数A′,移位器B 202对源操作数B执行逻辑左移得到操作数B′,其二进制值见图3中的303和304。其中,移位位数是01010,由移位位数控制信号指定。从图3中可以看到,有效数据已经从低位移到了高位;
步骤三,通用算术逻辑单元203接收到操作数A′和操作数B′,并对操作数A′和操作数B′执行加法操作,得到结果操作数C′,同时置位进位标志位,操作数C′的二进制值如图3中的305所示。其中,通用算术逻辑单元203没有进行任何修改,也不需要关心中的数据有效位是多少;
步骤四,通用算术逻辑单元203计算后的结果操作数C′,经过移位器C204执行算术右移后得到需要的操作数C=0xE79A,其二进制值见图3的306。0xE79A就是需要的操作结果。
从上面四个步骤可以看出,两个22位的源操作数相加,得到一个22位的结果操作数。在32位的数据通路中,可以执行任何位数的操作数。
本发明公开了处理任意宽度数据的增强型算术逻辑单元2及其处理任意宽度数据的方法,主要解决了通用算术逻辑单元203无法处理任意宽度操作数的问题。该增强型算术逻辑单元2在通用算术逻辑单元部件203的两个输入端口分别增加移位器A 201和移位器B 202、输出端口增加移位器C 204。通过扩展指令译码器101产生移位器需要的控制信号。N位数据宽度的增强型算术逻辑单元2,可处理任意M(0<M<N)位宽度操作数。本发明可以加入任何处理器的数据通路设计中,特别是在需要处理多种数据位宽的处理器,以较小代价实现操作任意数据位宽目的。可用于数字信号处理器、图形图像处理、多媒体增强型处理器设计等领域。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (10)

1、一种用于处理任意宽度数据的算术逻辑单元,包括通用算术逻辑单元,其特征在于,还包括:
第一移位器A,其数据输出端口与所述通用算术逻辑单元的输入端口A相连接,用于根据使能信号、移位位数控制信号对第一源操作数进行预处理,并将预处理结果输出至所述输入端口A;
第二移位器B,其数据输出端口与所述通用算术逻辑单元的输入端口B相连接,用于根据使能信号、移位位数控制信号、移位类型控制信号对第二源操作数进行预处理,并将预处理结果输出至所述输入端口B;
第三移位器C,其数据输入端口与所述通用算术逻辑单元的输出端口C相连接,用于根据使能信号、移位位数控制信号对所述通用算术逻辑单元的输出数据进行后处理;
所述通用算术逻辑单元对所述第一移位器A、所述第二移位器B的预处理结果执行算术逻辑运算。
2、根据权利要求1所述的用于处理任意宽度数据的算术逻辑单元,其特征在于,所述第一移位器A的移位类型包含逻辑左移。
3、根据权利要求1所述的用于处理任意宽度数据的算术逻辑单元,其特征在于,所述第二移位器B包含通用的移位类型。
4、根据权利要求1所述的用于处理任意宽度数据的算术逻辑单元,其特征在于,所述第三移位器C的移位类型包含算术右移。
5、根据权利要求2、3或4所述的用于处理任意宽度数据的算术逻辑单元,其特征在于,所述第一移位器A和所述第三移位器C根据所述使能信号控制是否执行移位操作,所述第二移位器B根据所述使能信号控制是否执行逻辑左移;所述使能信号由预设的控制信号产生。
6、根据权利要求2、3或4所述的用于处理任意宽度数据的算术逻辑单元,其特征在于,所述第一移位器A、所述第二移位器B和所述第三移位器C根据所述移位位数控制信号控制所执行移位操作的移位位数,所述移位位数控制信号由预设的控制信号产生。
7、根据权利要求2、3或4所述的用于处理任意宽度数据的算术逻辑单元,其特征在于,所述第二移位器B根据所述移位类型控制信号控制执行移位操作的类型,所述移位类型控制信号由预设的控制信号产生。
8、一种用于处理任意宽度数据的方法,其特征在于,包括:
步骤一,对指令进行译码,并根据译码结果从数据地址空间取出第一源操作数、第二源操作数,同时产生使能信号、移位位数控制信号和移位类型控制信号;
步骤二,根据所述使能信号、所述移位位数控制信号对所述第一源操作数进行预处理,根据所述使能信号、所述移位位数控制信号、所述移位类型控制信号对所述第二源操作数进行预处理;
步骤三,对预处理后的所述第一源操作数、所述第二源操作数执行算术逻辑运算;
步骤四,根据所述使能信号、所述移位位数控制信号对执行算术逻辑运算后的数据进行后处理,并输出结果。
9、根据权利要求8所述的用于处理任意宽度数据的方法,其特征在于,所述指令的指令编码中包含移位位数域、使能位域。
10、根据权利要求8或9所述的用于处理任意宽度数据的方法,其特征在于,所述步骤二中,进一步包括:
当所述使能信号有效时,根据所述移位位数控制信号对所述第一源操作数、所述第二源操作数分别执行相应的位数逻辑左移操作,得到预处理后的所述第一源操作数、所述第二源操作数;
所述步骤四中,进一步包括:
当所述使能信号有效时,对执行算术逻辑运算后的数据进行算术右移操作,并将结果作为最终结果输出。
CN200910163703A 2008-08-15 2009-08-14 用于处理任意宽度数据的算术逻辑单元及其处理方法 Pending CN101685386A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910163703A CN101685386A (zh) 2008-08-15 2009-08-14 用于处理任意宽度数据的算术逻辑单元及其处理方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200810118509.0 2008-08-15
CN200810118509 2008-08-15
CN200910163703A CN101685386A (zh) 2008-08-15 2009-08-14 用于处理任意宽度数据的算术逻辑单元及其处理方法

Publications (1)

Publication Number Publication Date
CN101685386A true CN101685386A (zh) 2010-03-31

Family

ID=42048557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910163703A Pending CN101685386A (zh) 2008-08-15 2009-08-14 用于处理任意宽度数据的算术逻辑单元及其处理方法

Country Status (1)

Country Link
CN (1) CN101685386A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092571A (zh) * 2013-01-10 2013-05-08 浙江大学 支持多种数据类型的单指令多数据算术单元
CN108733347A (zh) * 2017-04-20 2018-11-02 杭州海康威视数字技术股份有限公司 一种数据处理方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092571A (zh) * 2013-01-10 2013-05-08 浙江大学 支持多种数据类型的单指令多数据算术单元
CN103092571B (zh) * 2013-01-10 2016-06-22 浙江大学 支持多种数据类型的单指令多数据算术单元
CN108733347A (zh) * 2017-04-20 2018-11-02 杭州海康威视数字技术股份有限公司 一种数据处理方法及装置
CN108733347B (zh) * 2017-04-20 2021-01-29 杭州海康威视数字技术股份有限公司 一种数据处理方法及装置

Similar Documents

Publication Publication Date Title
EP3579117B1 (en) Variable format, variable sparsity matrix multiplication instruction
US10514912B2 (en) Vector multiplication with accumulation in large register space
KR101703743B1 (ko) 가속된 레인 간 벡터 감축 명령어들
JP2835103B2 (ja) 命令指定方法及び命令実行方式
US10089075B2 (en) Method and apparatus of instruction that merges and sorts smaller sorted vectors into larger sorted vector
CN105786446B (zh) 支持带三个源操作数的加法指令的处理器及含该指令的介质
CN100447777C (zh) 处理器
EP3567472B1 (en) Systems, methods, and apparatuses utilizing an elastic floating-point number
US20160179523A1 (en) Apparatus and method for vector broadcast and xorand logical instruction
CN104040484A (zh) 浮点缩放处理器、方法、***和指令
US9965276B2 (en) Vector operations with operand base system conversion and re-conversion
CN104126168A (zh) 打包数据重新安排控制索引前体生成处理器、方法、***及指令
US20230409732A1 (en) Instruction execution that broadcasts and masks data values at different levels of granularity
CN105247472A (zh) 用于对统一码字符的可变长度代码点转码的处理器、方法、***和指令
CN106575217A (zh) 位置乱处理器、方法、***和指令
CN104137055A (zh) 点积处理器、方法、***和指令
CN104011665A (zh) 超级乘加(超级madd)指令
CN104126170A (zh) 打包数据操作掩码寄存器算术组合处理器、方法、***及指令
CN107851016B (zh) 向量算术指令
TW201346742A (zh) 具有不同讀取及寫入遮罩之多元件指令
US20030037085A1 (en) Field processing unit
CN101685386A (zh) 用于处理任意宽度数据的算术逻辑单元及其处理方法
EP2255279B1 (en) Polynomial data processing operation
CN1598757A (zh) 一种支持单指令多操作数的混合乘法器的设计方法
RU2681702C1 (ru) Арифметико-логическое устройство и способ преобразования данных с использованием такого устройства

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20100331