组合逻辑VHDL设计——数据选择器 实验报告

合集下载

:数据选择器设计(实验报告)

:数据选择器设计(实验报告)

实验报告一、实验目的熟悉QuartusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。

二、实验设备GW48系列SOPC/EDA实验开发系统实验箱一台计算机一台三、实验内容1首先利用QuartusⅡ完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测试等步骤,给出下图所示的仿真波形。

最后在实验系统上进行硬件测试,验证本项设计的功能。

源程序为:ENTITY mux21a ISPORT ( a, b, s: IN BIT;y : OUT BIT );END ENTITY mux21a;ARCHITECTURE one OF mux21a ISBEGINPROCESS (a,b,s)BEGINIF s = '0' THEN y <= a ; ELSE y <= b ;END IF;END PROCESS;END ARCHITECTURE one ;图(1 ) 2选1多路选择器的编译图、图(2) 功能仿真的波形图图(3 ) 功能引脚图图(4) 2选1多路选择器的RTL电路2. 将此多路选择器看成是一个元件mux21a,利用元件例化语句描述图,并将此文件放在同一目录中。

并对上例分别进行编译、综合、仿真,并对其仿真波形做出分析说明。

以下是程序:图(5) 双二选一多路选择器的编译图图(6) 双路数据选择器功能仿真图图(7) 双二选一多路选择器的引脚锁定图图 5 双2选1多路选择器图(8) 双路数据选择器RTL电路图图(9) 编程下载图3.、引脚锁定以及硬件下载测试。

若选择目标器件是EP1C3,建议选实验电路模式5,用键1(PIO0,引脚号为1)控制s0;用键2(PIO1,引脚号为2)控制s1;a3、a2 和a1 分别接clock5(引脚号为16)、clock0(引脚号为93)和clock2(引脚号为17);输出信号outy仍接扬声器spker(引脚号为129)。

组合逻辑电路数据选择器实验报告

组合逻辑电路数据选择器实验报告

组合逻辑电路数据选择器实验报告
本次实验的目的是通过实验学习组合逻辑电路数据选择器的原理和应用。

数据选择器是一种常用的组合逻辑电路,它可以根据控制信号选择不同的输入数据,并将所选数据输出。

在数字电路中,数据选择器常用于多路选择、数据交换和数据复用等应用中。

实验中我们使用了74LS151芯片作为数据选择器,该芯片具有8个输入端和1个输出端,可以根据控制信号选择其中一个输入端的数据输出。

实验中我们将8个开关分别连接到芯片的8个输入端,通过控制信号选择其中一个开关的输入数据输出到芯片的输出端。

实验中我们使用了示波器观察芯片输出端的波形,以验证芯片的工作状态。

在实验中,我们首先进行了芯片的引脚连接,将芯片的8个输入端分别连接到8个开关上,将控制信号连接到芯片的控制端。

然后我们通过控制信号选择不同的输入端,观察芯片输出端的波形变化。

实验结果表明,芯片能够正确地选择所需的输入数据,并将其输出到输出端。

通过本次实验,我们深入了解了组合逻辑电路数据选择器的原理和应用,掌握了芯片的引脚连接和控制信号的设置方法。

同时,我们也学会了使用示波器观察芯片输出端的波形,以验证芯片的工作状态。

这些知识和技能对于我们今后的学习和工作都具有重要的意义。

本次实验使我们更加深入地了解了组合逻辑电路数据选择器的原理和应用,掌握了芯片的引脚连接和控制信号的设置方法,同时也提高了我们的实验操作能力和实验数据分析能力。

实验六二选一数据选择器的VHDL设计

实验六二选一数据选择器的VHDL设计

▪ ▪
多位赋值: temp (7 downto
逐位赋值 4)用<=单“引10号10〞;
信号、变量、常量比照
〔一〕、定义
Signal clk: std_logic; Variable data: std_logic_vector(7 downto 0); Constant width: integer :=7 ;
▪ 说明语句:用于定义构造体中所用的数据对象〔常量 和信号〕和子程序,并对所引用的元件加以说明,但 不能定义变量。
▪ 功能描述语句:有五种类型,可以把它们看成构造体 的五种子构造。这五种语句构造本身是并行语句,但 内部可能含有并行运行的逻辑描述语句或顺序运行的 逻辑描述语句,如进程内部包含的即为顺序语句。
逻辑运算符应用举例 y<=a XOR b; --逻辑表达式 y=a⊕b y<=a AND b AND c AND d;
--逻辑表达式 y=a·b·c·d y<=(a OR b) AND (c OR d);
--逻辑表达式 y=(a+b)·(c+d)
2、关系运算符
= 等于 /= 不等于 < 小于 <= 小于或等于〔也用于信号的赋值操作〕 > 大于 >= 大于或等于
SIGNAL l,m,n,o,p : BOOLEAN ;
...
s<=a and b;
-- integer 不能进展逻辑运算
a<=b AND c;
-- a、b、c的数据类型同属4位长的位矢

