notas de aula te050 2017 2 circuitos digitaiseletrica.ufpr.br/~pastro/te050/notas de aula...

71
UNIVERSIDADE FEDERAL DO PARANÁ SETOR DE TECNOLOGIA DEPARTAMENTO DE ENGENHARIA ELÉTRICA Notas de Aula TE050 - ELETRÔNICA DIGITAL I Parte 2 – Circuitos Digitais Ademar Luiz Pastro 2017

Upload: buikhuong

Post on 14-Nov-2018

240 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

UNIVERSIDADE FEDERAL DO PARANÁ

SETOR DE TECNOLOGIA DEPARTAMENTO DE ENGENHARIA ELÉTRICA

Notas de Aula

TE050 - ELETRÔNICA DIGITAL I

Parte 2 – Circuitos Digitais

Ademar Luiz Pastro

2017

Page 2: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 2

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5 - CIRCUITOS COMBINACIONAIS 5.1 – Introdução Os circuitos digitais de um modo geral podem ser divididos em três categorias principais:

• Circuitos Combinacionais (ou Combinatórios) • Circuitos Seqüenciais • Circuitos Processados

Circuitos Combinacionais: são circuitos digitais em que os sinais de saída dependem única e

exclusivamente das combinações dos sinais presentes nas entradas do circuito em um instante qualquer. Os circuitos combinacionais não possuem nenhum tipo de armazenamento de dados(memória), ou seja, as saídas não dependem de nenhum estado anterior do circuito. Os circuitos combinacionais são compostos somente por portas lógicas.

Exemplos de circuitos combinacionais:

• Codificador • Decodificador • Somador • Comparador • Gerador de paridade • Multiplexador • Demultiplexador

Circuitos Seqüênciais: outra categoria de circuitos digitais são os que possuem realimentação, ou

seja, o sinal de saída depende não somente dos valores atuais dos sinais de entrada, mas também dos valores de estados anteriores do circuito. Estes circuitos são denominados circuitos seqüenciais. Os circuitos seqüenciais possuem, além de portas lógicas, algum tipo de dispositivo de armazenamento (memória).

Exemplos de circuitos seqüenciais:

• Contador • Registrador • Controlador • Máquina de Estados

Circuitos Processados: os circuitos processados são aqueles que incorporam algum tipo de

processador, que pode ser um microprocessador, microcontrolador ou DSP. A rigor os circuitos processados são compostos por circuitos combinacionais e circuitos seqüenciais.

5.2 – Aplicação de um Sistema Digital Consideremos como exemplo inicial, o projeto de um Sistema Digital (Circuito Combinacional) para controlar a iluminação, o ar-condicionado e o acionamento do alarme em uma sala, a partir de sinais de entrada gerados por um conjunto de sensores. O diagrama esquemático do sistema está mostrado na figura abaixo:

Page 3: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 3

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Sistema

Digital

Sensor

Temperatura

Sensor

Abertura

Sensor

Presença

Sensor

Luminosidade

Iluminação

Ar

Condicionado

Alarme

T

A

P

L

IL

AR

AL

Os valores lógicos dos sinais gerados pelos sensores são:

Sensor de Temperatura:

°≤=°>=C 22 ra temperatuse , 0

C 22 ra temperatuse , 1T

Sensor de Abertura:

==

fechada laporta/jane , 0

aberta laporta/jane , 1A

Sensor de Presença:

==

presente ninguém , 0

presença alguma , 1P

Sensor de Luminosidade:

==

teinsuficien luz , 0

suficiente luz , 1L

As condições estabelecidas para acionamento dos dispositivos são:

• a) Se a temperatura da sala for > 22ºC e as portas e janelas estiverem fechadas e houver alguém presente na sala, o ar condicionado deve ser ligado;

• b) Se a luminosidade for insuficiente e houver alguém presente na sala, a iluminação deve ser ligada;

• c) Se houver alguma janela ou porta aberta e não houver ninguém presente na sala, o alarme deve ser acionado.

Page 4: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 4

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

As tabelas verdade para as saídas do sistema proposto estão mostradas abaixo:

T A P L IL AR AL 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1 1 0 0 0 0 1 1 1 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 0 0 0

As funções lógicas são, respectivamente: IL = Σ(2,6,10,14) AR = Σ(10,11) AL = Σ(4,5,12,13) Utilizando o mapa de Karnaugh para encontrar a expressão mínima das funções, temos:

LPIL = PATAR = PAAL =

1 1 1 1

T

A

P

L

1

1

T

A

P

L 1 1

1 1

T

A

P

L

Page 5: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 5

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

O circuito combinacional que realiza as funções encontradas acima é o seguinte:

T A P L

IL

AR

AL

A implementação física do circuito pode ser feita de várias maneiras:

• Projeto de circuito um integrado específico (microeletrônica) • Utilização de Dispositivo de Lógica Programável (PLD) • Montagem do circuito a partir de componentes discretos

Exemplos de componentes discretos disponíveis comercialmente:

• 74xx00/4011: 4 portas NAND de 2 entradas • 74xx02/4001: 4 portas NOR de 2 entradas • 74xx04/4049: 6 portas NÃO • 74xx08/4081: 4 portas E de 2 entradas • 74xx10/4023: 3 portas NAND de 3 entradas • 74xx11/4073: 3 portas E de 3 entradas • 74xx20/4012: 2 portas NAND de 4 entradas • 74xx21/4082: 2 portas E de 4 entradas • 74xx27/4025: 3 portas NOR de 3 entradas • 74xx30/4068: 1 porta NAND de 8 entradas • 74xx32/4071: 4 portas OU de 2 entradas • 74xx86/4070: 4 portas XOR • 74xx266/4077: 4 porta XNOR (Equivalência)

5.3 - Níveis Lógicos Nos circuitos digitais, os dois valores possíveis para as variáveis lógicas são representados por dois níveis diferentes de tensão. Em uma lógica positiva, o bit “1” é representado por um nível alto de tensão, enquanto o bit “0” é representado por um nível baixo de tensão. Assim: Tensão alta (high) = 1, Tensão baixa (low) = 0 Os níveis de tensão utilizados para representar os valores lógicos 1 e 0 são chamados níveis lógicos. Numa situação ideal, um nível de tensão representa a condição “alta” e outro nível de tensão representa a condição “baixa”.

Page 6: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 6

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Na prática, a condição “alta” é representada por um valor de tensão situado entre um valor mínimo e um valor máximo especificado para aquela condição. Da mesma forma, a condição “baixa” é representado por um valor de tensão entre o mínimo e o máximo especificado. Na figura abaixo, está representada esta situação:

Níveis Lógicos

Os valores VHMax, VHmin, VLmax e VLmin dependem da tecnologia utilizada no circuito. 5.3.1 - Níveis Lógicos para a família TTL Para os dispositivos da família TTL , os valores limites dos níveis lógicos estão mostrados na figura abaixo:

Níveis Lógicos TTL

ENTRADA SAÍDA 5.3.2 - Níveis Lógicos para a família CMOS Considerando uma tensão de alimentação de 5V, os valores limites dos níveis lógicos para os dispositivos da família CMOS estão mostrados na figura abaixo:

VIHmax

VIHmin

VILmax

VILmin

Nível alto -“1”

Nível baixo - “0”

Indefinido

VIH

VIL

2,0V

0,8V

0,0V

5,0V VOHmax

VOHmin

VOLmax

Nível alto -“1”

Nível baixo - “0”

Indefinido

VOH

VOL

2,4V

0,4V

0,0V

5,0V

VHmax

VHmin

VLmax

VLmin

Tensão “alta” bit “1”

Tensão “baixa” bit “0”

Indefinido

VOLmin

Page 7: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 7

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Níveis Lógicos CMOS

ENTRADA SAÍDA 5.4 - Sinais Digitais Os sinais digitais são representados por seqüências de pulsos retangulares, nos quais um valor alto de tensão representa o bit “1” e um valor baixo de tensão representa o bit “0”. Pulso Positivo:

Pulso Negativo:

Características do Pulso:

50%

10%

90%

Amplitude

tW

Largura do pulso

tr tf

Tempo de descida Tempo de subida

Nível alto

Nível baixo

t1

Borda Negativa Borda Positiva

t0

Nível baixo

Nível alto

t0 t1

Borda Positiva Borda Negativa

VIHmax

VIHmin

VILmax

VILmin

Nível alto -“1”

Nível baixo - “0”

Indefinido

VIH

VIL

3,5V

1,5V

0,0V

5,0V VOHmax

VOHmi

VOLmax

Nível alto -“1

Nível baixo - “0”

Indefinido

VOH

VOL

4,9V

0,1V

0,0V

5,0V

VOLmin

Page 8: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 8

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Trem de pulsos periódico:

f = 1 / T T = 1 / f A “Relação de trabalho” (Duty Cicle) de um pulso periódico é definida pela relação entre a largura do pulso tW e o período, em percentagem. Relação de trabalho (Duty cicle) = (tW / T)×100 (%) Exemplo:

No pulso periódico abaixo, determinar:

a) Período b) Freqüência c) Relação de trabalho

Período: T = 10 ms Frequência: f = 1 / T = 1 / 10×10-3 = 100 Hz Relação de trabalho = (tW / T)×100 = (10-3 / 10×10-3) ×100 = 10% Trem de pulsos não periódico: Um trem de pulsos não periódicos representa uma seqüência de sinais digitais aleatórios, sem nenhum tipo de periodicidade.

0 1 10 11 20 21 30 31 ms

T Período

Page 9: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 9

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5 – Circuitos Combinacionais Básicos O projeto de sistemas digitais pode ser feito a partir de módulos construtivos básicos, os quais realizam as funções mais comuns presentes nos sistemas digitais, tais como: codificação, decodificação, soma, multiplexação, demultiplexaçao, etc. Neste tópico serão analisados os principais módulos construtivos básicos. 5.5.1 - Codificadores Um codificador é um circuito combinacional, cujo objetivo é transformar uma entrada qualquer, como por exemplo, o ato de pressionar uma tecla ou um botão, em um código binário. Suponha um painel de trabalho, com um barramento de quatro linhas identificadas por A, B, C e D, contendo sinais digitais que, conforme visto anteriormente são representados por níveis de tensão alto (“1”) ou baixo (“0”). Deseja-se projetar um codificador que produza um valor binário de 1 a 4, de acordo com a linha do painel que estiver ativada num determinado instante, sendo A=1 e D=4.

Na saída do codificador devemos ter o valor binário correspondente à linha de entrada que estiver ativada, considerando que B2 é o dígito mais significativo e B0 o dígito menos significativo do código binário:

Entrada ativada B2 B1 B0 D 0 0 1 C 0 1 0 B 0 1 1 A 1 0 0

Para o projeto do codificador, podem ser consideradas diferentes alternativas, conforme mostrado a seguir. 5.5.1.1 - Codificador com entradas mutuamente exclusivas Considerando essa condição para o projeto do codificador, é assumido que, uma e somente uma das entradas está ativada em um determinado instante, ou seja, não existe a possibilidade de não haver nenhuma linha ativada ou mais de uma linha estarem ativadas simultaneamente. A tabela verdade para o codificador é:

A B C D

CODIFI- CADOR

B2

