当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于执行实部的乘法与加法-减法的装置和方法制造方法及图纸

技术编号:20796627 阅读:43 留言:0更新日期:2019-04-06 10:16
示例方法包括:将第一源寄存器中的紧缩N位实数据元素与第二源寄存器中的紧缩M位实数据元素相乘;将第一源寄存器中的紧缩N位虚数据元素与第二源寄存器中的紧缩M位虚数据元素相乘,以生成至少四个实乘积;从第二实乘积减去第一实乘积、从第四实乘积减去第三实乘积,以分别生成第一和第二临时结果;将第一临时结果加到第一紧缩N位数据元素、从第一紧缩N位数据元素减去第一临时结果、将第二临时结果加到第二紧缩N位数据元素、从第二紧缩N位数据元素减去第二临时结果,以分别生成第一至第四预缩放的结果;对第一至第四预缩放的结果进行缩放以分别生成第一至第四最终结果;将第一至第四最终结果存储在所指定的数据元素位置中。

Devices and methods for performing multiplication and addition-subtraction of real parts

Examples include: multiplying the compact N-bit real data elements in the first source register with the compact M-bit real data elements in the second source register; multiplying the compact N-bit virtual data elements in the first source register with the compact M-bit virtual data elements in the second source register to generate at least four real products; subtracting the first real product from the second real product and subtracting the fourth real product from the fourth real product. Third real product is used to generate the first and second temporary results, the first temporary result is added to the first compact N-bit data element, the first temporary result is subtracted from the first compact N-bit data element, the second temporary result is added to the second compact N-bit data element, and the second temporary result is subtracted from the second compact N-bit data element to generate the first and fourth pre-scaled results respectively. The first to fourth pre-scaled results are scaled to generate the first to fourth final results, respectively; the first to fourth final results are stored in the designated data element location.

【技术实现步骤摘要】
用于执行实部的乘法与加法-减法的装置和方法
技术介绍

