用多比特加法器并行进行多个少比特加法的方法及应用技术

技术编号:26169902 阅读:26 留言:0更新日期:2020-10-31 13:35
本发明专利技术公开了用多比特加法器并行进行多个少比特加法的方法及应用,涉及数据处理技术领域。一种用多比特加法器并行进行多个少比特加法的方法,包括步骤:对一个N输入的多比特加法器,将每一个输入的指定比特设置为0以将所述多比特加法器分割成多个少比特加法器,利用分割形成的多个少比特加法器并行进行少比特加法,所述N为大于2的自然数。本发明专利技术可以利用多比特加法器并行进行多个少比特加法以减少计算周期,其不仅无需增加额外的硬件,而且能够有效地提高芯片硬件利用率和算力。

【技术实现步骤摘要】
用多比特加法器并行进行多个少比特加法的方法及应用
本专利技术涉及数据处理

技术介绍
计算机的运行速度变得越来越快,需要有更高速的运算电路进行支持,而加法器作为计算机的主要部件,提高其运行速度非常重要。在芯片设计中,通常会涉及图像处理、视频编解码、人工智能、中央处理器设计等不同应用场景,不同应用场景峰值对应的数据量和数据位宽动态范围很大,硬件设计时必须要支持最大数据位宽并能实时处理峰值数据。作为举例而非限制,比如在某种应用下的硬件中设置有1个16比特加法器,现有技术中,16比特加法器在一个周期只能进行一组数相加,其可以是一组2个16比特的数相加,也可以是一组2个低于16比特的数相加。当计算场景中包括两组以上低于16比特的数相加时,需要至少2个周期才能完成计算,如果需要在一个周期内得出结果,传统的解决方案是额外增加少比特加法器来实现并行进行,需要增加额外的硬件。以16比特二进制加法器为例,假设一种应用的硬件中有128个16比特二进制加法器,其主要处理两个应用场景:场景一需要计算128个16比特二进制数的加法,场景二需要计算128个7比特二进制数的加法、64个4比特二进制数的加法和64个3比特二进制数的加法。利用当前的128个16比特二进制加法器,完成场景一的计算需要1个周期,完成场景二的计算需要2个周期。如果场景二需要在1个周期内得出结果,需要额外增加64个4比特的加法器和64个3比特加法器的硬件。同时,我们可以发现,当前的128个16比特二进制加法器在进行场景二的计算时,其算力并未被充分利用。
技术实现思路
本专利技术的目的在于:克服现有技术的不足,提供了一种用多比特加法器并行进行多个少比特加法的方法及应用。利用本专利技术提出的方法,可以利用多比特加法器并行进行多个少比特加法以减少计算周期,其不仅无需增加额外的硬件,而且能够有效地提高芯片硬件利用率和算力。为实现上述目标,本专利技术提供了如下技术方案:一种用多比特加法器并行进行多个少比特加法的方法,包括步骤:对一个N输入的多比特加法器,将每一个输入的指定比特设置为0以将所述多比特加法器分割成多个少比特加法器,利用分割形成的多个少比特加法器并行进行少比特加法,所述N为大于2的自然数。进一步,将N输入的M比特加法器分割成j个少比特加法器的步骤包括,根据N值获得需要插入0的个数z,其中,z=ceil(log2N);根据计算得到的z值,从每个加数的第Qi比特位开始,插入z个0;其中,第i个加法器的位宽为Ki,i=0,1,……,j-1,第0个加法器的结果存放在0至(Q0+z)比特位,其它第i个加法器的结果存放在(Qi-1+i*z)至(Qi+(i+1)*z)比特位,Ki的值由系统设置或者由用户设置;所述j为分割的加法器个数,j的值由系统设置或者由用户设置;所述Qi的计算公式为:其中,e为小于i的整数,e=0,1,……,i;Qj的值通过公式Qi≤M进行约束,所述M为大于2的自然数。进一步,输入数据为二进制、八进制、十进制或者十六进制数。进一步,所述多比特加法器为2T比特加法器,其中T为大于等于3的整数。本专利技术还提供了一种高速加法器,包括:转换器,用于将多比特加法器转换成多个少比特加法器以并行进行多个少比特加法;所述转换器被配置为,对一个N输入的多比特加法器,将每一个输入的指定比特设置为0以将所述多比特加法器分割成多个少比特加法器,所述N为大于2的自然数。进一步,所述转换器包括,预处理计算单元,用于根据N值获得需要插入0的个数z,其中,z=ceil(log2N);分割处理单元,用于根据计算得到的z值,从每个加数的第Qi比特位开始,插入z个0;其中,第i个加法器的位宽为Ki,i=0,1,……,j-1,第0个加法器的结果存放在0至(Q0+z)比特位,其它第i个加法器的结果存放在(Qi-1+i*z)至(Qi+(i+1)*z)比特位,Ki的值由系统设置或者由用户设置;所述j为分割的加法器个数,j的值由系统设置或者由用户设置;所述Qi的计算公式为:其中,e为小于i的整数,e=0,1,……,i;Qj的值通过公式Qi≤M进行约束,所述M为大于2的自然数。进一步,输入数据为二进制、八进制、十进制或者十六进制数。进一步,所述多比特加法器为2T比特加法器,其中T为大于等于3的整数。本专利技术由于采用以上技术方案,与现有技术相比,作为举例,具有以下的优点和积极效果:通过将多比特加法器分割成多个少比特加法器,利用多个少比特加法器并行进行多个少比特加法以减少计算周期,其不仅无需增加额外的硬件,而且能够有效地提高芯片硬件利用率和算力,减小芯片面积。附图说明图1为本专利技术实施例提供的对多比特加法器进行分割的示例图。图2为本专利技术实施例提供的插入分隔位进行加法器分隔的示例图。具体实施方式以下结合附图和具体实施例对本专利技术公开的用多比特加法器并行进行多个少比特加法的方法及应用作进一步详细说明。应当注意的是,下述实施例中描述的技术特征或者技术特征的组合不应当被认为是孤立的,它们可以被相互组合从而达到更好的技术效果。在下述实施例的附图中,各附图所出现的相同标号代表相同的特征或者部件,可应用于不同实施例中。因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。需说明的是,本说明书所附图中所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定专利技术可实施的限定条件,任何结构的修饰、比例关系的改变或大小的调整,在不影响专利技术所能产生的功效及所能达成的目的下,均应落在专利技术所揭示的
技术实现思路
所能涵盖的范围内。本专利技术的优选实施方式的范围包括另外的实现,其中可以不按所述的或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本专利技术的实施例所属
的技术人员所理解。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。本专利技术中,所述多比特加法器和少比特加法器时相对于而言的,比如对于16比特加法器,低于16比特的8比特加法器、7比特加法器、4比特加法器都属于少比特加法器,而对于32比特加法器而言,所述16比特加法器属于少比特加法器。实施例一种用多比特加法器并行进行多个少比特加法的方法,包括如下步骤:对一个N输入的多比特加法器,其中N为大于2的自然数,可以将每一个输入的指定比特设置为0以将所述多比特加法器分割成多个少比特加法器。然后,可以利用分割形成的多个少比特加法器并行进行少比特加法。参见图1所示,对于多比特加法器,通过分割后,形成了n个少比特加法器,分别为少比特加法器1、少比特加法器本文档来自技高网
...

