1、实验步骤:
A全加器:

1个vhd文件,用来定义顶层实体
1个vwf文件,用来进行波形仿真,将验证的波形输入
1、新建,编写源代码。
(1).选择保存项和芯片类型:【File】-【new project wizard】-【next】(设置文件路径+设置project name为【C:\Users\lenovo\Desktop\笔记\大二上\数字电路\实验课\实验三\全加器】)-【next】(设置文件名【gg】)-【next】(设置芯片类型为【cyclone-EP1CT144C8】)-【finish】
(2).新建:【file】-【new】(【design file-VHDL file】)-【OK】
2、写好源代码,保存文件(gg.vhd)。
3、编译与调试。确定源代码文件为当前工程文件,点击【processing】-【start compilation】进行文件编译。编译结果有一个警告,文件编译成功。
4、波形仿真及验证。新建一个vector waveform file。按照程序所述插入jinwei0,jiashu1,jiashu2,jieguo,jinwei1五个节点(jinwei0,jiashu1,jiashu2为输入节点,jieguo,jinwei1为输出节点)。(操作为:右击 -【insert】-【insert node or bus】-【node finder】(pins=all;【list】)-【>>】-【ok】-【ok】)。任意设置jinwei0,jiashu1,jiashu2的输入波形…点击保存按钮保存。(操作为:点击name(如:jinwei0))-右击-【value】-【count】(如设置binary;start value=0;end value=1;count every=10ns),同理设置name jiashu1,jiashu2(如0,1,5),保存)。然后【start simulation】,出name jieguo,jinwei1的输出图。
5、功能仿真,即没有延迟的仿真,仅用来检测思路是否正确。

B串行加法器:

4个vhd文件,四个实体,一个定义顶层实体,三个定义底层实体
1个vwf文件,用来进行波形仿真,将验证的波形输入
1、新建,编写源代码。
(1).选择保存项和芯片类型:【File】-【new project wizard】-【next】(设置文件路径+设置project name为【C:\Users\lenovo\Desktop\笔记\大二上\数字电路\实验课\实验三\串行加法器】)-【next】(设置文件名【goodluck】)-【next】(设置芯片类型为【cyclone-EP1CT144C8】)-【finish】
(2).新建:【file】-【new】(【design file-VHDL file】)-【OK】
2、写好源代码,保存文件(goodluck.vhd)。
3、编译与调试。确定源代码文件为当前工程文件,点击【processing】-【start compilation】进行文件编译。编译结果有一个警告,文件编译成功。
4、波形仿真及验证。新建一个vector waveform file。按照程序所述插入clock,input_a,input_b,select_s,output_o,output_c六个节点(clock,input_a,input_b,select_s为输入节点,output_o,output_c为输出节点)。(操作为:右击 -【insert】-【insert node or bus】-【node finder】(pins=all;【list】)-【>>】-【ok】-【ok】)。任意设置clock,input_a,input_b,select_s的输入波形…点击保存按钮保存。(操作为:点击name(如:clock))-右击-【value】-【count】(如设置binary;start value=0;end value=1;count every=10ns),同理设置name input_a,input_b,select_s(如0,1,5),保存)。然后【start simulation】,出name output_o,output_c的输出图。
5、功能仿真,即没有延迟的仿真,仅用来检测思路是否正确。

C并行加法器-串行进位加法器:

2个vhd文件,用来定义顶层实体,以及底层实体(全加器)
1个vwf文件,用来进行波形仿真,将验证的波形输入
1、 新建,编写源代码。
(1).选择保存项和芯片类型:【File】-【new project wizard】-【next】(设置文件路径+设置project name为【C:\Users\lenovo\Desktop\笔记\大二上\数字电路\实验课\实验三\并行加法器】)-【next】(设置文件名【goodluck】)-【next】(设置芯片类型为【cyclone-EP1CT144C8】)-【finish】
(2).新建:【file】-【new】(【design file-VHDL file】)-【OK】
2、写好源代码,保存文件(goodluck.vhd)。
3、编译与调试。确定源代码文件为当前工程文件,点击【processing】-【start compilation】进行文件编译。编译结果有一个警告,文件编译成功。
4、波形仿真及验证。新建一个vector waveform file。按照程序所述插入jiashu1,jiashu2,jinwei,jieguo四个节点(jiashu1,jiashu2为输入节点,jinwei,jieguo为输出节点)。(操作为:右击 -【insert】-【insert node or bus】-【node finder】(pins=all;【list】)-【>>】-【ok】-【ok】)。任意设置jiashu1,jiashu2的输入波形…点击保存按钮保存。(操作为:点击name(如:jiashu1))-右击-【value】-【count】(如设置binary;start value=0;end value=1;count every=10ns),同理设置name jiashu2(如0,1,5),保存)。然后【start simulation】,出name jinwei,jieguo的输出图。
5、功能仿真,即没有延迟的仿真,仅用来检测思路是否正确。