B1

B0

Binário

1 2 3 4

Page 10: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 10

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A B C D B2 B1 B0 0 0 0 0 x x x 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 1 x x x 0 1 0 0 0 1 1 0 1 0 1 x x x 0 1 1 0 x x x 0 1 1 1 x x x 1 0 0 0 1 0 0 1 0 0 1 x x x 1 0 1 0 x x x 1 0 1 1 x x x 1 1 0 0 x x x 1 1 0 1 x x x 1 1 1 0 x x x 1 1 1 1 x x x

Utilizando o mapa de Karnaugh para determinar as funções, temos: (B2) (B1) (B0)

B2 = A B1 = B + C B0 = B + D O circuito combinacional que realiza a codificação está mostrado abaixo:

B

B2A

C

D

B1

B0

5.5.1.2 - Codificador com possibilidade de mais de uma entrada ativada Nessa alternativa para o projeto do codificador é assumido que podem haver situações em que nenhuma das linhas de entradas esteja ativada, ou mais de uma linha de entrada seja ativada simultaneamente. Para o caso de não haver nenhuma linha ativada ou mais de uma linha ativada simultaneamente, é assumido que a saída do decodificador deve ser zero.

x x x

x x 1

x x x

x x x x

A

B

C

D x x x

x 1 x

1 x x x

x x x x

A

B

C

D 1 x x x

x 1 x

x x x

x x x x

A

B

C

D

Page 11: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 11

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A tabela verdade para o decodificador neste caso, é:

Entrada ativada B2 B1 S0 D 0 0 1 C 0 1 0 B 0 1 1 A 1 0 0

Outras situações 0 0 0

A B C D B2 B1 B0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 1 1 0 1 0 1 0 0 0 0 1 1 0 0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 1 1 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0

(B2) (B1) (B0)

DCBAB ⋅⋅=2 DCBADCBAB ⋅+⋅=1 DCBADCBAB ⋅+⋅⋅=0

O circuito combinacional correspondente é:

CB DA

B2

B0

B1

1

A

B

C

D

1

1

A

B

C

D 1

1

A

B

C

D

Page 12: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 12

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5.1.3 - Codificador com prioridade Nessa alternativa para o projeto do codificador é assumido que podem haver situações em que nenhuma das entradas esteja ativada, ou mais de uma entrada ativada simultaneamente. Caso nenhuma das linhas de entrada esteja ativada, a saída do decodificador deve ser zero. Caso mais de uma linha esteja ativada simultaneamente, a saída do codificador corresponde ao estado da linha de mais alta prioridade que está ativada. Para o projeto do codificador, vamos considerar que a linha de mais alta prioridade é A e a de mais baixa prioridade é D. A tabela verdade para o decodificador neste caso, é:

Entrada ativada B2 B1 B0 Nenhuma 0 0 0

D 0 0 1 C 0 1 0 B 0 1 1 A 1 0 0

E4 E3 E2 E1 A2 A1 A0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 0 1 0 0 1 1 1 1 1 0 0

Mapa deKarnaugh para as funções: (B2) (B1) (B0)

AB =2 BACAB +=1 BADCAB +⋅=0

1 1

1

1

1

A

B

C

D 1

1

1 1

1 1

A

B

C

D 1 1

1 1

1 1

1 1

A

B

C

D

Page 13: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 13

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

O circuito correspondente é:

B1

B0

D

B2

CBA

5.5.2 - Decodificadores O decodificador é um circuito combinacional cuja finalidade é transformar um código binário qualquer, em outra forma de representação. Considere como exemplo, um painel de serviço no qual existe um conjunto de 8 leds, numerados de 0 a 7, e um barramento com as linhas A, B e C, no qual está presente um valor binário de 0 a 7, sendo A o dígito mais significativo. Deseja-se sinalizar o led correspondente ao valor binário presente no barramento. Por exemplo, se o valor presente no barramento for 000, o led de número 0 do painel deverá acender, se o valor presente no barramento for 101, o led de número 5 deverá acender e assim sucessivamente para os demais valores.

Tabela verdade:

A B C L 0 L 1 L 2 L 3 L4 L5 L6 L7 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 1

DECODI- FICADOR

A B C

Binário

0

1

2

3

4

5

6

7

L1

L0

L2

L3

L4

L5

L7

L6

Conjunto de LEDs

Page 14: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 14

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

As funções correspondentes são:

CBAL ⋅⋅=0 CBAL ⋅⋅=1

CBAL ⋅⋅=2 CBAL ⋅⋅=3

CBAL ⋅⋅=4 CBAL ⋅⋅=5

CBAL ⋅⋅=6 CBAL ⋅⋅=7

O circuito correspondente está mostrado abaixo:

A B C

L0

L1

L2

L3

L4

L5

L6

L7

Obs.: É interessante observar que cada uma das saídas do decodificador acima,

corresponde à um minterm da função. Portanto, o circuito pode ser considerado um gerador de minterms.

5.5.2.1 - Decodificador Gray - Binário Considere um codificador(encoder), que a partir de sinais de entrada gera dados no código Gray. Suponha que para utilizar os dados gerados pelo encoder, é necessário uma conversão dos mesmos para o código binário. Projetar o decodificador para efetuar esta conversão, conforme o diagrama esquemático mostrado abaixo.

Page 15: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 15

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Tabela verdade:

A B C D B3 B2 B1 B0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 1 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 0 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 0 0 1 0 1 1 1 1 0 1 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 1 0

(B3) (B2)

AB =3 BABABAB ⊕=+=2

1 1

1 1

1 1

1 1

A

B

C

D 1 1

1 1

1 1

1 1

A

B

C

D

ENCODER

Entrada

A

B

C

D

DECODI- FICADOR

Gray

B3

B2

B1

B0

Binário

Page 16: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 16

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

(B1) (B0)

CBA

CBAABCCBACBAB

⊕⊕=⋅+++⋅=

1

DCBA

DABCDCABCDBADCBABCDADCBADCBADCBAB

⊕⊕⊕=+⋅++⋅⋅++⋅+⋅+⋅⋅=

0

O circuito correspondente é:

A

B

C

D

B3

B2

B1

B0

5.5.2.2 – Decodificador para Display de 7 Segmentos O display de 7 segmentos é composto por 7 diodos emissores de luz (LED ), identificados como a, b, c, d, e, f, g, e dispostos conforme a figura (a) abaixo:

O acionamento de cada um dos leds do display pode ser feito, através de um decodificador, de duas maneiras, conforme as figuras (b) e (c) acima.

1 1

1 1

1 1

1 1

A

B

C

D 1 1

1 1

1 1

1 1

A

B

C

D

a

b

c

d

e

f

g

Decodi-ficador

S

R

Decodi-ficador

S

R

Vcc

(b) (c) (a)

Page 17: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 17

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Na configuração (b) o led apaga quando o nível do sinal S na saída do decodificador for baixo(bit 0) e acende quando o nível do sinal S for alto(bit 1). Na configuração (c) o led acende quando o nível do sinal S na saída do decodificador for baixo (bit 0) a apaga quando o nível do sinal S for alto(bit 1). Considerando as duas formas de acionamento do LED , o display de 7 segmentos pode estar na configuração anodo comum ou catodo comum, conforme mostrado na figura abaixo: (Anodo comum) (Catodo comum)

Exemplo: Projetar um decodificador do código binário de 4 bits para display de 7

segmentos, catodo comum. Para cada valor binário na entrada, o display deverá mostrar o dígito equivalente do sistema hexadecimal.

É necessário que exista uma saída no decodificador para acionar cada um dos leds do display, conforme mostrado no diagrama esquemático abaixo:

As saídas estão identificadas com as mesmas letras do led que deve ser acionado. As tabelas verdades para as sete saídas do decodificador estão apresentadas a seguir:

A B C D a b c d e f g 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 1 0 0 1 1 1 1 1 1 0 0 1 0 1 0 0 0 1 1 0 0 1 1 0 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 1 1 1 1 1

Vcc a

b

c

d

e

f

g

a

b

c

d

e

f

g

a b c d e f g

A

B Binário

C

D

Page 18: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 18

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

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

As funções são:: a = ∑(0,2,3,5 ,6,7,8,9,10,12,14,15)

b = ∑(0,1,2,3,4,7,8,9,10,13)

c = ∑(0,1,3,4,5,6,7,8,9,10,11,13)

d = ∑(0,2,3,5,6,8,9,11,12,13,14)

e= ∑(0,2,6,8,10,11,12,13,14,15)

f = ∑(0,4,5,6,8,9,10,11,12,14,15)

g = ∑(2,3,4,5,6,8,9,10,11,13,14,15)

As expressões mínimas para as funções são: (a) (b)

BDACBADBDABCCAa +⋅+⋅+++= DCACDADCABADBb ++⋅⋅+⋅+⋅=

(c) (d)

DCDACABABAc ++⋅++= DBCDCBCDBDBACAd +++⋅⋅+=

1 1 1

1 1 1

1 1 1

1 1

A

B

C

D 1 1 1 1

1 1 1

1 1

1 1 1

A

B

C

D

1 1 1

1 1 1

1 1

1 1

A

B

C

D 1 1

1 1 1

1 1 1 1

1 1 1

A

B

C

D

Page 19: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 19

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

(e) (f) (g)

ACDBDCABe +⋅++= CBADCDBACBAf +⋅+++=

CBABADCADCBg ++++=

1 1

1 1 1 1

1 1 1

1 1

A

B

C

D 1

1 1 1

1 1 1 1

1 1

A

B

C

D 1 1 1

1 1

1 1 1 1

1 1 1

A

B

C

D

Page 20: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 20

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Projeto alternativo: (a) (b)

BDACBACDADBDABCa +⋅++⋅++= DCACDADCABADBb ++⋅⋅+⋅+⋅=

(c) (d)

DCACDABABACAc ++++⋅= DCBDBCCDBDBACAd +++⋅⋅+= (e) (f) (g)

ABDDBCACDADBe ++++⋅= ACDBCCBADCABADAf +++⋅⋅++=

DBCABDCBABACBg ++++=

1 1

1 1 1 1

1 1 1

1 1

A

B

C

D 1

1 1 1

1 1 1 1

1 1

A

B

C

D 1 1 1

1 1

1 1 1 1

1 1 1

A

B

C

D

1 1 1

1 1 1

1 1 1

1 1

A

B

C

D 1 1 1 1

1 1 1

1 1

1 1 1

A

B

C

D

1 1 1

1 1 1

1 1

1 1

A

B

C

D 1 1

1 1 1

1 1 1 1

1 1 1

A

B

C

D

Page 21: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 21

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5.3 - Comparador O comparador é um circuito que tem por finalidade, realizar a comparação entre duas palavras de n bits, indicando na saída o relacionamento (do ponto de vista de valores) entre estas duas palavras. Seja por exemplo, o projeto de um circuito comparador, que realiza a comparação de duas palavras de um bit cada uma (A e B), produzindo uma saída S, sendo:

S = 0, se as duas palavras forem iguais; S = 1, se as duas palavras forem diferentes.

A tabela verdade e a função e o circuito correspondente para a saída são:

A B S 0 0 0 0 1 1 1 0 1

BABABAS ⊕=+= A

BS