【技术保护点】
1.一种用多比特加法器并行进行多个少比特加法的方法,其特征在于包括步骤:对一个N输入的多比特加法器,将每一个输入的指定比特设置为0以将所述多比特加法器分割成多个少比特加法器,利用分割形成的多个少比特加法器并行进行少比特加法,所述N为大于2的自然数。/n

【技术特征摘要】
1.一种用多比特加法器并行进行多个少比特加法的方法,其特征在于包括步骤:对一个N输入的多比特加法器,将每一个输入的指定比特设置为0以将所述多比特加法器分割成多个少比特加法器,利用分割形成的多个少比特加法器并行进行少比特加法,所述N为大于2的自然数。


2.根据权利要求1所述的方法,其特征在于:将N输入的M比特加法器分割成j个少比特加法器的步骤包括,
根据N值获得需要插入0的个数z,其中,z=ceil(log2N);
根据计算得到的z值,从每个加数的第Qi比特位开始,插入z个0;其中,第i个加法器的位宽为Ki,i=0,1,……,j-1,第0个加法器的结果存放在0至(Q0+z)比特位,其它第i个加法器的结果存放在(Qi-1+i*z)至(Qi+(i+1)*z)比特位,Ki的值由系统设置或者由用户设置;所述j为分割的加法器个数,j的值由系统设置或者由用户设置;所述Qi的计算公式为:



其中,e为小于i的整数,e=0,1,……,i;Qi的值通过公式Qi≤M进行约束,所述M为大于2的自然数。


3.根据权利要求1或2所述的方法,其特征在于:输入数据为二进制、八进制、十进制或者十六进制数。


4.根据权利要求1所述的方法,其特征在于:所述多比特加法器为2T比特加法器,其中T为大于等于3的整数。


...

【专利技术属性】
技术研发人员:谢峥
申请(专利权)人:眸芯科技上海有限公司
类型:发明
国别省市:上海;31

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

1