D并行加法器-快速进位加法器:

2个vhd文件,用来定义顶层实体,以及底层实体(全加器)
1个vwf文件,用来进行波形仿真,将验证的波形输入
1、 新建,编写源代码。
(1).选择保存项和芯片类型:【File】-【new project wizard】-【next】(设置文件路径+设置project name为【C:\Users\lenovo\Desktop\笔记\大二上\数字电路\实验课\实验三\并行加法器】)-【next】(设置文件名【goodluck】)-【next】(设置芯片类型为【cyclone-EP1CT144C8】)-【finish】
(2).新建:【file】-【new】(【design file-VHDL file】)-【OK】
2、写好源代码,保存文件(goodluck.vhd)。
3、编译与调试。确定源代码文件为当前工程文件,点击【processing】-【start compilation】进行文件编译。编译结果有一个警告,文件编译成功。
4、波形仿真及验证。新建一个vector waveform file。按照程序所述插入input_x,input_y,output_s,output_c四个节点(input_x,input_y为输入节点,output_s,output_c为输出节点)。(操作为:右击 -【insert】-【insert node or bus】-【node finder】(pins=all;【list】)-【>>】-【ok】-【ok】)。任意设置input_x,input_y的输入波形…点击保存按钮保存。(操作为:点击name(如:input_x))-右击-【value】-【count】(如设置binary;start value=0;end value=1;count every=10ns),同理设置name input_y(如0,1,5),保存)。然后【start simulation】,出name output_s,output_c的输出图。
5、功能仿真,即没有延迟的仿真,仅用来检测思路是否正确。

E运算器:

8个vhd文件,一个用来定义顶层实体,七个用来定义底层实体
1个vwf文件,用来进行波形仿真,将验证的波形输入
1、 新建,编写源代码。
(1).选择保存项和芯片类型:【File】-【new project wizard】-【next】(设置文件路径+设置project name为【C:\Users\lenovo\Desktop\笔记\大二上\数字电路\实验课\实验三\运算器】)-【next】(设置文件名【goodluck】)-【next】(设置芯片类型为【cyclone-EP1CT144C8】)-【finish】
(2).新建:【file】-【new】(【design file-VHDL file】)-【OK】
2、写好源代码,保存文件(goodluck.vhd)。
3、编译与调试。确定源代码文件为当前工程文件,点击【processing】-【start compilation】进行文件编译。编译结果有一个警告,文件编译成功。
4、波形仿真及验证。新建一个vector waveform file。按照程序所述插入clock,en,input_a,input_b,input_c,signal_s,output_c,output_r1,output_r2九个节点(clock,en,input_a,input_b,input_c,signal_s为输入节点,output_c,output_r1,output_r2为输出节点)。(操作为:右击 -【insert】-【insert node or bus】-【node finder】(pins=all;【list】)-【>>】-【ok】-【ok】)。任意设置clock,en,input_a,input_b,input_c,signal_s的输入波形…点击保存按钮保存。(操作为:点击name(如:clock))-右击-【value】-【count】(如设置binary;start value=0;end value=1;count every=10ns),同理设置name en,input_a,input_b,input_c,signal_s(如0,1,5),保存)。然后【start simulation】,出name output_c,output_r1,output_r2的输出图。
5、功能仿真,即没有延迟的仿真,仅用来检测思路是否正确。

2、实验过程
A.全加器实验
a.源代码


代码解释:
一个实体的vhdl文件,实体中主要执行数据流赋值操作。
b.逻辑图

c.波形仿真

波形设计解释:

结果分析及结论
符合输出结果,正确

B.串行加法器
a.源代码

第一个,触发器

第二个,存储器

第三个,全加器

第四个,顶层实体


代码解释:
四个实体的vhdl文件,第一个实体进行的是定义了一个触发器,第二个实体是定义了一个存储器,第三个实体是定义了一个全加器,第四个通过时钟信号,将原始数据存储在两个存储器中,通过重复调用全加器来实现四位二进制数加法
b.逻辑图

c.波形仿真

波形设计解释:
通过时钟信号clock,实现输入数据,以及对输入的原始数据的存储,并通过重复调用全加器对原始数据实现相加
结果分析及结论
第一个时钟周期,模拟开机,无操作
第二个时钟周期,将原始数据存入四位存储器
第三个时钟周期到第六个时钟周期,从四位数的最低位开始,对每位进行相加,并将结果导入
第一次相加为1+0,下位进位为0,产生进位为0,结果为1,输入,故第三个周期输出1000
第二次相加为1+1,下位进位为0,产生进位为1,结果为0,输入,故第四个周期输出0100
第三次相加为0+1,下位进位为1,产生进位为1,结果为0,输入,故第三个周期输出0010
第四次相加为1+1,下位进位为1,产生进位为1,结果为1,输入,故第四个周期输出1001
加法结束

C.并行加法器—串行进位
a.源代码

第一个文件

第二个文件

代码解释:
底层文件为一个一位全加器,顶层实体是通过对全加器的迭代电路实现四位的相加
b.逻辑图

c.波形仿真

波形设计解释:
对jiashu1和jiashu2进行相加
结果分析及结论:
对0110和0001进行相加,手动验算结果为0111,无进位,结果正确

D.并行加法器—快速进位
a.源代码

第一个文件

第二个文件


代码解释:
底层文件为一个一位全加器,顶层实体是通过对全加器的迭代电路实现四位的相加
b.逻辑图

c.波形仿真

波形设计解释:
对input_x和input_y进行相加
结果分析及结论:
对1100和0000进行相加,手动验算结果为1100,无进位,结果正确

D.并行加法器—快速进位
a.源代码

第一个文件(存储器)

第二个文件(取反器)

第三个文件(加法器)


第四个文件(减法器)


第五个文件(取和器)

第六个文件(逻辑右移)

第七个文件(逻辑左移)

第八个文件(顶层实体)




代码解释:
通过顶层实体对七个底层实体(功能块)进行调用,通过s决定调用的是哪个模块
b.逻辑图
c.波形仿真

波形设计解释:
通过r1和r2的值选择相应的a,b,c寄存器,并通过s选择执行特定的操作
结果分析及结论:
第一个时钟周期,将原始数据存入a,b,c三个寄存器中
第二个时钟周期,输入10010111,按照表格应执行a+c的操作,在下降沿执行,输出结果为r1=10010001,r2=10101011,有进位,正确
第三个时钟周期,输入01100110,按照表格应执行a-b的操作,在下降沿执行,输出结果为r1=01111001,r2=01101101,无进位,正确
第四个时钟周期,输入11101011,按照表格应执行b&c的操作,在下降沿执行,输出结果为r1=00101001,r2=10101011,无进位,正确
第五个时钟周期,输入01010100,按照表格应执行!a的操作,在下降沿执行,输出结果为r1=00011001,r2=XXXXXXXX,无进位,正确
第六个时钟周期,输入10101011,按照表格应执行b的逻辑右移操作,在下降沿执行,输出结果为r1=00110110,r2=XXXXXXXX,无进位,正确
第七个时钟周期,输入00110110,按照表格应执行a的逻辑左移操作,在下降沿执行,输出结果为r1=01010110,r2=10101011,无进位,正确