Alterando a especificação do comparador, de modo que a saída seja:

S = 1, se as duas palavras forem iguais; S = 0, se as duas palavras forem diferentes.

A tabela verdade e a função e o circuito correspondente para a saída são:

A B S 0 0 1 0 1 0 1 0 0

BAABBAS ⊕=+⋅= AB

S

Considere agora, o projeto de um circuito para comparar duas palavras de 2 bits A e B, produzindo uma saída S com as seguintes características:

S = 1, se as duas palavras forem iguais; S = 0, se as duas palavras forem diferentes.

COMPA RADOR

A0

B1 S

A1

B0

COMPA RADOR

A

B

S

Page 22: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 22

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A tabela verdade para a saída S é:

A1 A0 B1 B0 S 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0

A função para a saída S é:

S = Σ(0,5,10,15)

0101010101010101 BBAABBAABBAABBAAS +++=

Representando de outra forma:

)BA)(BA()BA)(BABA(

)BA(BA)BA(BA

)BABA(BA)BABA(BAS

0011001111

00110011

0000110000110

⊕⊕=⊕+=

⊕+⊕=

+++=

Circuito do Comparador:

A1

B1

A0B0

S

Exercício:

Projetar um comparador para duas palavras de 4 bits A e B, produzindo uma saída S sendo:

S = 1, se as duas palavras forem iguais; S = 0, se as duas palavras forem diferentes.

Por analogia com o desenvolvimento do comparador para duas palavras de 2 bits visto acima, a função correspondente a um comparador para duas palavras de 4 bits é:

))()()(( 00112233 BABABABAS ⊕⊕⊕⊕=

O circuito correspondente é:

A3

B3

A2

B2

A1B1

A0

B0

S

Page 23: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 23

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Nos comparadores vistos até aqui, a saída S indica simplesmente se as duas palavras comparadas são iguais ou diferentes. Existem situações em que se deseja conhecer também qual das duas palavras é maior ou menor do que a outra. Nessa situação, além da saída que indica se as duas palavras são iguais (A = B), deve existir uma saída para indicar se A > B e outra para indicar se A < B. Comparador para palavras de um bit:

Saídas do comparador: (A>B) = 1 se A > B; (A=B) = 1 se A = B; (A<B) = 1 se A < B;

As tabelas verdade para as três saídas são:

A B A>B A=B A<B 0 0 0 1 0 0 1 0 0 1 1 0 1 0 0 1 1 0 1 0

As funções correspondentes são:

BABA => )(

BABA ⊕== )(

BABA =< )( Circuito do comparador:

A>B

A<B

A=B

BA

Comparador para palavras de 2 bits:

COMPARADOR

A

B

A>B

A=B

A<B

COMPARADOR

A>B

A=B

A<B

A0

B1

A1

B0

A

B

Page 24: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 24

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Tabelas verdade:

A1 A0 B1 B0 A>B A=B A<B 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 0 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 0 1 0 1 1 0 0 1 1 1 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 0 1 0 0

Funções:

(A=B) = Σ(0,5,10,15) (A>B) = Σ(4,8,9,12,13,14) (A<B) = Σ(1,2,3,6,7,11)

Assim:

))(()( 0011 BABABA ⊕⊕==

01000111)( BBABAABABA ++=>

01000111)( BBABAABABA ++=<

Representando as funções de outra forma:

)(

)(

)(

110011

11110011

0101010111

BABABA

BABABABA

BBAABBAABABA

⊕+=

++=

++=>

)(

)(

)(

110011

11110011

0101010111

BABABA

BABABABA

BBAABBAABABA

⊕+=

++=

++=<

Circuito:

A1

B1B0

A0

A=B

A>B

A<B

Page 25: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 25

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5.4 - Multiplexador Um multiplexador digital é um circuito que possui N entradas e seleciona uma delas, em um determinado instante, para transferir para a saída. Este processo é denominado multiplexação. A seleção de qual entrada deverá ser transferida para a saída é feita através de entradas de seleção, também chamadas de entradas de endereço. O multiplexador atua como uma chave de múltiplas posições controlada digitalmente, de modo que o valor digital aplicado às entradas de seleção define qual entrada de dados será comutada para a saída. Na figura abaixo, está representado um multiplexador com duas linhas de entrada.

O número de linhas de entrada que podem ser selecionadas é 2n, onde n é o número de entradas de seleção disponíveis. No multiplexador mostrado acima, com duas entradas, é necessária somente uma entrada de seleção (A). Quando A = 0, o conteúdo da entrada E0 é transferido para a saída e, quando A = 1, o conteúdo da entrada E1 é transferido para a saída.

A tabela verdade que representa a operação do multiplexador é:

A E1 E0 S 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1

A função correspondente à saída S é:

10 AEEAS +=

O circuito correspondente ao multiplexador está mostrado na figura abaixo:

E0

E1

S

A

Observa-se no circuito acima que somente uma das duas portas AND está habilitada para cada um dos valores da entrada de seleção A, deixando passar o respectivo sinal de entrada para a saída S.

E1

E0 S (Saída) MUX

A

Entrada de seleção

Page 26: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 26

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Considere agora um multiplexador com duas entradas de seleção (A e B), com capacidade portanto, de selecionar uma dentre quatro linhas de entrada. O diagrama esquemático do multiplexador está mostrado na figura abaixo:

Tabela verdade:

A B S

0 0 E0 0 1 E1 1 0 E2 1 1 E3

Função para a saída S:

3210 ABEEBABEAEBAS +++⋅=

O circuito é:

E0

E1

E2

E3

S

BA

Multiplexador com entrada de habilitação Existem situações em que é necessário controlar a atuação multiplexador. Este procedimento é denominado de Habilitar ou Desabilitar o circuito. Quando o circuito está habilitado, ele responde normalmente aos sinais de entrada, de acordo com sua funcionalidade. Quando o circuito está desabilitado, ele não responde aos sinais de entrada, ou seja, não executa a função para o qual foi projetado. No multiplexador de duas entradas cujo diagrama esquemático está mostrado abaixo, a entrada H habilita o funcionamento do circuito.

E1

E0

S MUX

A

E2

E3

B

Page 27: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 27

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

• Para H = 0 o circuito está habilitado a realizar a operação de multiplexação. • Para H = 1 o circuito está desabilitado e a saída é sempre 0, independente dos

sinais de entrada.

Circuito do multiplexador com Habilitação:

E0 S

H

E1

A

5.5.5 - Demultiplexador O demultiplexador é um circuito que executa a função inversa do multiplexador, ou seja, recebe dados a partir de uma única linha de entrada e transfere, seletivamente, para várias linhas de saída (uma de cada vez), que são selecionadas a partir das entradas de seleção.

O sinal presente na linha de entrada (E) será transferido para a linha de saída S1 ou S0, em função do valor da entrada de seleção (A), conforme mostrado na tabela:

S1

S0

DEMUX

A

E

E1

E0

S MUX

A

H

Page 28: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 28

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A S0 S1

0 E 0

As funções para S1 e S0 são:

EAS =0

AES =1

O circuito que realiza a operação de demultiplexação está mostrado abaixo:

S1

S0

A

E

Para um demultiplexador com 4 linhas de saída (2 entradas de seleção) temos:

A B S0 S1 S2 S3

0 0 E 0 0 0

0 1 0 E 0 0

1 0 0 0 E 0

EBAS ⋅=0

BEAS =1

EBAS =1

ABES =0

Circuito:

S0

S1

S2

S3

E

AB

Page 29: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 29

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5.6 - Somador Binário 5.5.6.1 - Meio Somador (Half Adder): Um meio somador (half adder) é um circuito que realiza a soma aritmética de dois bits. O circuito possui duas saídas, sendo uma correspondente à soma dos dois bits (S)e outra correspondente ao “vai um” (Carry).

Tabelas verdade para as saídas (S) e (C):

A B S C

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

Funções:

BABABAS ⊕=+= ABC = A soma aritmética de dois bits é portanto, uma operação OU-Exclusivo. O circuito é:

A

BS

C

5.5.6.2 - Somador completo (Full Adder): Na soma de dois números binários com n bits, são somados os bits coluna a coluna, com os dígitos menos significativos somados primeiro. A soma de cada par de bits gera um bit de soma (S) e um bit de vai um (C) como foi visto acima. Para a soma do primeiro par de bits (menos significativo), pode ser utilizado um meio somador, visto que só existem dois bits a serem somados. Na soma seguinte porém, é necessário somar três bits: os dois bits dos números a serem somados mais o bit de vai um da soma anterior. A mesma situação ocorre com as colunas subseqüentes. Para estas somas, o meio somador não é adequado. É necessário neste caso, um circuito com capacidade para somar três bits. Este circuito é chamado somador completo (full adder).

MEIO SOMADOR

A

B

S

C

(Soma)

(Vai um)

Page 30: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 30

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A tabela verdade para o somador completo é:

A B Ci S Co

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

As funções são:

iii

iiiiii

CBAC)BA(C)BA(

C)ABBA(C)BABA(CABCBACBACBAS

⊕⊕=⊕+⊕=

+⋅++=+⋅+⋅+=

ii BCACABC ++=0

Circuito o circuito correspondente ao somador completo é:

AB

CiS

Co

A B Ci

Co SSomador

Ci

Co

SOMADOR COMPLETO

A

B

S

Co Ci

Page 31: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 31

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5.6.3 - Somador binário paralelo O somador binário paralelo é obtido através do cascateamento de somadores completos. Cada somador completo é responsável pela soma de um par de bits (coluna) dos números binários a serem somados. O “vai um” de uma soma se propaga para o somador seguinte, onde é somado com o próximo para de bits.

Co0

Ci1

Co1

Ci2

Co2

Ci3

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A3 B3

S3

Co3

A2 B2

S2

A1 B1

S1

A0 B0

Ci0

S0

5.5.6.4 - Somador binário paralelo com vai um antecipado No somador binário paralelo visto acima, embora a soma seja feita em paralelo, com cada par de bits sendo somados por um somador completo, o resultado final da soma somente estará completo depois que o “vai um” se propagar por toda a cadeia de somadores. Se imaginarmos um somador para um grande número de bits, 64 bits por exemplo, este tempo de propagação do vai um pode ser significativo. Uma forma de evitar esta propagação é antecipar o bit de vai um para todos os somadores, de modo que o bit de vai um esteja disponível a todos os somadores simultaneamente. Considere um somador completo:

A B Ci

Co SSomador

Ci

Co

A função para o “vai um” é: ii BCACABC ++=0 ou iC)BA(ABC ++=0

Vai existir um “vai um” na saída de um somador qualquer, se este “vai um” for gerado no somador ou se for propagado através do mesmo. A parcela AB representa a condição em que o “vai um” é gerado no somador, e será representada por ABCg = .

A parcela iC)BA( + representa a condição em que o “vai um” é propagado pelo somador, e será

representada por BAC p += .

Assim o “vai um” de um somador é, ipgo CCCC +=

Page 32: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 32

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Considere agora, o somador paralelo:

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A3 B3

S3

Co3

A2 B2

S2

A1 B1

S1

A0 B0

Ci0

S0 333 BACg = 222 BACg = 111 BACg = 000 BACg =

333 BAC p += 222 BAC p += 111 BAC p += 000 BAC p +=

A condição para que haja um bit de vai um em cada um dos somadores é: No somador 0:

000000

000000000

ii

iipgo

CBCABA

C)BA(BACCCC

++=

++=+=

Somador 1:

001011

00011

1111

ippgpg

ipgpg

ipgo

CCCCCC

)CCC(CC

CCCC

++=

++=

+=

Somador 2:

0012012122

00101122

2222

ipppgppgpg

ippgpgpg

ipgo

CCCCCCCCCC

)CCCCCC(CC

CCCC

+++=

+++=

+=

Somador 3:

001230123123233

001201212233

3333

ippppgpppgppgpg

ipppgppgpgpg

ipgo

CCCCCCCCCCCCCCC

)CCCCCCCCCC(CC

CCCC

++++=

++++=

+=

Utilizando a lógica acima, todos os bit de “vai um” estarão disponíveis nas entradas de cada um dos somadores simultaneamente, eliminando assim o tempo de propagação do “vai um”.

Page 33: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 33

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Somador binário de 4 bits com vai um antecipado

A0

B0

A1

B1

A2

B2

A3

B3

S1

S2

S3

S0

Ci0

Cp0Cg0

Cg1

Cp1

Cg2

Cp2

Cg3

Cp3

CiA

B

SS

om

ado

rC

iAB

SS

om

ado

rC

iAB

SS

om

ado

rC

iAB

SS

om

ado

r

Page 34: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 34

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

5.5.6 – Subtrator binário Uma operação de subtração de dois números pode ser realizada através de uma soma, trocando-se o sinal do subtraendo. Assim, a operação A - B pode ser realizada através da operação A + (-B). Lembrando que, no sistema binário, um número negativo é representado através de seu complemento de dois, e que, o complemento de dois de um número binário é obtido negando número e adicionando 1, temos:

1)( ++=−+=− BABABA Desta forma, é possível utilizar um somador para efetuar uma subtração (A - B), complementando a entrada B e somando 1. Para somar 1, basta fazer Ci = 1 no primeiro somador da cadeia.

A B Ci

Co SSomador

ACi=1

SCo

B

Para se obter um subtrator para números binários de n bits, basta ligar em cascata n subtratores. Na figura abaixo é mostrado um circuito subtrator de para números binários de 4 bits.

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

Ci = 1

Co

Através da implementação de uma lógica adicional ao circuito, é possível construir um circuito que execute ambas as operações, de soma e de subtração. O circuito mostrado na figura abaixo, executa as operações de soma e de subtração de dois números binários de 4 bits. A operação a ser executada é selecionada através da entrada OP.

• OP = 0, o circuito realiza a soma A + B; • OP = 1, o circuito realiza a subtração A - B.

Como se observa, existe um multiplexador na entrada B de cada um dos somadores. Se OP = 0, a entrada B de cada somador é a própria entrada Bx e Ci0 =0, o que caracteriza uma operação de soma.

Page 35: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 35

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Circuito Somador/Subtrator

OP

OP = 0, Soma

OP = 1, SubtraçãoE0 E1

SMUX

E0 E1

SMUX

E0 E1

SMUX

E0 E1

SMUX

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

B3 B1 B0A3

S3

Co

A2

S2

A1

S1

A0

S0

B2

Se OP = 1, a entrada B de cada somador é xB e Ci0 =1, o que caracteriza uma operação de subtração. Uma forma alternativa de implementar um circuito somador/subtrator está mostrada na figura abaixo.

OP

OP = 0, SomaOP = 1, Subtração

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

A B Ci

Co SSomador

B0A3

S3

Co

A2

S2

A1

S1

A0

S0

B1B2B3

5.6 - Condição de estouro (overflow) Como já foi visto, quando é utilizado o complemento de dois para a representação de números binários negativos, os valores limites que podem ser representados são: -2n-1 ≤ N ≤ 2n-1 - 1 onde: n é o número de bits utilizados para representar o número. Qualquer operação aritmética cujo resultado esteja fora destes limites, produz uma condição de estouro (overflow). Caso isto ocorra, o resultado da operação é um número binário que não representa o resultado correto da operação. É importante, na maioria dos casos, que uma condição de overflow possa ser detectada, evitando assim o uso inadvertido de resultados inválidos.

Page 36: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 36

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Sob o ponto de vista dos valores presentes na entrada do somador, existem duas situações em que uma condição de overflow pode ocorrer:

a) Soma de dois números positivos, cujo resultado seja maior que 2n-1 - 1

b) Soma de dois números negativos, cujo resultado seja menor que -2n-1 Em ambos os casos, o bit de sinal vai estar incorreto. Considere um somador binário paralelo com n estágios, conforme mostrado na figura abaixo:

