移位相加8位硬件乘法器

移位相加8位硬件乘法器

ID:11745607

大小:820.00 KB

页数:9页

时间:2018-07-13

移位相加8位硬件乘法器_第1页
移位相加8位硬件乘法器_第2页
移位相加8位硬件乘法器_第3页
移位相加8位硬件乘法器_第4页
移位相加8位硬件乘法器_第5页
资源描述:

《移位相加8位硬件乘法器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、EDA技术课程大作业设计题目:移位相加8位硬件乘法器电路设计院系:电子信息与电气工程学院学生姓名:学号:200902070008专业班级:电子信息专升本2010年12月03日9移位相加8位硬件乘法器电路设计1.设计背景和设计方案1.1设计背景硬件乘法器,其基础就是加法器结构,它已经是现代计算机中必不可少的一部分。乘法器的模型就是基于“移位和相加”的算法。乘法器应用很广泛,其在数字信号处理中经常用到,如用在FFT,数字上下变频、数字滤波、优化卷积、相关以及矩阵运算等算法中。随着科技的发展,我们对乘法器的技术要求越来越高,随

2、着乘数和被乘数位数的增加,乘法器电路中的加法器位数也要相应的增加,我们可以在乘法器中开发出更快的加法阵列。硬件乘法器的快速发展已是现在社会需要的必然。1.2设计方案1.内容:由8位加法器构成的以时序逻辑方式设计的8位乘法器乘法通过逐向移位加原理来实现,从被乘数的最低位开始,若为1,则乘数左移与上一次和相加;若为0左移后以全零相加,直至被乘数的最高位2.设计思路:纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现宽位乘法器,基于PLD器件外接ROM九九表的乘法器则无法构成单片系统,也不实用。这里绍由八位

3、加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA构成实验系统后,可以很容易的用ASIC大型集成芯片来完成,性价比高,可操作性强。其乘法原理是:乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。3.设计总体框图框图的说明91控制器是一个乘法器的控制模块,用来接受实验系统上的连续脉冲。2锁存器起锁存的作用,它可以锁存8位乘数。3移位寄存器起移位的作用,便于被乘数可以逐位移出。4乘法器功能类似一个特殊的与非门。

4、5加法器用于8位乘数和高8位相加。2.方案实施2.1SREG8B(移位寄存器)的模块1.SREG8B模块的功能:SREG8B是一个移位寄存器。有三个输入端CLK,LOAD,DIN[7..0]);当被乘数被加载于8位右移寄存器后,随着每一时钟节拍,最低位在前,由低位至高位逐位移出。有一个输出端(QB)。2.VHDL程序代码如下LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYSREG8BISPORT(CLK,LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTO

5、R(7DOWNTO0);QB:OUTSTD_LOGIC);ENDSREG8B;ARCHITECTUREbehavOFSREG8BISSIGNALREG8:STD_LOGIC_VECTOR(7DOWNTO0);BEGINPROCESS(CLK,LOAD)BEGINIFCLK'EVENTANDCLK='1'THENIFLOAD='1'THENREG8<=DIN;ELSEREG8(6DOWNTO0)<=REG8(7DOWNTO1);9ENDIF;ENDIF;ENDPROCESS;QB<=REG8(0);ENDbehav;2.2

6、ADDER8B(8位加法器)模块1.ADDER8B模块的功能:ADDER8B是一个8位加法器。有三个输入端(CIN,A[7..0],B[7..0]),其中A[7..0]是被乘数.B[7..0]是乘数。ADDER8B起到使两个数相加的作用;即在加法的基础上才能相乘。所以8位加法器是一个必不可少的模块。2.VHDL程序代码如下LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYADDER8BISPORT(CIN:INSTD_L

7、OGIC;A,B:INSTD_LOGIC_VECTOR(7DOWNTO0);S:OUTSTD_LOGIC_VECTOR(7DOWNTO0);COUT:OUTSTD_LOGIC);ENDADDER8B;ARCHITECTUREBEHAVOFADDER8BISSIGNALSINT,AA,BB:STD_LOGIC_VECTOR(8DOWNTO0);BEGINAA<='0'&A;BB<='0'&B;SINT<=AA+BB+CIN;S<=SINT(7DOWNTO0);COUT<=SINT(8);ENDBEHAV;2.3ARICTL

8、(控制器)模块91.ARICTL模块的功能:ARICTL是一个乘法器的控制模块。为了接受实验系统上的连续脉冲。有两个输入端(CLK,START);其中START信号的上跳沿及其高电平有两个功能,即16位寄存器清零和被乘数A[7..0]向移位寄存器SREG8B加载;它的低电平则作为乘法使能信号。CLK为乘法时钟信号。有

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

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

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