Você está na página 1de 187

PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica

Eletrônica Digital Cap. I


por F.C.C. De Castro

Capítulo I
Portas Lógicas Básicas
1 Introdução
Em qualquer sistema digital1 a unidade básica construtiva é o elemento
denominado Porta Lógica. Este capítulo descreve as portas lógicas usuais,
seu uso e funcionalidade.
Portas lógicas são encontradas desde o nível de integração em larga escala
(circuitos integrados de processadores pentium, por exemplo) até o nível de
integração existente em circuitos integrados digitais mais simples (famílias de
circuitos integrados TTL e CMOS por exemplo).
Passamos a descrever, então, o conjunto básico de portas lógicas utilizadas
em Eletrônica Digital bem como a forma em que são comercialmente
disponíveis.
2 A Porta AND

Figura 1: Símbolo gráfico de uma porta lógica AND de 2 entradas ( A e B ).

Figura 2: Diagrama de pinos de um circuito integrado (CI) disponível


comercialmente (TTL – 7408) , contendo 4 portas AND. Para a família de CIs
TTL, a alimentação é + Vcc = 5V .

1
Por exemplo, o sistema digital que controla as ações a serem executadas por
motores e acionadores de um conjunto de elevadores, o controlador de um
processo industrial, o microprocessador de um computador, etc...

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

A B Y
0 0 0
0 1 0
1 0 0
1 1 1
Tabela 1: Tabela verdade de uma porta lógica AND de 2 entradas.

Observações:

(I) Em lógica digital o valor lógico 0 significa FALSO (F) e normalmente é


representado por um nível de tensão 0 V , isto é, um nível baixo de
tensão – LOW (L).

(II) O valor lógico 1 significa VERDADEIRO (V) e normalmente é


representado por um nível de tensão + Vcc , isto é, um nível alto de
tensão – HIGH (H).

⇒Assim, no contexto das observações (I) e (II)


é possível concluir que a
tabela verdade de uma porta AND de 2 entradas (Tabela 1) pode ter as
seguintes representações alternativas:

A B Y
F F F
F V F
V F F
V V V
Tabela 2: Representação alternativa da tabela verdade de uma porta lógica
AND de 2 entradas.

A B Y
0V 0V 0V
0V + Vcc 0V
+ Vcc 0V 0V
+ Vcc + Vcc + Vcc
Tabela 3: Representação alternativa da tabela verdade de uma porta lógica
AND de 2 entradas assumindo que o valor de tensão + Vcc represente
VERDADEIRO (V) e que o valor de tensão 0 V represente FALSO (F).

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

A B Y
L L L
L H L
H L L
H H H
Tabela 4: Representação alternativa da tabela verdade de uma porta lógica
AND de 2 entradas.

⇒Supondo que sejam aplicados dois trens de pulsos retangulares de tensão


nas entradas A e B de uma porta lógica, o gráfico no tempo do sinal obtido
na saída Y denomina-se Diagrama de Tempo:

Figura 3: Exemplo do diagrama de tempo que seria observado na tela de um


osciloscópio para uma porta lógica AND de 2 entradas (TTL – 7408 – ver
Figura 2). Note que os níveis de tensão ao longo do tempo obedecem a Tabela
3.

⇒Na prática, o valores V e F da tabela verdade de uma porta lógica


representam a ocorrência de eventos que devem resultar combinados na saída
Y de acordo com uma lei de formação que atenda um determinado problema
a ser resolvido.

⇒Por exemplo, a Tabela 2 poderia representar a situação em que


queremos controlar o motor que abre e fecha a porta de um elevador
(controlado pela saída Y de uma porta AND) em função de o elevador estar
parado no andar em questão (sensor que aplica uma tensão + Vcc à entrada
A da porta AND quando esta situação ocorre) e em função de o usuário do
elevador ter apertado o botão de abertura de porta (sensor que aplica uma
tensão + Vcc à entrada B da porta AND quando esta situação ocorre):

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

A (elevador B (botão de Y (abre a


parado no andar) abertura de porta porta do
pressionado) elevador)
F F F
F V F
V F F
V V V
Tabela 5: Exemplo de aplicação simples de uma porta AND de 2 entradas na
abertura/fechamento da porta de um elevador.

3 A Porta OR

Figura 4: Símbolo gráfico de uma porta lógica OR de 2 entradas ( A e B ).

Figura 5: Diagrama de pinos de um circuito integrado (CI) disponível


comercialmente (TTL – 7432) , contendo 4 portas OR.

A B Y
0 0 0
0 1 1
1 0 1
1 1 1
Tabela 6: Tabela verdade de uma porta lógica OR de 2 entradas.

⇒São válidas todas as conclusões resultantes das observações (I) e (II) para
uma porta AND no que diz respeito à tabela verdade de uma porta OR.

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

Figura 6: Exemplo do diagrama de tempo que seria observado na tela de um


osciloscópio para uma porta lógica OR de 2 entradas (TTL – 7432 – ver Figura
5).

4 A Porta XOR

Figura 7: Símbolo gráfico de uma porta lógica XOR de 2 entradas ( A e B ).

A B Y
0 0 0
0 1 1
1 0 1
1 1 0
Tabela 7: Tabela verdade de uma porta lógica XOR de 2 entradas.

⇒São válidas todas as conclusões resultantes das observações (I) e (II) para
uma porta AND no que diz respeito à tabela verdade de uma porta XOR.

5 A Porta NOT

Figura 8: Símbolo gráfico de uma porta lógica NOT.

A Y
0 1
1 0
Tabela 8: Tabela verdade de uma porta lógica NOT.

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

Figura 9: Diagrama de pinos de um circuito integrado (CI) disponível


comercialmente (TTL – 7404) , contendo 6 portas NOT.

⇒São válidas todas as conclusões resultantes das observações (I) e (II) para
uma porta AND no que diz respeito à tabela verdade de uma porta NOT.

Figura 10: Exemplo de diagramas de tempo que seriam observados na tela de


um osciloscópio para uma porta lógica NOT (TTL – 7404 – ver Figura 9).

6 A Porta NAND

• Uma porta NAND é equivalente a uma porta AND seguida de uma porta
NOT:

Figura 11: Símbolo gráfico de uma porta lógica NAND de 2 entradas ( A e B ).

A B Y
0 0 1
0 1 1
1 0 1
1 1 0
Tabela 9: Tabela verdade de uma porta lógica NAND de 2 entradas.

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

⇒São válidas todas as conclusões resultantes das observações (I) e (II) para
uma porta AND no que diz respeito à tabela verdade de uma porta NAND.

7 A Porta NOR

• Uma porta NOR é equivalente a uma porta OR seguida de uma porta NOT:

Figura 12: Símbolo gráfico de uma porta lógica NOR de 2 entradas ( A e B ).

A B Y
0 0 1
0 1 0
1 0 0
1 1 0
Tabela 10: Tabela verdade de uma porta lógica NOR de 2 entradas.

⇒São válidas todas as conclusões resultantes das observações (I) e (II) para
uma porta AND no que diz respeito à tabela verdade de uma porta NOR.

8 A Porta XNOR

Figura 13: Símbolo gráfico de uma porta lógica XNOR de 2 entradas ( A e B ).

A B Y
0 0 1
0 1 0
1 0 0
1 1 1
Tabela 11: Tabela verdade de uma porta lógica XNOR de 2 entradas.

⇒São válidas todas as conclusões resultantes das observações (I) e (II) para
uma porta AND no que diz respeito à tabela verdade de uma porta XNOR.

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

9 Portas Lógicas com Mú ltiplas Entradas

Figura 14: Símbolo gráfico de uma porta lógica AND de (a) 2 entradas , (b) 3
entradas, (c) 4 entradas, (d) 12 entradas.

Figura 15: Símbolo gráfico de uma porta lógica OR de (a) 2 entradas , (b) 3
entradas, (c) 4 entradas, (d) 12 entradas.

10 Portas Lógicas Dispo níveis Comercialmente

Função da CI c/ 4 Portas CI c/ 3 Portas CI c/ 2 Portas CI c/ 1 Porta


Porta de 2 Entradas de 3 Entradas de 4 Entradas de 8 Entradas
NAND 7400 7410 7420 7430
NOR 7402 7427 7425
AND 7408 7411 7421
OR 7432
Tabela 12: Portas lógicas da família TTL disponíveis comercialmente em forma
de circuito integrado (CI).

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

11 Interligação de Porta s Lógicas

Figura 16: Exemplo de combinação de uma porta lógica NOR de duas


entradas com uma porta NAND de duas entradas formando uma Função
Lógica de 3 variáveis ( A , B e C ).

A B C Y
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
Tabela 13: Tabela verdade da Função Lógica de 3 variáveis implementada
pela combinação de portas da Figura 16.

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. I
por F.C.C. De Castro

12 Equação Booleana de Funções Lógicas

•Para facilitar o tratamento analítico das diversas funções lógicas possíveis de


serem implementadas através de portas lógicas utiliza-se a representação da
função lógica através de Equações Booleanas.

Função Lógica Símbolo Gráfico da Porta Equação Booleana


Básica

AND Y = A⋅ B

OR Y = A+ B

XOR Y = A⊕ B

NOT Y=A

NAND Y = A⋅ B

NOR Y = A+ B

XNOR Y = A⊕ B

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Capítulo II
Álgebra Booleana e Minimização Lógica
1 Introdução
Vimos no Capítulo I que a unidade básica construtiva de um sistema digital é a
Porta Lógica e que Funções Lógicas com diversas variáveis de entrada
podem ser obtidas mediante a interligação de portas lógicas básicas. Aliás, a
própria porta lógica básica (NAND, NOR, XOR, etc...) executa uma função
lógica elementar.
Vimos também no final do Capítulo I que para facilitar o tratamento analítico
das diversas funções lógicas possíveis de serem implementadas através da
interligação entre portas, utiliza-se a representação da função lógica através
de Equações Booleanas, conforme mostra a Tabela I a seguir:
Função Lógica Símbolo Gráfico da Porta Equação Booleana
Básica

AND Y = A⋅ B

OR Y = A+ B

XOR Y = A⊕ B

NOT Y=A

NAND Y = A⋅ B

NOR Y = A+ B

XNOR Y = A⊕ B

Tabela 1: Equações Booleanas básicas correspondentes às Funções Lógicas


Básicas.

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Este capítulo descreve o método algébrico para análise e projeto de circuitos


digitais que utilizam portas lógicas. As operações algébricas elementares do
método algébrico Booleano consiste nas Equações Booleanas mostradas na
Tabela I.
Veremos que:

• Não importando o número de variáveis de entrada, a quantidade e os tipos


de portas lógicas interligadas necessárias para que se obtenha uma função
lógica desejada na saída Y ,

•Não importando o número de variáveis de entrada da tabela verdade que


descreve uma função lógica Y = f (A, B, !)

⇒ Sempre poderemos escrever uma equação algébrica Booleana que


poderá ser simplificada e/ou otimizada através do uso dos Teoremas e
Postulados Booleanos.
2 Teoremas e Postulad os Booleanos
A Álgebra Booleana possui as mesmas propriedades da Álgebra Linear
ordinária, se considerarmos:

• a operação lógica básica A AND B como a multiplicação A ⋅ B (ou AB )

• a operação A OR B como a soma A + B

Propriedade Comutativa: AB = BA
A+ B = B + A
Propriedade Associativa: A(BC ) = (AB )C

A + (B + C ) = (A + B ) + C

Propriedade Distributiva: A(B + C ) = AB + AC

Tabela 2: Propriedades da Álgebra Booleana.

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

P1 A = 1 se A≠0 P6 0+0 =0
P2 A = 0 se A ≠1 P7 1⋅ 0 = 0
P3 0⋅0 = 0 P8 0 +1 = 1
P4 1+1 = 1 P9 0 =1
P5 1 ⋅1 = 1 P10 1= 0
Tabela 3: Postulados da Álgebra Booleana.

T1 A+0 = A T8
( A) = A
T2 A ⋅1 = A T9 A+ A =1
T3 A +1 = 1 T10 A⋅ A = 0
T4 A⋅0 = 0 T11 A + B + C + ! = A ⋅ B ⋅ C ⋅!
(Teorema I de Morgan)

T5 A+ A = A T12 A ⋅ B ⋅ C ⋅! = A + B + C + !
(Teorema II de Morgan)

T6 A⋅ A = A T13 A(A + B ) = A + AB = A(1 + B ) = A

T7 ( A) = A T14 A + AB = A(A + B ) = A
Tabela 4: Teoremas da Álgebra Booleana.

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 1:

Determinar a expressão (equação) Booleana que representa a Tabela Verdade


abaixo. Simplifique e otimize a expressão utilizando os resultados das Tabelas
2, 3 e 4. Desenhe a interligação de portas básicas que implementa esta Tabela
Verdade.

A B C Y
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
1 1 1 0
Tabela 5: Tabela verdade de uma função lógica hipotética de 3 variáveis.

Solução:

Y = A BC + ABC + ABC

(
Y = A BC + B AC + AC )
Mas a função lógica XOR com duas variáveis A e C tem a seguinte Tabela
Verdade/Expressão Booleana:

A C Y = A ⊕ C = AC + AC
0 0 0
0 1 1
1 0 1
1 1 0
Logo,

Y = A BC + B(A ⊕ C )

Utilizando o T11 da Tabela 4 obtemos a seguinte Expressão Booleana


simplificada:

Y = (A + B )C + B(A ⊕ C )

Que resulta no seguinte circuito lógico:

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Figura 1: Interligação de portas básicas que implementa a Tabela Verdade da


Tabela 5.

3 Mapas de Karnaugh
⇒ Um Mapa de Karnaugh (Mapa K) é a representação das linhas de uma
Tabela Verdade em forma de quadrículos adjacentes.

⇒ Dois quadrículos adjacentes verticalmente ou horizontalmente em um


mapa K correspondem à duas linhas da Tabela Verdade tal que apenas uma
variável tenha seu valor lógico alterado de um quadrículo para o outro. Isto
permite que a Propriedade Distributiva da Tabela 2 em conjunto com o teorema
T9 da Tabela 4 leve à eliminação de uma variável.

⇒ A simplificação lógica obtida com um Mapa K segue os seguintes


princípios:
(I) Seleciona-se uma combinação de quadrículos tal que inclua todos os
quadrículos pelo menos uma vez, sendo o número de quadrículos
selecionados uma potência inteira de 2. Ou seja, um quadrículo pode
aparecer em mais de uma combinação.
(II) As combinações devem ser selecionadas objetivando incluir o maior
número de quadrículos por combinação, utilizando para tanto o menor
número possível de combinações.

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 2:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C Y
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Solução:

Figura 2

Y = A B + C + AB

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 3:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 1
0 0 0 1 1
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 1
1 0 0 1 1
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 1 0 1 1
1 1 1 0 0
1 1 1 1 1
Solução:

Figura 3

Y = ABC + D + BC

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 4:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 0
0 1 0 0 1
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 0
1 0 1 1 0
1 1 0 0 1
1 1 0 1 1
1 1 1 0 0
1 1 1 1 0
Solução:

Figura 4

Y = BC

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 5:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 1
0 0 0 1 0
0 0 1 0 1
0 0 1 1 0
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 0
1 0 0 0 1
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
1 1 1 1 0
Solução:

Figura 5

Y = BD

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 6:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 0
0 1 0 0 1
0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0
Solução:

Figura 6

Y = AB

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 7:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 0
0 0 0 1 1
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 0
1 0 0 0 0
1 0 0 1 1
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0
Solução:

Figura 7

