当前位置:文档之家› VHDL实验 4选1多路选择器

VHDL实验 4选1多路选择器

VHDL实验  4选1多路选择器
VHDL实验  4选1多路选择器

VHDL实验报告

学院: 理学院专业:电子信息科学与技术班级:电科091 姓名学号实验组实验

时间12.23

指导教

李良荣成绩

实验

项目

名称

4选1多路选择器

实验目的

1、通过4选1多路选择器的设计,熟悉ALTERA公司EDA设计工具软件QuartusII 5.1的VHDL文本设计流程。

2、熟悉文本输入及仿真步骤。掌握硬件描述语言和自顶向下的电子设计;

3、掌握VHDL的基本语法和书写格式;掌握QUARTUS Ⅱ的使用和调试方法;

4、设计电路,实现电路的4选1多路选择器选择功能,并下载运行。

5、初步了解可编程器件设计的全过程。

实验原理

选择器常用于数字信号的切换,四选一选择器可以用于4路信号的切换。四选一选择器有4个输入端input(0)-input(3)、2个信号控制端a,b 及一个信号输出端y。当a,b输入不同的选择信号时,就可以使input(0)-input(3)中的一个输入信号与输出y端口接通。

用拨码开关作四位数据及两位控制端的输入,LED作输出,通过拨码开关组成控制输入端s1和s0不同组合,观察LED与数据输入端a,b,c,d的关系,验证4选一数据选择器设计的正确性。

仪器1 、PC机,1台

2 、QuartusII系统

实验内容LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY mux4a1 IS

PORT(input:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

a,b:IN STD_LOGIC; --输入信号

y:OUT STD_LOGIC); --输出信号

END ENTITY mux4a1;

ARCHITECTURE rtl OF mux4a1 IS

SIGNAL sel:STD_LOGIC_VECTOR(1 DOWNTO 0); BEGIN

sel<=b&a; --并置操作,获得二维矢量数据类型 PROCESS(input,sel)IS

BEGIN

IF (sel="00")THEN

y<=input(0);

ELSIF(sel="01")THEN

y<=input(1);

ELSIF(sel="10")THEN y<=input(2);

ELSE y<=input(3);

END IF;

END PROCESS; PROCESS进程语句结束END ARCHITECTURE rtl;

1.实验源程序如下:

8

2. 创建文件夹,保存文件。

3.选择芯片为‘EP1C6Q240C8’。

4. 完成设置,显示文件信息。从显示中我们看到项目和实体名为:MUX4A1,其中只有一个文件,芯片为Cyclone系列的

EP1C6Q240C8。

5.运行通过

6.运行后的RTL视图

7.波形分析

(1)添加文件和引脚。

(2)设置输入信号。可以对输入进行设置.

结果分析:①当b='0',a='0'时候,选择出input(0),②当b='0',a='1',时候,选择出input(1)③当b='1',a='0'时候,选择

出input(2),④当b='1',a='1'时候,选择出input(3),符合程序结果

8.配置引脚

⑴选择“Assignments”菜单的“Pins”命令,打开引脚编辑窗口。四选

一数据选择器的引脚分配如下:

(2)在设置完引脚后,再次对程序进行编译。这样就把程序与FPGA的引脚联系起来,这样才能将程序下载到FPGA 开发系统中进行运行仿真。下载到FPGA中,并验证程序的运行结果。

(3)配置硬件驱动为“ByteBlassterMV[LPT1]”,然后“start”下载,到下载为100%即可完成和对程序进行试验。

9.实验结果

实验心得体会

1. 通过实验,我学会了QuartusⅡ的VHDL文本设计流程的基本过程,了解简单组合电路和多层次电路的设计,仿真和硬件测试。初步了解了Quartus Ⅱ的使用.但是还不熟练。通过对开始时操作不熟悉,,花了很多的时间,但是通过自己的努力,仿真结果和预期基本一致,电路设计正确最终完成了实验。尤其对程序进行仿真、生成RTL图、用波形文件对程序进行分析和下载到FPGA 中进行硬件仿真等更有进一步的认识。

2.应用VHDL的过程中让我真正领会到了其并行运行与其他软件(C语言)顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。

3. 另外 VHDL 语言是非常严谨的语言,并且是实现电路设计的另一条途径。虽然非常抽象,但是可移植性较图像要强很多,也是一个非常强大的工具语言。有关电路的设计好有很多的东西值得我继续认真学习。

4.通过本次实验,发现了自己的很多不足,自己在知识上的漏洞,看到了自己实践经验还比较缺乏,理论联系实际还不够,还有待加强锻炼,同时也体会到实验课的重要性,通过做实验,把理论知识和实际联系起来,培养操作能力,灵活运用课本知识,这不仅仅是学习新知识新方法的好机会,也

是对所学知识的灵活运用,让自己明白自己在知识上的漏洞及不足。

了(本次试验(还

见签名:年月日

四选一数据选择器源程序 Library ieee; Use ieee.std_logic_1164.all; Entity mux4_2 is Port (din: in std_logic_vector(3 downto 0); a,b : in std_logic; S: out std_logic); End; Architecture with_when of mux4_2 is Signal sel : std_logic_vector(1 downto 0); Begin Sel<=a&b; S<=din(0) when sel=“00”else din(1)when sel= “01” else din(2)when sel= “10” else din(3);---见程序说明。 Architecture with_select of mux4 is Signal sel :std_logic_vector(1 downto 0); begin sel<=a&b; with sel select s<=din(0) when “00”, s<=din(1) when “01”,

s<=din(2) when “10”, s<=din(3) when “11”, …Z?when others; End; 程序说明: 1.本程序中含有两个结构体,with_when和with_select,max+plus软 件系统自动执行几何位置处于最后的机构体with_select. 2.结构体with_when是用并行条件信号赋值语句描述四选一数据选 择器。注意,最后一个输出din(3)不含有when子句;在s表达式中只有一个分号(;)。 3.结构体with_select.是用并行选择信号赋值语句描述四选一数据选 择器。注意,选择信号赋值语句中选择条件与case语句相似,不允许条件重叠和涵盖不全。由于a,b的值除了‘1’‘0’外,还有其他7个值,所以要用when others代表其他值,以穷尽所有可能值。 4.同一个设计任务,可以用不同的语句进行描述, 5.本程序中din为输入4位矢量信号。 实例2 3线----8线译码器 一、设计任务 描述一个3线-8线译码器,使能端为g1、g2a、g3b,地址选择端为a、 b、c,输出端为总线y。 二、算法设计

《创新实验》实验报告 —基于VHDL的编程和硬件实现

一、实验目的 1.熟悉和掌握硬件描述语言VHDL的基本语法及编写; 2.掌握软件Xilinx ISE 10.1的使用; 3.熟悉SDZ-6电子技术实验箱的使用; 4.了解节拍脉冲发生器等基本电路的实现; 5.了解八位二进制计数器的功能与设计; 6.学习键盘和七段数码管显示的控制和设计。 二、实验内容 1.Xilinx ISE 10.1软件的使用; 2.节拍脉冲发生器等基本电路的实现; 3.八位二进制计数器的实现 4.键盘扫描及显示的实现 三、实验器材 1、PC机 2、SDZ-6电子技术实验箱 3、正负5V电源 4、I/O接口线 四、软件的使用 在安装Xilinx10.1软件时,需要一个ID号,其实这个ID号是可以重复使用的,几个同学在官网注册后就可以共享ID号了。 安装完成之后就可以使用这个软件编写相应的VHDL的程序。 1.新建工程 File—>New Project 弹出下面的对话框 输入工程名后单击Next。然后根据本实验的实验箱进行以下设置。

以后的步骤一般都是单击Next(有些资料上会介绍有些这些步骤的具体功能,但对于本实验不必用到),最后单击Finish,完成新建一个工程。在窗口的左边会出现刚刚新建的工程,如下: 2.新建一个VHDL的源文件。 在上图中,右击工程选择New Source ,弹出如下对话框。

在对画框的左边选择VHDL Module,输入文件的名字(改名字最好是你定义的实体的名字)。单击Next。出现下面的对话框。 该对话框主要是对外部端口的编辑。可以直接跳过,即单击Next,在源文件上编辑端口。然后在接下来的对话框中单击Finish。完成建立一个源文件。窗口右边就会出现刚才编辑的源文件。 3.编写和编译代码 将事先编好的代码复制到源文件里,然后保存文件。 选中左边的文件名,在窗体的左边出现如下编辑文档内容。

南通大学计算机科学与技术学院计算机数字逻辑设计 实验报告书 实验名组合逻辑电路数据选择器实验 班级_____计嵌151_______________ 姓名_____张耀_____________________ 指导教师顾晖 日期 2016-11-03

目录 实验一组合逻辑电路数据选择器实验 (1) 1.实验目的 (1) 2.实验用器件和仪表 (1) 3.实验内容 (1) 4.电路原理图 (1) 5.实验过程及数据记录 (2) 6.实验数据分析与小结 (9) 7.实验心得体会 (9)

实验三组合逻辑电路数据选择器实验 1 实验目的 1. 熟悉集成数据选择器的逻辑功能及测试方法。 2. 学会用集成数据选择器进行逻辑设计。 2 实验用器件和仪表 1、8 选 1 数据选择器 74HC251 1 片 3 实验内容 1、基本组合逻辑电路的搭建与测量 2、数据选择器的使用 3、利用两个 74HC251 芯片(或 74HC151 芯片)和其他辅助元件,设计搭建 16 路选 1 的电路。 4 电路原理图 1、基本组合逻辑电路的搭建与测量 2、数据选择器的使用

3、利用两个 74HC251 芯片(或 74HC151 芯片)和其他辅助元件,设计搭建 16 路选 1 的 电路。 5 实验过程及数据记录 1、基本组合逻辑电路的搭建与测量 用 2 片 74LS00 组成图 3.1 所示逻辑电路。为便于接线和检查,在图中要注明芯片编号及各引脚对应的编号。

图 3.1 组合逻辑电路 (2)先按图 3.1 写出 Y1、Y2 的逻辑表达式并化简。 Y1==A·B ·A =A + A·B=A + B Y2=B·C ·B·A = A · B+ B ·C (3)图中 A、B、C 接逻辑开关,Y1,Y2 接发光管或逻辑终端电平显示。(4)改变 A、B、C 输入的状态,观测并填表写出 Y1,Y2 的输出状态。 表 3.1 组合电路记录

EDA实验报告 学生姓名:asfmla;m 学号:eafvpa[cv专业班级:电子3班 组合电路设计 一、实验目的 熟悉quartusⅡ的VHDL文本设计全过程,学习简单组合电路的设计、多层次电路设计、仿真。 二、实验内容 实验内容:首先利用quartusⅡ完成2选1多路选择器(例4-3)的文本编译输入(mux21a.vhd)和仿真测试等步骤,最后在实验系统上硬件测试,验证此设计的功能。将此多路选择器看成一个元件mux21a,利用元件例化语句描述成三选一,然后进行编译、综合、仿真。引脚锁定以及硬件下载测试。建议选实验电路模式5,用键1(PIO0)控制s0;用键2(PIO1)控制s1;a3、a2和a1分别接clock5、clock0和clock2;输出信号outy仍接扬声器spker。通过短路帽选择clock0接256HZ信号,clock5接1024HZ信号,clock2接8HZ信号。最后选行编译、下载和硬件测试实验。 三、实验器材 Quartus II软件。 四、设计思路/原理图 五、实验程序 实验内容1:二选一: library ieee; use ieee.std_logic_1164.all; entity mux21a is port(a,b: in std_logic; s: in std_logic; y: out std_logic); end entity; architecture dataflow of mux21a is begin

y<=a when s='0' else b; end architecture; 实验内容2:三选一 library ieee; use ieee.std_logic_1164.all; entity mux31a is port(a1,a2,a3: in std_logic; s0,s1: in std_logic; outy: out std_logic); end entity mux31a; architecture m31a of mux31a is component mux21a port( a,b: in std_logic; s: in std_logic; y: out std_logic); end component; signal tmp: std_logic; begin u1: mux21a port map(a=>a2,b=>a3,s=>s0,y=>tmp); u2: mux21a port map(a=>a1,b=>tmp,s=>s1,y=>outy); end architecture; 六、实验步骤 在E盘新建一个文件夹,用于存放工程。打开quartus,新建工程,然后选择新建VHDL 文件,命名为mux21a。在VHDL编辑窗口中输入实验程序后,进行编译、仿真;在实验一的基础上,新建VHDL文件,命名为mux31a。在VHDL编辑窗口中输入实验程序后,进行编译、综合、仿真;最后进行硬件测试。 七、仿真波形分析 二选一波形: 分析:当s=0时,y=a;当s=1时,y=b。 三选一综合图形及其波形

VHDL实验报告 60 庄炜旭实验三. 4位可逆计数器,4位可逆二进制代码-格雷码转换器设计 一.实验目的 学习时序电路的设计,仿真和硬件测试,进一步熟悉VHDL设计技术 1. 学习4位可逆计数器的设计 2. 学习4位可逆二进制代码-格雷码转换器设计 二.实验内容 设计4位可逆计数器,及4位可逆二进制代码-格雷码转换器,并仿真,下载。 [具体要求] 1.4位可逆计数器 a)使用CLOCK_50作为输入时钟,其频率为50MHz(对于频率大于50Hz的闪烁, 人眼会看到连续的光),因而,对其进行225的分频后,再用于时钟控制。(可 利用实验一) b)使用拨码开关SW17作为模式控制,置‘1’时为加法计数器,置‘0’时为减 法计数器,同时使用LEDR17显示SW17的值。 c)使用KEY3作为异步复位开关(按下时为0,不按为1),当为加法计数器时, 置“0000”,当为减法计数器时,置“1111”。 d)使用LEDR3,LEDR2,LEDR1,LEDR0作为转换后的输出结果显示,LEDR3为高 位,LEDR0为低位。 2.4位可逆二进制代码――格雷码转换器 a)使用拨码开关SW17作为模式控制,置‘1’时为二进制代码―>格雷码转换, 置‘0’时为格雷码―>二进制代码,同时使用LEDR17显示SW17的值。 b)使用拨码开关SW3, SW2, SW1, SW0作为输入的被转换数,SW3为高位,SW0 为低位。 c)使用LEDR3,LEDR2,LEDR1,LEDR0作为转换后的输出结果显示,LEDR3为高 位,LEDR0为低位。 三.管脚设定 SW[0]PIN_N25 SW[1]PIN_N26 SW[2]PIN_P25 SW[3] PIN_AE14 SW[17] PIN_V2 LEDR[0] PIN_AE23 LEDR[1] PIN_AF23 LEDR[2] PIN_AB21 LEDR[3] PIN_AC22 LEDR[17] PIN_AD12 KEY[3] PIN_W26

第八次实验报告 实验六 数据选择器 一、实验目的要求 1、 熟悉中规模集成电路数据选择器的工作原理与逻辑功能 2、 掌握数据选择器的应用 二、实验仪器、设备 直流稳压电源、电子电路调试器、T4153、CC4011 三、实验线路、原理框图 (一)数据选择器的基本原理 数据选择器是常用的组合逻辑部件之一,它有若干个输入端,若干个控制输入端及一个输出端。 数据选择器的地址变量一般的选择方式是: (1) 选用逻辑表达式各乘积项中出现次数最多的变量(包括原变量与反变量),以简 化数据输入端的附加电路。 (2) 选择一组具有一定物理意义的量。 (二)T4153的逻辑符号、逻辑功能及管脚排列图 (1)T4153是一个双4选1数据选择器,其逻辑符号如图1: 图1 (2) T4153的功能表如下表 其中D0、D1、D2、D3为4个数据输入端;Y 为输出端;S 是使能端,在S 是使能端,在 原SJ 符号

S =0时使能,在S =1时Y=0;A1、A0是器件中两个选择器公用的地址输入端。该器件的 逻辑表达式为: Y=S (1A 0A 0D +101D A A +201D A A +301A A A ) (3) T4153的管脚排列图如图2 图2 (三)利用T4153四选一数据选择器设计一个一位二进制全减器的实验原理和实验线路 (1)一位二进制全减器的逻辑功能表见下表: n D =n A n B 1-n C +n A n B 1-n C +n A n B 1-n C +n A n B 1-n C n C =n A n B 1-n C +n A n B 1-n C +n A n B 1-n C +n A n B 1-n C =n A n B 1-n C +n A n B +n A n B 1-n C (3)根据全减器的逻辑功能表设计出的实验线路图为图3: S 11D 3 1D 2 1D 1 1D 0 1Y