d<=e OR f OR g ;
-- 两个操作符OR一样,不需括号
h<=(i NAND j)NAND k ; -- NAND必须加括号
信号:实体、构造体、程序包 变量:进程、子程序 常量:实体、构造体、程序包、块、进程、子程序

VHDL实验报告(1)

VHDL实验报告(1)

VHDL 实验报告******班级:电子0701学号:************实验一组合逻辑电路设计一实验目的:1. 熟悉mux+pluxII软件,可以进行新文件的编辑和文件的修改。

2. 掌握门电路VHDL语言程序设计方法。

3. 掌握选择器VHDL语言程序设计方法。

4. 掌握加法器VHDL语言程序设计方法。

5. 熟悉VHDL编程的基本方法。

二实验设备:1.计算机2.Max+PlusII软件三实验原理及内容:1 二输入与门(1)实验原理二输入与门是我们数字电路中的一个基础逻辑门电路,是最基本的逻辑门电路之一,也是最简单的逻辑门之一。

它能实现两个输入端的相与,一般有三个端口。

二输入与门的表达式是:Y=ab二输入与门的逻辑符号如图(1)所示,真值表如表(1)所示。

图(1)与门逻辑符号表(1)与门真值表(2)实验内容a.在mux+pluxII文本编辑环境下,打开新文本,编写两输入与门VHDL语言源程序,程序设计如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY and2 ISPORT(a,b: IN STD_LOGIC;Y: OUT STD_LOGIC);END and2;ARCHITECTURE behave OF and2 ISBEGINY <= a and b;END behave;b.对源程序进行编译,按照提示进行修改,直至编译通过。

c.对编译程序进行仿真,分析并记录仿真波形,其仿真波形图如图(2)所示。

图(2)二输入与门仿真图d.在自己的目录下保存相应的源文件、波形文件。

2 四选一选择器(1)实验原理四选一选择器如图(3)所示,真值表如表(2)所示。

图(3)mux4管脚图表(2)mux4真值表(2)实验内容a.在mux+plusII文本编辑环境下,打开新文件,编辑四选一VHDL源程序文件,其程序设计如下:LIBRARY IEEEUSE IEEE.STD_LOGIC_1164.ALL;ENTITY mux4 ISPORT(A: IN STD_LOGIC_VECTOR (1 DOWNTO 0);D0,D1,D2,D3:IN STD_LOGIC;G:IN STD_LOGIC;Y: OUT STD_LOGIC);END mux4;ARCHITECTURE dataflow OF mux4 ISBEGINPROCESS (A,D0,D1,D2,D3,G)BEGINIF (G ='0') THENIF (A="00")THEN Y <= D0;ELSIF(A="01")THEN Y <= D1;ELSIF(A="10")THEN Y <= D2;ELSE Y <= D3;END IF;ELSE Y <='0';END IF;END PROCESS;END dataflow;b.对源程序进行编译,按照提示进行修改,直到编译通过。

VHDL实验报告一2选1多路选择器

VHDL实验报告一2选1多路选择器

VHDL实验报告一2选1多路选择器实验一实验目的:熟悉quartus的vhdl文本设计流程全过程,学习简单的组合电路的设计,多层次的电路设计,仿真和硬件测试二、实验内容内容(一)用vhdl语言设计2选1多路选择器参考例3-1程序设计如下:library ieee;use ieee.std_logic_1164.all;entity mux21a isport (a,b,s:in bit;y: out bit);end entity mux21a;architecture one of mux21a isbeginy<=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 ieee.std_logic_1164.all;entity mux21a isport (a,b,s:in bit;y: out bit);end entity mux21a;architecture one of mux21a isbeginy<=a when s='0' else b;end architecture one;entity muxk isport (a1,a2,a3,s0,s1:in bit;outy:out bit);end entity muxk;architecture bhv of muxk iscomponent mux21aport (a,b,s:in bit;y:out bit);end component;signal tmp: bit;beginu1: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为输出端的端口名。

(VHDL实验报告)四选一数据选择器的设计

