decodificador 2 para 4 (2 : 4) tabela verdade a1a0s0s1s2s3 00 1000 01 0100 10 0010 11 0001 o...

48
Decodificador 2 para 4 (2 : 4) Tabela Verdade A1 A0 S0 S1 S2 S3 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 0 0 1 O decodificador é um circuito digital que recebe um conjunto de entradas que representa um número binário e ativa apenas a saída que corresponde ao número recebido. Um circuito decodificador analisa as entradas, determina o número binário que está presente e ativa a saída correspondente ao número na entrada. Todas as outras saídas permanecem desativadas . . . . . . 2 N Saídas N en tr ad as Decodificad or

Upload: internet

Post on 17-Apr-2015

117 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Tabela Verdade

A1 A0 S0 S1 S2 S3

0 0 1 0 0 0

0 1 0 1 0 0

1 0 0 0 1 0

1 1 0 0 0 1

• O decodificador é um circuito digital que recebe um conjunto de entradas que representa um número binário e ativa apenas a saída que corresponde ao número recebido.

• Um circuito decodificador analisa as entradas, determina o número binário que está presente e ativa a saída correspondente ao número na entrada.

• Todas as outras saídas permanecem desativadas

.

.

.

.

.

.

2N Saídas

N entradas Decodificador

Page 2: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Tabela Verdade

A1 A0 S0 S1 S2 S3

0 0 1 0 0 0

0 1 0 1 0 0

1 0 0 0 1 0

1 1 0 0 0 1

Page 3: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Um decodificador N:2N apresenta:

N entradas

2N saídas.

Page 4: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Tabela Verdade

A1 A0 S0 S1 S2 S3

0 0 1 0 0 0

0 1 0 1 0 0

1 0 0 0 1 0

1 1 0 0 0 1

Descrição Verilog:

module decodificador2x4_descricao1

(output reg S0, S1, S2, S3,

input A0, A1);

always @ (*) begin

S0 = (!A0)&(!A1);

S1 = (A0)&(!A1);

S2 = (!A0)&A1;

S3 = A0&A1;

end

endmodule

Page 5: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Tabela Verdade

A1 A0 S0 S1 S2 S3

0 0 1 0 0 0

0 1 0 1 0 0

1 0 0 0 1 0

1 1 0 0 0 1

Esquema elétrico

Simulação

Page 6: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Tabela Verdade

A1 A0 S0 S1 S2 S3

0 0 1 0 0 0

0 1 0 1 0 0

1 0 0 0 1 0

1 1 0 0 0 1

Esquema elétrico

Simulação

Page 7: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 2 para 4 (2 : 4)

Tabela Verdade

A1 A0 S0 S1 S2 S3

0 0 1 0 0 0

0 1 0 1 0 0

1 0 0 0 1 0

1 1 0 0 0 1

module decodificador2x4_descricao1

(output reg S0,S1,S2,S3,

input [1:0] controle);

always @ (*) begin

case (controle)

2'b00: begin

S0 = 1;

S1 = 0;

S2 = 0;

S3 = 0;

end

2'b01: begin

S0 = 0;

S1 = 1;

S2 = 0;

S3 = 0;

end

2'b10: begin

S0 = 0;

S1 = 0;

S2 = 1;

S3 = 0;

end

2'b11: begin

S0 = 0;

S1 = 0;

S2 = 0;

S3 = 1;

end

endcase

end

endmodule

Page 8: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 3 para 8 (3 : 8)

Page 9: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 3 para 8 (3 : 8)

Observe que uma Saídai do decodificador acima implementa o

minitermo mi das variáveis S2,S1 e S0

Page 10: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Decodificador 3 : 8

O símbolo utilizado para o decodificador é:

Page 11: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador

• O codificador é um circuito digital que possui um certo número de entradas das quais apenas uma delas é ativada por vez e produz um código de saída de N bits, dependendo de qual entrada está ativada.

• O diagrama de blocos abaixo mostra um codificador de M entradas e N saídas.

• As entradas são ativadas em nível ALTO

.

.

.

.

.

.

M entradas Codificador Código de saída de N bitsApenas uma em nível ALTO de

cada vez

Page 12: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador

• Exemplo 1 :

Projetar um codificador octal para binário (8 entradas e 3 saídas)

Solução:

.

.

.

.

.

.