选多路选择器 部门: xxx 时间: xxx 整理范文,仅供参考,可下载自行编辑

EDA实验二4选1多路选择器设计实验 一、实验目的 进一步熟悉 QuartusII 的 VHDL 文本设计流程、组合电路的设计仿真和测试。 二、实验内容 实验内容一:根据4.1流程,利用 QuartusII 完成四选一多路选择器的文本编辑输入和仿真测试等步骤,给出仿真波 形。 b5E2RGbCAP 实验内容二:对 VHDL 不同描述方式的四选一多路选择器进行硬件实验,比较他们的特性。 三、实验记录 1.when-else语句设计的4选1多路选择器 a>.利用when-else语句的vhdl程序 library ieee。 use ieee.std_logic_1164.all。 entity mux41a is port( a,b,c,d,s0,s1:in std_logic。 y:out std_logic>。 end entity mux41a。 architecture one of mux41a is begin

y<= a when s0='0' and s1='0' else b when s0='1' and s1='0' else c when s0='0' an d s1='1' else d。 end architecture one。 备注 以上是when-else语句设计的4选1多路选择器的vhdl描述。程序中应该注意的有以下几点 A.一:实体的命名要和工程名相同,并且不能是中文的或者以数字 开头; B.二:when-else语句具有最高赋值优先级; b>.when-else语句设计的4选1多路选择器的RTL图 图<1)when-else语句设计的4选1多路选择器的RTL图 c>.when-else语句设计的4选1多路选择器的时序仿真波形图

实验2 数据选择器功能测试及设计应用 王玉通信工程 2012117266 一、实验目的 1.掌握中规模集成数据选择器的逻辑功能及测试方法。 2.掌握数据选择器的工作原理及使用方法。 二、实验仪器设备与主要器件 试验箱一个;双踪示波器一台;稳压电源一台。 双4选1数据选择器74LS153;8选1数据选择器74LS151和75LS251. 三、实验原理 能够实现从多路数据中选择一路进行传输的电路叫做数据选择器。数据选择器又称多路选择器,是中规模集成电路中应用非常广泛的组合逻辑部件之一。它是一种与分配器过程相反的器件。它有若干个数据输入端,D0,D1,D2,……,若干个控制输入端A0,A1……和一个或两个输出端Q(或Q非)。当控制输入码A0,A1……具有不同数据组合时,将选择组合码所对应的二进制数Dx输出。由于控制输入端的作用是选择数据输入端的地址,故又称为地址码输入端。 目前常用的数据选择器有2选1、4选1、8选1等多种类型。本实验主要熟悉4选1和8选1数据选择器。 四、实验内容与结果 1.测试74LS153的逻辑功能。 电路如下图: 测试结果为: A0 A1 s1s2Q1 Q2 * * 1 1 0 0 0 0 0 0 1D0 2D0 0 1 0 0 1D1 2D1 1 0 0 0 1D 2 2D2 1 1 0 0 1D3 2D3 2.用多路选择器设计实现一个8421-CD非法码检测电路。使得当输入端为非法码组合时输出1,否则为0.二进制数与BCD码的对应关系如下。写出函数Y的表达式,并进行化简,然后画出电路图,接线调试电路,用发光二极管显示输出结果,观察是否与表2-2-5相符。设

4选1多路选择器的VHDL描述 要求:THEN语句和CASE语句实现4选1多路选择器,其中选择控制信号s1和s0的数据类型为STD_LOGIC_VECTOR;当s1=?0?,s0=?0?;s1=?0?,s0=?1?;s1=?1?,s0=?0?和s1=?1?,s0=?1?时,分别执行y<=a、y<=b、y<=c、y<=d。 一、解法1:用IF_THEN语句实现4选1多路选择器 (1)程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS PORT (a,b,c,d: IN STD_LOGIC; s0: IN STD_LOGIC; s1: IN STD_LOGIC; y: OUT STD_LOGIC); END ENTITY mux41; ARCHITECTURE if_mux41 OF mux41 IS SIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据BEGIN s0s1<=s1&s0; --s1相并s0,即s1与s0并置操作 PROCESS(s0s1,a,b,c,d) BEGIN IF s0s1 = "00" THEN y <= a; ELSIF s0s1 = "01" THEN y <= b; ELSIF s0s1 = "10" THEN y <= c; ELSE y <= d; END IF; END PROCESS; END ARCHITECTURE if_mux41; (2)编译的结果如下:

