CN101986264B - 用于simd向量微处理器的多功能浮点乘加运算装置 - Google Patents
用于simd向量微处理器的多功能浮点乘加运算装置 Download PDFInfo
- Publication number
- CN101986264B CN101986264B CN 201010559300 CN201010559300A CN101986264B CN 101986264 B CN101986264 B CN 101986264B CN 201010559300 CN201010559300 CN 201010559300 CN 201010559300 A CN201010559300 A CN 201010559300A CN 101986264 B CN101986264 B CN 101986264B
- Authority
- CN
- China
- Prior art keywords
- unit
- operand
- floating
- point
- mantissa
- 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
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本发明公开了一种用于SIMD向量微处理器的多功能浮点乘加运算装置,它包括挂载于向量处理阵列(5)的每个向量处理单元(51)中的操作数准备单元(1)和浮点快速融合乘加单元(2),操作数准备单元(1)将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元(2),浮点快速融合乘加单元(2)用于对所述操作数进行浮点乘加运算获取运算结果并将运算结果写回所述操作数准备单元(1)。本发明支持高效浮点矩阵运算和快速浮点求除法求倒数运算,具有浮点运算性能好、开销小、功能多、编码少、速度快的优点。
Description
技术领域
本发明涉及微处理器领域,特别涉及一种用于SIMD向量微处理器的多功能浮点乘加运算装置。
背景技术
图像处理、雷达信号处理和现代通信等应用领域,需要超高性能的信号处理器对大量数据进行处理,对数据计算的精度和实时性要求高。由于算法具有高的浮点计算密集性,涉及大量的浮点矩阵运算及浮点乘加/减或卷积运算,处理器的浮点数据处理能力显得越发重要。针对上述的应用特点,已有研究中提出了各种浮点乘加运算部件的运行机制和硬件实现结构,使其支持浮点乘加运算。如美国专利US0,101,242 A1多功能乘加浮点单元MULTIPURPOSE MULTIPLY-ADD FUNCTION UNIT保护了一个用于图形处理器中可配置多功能浮点乘加运算单元,提供对双精度算术算法的直接支持;再如北京龙芯中科技术服务中心有限公司,针对浮点乘加运算,申请的关于单双精度的兼容处理装置和方法,向量浮点乘加运算装置和方法,从各角度提升浮点处理能力。
现有技术普遍存在的缺点是:第一,硬件复用率低,功能单一,利用浮点融合乘加结构,仅实现了浮点的乘/加/乘加运算功能;第二,利用浮点乘加运算装置的现有的结构和运算特点,实现求除法和求倒数运算,往往采用传统的不恢复除法SRT算法,或查表再配合软件编程迭代,收敛速度慢周期长,占用较多硬件资源;第三,不能支持现代数字信号处理算法中大规模的快速的矩阵运算,或矩阵运算的处理能力不足,编程代码量大。
综上所述,尽量复用传统浮点乘加装置,提供一种可快速支持除法和倒数运算,且支持现代信号处理中强大矩阵运算能力的浮点乘加运算装置,是本发明需要解决的问题。
发明内容
本发明针对上述现有技术的缺点,提供一种支持高效浮点矩阵运算和快速浮点求除法求倒数运算,浮点运算性能好、开销小、功能多、编码少、速度快的用于SIMD向量微处理器的多功能浮点乘加运算装置。
为了解决上述技术问题,本发明采用的技术方案为:
一种用于SIMD向量微处理器的多功能浮点乘加运算装置,它包括挂载于向量处理阵列的每个向量处理单元中的操作数准备单元和浮点快速融合乘加单元,所述操作数准备单元将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元,所述浮点快速融合乘加单元用于对所述操作数进行浮点乘加运算获取运算结果并将运算结果写回所述操作数准备单元。
作为本发明上述技术方案的进一步改进:
所述操作数准备单元包括操作数选择逻辑单元和分别与操作数选择逻辑单元相连的局部寄存器、全局矩阵寄存器、累加器,所述局部寄存器用于存放操作数或者写回的运算结果,可被本向量处理单元访问;所述全局矩阵寄存器用于存放操作数或者写回的运算结果,支持行列访问,可被全局向量处理单元访问;所述累加器用于存放操作数或者写回的运算结果;所述操作数选择逻辑单元的数量与向量处理阵列中向量处理单元的数量相同,所述操作数选择逻辑单元获取指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元。
所述操作数选择逻辑单元包括数据选择单元和分别与数据选择单元相连的操作数例外判断单元、倒数近似值查找表、循环缓冲单元、数据分离单元,所述操作数例外判断单元分别与局部寄存器、全局矩阵寄存器、累加器相连并对输入的操作数进行例外判断,所述倒数近似值查找表用于为浮点除法运算的尾数输出倒数近似值,所述循环缓冲单元用于存储除法或者求倒数运算过程的每次迭代后的中间结果,所述数据选择单元与一个用于维护除法状态的状态机相连,所述数据选择单元根据执行运算类型选择进入数据分离单元的操作数,所述数据分离单元将操作数分离为尾数位、指数位和符号位输出至浮点快速融合乘加单元。
所述浮点快速融合乘加单元包括符号处理模块、指数处理模块、尾数处理模块和写回模块,所述符号处理模块、指数处理模块、尾数处理模块分别与写回模块相连,所述写回模块将运算结果或者中间运算结果写回所述局部寄存器或者累加器。
本发明具有下述优点:
本发明用于SIMD向量微处理器的多功能浮点乘加运算装置包括挂载于向量处理阵列的每个向量处理单元中的操作数准备单元和浮点快速融合乘加单元,因此可以作为向量处理单元的一个功能部件,因此可以在可进行传统的浮点乘法、加法、乘加运算的基础上可以实现浮点矩阵运算,具有浮点运算功能丰富、硬件复用率高、硬件开销小的优点。
操作数准备单元包括操作数选择逻辑单元和分别与操作数选择逻辑单元相连的局部寄存器、全局矩阵寄存器、累加器,因此通过局部寄存器、支持全局行列访问的全局矩阵寄存器、累加器,可以实现支持大规模的快速矩阵运算,矩阵运算能力强大,矩阵运算性能好,而且不需要可以进行操作数的调度和选择,从而编程代码量小;
操作数选择逻辑单元包括数据选择单元和分别与数据选择单元相连的操作数例外判断单元、倒数近似值查找表、循环缓冲单元、数据分离单元,本发明实施例结合其硬件结构采用快速算法,周期短速度快,可以实现快速的求倒数和浮点除法运算,占用资源小、运算周期短、运算速度快;
浮点快速融合乘加单元包括符号处理模块、指数处理模块、尾数处理模块和写回模块,调度流水线更加合理,并且可以通过硬件实现并行执行、合并执行,浮点运算效率高。
附图说明
图1为本发明实施例的主体框架结构示意图;
图2为本发明实施例的结构示意图;
图3为具有本发明实施例的SIMD向量微处理器的局部结构示意图;
图4为本发明实施例进行浮点除法运算的流程示意图;
图5为本发明实施例进行浮点矩阵运算的执行示意图。
图例说明:1、操作数准备单元;11、局部寄存器;12、全局矩阵寄存器;13、累加器;14、操作数选择逻辑单元;141、操作数例外判断单元;142、倒数近似值查找表;143、循环缓冲单元;144、数据选择单元;145、数据分离单元;146、状态机;2、浮点快速融合乘加单元;21、符号处理模块;22、指数处理模块;23、尾数处理模块;24、写回模块;3、指令控制器;4、标量处理单元;5、向量处理阵列;51、向量处理单元;6、数据混洗网络;7、规约网络;8、多功能浮点乘加运算装置。
具体实施方式
如图1所示,本发明实施例的用于SIMD向量微处理器的多功能浮点乘加运算装置包括挂载于向量处理阵列5的每个向量处理单元51中的操作数准备单元1和浮点快速融合乘加单元2,操作数准备单元1将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元2,浮点快速融合乘加单元2用于对操作数进行浮点乘加运算获取运算结果并将运算结果写回操作数准备单元1。
操作数准备单元1包括操作数选择逻辑单元14和分别与操作数选择逻辑单元14相连的局部寄存器11、全局矩阵寄存器12、累加器13,局部寄存器11用于存放操作数或者写回的运算结果,可被本向量处理单元51访问;全局矩阵寄存器12用于存放操作数或者写回的运算结果,支持行列访问,可被全局向量处理单元51访问;累加器13用于存放操作数或者写回的运算结果;操作数选择逻辑单元14的数量与向量处理阵列5中向量处理单元51的数量相同,操作数选择逻辑单元14将处理得到指数、尾数和符号位分离的操作数输出至浮点快速融合乘加单元2。本实施例中,局部寄存器11只能被多功能浮点乘加运算装置8所属的向量处理单元51访问,而全局矩阵寄存器12具有全局性,可以被整个向量处理阵列5的n个向量处理单元51进行访问,且支持行列访问,访问位宽最大为n*B,其中n表示向量宽度,B表示处理器字长。
如图2所示,操作数选择逻辑单元14包括数据选择单元144和分别与数据选择单元144相连的操作数例外判断单元141、倒数近似值查找表142、循环缓冲单元143、数据分离单元145,操作数例外判断单元141分别与局部寄存器11、全局矩阵寄存器12、累加器13相连并对输入的操作数进行例外判断,倒数近似值查找表142用于为浮点除法运算的尾数输出倒数近似值,循环缓冲单元143用于存储除法或者求倒数运算过程的每次迭代后的中间结果,数据选择单元144与一个用于维护除法状态的状态机146相连,数据选择单元144根据执行运算类型选择进入数据分离单元145的操作数,数据分离单元145获取尾数位、指数位和符号位并输出至浮点快速融合乘加单元2。本实施例中,倒数近似值查找表142的大小为27×7 bit。最终进入浮点快速融合乘加单元2的操作数来源有三个:一是由操作数例外判断单元141对局部寄存器11、全局矩阵寄存器12、累加器13进行例外判断后的操作数;二是由操作数和倒数近似值查找表142进行查找后得到的精度为7位的中间结果;三是进行迭代运算过程中的写回结果。数据选择单元144保护两个数据选择器,数据选择单元144根据执行正常乘法、乘加操作,还是进行以乘代除的迭代运算,选择最终操作数。数据分离单元145则将操作数分离成为尾数位Ma、Mb、Mc,指数位Ea、Eb、Ec,符号位Sa、Sb、Sc。本实施例尽量复用了浮点快速融合乘加单元的硬件,使得在开销增加很少的前提下,能够实现单双精度浮点数除法、倒数运算,并大大提高浮点矩阵运算处理能力,与仅进行浮点乘加运算的结构相比,只增加了操作数准备单元中的部分逻辑,主要包括全局矩阵寄存器文件、维护除法操作的状态机、查找表,用于存放中间结果的循环缓冲单元。
如图2所示,浮点快速融合乘加单元2包括符号处理模块21、指数处理模块22、尾数处理模块23和写回模块24,符号处理模块21、指数处理模块22、尾数处理模块23分别与写回模块24相连,写回模块24将运算结果或者中间运算结果写回局部寄存器11或者累加器13。本实施例在实际工作过程中,写回模块24将乘加单元运算的结果,作为除法或倒数运算的中间结果送到循环缓冲单元143,或者作为乘加运算,矩阵运算的最终结果写回局部寄存器11或者累加器13。
如图3所示,具有本发明实施例的SIMD向量微处理器包括指令控制器3、标量处理单元4、向量处理阵列5,标量处理单元4则主要面向串行应用的处理,向量处理阵列5包括n个向量处理单元(VPE)51,n代表处理其的向量宽度,通常为2的幂,向量处理阵列5可面向计算密集型应用,配置为多组不同的SIMD宽度。标量处理单元4、向量处理阵列5之间的数据交互可通过数据混洗网络6和规约网络7及数据存储体实现。指令控制器3完成指令的派发后,标量处理单元4、向量处理阵列5分别对各自的指令进行译码,读取相应的操作数进行运算,并将运算的结果写入译码指定的目标存储中。每个向量处理单元51内部集成多个向量功能部件,使得基于超长指令字的指令集并行开发与基于向量的数据并行性开发同时进行,本发明实施例的多功能浮点乘加运算装置8则作为向量处理单元51内部的一个向量功能部件,因此整个SIMD向量微处理器共含有n个操作数准备单元1和n个浮点快速融合乘加单元2,每一个多功能浮点乘加运算装置8的操作数准备单元1又包括n个操作数选择逻辑单元14。多功能浮点乘加运算装置8主要实现的功能有:单/双精度浮点向量的乘和乘加/减运算、除法运算、求倒数运算、快速浮点矩阵运算。
如图4所示,以源操作数A和B(被除数A和除数B,A和B均可为矩阵或向量)进行浮点除法运算为例,本发明在进行浮点除法运算包括如下步骤:
1、将被除数A按行对应存放在局部寄存器11中,将除数B存放到全局矩阵寄存器12中,并假设操作数0A和操作数0B为除法运算中的一对操作数。
2、0A和0B操作数,经过操作数例外判断单元141进行例外判断和数据分离单元145进行符号指数尾数分离后,根据0B的尾数和倒数近似值查找表142进行倒数近似值的查找,获取精度为7位的倒数近似值。
3、由控制除法执行状态的状态机146结合数据选择单元144通过指令译码获取的操作码,选择当前进入浮点快速乘加融合单元2的操作数,并记录迭代次数。
4、将运算结果写回循环缓冲单元143,进入下一次迭代,重复步骤3,或者写回局部寄存器11中的目的寄存器。
上述步骤中,由求倒数查找表可得到精度为7位的倒数近似值。由IEEE-754标准可知,单精度浮点的最终结果要求尾数满足23位精度,双精度浮点要求满足52位精度。因此查表得到的7位倒数近似值L,需进行迭代以满足精度要求。本发明采用的迭代方法是Goldschmidt算法,其初始函数如下:
D
1
=L×b
N
1
=a×L
迭代函数为:
R
i-1
=2-D
i-1
D
i
=D
i-1
× R
i-1
= 1- (1-Lb)
2i
N
i
= N
i-1
× R
i-1
上述公式中,L是指由查找表查表得到的7位倒数近似值,a和b分别是由被除数0A和除数0B的尾数。每次迭代过程需要进行两次并行的乘法操作,和一次求补操作,这些操作数据不相关,可全流水计算,由浮点快速融合乘加单元2完成。每迭代一次精度增加一倍,因此精度随着迭代次数的增加呈14、28、56增长。满足单精度需进行两次迭代,满足双精度需进行三次迭代运算。
本发明在进行浮点求倒数运算包括如下步骤:
1、实施m个浮点数a1 ,a2 …am,除以m个浮点数b1 ,b2 …bm,或求m个b1 ,b2 …bm的倒数,其中m<=n。获取除数的尾数,通过n个操作数准备单元1中的倒数近似值查找表142,获得m个除数倒数的7位精度估计值。经过维护除法的状态机146和操作数选择判别后,将该值对应输送到m个浮点快速融合乘加单元2。
2、在n个浮点快速融合乘加单元2中,进行乘加或乘法操作,完成一次迭代,并将运算结果写回操作数准备单元1,作为中间运算结果存储在局部寄存器11中。迭代算法采用Goldschmidth快速除法算法,以乘代除,以二次速度逼近最终满足精度的结果,迭代一次后,精度达到14位,迭代两次精度达到28位,迭代三次后精度达到56位。
3、每完成一次迭代,结果写回操作数准备单元1,都通过维护除法操作的状态机141来提供控制信号,从而支持除法的迭代运算。操作数来源可为:局部寄存器11读出的操作数、倒数近似值查找表142中获取的数据、迭代运算中浮点快速融合乘加单元2产生的写回结果。根据操作类型译码信号和状态机141来控制操作数选择。
如图5所示,以实施矩阵A乘矩阵B加矩阵C为例,本发明在进行浮点矩阵运算时,首先,将矩阵A和矩阵C中的元素,按行分别加载到n个操作数准备单元1的局部寄存器11和向量累加器13中,将矩阵B中的元素加载到全局矩阵寄存器12中,经过操作数选择逻辑单元14判别后,对应输送到n个浮点快速融合乘加单元2;然后,将操作数准备单元1发送来的操作数,在n个浮点快速融合乘加单元2中,进行乘加或乘法操作,并将运算结果写回操作数准备单元1,做为最终写回结果,存放在存储矩阵C元素的局部寄存器11中。多功能浮点乘加运算装置8位于各个向量处理单元51内,当进行浮点矩阵乘加操作时,将矩阵A存入局部寄存器11,加载方式为在向量寄存器11的相同编码的寄存器中存放A矩阵的一行元素,将矩阵B按列存入全局矩阵寄存器12,全局矩阵寄存器12支持行列访问,将矩阵C存入向量累加器13,加载方式和A类似,共同作为操作数的三个来源,进入各个向量处理单元51并行做浮点乘法,产生的结果由规约网络7进行叠加。因此,同一周期内可完成矩阵A和矩阵B的一行一列的乘加运算,计算最终矩阵乘累加结果的一行,需4个周期,整个矩阵乘加运算结果在16周期内产生,从而可以快速实现浮点矩阵乘加。类似于浮点矩阵乘加,本发明的操作数准备模块中提供的供数方式,同样适用于矩阵加/减法/乘/除法等其他算数逻辑运算。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。
Claims (2)
1. 一种用于SIMD向量微处理器的多功能浮点乘加运算装置,其特征在于:它包括挂载于向量处理阵列(5)的每个向量处理单元(51)中的操作数准备单元(1)和浮点快速融合乘加单元(2),所述操作数准备单元(1)将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元(2),所述浮点快速融合乘加单元(2)用于对所述操作数进行浮点乘加运算获取运算结果并将运算结果写回所述操作数准备单元(1);
所述操作数准备单元(1)包括操作数选择逻辑单元(14)和分别与操作数选择逻辑单元(14)相连的局部寄存器(11)、全局矩阵寄存器(12)、累加器(13),所述局部寄存器(11)用于存放操作数或者写回的运算结果,可被本向量处理单元(51)访问;所述全局矩阵寄存器(12)用于存放操作数或者写回的运算结果,支持行列访问,可被全局向量处理单元(51)访问;所述累加器(13)用于存放操作数或者写回的运算结果;所述操作数选择逻辑单元(14)的数量与向量处理阵列(5)中向量处理单元(51)的数量相同,所述操作数选择逻辑单元(14)获取指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元(2);
所述操作数选择逻辑单元(14)包括数据选择单元(144)和分别与数据选择单元(144)相连的操作数例外判断单元(141)、倒数近似值查找表(142)、循环缓冲单元(143)、数据分离单元(145),所述操作数例外判断单元(141)分别与局部寄存器(11)、全局矩阵寄存器(12)、累加器(13)相连并对输入的操作数进行例外判断,所述倒数近似值查找表(142)用于为浮点除法运算的尾数输出倒数近似值,所述循环缓冲单元(143)用于存储除法或者求倒数运算过程的每次迭代后的中间结果,所述数据选择单元(144)与一个用于维护除法状态的状态机(146)相连,所述数据选择单元(144)根据执行运算类型选择进入数据分离单元(145)的操作数,所述数据分离单元(145)将操作数分离为尾数位、指数位和符号位并输出至浮点快速融合乘加单元(2)。
2. 根据权利要求1所述的用于SIMD向量微处理器的多功能浮点乘加运算装置,其特征在于:所述浮点快速融合乘加单元(2)包括符号处理模块(21)、指数处理模块(22)、尾数处理模块(23)和写回模块(24),所述符号处理模块(21)、指数处理模块(22)、尾数处理模块(23)分别与写回模块(24)相连,所述写回模块(24)将运算结果或者中间运算结果写回所述局部寄存器(11)或者累加器(13)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010559300 CN101986264B (zh) | 2010-11-25 | 2010-11-25 | 用于simd向量微处理器的多功能浮点乘加运算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010559300 CN101986264B (zh) | 2010-11-25 | 2010-11-25 | 用于simd向量微处理器的多功能浮点乘加运算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101986264A CN101986264A (zh) | 2011-03-16 |
CN101986264B true CN101986264B (zh) | 2013-07-31 |
Family
ID=43710613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010559300 Active CN101986264B (zh) | 2010-11-25 | 2010-11-25 | 用于simd向量微处理器的多功能浮点乘加运算装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101986264B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615404A (zh) * | 2015-02-15 | 2015-05-13 | 浪潮电子信息产业股份有限公司 | 一种基于查表操作的高速浮点除法部件装置 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156637A (zh) * | 2011-05-04 | 2011-08-17 | 中国人民解放军国防科学技术大学 | 向量交叉多线程处理方法及向量交叉多线程微处理器 |
CN102446160B (zh) * | 2011-09-06 | 2015-02-18 | 中国人民解放军国防科学技术大学 | 面向双精度simd部件的矩阵乘实现方法 |
EP2674855B1 (en) * | 2012-06-14 | 2016-11-23 | Telefonaktiebolaget LM Ericsson (publ) | An element selection unit and a method therein |
CN103984521B (zh) * | 2014-05-27 | 2017-07-18 | 中国人民解放军国防科学技术大学 | Gpdsp中simd结构浮点除法的实现方法及装置 |
CN104111816B (zh) * | 2014-06-25 | 2017-04-12 | 中国人民解放军国防科学技术大学 | Gpdsp中多功能simd结构浮点融合乘加运算装置 |
CN106126189B (zh) * | 2014-07-02 | 2019-02-15 | 上海兆芯集成电路有限公司 | 微处理器中的方法 |
CN105373367B (zh) * | 2015-10-29 | 2018-03-02 | 中国人民解放军国防科学技术大学 | 支持标向量协同工作的向量simd运算结构 |
CN105335127A (zh) * | 2015-10-29 | 2016-02-17 | 中国人民解放军国防科学技术大学 | Gpdsp中支持浮点除法的标量运算单元结构 |
US10275243B2 (en) | 2016-07-02 | 2019-04-30 | Intel Corporation | Interruptible and restartable matrix multiplication instructions, processors, methods, and systems |
GB2553783B (en) * | 2016-09-13 | 2020-11-04 | Advanced Risc Mach Ltd | Vector multiply-add instruction |
CN109376113B (zh) * | 2016-11-03 | 2021-12-14 | 中科寒武纪科技股份有限公司 | Slam运算装置和方法 |
US10474458B2 (en) * | 2017-04-28 | 2019-11-12 | Intel Corporation | Instructions and logic to perform floating-point and integer operations for machine learning |
CN107291419B (zh) * | 2017-05-05 | 2020-07-31 | 中国科学院计算技术研究所 | 用于神经网络处理器的浮点乘法器及浮点数乘法 |
CN109426738B (zh) * | 2017-08-23 | 2021-11-12 | 中芯国际集成电路制造(上海)有限公司 | 一种硬件加密器及加密方法、电子装置 |
CN108595149B (zh) * | 2018-04-28 | 2021-05-04 | 天津芯海创科技有限公司 | 可重构乘加运算装置 |
US11556615B2 (en) * | 2019-05-03 | 2023-01-17 | Tesla, Inc. | Data path for scalable matrix node engine with mixed data formats |
CN112579042B (zh) * | 2019-09-29 | 2024-04-19 | 广州希姆半导体科技有限公司 | 计算装置及方法、芯片、电子设备及计算机可读存储介质 |
CN111061513B (zh) * | 2019-12-20 | 2022-02-01 | 支付宝(杭州)信息技术有限公司 | 加速计算设备建模的方法、电子设备及可读存储介质 |
CN111027018B (zh) * | 2019-12-20 | 2023-03-31 | 支付宝(杭州)信息技术有限公司 | 加速计算设备建模的方法、装置、计算设备及介质 |
CN116090513A (zh) * | 2021-11-03 | 2023-05-09 | 深圳市中兴微电子技术有限公司 | 矩阵乘法的运算方法及装置 |
CN113722669B (zh) * | 2021-11-03 | 2022-01-21 | 海光信息技术股份有限公司 | 数据处理方法、装置、设备及存储介质 |
CN114518861B (zh) * | 2021-12-30 | 2024-10-01 | 中国人民解放军国防科技大学 | 兼容simd计算和浮点矩阵乘法的运算部件及其应用方法 |
CN117251132B (zh) * | 2023-09-19 | 2024-05-14 | 上海合芯数字科技有限公司 | 定浮点simd乘加指令融合处理装置、方法及处理器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6493817B1 (en) * | 1999-05-21 | 2002-12-10 | Hewlett-Packard Company | Floating-point unit which utilizes standard MAC units for performing SIMD operations |
CN101174200A (zh) * | 2007-05-18 | 2008-05-07 | 清华大学 | 一种浮点乘加融合单元的五级流水线结构 |
-
2010
- 2010-11-25 CN CN 201010559300 patent/CN101986264B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6493817B1 (en) * | 1999-05-21 | 2002-12-10 | Hewlett-Packard Company | Floating-point unit which utilizes standard MAC units for performing SIMD operations |
CN101174200A (zh) * | 2007-05-18 | 2008-05-07 | 清华大学 | 一种浮点乘加融合单元的五级流水线结构 |
Non-Patent Citations (2)
Title |
---|
基于FPGA的ABC95阵列机PE芯片的设计;季振洲 等;《高技术通讯》;20000630(第6期);第59-61页 * |
季振洲 等.基于FPGA的ABC95阵列机PE芯片的设计.《高技术通讯》.2000,(第6期),59-61. |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615404A (zh) * | 2015-02-15 | 2015-05-13 | 浪潮电子信息产业股份有限公司 | 一种基于查表操作的高速浮点除法部件装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101986264A (zh) | 2011-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101986264B (zh) | 用于simd向量微处理器的多功能浮点乘加运算装置 | |
CN106126189B (zh) | 微处理器中的方法 | |
CN101826142B (zh) | 一种可重构椭圆曲线密码处理器 | |
CN103988171B (zh) | 在数据处理系统中用于执行浮点算术运算的方法和装置 | |
CN103793203B (zh) | 响应于输入数据值降低fma单元中的功率消耗 | |
CN110321525A (zh) | 用于稀疏-密集矩阵乘法的加速器 | |
CN106951211B (zh) | 一种可重构定浮点通用乘法器 | |
JP4232838B2 (ja) | 再構成可能なsimd型プロセッサ | |
CN102495719A (zh) | 一种向量浮点运算装置及方法 | |
CN110321159A (zh) | 用于实现链式区块操作的系统和方法 | |
CN103646009A (zh) | 对载明并行和依赖运算的指令矩阵进行处理的装置和方法 | |
CN104126170B (zh) | 打包数据操作掩码寄存器算术组合处理器、方法、系统及指令 | |
CN102184092A (zh) | 基于流水线结构的专用指令集处理器 | |
CN104461449A (zh) | 基于向量指令的大整数乘法实现方法及装置 | |
CN108351786A (zh) | 在指令集架构中对数据进行排序并且合并经排序数据 | |
CN105335331A (zh) | 一种基于大规模粗粒度可重构处理器的sha256实现方法及系统 | |
US20110173421A1 (en) | Multi-input and binary reproducible, high bandwidth floating point adder in a collective network | |
Sun et al. | An I/O bandwidth-sensitive sparse matrix-vector multiplication engine on FPGAs | |
Yang et al. | Molecular dynamics range-limited force evaluation optimized for FPGAs | |
CN110321165A (zh) | 复数向量融合乘加和复数向量乘法的高效实现 | |
CN103677735B (zh) | 一种数据处理装置及数字信号处理器 | |
CN101042641B (zh) | 一种具有动态提交流水线功能的数字信号处理器 | |
Nakasato et al. | GRAPE-MPs: Implementation of an SIMD for quadruple/hexuple/octuple-precision arithmetic operation on a structured ASIC and an FPGA | |
US11755240B1 (en) | Concurrent multi-bit subtraction in associative memory | |
RU2681365C1 (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |