《数据选择器设计实验报告》由会员分享,可在线阅读,更多相关《数据选择器设计实验报告(5页珍藏版)》请在金锄头文库上搜索。
1、实实 验验 报报 告告数据选择器设计数据选择器设计一、实验目的1.熟悉硬件描述语言软件的使用。2.数序数据选择器的工作原理和逻辑功能。3.掌握数据选择器的设计方法。二、实验原理 数据选择器的逻辑功能是从多路数据输入信号中选出一路数据送到输出端, 输出的数据取决于控制输入端的状态。三、实验内容1.设计一个四选一数据选择器。 程序代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY MUX4_1 IS PORT(D3,D2,D1,D0,A1,A0:IN STD_LOGIC; Y:OUT STD_LOGIC);END ENTITY MUX4_1;
2、 ARCHITECTURE ONE OF MUX4_1 ISBEGIN PROCESS(D3,D2,D1,D0,A1,A0) BEGIN IF(A0=0 AND A1=0) THEN Y=D0 ; ELSIF (A0=0 AND A1=1) THEN Y=D1 ; ELSIF (A0=1 AND A1=0) THEN Y=D2 ; ELSIF (A0=1 AND A1=1) THEN Y=D3 ; END IF; END PROCESS; END ARCHITECTURE ONE; 仿真波形:仿真波形分析:D0-D3 是数据输入端,A1,A0 是控制输入端,Y 是数据输出端。当 A0=0,A1
3、=0 时 Y=D0;当 A0=0,A1=1 时 Y=D1;当 A0=1,A1=0 时 Y=D2;当 A0=1,A1=1 时 Y=D3;实体框图:2.设计一个八选一数据选择器。 程序代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux8_1 IS PORT(A:IN STD_LOGIC_VECTOR(2 DOWNTO 0); D0,D1,D2,D3,D4,D5,D6,D7:IN STD_LOGIC; S:IN STD_LOGIC; Y:OUT STD_LOGIC); END mux8_1; ARCHITECTURE dataflow
4、OF mux8_1 IS BEGINPROCESS(A,D0,D1,D2,D3,D4,D5,D6,D7,S) BEGINIF(S=1)THEN Y=0; ELSIF(S=0AND A=“000“)THEN Y=D0; ELSIF(S=0AND A=“001“)THEN Y=D1; ELSIF(S=0AND A=“010“)THEN Y=D2; ELSIF(S=0AND A=“011“)THEN Y=D3; ELSIF(S=0AND A=“100“)THEN Y=D4; ELSIF(S=0AND A=“101“)THEN Y=D5; ELSIF(S=0AND A=“110“)THEN Y=D6;
5、 ELSE Y=D7; END IF; END PROCESS; END dataflow; 仿真波形:仿真波形分析: S 为使能端,低电平有效。A0A1A2 为控制输入端。D0-7 是数据输入端。Y 是数据输 出端。S=1 时电路不工作,输出 Y=0。S=0 时电路工作, 当 A2=0,A1=0,A0=0 时,输出 Y=D0; 当 A2=0,A1=0,A0=1 时,输出 Y=D1; 当 A2=0,A1=1,A0=0 时,输出 Y=D2; 当 A2=0,A1=1,A0=1 时,输出 Y=D3; 当 A2=1,A1=0,A0=0 时,输出 Y=D4; 当 A2=1,A1=0,A0=1 时,输出 Y=D5;当 A2=1,A1=1,A0=0 时,输出 Y=D6; 当 A2=1,A1=1,A0=1 时,输出 Y=D7; 实体框图: