[发明专利]多粒度并行运算乘法器有效
申请号: | 201711089785.4 | 申请日: | 2017-11-08 |
公开(公告)号: | CN109753268B | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 冯静;刘子君;王东琳;郭阳 | 申请(专利权)人: | 北京思朗科技有限责任公司 |
主分类号: | G06F7/53 | 分类号: | G06F7/53 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙) 11276 | 代理人: | 宋菲;刘云贵 |
地址: | 102400 北京市房山*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 粒度 并行 运算 乘法器 | ||
本发明提供了一种多粒度并行乘法器,其支持粒度包含比特位为32bit的word类型、16bit的short类型或8bit的byte类型的源操作数的并行运算,其包括:乘法部分积生成器、部分积压缩器及加法器;乘法部分积生成器包括:用于对源操作数进行比特位扩展并生成对应的待操作数的比特位扩展单元、用于根据布思编码及待操作数的粒度对待操作数进行编码并生成对应的第一部分积阵列的编码单元、以及用于根据上述粒度将第一部分积阵列进行映射和排序,对映射和排序后的全部粒度的第一部分积阵列取并集以使多粒度并行运算以生成第二部分积阵列的阵列处理单元;部分积压缩器用于对第二部分积阵列进行压缩处理以得到中间部分积;加法器用于对上述中间部分积进行相加以得到最终乘积。
技术领域
本发明涉及数字信号处理技术领域,具体涉及一种多粒度并行运算乘法器。
背景技术
目前,随着数据信号处理技术领域的不断发展和突破,对数据的运算能力的需求也在不断增长。例如在视频图像处理、无线通信以及超算等领域对数据运算能力的需求不断增长,而且这些数据的处理中包含大量乘法操作,因此乘法运算单元的速度和数量成为整个处理器程序执行时间的关键因素。并且,不同的数字信号领域对乘法运算的需求不同,例如在通信领域,采用8位、16位或者32位的数据,大量的数字信号处理算法如FFT等需要进行复数运算。
在实现本发明实施例的过程中,发明人发现现有技术中至少存在如下问题:传统的大部分的子字并行算法思想可分为两类,用小位宽操作的结果生成大位宽,用最大位宽操作的硬件复用产生小位宽。现有技术中如图1所示,TI6678的M单元是采用小位宽的结果生成大位宽的结果,先计算16个16位乘法的32位结果,再以4个结果为一组计算出4个32位的乘法结果,再利用4个32位的乘法结果计算出64位乘法最终结果,最后通过多路选择器选择输出的数值,这样在计算上会产生较大延时。用最大位宽操作的硬件复用产生小位宽如图2所示,乘法运算阵列由16个乘法单元组成,以4x4的方式进行排列,每个乘法单元与16x16乘法器类似,每个乘法单元内部包含布思编码和部分积压缩。采用64位乘法器的硬件资源,当执行小位宽乘法操作时,多余的部分编码成无效,因此不会影响最终的结果。运算单元0_0~3_3组成一个64位乘法。执行32位乘法时,运算单元0_0、0_1、1_0、1_1组成乘法通路1;执行8位乘法时,每个运算单元为一个运算通路。这种方法会出现不同SIMD(SingleInstruction Multiple Data,单指令多数据流)通路之间的重叠情况,需要标示运算单元在整个运算的位置来得到编码结果,在结构设计上增加了复杂性。并且,目前的乘法器所采用的算法虽然能够实现数据的高速处理,但是其针对不同粒度的数据(例如上述8位、16位或者32位)无法有效实现数据的并行处理,给数据的并行复用处理过程带来诸多不便。
发明内容
本发明的目的是针对现有技术的缺陷,提供了一种多粒度并行运算乘法器,用于解决现有技术中乘法器无法支持多种数据类型的并行处理操作,从而无法实现对不同粒度的数据进行并行处理的问题。
依据本发明的一个方面,提供了一种多粒度并行运算乘法器,该乘法器支持粒度包含比特位为32bit的word类型、比特位为16bit的short类型和/或比特位为8bit的byte类型的源操作数的并行运算,乘法器包括:乘法部分积生成器、部分积压缩器以及加法器;其中,该乘法部分积生成器包括:比特位扩展单元,用于根据源操作数的粒度对源操作数进行比特位扩展,生成与粒度对应的待操作数;编码单元,用于根据布思编码以及待操作数的粒度对待操作数进行编码,生成与所待操作数的粒度对应的第一部分积阵列;阵列处理单元,用于根据第一部分积阵列的粒度将每个粒度的第一部分积阵列进行映射得到映射阵列,并分别对所送映射阵列的每一列进行排序,将所述每一列的有效位移动到该列的最上面,然后对排序后的全部粒度的第一部分积阵列取并集以使多粒度并行运算,生成对应的第二部分积阵列;部分积压缩器用于对第二部分积阵列进行压缩处理,得到中间部分积;加法器用于对压缩处理得到的中间部分积进行相加,得到最终乘积。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思朗科技有限责任公司,未经北京思朗科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711089785.4/2.html,转载请声明来源钻瓜专利网。