子字并行乘法器设计

子字并行乘法器设计

ID:43477234

大小:207.00 KB

页数:14页

时间:2019-10-06

子字并行乘法器设计_第1页
子字并行乘法器设计_第2页
子字并行乘法器设计_第3页
子字并行乘法器设计_第4页
子字并行乘法器设计_第5页
资源描述:

《子字并行乘法器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、子字并行乘法器设计姓名:李茜学号:U200714328班级:0704班院系:电子科学与技术系专业:电子科学与技术1364位子字并行乘法器的设计摘要:介绍了一种64位子字并行乘法器的设计。根据不同的操作模式可以完成普通模式操作即64bit*64bit乘法操作,又可完成子字并行操作模式,即4个16bit*16bit乘法操作。两种模式下都支持有符号和无符号乘法。仿真结果显示达到了要求。关键词:子字并行;乘法器;64bit*64bit;目录1.题目要求及理解21.1题目要求21.2题目理解22.系统设计33.模块设计43.116*16模块43.264*64顶层模块

2、43.3仿真63.4仿真结果分析74.整体电路仿真和综合75.源代码和注释85.1multi16底层模块代码85.1.1定义底层模块输入输出各个参变量95.1.2定义计数变量,共进行16次移位相加运算95.2multi64顶层模块95.2.1定义顶层模块输入输出变量,及缓存变量95.2.2划分乘数与被乘数的子字105.2.3定义中间缓存变量并将16次调用该模块得到的乘积放入缓存变量中105.2.4由控制信号c来控制进行子字并行乘法还是普通乘法运算1113正文1.题目要求及理解1.1题目要求设计一个64位的子字并行乘法器:根据不同的操作模式完成普通模式操作即

3、64bit*64bit乘法操作,又可完成子字并行操作模式,即4个16bit*16bit乘法操作。两种模式下都支持有符号和无符号乘法。1.2题目理解在高性能微处理器和DSP芯片设计中,乘法器是一个关键部件,优化乘法器对提升整个处理器性能至关重要。多媒体处理技术对乘法器提出了更高的要求。子字并行处理是一种单指令多数据(SIMD)处理方式,是现代多媒体处理器,通用处理器中多媒体扩展以及数字信号处理的一个主要特点。子字并行技术可将操作数划分为多个低精度的操作数(称为子字)进行并行操作。在数字信号处理中经常需要进行乘法运算,乘法器的设计对运算的速度有很大的影响.设计

4、64位子字并行乘法器就是为了提高乘法器的运算速度.子字并行整数乘法器,其特征在于:它包括数据预处理模块、四个独立的部分产生模块、一个修正值选择模块以及部分积压缩树模块,所述数据预处理模块用来输入被乘数[63∶0]和乘数[63∶0]及控制信号,根据操作模式和符号控制信号对被乘数和乘数进行扩展,产生相应的4组被乘数和4组乘数;所述修正值选择模块用来根据操作模式及乘积结果的符号位对修正值进行选择和合并修正值;部分产生模块的输入为数据预处理模块产生的4组被乘数、4组乘数和控制信号,输出为部分积因而将64位等分为四个16位,并行进行乘法运算,因而大大的提高了计算速度

5、.乘法器作为众多数字系统中的基本模块,从原理上说它属于组合逻辑范畴;从工程实际设计上来说,它往往会利用时序逻辑设计的方法来实现,属于时序逻辑范畴。13本次课程设计的目的是使我们掌握FPGA/CPLD设计乘法器的思想,并且能够将设计的乘法器应用到实际工程中。在时序逻辑电路中,利用时钟信号控制乘法器运算,可以使整体设计具备流水线结构的特征,能适用在实用工程设计中。2.系统设计一位乘法器的系统框图与门AB一位乘法器实现的就是一个两输入信号相与的过程系统设计流程图:划分乘数(cs)被乘数(bcs)子字输出乘积C=0普通运算C=1子字并行乘法运算控制信号判进行什么运

6、算调用底层模块multi,将乘数的四个子字分别与被乘数的四个子字相乘,共调用十六次133.模块设计3.116*16模块由一位乘法器的原理可知,多位乘法器就是,乘数的第i位(i由低变高),与被乘数的相与,再错位相加得到的。对于16*16模块,具体流程图如下:将乘数赋值给中间变量的低位[15:0]乘数[0]位乘数[0]位为1时为0时每当乘数的相应位为1的时候输出out等于cache左移一位再自相加每当乘数的相应位为0的时候输出值不变Out[15:0]赋值为0Out[15:0]赋值为乘数注:1.无论乘数的相应位为何值,cache都要向左移一位;2.一定要在最初给

7、cache赋初值,防止在每个时钟的上跳沿该变量的初值发生跳变,以免造成竞争冒险;3.264*64顶层模块编写该模块时需要16次调用16*16的底层模块。并且要实现两个功能,即子字并行的乘法功能,及普通乘法器的功能。其中,将64位被乘数由高位到低位均A3A2A1A0这四块16位的模块,相同的将乘数也用相同方式分为B3B2B1B0这四块。13子字并行的乘法较为简单:就是输出(A3*B3)(A2*B2)(A1*B1)(A0*B0)这128位的结果普通乘法运算由简单的16*16乘法运算可以知道,乘法运算就是,乘数每位与被乘数相与再错位相加的结果,因而,64*64的

8、乘法器原理相同。乘数从低位到高位每一个模块与被乘数的运算规律如下:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。