加法器实验报告.doc_第1页
加法器实验报告.doc_第2页
加法器实验报告.doc_第3页
加法器实验报告.doc_第4页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

数字电路与逻辑设计实验报告实验三 加法器的设计与仿真一、实验目的熟悉Quartus 仿真软件的基本操作,用逻辑图和VHDL语言设计加法器并验证。二、实验内容1、熟悉Quartus 软件的基本操作,了解各种设计输入方法(原理图设计、文本设计、波形设计)2、用逻辑图和VHDL语言设计全加器并进行仿真验证;3、用设计好的全加器组成串行加法器并进行仿真验证;4、用逻辑图设计4位先行进位全加器并进行仿真验证;三、实验原理1. 全加器 全加器英文名称为full-adder,是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。用途:实现一位全加操作逻辑图真值表XYCINSCOUT0000000110010100110110010101011100111111利用与或门设计的全加器,它只能做一位的加法,先预想好它的功能,写出真值表,就可以根据这些来设计电路了。 2.四位串行加法器逻辑图利用全加器的组合实现4位串行加法器,全加器只能对一位进行操作,将每一位的结果传给下一位,就可以实现4位的加法器。374283:4位先行进位全加器(4-Bit Full Adder)利用74283芯片实现的4位先行进位全加器比前两者功能更完善,它可以实现进位功能,这个自己设计难度比较大,可以参照74283的功能表加深对它的理解,按照如下的逻辑图实现进位全加器。 逻辑框图 逻辑功能表注:1、输入信号和输出信号采用两位对折列表,节省表格占用的空间,如:A1/A3对应的列取值相同,结果和值1/3对应的运算是1=A1+B1和3=A3+B3。请自行验证一下。2、C2是低两位相加产生的半进位,C4是高两位相加后产生的进位输出,C0是低位级加法器向本级加法器的进位输入。四、实验方法与步骤实验方法:采用基于FPGA进行数字逻辑电路设计的方法。采用的软件工具是QuartusII软件仿真平台,采用的硬件平台是Altera EPF10K20TI144_4的FPGA试验箱。实验步骤:l 全加器1、 编写源代码。打开Quartus软件平台,点击File中得New建立一个文件。编写的文件名与实体名一致,点击File/Save as以“.vhd”为扩展名存盘文件。VHDL设计源代码如下:数据流描述:2、按照实验箱上FPGA的芯片名更改编程芯片的设置。点击Assign/Device,选取芯片的类型,选择“Altera的EPF10K20TI144_4”3、编译与调试。确定源代码文件为当前工程文件,点击Complier进行文件编译。编译结果有错误或警告,则将要调试修改直至文件编译成功。4、波形仿真及验证。在编译成功后,点击Waveform开始设计波形。点击“insert the node”,按照程序所述插入节点,设置输入信号的波形,给予适当的信号激励,点击保存按钮保存。然后进行功能仿真,选择菜单Processing-Generate Functional Netlist命令产生功能仿真网表,选择菜单Assignments-Setting下拉列表中选择Simulator input ,在右侧的Simulation mode下拉列表中选择Functional,完成设置;选择菜单中的 Processing-Start Simulation启动功能仿真,然后查看波形报告中的结果5、 时序仿真。选择菜单Assignments-Setting下拉列表中选择Simulator input ,在右侧的Simulation mode下拉列表中选择Timming,完成设置;选择菜单中的 Processing-Compiler Tool命令,单击Start,执行全编译,然后选择菜单中的 Processing-Start Simulation启动时序仿真,然后查看波形报告中的结果6、 FPGA芯片编程及验证。(1) 进行目标器件的选择及管脚分配:选择菜单Assignments-Pins命令,弹出包含器件顶层视图的窗口,以不同颜色的和符号表示不同类型的管脚,并以其他的符号表示I/O块,双击节点一行的Location列的空白格弹出管脚列表,本实验均选择I/O管脚。分配完管脚后,选择菜单Processing-Compiler Tool命令,单击Start,执行全编译,更新。(2) 编程下载及硬件测试:将实验板连接都电脑上,选择Tools-Programmer命令进入下载窗口,单击Start进行下载当Process栏中出现100%则下载成功。l 4位串行加法器1、 新建一个工程,工程名与文件名相同,将全加器的vhd文件复制到该工程下,在工程中打开,并产生bsf,以将全加器作为一个子模块在该工程中调用。2、 绘制逻辑图。打开Quartus软件平台,点击File中得New建立一个文件,按照原理中所述的逻辑图进行连接,点击File/Save as以“.bdf”为扩展名存盘文件。3、 进行全编译。【注】:后面的步骤与全加器相同,这里不再赘述。l 4位先行进位全加器1、 绘制逻辑图。打开Quartus软件平台,点击File中得New建立一个文件,按照原理中所述的逻辑图进行连接,点击File/Save as以“.bdf”为扩展名存盘文件。2、 进行全编译。【注】:后面的步骤与全加器相同,这里不再赘述五、实验结果与分析l 全加器1、 编译过程a) 编译过程、调试结果首先是选择Processing-Analyze Current File命令进行语法检查然后选择Processing-Start-Start Analysis&Synthesis命令进行综合分析b)结果分析及结论:代码的书写、结构及逻辑都是正确的,编译成功。2、 功能仿真a)功能仿真过程及仿真结果功能仿真过程:点击ProcessingGenerate Functional simulation Netlist产生仿真网表,点击Assignmentssettingssimulator settings,在simulation mode下拉选项中选择Functional,点击OK。点击ProcessingStart simulation进行功能仿真。b)结果分析及结论: 对比波形图与真值表,发现结果完全符合,所以仿真的结果正确,说明电路设计正确,。3、 时序仿真【注】:时序仿真是在功能仿真的基础上延时,即输出滞后,这里不在附图。l 四位串行加法器1. 功能仿真【注】:过程与全加器相同,这里只附仿真波形图结果分析及结论:观察功能仿真图可知,当x30+y30=16时,s30= x30+y30-16,cout=1,即进位,输出为1。符合四位串行加法器的逻辑功能,仿真正确。当CIN为1时,S为X+Y进一位的末位,COUT为首位;当CIN为0时,S为X+Y不进位的末位,COUT为首位。仿真结果符合四位串行加法器的逻辑功能。2. Programming芯片编程a) 芯片编程过程:1.分配管脚2. 下载 b) 编程芯片FPGA验证结果:c) 结果分析与结论: 将X输入3,Y输入12,CIN输入0,分别对对应管脚进行改变,可观察到99、98、97、96管脚亮起,108管脚不亮,即S输出16,不进位。下载与仿真结果一致,验证正确。六、实验结论这次实验目

温馨提示

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

评论

0/150

提交评论