verilog实验四 乘法器.docx_第1页
verilog实验四 乘法器.docx_第2页
verilog实验四 乘法器.docx_第3页
verilog实验四 乘法器.docx_第4页
verilog实验四 乘法器.docx_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验四 乘法器一、实验任务利用移位相加的原理设计并实现一个4 位的移位相加乘法器二、实验器材1、SOPC 实验箱2、计算机(装有Quartus II 7.0 软件)三、实验预习1、预习乘法器的原理与结构。2、书写预习报告,必须有完整的VHDL 设计程序及实验步骤。四、实验原理目前常用的硬件乘法器主要有移位相加乘法器和加法器树乘法器。下面以移位相加乘法器的设计为例介绍它的原理。首先,考虑下面两个4 位操作数的乘法,同我们在小学所学的竖式乘法形式相同。每行称为一个部分结果。由操作数通过一位一位相乘得到。例如:操作数a 的每一行乘上b,得到的部分结果为a3b0,a2b0,a1b0,a0b0,如图 所示。a3 a2 a1 a0 b3 b2 b1 b0 a3b0 a2b0 a1b0 a0b0a3b1 a2b1 a1b1 a0b1a3b2 a2b2 a1b2 a0b2a3b3 a2b3 a1b3 a0b3 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0其乘积按“手工计算”的方法给出是:= = = Y=AB=k=03ak2kB从中可以看出只要ak不等于0,输入B就随着k的位置连续地变化,然后累加B2k。如果ak等于0,相应的转换相加就可以忽略了。 移位相加乘法器就是按照这种方法,根据乘数的每一位是否为1进行计算,如果为1,就将被乘数移位相加。这种乘法器所用的硬件资源较少,但每个时钟周期内只能完成4位乘1位的运算,因此要完成4位乘4位的运算至少需要4个时钟周期。五、实验内容1、启动Quartus建立一个空白工程。2、新建verilog源程序文件mult4.v,输入程序代码并保存,进行综合编译,若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。代码:module mult4b(r,a,b);parameter s=4;output2*s:1 r;input s:1a,b;reg2*s:1r;integer i;always (a or b) begin r=0;for (i=1;i=s;i=i+1)if (bi)r=r+(a(i-1);end endmodule3、进行波形仿真。11X10=110 3X4=12 5X5=25 运算均结果正确。4、元器件仿真。六、实验小结1、在做实验前应该先充分理解实验原理,并根据原理编写语

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论