(VHDL实验报告)四选一数据选择器的设计
数字电路EDA设计与应 用
四选一数据选择器
乱弹的枇杷
二、实验目的
1、熟悉四选一数据选择器的工作原理。
2、进一步掌握VHDL顺序语句和并行语句的使用。
3、进一步熟悉QUARTUSⅡ软件的使用方法和VHDL输入的全
过程。
三、实验原理
在数字系统中常需要将多路数据有选择地分别传送到公共
数据线上去,完成这一功能的逻辑电路称为数据选择器。 数据选择器是一种通用性很强的中规模集成电路,它的用 途很广。
3)点击 Add Hardware 按钮,出现 Add Hardware 对话框,在 Add Hardware 对话 框中,从 Hardware type 列表中选择所需要硬件类型,如果是 USB 接口的请参照用户使用手册 中的 USB 电缆的安装与使用,如果使用的是并口下载线则选取如下图 所示的硬件类型,点击 OK按钮,完成对硬件类型的设置。回到编程器硬件设置窗口, 点击 Close 按钮退出设置。则在 编程器对话框中的编程硬件类型会出现刚才选取的编程器硬件。 4)此次实验室所用的安装驱动的方式为:右键“我的电脑”--设备管理器--双击有 黄色问号通用USB--驱动程序--更新驱动程序--从列表或安装……--下一步--下一步--从磁盘安 装--浏览--在我的电脑D盘中选择找到USB bluster即可安装好驱动。 5)如果软件已运行一个工程,则在打开编程器的时候,编程器窗口会自动出现这个 工程文件要加载到目标器件的文件,如果要加载其它文件可以从其它地方进行添加更改。选好加 载文件后,再点选 Progam/Configure,编程模式选取 JTAG 模式,点击 STRAT进行文件加载, 直到加载进度变为 100%,文件成功加载完成。
五、实验步骤

数据选择器实验报告

数据选择器实验报告

数据选择器实验报告
在科学研究和工程实践中,数据选择器是一种常用的仪器,它能够根据一定的
条件从给定的数据集中选择出符合条件的数据。

本实验旨在通过对数据选择器的使用,探究其在数据处理中的应用及性能表现。

首先,我们选择了一组包含不同类型数据的数据集,包括数值型数据、文本型
数据和日期型数据。

接着,我们利用数据选择器对这些数据进行了筛选和过滤,通过设定不同的条件,比如大于、小于、等于等,来选择出符合条件的数据。

在实验过程中,我们发现数据选择器能够准确地按照设定的条件进行筛选,并且操作简便,易于掌握。

其次,我们对数据选择器的性能进行了测试。

通过对不同规模的数据集进行筛选,我们发现数据选择器在处理小规模数据时表现出色,能够快速准确地完成筛选任务。

然而,在处理大规模数据时,数据选择器的性能有所下降,筛选速度变慢,甚至出现卡顿现象。

这提示我们在实际应用中需要根据数据规模选择合适的数据选择器,以确保数据处理的效率和准确性。

最后,我们对数据选择器的应用进行了案例分析。

以销售数据为例,我们利用
数据选择器对销售额、销售量等数据进行了筛选和统计,得出了不同时间段、不同产品类别的销售情况。

这些数据对于企业制定营销策略、产品定价等方面具有重要的参考价值,展示了数据选择器在商业领域的广泛应用前景。

综上所述,数据选择器作为一种常用的数据处理工具,在科研和工程实践中具
有重要的应用价值。

通过本实验,我们深入了解了数据选择器的工作原理和性能特点,认识到了其在数据处理中的重要作用。

希望通过本实验能够为相关领域的研究和应用提供一定的参考和借鉴,推动数据选择器技术的进一步发展和完善。

基于VHDL的数值比较器、数据选择器、移位寄存器、60进制计数器、复杂ALU设计实验报告

基于VHDL的数值比较器、数据选择器、移位寄存器、60进制计数器、复杂ALU设计实验报告

基于VHDL的数值比较器、数据选择器、移位寄存器、60进制计数器、复杂ALU设计实验报告VHDL实验报告班级:电子学号:姓名:2014/5/23Experiment 1 两位二进制数的大小比较器一、实验目的:(1)熟悉QuartusII的开发环境、熟练掌握编程开发流程。

(2)学习VHDL的基本语法及编程设计。