Y = BD

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 8:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 1
0 0 0 1 1
0 0 1 0 0
0 0 1 1 0
0 1 0 0 1
0 1 0 1 1
0 1 1 0 0
0 1 1 1 0
1 0 0 0 1
1 0 0 1 1
1 0 1 0 0
1 0 1 1 0
1 1 0 0 1
1 1 0 1 1
1 1 1 0 0
1 1 1 1 0
Solução:

Figura 8

Y =C

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Exemplo 9:
Simplifique a Expressão Booleana resultante da Tabela Verdade abaixo.

A B C D Y
0 0 0 0 1
0 0 0 1 1
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 0
1 0 0 0 1
1 0 0 1 1
1 0 1 0 1
1 0 1 1 1
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0
Solução:

Figura 9

Y=B

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

3.1 Método de uso dos Mapa s de Karnaugh

• Para efeito de sistematizar o uso de um Mapa K na minimização lógica,


sugere-se adotar o seguinte procedimento:
(I) Assinalar inicialmente apenas os quadrículos que não podem ser
combinados com nenhum outro.
(II) Identificar os quadrículos que podem ser combinados com um único
outro quadrículo somente de uma maneira. Assinalar estas
combinações de dois quadrículos por combinação. Quadrículos que
podem ser combinados em grupos de dois de mais de uma maneira
são deixados temporariamente de lado.
(III) Identificar quadrículos que podem ser combinados com três outros
quadrículos somente de uma maneira. Assinalar estas combinações
de quatro quadrículos por combinação. Quadrículos que podem ser
combinados em grupos de quatro de mais de uma maneira são
deixados temporariamente de lado.
(IV) Identificar quadrículos que podem ser combinados com sete outros
quadrículos somente de uma maneira. Assinalar estas combinações
de oito quadrículos por combinação. Quadrículos que podem ser
combinados em grupos de oito de mais de uma maneira são
deixados temporariamente de lado.
(V) Repetir o processo para grupos de 16,32, etc...
(VI) Se, uma vez encerrado o processo acima, ainda restarem quadrículos
não incluídos em agrupamentos, estes quadrículos podem ser
combinados uns com os outros ou com quadrículos já incluídos em
outros agrupamentos (se houver adjacência e o agrupamento
resultante contiver uma potência inteira de 2).
(VII) É importante relembrar que o objetivo é obter o menor número de
agrupamentos possível, cada agrupamento contendo o maior
número possível de quadrículas que resulte em uma potência
inteira de 2.

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

⇒ As Figuras 10, 11, 12 e 13 mostram a aplicação do método em um


exemplo específico:

Figura 10: Mapa de Karnaugh para a função lógica descrita por


Y = ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D
Etapa (I) do método para sistematização do uso de mapas K.

Figura 11: Mapa de Karnaugh para a função lógica descrita por


Y = ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D
Etapa (II) do método para sistematização do uso de mapas K.

15
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Figura 12: Mapa de Karnaugh para a função lógica descrita por


Y = ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D
Etapa (III) do método para sistematização do uso de mapas K.

Figura 13: Mapa de Karnaugh para a função lógica descrita por


Y = ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D + ABCD + ABC D + ABC D
Mapa K completo. A função lógica minimizada resulta em
Y = A BC D + AC D + ACD + AB + B D + BC .

16
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

3.2 Mapas de Karnaugh par a 5 Variáveis

• Suponhamos que queiramos minimizar a função lógica


Y 1 = f (A, B, C , D, E ) definida por:

Y 1 = A BC D E + A BC DE + A BCDE + A BCD E + ABC D E + ABC DE +


ABCD E + ABC D E + ABC DE + ABC D E + A BC D E + ABC DE +
ABCDE + A BCD E + ABCD E + ABC DE + ABC D E

⇒ O Mapa K para Y1 = f (A, B, C , D, E ) é:

Figura 14: Mapa de Karnaugh para a função lógica Y 1 = f (A, B, C , D, E ).

17
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Figura 15: Adjacências entre quadrículos no Mapa de Karnaugh para a função


lógica Y 1 = f (A, B, C , D, E ) dada, caracterizadas sob um ponto de vista
D E , para o
tridimensional. O termo resultante para o agrupamento amarelo é
agrupamento laranja é BCE , para o agrupamento magenta é AB D , e para o
agrupamento cinza (superposto ao magenta para A = 0 ) é BC DE . Portanto,
a função lógica minimizada resulta em Y 1 = D E + BCE + AB D + BC DE .

• Suponhamos agora que queiramos minimizar a função lógica


Y 2 = f (A, B, C , D, E ) definida por:

Y 2 = ABC D E + A BC D E + ABC D E + ABC D E + A BC DE + ABC DE +


ABCDE + A BC D E + A BC DE + ABC DE + ABCDE + A BCDE

18
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Figura 16: Adjacências entre quadrículos no Mapa de Karnaugh para a função


lógica Y 2 = f (A, B, C , D, E ) dada, caracterizadas sob um ponto de vista
bidimensional. A função lógica minimizada resulta em
Y 2 = ACDE + A D E + BCE + BC D .

3.3 Mapas de Karnaugh par a 6 Variáveis

• Suponhamos que queiramos minimizar a função lógica


Y 3 = f (A, B, C , D, E , F ) definida por:

Y 3 = A BC D E F + ABC D E F + ABCD E F + A BC D E F + ABC D E F +


.
ABC DEF + ABCD E F

⇒ O Mapa K para Y 3 = f (A, B, C , D, E, F ) é:

19
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Figura 17: Adjacências entre quadrículos no Mapa de Karnaugh para a função


lógica Y 3 = f (A, B, C , D, E , F ) dada, caracterizadas sob um ponto de vista
bidimensional. A função lógica minimizada resulta em
Y 3 = C D E F + BD E F + ABC DF .

20
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

4 Funções Incompletam ente Especificadas (don’t care condition)

• Vamos supor que um determinado processo industrial a ser controlado por


um circuito lógico tenha uma variável Y representada por:

A B C D Y
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 0
0 1 0 0 1
0 1 0 1 1
0 1 1 0 1
0 1 1 1 X
1 0 0 0 1
1 0 0 1 1
1 0 1 0 X
1 0 1 1 X
1 1 0 0 0
1 1 0 1 0
1 1 1 0 X
1 1 1 1 X
Tabela 6: Tabela verdade de Y = f (A, B, C , D ) .
⇒ O valor “X” atribuído à saída Y em determinadas linhas da Tabela
Verdade significa que, para os específicos valores lógicos das variáveis
A , B , C e D nestas linhas, o valor lógico da saída Y é irrelevante para o
processo controlado (don’t care).

⇒ O mapa K resultante é

Figura 17: Mapa K para a Tabela 6.

21
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

⇒ Mas, uma vez que os quadrículos contendo X representam situações


irrelevantes ao processo industrial, podemos atribuir a cada X um valor lógico
conveniente no contexto de minimização lógica de forma a nos permitir agrupar
o maior número possível de quadrículos gerando o menor número possível de
agrupamentos:

Figura 18: Mapa K para a Tabela 6 com os valores lógicos dos Xs atribuídos
objetivando a minimização da função lógica resultante. A função lógica
minimizada resulta em Y = AB + A B = A ⊕ B .

5 Distância de Hammin g

• As linhas de uma Tabela Verdade formam Palavras Binárias formadas por


tantos bits (bit: binary unit) quantos sejam o número de variáveis da função
lógica descrita pela tabela. Por exemplo, as linhas nas 4 primeiras colunas da
Tabela 6 formam palavras binárias de 4 bits.

• Em muitas situações práticas de controle digital de processos industriais tais


palavras binárias constituem Instruções de Comando que devem ser
enviadas por longas distâncias através de um Canal de Transmissão (cabo
coaxial, fibra ótica, etc...) antes de chegarem ao destino onde a instrução
desencadeará uma ação específica no processo controlado. A Tabela 7 mostra
um possível exemplo com 4 instruções de comando cada uma delas definida
por uma palavra binária de 5 bits:

22
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

Palavra-Código binária (Instrução de Ação efetuada no Ponto de Destino


Comando) enviada remotamente

[0 0 0 0 0] Abre comporta da represa

[0 1 0 1 1] Fecha comporta da represa

[1 0 1 0 1] Liga motor da bomba de dreno

[1 1 1 1 0] Desliga motor da bomba de dreno

Tabela 7: Exemplo de processo remotamente controlado. O conjunto de


instruções de comando é formado por 4 instruções cada uma delas definida por
uma palavra binária de 5 bits.

• Sempre que palavras binárias são enviadas através de um Canal de


Transmissão estas ficam sujeitas a algum tipo de Interferência (ruído aleatório,
interferência de outras fontes de energia, interferência intersimbólica, etc...).

⇒ Portanto, devido à interferência sofrida no canal de transmissão, as


Instruções de Comando de um processo remotamente controlado podem
chegar ao ponto de destino com alguns de seus bits tendo seu valor lógico
invertido. Isto constitui um Erro de Transmissão que deve ser corrigido.

• Uma técnica de correção de erros de transmissão é a denominada FEC


(Forward Error Correction). Em palavras simples, quando uma palavra binária
chega ao seu destino ela é comparada com uma tabela contendo todas as
possíveis Instruções de Comando de um processo, denominada Tabela de
Decodificação.

• A comparação é efetuada com base na Distância de Hamming entre a


palavra binária recebida e aquelas contidas na Tabela de Decodificação. A
Distância de Hamming entre duas palavras binárias é a contagem dos bits
com valores lógicos complementares em posições correspondentes nas duas
palavras.

23
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

• Por exemplo, suponhamos que para o processo remotamente controlado da


Tabela 7, seja enviada em determinado instante a instrução 0 1 0 1 1 [ ]
(fecha comporta da represa) e que, por ação de interferência no canal de
transmissão, seja recebido no ponto de destino a palavra binária errada
[ ]
0 1 0 0 1 ( erro no segundo bit da direita para a esquerda).

⇒ O decodificador FEC no ponto de destino calcula as Distâncias de


Hamming entre a palavra recebida e todas as possíveis instruções válidas
(Tabela de Decodificação):
Palavra-Código binária (Instrução de Distância de Hamming da
Comando) enviada remotamente Palavra-Código recebida
[0 1 0 0 1]:

[0 0 0 0 0] 2

[0 1 0 1 1] 1

[1 0 1 0 1] 3

[1 1 1 1 0] 4

Tabela 8: Distâncias de Hamming entre a palavra 0 1 [ 0 0 1] e todas as


possíveis instruções válidas (Tabela de Decodificação).

⇒ A seguir, o decodificador FEC no ponto de destino faz a seguinte


inferência: A instrução originalmente transmitida é aquela que resulta na menor
Distância de Hamming da palavra recebida sob erro (instrução que é “mais
parecida” com a palavra recebida).

⇒ Portanto, da Tabela 8, o decodicador FEC infere que a instrução


[ ]
originalmente transmitida foi 0 1 0 1 1 (menor Distância de Hamming
entre as 4 obtidas). Note que o decodificador efetuou uma inferência correta,
porque a palavra originalmente transmitida é efetivamente a palavra inferida.

⇒ Observe que se tivesse sido recebida uma palavra binária com mais de
um bit em erro, o decodificador FEC deste exemplo não teria capacidade de
corrigir os erros múltiplos. Portanto, surge a questão: Qual é o fator que
determina a capacidade de um decodificador FEC corrigir erros múltiplos ?

24
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. II
por F.C.C. De Castro

⇒ O fator que rege a Capacidade de Correção de Erro de um decodificador


FEC é a Distância de Hamming entre as palavras binárias do conjunto de
instruções.

⇒ Quanto maior for a Mínima Distância de Hamming obtida entre todas


as palavras binárias do conjunto de instruções, maior será a capacidade
de correção do decodificador FEC. Demonstra-se que o número de erros
simultâneos t que um decodificador FEC é capaz de corrigir dado por

 d − 1
t =  min  (1)
 2 
onde d min representa a Mínima Distância de Hamming obtida entre todas as
palavras binárias do conjunto de instruções e 
⋅ é o operador que resulta no
menor inteiro mais próximo do argumento.

⇒ No exemplo da Tabela 7, d min = 3 resultando t = 1 , o que significa que o


decodificador FEC consegue corrigir no máximo um bit recebido em erro. Para
aumentar a capacidade de correção teríamos que utilizar instruções
representadas por palavras binárias com um número maior do que 5 bits, de
modo a aumentar a Mínima Distância de Hamming entre elas.

25
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Capítulo III
Circuitos Digitais Combinacionais
1 Introdução
Vimos no Capítulo II que uma desejada função lógica pode ser implementada
mediante a combinação de portas lógicas. Esta combinação de portas lógicas
objetivando atender um mapeamento Y = f (A, B, !) é denominada de
Circuito Digital. Neste Capítulo estudaremos circuitos digitais que visam
solucionar problemas específicos e comuns em Eletrônica Digital.

2 Decodificadores para Display de 7 Segmentos

• Um display de 7 segmentos mostra ao usuário de um sistema digital um


algarismo decimal de 0 a 9, conforme mostram as Figuras 1, 2 e 3.

Figura 1: Formato de um display de 7 segmentos mostrando a localização dos


segmentos a, b, c, d, e, f, g.

Figura 2: Algarismos decimais possíveis de serem formados mediante o


acionamento combinado dos segmentos a, b, c, d, e, f, g.

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 3: Acionamento dos segmentos a, b, c, d, e, f, g. Cada segmento é um


LED (Light Emitter Diode), que emite luz quando o diodo é percorrido por
uma corrente direta ( 1 mA a 50 mA ). (a) display de anodo comum. (b)
display de catodo comum.

• Um display de 7 segmentos alternativo é o denominado LCD (Liquid


Crystal Display), largamente utilizado em relógios digitais de pulso. A Figura
4 mostra a técnica de acionamento dos segmentos a, b, c, d, e, f, g de um LCD.

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 4: Acionamento dos segmentos a, b, c, d, e, f, g de um LCD. Um


segmento é acionado por uma onda quadrada com freqüência entre 30 a 60Hz
aplicada entre o segmento e uma superfície comum a todos os segmentos
denominada backplane. Quando a onda quadrada (signal source) é aplicada
ao segmento através do controle exercido pela porta XOR, o segmento assim
ativado deixa de refletir a luz incidente, alterando sua tonalidade para um cinza
escuro.

•A Tabela 1 mostra os algarismos decimais resultantes do acionamento


combinado dos segmentos a, b, c, d, e, f, g:

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Tabela 1: Algarismos decimais resultantes do acionamento combinado dos


segmentos a, b, c, d, e, f, g. Ver Figura 1.

• Um Decodificador para Display de 7 Segmentos é um circuito digital


formado por portas lógicas que, ao receber uma palavra binária de 4 bits
representativa do algarismo decimal a ser mostrado, aciona os segmentos
correspondente no display, conforme mostram a Figuras 5 e a Tabela 2.

Figura 5: Interligação de um Decodificador para Display de 7 Segmentos com


o Display.

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Tabela 2: Tabela Verdade de um Decodificador para Display de 7 Segmentos.

⇒ Observe que a coluna 1 da Tabela 2 representa o número decimal


correspondente à palavra binária respectiva na coluna 2 da tabela através da
relação: NúmeroDecimal = D ⋅ 2 3 + C ⋅ 2 2 + B ⋅ 21 + A ⋅ 2 0

• Um Decodificador para Display de 7 Segmentos é um Circuito Integrado que


contém as combinações de portas lógicas necessárias e otimizadas para a
implementação do conjunto de Expressões Booleanas definidas pela Tabela 2.

• Por exemplo, da Tabela 2 verificamos que a Expressão Booleana para o


segmento a é:

a=DC B A + DCB A + DCBA + DC BA +

+ DCB A + DCBA + DC B A + DC BA

• Cujo Mapa K é:

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 6: Mapa K para a lógica de acionamento do segmento a. A Expressão