数字电路实验(三)——加法器、运算器相关推荐

  1. 实验三 移位运算器实验

    系列文章目录 目录 系列文章目录 一.实验目的 二.实验原理 三.实验接线 四.实验步骤 第一部分--移位器功能的检验 第二部分--应用移位器做0011*0101乘法运算 五.实验结论 一.实验目的 ...

  2. 计算机组成原lta,计算机组成原理实验三运算器

    <计算机组成原理实验三运算器>由会员分享,可在线阅读,更多相关<计算机组成原理实验三运算器(11页珍藏版)>请在人人文库网上搜索. 1.实验三:八位运算器组成实验一:实验目的: ...

  3. 计算机组成原理脱机运算器实验数据,实验三:脱机运算器实验报告.pdf

    大连理工大学大连理工大学 本科实验报告本科实验报告 课程名称 计算机组成原理实验 学院 系 软件学院 专 业 软件工程 班 级 0907 英 学 号 200892497 学生姓名 刘云伟 2011 年 ...

  4. 计算机组成原理实验一报告——运算器

    一.实验目的 了解和掌握Am2901运算器的组成结构和工作原理: 认识和掌握TEC-2机运算器的组成和工作原理: 认识和掌握TEC-2机运算器相关控制信号的含义和使用方法: 二.实验原理 Am2901 ...

  5. 计算机组成原理赖晓铮课后答案,计算机组成原理实验 2.5 运算器 赖晓铮.ppt

    文档介绍: 计算机组成原理实验系列一.总线与寄存器二.进位加法器三.比较器(仲裁器)四.计数器五.运算器六.存储器七.时序发生器八.微程序控制器九.硬布线控制器赖晓铮博士华南理工大学******@sc ...

  6. 合肥学院计算机原理,合肥学院计算机组成原理实验三-20210415130709.docx-原创力文档...

    精品文档 精品文档 PAGE 精品文档 合肥学院计算机组成原理实验三 --------------------------------作者:------------------------------ ...

  7. xmm1是什么器件_数字电路实验指导书

    实验一门电路逻辑功能测试及组成其他门电路,一.实验目的,1.掌握基本门电路逻辑功能测试方法,2.掌握用与非门组成其他逻辑门的方法,3.掌握Multisim元器件库中查找常用元件的方法,二.实验设备及元 ...

  8. 数字电路实验(四)——寄存器、计数器及RAM

    1.实验步骤: A.指令计数器PC: 1个vhd文件,用来定义顶层实体 1个vwf文件,用来进行波形仿真,将验证的波形输入 1.新建,编写源代码. (1).选择保存项和芯片类型:[File]-[new ...

  9. 实验三 16位机指令系统实验报告

    实验三 16位机指令系统实验报告 一.实验目的 1.学习和了解实验平台十六位机监控命令的用法: 2.学习和了解实验平台十六位机的指令系统: 3.学习简单的实验平台十六位机汇编程序设计 实验内容 1.使 ...

  10. 计算机组成原理实验写出下列微指令编码,计算机组成原理实验三.doc

    计算机组成原理实验三.doc (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 上海大学 计算机学院评分<计算机组成原理实验> ...

最新文章

  1. codeforces 501 C,D,E
  2. Spanning-tree Potocol(整理)
  3. Exchange队列优先级介绍和配置
  4. 央视《新闻联播》正式入驻快手平台
  5. 马云创造的就业机会多还是毁掉的就业机会多?
  6. gradle入门(1-7)eclipse和gradle集成插件的安装和使用
  7. mysql学习day04
  8. 【codevs1295】N皇后问题
  9. python图片转视频加特效_使用Python opencv实现视频与图片的相互转换
  10. 软件工程基础-结对项目Ⅰ-2014
  11. 揭穿病毒和木马的隐藏手段
  12. 对话诊断(X)2021Neurocomputing-Heterogeneous graph reasoning for knowledge-grounded medical DS
  13. 当按下Alt-F4时阻止关闭Outlook,使其最小化(翻译)
  14. playm3u8插件 android,Playm3u8插件下载|Playm3u8插件 免费版_最火软件站
  15. 行车记录仪数据被删除了怎么恢复?解决方法分享
  16. python爬取微博热搜榜
  17. 清扫重复文件夹的数据刷
  18. 出门忘带身份证?那就试试这几款好用软件
  19. esxi服务器更换硬盘,ESXi下磁盘分区删除步骤详解
  20. 更换内存条导致windows启动失败,报错信息:windows无法验证此文件的数字签名,2018.11;

热门文章

  1. Python+networkx 网络可视化方法
  2. VEH帮你定位程序崩溃地址
  3. 将图像上雨水去除的四种主流方法
  4. H5大番薯(源码+数据库脚本)
  5. 软件工程——软科中国大学专业排名
  6. CSS知识全面汇总——速查手册
  7. Kubuntu 安装fcitx 5
  8. 面试之防火墙软硬件架构
  9. 大数据—价值体现在AI、BI、CI和DI
  10. 线上问题:nginx日志打印时间问题