SlideShare uma empresa Scribd logo
Universidade Federal de Santa Catarina
         Centro Tecnológico – CTC
    Departamento de Engenharia Elétrica
                                            http://gse.ufsc.br




“EEL7020 – Sistemas Digitais”


     Prof. Eduardo Augusto Bezerra
           Eduardo.Bezerra@eel.ufsc.br




         Florianópolis, agosto de 2012.
Sistemas Digitais



Circuito multiplexador - Mux




        EEL7020 – Sistemas Digitais   2/13
Objetivos do laboratório

1. Entender o conceito de “multiplexador”.
2. Implementação de multiplexador em VHDL
   utilizando apenas funções booleanas (VHDL
   estrutural).
3. Implementação de multiplexador em VHDL
   utilizando when / else (VHDL comportamental).
4. Estudo de caso: uso de mux no projeto hierárquico
   do lab anterior.


                      EEL7020 – Sistemas Digitais   3/13
Projeto de multiplexador - MUX 2 x 1

 • No circuito, se s = 0, a saída m será igual a entrada x.
   Se s = 1, a saída m será igual a entrada y.


                                x                0
                                                       m
                                y                1


                                s


  VHDL estrutural:       m <= (NOT (s) AND x) OR (s AND y);

                         m <= x when s = ‘0’ else
  VHDL comportamental:
                              y;

                         EEL7020 – Sistemas Digitais          4/13
Projeto de multiplexador - MUX 4 x 1

                                                         w   00
  w                                                      x   01
                                                                            m
                                                         y   10
  x                                                      z   11

                                      m                           2 bits
  y                                                      s
  z
                                   VHDL comportamental:
                             m <= w when s = “00” else
 s1                               x when s = “01” else
 s0                               y when s = “10” else
                                  z;

           Definição do seletor na entity - s: in std_logic_vector(1 downto 0);

                           EEL7020 – Sistemas Digitais                     5/13
Tarefa a ser realizada na aula prática


PARTE I – Mux 4x1 em VHDL estrutural
PARTE II – Mux 4x1 em VHDL comportamental




                EEL7020 – Sistemas Digitais   6/13
Reutilizar os arquivos do lab anterior, e realizar as
alterações indicadas a seguir (Mux 4x1 no lugar de C4):

                      C1                                   topo
C   SW(2)
                                  F1
B   SW(1)

A   SW(0)                                            Mux 4x1             LEDR(7)
                                                                         LEDR(6)
                                                                         LEDR(5)
                      C2                                                 LEDR(4)
                                                                         LEDR(3)
                                                      00
                                  F2                  01
                                                                         LEDR(2)
                                                                         LEDR(1)
                                                                         LEDR(0)
                                                      10
                                               0      11
                                                                     F
                      C3                                    2 bits
                                  F3

Seleção
SW(17..16)



                       EEL7020 – Sistemas Digitais                       7/13
Descrição da tarefa: PARTE I – VHDL estrutural

• Utilizar os componentes C1, C2, C3 e topo do laboratório
anterior.

• Remover o componente C4 do projeto:
   • Remover C4 da lista de arquivos
   • Remover o Component C4 do topo.vhd
   • Remover o port map do C4 do topo.vhd

• Criar um novo arquivo VHDL, e implementar um mux 4x1
utilizando VHDL estrutural, conforme exemplo do slide 4.

• Editar o arquivo topo.vhd, e realizar a inclusão do novo
componente mux 4x1 no circuito, utilizando as construções do
VHDL component e port map.
                           EEL7020 – Sistemas Digitais       8/13
Interface com o usuário
                                              Saída F - LEDR(0)




     Seleção
   SW(17) SW(16)                 Entrada C Entrada B Entrada A
                                  SW(2)     SW(1)     SW(0)

       Seleção SW(17..16)                          Saída LEDR(0)
               00                                        F1
               01                                        F2
               10                                        F3
               11                                 0 (LED apagado)

                            EEL7020 – Sistemas Digitais             9/13
Descrição da tarefa: PARTE II – VHDL comportamental

• Criar um novo arquivo VHDL, e implementar um NOVO mux 4x1
utilizando VHDL comportamental, conforme exemplos dos slides
4 e 5 (uso de when / else).

• Não é necessário alterar o arquivo topo.vhd, pois o novo mux
4x1 deverá possuir exatamente a mesma interface do mux 4x1
implementado em VHDL estrutural da PARTE I (mesma entity).

• Se na entity da PARTE I (VHDL estrutural) não foi definido um
  seletor de dois bits, ou seja s: in std_logic_vector(1 downto 0),
  nesse caso será necessário realizar essa alteração na PARTE II.

