一、实验目的

1.掌握简单的VHDL程序设计。

2.掌握用VHDL对基本组合逻辑电路的建模。

二、实验原理

1. 数据选择器(Multiplexer)

在数字系统设计时,需要从多个数据源中选择一个, 这时就需要用到多路选择器。以2选1多路选择器为例,在控制端的作用下可以从2路并行的输入信号中选择一路信号作为输出。

2.全加器 (Adder)

加法器是最基本的运算单元。加法器中最小的单元是一位全加器,一位全加器(Adder)的真值表如下所示:

3.四选一选择器

真值表如图所示:

三、实验内容

1、一位全加器

(1)实验代码:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;ENTITY lab3 IS
PORT  (a,b,ci: IN BIT;S,CO: OUT BIT
);
END;ARCHITECTURE f_add OF lab3 ISBEGIN s<=(a XOR b)XOR ci;              co<=((a XOR b)AND ci)OR(a AND b);
END;

(2)波形仿真图:

分析:

  • 前8个intervals按真值表设值,输出结果符合真值表;
  • 后面的intervals为随机设值,输出结果也符合真值表。
  • s的结果为a、b全加的结果,ci为进位标志,从仿真波形可以看出,s满足两个二进制数a、b相加,并且输出co加法进位,符合实验预期的逻辑功能。

2、思考题:四选一多路选择器

(1)实验代码

library ieee;
use ieee.std_logic_1164.all;entity mux1_4 is
port(a,b,c,d: in std_logic;s1,s0:   in std_logic;y:      out std_logic);
end mux1_4;architecture one of mux1_4 is
signal sel: std_logic_vector(1 downto 0);
beginsel <= s1&s0;with sel selecty<= a when "00",b when "01",c when "10",d when "11",'X' when others;
end one;

(2)波形仿真图

分析:

由图中波形可以明显地看出,

当s0=0且s1=0时,y=a;当s1=0且s0=1时,y=b;

当s1=1且s0=0时,y=c;当s1=1且s0=1时,y=d。

符合真值表的逻辑功能。

四、实验总结

在本次实验中,完成了一位全加器和四选一多路选择器的文本层次设计和波形仿真,熟悉了全加器和数据选择器的逻辑功能,同时复习了数电里的基础知识,对EDA软件功能的了解程度有所加深。并且,初步掌握以文本编辑的方式设计电路的方法,学习了VHDL语言中库,实体,结构体等基本语法的使用。

错误整理:实体的命名要与实体所在的.vhd文件名保持一致。

VHDL实验三:一位全加器、四选一多路选择器相关推荐

  1. 四选一多路选择器MUX41a

    四选一多路选择器的代码如下,保存路径不能有中文!! 文件名保存为模块名. (Cyclone III-----EP3C40Q240C8) 编译无错误后: File-New-VMF Edit--Inser ...

  2. 利用Block Design在Vivado实现三位四选一多路选择器

    一.要求:利用Block Design设计一个三位 4 选 1 多路选择器电路 二.实验原理: 真值表: Block Design原理图 三.设计过程 Block Design 将自己编写的与门,非门 ...

  3. Verilog练习笔记(四选一多路选择器)

    制作一个四选一的多路选择器,要求输出定义上为线网类型 状态转换: d0    11 d1    10 d2    01 d3    00 信号示意图: 波形示意图: 输入描述: 输入信号   d1,d ...

  4. FPGA初识:四选一多路选择器实例练习

    一.项目创建 1.creat project2.确认项目名和项目位置,"√"确认生成子目录 3.生成RTL项目文件,且"√"不添加特殊源文件 4.根据上面的筛选 ...

  5. VHDL三输入与门、四选一复用器

    1.三输入与门 --定义头文件 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;--定义实体,定义输入和输出 ENTITY A3 ISPORT(a,b,c:IN S ...

  6. VHDL四选一数据选择器和基本触发器的设计

    主要内容: 本设计主要是利用超高速硬件描述语言VHDL对四选一数据选择器和基本触发器电路进行编程实现. 四选一数据选择器应该具备的功能:在选择信号的作用下,从输入通道中选择某一个通道的数据作为输出. ...

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

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

  8. 四选一多路开关电路描述

    //四选一多路开关MUX4-1 module MUX4-1 (EN ,IN0 ,IN1 ,IN2 ,IN3 ,SEL ,OUT ); input EN ; //使能端 input [7:0] IN0 ...

  9. 跟着小梅哥初学FPGA ,vivdao开发平台,二选一多路选择器。

    今天正式开始自己的FPGA自学之路,由于导师项目需要,xilinx ZYNQ 7系列的板子,vivado软件平台进行开发,所以自己也直接学习vivado软件开发的板子,我自己学习所用的开发板是xili ...

  10. FPGA _Verilog HDL_8选一多路选择器设计

    一.题目 熟悉QuartusII软件,并设计一个8选1多路选择器,并完成其仿真波形图(贴图). 二.源代码 //-------------------------------------------- ...

最新文章

  1. strut2服务器与android交互数据,用Android搭建客户端 手机和服务器交互开发
  2. SQL Server创建视图——视图的作用
  3. 关于mysql内存管理_MYSQL内存管理及优化
  4. SAP Spartacus auth.service.ts里的user调用触发的源代码位置
  5. java 线程同步condtion_Java:多线程,使用同步锁(Lock)时利用Condition类实现线程间通信...
  6. 智能音箱音效哪个好_华为支浩:音质好是底线,AI基本功扎实让智能音箱不再是“玩具”...
  7. 下行物理信道rs_这些CH结尾的LTE物理信道傻傻分不清楚?快来看这篇文章!
  8. 斐讯音箱控制扫地机器人_轻松解决家务难题 斐讯大能扫地机器人X3
  9. ios12怎么滑屏解锁_iOS12.2 越狱来袭,又是一波秀
  10. 小程序生成海报(java后端)
  11. 设置 Google Analytics(分析)全局网站统计代码
  12. 去掉vue中万恶的eslint
  13. 读研究生时,还有【暑假】么?
  14. 币图网以太坊开发实例_去中心化概念模型与架构设计
  15. RT-Thread Studio学习(十一)IIC
  16. 2020年chx的计算机保研之路系列(3)——中科院计算所(获得offer)
  17. Unity 中 print 和 Debug.Log 的区别
  18. openGL,glut库安装(vs2013)
  19. 韦东山数码相框项目进度一
  20. USB扫描枪设置流程 扫描枪使用

热门文章

  1. C++二叉树遍历递归算法
  2. qPCR引物设计经验教程
  3. 通用版工业制程SPC管理系统,源代码分享
  4. snipaste如何滚动截图_一文解决几乎所有截图需求:我多年来用过的优秀截图软件和插件推荐...
  5. 数字电子技术基础(九):竞争—冒险现象成因及消除
  6. JDBC连接池连接超时失效问题
  7. 海康威视监控视频,萤石云免费版四路并发访问限制绕过
  8. Xshell5免费版安装使用说明
  9. 2020-8-31 David Pozar 微波工程读书笔记 (三) 173115
  10. java类转为er图_ER图,以及转化成关系模式