编译报告: 二、解法2:用CASE语句实现4选1多路选择器(1)程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS PORT (a,b,c,d: IN STD_LOGIC;

实验二 4选1数据选择器的设计 实验学时:2学时 实验类型:设计 实验要求:必做 一、实验目的 通过实验让学生掌握组合逻辑电路的EDA原理图输入设计法,通过电路的仿真和硬件验证,让学生进一步了解4选1数据选择器的功能。 二、实验原理 数据选择器又叫“多路开关”。数据选择器在地址码(或叫选择控制)电位的控制下,从几个数据输入中选择一个并将其送到一个公共的输出端。数据选择器的功能类似一个多掷开关。数据选择器为目前逻辑设计中应用十分广泛的逻辑部件,它有2选1、4选1、8选1、16选1等类别。数据选择器的电路结构一般由于活门阵列而成,也有用传输门开关和门电路混合而成的。 图1 4选1数据选择器原理图 图1是一个4选1数据选择器,d3—d0是数据输入端,s1和s0是控制输入端,y是4选1数据输出端。 三、实验内容 设计并实现一个4选1数据选择器,要求根据原理图写出它的逻辑关系,并利用开发工具软件对其进行编译和仿真,最后通过实验开发系统对其进行硬件验证。

四、实验步骤 1)在Maxplus2的图形编辑方式下,从prim元件库中调出4选1数据选择器电路所需要的元件。并按照图1所示的原理电路,完成4选1数据选择器原理图的输入设计。 2)保存好原理图文件,以为文件名保存在工程目录中。执行Compiler命令对设计文件进行编译。执行Create Default Symbol命令,可为4选1数据选择器生成一个元件符号。 3)在波形编辑方式下,编辑的波形文件,并完成输入信号d3,d2,d1和d0,控制信号s1和s0电平的设置。波形文件编辑结束后以为波形文件名存盘。执行仿真器Simulator命令,仿真开始,观察仿真波形进行设计电路的功能验证。 五、实验结果 1. 4选1数据选择器的逻辑功能及真值表 2.仿真波形

硬件描述语言期末实验报告 题目:硬件描述语言实现秒表功能 姓名xxxx 学号xxxxxxxxxx 年级专业xxxxxxxxxxxxx 指导教师xxxx 2012年6月20日

河北大学本科生VHDL硬件实验论文(设计) 硬件描述语言实现秒表功能 摘要 应用VHDL语言设计数字系统,很多设计工作可以在计算机上完成,从而缩短了数字系统的开发时间。我们尝试利用VHDL为开发工具设计数字秒表。 秒表的逻辑结构较简单,它主要由十进制计数器、六进制计数器、数据选择器、和显示译码器等组成。在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲,除此之外整个秒表还需有一个启动信号,暂停信号和一个清零信号,以便秒表能随意停止及启动。 关键词:VHDL语言数字秒表时序仿真图

目录 一、实验目的 (1) 二、硬件要求 (1) 三、引脚说明 (1) 四、模块介绍 (2) 4.1.计数器(六、十进制) (2) 4.2.蜂鸣器 (2) 4.3.译码器 (3) 4.4.控制器 (4) 五、整体连接图 (5) 六、实验结果 (6) 七、实验总结 (6) 八、谢辞 (7) 九、附录 (7)

一实验目的 学习使用VHDL语言,以及EDA芯片的下载仿真。 二硬件要求 (1)主芯片EPF10K10LC84-4。 (2)蜂鸣器。 (3)8位八段扫描共阴极数码显示管。 (4)二个按键(暂停,开关)。 三引脚说明 3.1引脚设置 3.2信号说明 signal q:std_logic_vector(3 downto 0); --q是用于分频的信号。 signal state: std_logic_vector(3 downto 0); --state为状态信号,state为1时为暂停记录状态,为0时为正常显示计数状态。signal led: std_logic_vector(3 downto 0); --led为数码管扫描信号,通过对d1~d6的选择使数码管发光。

实验二数据选择器及其应用 一、实验原理 数据选择器又叫“多路开关”。数据选择器在地址码(或叫选择控制)电位控制下,从几个数据输入中选择一个并将其送到一个公共的输出端。数据选择器又叫“多路开关”。数据选择器在地址码(或叫选择控制)电位的控制下,从几个数据输入中选择一个并将其送到一个公共的输出端。数据选择器的功能类似一个多掷开关,如图4-1所示,图中有四路数据D0~D3,通过选择控制信号A1、A0(地址码)从四路数据中选中某一路数据送至输出端Q。 图4-1 4选1数据选择器示意图图4-2 74LS151引脚排列 数据选择器为目前逻辑设计中应用十分广泛的逻辑部件,它有2选1、4选1、8选1、16选1等类别。 数据选择器的电路结构一般由与或门阵列组成,也有用传输门开关和门电路混合而成的。

二、实验目的 1、掌握中规模集成数据选择器的逻辑功能及使用方法; 2、学习用数据选择器构成组合逻辑电路的方法。 三、实验设备与器件 1、+5V直流电源 2、逻辑电平开关 3、逻辑电平显示器 4、74LS151(或CC4512) 74LS153(或CC4539) 四、实验内容 1、测试数据选择器74LS151的逻辑功能。 接图4-7接线,地址端A2、A1、A0、数据端D0~D7、使能端S接逻辑开关,输出端Q接逻辑电平显示器,按74LS151功能表逐项进行测试,记录测试结果。 图4-7 74LS151逻辑功能测试

2、测试74LS153的逻辑功能。 测试方法及步骤同上,记录之。 逻辑功能见下表: 3、用8选1数据选择器74LS151设计三输入多数表决电路。 1)写出设计过程 有三个人进行表决,当其中任意两个人赞同时,输出为真,否则输出为假。真值表如下:

