【技术实现步骤摘要】
基4 Booth乘法器及其实现方法、运算电路及芯片
[0001]本申请实施例涉及电路领域,尤其涉及一种基4 Booth乘法器及其实现方法、运算电路及芯片。
技术介绍
[0002]基4 Booth乘法器是数字电路设计中常用电路之一,例如,基4 Booth乘法器常常用于中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)等复杂逻辑芯片,也常常用于微控制单元(Microcontroller Unit,MCU)、现场可编程门阵列(Field Programmable Gate Array,FPGA)等综合性设计芯片。一般地,乘法运算可以分为三个步骤:部分积生成、部分积压缩至两行向量、最后将两行向量再相加。在部分积生成中,通常采用基4
‑
Booth编码,基4
‑
Booth编码可使乘法器的部分积数量减少一半。
[0003]因此,如何实现基4 Booth乘法器,进而提升基4
‑
Booth编码乘法器整体性能,成为亟待解决的技术问题。
技术实现思路
[0004]有鉴于此,本申请实施例提供了一种基4 Booth乘法器及其实现方法、运算电路及芯片,用以克服上述全部或部分技术缺陷。
[0005]第一方面,本申请实施例提供了一种基4 Booth乘法器,其包括:选择控制器,用于根据乘数各比特位上的取值,输出用于表征部分积置零的置零选通控制信号、用于表征部分积为被乘数乘以正1 ...
【技术保护点】
【技术特征摘要】
1.一种基4Booth乘法器,其特征在于,包括:选择控制器,用于根据乘数各比特位上的取值,输出用于表征部分积置零的置零选通控制信号、用于表征部分积为被乘数乘以正1的正1倍选通控制信号、用于表征部分积为被乘数乘以负1的负1倍选通控制信号、用于表征部分积为被乘数乘以正2的正2倍选通控制信号、用于表征部分积为被乘数乘以负2的负2倍选通控制信号以及用于表征部分积为被乘数乘以负数倍的符号位选通控制信号中的任一种;其中,所述乘数和所述被乘数为N位二进制数;多位选择器,用于在接收表征部分积置零的置零选通控制信号,输出用于使部分积为零的第一选择结果;在接收表征部分积为被乘数乘以正1的正1倍选通控制信号,输出用于使部分积为被乘数乘自身的第二选择结果;在接收表征部分积为被乘数乘以负1的负1倍选通控制信号,输出用于使部分积为被乘数乘
‑
1的第三选择结果;在接收表征部分积为被乘数乘以正2的正2倍选通控制信号,输出用于使部分积为被乘数乘2的第四选择结果;在接收表征部分积为被乘数乘以负2的负2倍选通控制信号,输出用于使部分积为被乘数乘
‑
2的第五选择结果;以及,多路进位保存加法器,用于确定N/2组带有基4Booth乘法进位权重的N比特的部分积在第0个比特位至第(2N
‑
1)个比特位上对应的比特位,并对第0个比特位至第(2N
‑
1)个比特位上的部分积分别进行压缩,输出2N比特的2组数据,所述多路进位保存加法器在第0个比特位至第(2N
‑
1)个比特位上用于压缩的进位保存加法器的数量为对应比特位上部分积的数量与符号位的数量之和减2;带进位链的进位加法器,用于将所述2N比特的2组数据进行相加求和。2.根据权利要求1所述的基4Booth乘法器,其特征在于,N为16;所述带进位链的进位加法器包括:M个进位模块,每个进位模块对应所述32比特的2组数据的多个比特位,其中,第m个进位模块与第m
‑
1个进位模块连接,以用于接收所述第m
‑
1进位模块输出的级间进位参数,所述被乘数和所述乘数为16位二进制数,M为小于或者等于5的整数,m为大于1且小于或等于M的整数;每个进位模块包括预处理单元和多个进位计算单元,一个进位计算单元对应所述32比特的2组数据的一个比特位;其中,所述部分积用于表征乘数的第i+1个比特位、第i个比特位和第i
‑
1个比特位与被乘数基于基4Booth乘法的乘积;i为大于或等于0且小于或等于15的整数。3.根据权利要求1所述的基4Booth乘法器,其特征在于,M等于5,第1个进位模块对应32比特的2组数据的第0比特位至第3比特位,所述第2个进位模块对应32比特的2组数据的第4比特位至第7比特位,所述第3个进位模块对应32比特的2组数据的第8比特位至15比特位,所述第4个进位模块对应32比特的2组数据的第16比特位至23比特位,所述第5个进位模块对应32比特的2组数据的第24比特位至31比特位。4.根据权利要求1所述的基4Booth乘法器,其特征在于,N为32;所述带进位链的进位加法器包括:K个进位模块,每个进位模块对应所述64比特的2组数据的多个比特位,其中,第k个进位模块与第k
‑
1个进位模块连接,以用于接收所述第k
‑
1进位模块输出的级间进位参数,所述被乘数和所述乘数为32位二进制数,K为小于或者等于7的整数,k为大于1且小于或等于K
的整数;每个进位模块包括预处理单元和多个进位计算单元,一个进位计算单元对应所述64比特的2组数据的一个比特位;其中,所述部分积用于表征乘数的第j+1个比特位、第j个比特位和第j
‑
1个比特位与被乘数基于基4Booth乘法的乘积;j为大于或等于0且小于或等于31的整数。5.根据权利要求4所述的基4Booth乘法器,其特征在于,N等于7,N等于7,第1个进位模块对应64比特的2组数据的第0比特位至第3比特位,所述第2个进位模块对应64比特的2组数据的第4比特位至第7比特位,所述第3个进位模块对应64比特的2组数据的第8比特位至15比特位,所述第4个进位模块对应64比特的2组数据的第16比特位至31比特位,所述第5个进位模块对应64比特的2组数据的第32比特位至48比特位,所述第6个进位模块对应64比特的2组数据的第49比...
【专利技术属性】
技术研发人员:ꢀ七四专利代理机构,
申请(专利权)人:北京源启先进微电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。