Sei sulla pagina 1di 36

Circuitos Digitais II - 6882 Joo Angelo Martini Nardnio Almeida Martins Universidade Estadual de Maring Departamento de Informtica

Bacharelado em Cincia da Computao

Aula de Hoje
Projeto e Simulao de um circuito multiplexador 2 X 1:

Modelagem ou arquitetura por fluxo de dados Modelagem ou arquitetura comportamental Modelagem ou arquitetura estrutural

HDL Linguagem de Descrio de Hardware


Multiplexador
Multiplexador ou Seletor de Dados: um circuito lgico que tem diversas entradas e apenas uma sada. MUX seleciona uma nica entrada para transmitir para a sada. Entradas de Controle: permitem selecionar a entrada a ser transmitida. Controle n
...

Entradas

2n

MUX

Sada

...

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
TV a MUX 2x1 b f

s 0 1

f a b

f = s.a + s.b
4

HDL Linguagem de Descrio de Hardware


Estrutura Bsica de um Cdigo em VHDL

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem ou arquitetura por fluxo de dados em VHDL
LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY mux2_fd IS PORT (a, b : IN BIT;

s : IN BIT; f
END mux2_fd; ARCHITECTURE fluxo_de_dados OF mux2_fd IS BEGIN : OUT BIT);

f <= ((NOT s ) AND a) OR (s AND b);


END fluxo_de_dados;
6

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem comportamental em VHDL usando IF THEN ELSE
TV a MUX 2x1 b f

s 0 1

f a b

Condio: Condio: Se a varivel de entrada s for igual a 0 ento a varivel de sada f ser igual a a, seno a varivel de sada f ser igual a b.
7

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem comportamental em VHDL usando IF THEN ELSE
Declarao de um processo . . . ARCHITECTURE nome_da_arquitetura OF nome_da_entidade IS BEGIN PROCESS (lista_de_sensibilidade) BEGIN . . . comandos; . . . END PROCESS; END nome_da_arquitetura;
8

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem comportamental em VHDL usando WHEN ELSE
TV a MUX 2x1 b f

s 0 1

f a b

Condio: Condio: A varivel de sada f ser igual a a quando a varivel de entrada s for igual a 0, seno a varivel de sada f ser igual a b.
9

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem estrutural em VHDL
t0
a
s

t1

MUX 2x1 b

a f b

t2
s

s
o A descrio estrutural especifica separadamente a funo de cada porta no multiplexador. o Essa descrio baseada na expresso booleana do circuito. o Uso de sinais t0, t1 e t2. 10

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem estrutural em VHDL usando componentes
t1
a MUX 2x1 b f

P2 P4 P3 t0 P1 t2
s

o A descrio estrutural especifica separadamente a funo de cada porta no multiplexador.


o Essa descrio baseada na expresso booleana do circuito.

11

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem estrutural em VHDL usando componentes
o Criao dos componentes (portas NOT, AND e OR) com entidade de projeto (declarao da entidade e arquitetura da entidade). o Declarao dos componentes na arquitetura da entidade da entidade de projeto declarao entre as palavras reservadas IS e BEGIN. o Instanciao dos componentes usando a palavra reservada PORT MAP na arquitetura da entidade da entidade de projeto instanciao entre as palavras reservadas BEGIN e END.
12

t1 P2 P4 P3 t0 P1 t2

HDL Linguagem de Descrio de Hardware


Multiplexador 2 X 1
Modelagem estrutural em VHDL usando componentes
Declarao e instanciao de um componente . . . ARCHITECTURE nome_da_arquitetura OF nome_da_entidade IS COMPONENT nome_do_componente -- declaracao do componente PORT (lista_de_porta_de_interface); END nome_do_componente; SIGNAL lista_de_sinal : tipo_de_dado; BEGIN nome_da_instanciacao : nome_componente PORT MAP (lista_de_associacao_de_porta); -- instanciacao do componente END nome_da_arquitetura; Nota: A declarao do componente similar declarao de entidade.
13

Simulador Quartus II
1. Criar diretrio work na rea de trabalho 2. Criar subdiretrios dentro do work: work:
a) b) c) d) e) mux2_fd mux2 mux2_com mux2 mux2_com1 mux2_com1 mux2_est mux2 mux2_est1 mux2_est1

3. Inicializar o Simulador Quartus II

14

Simulador Quartus II
4. Criar um novo projeto: selecionar File > New projeto: Project Wizard

15