. . . . . . . . . . . . . . A B Ci

Co SSomador

A B Ci

Co SSomador

An-1 Bn-1

Sn-1Con-1

Cin-1

A0 B0

Ci0

S0Co0 Na tabela verdade abaixo, estão representadas todas as possibilidades que podem ocorrer no último estágio (n-1) do somador, lembrando que, os bits An-1 e Bn-1 são respectivamente os bits de sinal dos números A e B, enquanto o bit Sn-1 é o bit de sinal da soma dos dois números.

An-1 Bn-1 Cin-1 Sn-1 Coutn-1 OV

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

Através da tabela verdade é possível observar que uma condição de overflow ocorre somente em duas situações:

• Soma de dois números positivos, com resultado negativo (Sn = 1); • Soma de dois números negativos, com resultado positivo (Sn = 0)

Assim, a expressão lógica para a condição de overflow é:

111111 −−−−−− += nnnnnn SBASBAOV

ou, se tivermos acesso ao bit de carry de entrada do último somador: 11 −− ⊕= outnin CCOV

Page 37: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 37

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

6 - CIRCUITOS DE MEMÓRIA Até esse ponto, foram estudados os circuitos combinacionais, nos quais a resposta do circuito depende somente dos níveis lógicos dos sinais de entrada em determinado instante. Nos circuitos denominados seqüenciais, a resposta do mesmo depende dos níveis lógicos dos sinais de entrada e também do estado anterior do circuito. Para que seja possível determinar qual era o estado anterior do circuito, é necessário armazenar esse estado, sendo necessário um elemento adicional que é o circuito de memória. A forma mais básica de implementar um circuito lógico de memória é conhecida como latch, que significa, em português, trinco ou ferrolho. O circuito mostrado na figura abaixo, composto por um par de portas inversoras (NÃO) acopladas, forma a estrutura básica do circuito denominado latch estático. Como é possível observar, a saída da primeira porta é ligada à entrada da segunda e a saída da segunda é ligada à entrada da primeira.

Q'

Q

Sem intervenção externa, o latch permanece indefinidamente em uma de duas possíveis situações, denominadas estados.

• Se Q = 0, 1='Q

• Se Q = 1, 0='Q

O latch é portanto, um circuito cuja finalidade é armazenar um bit, sendo portanto o dispositivo básico de armazenamento de dados (memória). Pode-se também construir latchs com portas NOR ou com portas NAND. 6.1 - Latch S-R com portas NOR Considere o circuito abaixo, composto por duas portas NOR. A entrada S é uma das entradas da porta P2 e a entrada R é uma das entradas da porta P1. A saída da porta P1 (Q) é a segunda entrada

da porta P2 e a saída da porta P2 (Q ) é a segunda entrada da porta P1.

P1

P2 Q'

Q

S

R

x y yx +

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

A partir da tabela verdade da operação lógica NOR, mostrada acima, é possível construir a tabela

verdade para as saídas Q e Q do circuito correspondente ao latch. Para a construção da tabela verdade é necessário analisar as entradas do circuito (R e S), bem como o estado anterior do circuito,

ou seja, qual o era valor das saídas Q e Q antes de aplicar os sinais nas entradas R e S. Suponha que em determinado instante, as entradas sejam S = R = 0 e que as saídas do circuito sejam

Q = 0 e Q = 1.

Na porta P1 tem-se as entradas R = 0 e Q = 1 produzindo uma saída Q = 0. Na porta P2 tem-se as

entradas S = 0 e Q = 0 produzindo uma saída Q = 1. Enquanto não houver nenhuma intervenção externa, o circuito permanece nesse estado.

Page 38: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 38

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Suponha agora, que haja um pulso positivo com determinada duração, na entrada S, ou seja, durante um intervalo de tempo a entrada S estará no nível lógico 1, voltando após esse tempo, novamente para o nível lógico 0.

O nível lógico 1 na entrada S, forçará uma saída Q = 0. Com isso, na porta P1 tem-se R = 0 e Q = 0, fazendo com que a saída Q da porta P1 seja levado ao nível 1. Ao término do pulso na entrada S,

tem-se novamente S = 0. Na porta P1 tem-se as entradas R = 0 e Q = 0 produzindo uma saída Q =

1. Na porta P2 tem-se as entradas S = 0 e Q = 1 produzindo uma saída Q = 0.Esse estado permanece até que um novo sinal seja ativado externamente através das entradas S e R.

A tabela verdade completa para o circuito está mostrada abaixo, onde iQ e iQ indicam as saídas do

circuito no estado anterior (antes do pulso na entrada) e fQ e fQ indicam as saídas do circuito no

estado atual, ou seja, após o pulso na entrada.

S R iQ iQ ff QQ

0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 1 Não rec. 1 1 1 0 Não rec.

Analisando a tabela, observa-se que existem quatro situações distintas, e pode-se portanto resumir a tabela a estas quatro possibilidades.

S R ff QQ

0 0 ii QQ

0 1 0 1

1 0 1 0

1 1 Não rec.

A simbologia utilizada para representar o latch S-R com portas NOR é:

Set

Reset

Saída Direta

Saída InversaR

S Q

Q'

Latch S-R

Page 39: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 39

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

No diagrama de tempo abaixo, tem-se um exemplo do funcionamento do latch S-R com portas NOR:

6.2 - Latch SR com portas NAND Um latch SR também pode ser obtido a partir de portas NAND, utilizando-se uma configuração idêntica à do latch visto anteriormente.

S

Q'

Q

R

x y xy

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

A partir da tabela verdade da operação NAND mostrada acima, pode-se obter a tabela verdade para

as saída Q e Q do circuito correspondente ao latch.

S R iQ iQ ff QQ

0 0 0 1 Não rec. 0 0 1 0 Não rec. 0 1 0 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 1 0 1 0 0 1 1 1 0 1 0 1 1 1 1 0 1 0

A tabela verdade do lacth pode ser reduzida para apenas quatro situações:

S R ff QQ

0 0 Não rec. 0 1 1 0 1 0 0 1

1 1 ii QQ .

S

R

Q ????

Q’ ????

Page 40: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 40

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A simbologia para representar o latch SR com portas NAND é:

Set

Reset

Saída Direta

Saída Inversa

S

R

Q

Q'

Latch-SR

No diagrama de tempo abaixo tem-se um exemplo do funcionamento do latch SR com portas NAND:

