1 / 2
文档名称:

基于Booth算法的48x30位乘法器的制作方法.docx

格式:docx   大小:17KB   页数:2页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

基于Booth算法的48x30位乘法器的制作方法.docx

上传人:开心果 2022/6/27 文件大小:17 KB

下载得到文件列表

基于Booth算法的48x30位乘法器的制作方法.docx

相关文档

文档介绍

文档介绍:基于Booth算法的48x30位乘法器的制作方法
专利名称:基于Booth算法的48x30位乘法器的制作方法
技术领域:
本发明涉及一种高速、大容量通信技术领域中的乘法器流水线设计,尤其涉及一种基于Booth算法的48x30位乘法器。指令有效时,接收30bit位乘数B的输入,控制30bit位乘数B在每个计算周期从低到高逐bit移位。比如在开始计算的第一个计算周期,取乘数B的第-1bit (第一次比较特殊,但实际上没有-lbit,根据算法这里-1bit值就记为0)、第Obit、第lbit,将这3个bit的状态值告诉部分积生成器。当第二个计算周期到来时,取乘数B的第lbit、第2bit、第3bit,并也将这3个bit的状态值告诉部分积生成器。依此类推,
直到第十五个计算周期到来时,取乘数B的第27bit、第28bit、第29bit,并也将这3个bit的状态值告诉部分积生成器。部分积生成器用于接收48bit位被乘数A的输入以及bit位移位控制模块在每个计算周期送来的乘数B的一组3个bit位的状态值;根据Radix_4Booth算法并结合当前接收到的被乘数A和乘数B的一组3个bit位的状态值生成一个部分积。流水累加控制器用于在bit位移位控制模块的驱动下,控制部分积流水线累加器在每个计算周期内对部分积做一次加法运算;部分积流水线累加器用于在流水累加控制器的控制下,对部分积生成器送过来的每组部分积做累加运算;当完成所有部分积运算过程后输出运算结果,并由流水累加控制器输出运算结束指示标志。其中部分积流水线累加器的一次累加运算过程是首先将保存在部分积流水线累加器的累加结果缓存器中的初始值取出,然后初始值与本次由部分积生成器送来的当前部分积进行累加,最后将当前累加结果回送到累加结果缓存器保存,以备下一计算周期使用。结合图6所示,可以看出,本实施例的基于Booth算法的48x30位乘法器消耗的硬件逻辑单元相对现有的串行加法器有所增加,但对比于并行乘法器,其消耗的硬件逻辑资源数量大大减少,从而显著降低了设计成本。而结合图7所示,从图中的仿真结果可以看出完成一次48x30位乘法计算,只需要15个时钟周期,其延时相对于现有的串行乘法器将会减少一半。因此,本实施例的基于Booth算法的48x30位乘法器可以完成有符号或无符号48x30位乘法运算,将被乘数经过符号扩展之后,使用Radix-4的Booth算法编码可以大幅度减少需要求和的部分积个数,从而缩短了实现乘法运算所需要的计算周期,同时还对有符号数和无符号数相乘的算法实现了统一。以上的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通工程技术人员对本发明的技术方案作出的各种变形和改进,例如将RadiX-4Booth算法替换为RadiX-8Booth算法或Radix-16Booth算法等,均应落入本发明的权利要求书确定的保护范围内。
权利要求
,其特征在于,包括Bit位移位控制模块,用于当检测到启动执行乘法控制指示指令有效时,接收30bit位乘数B的输入,控制30bit位乘数B在每个计算周期从低到高逐bit移位;部分积生成器,用于接收48bit位被乘数A的输入以及所述bit位移位控制模块在每个所述计算周期送

最近更新