资源描述:
《十六位硬件乘法器电路设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、课程名称电子设计自动化题目十六位硬件乘法器电路院系班级信息学院11电子信息工程A班姓名学号指导老师凌朝东2013年12月5日15题目名称:十六位硬件乘法器电路摘要:设计一个16位硬件乘法器电路.要求2位十进制乘法,能用LED数码管同时显示乘数,被乘数和积的值.本设计利用QuartusII软件为设计平台,通过移位相加的乘法原理:即从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。经软件仿真和硬件测试验证后,以达到实验要求。15目录1.题目名称……………………
2、…………………………………………………………………22.摘要……………………………………………………………………………………………23.目录……………………………………………………………………………………………34.正文……………………………………………………………………………………………44.1.系统设计…………………………………………………………………………………44.1设计要求……………………………………………………………………………44.2系统设计方案……………………………………………………………………
3、…44.2单元电路设计……………………………………………………………………………44.2.1十进制计算模块…………………………………………………………………54.2.2BCD码转二进制模块……………………………………………………………54.2.38位右移寄存器模块……………………………………………………………64.2.48位加法器模块…………………………………………………………………74.2.51乘法器multi_1模块…………………………………………………………74.2.616位移位寄存器reg_16模块……
4、……………………………………………84.2.716位二进制转BCD码B_BCD模块………………………………………………94.2.88位乘法器multi_8x8顶层设计…………………………………………………104.3软件设计……………………………………………………………………………………124.3.1设计平台和开发工具………………………………………………………………124.3.2程序流程方框图……………………………………………………………………134.4系统测试……………………………………………………………………
5、………………144.1仿真分析………………………………………………………………………………144.2硬件验证………………………………………………………………………………155.结论……………………………………………………………………………………………156.参考文献………………………………………………………………………………………157.附录……………………………………………………………………………………………15154.正文4.1系统设计1.1设计要求题目要求设计一个16位硬件乘法器电路.要求2位十进制乘法;
6、能用LED数码管同时显示乘数,被乘数和积的信息.设置一个乘法使能端,控制乘法器的计算和输出.1.2系统设计方案此设计问题可分为乘数和被乘数输入控制模块,乘法模块和输出乘积显示模块基本分.乘数和被乘数的输入模块使输入的十进制数转化为二进制数输入乘法模块,乘法模块利用移位相加的方法将输入的两组二进制数进行相乘,并将16位乘积输出到乘积输出显示模块.显示模块将输入的二进制数按千,百,十,个位分别转化为十进制数输出.乘数和被乘数的输入可用数据开关K1~K10分别代表数字1,2,…,9,0,用编码器对数据开关K1~K10
7、的电平信号进行编码后输入乘法器进行计算.但此方案所用硬件资源较多,输入繁琐,故不采取.方案二是利用硬件箱自带16进制码发生器,由对应的键控制输出4位2进制构成的1位16进制码,数的范围是0000~1111,即0H~FH.每按键一次,输出递增1,输出进入目标芯片的4位2进制数将显示在该键对应的数码管.乘数和被乘数的输入模块将16进制码的A~F码设计成输出为null.使得减少了无用码的输入.两数相乘的方法很多,可以用移位相加的方法,也可以将乘法器看成计数器,乘积的初始值为零,每一个时钟周期将乘数的值加到积上,同时乘
8、数减一,这样反复执行,直到乘数为零.本设计利用移位相加的方法使得程序大大简化.系统总体电路组成原理图如下图所示:4.2单元电路设计下面分解8位乘法器的层次结构,分为以下7个模块:151.十进制计算模块:使用4个十进制计数模块,输入乘数的十位个位,被乘数的十位个位。2.BCD码转二进制模块:实现将输入的8位BCD码转化成二进制3.右移寄存器模块:这是一个8位右移寄存器,可将乘法运算中的被