6.3 – Latch Controlado Existem situações, em que é desejável inibir a mudança de estado do latch enquanto as entradas S e R estão sendo alteradas. Para isto, é necessário um sinal adicional de controle, de tal modo que, quando S e R estiverem estabilizados, este sinal de controle é ativado para habilitar o latch a responder aos novos valores de S e R. Um latch com este tipo de funcionalidade é denominado latch SR controlado. Na figura abaixo é mostrada a representação de um latch controlado com portas NAND. Observe que a configuração de portas à direita, corresponde a um latch SR com portas NAND, visto anteriormente.

S

C

R

QS'

R'

Q'

Tabela verdade para o latch controlado está mostrada abaixo. Como pode-se observar pela tabela verdade, quando a entrada C (entrada de controle) está no nível baixo (0), o latch está desabilitado, ou seja, não responde à nenhuma alteração que venha a ocorrer nos sinais de entrada S e R. Quando o sinal de controle (C) está no nível alto (1), o latch tem o mesmo comportamento de um latch S-R comum.

S

R

Q ????

Q’ ????

Page 41: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 41

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

C S R S’ R’ ii QQ ff QQ

0 0 0 1 1 0 1 0 1 0 0 0 1 1 1 0 1 0 0 0 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 0 1 0 0 1 1 1 1 0 1 0 1 0 1 1 1 1 1 0 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 1 0 0 1 0 1 1 0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 1 0 1 1 0 0 1 1 0 1 0 1 1 1 0 0 0 1 Não Rec. 1 1 1 0 0 1 0 Não Rec.

Tabela verdade resumida e a simbologia para o latch S-R controlado, são mostradas abaixo:

C S R ff QQ

0 x x Desabilitado

1 0 0 ii QQ (mantém o estado)

1 0 1 0 1

1 1 0 1 0

S

C

R

Q

Q'Latch

Se o sinal de controle for negado na entrada das portas NAND, o latch estará habilitado quando o sinal de controle estiver no nível baixo (0) e desabilitado quando o sinal estiver no nível alto (1). A tabela verdade e a simbologia do latch para este caso, estão mostrada abaixo:

C S R ff QQ

1 x x Desabilitado

0 0 0 ii QQ (mantém o estado)

0 0 1 0 1 0 1 0 1 0

S

C

R

Q

Q'Latch

Considere o latch controlado:

S

C

R

Q

Q'Latch

Page 42: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 42

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Desenhar o diagrama de tempo correspondente à saída Q do latch, em resposta à sequência de sinais mostrada abaixo. Considerar que o latch está inicialmente no estado 0.

6.3.1 - Entradas Set/Reset diretas Existem situações onde é necessário “setar“ ou “resetar“ o estado do latch, independentemente das entradas S e R, ou do fato do mesmo estar ou não habilitado. Um exemplo desta situação é quando desejamos estabelecer o estado inicial do latch antes de iniciar determinado procedimento. Para esta finalidade, são utilizadas entradas de Set(Preset) e Reset(Clear) diretas no latch, conforme está mostrado na figura abaixo. Estas entradas, Sd e Rd têm prioridade sobre as entradas S e R bem como sobre a entrada de habilitação do latch.

S

C

R

Q

Q'

Sd (Preset)

Rd (Clear)

Simbologia

SCR

Q

Q'

Sd

Rd

Latch

6.4 - O Latch tipo D Uma aplicação importante do latch controlado, é mostrada na figura abaixo. Existe uma linha de dados, cujo conteúdo está sendo continuamente alterado. Esta linha, pode por exemplo, fazer parte de um barramento de dados. Num instante de tempo determinado, é necessário capturar e manter o dado que está presente nesta linha (0 ou 1).

Para isto, basta habilitar o latch, através da entrada de controle C. Como S = D e R = D , teremos sempre Q = D. Assim, quando a linha de controle é levada para o nível alto, habilitando o latch, a saída Q seguirá a entrada de dados D. Este latch é chamado de transparente.

S

R

C

Q

Page 43: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 43

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Quando desejamos capturar e manter o dado armazenado no latch, habilitamos e desabilitamos o latch. O estado armazenado será determinado pelo valor de D imediatamente antes de desabilitar o latch.

Q

Q'

Linha de dados

Controle

D S

R Simbologia para o latch tipo D:

D

C

Q

Q'

C

DQ'

Q

Diagrama de tempo, mostrando o funcionamento do latch tipo D:

6.5 - Sincronismo Uma característica das portas lógicas é que elas provocam atrasos de propagação nos sinais transmitidos através delas. Estes atrasos podem ser diferentes para um mesmo tipo de porta, do mesmo fabricante, podendo ainda variar em função da tensão aplicada, temperatura ou outras características ambientais. O tempo total de propagação de um sinal que passa através de muitas portas é difícil de ser previsto, pois estão sujeitos à variações. Atrasos que não sejam apropriadamente levados em consideração, podem gerar resultados diferentes daqueles pretendidos no projeto. Seja por exemplo, o circuito mostrado na figura abaixo, onde está mostrada também a resposta esperada para a seqüência de sinais especificada. Supondo inicialmente uma situação ideal, ou seja, que o tempo de propagação do sinal através das portas NAND (x) e OR (y) é zero, temos a situação mostrada abaixo:

D

C

Q

Page 44: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 44

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

B

A

C

x

y

Z

Supondo por exemplo, que o tempo de propagação do sinal pela porta NAND é maior que o tempo de propagação do sinal pela porta OR, tem-se a situação mostrada na figura abaixo.

Observa-se que, neste caso, existe um curto intervalo de tempo, em que x = y = 1 e, durante este intervalo tem-se Z = 1, que representa uma situação não desejada. As excursões dos sinais lógicos para níveis não desejados, são chamadas perigos (hazards) ou transientes (glitches). Em circuitos combinacionais, os transientes são inconvenientes, porém, se forem suficientemente breves, podem não causar nenhuma preocupação mais séria. Em circuitos seqüenciais, um nível incorreto na entrada de um latch, mesmo que por um curto período de tempo, pode afetar seu estado, persistindo este erro indefinidamente. Desta forma, é de extrema utilidade para um latch, que o instante exato de operação do mesmo possa ser determinado. Neste caso, é possível restringir a resposta do latch até o momento em que todos os níveis lógico que possam afetar seu estado tenham atingido seus níveis definitivos. Em sistemas digitais, o instante exato da operação do latch é determinado por um sinal de sincronismo aplicado ao mesmo. A velocidade com que o processamento ocorre é determinada pela velocidade do sinal de sincronismo, sendo este sinal denominado de sinal de relógio (clock). Este tipo de sistema é denominado sistema síncrono. O tempo destinado ao ciclo de relógio depende da velocidade (tempo de propagação) dos dispositivos empregados. Dispositivos com tempo de propagação mais longo requerem um ciclo de relógio mais longo.

A

B

C

x

y

Z

Transiente

A

B

C

x

y

Z

Page 45: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 45

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

6.6 - O Flip Flop Mestre Escravo Um dispositivo que não é transparente é o flip flop Mestre-Escravo, cuja estrutura é mostrada na figura abaixo. Este flip flop consiste de dois latches controlados, ligados em cascata. O primeiro é chamado de mestre e o segundo de escravo. O sinal de sincronismo(clock) é aplicado ao primeiro latch, enquanto que seu complemento é aplicado ao segundo latch. Isto significa que, quando o primeiro latch está habilitado, o segundo está desabilitado e vice versa.

Quando o sinal de clock está no nível alto, os dados de entrada,nos terminais S e R são armazenados no latch mestre. Como neste instante, o latch escravo está desabilitado, não há transferência destes dados do mestre para o escravo. Quando o sinal de clock vai para o nível baixo, o latch escravo é habilitado e os dados são transferidos do mestre para o escravo. Como nesta situação o latch mestre está desabilitado, os novos sinais presentes nas entradas S e R não são registrados no mestre.

A mudança de estado na saída do flip flop (Q e Q .) se houver, ocorre na transição de clock que desabilita as portas de entrada do latch mestre. Assim, a borda do pulso de relógio que atualiza os terminais de saída em relação aos dados armazenados, torna o flip flop insensível aos novos sinais presentes na entrada. O diagrama de tempo abaixo mostra a resposta do flip-flop mestre escravo a uma seqüência de sinais

nas entradas S e R. Foi considerado que o estado inicial do flip-flop é Q = 0 e Q = 1

SE

C

RE

QE SM

C

RM

QM

QM QE

S

R

Clock

Q

Q

Mestre Escravo

Clock

S

R

QM/SE

QM/RE

Q

Page 46: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 46

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

6.7 - O flip flop disparado pela borda Um dos tipos de flip-flops mais utilizados, é o flip-flop disparado pela borda (edge triggered). Neste tipo de flip-flop, a saída do mesmo se dá em resposta aos dados presentes na entrada, imediatamente antes da transição de gatilho do sinal de relógio. Na figura abaixo, está representada a simbologia para o um flip-flop SR disparado pela borda. A entrada C é a entrada de clock e a marca triangular na entrada C indica que o flip-flop é disparado pela borda.

O flip-flop (a) é disparado pela borda negativa (descida) do pulso de clock, por isto o círculo indicando uma negação, e o flip-flop (b) é disparado pela borda positiva (subida) do pulso de clock. 6.8 - Entradas Set e Reset diretas Muitas vezes é desejável, ou necessário, que o flip flop possa ser acionado por sinais que não sejam estejam sincronizados com o relógio. Estas entradas assíncronas são chamadas entradas de set e reset diretas, ou preset e clear. O símbolo do flip flop com entradas set e reset diretas está mostrado abaixo.

A entrada dS é a entrada set direta, ativa no nível baixo, enquanto a entrada dR é a entrada de reset

direta, também ativa no nível baixo. Quando dS = 0 e dR = 1, a saída Q do flip flop vai para o estado Q = 1, independentemente das entradas externas S, R e do sincronismo do relógio. Da mesma

forma, quando dS = 1 e dR = 0 o flip flop vai para o estado Q = 0.

Quando dS = dR = 1, o flip flop atua normalmente, respondendo às entradas S e R de forma

síncrona com o sinal do relógio. A condição dS = dR = 0 não deve ser utilizada, pois causa conflito na operação do flip flop.

S

C

R

Q

Q

S

C

R

Q

Q

(a) (b)

S

C

R

Q

Q

Sd

Rd

Page 47: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 47

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

6.9 - O flip flop JK No flip-flop (e no latch) SR estudado até agora, foi visto que não é recomendável fazer as entradas S=R=1, pois isto pode causar uma resposta indeterminada no dispositivo. Para resolver esse problema foi feita uma modificação no flip-flop SR, que é o flip flop JK, cuja simbologia está mostrada na figura abaixo.

J

C

K

Q

Q'

Neste flip-flop, a entrada S é agora denominada J e a entrada R é denominada K. Este flip-flop modificado, funciona do mesmo modo que o flip-flop disparado pela borda já visto, com a diferença que, quando ambas as entradas J=K=1, o flip-flop chaveia, isto é, inverte o seu estado a cada transição negativa do sinal de relógio. Tabela verdade para o flip-flop JK é:

J K Qn+1

0 0 Qn 0 1 0 1 0 1 1 1

nQ 6.10 - O flip flop tipo T Se conectarmos os terminais J e K de um flip-flop JK, temos o flip-flop tipo T, conforme mostrado na figura abaixo.

Simbologia:

C

T

Q'

Q

