SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
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

A Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdfA Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdf
Po-Chuan Chen
 
Experimento 4 20091 determinação da massa molecular de um gás
Experimento 4 20091 determinação da massa molecular de um gásExperimento 4 20091 determinação da massa molecular de um gás
Experimento 4 20091 determinação da massa molecular de um gás
sergioviroli
 
Resolução comentada de exercícios de química analítica.docx
Resolução comentada de exercícios de química analítica.docxResolução comentada de exercícios de química analítica.docx
Resolução comentada de exercícios de química analítica.docx
Rômulo Alexandrino Silva
 

Mais procurados (20)

03.Titulação ácido base
03.Titulação ácido base03.Titulação ácido base
03.Titulação ácido base
 
Potenciométrica e Condutimetria
Potenciométrica e CondutimetriaPotenciométrica e Condutimetria
Potenciométrica e Condutimetria
 
Soljul14gen
Soljul14genSoljul14gen
Soljul14gen
 
Catastrofes humanas novo
Catastrofes humanas novoCatastrofes humanas novo
Catastrofes humanas novo
 
04.equilíbrio e titulação de precipitação(prova)
04.equilíbrio e titulação de precipitação(prova)04.equilíbrio e titulação de precipitação(prova)
04.equilíbrio e titulação de precipitação(prova)
 
Destilacao extrativa
Destilacao extrativaDestilacao extrativa
Destilacao extrativa
 
A Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdfA Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdf
 
Experimento 4 20091 determinação da massa molecular de um gás
Experimento 4 20091 determinação da massa molecular de um gásExperimento 4 20091 determinação da massa molecular de um gás
Experimento 4 20091 determinação da massa molecular de um gás
 
aula-7-Volumetria-de-Complexação-2012.2.pdf
aula-7-Volumetria-de-Complexação-2012.2.pdfaula-7-Volumetria-de-Complexação-2012.2.pdf
aula-7-Volumetria-de-Complexação-2012.2.pdf
 
Teoria Lista Exercicios 1.0
Teoria Lista Exercicios 1.0Teoria Lista Exercicios 1.0
Teoria Lista Exercicios 1.0
 
深入淺出C語言
深入淺出C語言深入淺出C語言
深入淺出C語言
 
Resolução comentada de exercícios de química analítica.docx
Resolução comentada de exercícios de química analítica.docxResolução comentada de exercícios de química analítica.docx
Resolução comentada de exercícios de química analítica.docx
 
Relatório - complexometria determinação de cálcio e da dureza da água
Relatório - complexometria determinação de cálcio e da dureza da água Relatório - complexometria determinação de cálcio e da dureza da água
Relatório - complexometria determinação de cálcio e da dureza da água
 
work order of logic laboratory
work order of logic laboratory work order of logic laboratory
work order of logic laboratory
 
Apostila de Química Analítica Qualitativa
Apostila de Química Analítica QualitativaApostila de Química Analítica Qualitativa
Apostila de Química Analítica Qualitativa
 
Os Lusíadas
Os LusíadasOs Lusíadas
Os Lusíadas
 
Iracema
IracemaIracema
Iracema
 
Quick tour of PHP from inside
Quick tour of PHP from insideQuick tour of PHP from inside
Quick tour of PHP from inside
 
Eugenio de andrade
Eugenio de andradeEugenio de andrade
Eugenio de andrade
 
Titulação de ácidos fraco (CH3COOH) e forte (HCl) tratados com base forte Hid...
Titulação de ácidos fraco (CH3COOH) e forte (HCl) tratados com base forte Hid...Titulação de ácidos fraco (CH3COOH) e forte (HCl) tratados com base forte Hid...
Titulação de ácidos fraco (CH3COOH) e forte (HCl) tratados com base forte Hid...
 

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