8 entradas Codificador Código de saída de 3 bitsApenas uma em nível ALTO de

cada vez

Page 13: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Octal - binário

.

.

.

.

.

.

8 entradas Codificador Código de saída de 3 bitsApenas uma em nível ALTO de

cada vez

A7 A6 A5 A4 A3 A2 A1 A0 O2 O1 O0

0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 0 0 0 1

0 0 0 0 0 1 0 0 0 1 0

0 0 0 0 1 0 0 0 0 1 1

0 0 0 1 0 0 0 0 1 0 0

0 0 1 0 0 0 0 0 1 0 1

0 1 0 0 0 0 0 0 1 1 0

1 0 0 0 0 0 0 0 1 1 1

Entradas Saídas

Page 14: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Octal - binário

A7 A6 A5 A4 A3 A2 A1 A0 O2 O1 O0

0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 0 0 0 1

0 0 0 0 0 1 0 0 0 1 0

0 0 0 0 1 0 0 0 0 1 1

0 0 0 1 0 0 0 0 1 0 0

0 0 1 0 0 0 0 0 1 0 1

0 1 0 0 0 0 0 0 1 1 0

1 0 0 0 0 0 0 0 1 1 1

Entradas Saídas

O0 = A1 + A3 + A5 + A7

O1 = A2 + A3 + A6 + A7

O2 = A4 + A5 + A6 +A7

Equações booleanas

Page 15: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Octal - binário

module codificador_octal_binario

(output reg O0, O1, O2,

input A0, A1, A2, A3, A4, A5, A6, A7);

always@(*) begin

O0 = A1 | A3 | A5 | A7;

O1 = A2 | A3 | A6 | A7;

O2 = A4 | A5 | A6 | A7;

end

endmodule

A7 A6 A5 A4 A3 A2 A1 A0 O2 O1 O0

0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 0 0 0 1

0 0 0 0 0 1 0 0 0 1 0

0 0 0 0 1 0 0 0 0 1 1

0 0 0 1 0 0 0 0 1 0 0

0 0 1 0 0 0 0 0 1 0 1

0 1 0 0 0 0 0 0 1 1 0

1 0 0 0 0 0 0 0 1 1 1

Entradas Saídas

Page 16: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Octal - binário

A7 A6 A5 A4 A3 A2 A1 A0 O2 O1 O0

0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 0 0 0 1

0 0 0 0 0 1 0 0 0 1 0

0 0 0 0 1 0 0 0 0 1 1

0 0 0 1 0 0 0 0 1 0 0

0 0 1 0 0 0 0 0 1 0 1

0 1 0 0 0 0 0 0 1 1 0

1 0 0 0 0 0 0 0 1 1 1

Entradas Saídas

Page 17: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Decimal - BCD (Binary Coded Decimal)

Código BCD 8421 – Binary Coded Decimal (Decimal Codificado em Binário), é composto por

quatro bits, tendo cada bit um peso equivalente ao do sistema numérico binário:

Decimal BCD

0 0 0 0 0

1 0 0 0 1

2 0 0 1 0

3 0 0 1 1

4 0 1 0 0

5 0 1 0 1

6 0 1 1 0

7 0 1 1 1

8 1 0 0 0

9 1 0 0 1

Ao invés de se converter um número formado por

diversos dígitos para o

sistema binário os sistemas digitais que utilizam

este código podem converter cada

dígito do número para o BCD.

Por exemplo:

45623 = 0100 0101 0110 0010 0011

4 5 6 2 3

Page 18: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Decimal - BCD (Binary Coded Decimal)

A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 S3 S2 S1 S0

0 0 0 0 0 0 0 0 0 1 0 0 0 0

0 0 0 0 0 0 0 0 1 0 0 0 0 1

0 0 0 0 0 0 0 1 0 0 0 0 1 0

0 0 0 0 0 0 1 0 0 0 0 0 1 1

0 0 0 0 0 1 0 0 0 0 0 1 0 0

0 0 0 0 1 0 0 0 0 0 0 1 0 1

0 0 0 1 0 0 0 0 0 0 0 1 1 0

0 0 1 0 0 0 0 0 0 0 0 1 1 1

0 1 0 0 0 0 0 0 0 0 1 0 0 0

1 0 0 0 0 0 0 0 0 0 1 0 0 1

S3 = A8 + A9

S2 = A4 + A5 + A6 + A7