• Realizar a síntese, simulação, e prototipação na placa DE2, e
verificar se o novo circuito funciona de acordo com o esperado.
                           EEL7020 – Sistemas Digitais        10/13
Resumo da tarefa – Atenção!! SÃO DOIS PROJETOS DIFERENTES!

 • PARTE I – Projetar e implementar o MUX em VHDL
                                                           w
    estrutural:                                            x
                                                           y                   m
                                                           z
 m <= (w and ((NOT (s1) AND (NOT(s0))) OR …
                                                           s1
                                                           s0

 • PARTE II – Projetar e implementar o MUX em VHDL
    comportamental:                                        w    00
 m <= w when s = “00” else                                 x    01
                                                                                   m
      x when s = “01” else                                 y    10
      y when s = “10” else                                 z    11
      z;                                                             2 bits

                                                           s
                             EEL7020 – Sistemas Digitais                      11/13
PARTE I – VHDL estrutural

             topo     C1
                                              w, x, y, z: in std_logic;

C   SW(2)
                                  F1                            m: out std_logic;
B   SW(1)
                                                                               LEDR(7)
A   SW(0)                                              Mux 4x1                 LEDR(6)
                                                                               LEDR(5)
                      C2                                                       LEDR(4)
                                                                               LEDR(3)
                                                    00
                                  F2                01
                                                                               LEDR(2)
                                                                               LEDR(1)
                                                    10                         LEDR(0)
                                                    11
                                                0                     F
                      C3
                                  F3                   2 bits




Seleção
SW(17..16)



                       EEL7020 – Sistemas Digitaisin
                                              s:       std_logic_vector(1 downto 0);
                                                                             12/13
PARTE II – VHDL comportamental

             topo     C1
                                              w, x, y, z: in std_logic;

C   SW(2)
                                  F1                               m: out std_logic;
B   SW(1)

A   SW(0)                                              Mux 4x1                    LEDR(7)
                                                                                  LEDR(6)
                                                                                  LEDR(5)
                      C2                                                          LEDR(4)
                                                                                  LEDR(3)
                                                         00
                                  F2                     01 when
                                                                                  LEDR(2)
                                                                                  LEDR(1)
                                                                                  LEDR(0)
                                                         10 else
                                               0         11
                                                                         F
                      C3
                                  F3                   2 bits




Seleção
SW(17..16)



                       EEL7020 – Sistemas Digitaisin
                                              s:       std_logic_vector(1 downto 0);
                                                                             13/13

Mais conteúdo relacionado

Mais procurados

Circuitos Electronicos 4
Circuitos Electronicos 4Circuitos Electronicos 4
Circuitos Electronicos 4
F Blanco
 
Demodulador fsk mediante pll
Demodulador fsk mediante pllDemodulador fsk mediante pll
Demodulador fsk mediante pll
iesromerovargas
 
Monografia Qualidade de Software
Monografia Qualidade de SoftwareMonografia Qualidade de Software
Monografia Qualidade de Software
Oscarlino Silva
 
Cobra 2000-gtl
Cobra 2000-gtlCobra 2000-gtl
Cobra 2000-gtl
rambo03
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Dalton Martins
 
Codificadores e descodificadores fabio 10ºf
Codificadores e descodificadores fabio 10ºfCodificadores e descodificadores fabio 10ºf
Codificadores e descodificadores fabio 10ºf
Fabio Guerreiro
 

Mais procurados (20)

PRACTICA : FILTROS ACTIVOS CON OPAM
PRACTICA : FILTROS ACTIVOS CON OPAMPRACTICA : FILTROS ACTIVOS CON OPAM
PRACTICA : FILTROS ACTIVOS CON OPAM
 
3 1 simbologia-2
3 1   simbologia-23 1   simbologia-2
3 1 simbologia-2
 
Valores comerciales capacitores
Valores comerciales capacitoresValores comerciales capacitores
Valores comerciales capacitores
 
Estudos de Controle - Aula 8: Análise de Resposta Transitória e de Regime Est...
Estudos de Controle - Aula 8: Análise de Resposta Transitória e de Regime Est...Estudos de Controle - Aula 8: Análise de Resposta Transitória e de Regime Est...
Estudos de Controle - Aula 8: Análise de Resposta Transitória e de Regime Est...
 
LAB 4 503 I 2021.docx
LAB 4 503 I 2021.docxLAB 4 503 I 2021.docx
LAB 4 503 I 2021.docx
 
Circuitos Electronicos 4
Circuitos Electronicos 4Circuitos Electronicos 4
Circuitos Electronicos 4
 
8 transformadores de corrente
8   transformadores de corrente8   transformadores de corrente
8 transformadores de corrente
 
Demodulador fsk mediante pll
Demodulador fsk mediante pllDemodulador fsk mediante pll
Demodulador fsk mediante pll
 
Monografia Qualidade de Software
Monografia Qualidade de SoftwareMonografia Qualidade de Software
Monografia Qualidade de Software
 
Cobra 2000-gtl
Cobra 2000-gtlCobra 2000-gtl
Cobra 2000-gtl
 
Topologias de rede atual
Topologias de rede   atualTopologias de rede   atual
Topologias de rede atual
 
Teoria 20 servo acionamentos
Teoria 20 servo acionamentosTeoria 20 servo acionamentos
Teoria 20 servo acionamentos
 
Sistemas de Telecomunicações - Aula 14 - Redes ATM, Ethernet, Token Ring e Re...
Sistemas de Telecomunicações - Aula 14 - Redes ATM, Ethernet, Token Ring e Re...Sistemas de Telecomunicações - Aula 14 - Redes ATM, Ethernet, Token Ring e Re...
Sistemas de Telecomunicações - Aula 14 - Redes ATM, Ethernet, Token Ring e Re...
 
Amplificador lm741 d.a pd
Amplificador lm741 d.a pdAmplificador lm741 d.a pd
Amplificador lm741 d.a pd
 
101545233 exercicios-resolvidos-de-sinais-e-sistemas
101545233 exercicios-resolvidos-de-sinais-e-sistemas101545233 exercicios-resolvidos-de-sinais-e-sistemas
101545233 exercicios-resolvidos-de-sinais-e-sistemas
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
 
Simbologia elétrica
Simbologia elétricaSimbologia elétrica
Simbologia elétrica
 
50745383 distribui-o-aula4
50745383 distribui-o-aula450745383 distribui-o-aula4
50745383 distribui-o-aula4
 
Codificadores e descodificadores fabio 10ºf
Codificadores e descodificadores fabio 10ºfCodificadores e descodificadores fabio 10ºf
Codificadores e descodificadores fabio 10ºf
 
Circuitos combinacionais
Circuitos combinacionaisCircuitos combinacionais
Circuitos combinacionais
 

Mais de Eduardo Bezerra

Mais de Eduardo Bezerra (9)

Lab9 processos
Lab9 processosLab9 processos
Lab9 processos
 
Lab8 controladores
Lab8 controladoresLab8 controladores
Lab8 controladores
 
Lab7 fsm
Lab7 fsmLab7 fsm
Lab7 fsm
 
Lab6 flipflop
Lab6 flipflopLab6 flipflop
Lab6 flipflop
 
Lab5 decod 7seg
Lab5 decod 7segLab5 decod 7seg
Lab5 decod 7seg
 
Lab3 componentes
Lab3 componentesLab3 componentes
Lab3 componentes
 
Lab2 vhdl fluxo_quartus
Lab2 vhdl fluxo_quartusLab2 vhdl fluxo_quartus
Lab2 vhdl fluxo_quartus
 
Lab1 apresentacao disciplina
Lab1 apresentacao disciplinaLab1 apresentacao disciplina
Lab1 apresentacao disciplina
 
Lab10 somadores
Lab10 somadoresLab10 somadores
Lab10 somadores
 

Lab4 mux

  • 1. Universidade Federal de Santa Catarina Centro Tecnológico – CTC Departamento de Engenharia Elétrica http://gse.ufsc.br “EEL7020 – Sistemas Digitais” Prof. Eduardo Augusto Bezerra Eduardo.Bezerra@eel.ufsc.br Florianópolis, agosto de 2012.
  • 2. Sistemas Digitais Circuito multiplexador - Mux EEL7020 – Sistemas Digitais 2/13
  • 3. Objetivos do laboratório 1. Entender o conceito de “multiplexador”. 2. Implementação de multiplexador em VHDL utilizando apenas funções booleanas (VHDL estrutural). 3. Implementação de multiplexador em VHDL utilizando when / else (VHDL comportamental). 4. Estudo de caso: uso de mux no projeto hierárquico do lab anterior. EEL7020 – Sistemas Digitais 3/13
  • 4. Projeto de multiplexador - MUX 2 x 1 • No circuito, se s = 0, a saída m será igual a entrada x. Se s = 1, a saída m será igual a entrada y. x 0 m y 1 s VHDL estrutural: m <= (NOT (s) AND x) OR (s AND y); m <= x when s = ‘0’ else VHDL comportamental: y; EEL7020 – Sistemas Digitais 4/13
  • 5. Projeto de multiplexador - MUX 4 x 1 w 00 w x 01 m y 10 x z 11 m 2 bits y s z VHDL comportamental: m <= w when s = “00” else s1 x when s = “01” else s0 y when s = “10” else z; Definição do seletor na entity - s: in std_logic_vector(1 downto 0); EEL7020 – Sistemas Digitais 5/13
  • 6. Tarefa a ser realizada na aula prática PARTE I – Mux 4x1 em VHDL estrutural PARTE II – Mux 4x1 em VHDL comportamental EEL7020 – Sistemas Digitais 6/13
  • 7. Reutilizar os arquivos do lab anterior, e realizar as alterações indicadas a seguir (Mux 4x1 no lugar de C4): C1 topo C SW(2) F1 B SW(1) A SW(0) Mux 4x1 LEDR(7) LEDR(6) LEDR(5) C2 LEDR(4) LEDR(3) 00 F2 01 LEDR(2) LEDR(1) LEDR(0) 10 0 11 F C3 2 bits F3 Seleção SW(17..16) EEL7020 – Sistemas Digitais 7/13
  • 8. Descrição da tarefa: PARTE I – VHDL estrutural • Utilizar os componentes C1, C2, C3 e topo do laboratório anterior. • Remover o componente C4 do projeto: • Remover C4 da lista de arquivos • Remover o Component C4 do topo.vhd • Remover o port map do C4 do topo.vhd • Criar um novo arquivo VHDL, e implementar um mux 4x1 utilizando VHDL estrutural, conforme exemplo do slide 4. • Editar o arquivo topo.vhd, e realizar a inclusão do novo componente mux 4x1 no circuito, utilizando as construções do VHDL component e port map. EEL7020 – Sistemas Digitais 8/13
  • 9. Interface com o usuário Saída F - LEDR(0) Seleção SW(17) SW(16) Entrada C Entrada B Entrada A SW(2) SW(1) SW(0) Seleção SW(17..16) Saída LEDR(0) 00 F1 01 F2 10 F3 11 0 (LED apagado) EEL7020 – Sistemas Digitais 9/13
  • 10. Descrição da tarefa: PARTE II – VHDL comportamental • Criar um novo arquivo VHDL, e implementar um NOVO mux 4x1 utilizando VHDL comportamental, conforme exemplos dos slides 4 e 5 (uso de when / else). • Não é necessário alterar o arquivo topo.vhd, pois o novo mux 4x1 deverá possuir exatamente a mesma interface do mux 4x1 implementado em VHDL estrutural da PARTE I (mesma entity). • Se na entity da PARTE I (VHDL estrutural) não foi definido um seletor de dois bits, ou seja s: in std_logic_vector(1 downto 0), nesse caso será necessário realizar essa alteração na PARTE II. • Realizar a síntese, simulação, e prototipação na placa DE2, e verificar se o novo circuito funciona de acordo com o esperado. EEL7020 – Sistemas Digitais 10/13
  • 11. Resumo da tarefa – Atenção!! SÃO DOIS PROJETOS DIFERENTES! • PARTE I – Projetar e implementar o MUX em VHDL w estrutural: x y m z m <= (w and ((NOT (s1) AND (NOT(s0))) OR … s1 s0 • PARTE II – Projetar e implementar o MUX em VHDL comportamental: w 00 m <= w when s = “00” else x 01 m x when s = “01” else y 10 y when s = “10” else z 11 z; 2 bits s EEL7020 – Sistemas Digitais 11/13
  • 12. PARTE I – VHDL estrutural topo C1 w, x, y, z: in std_logic; C SW(2) F1 m: out std_logic; B SW(1) LEDR(7) A SW(0) Mux 4x1 LEDR(6) LEDR(5) C2 LEDR(4) LEDR(3) 00 F2 01 LEDR(2) LEDR(1) 10 LEDR(0) 11 0 F C3 F3 2 bits Seleção SW(17..16) EEL7020 – Sistemas Digitaisin s: std_logic_vector(1 downto 0); 12/13
  • 13. PARTE II – VHDL comportamental topo C1 w, x, y, z: in std_logic; C SW(2) F1 m: out std_logic; B SW(1) A SW(0) Mux 4x1 LEDR(7) LEDR(6) LEDR(5) C2 LEDR(4) LEDR(3) 00 F2 01 when LEDR(2) LEDR(1) LEDR(0) 10 else 0 11 F C3 F3 2 bits Seleção SW(17..16) EEL7020 – Sistemas Digitaisin s: std_logic_vector(1 downto 0); 13/13