Booleana minimizada resulta em a = D + B + C A + C A.

• E cujo circuito lógico resultante é:

Figura 7: Circuito lógico para acionamento do segmento a. A Expressão


Booleana implementada é a = D + B + C A + C A.

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• Exercício Proposto: Determine o circuito lógico completo para o


acionamento dos segmentos a, b, c, d, e, f, g. Caso, após a minimização
individual das expressões booleanas para cada segmento, as funções lógicas
resultantes para o acionamento de dois ou mais segmentos compartilharem
termos comuns, faça a minimização adicional aproveitando o compartilhamento
entre os termos.

Figura 8: Circuitos Integrados TTL comercialmente disponíveis para a


implementação da função de Decodificador para Display de 7 Segmentos. (a)
7446 – decodificador para display de anodo comum. (b) 7448 – decodificador
para display de catodo comum.

3 Decodificadores BCD -para-Decimal

• BCD é a abreviação para Decimal Codificado em Binário (Binary Coded


Decimal).

• O código BCD expressa cada dígito de um número decimal por uma palavra
binária de 4 bits (Nibble) no formato b3 b2 b1 b0 através da relação:
NúmeroDecimal = b3 ⋅ 2 3 + b2 ⋅ 2 2 + b1 ⋅ 21 + b0 ⋅ 2 0 . A Tabela 3 mostra o
resultado desta relação.

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Nibble Número
Decimal
b3 b2 b1 b0
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5
0 1 1 0 6
0 1 1 1 7
1 0 0 0 8
1 0 0 1 9
Tabela 3: Tabela para conversão de um Nibble em um Número Decimal. A
conversão obedece a relação NúmeroDecimal = b3 ⋅ 2 3 + b2 ⋅ 2 2 + b1 ⋅ 21 + b0 ⋅ 2 0 .

• As entradas DCBA de um Decodificador para Display de 7 Segmentos (ver


Seção 1) constituem um exemplo de informação binária codificada em BCD.

• Por exemplo, o número decimal 8963 codificado em BCD resulta em (ver


Tabela 3):
8 9 6 3
↓ ↓ ↓ ↓
1000 1001 0110 0011

• Por outro lado, o número binário 010101111000 codificado em BCD, quando


convertido para decimal resulta em

0101 0111 1000


↓ ↓ ↓
5 7 8

• A Figura 9 mostra o diagrama interno de um Decodificador BCD-para-


Decimal.

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 9: Diagrama interno de um Decodificador BCD-para-Decimal. Este


decodificador é conhecido como decodificador 1-de-10, porque para cada
Nibble ABCD na entrada do decodificador, somente uma das 10 saídas está
em nível lógico 1. Por exemplo, para ABCD = 0011 temos para as saídas:
Y3 = 1 e todas as demais saídas Yk = 0 , com k ≠ 3 . Note que o subscrito da
saída cujo nível lógico é 1 corresponde ao valor decimal do Nibble codificado
em BCD nas entradas ABCD .

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 10: Diagrama de pinagem do circuito integrado TTL – 7445


comercialmente disponível para a implementação da função Decodificador
BCD-para-Decimal.

Tabela 4: Tabela Verdade para o TTL – 7445. Note que a saída ativa é
precedida de uma porta NOT.

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 11: Exemplo de utilização do TTL – 7445 como Decodificador BCD-


para-Decimal. O valor decimal do ABCD na entrada do decodificador é
indicado pelo LED que está aceso conectado à saída correspondente.

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

3.1 Codificador Decimal-pa ra-BCD

Figura 12: Diagrama interno de um Codificador Decimal-para-BCD. As chaves


são do tipo pushbutton (como no teclado de um computador). Por exemplo,
quando o pushbutton 3 é pressionado as portas OR cujas saídas são C e D
têm entradas cujo nível lógico é 1, resultando ABCD = 0011 .

Figura 13: Diagrama (a) de pinagem e (b) diagrama lógico do circuito


integrado TTL – 74147 comercialmente disponível para a implementação da
função Codificador Decimal-para-BCD.

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Tabela 5: Tabela Verdade para o TTL – 74147.

Figura 14: Exemplo de utilização do TTL – 74147 como Codificador Decimal-


para-BCD. Quando nenhuma chave é pressionada todas as entradas X têm
valor lógico 1 e todas as saídas têm valor lógico 1. Quando a chave X9 é
pressionada ( X9 = 0 ) temos na saída ABCD = 0110 , que é equivalente a 9
se complementarmos os bits. Quando a chave X8 é pressionada ( X8 = 0 )
temos na saída ABCD = 0111 , que é equivalente a 8 se complementarmos
os bits.

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• Note da Tabela 5 que a entrada X ativa (ativa → valor lógico 0) de ordem


mais alta tem prioridade sobre as demais. Se todas as entradas X têm valor
lógico 0, a de ordem mais alta (X9) é codificada com prioridade resultando
ABCD = 0110 , cujo complemento identifica a entrada ativa de ordem mais
alta. Se X9=1 e X8=0 então a entrada X ativa de ordem mais alta é X8 e é
codificada com prioridade resultando ABCD = 0111 , cujo complemento
identifica a entrada ativa de ordem mais alta. Devido a este comportamento o
TTL – 74147 é também conhecido como Codificador de Prioridade.

4 Decodificador Gray-p ara-Binário

• O Código Gray é um código digital com a propriedade de que duas


palavras-código consecutivas diferem apenas de um bit.

• O Código Gray é um código que se enquadra na classe de Códigos


Refletidos, enquadramento devido ao algoritmo de construção do mesmo. Por
exemplo, a Tabela 6 mostra a construção por quantificação-reflexão do Código
Gray para 4 bits:

Quantificação Reflexão Quantificação Reflexão Quantificação Reflexão Quantificação


0 0 00 00 000 000 0000
1 1 01 01 001 001 0001

1 11 11 011 011 0011


0 10 10 010 010 0010

10 110 110 0110


11 111 111 0111
01 101 101 0101
00 100 100 0100

100 1100
101 1101
111 1111
110 1110
010 1010
011 1011
001 1001
000 1000

Tabela 6: Algoritmo de construção do Código Gray de 4 bits.

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Decimal Binário Gray


0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
Tabela 7: Tabela de conversão Decimal-Binário-Gray de 4 bits.

• Representando o nibble do Código Gray da Tabela 7 por G3G2 G1G0 e o


nibble do Código Binário por B3 B2 B1 B0 temos:

Tabela 8: Identificação dos nibbles dos códigos Gray e Binário de 4 bits.

• A Figura 15 mostra os mapas K para as funções lógicas que expressam B , 0

B1 , B2 e B3 em função de G3G2 G1G0 , a partir da Tabela 8:

15
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 15: Mapas K para as funções lógicas que expressam B0 , B1 , B2 e B3


em função de G3G2 G1G0 .

16
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• Da Figura 15 temos que as funções lógicas minimizadas que expressam B , 0

B1 , B2 e B3 em função de G3G2 G1G0 são:


B0 = G0 ⊕ G1 ⊕ G2 ⊕ G3
B1 = G1 ⊕ G2 ⊕ G3
B2 = G2 ⊕ G3
B3 = G3

• Generalizando para um Código Gray de N bits, podemos escrever que


Bn = Gn ⊕ G(n+1) ⊕ G(n+1) ⊕ " ⊕ GN −1 , o que sugere o circuito lógico mostrado
na Figura 16:

Figura 16: Conversor Gray-para-Binário.

17
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

4.1 Decodificador Binário-p ara-Gray

• A Figura 17 mostra os mapas K para as funções lógicas que expressam G 0 ,


G1 , G2 e G3 em função de B3 B2 B1 B0 , tendo como ponto de partida a Tabela
8:

Figura 17: Mapas K para as funções lógicas que expressam G0 , G1 , G2 e


G3 em função de B3 B2 B1 B0 .

• Da Figura 17 temos que as funções lógicas minimizadas que expressam


G0 , G1 , G2 e G3 em função de B3 B2 B1 B0 são:

18
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

G0 = B0 ⊕ B1
G1 = B1 ⊕ B2
G2 = B2 ⊕ B3
G3 = B3

• Generalizando para um Código Gray de N bits, podemos escrever que


Gn = Bn ⊕ B(n+1) , sendo n + 1 ≤ N − 1 . Isto sugere o circuito lógico mostrado
na Figura 18:

Figura 18: Conversor Binário-para-Gray.

19
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

5 Multiplexadores

• Um Multiplexador é um circuito digital com n entradas e uma única saída, e


serve para selecionar qual sinal, dentre os n sinais de entrada, deve ser
roteado até a saída.

• Uma palavra binária de controle seleciona qual das n entradas é conectada


à saída conforme mostram as Figuras 19 e 20.

Figura 19: Diagrama geral de um multiplexador. Note que o número m de bits


da palavra binária de controle deve ser tal que 2m=n.

20
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 20: Diagrama interno um multiplexador 16-para-1. O número de bits da


palavra binária de controle é m=4 (nibble) e, portanto, o multiplexador pode
selecionar uma das n =2m=16 entradas. Por exemplo, se ABCD = 0111 então
o sinal digital que está sendo aplicado na entrada D7 é roteado até a saída Y .

21
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• A Figura 21 e a Tabela 9 descrevem um multiplexador 16-para-1 disponível


comercialmente na forma de circuito integrado da família TTL.

Figura 21: Diagrama de pinos do TTL 74150 – circuito integrado


comercialmente disponível para a implementação da função MUX 16-para-1.

Tabela 9: Tabela-Verdade para o TTL 74150. Note que o sinal de entrada


roteado à saída Y é submetido a uma porta NOT. Note também que o sinal de
strobe (pino 9 na Figura 21) é um sinal ativo-baixo que serve para
ativar/desativar o multiplexador.

22
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

5.1 Implementação de Funç ões Lógicas utilizando um MUX

• Vamos supor que queremos implementar a função lógica mostrada na


Tabela 10 a seguir.

Tabela 10: Tabela-Verdade de uma função lógica hipotética a ser


implementada.

Figura 22: Implementação da função lógica descrita na Tabela 10 utilizando o


TTL 74150. O procedimento geral para a implementação de qualquer função
lógica de 4 variáveis é o seguinte: Sempre que o nibble ABCD resultar em
uma saída Y = 1 na Tabela-Verdade (ver Tabela 10), conecta-se à terra o
pino de dado Dk , sendo k o valor decimal correspondente ao nibble ABCD .
O pino de dado de índice k cujo nibble correspondente na Tabela-Verdade
refere-se à saídas Y = 0 é conectado à + 5V .

23
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• ABCD = 0000 então a entrada D0 = 0 é


Por exemplo, na Figura 22, se
conectada à saída através de uma porta NOT, de modo que Y = 1 . Se
ABCD = 0111 então a entrada D7 = 1 é conectada à saída através de uma
porta NOT, de modo que Y = 1 . Todas as demais linhas da Tabela-Verdade
(Tabela 10) podem ser obtidas através de procedimento semelhante.

5.2 Multiplexadores de Nibb le

• Em muitas situações práticas precisamos selecionar um entre dois nibbles


de entrada, conforme mostram as Figuras 22 e 23.

Figura 23: Diagrama interno de um multiplexador de nibble. Quando


SELECIONADOR = 0 obtemos Y3Y2Y1Y0 = A3 A2 A1 A0 e quando
SELECIONADOR = 1 obtemos Y3Y2Y1Y0 = B3 B2 B1 B0 .

24
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 24: Diagrama de pinagem do circuito integrado TTL – 74157


comercialmente disponível para a implementação da função Multiplexador de
Nibble. O diagrama interno é o mostrado na Figura 23. O pino de strobe (pino
15) desativa o multiplexador quando encontra-se em nível lógico 1 e ativa o
multiplexador quando encontra-se em nível lógico 0.

6 Demultiplexadores

• Um Demultiplexador é um circuito digital com uma única entrada e n saídas,


e serve para selecionar à qual saída, dentre as n saídas, deve ser roteado o
sinal de entrada.

• Uma palavra binária de controle seleciona à qual das n saídas é conectada


o sinal de entrada conforme mostram as Figuras 25 e 26.

Figura 25: Diagrama geral de um demultiplexador. Note que o número m de


bits da palavra binária de controle deve ser tal que 2m=n.

25
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 26: Diagrama interno um demultiplexador 1-para-16. O número de bits


da palavra binária de controle é m=4 (nibble) e, portanto, o demultiplexador
pode selecionar uma das n =2m=16 saídas. Por exemplo, se ABCD = 0111
então o sinal digital que está sendo aplicado na entrada D é roteado até a
saída Y7 .

• As Figuras 27 e 28 e a Tabela 11 descrevem um demultiplexador 1-para-16


disponível comercialmente na forma de circuito integrado da família TTL.

Figura 27: Diagrama de pinos do TTL 74154 – circuito integrado


comercialmente disponível para a implementação da função DEMUX
1-para-16.

26
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 28: Diagrama lógico do TTL 74154.

Tabela 11: Tabela-Verdade para o TTL 74154.

27
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

7 Decodificadores

• Em seções anteriores deste capítulo já estudamos diversos decodificadores


específicos (BCD-para-Decimal, Binário-para-Gray, etc. ). Vimos que eles
servem como “tradutores” entre diversos os formatos de representação
numérica da informação a ser processada.

• Nesta seção estudaremos os decodificadores sob um ponto de vista


genérico.

• Um decodificador é similar a um demultiplexador , a única diferença é


que a entrada de dado do demultiplexador não existe no decodificador,
conforme podemos concluir comparando a Figura 26 com a Figura 29:

28
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 29: Diagrama interno um decodificador 1-de-16. A designação 1-de-16


decorre do fato de somente uma das 16 saídas assumir o nível lógico 1 em
função do valor da palavra binária de controle. Por exemplo, se
ABCD = 0111 então Y7 = 1 .

29
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 30: Utilização do TTL 74154 como decodificador 1-de-16. Já estudamos


este circuito integrado como DEMUX 1-para-16 (ver Figura 27). Note que para
converter o 74154 de demultiplexador para decodificador basta aterrar a
entrada de dados (pino 18).

30
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

8 Comparadores

• Um comparador indica a igualdade entre duas palavras binárias A e B, isto


é, indica se A=B.

Figura 31: Diagrama interno de um comparador de 4 bits. É mostrado a


comparação entre os nibbles 1010 e 1001, resultando o valor lógico 0 na saída,
o que significa que os nibbles não são iguais.

31
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• Um comparador de magnitude indica se A=B, A<B ou A>B.

Figura 32: Circuito Integrado (CI) TTL 7485, comercialmente disponível para a
implementação da função comparador de magnitude de 4 bits. Os pinos 2, 3 e
4 são entradas para conexão em cascata de 2 CIs e são utilizados quando se
deseja comparar palavras binárias com mais de 4 bits.

• O TTL 7485 compara duas palavras binárias de 4 bits A e B colocando


Q A< B , QA=B , QA>B em nível lógico 1 respectivamente quando
uma das saídas
A< B, A= B e A> B .

32
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Tabela 12: Tabela-Verdade para o TTL 7485.

33
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 33: Exemplo de utilização do CI TTL 7485 como comparador de


magnitude de 4 bits. As entradas são A = 1011 = 11(dec ) e B = 1100 = 12(dec ) ,
de modo que A < B , e, portanto, a saída Q A<B = 1 .

Figura 34: Conexão em cascata entre 2 CIs TTL 7485 de modo a implementar
um comparador de magnitude para palavras binárias de 8 bits. As entradas são
A = 10011101 = 157(dec ) e B = 10110110 = 182(dec ) , de modo que A < B , e,
portanto, a saída Q A<B = 1 .

• Note na Figura 34 que se os nibbles mais significativos (CI à esquerda) em


A e B são iguais, então o resultado é determinado pelas entradas para
conexão em cascata deste CI, as quais recebem o resultado da comparação
entre os nibbles menos significativos (CI à direita) em A e B .

34
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

9 Parity Check

• Vimos na Seção 5 do Capítulo II que em muitas situações práticas de


controle digital de processos industriais as palavras binárias constituem
Instruções de Comando que devem ser enviadas por longas distâncias
através de um Canal de Transmissão (cabo coaxial, fibra ótica, etc...) antes
de chegarem ao destino onde a instrução desencadeará uma ação específica
no processo controlado.

• Foi também discutido que sempre que palavras binárias são enviadas
através de um Canal de Transmissão estas ficam sujeitas a algum tipo de
Interferência (ruído aleatório, interferência de outras fontes de energia,
interferência intersimbólica, etc...), gerando Erros de Transmissão que devem
ser corrigidos ou pelo menos detectados.

• Quando o objetivo é somente detectar um erro de transmissão, sem precisar


corrigir o erro, a operação parity check é uma possível solução ao problema
de detecção de erros de transmissão.

• A operação parity check consiste em acrescentar um bit adicional a uma


palavra binária a ser transmitida através do canal de transmissão, bit adicional
que define a paridade da palavra binária transmitida. O circuito receptor no
ponto remoto do processo controlado testa a paridade da palavra binária
recebida verificando que houve erro quando a paridade não é mantida.

• Por exemplo, a palavra binária de 8 bits dada por 11001111 tem paridade
par porque contém um número par de bits com valor lógico 1. Por outro lado a
palavra binária de 16 bits definida por 1010110010001100 tem paridade ímpar
porque contém um número ímpar de bits com valor lógico 1.

• O teste de paridade (parity check) é usualmente realizado através de uma


porta XOR, conforme mostra a Figura 35:

Figura 35: Teste de paridade da palavra binária 1010110010001100. A saída


da porta XOR resulta em nível lógico 1, significando que esta palavra possui
paridade ímpar. Se a palavra aplicada na entrada da porta XOR tivesse
paridade par, então a saída da porta resultaria em nível lógico 0.

35
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

9.1 Gerador de Paridade

• Para que a operação parity check possa ser efetuada no receptor é


necessário acrescentar um bit adicional à palavra binária a ser transmitida
através do canal de transmissão, bit adicional que define a paridade da palavra
binária transmitida. A Figura 36 mostra um circuito gerador de paridade
utilizado no transmissor da palavra binária.

Figura 36: Circuito gerador de paridade. Se a entrada X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0


tem paridade par então X 8 = 1 , de modo que a palavra transmitida
X 8 X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0 terá paridade ímpar. Por outro lado, se a entrada
X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0 tem paridade ímpar então X 8 = 0 , de modo que a palavra
transmitida X 8 X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0 sempre terá paridade ímpar. Se quisermos
detectar erros com base em palavras transmitidas de paridade par, basta
eliminarmos a porta NOT.

10 Memórias ROM (Rea d Only Memory)

• Uma ROM é uma memória de apenas leitura. Ela é usualmente


implementada em um CI, podendo armazenar milhares de palavras binárias
que representam instruções e/ou dados para um
microcontrolador/microprocessador.

• Algumas ROMs de menor capacidade são também utilizadas para


implementar tabelas-verdade. Em outras palavras, podemos usar uma ROM ao
invés de portas lógicas para gerar qualquer função booleana. A Figura 37
mostra o diagrama de uma ROM constituída por diodos, com endereço de
acesso definido pela posição da chave rotativa.

36
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 37: ROM a diodo, armazenando nos endereços 0 a 7 as palavras


binárias de 4 bits (nibbles) mostradas na Tabela 13. Cada endereço
corresponde a uma posição da chave rotativa. Por exemplo, quando a chave
rotativa encontra-se na posição 3 (endereço 3) obtém-se Y3Y2Y1Y0 = 1100 .

Tabela 13: Tabela-Verdade da ROM da Figura 37.

• Na realidade a chave rotativa aqui empregada é apenas um recurso didático


para ilustrar a operação de uma ROM. Na prática, nenhuma chave rotativa é
utilizada para seleção de endereço, mas sim um decodificador, conforme
mostra a Figura 38.

37
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

Figura 38: ROM a diodo da Figura 37, com a chave rotativa de 8 posições
substituída por um decodificador 1-de-8. Por exemplo, quando ABC = 011
obtém-se Y3Y2Y1Y0 = 1100 (ver Tabela 14).

Tabela 14: Tabela-Verdade da ROM da Figura 38.

38
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. III
por F.C.C. De Castro

• Uma PROM (Programmable ROM) é uma ROM programável. Uma PROM


vem de fabrica com todos os diodos implementados (a PROM gera todas as
palavras binárias da tabela verdade com nível lógico 1 em seus bits). O
usuário, através de um dispositivo programador de PROM, queima os
microfusíveis em série com cada diodo que deva representa um bit de valor
lógico 0 na palavra endereçada.

• Uma ROM é especificada basicamente pelo número de endereços e o


número de bits na palavra binária armazenada em cada endereço. Por
exemplo, uma ROM 2048 × 8 armazena 2048 palavras binárias de 8 bits (8
bits = 1 byte), e, portanto, armazena um total de 16384 bits.

• Existem vários tipos de ROM além da PROM, como, por exemplo, a


UV-EPROM (Ultra Violet erasable PROM) e a EEPROM (Eletrically Erasable
PROM). Estes tipos adicionais serão abordados em capítulo posterior
específico ao estudo de memórias.

39
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Capítulo IV - Famílias Lógicas


1 Introdução
Nos capítulos anteriores estudamos circuitos digitais sob o ponto de vista das
funções lógicas por eles implementadas. Neste capítulo estudaremos circuitos
digitais no contexto de suas características elétricas de operação. Duas
principais famílias de circuitos integrados emergem neste contexto: A família
TTL (Transistor-Transistor Logic) e a família CMOS (Complemetary Metal-Oxid
Semiconductor). As famílias TTL e CMOS não esgotam o universo de famílias
lógicas, mas, seguramente são as mais utilizadas. Como um exemplo das
demais famílias lógicas existentes citamos a família ECL (Emitter-Coupled
Logic), caracterizada pela capacidade de operar em altas freqüências (2.8 GHz
para a série E-Lite da família ECL).

2 Características e Par âmetros Operacionais Básicos

• Esta seção apresenta resumidamente as principais características e


parâmetros das famílias TTL e CMOS, sob o enfoque da implementação
prática de funções lógicas através de circuitos integrados (CIs) digitais.
2.1 Tensão de Alimentação

• A tensão nominal de alimentação de um CI TTL é V = +5V . CC

• A tensão nominal de alimentação de um CI CMOS é bem mais flexível que a


de um CI TTL. Um CI CMOS opera com tensões de alimentação de até
VCC = +10V , mas é usual uma tensão de alimentação de + 5V para que haja
compatibilidade com circuitos digitais que utilizem CIs TTL.

• Para a categoria de CIs CMOS conhecida como Low-Voltage CMOS, a


tensão nominal de alimentação é VCC = +3.3V .

Figura 1: Pinos de conexão de alimentação em um CI.

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

2.2 Níveis Lógicos para CIs CMOS

Figura 2: Níveis de tensão para operação correta de um CI CMOS. VI


refere-se a tensões de entrada e VO a tensões de saída. A faixa de tensão
unallowed (não permitido) significa que o fabricante do CI não garante o
funcionamento correto do CI para tensões nesta faixa.

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

2.3 Níveis Lógicos para CIs TTL

Figura 3: Níveis de tensão para operação correta de um CI TTL. VI refere-se a


tensões de entrada e VO a tensões de saída. A faixa de tensão unallowed
(não permitido) significa que o fabricante do CI não garante o funcionamento
correto do CI para tensões nesta faixa.

2.4 Imunidade a Ruído

• Em ambientes industriais é usual um alto nível de ruído eletromagnético. A


Figura 4 ilustra o efeito do ruído na operação de uma porta lógica.

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 4: Efeito do ruído na entrada de uma porta lógica sobre a sua operação.
É desejável que um CI tenha uma alta imunidade ao ruído eletromagnético.

2.5 Margem de Ruído

• Uma medida da imunidade a ruído de uma família lógica é a denominada


Margem de Ruído, definida pelos parâmetros VNH e VNL , dados por
VNH = VOH (min ) − VIH (min ) (1)

VNL = VIL (max ) − VOL (max ) (2)

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 5: (a) Margem de ruído VNH . (b) Margem de ruído VNL .

2.6 Consumo de Potência

Figura 6: Os dois valores possíveis de consumo de corrente para uma porta


lógica: (a) I CCH e (b) I CCL .

• A corrente média de consumo é dada por


I CCH + I CCL (3)
I CC =
2

• E, portanto, a potência média consumida da fonte de alimentação é dada por


PD = VCC I CC (4)

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

• CIs TTL têm seu consumo independente da freqüência de operação,


enquanto CIs CMOS têm seu consumo variando aproximadamente de modo
linear com a freqüência de operação:

Figura 7: Curva potência consumida × freqüência de operação para as


famílias TTL e CMOS.

2.7 Tempo de Propagação

• Sempre que um trem de pulsos se propaga através de uma porta lógica ele
experimenta um atraso no tempo (time delay) :

Figura 8: Ilustração do mecanismo denominado propagation delay.

• Existem dois atrasos (delays) de propagação básicos em uma porta lógica:


⇒ t PHL : O intervalo de tempo transcorrido entre um instante especificado no
pulso de entrada da porta e o instante correspondente no pulso de saída,
para a situação em que a saída da porta está efetuando a transição do
estado HIGH para o estado LOW.

⇒ t PLH : O intervalo de tempo transcorrido entre um instante especificado no


pulso de entrada da porta e o instante correspondente no pulso de saída,
para a situação em que a saída da porta está efetuando a transição do
estado LOW para o estado HIGH.

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 9: Definição dos propagation delay times , t PHL e t PLH , em uma porta
lógica. Input significa “entrada” e output significa “saída”. Em geral os
instantes de referência localizam-se a 50% do tempo de duração das bordas
dos pulsos.

2.8 Fan-Out

• Existe um limite máximo de entradas de portas lógicas que podem ser


conectadas simultaneamente à saída de uma porta lógica. Este limite máximo é
denominado de fan-out.

Figura 10: Porta NAND acionando 3 portas OR com entradas invertidas. Cada
uma das 3 portas OR consome uma parcela da corrente de saída da porta
NAND. Portanto, haverá um limite máximo de portas que poderão ser
acionadas, sob pena de danificar a porta acionadora (driving gate) por excesso
de corrente.

• Por exemplo, o fan-outtípico de uma porta TTL padrão é 10, para uma porta
Low-Power Schottky (LS) o fan-out é 20.

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

• Uma porta CMOS possui um fan-out bem maior que uma porta TTL, mas
deve-se manter em mente que o fan-out da família CMOS é dependente da
freqüência de operação devido ao inerente efeito capacitivo nas entradas das
portas CMOS:

Figura 11: Carga capacitiva apresentada à porta acionadora para CIs da


família CMOS. (a) Carga do capacitor. (b) Descarga do capacitor. Quanto maior
a freqüência de operação mais ciclos carga-descarga do capacitor ocorrem por
unidade de tempo, e, portanto, maior o valor RMS da corrente na saída da
porta acionadora.

• CIs TTL não apresentam efeito capacitivo nas entradas de suas portas, de
modo que a carga de uma porta TTL é puramente resistiva:

Figura 12: Carga resistiva apresentada à porta acionadora para CIs da família
TTL. (a) Fornecimento de corrente à carga. (b) Absorção de corrente da carga.

• Embora o fan-out da família TTL seja independente da freqüência, ocorre


problema de redução da margem de ruído quando temos muitas portas
conectadas em paralelo como carga e a porta acionadora encontra-se com sua
saída em estado HIGH:

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 13: A corrente I fornecida pela porta acionadora aumenta à medida


que aumentamos o número de portas utilizadas como carga. A medida que
corrente I aumenta, aumenta a queda ôhmica de tensão interna na porta
acionadora. Isto faz com que VOH eventualmente caia abaixo de VOH (min ) ,
reduzindo a margem de ruído VNH (ver Figura 5).

• Para um CI TTL o fator limitante do fan-out é a absorção de corrente das


portas utilizadas como carga, situação que ocorre quando a porta acionadora
encontra-se com sua saída em estado LOW:

Figura 14: Absorção de corrente das portas utilizadas como carga quando a
porta acionadora encontra-se com sua saída em estado LOW.

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

3 Portas da Família CM OS

• O elemento básico de uma porta CMOS é o transistor MOSFET (Metal-Oxid


Semiconductor Field Effect Transistor):

Figura 15: Símbolo gráfico dos dois tipos de transistores MOSFET: canal N e
canal P. Operação como uma chave (switch) LIGA-DESLIGA (ON-OFF).

Figura 16: Símbolo gráfico simplificado de um MOSFET, tendo sido abstraída


a polaridade do canal. Nesta representação é assumido que a polaridade do
canal é identificada pelo contexto do circuito do qual o MOSFET faz parte.

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 17: Circuito interno típico de uma porta NOT da família CMOS.

Figura 18: Operação de uma porta NOT da família CMOS.

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 19: Operação de uma porta NAND da família CMOS.

Figura 20: Operação de uma porta NOR da família CMOS.

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

3.1 Portas Dreno-Aberto (op en-drain)

• Quando um CI CMOS é designado como open drain isto significa que suas
portas internas vem de fábrica com o terminal de dreno de seu transistor de
saída desconectado. A conexão do transistor de saída à VCC deve ser feita
através de um resistor externo denominado resistor pull-up:

Figura 21: Porta open drain da família CMOS.

3.2 Portas Tristate

• Uma porta tristate possui um terceiro estado em sua saída além dos estados
H e L. Quando este terceiro estado é acionado, ocorre uma total desconexão
entre o pino de saída da porta e o seu circuito interno. Por este motivo, este
terceiro estado é denominado HIGH-Z (alta impedância).

• Todas as famílias lógicas possuem portas lógicas na versão tristate , além


da versão convencional.

• Portas tristate são úteis, por exemplo, quando vários periféricos, cada um
com seu endereço próprio, compartilham o mesmo barramento de dados de
um controlador que utiliza um microprocessador. O microprocessador troca
dados com um periférico X acionando o periférico X através de seu endereço.
Os demais periféricos não devem influenciar na operação, e, como
compartilham o mesmo barramento, suas portas de saída devem permanecer
em HIGH-Z enquanto o microprocessador troca dados com o periférico X.

Figura 22: Símbolo e operação de uma porta NOT tristate.

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 23: Circuito interno típico de uma porta NOT tristate da família CMOS.

3.3 Precauções no uso de CI s CMOS

• Todas os dispositivos CMOS são sujeitos a serem danificados por


eletricidade estática. Em função disto é recomendado que:

⇒ Todos os CIs CMOS devem envolvidos em espuma plástica condutora