S1 = A2 + A3 + A6 + A7

S0 = A1 + A3 + A5 + A7 + A9

Equações booleanas

Entradas Saídas

Page 19: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Decimal - BCD (Binary Coded Decimal)

module codificador_decimal_BCD

(output reg S0, S1, S2, S3,

input A1, A2, A3, A4, A5, A6, A7, A8, A9);

always@(*) begin

S3 = A8 | A9;

S2 = A4 | A5 | A6 | A7;

S1 = A2 | A3 | A6 | A7;

S0 = A1 | A3 | A5 | A7 | A9;

end

endmodule

Page 20: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Codificador Decimal - BCD (Binary Coded Decimal)

Simulação

Page 21: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Um multiplexador 2N:1 apresenta:

2N entradas de dados

N entradas de seleção;

1 saída.

Um multiplexador 2N:1 conecta uma de suas 2N entradas à saída

Page 22: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

• Abaixo está representado um multiplexador 8:1 como sendo uma chave cuja posição corresponde ao número binário apresentado nas entradas de controle A, B e C.

• A posição da chave mostrada na figura abaixo corresponde aos valores: A = 1, B = 1 e C = 0.

Page 23: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

MUX 4:1

Z

I0

I1

I2

I3

A B

MUX 4:1

Page 24: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

MUX 4:1

Z

I0

I1

I2

I3

A B

MUX 4:1

Z =I0 A + I1B A B + I2A B +

+ I3AB

Page 25: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

Z =I0 A + I1B A B + I2A B +

+ I3AB

Descrição Verilog:

module multiplexador4x1_descricao1

(output reg Z,

input A, B, I0, I1, I2, I3);

always @ (*) begin

Z = I0&(!A)&(!B)|I1&B&(!A)|I2&(!B)&A|I3&A&B;

end

endmodule

Page 26: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

+ I3ABZ =I0 A + I1B A B + I2A B +

Page 27: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

module multiplexador4x1_descricao2

(output reg Z,

input A, B, I0, I1, I2, I3);

always @ (*) begin

case ({A, B})

2'b00: Z = I0;

2'b01: Z = I1;

2'b10: Z = I2;

2'b11: Z = I3;

endcase

end

endmodule

Page 28: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

module multiplexador4x1_descricao2

(output reg Z,

input A, B, I0, I1, I2, I3);

always @ (*) begin

case ({A, B})

2'b00: Z = I0;

2'b01: Z = I1;

2'b10: Z = I2;

2'b11: Z = I3;

endcase

end

endmodule

Diagrama Esquemático do mux

Page 29: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

A B Z

0 0 I0

0 1 I1

1 0 I2

1 1 I3

Tabela Verdade

Multiplexador 4:1

module multiplexador4x1_descricao3

(output reg Z,

input A, B, I0, I1, I2, I3);

always @(*) begin

Z = 0;

if ({A,B} == 0)

Z = I0;

else if ({A,B} == 1)

Z = I1;

else if ({A,B} == 2)

Z = I2;

else if ({A,B} == 3)

Z = I3;

end

endmodule

Diagrama Esquemático do mux

Page 30: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

O Multiplexador como um Bloco Lógico Básico

• Um multiplexador 2N:1 pode implementar qualquer função de N variáveis:

• Exemplo:• Implementar a função booleana:

Page 31: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

O Multiplexador como um Bloco Lógico Básico

Solução:

1. Mapa de Karnaugh da função

Page 32: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

O Multiplexador como um Bloco Lógico Básico

2. conectar as variáveis às entradas de seleção do multiplexador;

3. conectar "0" ou "1" apropriadamente em cada entrada de dados, dependendo

do valor de saída desejado;

0123456789101112131415

f

A3 A2 A1 A0

A B C D

MUX

16:1

0000111110000111

Page 33: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Multiplexadores em Cascata •Multiplexadores maiores podem ser implementados utilizando-se multiplexadores menores em cascata:

•Exemplo1: MUX 8:1 construído a partir de dois MUX 4:1 e um MUX 2:1

                                                           

Page 34: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Multiplexadores em Cascata

• Exemplo2: MUX 8:1 construído a partir de quatro MUX 2:1 e um MUX 4:1

Page 35: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador

Page 36: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

• Um demultiplexador N:2N apresenta:

• 1 entrada de dados.

• 2N saídas.