四选一选择器的VHDL程序实现及仿真 一、四选一选择器的基本功能描述 选择器常用于信号的切换,四选一选择器常用于信号的切换,四选一选择器可以用于4路信号的切换。四选一选择器有四个输入端input(0)~ input(3),两个信号选择端a和b及一个信号输出端y。当a、b输入不同的选择信号时,就可以使input(0)~ input(3)中某一个相应的输入信号与输出y端接通。例如,当a=b=“0”时,input (0)就与y接通。 四选一电路的逻辑功能真值表如下图所示: 我们可以根据上面的逻辑真值表,设计四选一电路系统的VHDL 源程序,并进行程序的编译和仿真。 二、编写VHDL源程序 下面为四选一选择器的VHDL源程序: 四选一选择器VHDL源程序如下: LIBRARY IEEE; ***库的调用***

USE IEEE.STD_LOGIC_1164.ALL; ***库的调用*** ENTITY mux4 IS ***实体定义*** PORT (input:IN STD_LOGIC_VECTOR(3 DOWNTO 0); ***输入管脚的定义*** a,b:IN STD_LOGIC; ***输入管脚的定义*** y:OUT STD_LOGIC ); ***输出管脚的定义*** END mux4; ARCHITECTURE rtl OF mux4 IS ***结构的定义*** SIGNAL sel:STD_LOGIC_VECTOR (1 DOWNTO 0); ***信号定义*** BEGIN sel<=b&a; PROCESS (input,sel) ***进程的定义*** BEGIN IF(sel="00") THEN y<=input(0); ELSIF(sel<="01") THEN y<=input(1); ELSIF(sel<="10") THEN y<=input(2); ELSE y<=input(3); END IF; END PROCESS; END rtl; 三、文本文件的编译及仿真全过程 在编辑器中输入并保存了以上四选一选择器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件,如*.cnf,*.rpt,*.snf,*.pof 等。 具体编译过程如下: 1、输入完以上全加器的源程序后,进入File/Project子菜单,选择Name 项,在工程名(Project name)对话框中输入mux4.vhd,按OK按钮;再在相同的子菜单中选择Set Project to Current File项; 2、进入MAX+plus Ⅱ菜单,在出现的子菜单中选择Compiler选项,

EDA 实验报告 ——多功能电子钟 姓名:张红义 班级:10级电科五班 学号:1008101143 指导老师:贾树恒

电子钟包括:主控模块,计时模块,闹钟模块,辅控模块,显示模块,蜂鸣器模块,分频器模块。 1.主控模块: 主要功能:控制整个系统,输出现在的状态,以及按键信息。 源代码: libraryieee; use ieee.std_logic_1164.all; useieee.std_logic_arith.all; useieee.std_logic_unsigned.all; entity mc is port(functionswitch,k,set,lightkey: in std_logic; chose21,setout: out std_logic; lightswitch:bufferstd_logic; modeout,kmodeout : out std_logic_vector(1 downto 0); setcs,setcm,setch,setas,setam,setah:outstd_logic); end mc; architecture work of mc is signalmode,kmode:std_logic_vector(1 downto 0); signal light,chose21buf:std_logic; signalsetcount:std_logic_vector(5 downto 0); begin process(functionswitch,k,set,lightkey) begin iffunctionswitch'event and functionswitch='1' then mode<=mode+'1'; end if; iflightkey'event and lightkey='1' then lightswitch<=not lightswitch; end if; if mode="01" thenchose21buf<='0'; else chose21buf<='1'; end if; ifk'event and k='1' then if mode="01" or mode="11" then kmode<=kmode+'1'; end if;end if; if set='1' then if mode = "01" then ifkmode="01" then setcount<="000001"; elsifkmode="10" thensetcount<="000010"; elsifkmode="11" then setcount<="000100";

实验一 实验目的: 熟悉quartus的vhdl文本设计流程全过程,学习简单的组合电路的设计,多层次的电路设计,仿真和硬件测试 二、实验内容 内容(一)用vhdl语言设计2选1多路选择器 参考例3-1程序设计如下: library ieee; use mux21a is port (a,b,s:in bit; y: out bit); end entity mux21a; architecture one of mux21a is begin y<=a when s='0' else b; end architecture one 全程编译后软件提示0错误,3警告,可以继续下面仿真操作。 程序分析: 这是一个2选1多路选择器,a和b分别为两个数字输入端的端口名,s为通道选择控制信号输入端的端口名,y为输出端的端口名。 时序仿真及分析: 时序仿真输入图: 时序仿真输出图: 时序分析: 由上面两图可以得知:当s=0时,y口输出a,当s=1时,y口输出b 下载和硬件测试: 引脚锁定图: 程序下载完成后,选择实验电路模式5,通过短路帽选择clock0接256Hz 信号,clock2接8Hz信号。通过键一控制s,当键一进行切换时,明显能听到扬声器发出两种不同音调的声音。 实验内容(二)双二选一多路选择器设计