para efeito de transporte. Quando removidos da espuma protetora, os
pinos do CI não devem ser tocados.
⇒ Os CIs devem ser depositados com os pinos para baixo sobre um
superfície metálica aterrada, quando removidos da espuma protetora. Não
deposite CIs CMOS sobre qualquer material plástico devido às cargas
elétricas estáticas que inevitavelmente são geradas por este material.
⇒ Todas as ferramentas, equipamentos de teste e bancadas de metal devem
ser aterradas. Quando o ambiente de trabalho é tal que o ar atmosférico é
muito seco, somente deve-se manusear os CIs CMOS com uma pulseira
presa ao pulso ou antebraço, pulseira que deve ser conectada à terra
através de um resistor de aproximadamente 100KΩ . O resistor evita
choque maior caso a pessoa toque em uma fonte de tensão e, ao mesmo
tempo, decarrega as cargas elétricas acumuladas durante o manuseio.
⇒ Os CIs devem ser inseridos em seus soquetes somente quando a tensão
de alimentação estiver desligada.
⇒ Todas os terminais de entrada que não forem utilizados devem ser
conectados à VCC ou terra. Se deixados abertos serão influenciados por
cargas elétricas estáticas na vizinhança, o que provocará o funcionamento
errático do circuito:

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 24: Conexão de entradas não


utilizadas em um CI da família CMOS.

4 Portas da Família TT L


Figura 25: Símbolo gráfico
O elemento básico de um transistor bipolar
de uma porta TTL é o NPN.
transistor bipolar NPN:

Figura 26: Operação de


um transitor bipolar NPN
como uma chave (switch)
LIGA-DESLIGA
(ON-OFF).

Figura 27: Circuito interno


típico de uma porta NOT da
família TTL. A maneira como
os transistores Q4 e Q3
interligam-se entre si
(encontram-se “empilhados”
como em um totem indígena)
dá a este circuito de saída o
nome de totem pole (mastro
de totem).

15
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 28: Operação de uma porta NOT da família TTL.

Figura 29: Operação de uma porta NAND da família TTL.

Figura 30: Diodos internos de um transistor bipolar NPN com múltiplos


terminais “emissor”.

⇒ Observe com o auxílio da Figura 30, que o circuito da Figura 29


implementa a tabela-verdade:

A B Y = AB
L L H
L H H
H L H
H H L

16
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

4.1 Portas Coletor-Aberto (o pen-collector)

• Quando um CI TTL é designado como open collector isto significa que suas
portas internas vem de fábrica com o terminal de coletor de seu transistor de
saída desconectado. A situação é idêntica à de uma porta open drain da
família CMOS. A conexão do transistor de saída à VCC é feita através de um
resistor pull-up:

Figura 31: Porta NOT open collector da família TTL.

Figura 32: Um losango com um traço inferior desenhado no interior do símbolo


de uma porta TTL indica que a porta é open collector .

17
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

4.2 Portas Tristate

• Conforme já vimos uma porta tristate possui um terceiro estado em sua


saída denominado HIGH-Z (alta impedância). Quando este terceiro estado é
acionado, ocorre uma total desconexão entre o pino de saída da porta e o seu
circuito interno:

Figura 33: Circuito interno típico de uma porta NOT tristate da família TTL.
Quando Enable = L , Q2→OFF e o circuito de saída opera como um totem
pole usual formado pelos transistores Q4 e Q5. Quando Enable = H ,Q2→ ON.
Nesta situação, o segundo emissor de Q1 está com um nível de tensão L ,
fazendo com que Q3→OFF e Q5→OFF. Ainda, nesta mesma situação, o diodo
D1 está diretamente polarizado, fazendo com que Q4→OFF. Estando ambos
Q4 e Q5 em estado OFF, a porta está em estado HIGH-Z.

Figura 34: Circuito equivalente quando a porta está em estado HIGH-Z.

18
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

4.3 Corrente de Entrada

Figura 35: (a) Quando a saída da porta acionadora está em estado H ela
fornece uma corrente I IH à entrada da porta conectada como carga. (b)
Quando a saída da porta acionadora está em estado L ela absorve uma
corrente I IL da entrada da porta conectada como carga. Nota: I IL é no
máximo 1.6 mA para uma porta TTL padrão, valor que é usualmente indicado
em manuais como um valor negativo porque é uma corrente que sai do
terminal de entrada da porta conectada como carga.

4.4 Operação Wired-AND

• A operação Wired-AND constitui uma forma de baixo custo de


implementarmos o AND lógico entre um grande número de variáveis, sem
necessariamente termos que utilizar um grande número de portas AND.

19
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

• A operação AND fica implícita pela ligação em paralelo da saída de portas


open collector :

Figura 36: Operação Wired-AND X = A B C D implementada com 4 portas


NOT open collector.

Figura 37: Funcionamento dos circuitos internos da operação Wired-AND


mostrada na Figura 36. (a) Quando um ou mais de um transistor de saída está
ON, a saída é L. (a) Quando todos os transistores de saída estão OFF, a saída
é H.

20
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 38: Operação Wired-AND X = ABCDEFGH implementada com 4


portas AND open collector.

Figura 39: A tentativa de implementar a operação Wired-AND com portas


padrão ao invés de portas open collector resulta em uma altíssima corrente I
de curto circuito entre portas cujas saídas estejam em estados distintos, fato
que inevitavelmente destruirá as portas.

4.5 Acionamento de Cargas Externas

• A máxima corrente de saída de uma porta TTL ocorre quando a saída está
em estado LOW (portanto está absorvendo corrente) e é I OL (max) = 16mA
para uma porta TTL padrão e I OL (max) = 8mA para uma porta LS.

• É necessário, portanto, o uso de drivers open collector ou outros dispositivos


que aumentem a capacidade de corrente quando deseja-se acionar cargas que
demandem correntes maiores:

21
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 40: (a) Acionamento de um LED e (b) de uma lâmpada piloto.

4.6 Conexão de Entradas nã o Utilizadas

Figura 41: (a) Conexão de entradas não utilizadas com a entrada em uso. Este
método implica em aumentar a corrente de carga da porta acionadora. (b)
Conexão a VCC através de um resistor de 1KΩ para entradas de portas AND
e NAND e conexão à terra para entradas de portas OR e NOR. (c) Conexão
através de uma porta não utilizada.

22
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

5 Interface entre TTL e CMOS

Figura 42: Porta acionadora TTL e carga CMOS. O resistor de 3.3KΩ


minimiza a incompatibilidade gerada por VOH (min) = 2.4 V na saída de uma porta
TTL e o VIH (min) = 3.5 V necessário na entrada de uma porta CMOS. Ver Figura
43. Para reduzir ao máximo o tempo de comutação da porta CMOS (função do
processo de carga-descarga do capacitor em sua entrada) o resistor pode ser
reduzido até 330Ω .

Figura 43: Tensões de saída TTL comparadas com as tensões de entrada


CMOS.

23
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 44: Devido a baixa capacidade de corrente de CIs CMOS, a maneira


mais segura de acionar uma ou mais portas TTL através de uma porta CMOS é
utilizar um buffer CMOS, como o 74C902 , o CD4049A (porta NOT bufferizada),
o CD4050A, etc. Um buffer é um CI que é projetado com uma capacidade de
corrente de saída maior que os CIs padrão.

6 Comparação de Perf ormance entre Famílias Lógicas

Figura 45: Comparação entre sub-famílias das famílias TTL e CMOS. A família
BiCMOS é uma família híbrida que utiliza lógica CMOS com transistores de
saída na configuração totem pole da familia TTL. A legenda para as sub-
famílias é: F-fast, LS-Low Power Schottky, ALS-Advanced Low Power Schottky,
ABT-Advanced BiCMOS, HC-High Speed CMOS, AC-Advanced CMOS,
AHC-Advanced High Speed CMOS, LV-Low Voltage, LVC- Low Voltage
CMOS, ALVC- Advanced Low Voltage CMOS.

24
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 46: Comparação entre famílias TTL e ECL.

7 Data Sheets

Figura 47: Data Sheet parcial para o TTL 75LS00.

25
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. IV
por F.C.C. De Castro

Figura 48: Data Sheet parcial para o CMOS 74HC00A.

26
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

Capítulo V
Sistemas Numéricos
1 Introdução
Em capítulos anteriores estudamos diversas funções lógicas. No próximo
capítulo veremos que operações aritméticas como soma e subtração de
números binários podem ser implementadas através da combinação de
funções lógicas. Estas funções lógicas aritméticas, quando reunidas em um
único CI, constituem uma Unidade Lógica e Arimética (ULA) ou, em inglês, ALU
(Arithmetic and Logic Unit). Uma ULA é um componente lógico fundamental de
um microprocessador, e todas as operações aritméticas por ela realizadas são
efetuadas com números binários.
Neste contexto, o presente capítulo estuda a aritmética com números binários e
a conversão entre números em base binária e números em outras bases, como
as bases octal, decimal e hexadecimal.

2 Números Decimais

• Números em base decimal constituem os números com os quais


naturalmente estamos habituados a trabalhar. O termo “naturalmente” surge do
fato de possuirmos dez dedos nas mãos, o que levou os povos antigos que
deram origem a nossa civilização a adotarem um sistema de contagem em
base dez.

• Um número em uma base numérica qualquer pode ser decomposto em uma


soma de potências da base, ponderadas por um dos dígitos do conjunto
de dígitos que definem a base.

•Por exemplo, consideremos o número decimal 271.8281 . Na base decimal o


conjunto de dígitos é {0,1,2,3,4,5,6,7,8,9}, e estes dígitos constituem os
Fatores de Ponderação de cada Potência da Base. Daí, este número pode
ser decomposto na forma:
Potência da 10 2 101 100 10 −1 10 −2 10 −3 10 −4
Base
Fator de
2 7 1 . 8 2 8 1
Ponderação

ou, em termos analíticos:


(1)
271.8281 = 2 × 10 2 + 7 × 101 + 1 × 100 + 8 × 10 −1 + 2 × 10 −2 + 8 × 10 −3 + 1 × 10 −4

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

• Com um número decimal formado por N casas ou dígitos decimais


podemos efetuar a contagem numérica de até 10 objetos. Por exemplo, para
N

N = 2 podemos enumerar objetos de 0 a 99 , totalizando 10 N = 10 2 = 100


objetos.

3 Números Binários

• Na base binária o conjunto de dígitos é {0,1}, e estes dígitos constituem os


Fatores de Ponderação no somatório de Potências da Base ( 2 ) que
n

representa analiticamente o número.

• Cada dígito binário do conjunto {0,1} é denominado bit (binary unit).


•Por exemplo, o número binário 101.1101 pode ser decomposto na forma:
Potência da 4 2 1 1 1 1 1
Base 2 4 8 16

Fator (bit) de
1 0 1 . 1 1 0 1
Ponderação

ou, em termos analíticos:


(2)
101.1101 = 1 × 2 2 + 1× 20 + 1 × 2 −1 + 1 × 2 −2 + 1× 2 −4

•Para converter um número binário em decimal basta efetuar o somatório de


potências 2 n cujo bit de ponderação seja “1”:
101.1101 2 = 4 + 1 + 1 2 + 1 4 + 1 16 = 5.8125 10 (3)

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

• Associado a qualquer número binário existem os conceitos de Bit Mais


Significativo (MSB – Most Significant Bit) e de Bit Menos Significativo
(LSB – Least Significant Bit). Por exemplo, para o número 101.1101 , os
MSB e LSB das partes inteiras e fracionais são aqueles associados às maiores
potências 2 n de cada parte:
Parte Inteira Parte Fracional
Potência da 4 2 1 1 1 1 1
Base 2 4 8 16

Número Binário 1 0 1 . 1 1 0 1
↑ ↑ ↑ ↑
MSB LSB MSB LSB

• Com um número binário formado por N bits podemos efetuar a contagem


numérica de até 2 objetos. Por exemplo, para N = 4 podemos enumerar
N

4
objetos de 0 a 15 , totalizando 2 = 2 = 16 objetos:
N

Número Binário de 4 bits Número


b3 (MSB) b2 b1 b0 (LSB) Decimal
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5
0 1 1 0 6
0 1 1 1 7
1 0 0 0 8
1 0 0 1 9
1 0 1 0 10
1 0 1 1 11
1 1 0 0 12
1 1 0 1 13
1 1 1 0 14
1 1 1 1 15
Tabela 1: Contagem binária de 0 a 15. Os bits em vermelho mostram os
instantes da contagem em que é necessário lançar mão do recurso do bit
“vai-um” (carry) em conseqüência de ter sido esgotado a capacidade de
contagem dos bits menos significativos utilizados até o instante em
consideração.

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

3.1 Conversão Decimal para Binário

• Para converter para binário as partes não-fracional e fracional de um número


decimal utiliza-se, respectivamente, os métodos conhecidos como Divisão
Repetida e a Multiplicação Repetida.

• Por exemplo, para converter o número decimal 45.3125 em binário,


primeiramente decompomos o número na soma das partes não-fracional e
fracional: 45.3125 = 45 + 0.3125 .

• Daí, aplicamos a Divisão Repetida à parte não-fracional:

Figura 1: Conversão do
número 4510 para seu
equivalente em binário
através do método
Divisão por 2 Repetida.

• A seguir, aplicamos a Multiplicação Repetida à parte fracional:

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

Figura 2: Conversão do número 0.312510 para seu equivalente em binário


através do método Multiplicação por 2 Repetida.

• Portanto, 45.312510 = 101101.01012 .


4 Aritmética Binária E ntre Números sem Sinal

4.1 Adição

• Para efetuar a adição A + B entre duas palavras binárias A e B


executa-se entre cada bit de A e respectivo bit de B uma das 4 possíveis
operações básicas abaixo definidas, de acordo com o valor do bit de A e
respectivo bit de B :
0+0 =0
0 +1 = 1
1+ 0 = 1
1 + 1 = 10 → O “ 1 ” no resultado é o “vai-um” (carry) gerado
por ter sido esgotado a capacidade de contagem.
O carry deve ser acrescentado à soma dos bits
imediatamente mais significativos à esquerda
daqueles que deram origem ao carry .

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

Exemplo 1: Calcule as somas binárias (a) 11+ 11 (b) 100 + 10 (c) 111+ 11
(d) 110 + 100 fazendo simultaneamente a soma dos números decimais
equivalentes.
Solução:

4.2 Subtração

• A maneira mais eficiente para efetuar a subtração A − B entre duas


palavras binárias A e B é executar a operação A + C {B} onde C {} ⋅ éo
II II

operador denominado Complemento de 2. A operação C {} ⋅ é equivalente


II

a acrescentar o sinal “ – ” ao número binário.

•A operação C II {B} efetuada sobre uma palavra binária B é dada por


C II {B}= C I {B}+ 1 , onde C I {B} é a operação de inversão (NOT) do valor
lógico de cada bit da palavra binária B (operação conhecida como
Complemento de 1).

•Por exemplo, a diferença A − B entre os números A = 0110 2 = 610 e


B = 0100 2 = 410 é dada por:
A − B = A + C II {B} = A + C I {B}+ 1 = 0110 + C I {0100}+ 1 = 0110 + 1011 + 1 (4)

Que resulta em:


1 0 1 1
+ 0 0 0 1
1 1 0 0
prosseguindo:
0 1 1 0
+ 1 1 0 0
descartar o carry → (1) 0 0 1 0 = 210

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

•Alternativamente, podemos implementar a operação C II {B} através do


seguinte procedimento: Efetuamos a leitura da palavra binária B da direita
para a esquerda até encontrarmos o primeiro “1” e a seguir invertemos o
valor lógico de todos os bits à esquerda do primeiro “1”.

•Por exemplo, vamos supor que queremos achar o Complemento de 2 do


número binário A = 10110 2 = 2210 . Utilizando a técnica descrita no parágrafo
anterior temos C II {10110} = 01010 . Se o resultado estiver correto, então
A + C II {A} = 00000 , porque a operação C II {A} é equivalente a efetuarmos o
acréscimo do sinal negativo, isto é, − C {A}. Senão, vejamos:
II

1 0 1 1 0
+ 0 1 0 1 0
descartar o carry → (1) 0 0 0 0 0

5 Aritmética Binária E ntre Números com Sinal em Complemento de 2

5.1 Adição A+B

⇒ Soma-se ambos os números e descarta-se o carry. Por exemplo, sejam as