二、实验内容:数值比较器设计三、实验要求:(1)熟练掌握QuartusII开发环境下对可编程逻辑器件进行程序化设计的整套流程;2)设计输入使用插入语言模板(Insert Template); ((3)在QuartusII开发环境下对设计程序进行时序仿真,将生成的配置文件下载到实验板,进行最终的实物测试验证。

四、实验原理:根据两位二进制数的大小得到对应的比较结果,其电路示意图及电路特性表为: 比较器特性表A B In_s In_l In_e 比较器电路示意图YsYe YlY A > B × × × 0 0 1A[3:0] Yl Number B[3:0] A < B × × × 1 0 0 Ye A = B 0 1 0 0 0 1 In_sYs Comparer In_l A = B 1 0 0 1 0 0 In_e A = B 0 0 1 0 1 0 A = B 0 0 0 × × × A = B × 1 1 × × × A = B 1 × 1 × × × A = B 1 1 × × × ×五、程序编写、调试及仿真(芯片型号:MAX?系列EPM1270T144C5) (1)程序编写:library ieee;use ieee.std_logic_1164.all;2entity Vhdl1 isport(a,b:in std_logic_vector(3 downto 0);ins,inl,ine: in std_logic;ys,ye,yl: out std_logic);end Vhdl1;architecture one of Vhdl1 issignal temps,tempe:std_logic; beginys<=temps;ye<=tempe;yl<=temps nor tempe;process(a,b,ine)beginif (a=b and ine='1')thentempe<='1';elsetempe<='0';end if;end process;process(a,b,ins)beginif(a<b) thentemps<='1';elsif(a=b and ins='1') then temps<='1';elsetemps<='0';end if;end process;end one;(2)功能仿真:3(3)芯片引脚设定:(4)适配下载结果六、结果分析本实验实现了两位二进制数的比较。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验名称:组合逻辑VHDL设计——数据选择器
班级: 09电气2Z 学号: 09312213 姓名:钱雷
一、4选1数据选择器的VHDL设计(低电使能端)
1.实体框图
2.程序设计
①正确的程序
library ieee;
use ieee.std_logic_1164.all;
entity mux41a is
port(D3,D2,D1,D0,EN:in std_logic;
A1,A0:in std_logic;
y:out std_logic);
end mux41a;
architecture aaa of mux41a is
begin
y<=D3 when A1='0' and A0='0' and EN='0' else
D2 when A1='0' and A0='1' and EN='0' else
D1 when A1='1' and A0='0' and EN='0' else
D0 when A1='1' and A0='1' and EN='0'
else 'Z';
end architecture aaa;
3.仿真波形图
4.仿真波形分析
D0-D3是数据输入端,EN为使能端,低电平有效,S(A1和A0)是控制输入端,Y是数据输出端。

当A1、A0=‘11’时,D0数据被选中,输出Y=D0;当A1、A0=‘10’时,D1数据被选中,输出Y=D1,当A1、A0=‘01’时,D2数据被选中,输出Y=D2,当A1、A0=‘00’时,D3数据被选中,输出Y=D3。

二、8选1数据选择器的VHDL设计(低电使能端)
1.实体框图
2.程序设计
①正确的程序
library ieee;
use ieee.std_logic_1164.all;
entity mux81a is
port(A0,A1,A2,D0,D1,D2,D3,D4,D5,D6,D7,EN:in std_logic;
y:out std_logic);
end mux81a;
architecture bbb of mux81a is
signal Q:std_logic_vector (2 downto 0);
begin
Q<=A2&A1&A0;
y<=D0 when Q="000" and EN='0' else
D1 when Q="001" and EN='0' else
D2 when Q="010" and EN='0' else
D3 when Q="011" and EN='0' else
D4 when Q="100" and EN='0' else
D5 when Q="101" and EN='0' else
D6 when Q="110" and EN='0' else
D7 when Q="111" and EN='0'
else 'Z';
end architecture bbb;
3.仿真波形图
4.仿真波形分析
D0-D7是数据输入端,EN为使能端,低电平有效,A2,A1,A0是控制输入端,Y是数据输出端。

当A2、A1、A0=‘000’时,D0数据被选中,输出Y=D0;当A2、A1、A0=‘001’时,D1数据被选中,输出Y=D1,当A2、A1、A0=‘010’时,D2数据被选中,输出Y=D2,当A2、A1、A0=‘011’时,D3数据被选中,输出Y=D3,当A2、A1、A0=‘100’时,D4数据被选中,输出Y=D4,当A2、A1、A0=‘101’时,D5数据被选中,输出Y=D5,当A2、A1、A0=‘110’时,D6数据被选中,输出Y=D6,当A2、A1、A0=‘111’时,D7数据被选中,输出Y=D7。

std_logic_vector 是标准逻辑矢量,定义的是长度大于1的变量,需要确定赋值方向(n downto 0)or (0 downto n)。

std_logic 是长度为1的逻辑与bit 相似,只是 bit 只能是'0 ’和'1‘ 而std_logic有以下九种状态:U'——初始值,'X'——不定,'0'——0,'1'——1,'Z'——高阻,'W'——弱信号不定,'L'——弱信号0,'H'——弱信号1,'-'——不可能的情况。

相关文档
最新文档