移位相加8位硬件乘法器电路电子课程设计.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《移位相加8位硬件乘法器电路电子课程设计.doc》由会员分享,可在线阅读,更多相关《移位相加8位硬件乘法器电路电子课程设计.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流移位相加8位硬件乘法器电路电子课程设计.精品文档.电子课程设计 -移位相加8位硬件乘法器电路设计 学院 :电子信息工程学院 班级 : 通信071501 姓名 : 许瀛 指导老师:高文华 2009年12月 目录一 设计任务与要求2二 总体框图3三 选择器件4四 功能模块5五 总体设计电路图15六 心得体会17 移位相加8位硬件乘法起一、设计任务与要求 设计一个乘法器的控制模块,接受实验系统上的连续脉冲,当给定启动/清零信号后,能自动发出CLK信号驱动乘法运算,当8个脉冲后自动停止。设计一个纯组合电路的8X8等于16位的乘法器(选择不同的流水线方
2、式),具体说明并比较这几种乘法器的逻辑资源占用情况和运行速度情况。二、总体框图控制模块16位锁存器/右移寄存器分段模块8位右移寄存器1位乘法器8位加法器7段数码显示译码器1、模块功能A、运算控制模块:控制电路的起始和终止。B、8位右移寄存器:在时钟脉冲的作用下,高位寄存器的数码送给低位寄存器,作为低位寄存器的次态输出;每输入一个时钟脉冲,寄存器的数据就顺序向右移动一位。C、1位乘法器:D、8位加法器:E、16位锁存器/右移寄存器:此设计是由八位加法器构成的以时序逻辑方式设计的八位乘法器,它的核心器件是八位加法器,所以关键是设计好八位加法器。方案:由两个四位加法器组合八位加法器,其中四位加法器是
3、四位二进制并行加法器,它的原理简单,资源利用率和进位速度方面都比较好。综合各方面的考虑,决定采用方案二。2、设计思路:纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现宽位乘法器,由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA构成实验系统后,可以很容易的用ASIC大型集成芯片来完成,性价比高,可操作性强。其乘法原理是:乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。三、选择器件1、配有QuartusII软件的计算机一台;2、选用FPGA芯片,如:F
4、LEX10K系列的EPF10K10LC84-4;(1)、FPGA适配器板:标准配置是EPF10K10接口板;(2)、下载接口是数字芯片的下载接口(JTAG),主要用于FPGA芯片的数据下载;(3)、拨码开关、按键开关和LED灯;(4)、时钟源。四、功能模块1、乘法器等层设计模块VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;Use ieee.std_logic_unsigned.all;ENTITY MULTI8X8 IS -8位乘法器顶层设计PORT ( CLKk,hkey, START :IN STD_LOGIC; A, B : IN STD_
5、LOGIC_VECTOR(7 DOWNTO 0); Mmax :out STD_LOGIC_VECTOR(3 DOWNTO 0); ARIEND : OUT STD_LOGIC; DOUT : OUT STD_LOGIC_VECTOR(15 DOWNTO 0);END MULTI8X8;ARCHITECTURE struc OF MULTI8X8 ISCOMPONENT ARICTL PORT ( CLK : IN STD_LOGIC; START : IN STD_LOGIC; CLKOUT :OUT STD_LOGIC ; RSTALL : OUT STD_LOGIC; ARIEND :
6、OUT STD_LOGIC );END COMPONENT;COMPONENT ANDARITHPORT ( ABIN : IN STD_LOGIC; DIN : IN STD_LOGIC_VECTOR(7 DOWNTO 0); DOUT : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END COMPONENT;COMPONENT ADDER8BPORT (CIN : IN STD_LOGIC; A, B : IN STD_LOGIC_VECTOR(7 DOWNTO 0); S : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);COUT : OU
7、T STD_LOGIC );END COMPONENT;COMPONENT SREG8BPORT ( CLK : IN STD_LOGIC; LOAD : IN STD_LOGIC; DIN : IN STD_LOGIC_VECTOR(7 DOWNTO 0); QB : OUT STD_LOGIC );END COMPONENT;COMPONENT REG16BPORT ( CLK : IN STD_LOGIC; CLR : IN STD_LOGIC; D : IN STD_LOGIC_VECTOR(8 DOWNTO 0); Q : OUT STD_LOGIC_VECTOR(15 DOWNTO
8、 0) );END COMPONENT;SIGNAL GNDINT, INTCLK,RSTALL,NEWSTART, QB,clk : STD_LOGIC;SIGNAL ANDSD : STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL count,maxx : STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL DTBIN : STD_LOGIC_VECTOR(8 DOWNTO 0);SIGNAL DTBOUT : STD_LOGIC_VECTOR(15 DOWNTO 0);BEGIN DOUT = DTBOUT; GNDINT = 0;PROCESS
9、(CLK,START)BEGIN IF START=1 THEN NEWSTART=1; ELSIF CLK=0THEN NEWSTART=0; END IF;END PROCESS;Process(hkey) Begin If(hkeyevent and hkey=1)then maxx=maxx+1; End if;End process;Mmax=maxx;Process(clkk)BeginIf clkkevent and clkk=1thenIf(countmaxx)then count=count+1;Else count=0000;clkCLK, START =NEWSTART,
10、 -FOR THE BETTER CLKOUT = INTCLK, RSTALL = RSTALL, ARIEND =ARIEND );U2 : SREG8B PORT MAP(CLK =INTCLK,LOAD=RSTALL,DIN=B,QB=QB);U3 : ANDARITH PORT MAP(ABIN =QB, DIN = A,DOUT = ANDSD);U4 : ADDER8B PORT MAP(CIN =GNDINT, A=DTBOUT(15 DOWNTO 8),B=ANDSD, S = DTBIN(7 DOWNTO 0),COUT = DTBIN(8);U5 : REG16B POR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移位 相加 硬件 乘法器 电路 电子 课程设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内