seguintes somas de números de 8 bits:
! A e B são positivos:

! |A| > |B| com B < 0:

! |A| < |B| com B < 0:

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

! A e B são negativos:

! Overflow (ocorre quando o número de bits necessário para representar a


soma excede o número de bits dos números sendo somados):

Nota: No exemplo acima, o número resultante 183 requer 8 bits de magnitude


para ser representado. No entanto, na aritmética em Complemento de 2 o MSB
(o 8° bit no caso) é o bit representativo do sinal, sendo a magnitude
representada pelos bits menos significativos restantes à direita. Portanto, neste
exemplo, ocorre a adição de um carry ao MSB responsável pelo sinal,
invalidando o resultado (overflow) na aritmética em Complemento de 2. Note
que somente pode ocorrer overflow quando A e B são positivos ou A e B são
negativos.

5.2 Subtração A - B

⇒ Executa-se A + C II {B} e descarta-se o carry.


Exemplo 2: Calcule as seguintes somas de números de 8 bits:

Solução:

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

6 Números Hexadecim ais

• Um número em base binária apresenta o inconveniente de necessitar um


grande número de dígitos para sua representação. Por exemplo, o número 9
em base decimal é representado por um único dígito 910 , mas se representado
em base binária são necessários 4 dígitos (bits): 10012 = 910 .

⇒ Note que quanto maior for a base menor será o número de dígitos da
base necessários para a representação do número.

• Uma forma conveniente para a representação de números binários é a base


16 (base hexadecimal), porque 16 é uma potência inteira de 2 o que, conforme
veremos, facilita bastante a conversão entre as duas bases.

• Com um número hexadecimal formado por N dígitos podemos efetuar a


contagem numérica de até 16 objetos. Por exemplo, para N = 1 podemos
N

1
enumerar objetos de 0 a 15 , totalizando 16 = 16 = 16 objetos:
N

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

Tabela 2: Contagem hexadecimal de 0 a 15 e equivalentes decimal e binário.


Note que na base hexadecimal o conjunto de dígitos possíveis é
{0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F}.
• Como em qualquer base numérica, o “vai-um” (carry) na base hexadecimal
ocorre em conseqüência de ter sido esgotado a capacidade de contagem dos
dígitos menos significativos. Por exemplo, a continuação da contagem
hexadecimal da Tabela 2 seria:

6.1 Conversão Binário para Hexadecimal

⇒ Começando da direita para esquerda, subdivide-se o número binário em


grupos de 4 bits (nibbles), e substitui-se pelo equivalente hexadecimal da
Tabela 2. Se não for possível formar um grupo completo de 4 bits à esquerda
do número binário, acrescenta-se 1,2 ou 3 zeros para tanto.

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

Exemplo 3:

6.2 Conversão Hexadecimal para Binário

⇒ Executa-se o processo inverso do apresentado na Seção 6.1, isto é,


substitui-se cada dígito hexadecimal pelo nibble equivalente de acordo com a
Tabela 2.
Exemplo 4:

6.3 Conversão Hexadecimal para Decimal


Exemplo 5:

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

Exemplo 6:

6.4 Conversão Decimal para Hexadecimal

Exemplo 7:

7 Números Octais

• Uma outra forma conveniente para a representação de números binários é a


base 8 (base octal), porque 8 é uma potência inteira de 2 o que, conforme
vimos para a base hexadecimal, facilita a conversão entre as duas bases.

•Na base octal o conjunto de dígitos possíveis é {0,1,2,3,4,5,6,7}.


• A enumeração de objetos na base octal é como segue:
...

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

7.1 Conversão Octal para D ecimal

Exemplo 8:

Converter para decimal o número 2374 8 .


Solução:

7.2 Conversão Decimal para Octal

Exemplo 9:

Converter para octal o número 35910 .


Solução:

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. V
por F.C.C. De Castro

7.3 Conversão Octal para B inário

⇒ Substitui-se cada dígito hexadecimal pela palavra binária de 3 bits


equivalente, de acordo com a Tabela 3 a seguir:

Tabela 3: Equivalência entre dígito octal – palavra binária correspondente.


Exemplo 10:

7.4 Conversão Binário para Octal

⇒ Começando da direita para esquerda, subdivide-se o número binário em


grupos de 3 bits, e substitui-se pelo equivalente dígito octal da Tabela 3. Se
não for possível formar um grupo completo de 3 bits à esquerda do número
binário, acrescenta-se 1 ou 2 zeros para tanto.
Exemplo 11:

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Capítulo VI
Circuitos Aritméticos
1 Introdução
No capítulo anterior estudamos a soma e subtração de números binários.
Neste capítulo estudaremos como as operações aritméticas de soma e
subtração entre números binários podem ser implementadas através da
combinação de funções lógicas. Quando reunidas em um único CI , estas
funções lógicas aritméticas constituem uma Unidade Lógica e Arimética (ULA).
Uma ULA é um bloco funcional fundamental em um microprocessador.

2 Meio Somador

• Conforme vimos no Capítulo V as regras básicas para adição binária são:


0+0 =0
0 +1 = 1
1+ 0 = 1
1 + 1 = 10 → O “ 1 ” no resultado é o “vai-um” (carry) gerado
por ter sido esgotado a capacidade de contagem.
O carry deve ser acrescentado à soma dos bits
imediatamente mais significativos à esquerda
daqueles que deram origem ao carry .

• Estas operações são realizadas por um circuito lógico denominado


Meio-Somador (half – adder).

• Um meio-somador recebe dois bits de entrada A e B e produz dois bits de


saída: o bit de soma Σ = A + B e o bit de carry C out , conforme mostram as
Figuras 1 e 2 e a Tabela 1 a seguir:

Figura 1: Símbolo lógico de um meio-somador.

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Tabela 1: Tabela Verdade de um meio-somador.

Figura 2: Diagrama lógico de um meio-somador.

3 Somador Inteiro

• Um Somador Inteiro (full-adder) recebe 3 bits de entrada A , B , e Cin (o


último correspondendo a eventual carry gerado na operação com bits menos
significativos) e produz dois bits de saída: o bit de soma Σ = A + B e o bit de
carry C out , conforme mostram as Figuras 3 a 5 e a Tabela 2 a seguir:

Figura 3: Símbolo lógico de um somador inteiro.

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Tabela 2: Tabela Verdade de um somador inteiro. Note que a tabela obedece


as regras para soma binária com carry, estudada no capítulo anterior.

Figura 4: (a) Lógica necessária para formar a soma dos bits de entrada AeB
Cin . (b) Diagrama lógico do somador inteiro, composto
com o carry de entrada
pelos meio-somadores I e II , o qual implementa a Tabela 2 (verifique).

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 5: (a) Diagrama lógico alternativo representando um somador inteiro


implementado a partir de 2 meio-somadores. (b) Símbolo lógico do somador
inteiro resultante.

Exemplo 1: Determine as saídas Σ e C out para as situações de entrada do


somador inteiro mostrado na Figura 6.

Figura 6: Somador inteiro com situações de entrada distintas.


Solução:

(a) Σ = 1 + 0 + 0 = 1 com carry Cout = 0

(b) Σ = 1 + 1 + 0 = 0 com carry Cout = 1

(c) Σ = 1 + 0 + 1 = 0 com carry Cout = 1

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

4 Somadores de Palavr as Binárias

• Para somar palavras binárias de N bits é necessário colocar em paralelo


N somadores inteiros, conforme mostram as Figuras 7,8 e 9:

Figura 7: Somador para palavras binárias de 2 bits.

Figura 8: Soma dos números 101 e 011 através de um somador de 3 bits.

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 9: Somador para palavras binárias de 4 bits. (a) Diagrama de blocos


(b) Símbolo lógico.

• A tabela verdade para o n -ésimo somador inteiro de um somador de


palavras binárias de N bits é:

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Tabela 3: Tabela Verdade para o n -ésimo somador inteiro de um somador de


palavras binárias de N . Note que a tabela é idêntica à Tabela 2.

5 Somadores Ripple Ca rry × Somadores Look-ahead Carry

• O somador mostrado na Figura 9(a) é um somador do tipo Ripple Carry, o


qual maneja os bits de carry da mesma maneira que efetuamos em uma soma
manual:

• Ou seja, C 4 não será determinado antes que cada coluna tenha sido
formada. Note que cada coluna representa a ação do respectivo somador
inteiro na Figura 9(a).

⇒ Isto significa que o Tempo de Propagação (já estudado no Capítulo IV)


das portas será acumulado, atrasando a determinação de C 4 . É dito que o bit
de carry fica “ondulando” entre os somadores inteiros (daí o nome ripple –
ondulação) e, portanto, atrasa a definição do resultado da soma.

• Para evitar este efeito de atraso, um somador Look-Ahead Carry efetua a


operação de adição obtendo o bit de carry diretamente a partir dos bits de
entrada, sem precisar a definição dos bits de saída de cada somador inteiro:

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 10: Somador Look-Ahead Carry para palavras binárias de 4 bits. As


portas no interior do retângulo cinza são as responsáveis pela obtenção do bits
de carry diretamente a partir dos bits de entrada.

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 11: Operação do somador Look-Ahead Carry para palavras binárias de


4 bits. É mostrado os valores lógicos gerados no circuito quando são somados
os números 10012 = 910 e 1010 2 = 1010 , com um carry prévio C 0 = 1 .

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

6 Implementação em MS I (Medium Scale Integration)

• A Figura 12 a seguir mostra os diagramas de dois CIs MSI para a


implementação da função somador Look-Ahead Carry para palavras de 4 bits:

Figura 12: TTL 7483 e TTL 74283, somadores Look-Ahead Carry para
palavras binárias de 4 bits. (a) Pinagem (b) Diagrama lógico. Ambos os CIs são
funcionalmente idênticos, diferindo apenas na pinagem.

• A Tabela 4 mostra os Tempos de Propagação destes somadores:

Tabela 4: Tempos de Propagação dos CIs TTL 74283 e 7483 - somadores


Look-Ahead Carry para palavras de 4 bits.

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

7 Operação em Cascat a de Somadores

Figura 13: (a) Operação em cascata de somadores de 4 bits para formar um


somador de 8 bits. (b) Operação em cascata de somadores de 4 bits para
formar um somador de 16 bits.

8 Somador/Subtrator

• Estudamos no Capítulo V que a subtração A − B entre duas palavras


binárias A e B é executada atarvés da operação A + C {B} onde C {} ⋅ éo
II II

operador denominado Complemento de 2. A operação C {} ⋅ é equivalente


II

a acrescentar o sinal “ – ” ao número binário.

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

• Vimos que a operação C II {B} efetuada sobre uma palavra binária B é


dada por C {B} = C {B}+ 1 , onde C {B} é a operação de inversão (NOT)
II I I

do valor lógico de cada bit da palavra binária B (operação conhecida como


Complemento de 1).

•Por exemplo, a diferença A − B entre os números A = 0110 2 = 610 e


B = 0100 2 = 410 é dada por:
A − B = A + C II {B} = A + C I {B}+ 1 = 0110 + C I {0100}+ 1 = 0110 + 1011 + 1 (4)

Que resulta em:


1 0 1 1
+ 0 0 0 1
1 1 0 0
prosseguindo:
0 1 1 0
+ 1 1 0 0
descartar o carry → (1) 0 0 1 0 = 210

•Vimos também que, alternativamente, podemos implementar a operação


C {B} através do seguinte procedimento: Efetuamos a leitura da palavra
II

binária B da direita para a esquerda até encontrarmos o primeiro “1” e a


seguir invertemos o valor lógico de todos os bits à esquerda do primeiro
“1”.

•Por exemplo, supondo que queremos achar o Complemento de 2 do número


binárioA = 10110 2 = 2210 através da técnica descrita no parágrafo anterior
obtemos diretamente C {10110} = 01010 .
II

• Portanto, a operação A − B pode ser efetuada em um somador através


operação A + C II {B}, conforme mostra a Figura 14:

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 14: Se Controle = 0 , é executada a operação A + B conforme


discutido em parágrafos anteriores, sendo A e B números de 4 bits. Se
Controle = 1 então é executada a operação A − B através de
A + C II {B} = A + C II {B} = A + C I {B}+ 1 . Note que quando Controle = 1 as
portas XOR 1-4 efetuam a operação C {B}. Note também que nesta situação
I

o Complemento de 2 de B é efetuado através de C {B} = C {B}+ C0 , onde


II I

C0 = Controle = 1 .

• O circuito completo de um Somador/Subtrator para palavras de 4 bits é


obtido quando definimos o modo em que o circuito irá administrar as situações
de 1) overflow e 2) resultado negativo.

• Para tanto, vamos experimentalmente fazer operações entre números de 4


bits que gerem as situações 1) e 2), procurando inferir a lógica da operação:

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 15: (a) Operação A − B = 910 − 510 = 410 . Note que quando o carry
C 4 = 1 significa que os 4 bits do resultado representam um número positivo.
(b) Operação A − B = 510 − 910 = −410 . Note que quando o carry C 4 = 0
significa que os 4 bits do resultado representam um número negativo, e que,
para obtermos a magnitude deste número de 4 bits basta efetuar o
Complemento de 2 do resultado (em verde na figura).

Figura 16: (a) Operação A − B = 1510 − 210 = 1310 . Note que quando o carry
C 4 = 1 significa que os 4 bits do resultado representam um número positivo.
(b) Operação A − B = 210 − 1510 = −1310 . Note que quando o carry C 4 = 0
significa que os 4 bits do resultado representam um número negativo, e que,
apesar de ter ocorrido overflow na aritmética de 4 bits em Complemento de 2,
para obtermos a magnitude deste número de 4 bits basta efetuar o
Complemento de 2 do resultado (em verde na figura).

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

• Portanto, as Figuras 15 e 16 sugerem o seguinte circuito sinalizador para


resultado negativo:

Figura 17: Se Controle = 1 (operação A − B ) e se simultaneamente


C 4 = 0 (resultado negativo) o LED acende, indicando um número negativo.

• Vimos na análise da Figura 16 que quando o carry C 4 = 0 os 4 bits do


resultado representam um número negativo e que para obtermos a magnitude
deste número de 4 bits basta efetuar o Complemento de 2 do resultado,
independentemente de ter ocorrido overflow ou não. Portanto a Figura 16
sugere o seguinte circuito para obtenção da magnitude do resultado de 4 bits (o
sinal é indicado pelo LED da Figura 17):

15
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 18: Circuito para obtenção da magnitude do resultado de 4 bits do 1° CI


7483 através da operação Complemento de 2 efetuada pelas portas XOR 5-8
em conjunto com o 2° CI 7483.

• Tendo definido o modo em que o circuito Somador/Subtrator administra as


situações de overflow e resultado negativo, o circuito completo fica sendo:

16
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 19: Circuito completo do Somador/Subtrator de palavras de 4 bits em


aritmética Complemento de 2.

Exemplo 2: Determine o valor lógico em cada entrada/saída das portas e dos


CIs 7483 na Figura 19, bem como o estado do LED, quando a operação
efetuada é A + B = 510 + 910 = 1410 .
Solução:

17
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 20: Valor lógico em cada entrada/saída das portas e dos CIs 7483 na
Figura 19 quando a operação efetuada é A + B = 510 + 910 = 1410 .
Exemplo 3: Determine o valor lógico em cada entrada/saída das portas e dos
CIs 7483 na Figura 19, bem como o estado do LED, quando a operação
efetuada é A − B = 910 − 510 = 410 .
Solução:

18
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 21: Valor lógico em cada entrada/saída das portas e dos CIs 7483 na
Figura 19 quando a operação efetuada é A − B = 910 − 510 = 410 .