程序设计: library ieee; use mux21a is port (a,b,s:in bit; y: out bit); end entity mux21a; architecture one of mux21a is begin y<=a when s='0' else b; end architecture one; entity muxk is port (a1,a2,a3,s0,s1:in bit; outy:out bit); end entity muxk; architecture bhv of muxk is component mux21a port (a,b,s:in bit; y:out bit); end component; signal tmp: bit; begin u1:mux21a port map(a=>a2,b=>a3,s=>s0,y=>tmp); u2:mux21a port map(a=>a1,b=>tmp,s=>s1,y=>outy); end architecture bhv; 全程编译后软件提示0错误,2警告 程序分析: 这是一个双2选1多路选择器,a1、a2和a3分别为两个数字输入端的端口名,s0、s1为通道选择控制信号输入端的端口名,outy为输出端的端口名。实体mux21a是一个2选一选通电路,实体muxk是元件的例化,其作用是将两个mux21a组合成一个3选1多路选择器。 时序仿真及分析: 时序仿真输入图 时序仿真输出图 时序分析: 从仿真出来的结果,我们不难发现,s0和s1做为a1、a2、a3的选通控制信号。当s0=0.、s1=0时,outy输出a1;当s0=0.、s1=1时,outy输出a2;当s0=1.、s1=0时,outy输出a1;当s1=1.、s2=1时,outy输出a3; 下载和硬件测试: 引脚锁定图

专用集成电路实验报告 13050Z01 1305024237 刘德文

实验一开发平台软件安装与认知实验 实验内容 1、本实验以三线八线译码器(LS74138)为例,在Xilinx ISE 9.2软件平台上完成设计 电路的VHDL文本输入、语法检查、编译、仿真、管脚分配和编程下载等操作。下载芯片选择Xilinx公司的CoolRunner II系列XC2C256-7PQ208作为目标仿真芯片。 2、用1中所设计的的三线八线译码器(LS74138)生成一个LS74138元件,在Xilinx ISE 9.2软件原理图设计平台上完成LS74138元件的调用,用原理图的方法设计三线八线译 码器(LS74138),实现编译,仿真,管脚分配和编程下载等操作。 源程序: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -- Uncomment the following lines to use the declarations that are -- provided for instantiating Xilinx primitive components. --library UNISIM; --use UNISIM.VComponents.all; entity ls74138 is Port ( g1 : in std_logic; g2 : in std_logic; inp : in std_logic_vector(2 downto 0); y : out std_logic_vector(7 downto 0)); end ls74138; architecture Behavioral of ls74138 is begin process(g1,g2,inp) begin if((g1 and g2)='1') then case inp is when "000"=>y<="00000001"; when "001"=>y<="00000010";

实验报告 课程名称:FPGA设计及应用 实验项目:设计二选一多路选择器 实验时间:2014年4月1号 实验班级:12电子信息工程X班 指导教师:李XX 二〇〇四年四月十三日

广东技术师范学院实验报告 学院: 电子与信息学院 专业: 电子信息工程 班级: 12电本X 班 成绩: 姓名: 学号: 20120442430 组别: 组员: 实验地点: 工业中心 实验日期: 4.01 指导教师签名: 实验 七 项目名称: 设计二选一多路选择器 一、 实验目的和要求 设计二选一多路选择器:通过简单完整而典型的VHDL 设计,初步了解VHDL 表达和设计电路的方法并对由此而引出的语言对象和语言规则加以有针对性的说明。 二、 实验步骤

1、创建新的工程,步骤如下: 2、创建新的文件 3、用VHDL语言根据实验要求的功能编写代码

4、编译 5、引脚分配 6、链接数据线,下载程序

三、实验源代码 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux21a IS PORT(a,b:IN BIT; s:IN BIT; y:OUT BIT); END; ARCHITECTURE one OF mux21a IS BEGIN y<=a WHEN s='0' ELSE b; END ARCHITECTURE one; 四、实验结果与总结 1、通过本节上机实验,加深了解了VHDL语言现象和语句规律。 2、程序很简单,按照示例程序输入没有什么错误。主要是通过这个简单程序了解了仿真的全过程。 3、实验后基本能从整体上把握VHDL程序的基本结构和设计特点。掌握固定表达句式。

课程: 数字逻辑与数字系统VHDL语言设计四选一选择器实验报告 系:电子信息与计算机科学系 专业:自动化 班级:文自112—2班 姓名:桑*超 学号: 2011905192** 指导教师:徐红霞 学年学期:2012-2013学年(第一学期) 2012年12月15日

姓名: 桑*超班级: 文自112-2班学号: 2011905192** 试验: VHDL语言设计日期:2012.12.15 指导老师: 徐洪霞 一、实验报告的名称: VHDL语言设计 二、本次实验的目的: 1.掌握VHDL 语言的设计技巧 2.用VHDL语言设计四选一选择器 三、设计过程: 1.工程编译源:用VHDL语言编程。 2.功能仿真:将功能编译后的结果进行仿真。 3.引脚锁定:将个信号按要求分配到相应引脚. 4.物理实现:将结果下载到所悬着的器件中 四、写出源程序,画出防真波形图. library ieee; use ieee.std_logic_1164.all; entity mux4_1 is port( a,b,c,d : in std_logic; s : in std_logic_vector(1 downto 0); z : out std_logic ); end mux4_1; architecture one of mux4_1 is begin process(s,a,b,c,d) begin case s is when "00"=>z<=a;

when "01"=>z<=b; when "10"=>z<=c; when "11"=>z<=d; when others =>z<=null; end case; end process; end one ; 波形仿真图: 五、实验总结,主要包括实验中所犯错误,怎样改正等 1.在文件名必须与VHDL文件中的设计实体名保持一致。 2.设计前要先弄清楚四选一选择器的原理,然后根据原理设计程序。 3.编写程序时认真仔细,避免出现一些低级错误。

福建农林大学计算机与信息学院 信息工程类 实验报告 2013年11 月13 日