• N entradas de seleção representando o índice binário i da saída à qual a entrada de dado está conectada;

• Exemplo:

Demultiplexador

Estrutura interna do demultiplexador 1:2 é:

D

A

D = Dado

A = Seleção

Saída0 = D.A

Saída1 = D.A

Page 37: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador

D

A

D = Dado

A = Seleção

Saída0 = D.A

Saída1 = D.A

A Saída0 Saída1

0 D 0

1 0 D

Tabela Verdade

Page 38: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador 2 : 4

Page 39: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador 2 : 4

A B Y0 Y1 Y2

0 0 D 0 0 0

0 1 0 D 0 0

1 0 0 0 D 0

1 1 0 0 0 D

Tabela Verdade

D

Y3

Y0 =D A B

A B +

A BY1 =D Y2 =D

B +

Y3 =D A +

Page 40: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador 2 : 4

A B Y0 Y1 Y2

0 0 D 0 0 0

0 1 0 D 0 0

1 0 0 0 D 0

1 1 0 0 0 D

Tabela Verdade

Y3

Y0 =D A B

A B +

A BY1 =D Y2 =D

B +

Y3 =D A +

Descrição:

module demultiplexador2x4_descricao1

(output reg Y0, Y1, Y2, Y3,

input A, B, D);

always @ (*) begin

Y0 = D&(!A)&(!B);

Y1 = D&(!A)& B;

Y2 = D&A&(!B);

Y3 = D&A&B;

end

endmodule

Esquemático

Equações booleanas

Page 41: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador 2 : 4

Descrição:

module demultiplexador2x4_descricao1

(output reg Y0, Y1, Y2, Y3,

input A, B, D);

always @ (*) begin

Y0 = D&(!A)&(!B);

Y1 = D&(!A)& B;

Y2 = D&A&(!B);

Y3 = D&A&B;

end

endmodule

Simulação

Page 42: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Demultiplexador 2 : 4

module demultiplexador2x4_descricao2

(output reg Y0, Y1, Y2, Y3,

input A, B, D);

always @(*) begin

Y0 = 0; Y1 = 0; Y2 = 0; Y3 = 0;

if ({A,B} == 0)

Y0 = D;

else if ({A,B} == 1)

Y1 = D;

else if ({A,B} == 2)

Y2 = D;

else if ({A,B} == 3)

Y3 = D;

end

endmodule

Simulação

Page 43: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Multiplexadores e Demultiplexadores podem ser utilizados em conexões multi-ponto.

No exemplo abaixo é possível selecionar múltiplas fontes de entrada e múltiplos destinos de saída:

Conexões multi-ponto

Page 44: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Controlador para display de 7 segmentos

Controlador para display de 7 segmentos

Controlador

Display de 7 segmentos

Entrada

Binária

De 4 bits

a

b

c

d

e

fg

Page 45: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Controlador para display de 7 segmentos

Podemos formar qualquer algarismo de 0 a 9 usando uma combinação de 7 segmentos

de um mostrador.

Page 46: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Tabela Verdade do controlador

Dígito decimal

entradas saídas

Page 47: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

S0

S1

S2

S3S4

S5

S6

S7

S8

S9

Controlador para display de 7 segmentos

DECODIFICADOR CODIFICADOR

A

B

C

D

a

b

c

d

e

f

g

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

CONTROLADOR

A0

A1

A2

A3

Page 48: Decodificador 2 para 4 (2 : 4) Tabela Verdade A1A0S0S1S2S3 00 1000 01 0100 10 0010 11 0001 O decodificador é um circuito digital que recebe um conjunto

Controlador para display de 7 segmentos

module controlador_7_segmentos

(output reg [7:1] seg, // seg[7] = a; seg[6] = b ... seg[1] = g

input [3:0] digito);

always @(*) begin

case (digito)

4'b0000: seg = 7'b1111110;

4'b0001: seg = 7'b0110000;

4'b0010: seg = 7'b1101101;

4'b0011: seg = 7'b1111001;

4'b0100: seg = 7'b0110011;

4'b0101: seg = 7'b1011011;

4'b0110: seg = 7'b1011111;

4'b0111: seg = 7'b1110000;

4'b1000: seg = 7'b1111111;

4'b1001: seg = 7'b1111011;

default : seg = 7'b0000000;

endcase

end

endmodule

Simulação