Exemplo 4: Determine o valor lógico em cada entrada/saída das portas e dos


CIs 7483 na Figura 19, bem como o estado do LED, quando a operação
efetuada é A − B = 510 − 910 = −410 .
Solução:

19
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 22: Valor lógico em cada entrada/saída das portas e dos CIs 7483 na
Figura 19 quando a operação efetuada é A − B = 510 − 910 = −410 .

9 Somador BCD

• Estudamos no Capítulo III que o código BCD (Binary Coded Decimal)


expressa cada dígito de um número decimal por uma palavra binária de 4 bits
(Nibble) no formato b3 b2 b1 b0 através da relação:
NúmeroDecimal = b3 ⋅ 2 3 + b2 ⋅ 2 2 + b1 ⋅ 21 + b0 ⋅ 2 0 . A Tabela 5 mostra o
resultado desta relação.

20
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Tabela 5: Tabela para conversão de um nibble BCD em um algarismo decimal.


Note que existem 6 nibbles inválidos na contagem da tabela, porque com 4 bits
é possível contar de 0 a 15 mas o código BCD só representa algarismos
decimais de 0 a 9.

• Por exemplo, o número binário 010101111000 codificado em BCD, quando


convertido para decimal resulta em
0101 0111 1000
↓ ↓ ↓
5 7 8

• Quando efetuamos a soma de dois números binários A e B codificados


em BCD é necessário levar em consideração a existência dos 6 nibbles
inválidos mostrados na Tabela 5.

• Consideremos os seguintes exemplos:

21
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

• A + B = 310 + 510 = 810 efetuado em um somador BCD resulta

♦ Note que não ocorre overflow na aritmética BCD (8 está dentro da faixa
0-9) e portanto o nibble resultante é um número BCD válido.

• A + B = 810 + 510 = 1310 efetuados em um somador BCD resulta

♦ Ocorre overflow na aritmética BCD (13 está fora da faixa 0-9) e portanto o
nibble resultante é um número BCD inválido.

⇒ Daí, é necessário somar 6 ao resultado para compensar a contagem dos


6 nibbles inválidos da Tabela 5:

⇒ Note que, após a soma de 6 ao nibble inválido, o novo resultado expressa


corretamente 0001 0011 = 1310 em BCD.

• A + B = 810 + 910 = 1710 efetuados em um somador BCD resulta

22
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

♦ Ocorre overflow na aritmética BCD (17 está fora da faixa 0-9) e portanto o
nibble resultante é um número BCD inválido. Observe que ocorreu um carry
C4 = 1 nesta operação.

⇒ Somando 6 ao resultado:

⇒ Note que, após a soma de 6 ao nibble inválido, o novo resultado expressa


corretamente 0001 0111 = 1710 em BCD.

♦ Os exemplos anteriores mostram que é necessário somar 6 ao resultado


da operação A + B quando:
! Ocorre um carry C4 = 1 no resultado da operação A + B
OU
! O resultado da operação A + B é um dos 6 nibbles inválidos da Tabela 5.

⇒ Mas, a análise da Tabela 5 mostra que os 6 nibbles inválidos ou são da


forma

23 22 21 20
1 1 X X
ou são da forma

23 22 21 20
1 X 1 X
não havendo nenhuma outra possibilidade para sua representação. Lembre
que X representa valor lógico irrelevante (don’t care).

♦ Portanto é necessário somar 6 ao resultado da operação A + B em BCD


somente quando:

! Ocorre um carry C4 = 1 no resultado da operação A + B


OU
! O resultado da operação A + B é da forma

23
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

23 22 21 20
1 1 X X
OU
! O resultado da operação A + B é da forma
23 22 21 20
1 X 1 X

• A discussão nos parágrafos anteriores sugere o seguinte circuito para


efetuar a soma BCD:

Figura 23: Circuito Somador BCD para palavras de 4 bits.

Exemplo 5: Determine o valor lógico em cada entrada/saída das portas e dos


CIs 7483 na Figura 23 quando a operação efetuada é
A + B = 910 + 310 = 1210 .
Solução:

24
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 24: Valor lógico em cada entrada/saída das portas e dos CIs 7483 na
Figura 23 quando a operação efetuada é A + B = 910 + 310 = 1210 .
Exemplo 6: Determine o valor lógico em cada entrada/saída das portas e dos
CIs 7483 na Figura 23 quando a operação efetuada é
A + B = 910 + 710 = 1610 .
Solução:

25
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 25: Valor lógico em cada entrada/saída das portas e dos CIs 7483 na
Figura 23 quando a operação efetuada é A + B = 910 + 710 = 1610 .

10 Unidade Lógica e Ar itmética (ULA)

• O CI TTL 74181 é uma implementação MSI de uma ULA, conforme mostram


as Figuras 26 e 27:

26
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 26: Diagrama de pinagem do TTL 74181. S0 − S3 selecionam a


operação a ser feita entre os dois números binários A e B de 4 bits, conforme
a Figura 27. O resultado é colocado em F0 − F3 . C n é o carry de entrada e
C n+ 4 é o carry de saída. M = 1 seleciona o modo lógico e M = 0 seleciona o
modo aritmético.

27
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VI
por F.C.C. De Castro

Figura 27: Tabela de funções do TTL 74181. Um resultado negativo das


operações aritméticas é representado em Complemento de 2.

11 Multiplicação e Divis ão

• Embora existam implementações em circuitos integrados de circuitos


multiplicadores e divisores, estes raramente são utilizados. Isto porque, na
grande maioria das vezes, as operações de multiplicação e divisão são
implementadas através de uma rotina em linguagem Assembly executada em
um microprocesador.

28
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Capítulo VII
Elementos de Memória
1 Introdução
Neste capítulo estudaremos dispositivos lógicos com dois estados estáveis, o
estado SET e o estado RESET. Por isto, tais dispositivos são denominados
dispositivos biestáveis.
Uma vez que estes dispositivos são capazes de reter indefinidamente o seu
estado (SET ou RESET), eles são usados como elementos de armazenamento
de informação. Informalmente, dispositivos biestáveis “memorizam” o seu
estado.
Estudaremos dois tipos de dispositivos biestáveis: o latch e o flip-flop. A
diferença entre um latch e um flip-flop é a maneira como ocorre a troca de
estado:

• Um flip-flop muda seu estado por ação de um pulso de disparo,


denominado de clock. Por este motivo, um flip-flop é caracterizado como um
dispositivo biestável síncrono, porque somente muda de estado em
sincronismo com a ocorrência do pulso de clock.

• Um latch , por sua vez, é caracterizado como um dispositivo biestável


assíncrono, porque muda de estado sem necessidade de sincronismo com um
trem de pulsos de controle (pulsos de clock).
2 O latch S-R

•A Figura 1 mostra o diagrama lógico de um latch S-R (SET-RESET)


implementado com portas NAND:

Figura 1: Diagrama lógico de um latch S-R implementado com portas NAND.


O latch possui duas entradas , ( SET e RESET ) e duas saídas ( Q e Q ). O
valor lógico das saídas Q e Q definem o estado (SET ou RESET) do latch.

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

• Ao fazermos SET = 0 e RESET = 1 , as saídas resultam nos valores


lógicos Q = 1 e Q = 0 . Nesta situação o latch é dito estar no estado SET,
conforme mostrado na Figura 2:

Figura 2: Colocando um latch S-R (NAND) no estado SET.

• Note que se SET = 1 e RESET = 1 , o latch mantém o estado atual. Por


exemplo, para o latch no estado SET mostrado na Figura 2, o estado não é
alterado quando fazemos SET = 1 e RESET = 1 :

Figura 3: Mantendo o estado de um latch S-R (NAND).

• Quando Q = 0 e Q = 1 , o latch é dito estar no estado RESET. Para


“resetar” o latch da Figura 3 fazemos SET = 1 e RESET = 0 , conforme
mostrado na Figura 4:

Figura 4: Colocando um latch S-R (NAND) no estado RESET.

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

• Observe que se SET = 0 e RESET = 0 , o latch apresenta em suas saídas


os valores lógicos Q = 1 e Q = 1 , conforme mostra a Figura 5. Esta é uma
condição inválida, na medida em que as variáveis lógicas Q e Q possuem
valores lógicos idênticos e, portanto, incoerentes com a definição destas
variáveis à luz da álgebra booleana.

Figura 5: Condição inválida em um latch S-R (NAND).

• A Figura 6 mostra a Tabela Verdade de um latch S-R (NAND):

Figura 6: Tabela Verdade de um latch S-R (NAND).

• As Figuras 7 a 12 mostram as características de operação um latch S-R


implementado com portas NOR:

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 7: Diagrama lógico de um latch S-R implementado com portas NOR. O


latch possui duas entradas , ( SET e RESET ) e duas saídas ( Q e Q ). O
valor lógico das saídas Q e Q definem o estado (SET ou RESET) do latch.

Figura 8: Colocando um latch S-R (NOR) no estado SET.

Figura 9: Mantendo o estado de um latch S-R (NOR).

Figura 10: Colocando um latch S-R (NOR) no estado RESET.

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 11: Condição inválida em um latch S-R (NOR).

Figura 12: Tabela Verdade de um latch S-R (NOR).

Exemplo 1: Determine as formas de onda nas saídas Q e Q de um latch S-R


(NAND) e nas saídas Q e Q de um latch S-R (NOR) quando as formas de
onda de entrada são conforme a figura a seguir.

Figura 13
Solução:

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 14

• Uma aplicação simples de um latch é o circuito de debouncing (bouncing –


repique ) em chaves comutadoras:

Figura 15: Efeito indesejável de bouncing em uma chave comutadora.

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 16: Solução do problema de bouncing em uma chave comutadora


utilizando um latch S-R (NAND).

Figura 17: Note que enquato a chave do circuito de debouncing da Figura 16


encontra-se movimentando-se a meio caminho entre seus dois contatos, o
latch mantém o estado.

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 18: Circuito de debouncing utilizando um latch S-R (NOR).


3 O flip-flop S-R

• A Figura 19 mostra o diagrama lógico de um flip-flop S-R (SET-RESET)


implementado com portas NAND:

Figura 19: Diagrama lógico de um flip-flop S-R implementado com portas


NAND. O flip-flop possui três entradas ( SET , RESET e CLOCK ) e duas
saídas ( Q eQ ). O valor lógico das saídas Q e Q definem o estado (SET ou
RESET) do flip-flop. Note que ação da entrada CLOCK é habilitar
( CLOCK = 1 ) ou desabilitar ( CLOCK = 0 ) a mudança de estado do flip-flop,
mudança que está ao encargo das entradas SET e RESET .

Figura 20: Tabela Verdade de um flip-flop S-R (NOR).

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 21: Habilitando a mudança de estado de um flip-flop S-R (NOR). Em (a)


o flip-flop encontra-se no estado RESET apesar de SET = 1 porque
CLOCK = 0 , desabilitando a mudança de estado. Em (b) CLOCK = 1 ,
habilitando a troca de estado do flip-flop para o estado SET.

Exemplo 2: Determine as formas de onda nas saídas Q e Q do flip-flop S-R


(NAND) mostrado na Figura 19 quando as formas de onda de entrada são
conforme a figura a seguir.

Figura 22
Solução:

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 23
4 O flip-flop D

• A Figura 24 mostra o diagrama lógico de um flip-flop D (Data – dados)


implementado com portas NAND:

Figura 24: Diagrama lógico de um flip-flop D implementado com portas NAND.


O flip-flop possui duas entradas ( D e CLOCK ) e duas saídas ( Q e Q ). A
principal característica funcional de um flip-flop D é que o valor lógico da
entrada de dados D é transferido para a saída Q toda vez que CLOCK = 1 .

Figura 25: Tabela Verdade de um flip-flop D (NAND).

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 26: Diagrama lógico de um flip-flop D implementado com portas NOR.

• Uma das aplicações de um flip-flop D é o armazenamento de palavras


binárias. Por exemplo, a Figura 27 mostra o diagrama de Interligação de uma
porta de saída com o barramento de dados de um sistema microprocessado.

Figura 27: Interligação de uma porta de saída com o barramento de dados de


8 bits de um sistema microprocessado.

• Quando o microprocessador recebe uma instrução para enviar uma palavra


binária de 8 bits para a porta em questão, a palavra é colocada no barramento
por um breve instante de tempo até a ocorrência do pulso de clock.

• Uma vez ocorrido o clock, a palavra de 8 bits é transferida para as saídas


Q dos 8 flip-flops D, ficando ali armazenada até que o periférico conectado à
porta a utilize.

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

• Note que com este esquema de armazenamento, o barramento não fica


“preso” ao periférico conectado à porta, não havendo necessidade de parar o
processamento até que o periférico utilize a palavra de 8 bits a ele destinada.
5 O flip-flop D MS (Ma ster-Slave)

• A Figura 28 mostra o diagrama lógico de um flip-flop D MS (master-slave =


mestre-escravo):

Figura 28: Diagrama lógico de um flip-flop D MS implementado com portas


NAND. O flip-flop subdivide-se em uma seção “Mestre” e em uma seção
“Escravo”. A seção “Mestre” é um flip-flop D e é habilitada pelo sinal
CLOCK . A seção “Escravo” é um flip-flop S-R e é habilitada pelo sinal
CLOCK .

• A principal característica funcional deste flip-flop D MS é que o valor lógico


da entrada de dados D é transferido para a saída Q apenas na borda de
descida do pulso de CLOCK , conforme mostra a Figura 29:

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 29: Processo de mudança de estado no flip-flop D MS da Figura 28.

• Na Figura 29, quando CLOCK = 1 , a seção “Mestre” é habilitada. Nesta


situação o valor lógico da entrada de dados D é transferido para a saída Q′ .
A seção “Escravo” permanece desabilitada porque CLOCK = 0 , o que
mantém inalterado o valor lógico na saída Q .

• Quando ocorre a transiçãoCLOCK = 1 → CLOCK = 0 , a seção “Mestre”


é desabilitada e as saídas Q′ e Q′ mantêm inalterado seus valores lógicos.
Nesta situação, a seção “Escravo” transfere os valores lógicos de Q′ e Q′
respectivamente para Q e Q porque CLOCK = 1 .

• Note que havendo uma mudança do valor lógico da entrada de dados D


enquanto CLOCK = 0 nenhuma alteração ocorre porque a seção “Mestre”
está desabilitada para esta situação.

⇒ Portanto, a saída Q (e Q ) pode mudar seu valor lógico apenas no


instante de tempo em que ocorre a borda de descida do clock, quando assume
o valor lógico que está aplicado à entrada D neste instante. O valor lógico da
entrada D permanece “memorizado” na saída Q até o instante em que
ocorre a próxima borda de descida do clock.

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

• Se o inversor for trocado de posição conforme mostra a Figura 30, o flip-flop


mudará de estado na borda de subida do clock:

Figura 30: Diagrama lógico de um flip-flop D MS com mudança de estado na


borda de subida do clock. As entradas CLR (clear−limpar) e PR
(preset−“presetar” ) são entradas assíncronas que alteram o estado do flip-flop,
independentemente do clock. QuandoPR = 0 o flip-flop é incondicionalmente
colocado no estado SET ( Q = 1 e Q = 0 ) e quando CLR = 0 o flip-flop é
incondicionalmente colocado no estado RESET ( Q = 0 e Q = 1 ).

Figura 31: Símbolo lógico de um flip-flop D MS (a) com mudança de estado na borda
de subida do clock e (b) com mudança de estado na borda de descida do clock.

Figura 32: Tabela Verdade de um flip-flop D MS com mudança de estado na


borda de subida do clock.

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 33: Flip-flops D comuns implementados em CIs TTL.

15
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Exemplo 3: Determine as formas de onda nas saídas Q e Q do flip-flop D