No flip-flop tipo T, quando T=0, não há mudança de estado. Quando T=1, o flip-flop chaveia (inverte o estado) na borda de gatilho do sinal de clock. 6.11 - O flip flop tipo D Já foi visto anteriormente como um latch SR pode ser modificado para funcionar como um latch tipo D. Do mesmo modo, um flip flop SR ou JK pode ser modificado para funcionar como um flip flop tipo D, seja ele um flip flop mestre-escravo ou um flip flop disparado pela borda. Na figura abaixo, temos a representação de um flip flop tipo D, disparado pela borda, que responde à transição descendente do sinal de clock.

J

C

K

Q

Q

T

Clock

Page 48: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 48

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

C

D

Q'

Q

No flip flop tipo D acima, à cada transição negativa do sinal de clock, o nível lógico presente na entrada D no instante da transição, é armazenado no flip flop, aparecendo na saída Q. No diagrama de tempo a seguir, tem-se um exemplo de operação do Flip-Flip tipo D.

6.12 - Tempos de preparação, manutenção e propagação Normalmente os catálogos de fabricantes apresentam as diversas características de operação dos dispositivos. Dentre estas características estão os tempos de transição do sinal de clock, de preparação, de manutenção do sinal e de tempo de propagação dos dispositivos. Na figura abaixo estão mostrados estes tempos, tomando como exemplo a operação de um flip flop tipo D, disparado pela borda positiva do pulso de clock.

Borda de gatilho

10%

90%

clock

tt

D th ts

tpLH

tpHL

Q

Q

tw

Clock

D

Q

Page 49: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 49

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

tt: tempo de transição do sinal de clock. É o tempo necessário para uma transição de clock ir de 10% a 90% do intervalo entre os dois níveis.

tw: largura do pulso. É o tempo durante o qual o pulso fica no nível alto. ts: tempo de preparação (setup). Se o flip flop deve reconhecer e responder à nova entrada de dados

D, a mudança na entrada D deve preceder a borda de gatilho do clock por um intervalo de tempo que não pode ser menor do que ts.

th: tempo de manutenção (hold). Este é o tempo que o sinal deve ser mantido na entrada D, após a

transição de gatilho do clock para que seja reconhecido pelo dispositivo. tpLH: tempo de propagação do nível baixo para o nível alto. Este é o tempo necessário para que o

sinal de saída passe do nível baixo para o nível alto, em resposta à uma transição na entrada D do flip flop.

tpHL: tempo de propagação do nível alto para o nível baixo. Este é o tempo necessário para que o

sinal de saída passe do nível alto para o nível baixo, em resposta à uma transição na entrada D do flip flop.

Assim, se o flip flop deve responder à uma alteração na entrada D, esta alteração deve ocorrer pelo menos ts antes da transição de gatilho do clock e deve permanecer após a transição, pelo menos por um tempo th. Devemos observar que os tempos são tomados em relação ao ponto médio da transição ente um nível e outro. 6.13 - Chave sem trepidação de contato (contact bouce) Considere o circuito abaixo, no qual a chave mecânica tem a finalidade fixar a tensão de saída do circuito (Vs). Com a chave em repouso na posição 1, a tensão de saída é Vs = +5V e com a chave em repouso na posição 2, a tensão saída é Vs = 0V. Com uma chave mecânica, é muito difícil obter uma transição “limpa” da tensão de saída, devido ao fenômeno de trepidação de contato (contact bounce). A ação de mover o contato da chave de uma posição para outra gera várias transições de tensão na saída, pois o contato é interrompido e restabelecido várias vezes antes do repouso na posição final.

1

2

Vs

+5V

+5V

0V

Comutação da chave da posição 2 para a posição 1

Chave em repouso na posição 1

Trepidação de contato

Page 50: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 50

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

A figura acima ilustra essa situação, em que o ato de comutar a chave da posição 2 para a posição 1 gera o efeito da “trepidação” até que a tensão de saída seja finalmente estabilizada em +5V quando a chave estiver em repouso na posição 1. Um latch SR pode ser utilizado para se obter uma chave sem o efeito da trepidação. Qualquer uma das configurações abaixo pode ser utilizada.

1

2

Vs

+5V

R

S Q

Q'

Latch S-R

No diagrama de tempo da figura, é mostrada a saída Q do latch (Vs), em função da mudança de posição da chave. Utilizando um latch SR com portas NAND, tem-se a seguinte configuração:

1

2

Vs

+5V

S

R

Q

Q'

Latch-SR

Chave da posição 1 para a posição 2

Chave da posição 2 para a posição 1

Vs

Chave da posição 1 para a posição 2

Chave da posição 2 para a posição 1

Vs

Page 51: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 51

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

7 - REGISTRADORES O uso mais comum para os flip-flops é no armazenamento de dados, pois cada flip-flop tem capacidade de armazenar um bit. Nos sistemas digitais, os dados geralmente são armazenados em agrupamentos de flip-flops denominados Registradores. 7.1 - Registrador de transferência Uma das operações comuns realizada sobre os dados armazenados em um registrador é a operação de transferência. Esta operação consiste no armazenamento de dados em um registrador ou na transferência destes dados de um registrador para outro. Este tipo de registrador é denominado registrador de transferência. Na figura abaixo está mostrada uma possível configuração de um registrador de transferência de 4 bits, formado com 4 flip-flops tipo D.

DC

QQ'

DC

QQ'

DC

QQ'

DC

QQ'

Q3

Q3

D2

Q2

D1

Q1

D0

Q0

H

CLK

Enquanto o sinal H estiver no nível baixo, a entrada de clock dos flip-flops está desabilitada, fazendo com que os mesmos não atuem, ou seja, o registrador permanece com o último valor armazenado. A partir do instante em que o sinal H é colocado no nível alto, na transição de gatilho de clock (neste exemplo a transição positiva) os dados presentes nas linhas de entradas são armazenados nos flip flops que formam o registrador, permanecendo armazenados até que outra operação de transferência seja realizada. O registrador de transferência é útil quando queremos por exemplo, armazenar temporariamente os dados presentes em um barramento de dados , conforme mostrado na figura abaixo.

Barramento de Dados

CLK

HD3 D2 D1 D0

Q0Q1Q2Q3

Reg. Transf

D3

D2

D1

D0

Quando a linha de habilitação é levada para o nível alto, na primeira transição de gatilho do clock os dados presentes no barramento são armazenados no registrador.

Page 52: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 52

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

7.2 - Registrador de deslocamento O registrador de deslocamento é um dispositivo construído a partir de um conjunto de flip flops, de modo que os bits armazenados são deslocados de um flip flop para outro (para a direita ou para a esquerda), a cada transição do pulso de clock. A partir de uma combinação de flip flops e de uma lógica adicional, é possível construir registradores de deslocamento com diferentes tipos de funcionalidade:

• Entrada Serial ou Paralela • Saída Serial ou Paralela • Deslocamento para a direita ou para a esquerda

7.2.1 - Registrador de deslocamento com entrada serial e saída serial A figura abaixo mostra uma possível configuração para um registrador de deslocamento de 4 bits, com entrada serial e saída serial, construído a partir de flip flops do tipo D.

Entrada

Clock

Saída

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

À cada transição de gatilho do clock, o bit armazenado em um flip flop é transferido para o flip flop seguinte, sendo que o bit presente na linha de entrada é armazenado no primeiro flip flop. O bit presente na linha de entrada vai aparecer na linha de saída após quatro pulsos do clock. Neste registrador, os dados são armazenados de forma serial (bit a bit) através da entrada (E) e recuperados também de forma serial através da saída (S).

CLK

E S

Reg. Deslocamento

7.2.3 - Registrador de deslocamento com entrada serial e saída paralela ou serial Neste registrador, os bits entram de modo serial e a cada pulso de clock são deslocados para o flip flop seguinte, do mesmo modo que no registrador anterior. A diferença é que os dados armazenados em cada um dos flip flops do registrador, estão disponíveis a qualquer instante de modo paralelo.

Entrada

Clock

Saída

Q3 Q2 Q1 Q0

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

CLK

ES

Q0Q1Q2Q3

Reg. Deslocamento

Page 53: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 53

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

7.2.4 - Registrador de deslocamento com entrada serial, saída serial e deslocamento bi-direcional

Nos registradores de deslocamento vistos acima, o deslocamento dos bits é unidirecional. O registrador de deslocamento mostrado abaixo, possui uma entrada adicional (dir) através da qual é possível selecionar se o deslocamento deve ser feito para a direita ou para a esquerda.

dir

EntradaSerial

Clock

SaídaSerial

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

E0 E1

SMUX

E0 E1

SMUX

E0 E1

SMUX

E0 E1

SMUX

E0

E1

SM

UX

Pode-se observar no circuito que, na entrada D de cada flip flop existe um multiplexador através do qual é selecionado se a entrada D do flip flop vem da saída do flip flop anterior ou do flip flop posterior. Se a entrada dir = 0, a cada pulso de clock o conteúdo do registrador é deslocado para a direita. O valor presente na entrada serial é armazenado no primeiro flip flop e a saída serial é o conteúdo do último flip flop da cadeia. Se a entrada dir = 1, a cada pulso de clock o conteúdo do registrador é deslocado para a esquerda, o valor presente na entrada serial é armazenado no último flip flop e a saída serial é o conteúdo do primeiro flip flop. A representação do registrador de deslocamento com entrada serial, saída serial e deslocamento bi-direcional está mostrado na figura abaixo.

CLK

E

dir

S

Reg-Deslocamento

7.2.5 - Registrador de deslocamento com entrada serial, saída serial ou paralela e

deslocamento bi-direcional Este registrador de deslocamento possui as mesmas características do registrador anterior, com a diferença que, o conteúdo de cada um dos flip flops que compõem o registrador está disponível externamente, em uma saída paralela.

Page 54: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 54

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

dir

EntradaSerial

Clock

SaídaSerial

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

E0 E1

SMUX

E0 E1

SMUX

E0 E1

SMUX

E0 E1

SMUX

E0

E1

SM

UX

Q1Q2 Q0Q3

Na figura abaixo é mostrada a representação deste registrador:

CLK

dir

E

S

Q0Q1Q2Q3

Reg Deslocamento

7.2.6 - Registrador de deslocamento com entrada serial ou paralela e saída paralela ou serial Neste registrador, existe um multiplexador na entrada D de cada flip flop, através do qual é selecionada uma entrada externa ou a saída do flip flop anterior, para ser armazenada em cada um dos flip flops do registrador. Se a linha OP = 0, o registrador é carregado a partir dos dados presentes nas linhas externas D3...D0. Por outro lado, se OP = 1, o registrador funciona como um registrador de deslocamento, conforme visto acima.

S

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

C

D

Q'

Q

E0E1

SMUX

E0E1

SMUX

E0E1

SMUX

E0E1

SMUX

D2

Q0

Q0Q3 Q2

D3

E

CLK

Q1

OP

D1 D0

Representação do registrador:

OP

E

CLK

S

D3 D2 D1 D0

Q0Q1Q2Q3

Reg. Deslocamento

Page 55: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 55

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

7.3 - Divisor de frequência Considere um flip flop tipo JK com ambas as entradas J e K no nível alto (J=K=1). Nesta condição, o flip flop inverte (chaveia) seu estado a cada transição de gatilho do clock.