本专利技术的实施例总体上涉及计算机处理器的领域。更具体地,实施例涉及用于执行实部的乘法与加法和/或减法(潜在地,伴随缩放、舍入和饱和)的装置和方法。相关技术描述指令集或指令集架构(ISA)是计算机架构中涉及编程的部分,包括原生数据类型、指令、寄存器架构、寻址模式、存储器架构、中断和异常处置、以及外部输入和输出(I/O)。应当注意,术语“指令”在本文中一般是指宏指令——即,提供给处理器以供执行的指令——而不是微指令或微操作——即,该微指令或微操是处理器的解码器对宏指令进行解码的结果。微指令或微操作可以被配置成用于指示处理器上的执行单元执行操作以实现与宏指令相关联的逻辑。ISA与微架构不同,微架构是用于实现指令集的处理器设计技术的集合。具有不同微架构的处理器可以共享公共指令集。例如,奔腾4(Pentium4)处理器、酷睿TM(CoreTM)处理器、以及来自加利福尼亚州桑尼威尔(Sunnyvale)的超微半导体有限公司(AdvancedMicroDevices,Inc.)的多个处理器实现几乎相同版本的x86指令集(具有已随更新的版本加本文档来自技高网...

【技术保护点】
1.一种处理器,包括:解码器,用于对第一指令解码以生成经解码的指令;第一源寄存器,用于存储第一多个紧缩N位实数据元素和紧缩N位虚数据元素;第二源寄存器,用于存储第二多个紧缩M位实数据元素和紧缩M位虚数据元素;第三源寄存器,用于存储第三多个紧缩N位实数据元素和紧缩N位虚数据元素;执行电路,用于执行经解码的指令,所述执行电路包括:乘法器电路,用于将所述第一源寄存器中的紧缩N位实数据元素与所述第二源寄存器中的紧缩M位实数据元素相乘,并且用于将所述第一源寄存器中的紧缩N位虚数据元素与所述第二源寄存器中的紧缩M位虚数据元素相乘,以生成至少四个实乘积,加法器电路,用于从第二所选择的实乘积减去第一所选择的实...

【技术特征摘要】
2017.09.29 US 15/721,1451.一种处理器,包括:解码器,用于对第一指令解码以生成经解码的指令;第一源寄存器,用于存储第一多个紧缩N位实数据元素和紧缩N位虚数据元素;第二源寄存器,用于存储第二多个紧缩M位实数据元素和紧缩M位虚数据元素;第三源寄存器,用于存储第三多个紧缩N位实数据元素和紧缩N位虚数据元素;执行电路,用于执行经解码的指令,所述执行电路包括:乘法器电路,用于将所述第一源寄存器中的紧缩N位实数据元素与所述第二源寄存器中的紧缩M位实数据元素相乘,并且用于将所述第一源寄存器中的紧缩N位虚数据元素与所述第二源寄存器中的紧缩M位虚数据元素相乘,以生成至少四个实乘积,加法器电路,用于从第二所选择的实乘积减去第一所选择的实乘积以生成第一临时结果,并且用于从第四所选择的实乘积减去第三所选择的实乘积以生成第二临时结果,所述加法器电路用于将所述第一临时结果加到来自所述第三源寄存器的第一紧缩N位数据元素以生成第一预缩放的结果,用于从所述第一紧缩N位数据元素减去所述第一临时结果以生成第二预缩放的结果,用于将所述第二临时结果加到来自所述第三源寄存器的第二紧缩N位数据元素以生成第三预缩放的结果,并且用于从所述第二紧缩N位数据元素减去所述第二临时结果以生成第四预缩放的结果;缩放电路,用于将第一、第二、第三和第四预缩放的结果缩放到所指定的位宽,以生成第一、第二、第三和第四最终结果;以及目的地寄存器,用于将所述第一、第二、第三和第四最终结果存储在所指定的数据元素位置中。2.如权利要求1所述的处理器,其中,缩放操作根据所述指令的立即数中的位值来执行。3.权利要求2所述的处理器,其中,立即数位值包括用于指示不移位的第一值、用于指示1位移位的第二值、以及用于指示2位移位的第三值。4.如权利要求1或3所述的处理器,其中,N=32并且M=16,并且其中,第一、第二和第三源寄存器包括128位的紧缩数据寄存器。5.如权利要求1或4所述的处理器,其中,存储在第一和第三源寄存器中的实值和虚值包括用于N×M快速傅立叶变换FFT的输入函数,并且其中,所述第二源寄存器包括用于FFT的旋转因子的实值和复值。6.如权利要求1或5所述的处理器,其中,所述加法器电路用于将第一、第二、第三和第四实乘积或者第一和第二临时结果符号扩展到所指定的位宽。7.如权利要求6所述的处理器,其中,所述加法器电路用于进一步对来自所述第三源寄存器的第一、第二、第三和第四N位数据元素进行符号扩展。8.如权利要求1或7所述的处理器,进一步包括:舍入和/或饱和电路,用于对预缩放的结果和/或第一、第二、第三和第四最终结果执行舍入和/或饱和。9.一种处理器,包括:解码器,用于对第一指令解码以生成经解码的指令;第一源寄存器,用于存储第一多个紧缩N位实数据元素和紧缩N位虚数据元素;第二源寄存器,用于存储第二多个紧缩M位实数据元素和紧缩M位虚数据元素;第三源寄存器,用于存储第三多个紧缩N位实数据元素和紧缩N位虚数据元素;执行电路,用于执行经解码的指令,所述执行电路包括:乘法器电路,用于将所述第一源寄存器中的紧缩N位实数据元素与所述第二源寄存器中的紧缩M位虚数据元素相乘,并且用于将所述第一源寄存器中的紧缩N位虚数据元素与所述第二源寄存器中的紧缩M位实数据元素相乘,以生成至少四个虚乘积,加法器电路,用于将第一所选择的虚乘积与第二所选择的虚乘积相加以生成第一临时结果,并且用于将第三所选择的虚乘积与第四所选择的虚乘积相加以生成第二临时结果,所述加法器电路用于将所述第一临时结果加到来自所述第三源寄存器的第一紧缩N位数据元素以生成第一预缩放的结果,用于从所述第一紧缩N位数据元素减去所述第一临时结果以生成第二预缩放的结果,用于将所述第二临时结果加到来自所述第三源寄存器的第二紧缩N位数据元素以生成第三预缩放的结果,并且用于从所述第二紧缩N位数据元素减去所述第二临时结果以生成第四预缩放的结果;缩放电路,用于将第一、第二、第三和第四预缩放的结果缩放到所指定的位宽,以生成第一、第二、第三和第四最终结果;以及目的地寄存器,用于将所述第一、第二、第三和第四最终结果存储在所指定的数据元素位置中。10.如权利要求9所述的处理器,其中,缩放操作根据所述指令的立即数中的位值来执行。11.权利要求10所述的处理器,其中,立即数位值包括用于指示不移位的第一值、用于指示1位移位的第二值、以及用于指示2位移位的第三值。12.如权利要求9或11所述的处理器,其中,N=32并且M=16,并且其中,第一、第二和第三源寄存器包括128位的紧缩数据寄存器。13.如权利要求9或12所述的处理器,其中,存储在第一和第三源寄存器中的实值和虚值包括用于N×M快速傅立叶变换FFT的输入函数,并且其中,所述第二源寄存器包括用于FFT的旋转因子的实值和复值。14.如权利要求9或13所述的处理器,其中,所述加法器电路用于将第一、第二、第三和第四实乘积或者第一和第二临时结果符号扩展到所指定的位宽。15.如权利要求14所述的处理器,其中,所述加法器电路用于进一步对来自所述第三源寄存器的第一、第二、第三和第四N位数据元素进行符号扩展。16.如权利要求9或15所述的处理器,进一步包括:舍入和/或饱和电路,用于对预缩放的结果和/或第一、第二、第三和第四最终结果执行舍入和/或饱和。17.如权利要求9或16所述的处理器,其中,第一多个紧缩实数据元素和紧缩虚数据元素包括来自第一输入函数的数据,第二多个紧缩实数据元素和紧缩虚数据元素包括来自旋转因子的数据,并且第三多个紧缩实数据元素和紧缩虚数据元素包括来自第二输入函数的数据。18.一种方法,包括:对第一指令解码以生成经解码的指令;将第一多个紧缩N位实数据元素和紧缩N位虚数据元素存储在第一源寄存器中;将第二多个紧缩M位实数据元素和紧缩M位虚数据元素存储在第二源寄存器中;将第三多个紧缩N位实数据元素和紧缩N位虚数据元素存储在第三源寄存器中;将所述第一源寄存器中的紧缩N位实数据元素与所述第二源寄存器中的紧缩M位实数据元素相乘;将所述第一源寄存器中的紧缩N位虚数据元素与所述第二源寄存器中的紧缩M位虚数据元素相乘,以生成至少四个实乘积;从第二所选择的实乘积减去第一所选择的实乘积以生成第一临时结果,并且从第四所选择的实乘积减去第三所选择的实乘积以生成第二临时结果;将所述第一临时结果加到来自所述第三源寄存器的第一紧缩N位数据元素以生成第一预缩放的结果,从所述第一紧缩N位数据元素减去所述第一临时结果以生成第二预缩放的结果,将所述第二临时结果加到来自...

【专利技术属性】
技术研发人员:V·马杜里E·乌尔德阿迈德瓦尔M·查尼R·凡伦天J·考博尔B·杨
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1