MS mostrado na Figura 34 a seguir.

Figura 34
Solução:

Figura 35

16
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

6 O flip-flop D Dispara do pela Borda (edge-triggered)

•A Figura 36 mostra o diagrama lógico de um flip-flop D edge-triggered


(edge-triggered = disparado pela borda do pulso de clock):

Figura 36: Diagrama lógico de um flip-flop D edge-triggered com mudança de


estado na borda de subida do clock. Para obter a mudança de estado na borda
de descida do clock basta acrescentar um inversor na entrada de clock.
Nota: Nos últimos anos os flip-flops edge-triggered vem gradativamente
substituindo os flip-flops master-slave.

7 O flip-flop T MS (T – t oggle)

• Quando ligamos a saída Q de um flip-flop D à entrada de dados D


obtemos um flip-flop T (toggle – chavear seqüencialmente de modo alternado
entre dois estados) , conforme mostrado na Figura 37:

17
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 37: Diagrama lógico de um flip-flop T. Uma vez que Q recebe o inverso
do valor lógico da entrada de dados D a cada instante em que ocorre a
descida do clock, então o flip-flop alterna de estado exatamente nestes
instantes conforme mostra a Figura 38.

Figura 38: Formas de onda do flip-flop T mostrado na Figura 37. O atraso de


propagação mostrado é originado nas portas NAND. Quando ocorre a descida
do clock de 1→0, o “Mestre” é desabilitado primeiro, evitando que Q′ e Q′
mudem seu valor lógico. Alguns nanossegundos após, as saídas Q e Q
mudam de valor lógico igualando-se respectivamente à Q′ e Q′ . Com isto
D iguala-se ao novo valor de Q , mas o “Mestre” não muda de estado porque
está desabilitado por CLOCK = 0 . A mudança de estado só ocorrerá na
próxima borda de descida do clock.

18
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 39: Diagrama lógico de um flip-flop T implementado com portas NOR.


8 O flip-flop JK

• A Figura 40 mostra o diagrama lógico de um flip-flop JK master-slave (existe


também o JK edge-triggered ):

Figura 40: Diagrama lógico, Tabela Verdade e símbolo lógico de um flip-flop JK


MS implementado com portas NAND. Note que a mudança de estado deste
flip-flop JK ocorre na borda de descida do clock.

19
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

• Note da Figura 40 que se J = K = 0 então o “Mestre” é desabilitado, e,


portanto, o “Escravo” não muda o valor lógico das saídas Q e Q . Portanto o
estado do flip-flop JK fica “memorizado” para esta situação.

• Se J = K então as saídas Q e Q recebem respectivamente os valores


lógicos das entradas J e K no instante em que ocorre a borda de descida do
clock (comporta-se semelhantemente a um flip-flop D).

• Se J = K = 1 então a saída Q controla a habilitação da porta NAND que


recebe a entradaK e a saída Q controla a habilitação da porta NAND que
recebe a entrada J . Isto faz com que a cada instante em que ocorre a
descida do clock o flip-flop JK alterne de estado exatamente nestes instantes
(comporta-se como um flip-flop T).

• As entradas assíncronas CLR e PR têm prioridade sobre todas as demais


entradas.

Figura 41: Exemplo de formas de onda para Q e Q obtidas na operação de


um flip-flop JK MS, de acordo com a Tabela Verdade da Figura 40. Note a
prioridade de ação das entradas assíncronasCLR e PR . Note também que
os valores lógicos de Q e Q são determinados pelos valores das entradas J
e K antes da borda de descida do clock (exceto quando os valores lógicos de
Q e Q são determinados por ação de CLR ou PR ).

20
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 42: Diagrama lógico de um flip-flop JK MS implementado com portas


NOR.

Figura 43: Exemplo de aplicação – divisor de freqüência ( ÷ 2 ) usando um


flip-flop JK. Note que o sinal CP tem a metade da freqüência do clock. Note
também que o sinal CP′ tem a mesma freqüência de CP mas é defasado de
180° do mesmo. Se não for necessário dois sinais defasados 180°, elimina-se
uma das portas NAND.

21
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 44: Exemplo de aplicação – divisor de freqüência ( ÷ 3 ) usando 3


flip-flops JK. Note que as saídas Q e Q de cada flip-flop são interligadas com
as entradas J e K do flip-flop seguinte, formando um anel fechado. Por
causa disto, a cada borda de descida do clock as saídas Q e Q de cada
flip-flop são transferidas para a saídas do flip-flop seguinte. Note também as
saídas dos flip-flops estão defasadas de 120°.

22
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 45: Flip-flops JK comuns implementados em CIs TTL.

23
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

9 Tempos de Comutaçã o
9.1 Atraso de Propagação (P ropagation Delay Time)

•É o intervalo de tempo requerido após a aplicação de um sinal de entrada


para que ocorra a mudança resultante na saída. Os seguintes atrasos de
propagação são relevantes na operação de um flip-flop:

Figura 46: (a) Atraso de propagação t PLH medido a partir da borda de disparo
(triggering edge) do pulso de clock até a transição LOW→HIGH na saída Q .
(b) Atraso de propagação t PHL medido a partir da borda de disparo do pulso de
clock até a transição HIGH → LOW na saída Q .

Figura 47: (a) Atraso de propagação t PLH medido a partir do sinal PR até a
transição LOW→HIGH na saída Q . (b) Atraso de propagação t PHL medido a
partir do sinal CLR até a transição HIGH → LOW na saída Q .

24
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

9.2 Setup Time

• É o mínimo intervalo de tempo em que os sinais aplicados nas entradas


( D , J , K , SET ou RESET ) devem ser mantidos constantes antes da
transição de estado imposta pela borda de disparo (triggering edge) do pulso
de clock para que a transição ocorra de maneira confiável:

Figura 48: Setup Time ( t s ) para um flip-flop D.


9.3 Hold Time

• É o mínimo intervalo de tempo em que os sinais aplicados nas entradas


( D , J , K , SET ou RESET ) devem ser mantidos constantes depois da
transição de estado imposta pela borda de disparo (triggering edge) do pulso
de clock para que a transição possa ser completada de maneira confiável:

Figura 49: Hold Time ( t h ) para um flip-flop D.

25
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VII
por F.C.C. De Castro

Figura 50: Tempos de Comutação típicos de um flip-flop D (CI 7474 CMOS


e/ou TTL).

26
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Capítulo VIII
Registradores de Deslocamento e Contadores
1 Introdução

• Vimos no capítulo anterior que flip-flops são dispositivos capazes de


“memorizar” o seu estado (SET ou RESET).

• Neste capítulo estudaremos dois circuitos digitais que constituem aplicações


fundamentais de flip-flops:
(I) Registrador de Deslocamento: Circuito digital cujo objetivo é
converter dados binários entre o formato paralelo e o formato serial.
(II) Contador: Circuito digital cujo objetivo é gerar uma seqüência
numérica .

2 Registradores de Des locamento (shift register)

Figura 1: Registrador de deslocamento de 4 bits com entrada serial e saída


paralela feito com flip-flops JK.

1
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

• Note na Figura 1 a porta NOT entre as entradas J e K do flip-flop A


(K = J ), fazendo com que o valor lógico nas entradas J e K = J seja
transferido respectivamente às saídas Q e Q no instante em que ocorre a
borda de descida do clock (comporta-se semelhantemente a um flip-flop D).

• Note que as saídas Q e Q de cada flip-flop são interligadas com as


entradas J e K do flip-flop seguinte. Por causa disto, a cada borda de
descida do clock as saídas Q e Q de cada flip-flop são transferidas para a
saídas do flip-flop seguinte.
Exemplo 1: Determine a saída do shift register da Figura 1 quando a
seqüência de bits representativa do número 5 é aplicada na entrada serial.
Solução:

Figura 2: Formas de onda para um registrador de deslocamento de 4 bits com


entrada serial e saída paralela com seqüência de bits representativa do número
5 aplicada na entrada serial.

2
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 3: Registrador de deslocamento de 4 bits com entrada paralela e saída


serial. Note que após a borda de descida do primeiro clock o nível lógico 0 na
entrada J do flip-flop A é transferido para sua saída, “seguindo” a palavra
binária de entrada que é deslocada para a direita neste registrador.

3
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Exemplo 2: Determine a saída do shift register da Figura 3 quando a palavra


binária representativa do número 10 é aplicada na entrada paralela.
Solução:

Figura 4: Formas de onda para um registrador de deslocamento de 4 bits com


entrada paralela e saída serial com a palavra binária representativa do número
10 aplicada na entrada paralela.

• A comunicação entre dois microcomputadores através de suas portas seriais


é baseada em registradores de deslocamento. Em cada porta serial, um
registrador de deslocamento transforma os dados do barramento interno do
microcomputador (que estão em formato paralelo) no formato serial adequado
para a transmissão através do cabo que interliga os dois computadores.

4
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 5a: Registradores de deslocamento comercialmente disponíveis na


família TTL.

5
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 5b: Registradores de deslocamento comercialmente disponíveis na


família TTL.

3 Contadores Assíncro nos (ripple counter)

Figura 6: Contador assíncrono de 4 bits (conta até 2 4 = 16 ). Note que somente


o flip-flop A recebe o sinal de clock. Todos os demais recebem o clock da
saída Q do flip-flop à esquerda, e, por isso, o contador é denominado
assíncrono. Toda vez que ocorre a descida do clock na entrada de um flip-flop ,
o flip-flop muda de estado (toggle) e incrementa a contagem do dígito binário
correspondente à posição do flip-flop no contador.

6
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 7: Contador assíncrono para contagem até 5. O número 510 = 1012 é


decodificado pela porta NAND, efetuando um CLEAR em todos os flip-flops,
reiniciando a contagem. Note que o número 710 = 1112 também é detectado
pela porta NAND, mas a contagem é reiniciada antes de atingir este valor. Note
que a duração τ em que o número 101 está presente nas saídas Q é muito
pequeno (um spike da ordem do tempo de propagação de uma porta), e isto
pode gerar problema se o sinal nas saídas for utilizado como clock para algum
outro circuito.

Figura 8: Contador assíncrono para contagem até 10. O número 1010 = 10102
é decodificado pela porta NAND, efetuando um CLEAR em todos os flip-flops,
reiniciando a contagem. Note que os números, 1110 = 10112, 1410 = 11102 e
1510 = 11112 também são detectados pela porta NAND, mas a contagem é
reiniciada antes de atingir este valor.

7
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 9: Contador assíncrono presetável de 4 bits (conta até 2 3 = 8 ). As


entradas PR recebem a palavra binária na qual se deseja inicializar a
contagem. Durante a inicialização o CONTROLE_PR deve receber o nível
lógico 1.

8
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 10: Contador assíncrono presetável para contagem em módulo 3. A


seqüência gerada é 5,6,7,5! .

9
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 11: Contador assíncrono decrescente. Para contagem decrescente


liga-se a entrada de clock de cada flip-flop (exceto o 1°) à saída a Q do
flip-flop à esquerda.

4 Contadores Síncrono s

• Em um contador síncrono, todos os flip-flops compartilham o mesmo sinal


de clock e, portanto, todos os flip-flops ficam habilitados no mesmo instante
para que ocorra a troca de estado.

• A vantagem do contador síncrono sobre o contador assíncrono reside na


inexistência de atraso de propagação entre os pulsos clock dos flip-flops ,
evitando spikes e glitches (pulsos de curta duração resultantes de atrasos de
propagação distintos).

10
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 12: Contador assíncrono de 4 bits (conta até 2 4 = 16 ). Note que todos
os flip-flops recebem o mesmo sinal de clock. As portas AND determinam a
seqüência numérica gerada, que, no caso, é a seqüência de contagem 00002,
...
00012, , 11112. Note que qualquer seqüência numérica pode ser gerada com
um contador síncrono.

• A melhor maneira de compreender a operação de um contador síncrono é


projetando o contador para uma seqüência numérica desejada.

• Os exemplos de projeto de contadores que seguem serão baseados em


flip-flops JK disparados pela borda de descida do clock, cuja Tabela-Verdade é:

11
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 13: (a) Tabela-Verdade de um flip-flop JK disparado pela borda de


descida do clock . (b) Tabela de Transição de Estado do flip-flop JK.
Exemplo 3: Projete um contador síncrono que gere a seqüência numérica
...
CBA = 000, 001, 010, 011, 100, 000 .
Solução:

• Primeiramente, vamos construir a Tabela de Estados do contador, com base


na seqüência desejada e na Tabela de Transição de Estado do flip-flop JK
(Figura 13b). Sejam C, B e A as saídas Q dos flip-flops responsáveis
respectivamente pela representação dos bits 2 2 (MSB) , 21 e 2 0 (LSB) da
seqüência CBA:
Tabela de Estados do Contador
Q antes do clock Q depois do clock C B A
C B A C B A J K J K J K
0 0 0 0 0 1 0 X 0 X 1 X
0 0 1 0 1 0 0 X 1 X X 1
0 1 0 0 1 1 0 X X 0 1 X
0 1 1 1 0 0 1 X X 1 X 1
1 0 0 0 0 0 X 1 0 X 0 X

12
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

• A seguir, determina-se os Mapas de Karnaugh das variáveis J e K dos


flip-flops C, B e A em função dos valores das variáveis C, B e A na coluna “Q
antes do clock” na Tabela de Estados do Contador:

Figura 14: J C = AB .

Figura 15: KC = 1 .

Figura 16: JB = A .

Figura 17: KB = A .

13
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 18: JA = C .

Figura 19: KA =1.

• Portanto, das figuras 14 a 19, o circuito resultante é:

Figura 20: Contador síncrono gerador da seqüência numérica 000, 001, 010,
...
011, 100, 000 .

Exemplo 4: Projete um contador síncrono que gere a seqüência numérica


...
CBA = 000, 001, 010, 011, 100, 101, 000 .
Solução:

14
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

• Primeiramente, obtém-se a Tabela de Estados do contador, com base na


seqüência desejada e na Tabela de Transição de Estado do flip-flop JK (Figura
13b). Sejam C, B e A as saídas Q dos flip-flops responsáveis respectivamente
pela representação dos bits 2 2 (MSB) , 21 e 2 0 (LSB) da seqüência CBA:
Tabela de Estados do Contador
Q antes do clock Q depois do clock C B A
C B A C B A J K J K J K
0 0 0 0 0 1 0 X 0 X 1 X
0 0 1 0 1 0 0 X 1 X X 1
0 1 0 0 1 1 0 X X 0 1 X
0 1 1 1 0 0 1 X X 1 X 1
1 0 0 1 0 1 X 0 0 X 1 X
1 0 1 0 0 0 X 1 0 X X 1

• A seguir, determina-se os Mapas de Karnaugh das variáveis J e K dos


flip-flops C, B e A em função dos valores das variáveis C, B e A na coluna “Q
antes do clock” na Tabela de Estados do Contador:

Figura 21: J C = AB .

Figura 22: KC = A .

15
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 23: J B = AC .

Figura 24: KB = A .

Figura 25: J A = 1.

Figura 26: KA =1.

• Portanto, das figuras 21 a 26, o circuito resultante é:

16
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 27: Contador síncrono gerador da seqüência numérica 000, 001, 010,
...
011, 100, 101, 000 .

• A Figura 28 mostra contadores comercialmente disponíveis na família TTL.

17
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 28a: Alguns contadores síncronos comercialmente disponíveis em CIs


da família TTL.

18
PUCRS – Faculdade de Engenharia Elétrica – Departamento de Engenharia Elétrica
Eletrônica Digital Cap. VIII
por F.C.C. De Castro

Figura 28b: Alguns contadores síncronos comercialmente disponíveis em CIs


da família TTL.

19

Você também pode gostar