CLK Q

+5V

CK

J

Q'

Q

Considerando que o flip flop acima é ativado pela borda positiva (subida) do pulso de clock, tem-se a seguinte resposta na saída Q no flip flop:

No diagrama de tempo mostrado acima observa-se que, a freqüência do sinal na saída Q do flip flop é a metade da freqüência do pulso de clock. Pode-se concluir portanto, que um flip flop tipo JK pode ser utilizado como um divisor por 2 da frequência do sinal de clock. Considere agora, um conjunto de flip flops JK, interligados conforme mostrado abaixo. Observe que todas as entradas J e K estão no nível alto, portanto os flip flops estão no modo de chaveamento. Observe ainda que, somente o primeiro flip flop está diretamente ligado ao sinal de clock. As entradas de clock dos demais flip flops são as saídas Q dos flip flops anteriores.

Qa Qb Qc Qd

CLK

+5V

CK

J

Q'

QC

K

J

Q'

QC

K

J

Q'

QC

K

J

Q'

Q

Clk

Qa

Qb

Qc

Qd

Clock

Q

Page 56: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 56

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

O diagrama de tempo correspondente à saída Q de cada um dos flip flops da cadeia está mostrado na figura acima. Através de uma análise do diagrama de tempo, observa-se que em cada um dos flip flops da cadeia a freqüência do sinal de clock é dividida por dois. 7.4 - Contador de pulsos Uma importante aplicação dos flip flops é na construção de contadores binários. Na figura abaixo, é apresentada a configuração de um contador binário assíncrono, formado por uma cadeia de flip flops JK conectados de maneira semelhante ao divisor de freqüência visto anteriormente. A única diferença é que os flip flops atuam na borda negativa do pulso de clock.

QdQcQbQa

CLK

+5V

JC

K

Q

Q'

JC

K

Q

Q'

JC

K

Q

Q'

JC

K

Q

Q'

O diagrama de tempo mostrando as saídas dos flip flops para uma seqüência de pulsos de clock está mostrado na figura abaixo:

Analisando o diagrama de tempo acima e, considerando que a saída Qa seja o bit menos significativo, temos um contador binário assíncrono de quatro estágios (contador módulo 16). 7.5 - Contador Johnson Considere o registrador de deslocamento mostrado na figura abaixo, formado por flip flops tipo D

com entradas preset e clear(Sd e Rd). Observe que a saída Q do último flip flop está conectada à entrada D do primeiro flip flop. Inicialmente todos os flip flops são zerados através do sinal clear.

Assim, na primeira transição de gatilho do clock, a saída Q =1 do último flip flop é armazenada no primeiro flip flop e o zero armazenado em cada um dos flip flops é deslocado para o flip flop seguinte.

Clock

Qa

Qb

Qc

Qd

Page 57: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 57

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

CLK

Clear

Qa Qb Qc Qd Qe

C

D

Q'

QSd

RdC

D

Q'

QSd

RdC

D

Q'

QSd

RdC

D

Q'

QSd

RdC

D

Q'

QSd

Rd

Nas demais transições de clock o registrador vai sendo preenchido com 1’s. Após cinco pulsos de clock todos os flip flops do registrador estarão preenchidos com o bit 1. No próximo pulso de clock,

a saída Q = 0 do último flip flop é armazenada no primeiro flip flop e o registrador começa a ser preenchido com 0’s, repetindo-se o ciclo a cada 10 pulsos de clock. Na figura abaixo está mostrado o diagrama de tempo para as saídas Q de cada um dos flip flops.

O circuito apresentado acima corresponde a um contador Johnson de 5 estágios ou módulo 10. No capítulo relativo aos Códigos Binários já foi visto o código Johnson: Johnson decimal Johnson decimal 00000 0 11111 5 10000 1 01111 6 11000 2 00111 7 11100 3 00011 8 11110 4 00001 9 7.6 - Contador em anel Na figura abaixo está representado um registrador de deslocamento formado com flip flops tipo D com entradas preset e clear. A saída Q do último flip flop está conectada à entrada D do primeiro flip flop.

Clock

Qa

Qb

Qc

Qd

Qe

Page 58: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 58

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Set

CLK

Clear

Qa Qb Qc Qd Qe

C

D

Q'

QSd

RdC

D

Q'

QSd

RdC

D

Q'

QSd

RdC

D

Q'

QSd

RdC

D

Q'

QSd

Rd

Através dos sinais Set e Clear, é possível “inicializar” o registrador com o valor 10000. Analisando o circuito, pode-se observar que à cada transição de gatilho do clock, o bit 1 que está inicialmente no primeiro flip flop do registrador, vai se deslocando ao longo do registrador, até retornar novamente ao primeiro flip flop, quando então o ciclo reinicia. Este circuito é um contador em anel fechado de 5 estágios, e o diagrama de tempo relativo ao mesmo está mostrado abaixo:

Clock

Qa

Qb

Qc

Qd

Qe

Page 59: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 59

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

8 - CIRCUITOS SEQUENCIAIS 8.1 - Introdução Num circuito combinacional, a resposta do circuito depende somente dos sinais presentes na entrada do circuito em determinado instante. Alterando os sinais de entrada, a resposta do circuito é imediatamente modificada. Já um circuito seqüencial apresenta um conjunto de diferentes estados, sendo que a resposta do circuito é função dos sinais presentes na entrada do mesmo e também do estado do circuito. Por exemplo, um contador decimal é um circuito sequencial que possui 10 estados distintos e cuja saída depende do estado em que se encontra o circuito. Na figura abaixo tem-se a representação esquemática de um circuito seqüencial, onde pode-se observar a existência de um dispositivo de memória, que é um dos componentes que caracteriza os circuitos seqüenciais. Além disso, os circuitos seqüenciais possuem um elemento de sincronismo (clock) comanda o transição de um estado para outro.

Onde:

e1 . . . en , representam as entradas do circuito; z1 . . . zm , representam as saídas do circuito; x1 . . . xr , representam o estado atual do circuito (ou estado presente); y1 . . . yr , representam o estado futuro do circuito O circuito que realiza essa seqüência de estados, é denominado máquina de estados ou máquina seqüencial ou circuito sequencial. 8.2 – Diagrama de Estados Uma das ferramentas utilizadas para modelar o comportamento de um circuito seqüencial é o Diagrama de Estados. Para introduzir o conceito de Diagrama de Estados, imagine uma pessoa participando de um jogo no qual existem quatro cabines, nas cores branca, magenta, azul, vermelha, bem como duas lâmpadas, nas cores branca e vermelha. Existe também uma campainha que define o instante em que o participante deverá atuar. Pelas regras estabelecidas para o jogo, quando soar a campainha o participante deverá se deslocar em direção à cabine vermelha se a lâmpada vermelha estiver acesa ou ir em direção à cabine branca

.

.

.

.

.

.

. . . . . .

Lógica Combinacional

Memória

e1

en

z1

zm

x1 xr y1 yr

Clock

Circuito Sequencial

Page 60: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 60

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

se a lâmpada branca estiver acesa. O participante poderá fazer somente um movimento a cada vez que a campainha soar. Para ir em direção à cabine vermelha, o participante deverá necessariamente passar pelas cabines magenta e azul. O deslocamento em direção à cabine branca deverá ser feito diretamente, a partir da cabine que o participante estiver ocupando no instante que soar a campainha. Além disto, o participante deverá ativar um alarme sempre que estiver ocupando a cabine verde. O diagrama esquemático correspondente ao jogo está mostrado na figura abaixo, onde estão representadas as duas entradas (campainha e cor da lâmpada) e uma saída (alarme).

Diagrama esquemático do jogo

Raciocinando em termos de um circuito digital para simular o nosso jogo, é necessário estabelecer os níveis lógicos para representar as entradas e as saídas do circuito.

Lâmpada: L = 0 → branca L = 1 → vermelha

Alarme: Z = 0 → não acionar o alarme Z = 1 → Acionar o alarme A campainha corresponde à entrada de clock do circuito, onde o ato de soar a campainha é equivalente à transição de gatilho do clock, que vai comandar a mudança de estado do circuito, ou seja, a transição do “estado atual” para o “estado futuro”. Pode-se representar todas as possíveis situações pelas quais o circuito pode passar, através de um diagrama denominado Diagrama de Estados. Para isto, vamos considerar duas regras distintas para o nosso jogo: Regra a (Circuito Moore): O participante deverá se mover de uma cabine para outra, no

instante que soar a campainha. O alarme somente será acionado depois que o participante efetivamente estiver ocupando a cabine vermelha.

No diagrama de estados para o circuito Moore, um estado é representado por um círculo(onde é mostrada a identificação do estado e a saída do circuito para o mesmo) e a seta representa a transição de um estado para outro.

Para a representação do nosso jogo, podemos estabelecer os seguintes estados:

• A: estado correspondente ao participante ocupando a cabine branca;

Máquina de Estados

Lâmpada (L)

Campainha

Alarme (Z)

A Z

Page 61: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 61

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

• B: estado correspondente ao participante ocupando a cabine magenta; • C: estado correspondente ao participante ocupando a cabine azul; • D: estado correspondente ao participante ocupando a cabine vermelha.

O diagrama de estados que representa o funcionamento do circuito está mostrado abaixo:

Diagrama de Estados (circuito Moore)

A característica fundamental do circuito Moore é que, a saída depende somente do estado do circuito. Observe que a saída Z = 1 (alarme acionado) somente quando o estado D é atingido. No diagrama de tempo mostrado abaixo, pode-se observar a resposta do circuito (Z) à uma seqüência qualquer de sinais de entrada (L), onde o ato de soar a campainha corresponde à borda positiva do pulso de clock: Supondo que o circuito está inicialmente no estado A:

Regra b (Circuito Mealy):O participante deverá se mover de uma cabine para outra, no

instante que soar a campainha. O alarme será acionado logo após a luz verde acender, desde que o participante venha a ocupar a cabine verde após soar a campainha.

O diagrama de estados, considerando essa nova regra, está mostrado abaixo. Observe que no interior do círculo é indicada somente a identificação do estado. A saída do circuito estará representada na transição de um estado para outro:

Clock

L

Estado

Z

A B C A A A B C D A A A B C D D D A

A Z=0

C Z=1

L=0

B Z=0

D Z=1

1 1

1

0

0

L=1

0

Page 62: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 62

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Diagrama de Estados (circuito Mealy)

No circuito Mealy, a saída depende da entrada e do estado do circuito. Observe que a saída Z é igual a 1 na transição do estado C para o estado D. No diagrama de tempo abaixo podemos ver a resposta do circuito à uma seqüência de sinais de entrada:

Clock

L

Estado

Z

A B C A A A B C D A A A B C D D D A

A

L=0/Z=0

1/0 1/1

1/1

0/0

0/0 0/0

L=1/Z=0

B

C

D

B

Page 63: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 63

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

8.3 – Máquina de Estados 8.3.1 - Máquina de Estados tipo Moore Em uma máquina de estados tipo Moore, a saída depende exclusivamente dos estados do circuito. O diagrama esquemático deste tipo de máquina está mostrado abaixo.

