4 多路复用器和比较器的仿真实验报告

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

实验四多路复用器与比较器的设计与仿真

一、实验内容

1.参照芯片74LS153的电路结构,用VHDL语言设计四选一多路复用器;

2.从Maxplus中取7485器件(比较器)进行仿真与分析;用VHDL语言设计4位比较器,接着进行仿真与分析,电路逻辑结构参照芯片74x85。

二、电路功能介绍

1.74153:4选1多路复用器(4 to 1 Multiplexer),又叫4选1数据选择器用途:可以对多个输入信号进行选择。电视机里的频道转换开关就是一个多路开关。

逻辑框图

逻辑功能表

逻辑图

2.7485:4位大小比较器(4-Bit Magnitude Comparator)

逻辑框图

逻辑功能表

一、4选1多路复用器

1.VHDL语言实现:

library IEEE;

use IEEE.std_logic_1164.all;

entity mux4 is

port( a,b,c,d:in STD_LOGIC;

sel:in STD_LOGIC_VECTOR(1 downto 0);

q:out STD_LOGIC);

end mux4;

architecture mux4_arch of mux4 is

begin

process(a,b,c,d,sel)

begin

case sel is

when "00"=>q<=a;

when "01"=>q<=b;

when "10"=>q<=c;

when "11"=>q<=d;

when others=>null;

end case;

end process;

end mux4_arch;

2.波形图:

3.逻辑图:

4.用途:可以对多个输入信号进行选择。电视机里的频道转换开关就是一个多路开关。

5. 逻辑框图

6.逻辑功能表

二、比较器

1.仿真

2.VHDL语言实现:

library ieee;

use ieee.std_logic_1164.all;

entity v_7485 is

port(AL,AG,AE:in std_logic;

A,B:in std_logic_vector (3 downto 0);

ALO,AGO,AEO:out std_logic

);

end v_7485;

architecture ic_7485 of v_7485 is

signal YY:std_logic_vector(7 downto 0); begin

process(A,B,AL,AE,AG)

begin

if(A(3)>B(3)) then

ALO<='0'; AEO<='0'; AGO<='1';

elsif(A(3)

ALO<='1'; AEO<='0'; AGO<='0';

elsif(A(2)>B(2)) then

ALO<='0'; AEO<='0'; AGO<='1';

elsif(A(2)

ALO<='1'; AEO<='0'; AGO<='0';

elsif(A(1)>B(1)) then

ALO<='0'; AEO<='0'; AGO<='1';

elsif(A(1)

ALO<='1'; AEO<='0'; AGO<='0';

elsif(A(0)>B(0)) then

ALO<='0'; AEO<='0'; AGO<='1';

elsif(A(0)

ALO<='1'; AEO<='0'; AGO<='0';

else

if(AG='1'and AL='0'and AE='0') then

AGO<='1';ALO<='0';AEO<='0';

elsif(AG='0'and AL='1'and AE='0') then

AGO<='0';ALO<='1';AEO<='0';

elsif( AE='1') then

AGO<='0';ALO<='0';AEO<='1';

elsif(AG='1'and AL='1'and AE='0') then

AGO<='0';ALO<='0';AEO<='0';

else

AGO<='1';ALO<='1';AEO<='0';

end if;

end if;

end process;

end ic_7485;

3.逻辑图:

4.逻辑功能表

相关文档
最新文档