欢迎来到天天文库
浏览记录
ID:6881843
大小:1.66 MB
页数:18页
时间:2018-01-29
《移位相加8位硬件乘法器电路设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、电子技术课程设计----移位相加8位硬件乘法器电路计学院:华科学院专业:通信工程班级:通信052201H姓名:张茹学号:200522080122指导教师:柴婷婷2007年12月30日18ou设计任务与要求--------------------(3)1,内容2,要求二,总体框图---------------------------(3)1,电路的总体框图2,框图的说明3,设计思路4,方案设计三,选择器件与功能模块-----------------(5)1,选择器件各功能模块及功能说明四,功能模块----------------------------(8)1,ADDER8B的模块2,
2、ANDARITH的模块3,ARICTL的模块4,REG16B的模块5,SREG8B的模块五,总体设计电路图----------------------(14)1,总体原理图2,仿真波形图3,管脚分配图4,硬件验证情况六,心得体会--------------------------------------(18)18ou移位相加8位硬件乘法器一.设计任务与要求1.内容:由8位加法器构成的以时序逻辑方式设计的8位乘法器乘法通过逐向移位加原理来实现,从被乘数的最低位开始,若为1,则乘数左移与上一次和相加;若为0,左移后以全零相加,直至被乘数的最高位。2.要求:(1)重点掌握VHDL设计电路
3、模块(2)在掌握8位加法器设计的基础上,进一步掌握8×8位乘法器的设计;(3)进一步学习开发系统,掌握MAX+PLUSII的设计流程。二.总体框图(电路的总体框图)18ou1,说明:此电路由五部分组成2,它们分别是控制器,锁存器,寄存器,乘法器,加法器。1控制器是一个乘法器的控制模块,用来接受实验系统上的连续脉冲。2锁存器起锁存的作用,它可以锁存8位乘数。3移位寄存器起移位的作用,便于被乘数可以逐位移出。4乘法器功能类似一个特殊的与非门。5加法器用于8位乘数和高8位相加。2,设计思路:纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现宽位乘法器,基于PLD器件外接
4、ROM九九表的乘法器则无法构成单片系统,也不实用。这里介绍由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA构成实验系统后,可以很容易的用ASIC大型集成芯片来完成,性价比高,可操作性强。其乘法原理是:乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。3,方案设计:此设计是由八位加法器构成的以时序逻辑方式设计的八位乘法器,它的核心器件是八加法器,所以关键是设计好八位加法器方案一:八位直接宽位加法器,它的速度较快,但十分耗费硬件资源,对于工业化设计是不合理的18ou
5、方案二:由两个四位加法器组合八位加法器,其中四位加法器是四位二进制并行加法器它的原理简单,资源利用率和进位速度方面都比较好。综合各方面的考虑,决定采用方案二。2三,选择器件与功能模块1,选择器件SREG8B(移位寄存器);REG16B(16位琐存器);ARICTL(运算控制器);ANDARITH(1位乘法器);ADDER8B(8位加法器);数码管(显示结果)。(1)SREG8B的模块图SREG8B是一个移位寄存器,SREG8B有三个输入端,分别是clk,load,din[7..0]。其中clk为时钟信号。一个输出端,它是qb。18ou(2)REG16B的模块图REG16B是一个16位
6、锁存器,REG16B有三个输入端,它们分别是clk,clr,d[8..0].其中clk为时钟信号。有一个输出端,它是q[15..0].(3)ARICTL的模块图ARICTL是乘法器的控制模块,ARICTL有两个输入端,它们分别是clk,start。有三个输入端,它们分别是clkout,rstall,ariend。18ou(4)ANDARITH的模块图ANDARITH是一个一位乘法器,ANDARITH有两个输入端。它们分别是abin,din[7..0]。有一个输出端,它是dout[7..0]。(5)ADDER8B的模块图ADDER8B是一个8位加法器,ADDER8B有三个输入端,它们分
7、别是cin,a[7..0],b[7..0]。其中a[7..0]为被乘数;b[7..0]为乘数。有两个输出端,它们分别是s[7..0],cout。18ou四,功能模块(1)ADDER8B模块设计ADDER8B的模块图ADDER8B(8位加法器)的模块ADDER8B的波形图ADDER8B模块的功能:ADDER8B是一个8位加法器。有三个输入端(CIN,A[7..0],B[7..0]),其中A[7..0]是被乘数.B[7..0]是乘数。ADDER8B起到使两个数
此文档下载收益归作者所有