8.3.2 - Máquina de Estados tipo Mealy O diagrama esquemático de uma máquina de estados tipo Mealy está mostrado abaixo, onde observa-se que a saída depende do estado do circuito e também dos sinais de entrada.

8.3.3 - Projeto da máquina de estados Como exemplo, vamos desenvolver o projeto de uma máquina de estados para simular as condições estabelecidas no jogo, considerando os dois tipos de circuito vistos acima: Moore e Mealy.

8.3.3.1 - Circuito tipo Moore Para o projeto da máquina de estados, deve-se inicialmente representar os elementos mostrados no Diagrama de Estados, através de um tabela de estados, conforme apresentado abaixo.

Máquina de Estados

L

Clock

Z (Alarme)

LÓGICA DE

ENTRADA

MEMÓRIA

LÓGICA DE

SAÍDA

Saída Entrada

LÓGICA DE

ENTRADA

MEMÓRIA

LÓGICA DE

SAÍDA

Entrada Saída

Page 64: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 64

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Saída atual Estado futuro

Estado atual Z L=0 L=1 A 0 A B B 0 A C C 0 A D D 1 A D

Conforme se observa, o sistema possui quatro estados distintos, identificados por A, B, C e D. Isto significa que, para implementar a máquina de estados são necessários 2 flip-flops (FF1 e FF0). Inicialmente deve-se estabelecer uma correspondência entre os estados dos flip-flops, e os estados da máquina de estados. Uma possível situação está mostrada na tabela abaixo.

Estado Q1 Q0 A 0 0 B 0 1 C 1 0 D 1 1

Uma vez estabelecida esta correspondência entre os estados da máquina de estados e os estados dos flip-flops, a tabela de estados é redesenhada, considerando os valores de Q1 e Q0 para cada um dos estados.

Estado futuro Estado atual Saída atual L=0 L=1

Q1 Q0 Z Q1 Q0 Q1 Q0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1

Neste ponto, é necessário definir qual o tipo de flip-flop que será utilizado como componente de memória da nossa máquina de estados. Supondo inicialmente, que serão utilizados flip-flop tipo D, são representados na tabela os valores que deve-se ter nas entradas D1 e D0, de modo que os flip-flops passem de um estado para outro conforme especificado no diagrama de estados.

Estado futuro Estado atual Saída atual L=0 L=1 L=0 L=1

Q1 Q0 Z Q1 Q0 Q1 Q0 D1 D0 D1 D0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 0 0 0 1 1 0 0 1 1 1 1 1 0 0 1 1 0 0 1 1

Finalmente, a partir da tabela é possível extrair as funções de excitação dos flip flops, ou seja, qual é a lógica necessária na entrada D de cada um dos flip flops para que o estado futuro seja atingido.

Page 65: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 65

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Assim: )QQ(LLQLQD 01011 +=+=

)QQ(LQLLQD 01010 +=+=

A saída Z é dada pela função: 01QQZ =

O circuito correspondente à máquina de estados (tipo Moore) está mostrado na figura abaixo.

C

D

Q'

Q

C

D

Q'

QClock

Z

L

a) Circuito tipo Mealy Considerando o desenvolvimento do projeto para um circuito tipo Mealy, a tabela de estados é representada da seguinte forma:

Estado futuro/Saída Estado atual L=0/Z L=1/Z

A A/0 B/0 B A/0 C/1 C A/0 D/1 D A/0 D/1

Da mesma maneira como foi feito para o circuito Moore, deve-se estabelecer uma correspondência entre os estados da máquina de estados e os estados dos flip flops:

Estado Q1 Q0

A 0 0 B 0 1 C 1 0 D 1 1

Assim, a tabela de estados fica sendo:

Page 66: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 66

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Estado futuro/Saída Estado atual L=0 L=1

Q1 Q0 Q1 Q0 / Z Q1 Q0 / Z 0 0 0 0 / 0 0 1 / 0 0 1 0 0 / 0 1 0 / 0 1 0 0 0 / 0 1 1 / 1 1 1 0 0 / 0 1 1 / 1

Supondo a utilização de flip flops tipo D para a implementação do circuito, a tabela mostrando as entradas D1 e D0 necessárias para que os flip flops passem de um estado para outro conforme os critérios estabelecidos, está mostrada abaixo:

Estado futuro / Saída Estado atual L=0 L=1 L=0 L=1

Q1 Q0 Q1 Q0 / Z Q1 Q0 / Z D1 D0 D1 D0 0 0 0 0 / 0 0 1 / 0 0 0 0 1 0 1 0 0 / 0 1 0 / 0 0 0 1 0 1 0 0 0 / 0 1 1 / 1 0 0 1 1 1 1 0 0 / 0 1 1 / 1 0 0 1 1

É importante observar que neste caso, a tabela correspondente às entradas D1 e D0 dos flip flops é a mesma do circuito tipo Moore, ou seja, a lógica que define a transição de um estado para outro é a mesma para os dois tipos de circuito. A diferença está na lógica de saída. Da tabela, são extraídas as funções de excitação dos flip flops, que são: )QQ(LLQLQD 01011 +=+=

)QQ(LQLLQD 01010 +=+=

A função para a saída Z é: 1LQZ =

C

D

Q'

Q

C

D

Q'

Q

Clock

Z

L

Exercício:

Implementar a máquina de estados para simular o jogo (circuito Moore e circuito Mealy) utilizando flip flop tipo JK.

Page 67: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 67

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

8.4 – Contadores Síncronos Nos tópicos anteriores já foram vistos alguns exemplos de contadores assíncronos. Os contadores síncronos são máquinas de estado, podendo ser projetados da mesma forma como foi projetado o circuito simulador do jogo mostrado acima. Como exemplo, vamos projetar um contador binário síncrono módulo 7 (contagem de 0 a 6), utilizando para isto flip flops tipo JK. Na figura abaixo é mostrado o diagrama esquemático do contador. A saída Z2 representa o bit mais significativo e a saída Z0 o bit menos significativo. Observe que, neste contador não existe nenhuma entrada externa para o circuito. A única entrada externa que aparece é o sinal de clock.

Diagrama de estados para o contador:

Como a máquina de estados tem 7 estados distintos, serão necessários 3 flip-flops. Uma possível correspondência entre os estados do contador e os estados dos flip flops está mostrada na tabela:

Estado Q2 Q1 Q0

A 0 0 0 B 0 0 1 C 0 1 0 D 0 1 1 E 1 0 0 F 1 0 1 G 1 1 0

A partir do diagrama de estados e da tabela de correspondência entre os estados, pode-se construir a tabela de estados, mostrada abaixo:

A 000

B 001

C 010

D 011

E 100

F 101

G 110

CONTADOR MÓDULO

7

Z2

Z1

Z0

Clock

Page 68: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 68

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Estado atual Saída atual Estado futuro

Q2 Q1 Q0 Z2 Z1 Z0 Q2 Q1 Q0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 0 0 1 0 0 1 0 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 0 0 0 0 1 1 1 x x x x x x

Tabelas verdades para as entradas J e K de cada um dos flip flops

Estado atual Saída atual Estado futuro

Q2 Q1 Q0 Z2 Z1 Z0 Q2 Q1 Q0 J2 K2 J1 K1 J0 K0

0 0 0 0 0 0 0 0 1 0 x 0 x 1 x 0 0 1 0 0 1 0 1 0 0 x 1 x x 1 0 1 0 0 1 0 0 1 1 0 x x 0 1 x 0 1 1 0 1 1 1 0 0 1 x x 1 x 1 1 0 0 1 0 0 1 0 1 x 0 0 x 1 x 1 0 1 1 0 1 1 1 0 x 0 1 x x 1 1 1 0 1 1 0 0 0 0 x 1 x 1 0 x 1 1 1 x x x x x x x x x x x x

Minimizando as funções através do mapa de Karnaugh, temos:

012 QQJ = 01 QJ = 12120 QQQQJ =+=

12 QK = 021 QQK += 10 =K

O circuito correspondente ao contador está mostrado abaixo:

CLKZ2

Z1

Z0

+5V

CK

J

Q'

Q

CK

J

Q'

Q

CK

J

Q'

Q

Page 69: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 69

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

8.4.1 - Contador ascendente e descendente Projetar um contador síncrono módulo 6, com contagem ascendente ou descendente. O modo de contagem é selecionado através da entrada M.

Modo de contagem: M = 0, contagem ascendente (0,1,2,3,4,5) M = 1, contagem descendente (5,4,3,2,1,0) O diagrama de estados, mostrando o valor de saída do contador para cada um dos estados, está mostrado abaixo:

Correspondência entre os estados:

Estado Q2 Q1 Q0 A 0 0 0 B 0 0 1 C 0 1 0 D 0 1 1 E 1 0 0 F 1 0 1

CONTADOR MÓDULO

6

M

Clock

Z2

Z1

Z0

A

000

B

001 C

010

D

011

E

100

F

101

M=0

0 0

0

0 0

M=1 1

1

1 1

1

Page 70: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 70

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Tabela de estados:

Estado Saída Estado futuro atual atual M = 0 M = 1 M = 0 M = 1

Q2 Q1 Q0 Z2 Z1 Z0 Q2 Q1 Q0 Q2 Q1 Q0 J2 K2 J1 K1 J0 K0 J2 K2 J1 K1 J0 K0

0 0 0 0 0 0 0 0 1 1 0 1 0 x 0 x 1 x 1 x 0 x 1 x 0 0 1 0 0 1 0 1 0 0 0 0 0 x 1 x x 1 0 x 0 x x 1 0 1 0 0 1 0 0 1 1 0 0 1 0 x x 0 1 x 0 x x 1 1 x 0 1 1 0 1 1 1 0 0 0 1 0 1 x x 1 x 1 0 x x 0 x 1 1 0 0 1 0 0 1 0 1 0 1 1 x 0 0 x 1 x x 1 1 x 1 x 1 0 1 1 0 1 1 1 0 1 0 0 x 1 0 x x 1 x 0 0 x x 1 1 1 0 x x x x x x x x x x x x x x x 1 1 1 x x x x x x x x x x x x x x x

A funções para as entradas dos J e K flip flops são:

01012 QQMQQMJ += 0002 QMQMQMK ⊕=+=

02021 QMQQQMJ +⋅= 0101 QQMQMK +=

10 =J 10 =K

As funções para as saídas Z2, Z1 e Z0 são: Z2 = Q2 , Z1 = Q1, Z0 = Q0 O circuito correspondente ao contador está mostrado na figura abaixo:

CLKZ2

Z1

Z0

M

+5V

CK

J

Q'

Q

CK

J

Q'

Q

CK

J

Q'

Q

Page 71: Notas de Aula TE050 2017 2 Circuitos Digitaiseletrica.ufpr.br/~pastro/TE050/Notas de Aula TE050_2017_2_Circuitos... · Notas de Aula TE050 - ELETRÔNICA DIGITAL I ... • Projeto

ELETRÔNICA DIGITAl I 71

Ademar Luiz Pastro UFPR-Departamento de Engenharia Elétrica / 2017

Exercícios: a) Projetar um contador divisor por 10. b) Projetar um contador módulo 6 que possua uma entrada para zerar a contagem de modo

síncrono(na transição de gatilho do clock).