Simulador Quartus II
5. Na primeira linha da janela, insira o nome do diretrio do projeto (work). Na segunda linha work) insira o nome do projeto (mux2_fd). mux2 fd)

16

Simulador Quartus II
6. Pressione Next. O projetista pode incluir Next arquivos de outros projetos, ou mesmo aqueles que Libraries II. esto nas Libraries do prprio Quartus II.

17

Simulador Quartus II
7. Selecione a lgica programvel a ser utilizada. utilizada. Neste caso usado o CPLD da famlia MAX7000S, MAX7000S denominada EPM7128SLC84-7. EPM7128SLC84-

18

Simulador Quartus II
8. O prximo passo permite a adio de outras ferramentas como Leonardo Spectrum que permite a interao entre FPGA e ASIC. ASIC.

19

Simulador Quartus II
9. O ltimo passo apresenta um resumo do projeto a ser executado. Posteriormente, clique em Finish. executado. Finish

20

Simulador Quartus II
10.Defina 10.Defina o modo a ser utilizado para desenvolver o projeto: AHDL, projeto: AHDL, VHDL ou Block Diagram/Schematic Diagram/ file. File. File. Selecione File > New e VHDL file.

21

Simulador Quartus II
11.Escreva 11.Escreva o cdigo da funo AND e salve com extenso .vhd. vhd

22

Simulador Quartus II
12.Compilao: 12.Compilao: Processing > Start Compilation. A Compilation. compilao a verificao da construo. Nesta construo. etapa, erros lgicos no so detectados. Esta detectados. verificao feita na simulao do circuito. circuito.

23

Simulador Quartus II
13.A 13.A verificao de erros lgicos feita na simulao do circuito Para isto selecione File > New e escolha Vector Waveform File. File.

24

Simulador Quartus II
14.Ajuste 14.Ajuste o tempo de simulao: Edit > End Time e simulao: coloque 80 ns para simulao. Clique View > Fit in simulao. Window para que todo o tempo de simulao fique visvel na janela. janela.

25

Simulador Quartus II
15.Selecione 15.Selecione os vetores de entrada e sada a serem includos na simulao. Para isto clique em Edit > simulao. Insert > Node or Bus. Bus. 16.Na 16.Na janela que aparece, clique em Node Finder. Finder. 17.Na 17.Na prxima janela, selecione Pins: All e, em Pins: seguida, clique em List (a funo List amostra os vetores de entrada e sada). Em seguida, sada). utilizando o boto >>, transferir as entradas e >>, sadas para a ferramenta de simulao. Clique em simulao. Ok (duas janelas). janelas)
26

Simulador Quartus II

27

Simulador Quartus II
18.Insira 18.Insira as formas de onda de entrada para testar todas as possibilidades para a entrada do projeto. projeto. Clique com o boto direito, selecione Grouping > Group. Insira um nome para o grupo de entradas (por exemplo, inputs ou entradas). entradas).

28

Simulador Quartus II
19.Clique 19.Clique com o boto direito sobre o item agrupado e selecione Value > Count Value. Verifique que o Value. campo Start Value tenha o valor [0] e o End Value, Value, [7] (na realidade, pode-se ver que os bits podede entrada como trs entradas de 1 bit, que pode assumir, portanto, valores de 000 a 111). 111)

29

Simulador Quartus II
20.O 20.O passo seguinte a simulao do circuito projetado. projetado. Clique em Assignments > Settings, e Settings, selecione Simulator Settings e escolha Functional em Simulation Mode. Mode.

30

Simulador Quartus II
21.Clique 21.Clique em Processing Simulation Netlist. Netlist. > Generate Functional

22.Antes 22.Antes de executar a simulao necessrio salvar o arquivo que deve conter o mesmo nome dado ao circuito lgico. Neste caso, mux2_fd.vwf . Isso lgico. mux2 fd. tudo define uma simulao funcional. funcional.

31

Simulador Quartus II
23.Clique 23.Clique em Processing > Start Simulation. Verifique Simulation. o valor da sada para cada uma das duas entrada e veja que o circuito sintetizado a partir do cdigo em VHDL de fato implementa a funo desejada. desejada.

32

Simulador Quartus II
24.Clique 24.Clique em Tools > Netlist Viewers > RTL Viewer. Viewer. Isso mostra o fluxo de dados criado pelo cdigo VHDL implementado. implementado.

33

Simulador Quartus II

34

Simulador Quartus II

35

Aula de Hoje
Repita os procedimentos para as implementaes das demais modelagens ou arquiteturas. arquiteturas.

36

Potrebbero piacerti anche