实验项目列表

福建农林大学计算机与信息学院信息工程类实验报告 系:电子信息工程系专业:电子信息工程年级: 2010级 姓名:学号:实验课程: VHDL数字系统设计 实验室号:__ 田C407 实验设备号: 07 实验时间: 11.12 指导教师签字:成绩: 实验一数控分频器的设计 1.实验目的和要求 学习数控分频器的设计、分析和测试方法。 2.实验原理 信号有不同的分频比,数控分频器就是用计数值可并行预置的加法计数器设计完成的,方法是将计数溢出位与预置数加载输入信号相接即可,详细设计程序如例1所示。 数控分频器的仿真波形如图1所示:输入不同的CLK频率和预置值D,给出如图1的时序波形。 100.0μs200.0μs300.0μs400.0μs 图1 当给出不同输入值D时,FOUT输出不同频率(CLK周期=50ns) 3.主要仪器设备(实验用的软硬件环境) 实验的硬件环境是: 微机一台 GW48 EDA实验开发系统一套 电源线一根 十芯JTAG口线一根 USB下载线一根 USB下载器一个 示波器 实验的软件环境是: Quartus II 9.0软件

4.操作方法与实验步骤 (1)创建工程,并命名位test。 (2)打开QuartusII,建立VHDL文件,并输入设计程序。保存为DVF. (3)选择目标器件。Acex1k—EP1K100QC208-3。 (4)启动编译。 (5)建立仿真波形图。 (6)仿真测试和波形分析。 (7)引脚锁定编译。 (8)编程下载。 (9)硬件测试 5.实验内容及实验数据记录 在实验系统上硬件验证例5-20的功能。可选实验电路模式1(第一章图4);键2/键1负责输入8位预置数D(PIO7-PIO0);CLK由clock0输入,频率选65536Hz 或更高(确保分频后落在音频范围);输出FOUT接扬声器(SPKER)。编译下载后进行硬件测试:改变键2/键1的输入值,可听到不同音调的声音。 6.实验数据处理与分析 1)实验代码 【例1】 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DVF IS PORT ( CLK : IN STD_LOGIC; D : IN STD_LOGIC_VECTOR(7 DOWNTO 0); FOUT : OUT STD_LOGIC ); END; ARCHITECTURE one OF DVF IS SIGNAL FULL : STD_LOGIC; BEGIN P_REG: PROCESS(CLK) VARIABLE CNT8 : STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN IF CLK'EVENT AND CLK = '1' THEN IF CNT8 = "11111111" THEN CNT8 := D; --当CNT8计数计满时,输入数据D被同步预置给计数器CNT8 FULL <= '1'; --同时使溢出标志信号FULL输出为高电平 ELSE CNT8 := CNT8 + 1; --否则继续作加1计数 FULL <= '0'; --且输出溢出标志信号FULL为低电平 END IF; END IF; END PROCESS P_REG ; P_DIV: PROCESS(FULL) VARIABLE CNT2 : STD_LOGIC; BEGIN IF FULL'EVENT AND FULL = '1' THEN CNT2 := NOT CNT2; --如果溢出标志信号FULL为高电平,D触发器输出取反

实验二数据选择器 院系:信息科学与技术学院 专业:电子信息工程 姓名:刘晓旭 学号:2011117147

一.实验目的 1.掌握中规模集成数据选择器的逻辑功能及测试方法。 2.学习数据选择器的使用方法。 二.实验仪器及器材 稳压电源,数字多用表,四选一数据选择器74LS153,八选一数据选择器74LS151。 三 .实验原理 数据选择器又称多路选择器,是中规模集成电路中应用非常广泛的组合逻辑部件之一。它有若干个数据输入端D0 ,D1......,若干个控制输入端A0 ,A1 ......和一个两个输出Q,Q’。当A0,A1......数据不同时,将选择与其相应的输入控制端D X输出,由于控制输入端的作用是选择数据输入端的地址,故又称为地址输入端。 四.实验内容 1.利用逻辑电平产生电路和逻辑电平指示电路测试74LS153的逻辑功能,验证是否和功能表一致。 实验目的:利用逻辑电平产生电路和逻辑电平指示电路测试74LS153的逻辑功能,验证是否和功能表一致。 实验器材:直流电压源,开关,74LS153,电灯,逻辑控制开关 实验内容:测试74LS153的逻辑功能 74LS153为两个四选一数据选择器,S1’,S2’是每一个选择器的选通输入端,低电平有效。 A0,A1为公共的控制输入信号。1D0,1D1....1D3,2D0,2D1...2D3分别是每一选择器的数据输入端。 电路如图1 图1

74LS153的逻辑功能表2.1 注:测试过程中1G,2G 始终接地。当A,B 为00.01,10,11不同情况时,分别对应于1C 0, 2C 0; 1C 1,, 2C 1; 1C 2, 2C 2; 1C 3, 2C 3;的开关接上高电平,灯泡会发光,从真值表所列的功能来看,74LS153符合其逻辑功能。 2.设计一位二进制数A 和B 的比较器。 实验目的:用74LS153设计出一位二进制数A 和B 的比较器。 实验器材:74LS153,单刀双掷开关,直流电源,灯泡。 实验内容:当接至高电平时代表1,接至低电平时代表0; A>B 时,x1亮;AB I ,则地址码为 01,根据电路图看出Y 1Y 2=10;若A I

相关主题
文本预览
相关文档 最新文档