Você está na página 1de 171

Eletrnica Digital Bsica

Jurandyr S. Nogueira

UNIVERSIDADE FEDERAL DA BAHIA


REITORA

Dora Leal Rosa


VICE REITOR

Luis Rogrio Bastos Leal

EDITORA DA UNIVERSIDADE FEDERAL DA BAHIA


DIRETORA

Flvia Goulart Mota Garcia Rosa

CONSELHO EDITORIAL
Alberto Brum Novaes
Angelo Szaniecki Perret Serpa
Antnio Fernando Guerreiro de Freitas
Caiuby Alves da Costa
Charbel Nin El-Hani
Cleise Furtado Mendes
Dante Eustachio Lucchesi Ramacciotti
Evelina de Carvalho S Hoisel
Jos Teixeira Cavalcante Filho
Maria Vidal de Negreiros Camargo

Salvador
EDUFBA
2011

2011, by Jurandyr Santos Nogueira.

Direitos para esta edio cedidos Edufba.


Feito o depsito legal.
CAPA E ARTE FINAL

Amanda Santana da Silva


NORMALIZAO

Adriana Caxiado

Sistema de Biblioteca da UFBA

Nogueira, Jurandyr Santos.


Eletrnica digital bsica / Jurandyr Santos Nogueira. - Salvador: EDUFBA, 2011.
170 p.

ISBN 978-85-232-0836-3

1. Eletrnica digital. I. Ttulo.

CDD - 621.3815

Editora filiada

EDUFBA
Rua Baro de Jeremoabo, s/n, Campus de Ondina,
40170-115 Salvador-BA Brasil
Tel/fax: (71)3283-6160/3283-6164
www.edufba.ufba.br | edufba@ufba.br

SUMRIO

1. INTRODUO AOS SISTEMAS NUMRICOS | 9


1. 1. CONVERSO ENTRE SISTEMAS NUMRICOS | 10
1. 1.1. Converso de um Nmero numa Base qualquer para Decimal:(N)r
1. 1.2. Converso de um Nmero Decimal para uma Base qualquer: (N)10
1. 1.3. Converso de um Nmero numa Base r1 para a Base r2: (N)r1

(N) | 11
(N)r | 13
(N)r2 | 17

1. 1.4. Converses entre Binrio, Octal e Hexadecimal | 19


1. 2. CDIGOS BINRIOS | 23
1. 3. Exerccios I | 25

2. INTRODUO LGEBRA BOOLEANA | 27


2. 1. OPERADORES DA LGEBRA BOOLEANA | 28
2. 2. CIRCUITOS EQUIVALENTES E SIMBOLOGIA C.I.'S | 30
2. 3. POSTULADOS E TEOREMAS DA LGEBRA BOOLEANA | 34
2. 4. PROPRIEDADES DAS FUNES "NAND" | 43
2. 4.1. Expresses que envolvem apenas "NAND's". | 44
2. 5. PROPRIEDADES DAS FUNES "NOR" | 44
2.5.1 Expresses que envolvem apenas "NOR's | 45
2. 6. PROPRIEDADES DAS FUNES XOR E XNOR | 46
2. 7. FORMAS CANNICAS | 47
2.7.1 Funes em S.O.P. | 47
2.7.2 Funes em P.O.S. | 52
2. 8. RELAO ENTRE P.O.S/S.O.P. E TABELAS-VERDADE | 55
2. 9. EXERCCIOS II | 62
3. MINIMIZAO DE CIRCUITOS LGICOS | 65
3. 1. MAPAS DE KARNAUGH (MK) | 66
3. 2. RELAO ENTRE TABELAS-VERDADE E MKS | 72
3. 2.1. Para duas variveis: | 72
3.2.2. Para trs variveis: | 73
3. 2.3. Para quatro variveis: | 74
3. 3. MINIMIZAO OU SIMPLIFICAO DE FUNES ATRAVS DE MKS | 75
3. 4. COMPLEMENTAES DE FUNES ATRAVS DE MKS | 90
3. 5. TERMOS INDIFERENTES NA MINIMIZAO POR MKS | 91
3. 6. EXERCCIOS III | 92

4. CIRCUITOS COMBINACIONAIS | 95
4. 1. PROJETO DE CIRCUITO COMBINACIONAL ELEMENTAR | 96
4. 2. CIRCUITO ELEMENTAR DE ALARME 1: | 98
4. 3. CIRCUITO ELEMENTAR DE ALARME 2: | 99
4. 4. CIRCUITO ELEMENTAR DE ALARME 3: | 101
4. 5. CODIFICADOR ELEMENTAR X/X2: | 102
4. 6. COMANDO DE CIRCUITO ELTRICO: | 104
4. 7. SOMADOR COMPLETO OU FULL-ADDER: | 107
4. 8. CIRCUITO COMPARADOR: | 108
4. 9. CIRCUITO GERADOR DE BIT DE PARIDADE: | 112
4. 10. CONVERSOR DE CDIGO BCD/ XS3: | 115
4. 11. SELECIONADOR - SOMADOR/SUBTRATOR: | 119
4. 12. MULTIPLEXADOR/DEMULTIPLEXADOR: | 122
4. 13. CONVERSOR BINRIO/GRAY: | 125
4. 14. DECODIFICADORES: | 128
4. 15 CONSIDERAES GERAIS: | 130
4. 16. EXERCCIOS IV | 132
5. FLIP-FLOPs | 135
5.1. FLIP-FLOP SR: | 136
5.1.1. Diagrama de Estados FF-SR: | 136
5.1.2. Tabela-Caracterstica FF-SR: | 137
5.1.3. Tabela de Estados FF-SR: | 137
5.1.4. Tabela de Excitao FF-SR: | 141
5.2. FLIP-FLOP JK | 142
5.2.1. Diagrama de Estados FF-JK: | 142
5.2.2. Tabela-Caracterstica FF-JK: | 143
5.2.3. Tabela de Estados FF-JK: | 143
5.2.4. Tabela de Excitao FF-JK: | 146
5.3. FLIP-FLOP T | 147
5.3.1. Diagrama de Estados FF-T: | 147
5.3.2. Tabela Caracterstica FF-T: | 147
5.3.3. Tabela de Estados FF-T: | 147
5.3.4. Tabela de Excitao FF-T: | 148

5.4. FLIP-FLOP D | 149


5.4.1. Diagrama de Estados FF-D: | 149
5.4.2. Tabela Caracterstica FF-D: | 149
5.4.3. Tabela de Estados FF-D: | 150
5.4.4. Tabela de Excitao FF-D: | 150
5.5. CONVERSO DE FLIP-FLOPS | 151
5.5.1. Converso do FF SR em FF JK | 152
5.5.2. Converso do FF-SR em FF-T | 153
5.5.3. Converso do FF-SR em FF-D | 154
5.5.4. Converso do FF-JK em FF-T | 155
5.5.5.Converso do FF-D em FF-T | 156
5.5.6. Converso do FF-SR num FF qualquer | 156
6. IMPLEMENTAO DE CIRCUITOS LGICOS &
Field Programmable Gate Array - FPGAs | 159
6. 1. CONSIDERAES GERAIS | 159
6. 1.1. Consideraes sobre a Tecnologia do FPGA | 163
6. 1.2. Ilustrao de um FPGA | 164
6. 1.3. Consideraes necessrias | 166
6. 2. PESQUISAS EM FPGA | 167

REFERNCIAS | 169

1. INTRODUO AOS SISTEMAS NUMRICOS

Todo sistema numrico constitudo por um conjunto ordenado de smbolos ou


dgitos, com regras definidas para as operaes de adio, subtrao,
multiplicao, diviso e outras operaes matemticas. O nmero de smbolos
pertencentes a um dado sistema denominado base ou raiz.
Um sistema numrico permite representar uma grandeza qualquer atravs de
smbolos pertencentes ao sistema, podendo tal representao constar de uma
parte inteira e outra fracionria, as quais so separadas, entre si, por uma vrgula.
Um nmero escrito numa base qualquer (r) pode ser expresso por sua forma
polinomial:
n-1

(N)r =

aj rj

j=-m

ou
(N)r = an-1 rn-1 + an-2 rn-2 + . . . + a1 r1 + a0 r0 +... {Parte Inteira}
+ a-1 r -1 + a-2 r -2 + . . . + a-m r -m {Parte Fracionria}
onde:
r
a
n
m
an-1

(base ou raiz do sistema);


(dgito do sistema);
(nmero de dgitos da parte inteira);
(nmero de dgitos da parte fracionria);
(dgito mais significativo da parte inteira);

a0

(dgito menos significativo da parte inteira);

a-1

(dgito mais significativo da parte fracionria);

a-m

(dgito menos significativo da parte fracionria).

O Sistema Decimal o mais utilizado nas operaes matemticas e aplicaes


gerais da engenharia, mas alguns outros Sistemas Numricos so de grande
importncia, sobretudo no estudo dos circuitos lgicos, sistemas digitais e
computadores, a exemplo dos Sistemas: Binrio, Octal e Hexadecimal, os quais
so assim denominados em virtude de apresentarem, respectivamente, as bases
dois, oito e dezesseis.

Assim, os mencionados Sistemas Numricos possuem os dgitos abaixo


discriminados:

decimal: {0,1,2,3,4,5,6,7,8,9};

binrio: {0,1};

octal: {0,1,2,3,4,5,6,7} e

hexadecimal:{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}.
Qualquer dgito do Sistema Binrio comumente denominado bit, pela contrao
das palavras binary digit, do idioma ingls. O Sistema Hexadecimal (Hex),
considerado como um sistema alfanumrico, por ser constitudo por letras do
alfabeto e algarismos. As letras A, B, C, D, E e F do Hexadecimal correspondem
aos decimais: 10, 11, 12, 13, 14 e 15, respectivamente.
A representao polinomial de um nmero, expresso nesses sistemas de
interesse, pode ser exemplificada conforme a indicao abaixo:
(N)10 = (94,72)10 = 9 x 101 + 4 x 100 + 7 x 10-1 + 2 x 10-2
(N)2 = (1011,11)2 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 + 1 x 2-1 + 1 x 2-2
(N)8 = (1374,25)8 = 1 x 83 + 3 x 82 + 7 x 81 + 4 x 80 + 2 x 8-1 + 5 x 8-2
(N)16 = (F8E,3D)16 = F x 162 + 8 x 161 + E x 160 + 3 x 16-1 + D x 16-2

1.1 CONVERSES ENTRE SISTEMAS NUMRICOS

Um nmero expresso num dado sistema numrico tem o seu equivalente em


qualquer outro sistema. Assim, um nmero decimal, mediante a aplicao de
algoritmos adequados, poder ter o seu equivalente binrio, octal, hexadecimal
ou em qualquer outra base. Do mesmo modo, um nmero escrito, por exemplo
num sistema cuja base igual a 3 (ternrio), tambm ter os seus equivalentes em
binrio, decimal, octal, hexadecimal ou em qualquer outra base ou raiz.
A obteno de um nmero equivalente a outro numa base distinta, denomina-se
converso numrica. Essencialmente, trs casos devem ser considerados:
a) converso de um nmero numa base qualquer para decimal: (N)r (N)10 ;
b) converso de um nmero decimal para uma base qualquer: (N)10 (N)r ;
c) converso de um nmero numa base r1 para a base r2: (N)r1 (N)r2..

10

1.1.1 Converso de um nmero numa Base qualquer para Decimal:(N)r (N)10

Quando se deseja encontrar o decimal equivalente a um nmero expresso em


qualquer outro sistema, representa-se o nmero em questo sob a sua forma
polinomial e, em seguida, encontra-se o decimal correspondente a cada uma das
parcelas. A soma resultante das diversas parcelas corresponder ao nmero
decimal equivalente. Por exemplo: se uma determinada grandeza se encontra
representada pelo nmero binrio (N)2 = (1101,1001) 2 , a sua expresso
polinomial ser:
(N)2= 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20 + 1 x 2-1 + 0 x 2-2 + 0 x 2-3 + 1 x 2-4 .
Encontrando-se o decimal equivalente a cada uma das parcelas, tem-se:
8

+ 4

+ 1

0,5

+ 0

+ 0,0625 .

Efetuando-se a soma das parcelas acima, encontra-se o nmero (13,5625)10


como resultado, o qual corresponder ao decimal equivalente ao nmero binrio
(1101,1001)2.
Ou seja:
(13,5625)10 (1101,1001)2
Do mesmo modo, se o hexadecimal (N)16 = (F8E,3D)16 tem por representao
polinomial:
(N)16 = F x (16)2 + 8 x (16)1 + E x (16)0 + 3 x (16)-1 + D x (16)-2 ,
ento, sabendo-se que as letras A, B, C, D, E, e F do Sistema Hexadecimal
correspondem respectivamente aos nmeros 10, 11, 12, 13, 14, e 15 do Sistema
Decimal, como dito acima, a sua representao polinomial ser:
15 x (16)2 + 8 x (16)1 + 14 x (16)0 + 3 x (16)-1 + 13 x (16)-2. ou
3840

+ 128

14

+ 0,1875 + 0,0508 ,

cuja soma resulta em (3982,2383)10 .


Logo,
(3982,2383)10 (F8E,3D)16

11

Do mesmo modo, se o nmero (N)7 = (2146,523)7 tem por representao


polinomial:
2 x 73 + 1 x 72 + 4 x 71 + 6 x 70 + 5 x 7-1 + 2 x 7-2 + 3 x 7-3 ,
e, sendo os decimais equivalentes a cada uma das parcelas:
686 + 49 + 28 + 6 + 0,7143 + 0,0408 + 0,0087 ,
a soma dessas parcelas igual a (769,7638)10 .
Portanto,
(769,7638)10 (2146,523)7.
O procedimento acima, envolvendo o desenvolvimento polinomial (DP) e o
somatrio das diversas parcelas, convertidas ao Sistema Decimal, dever ser
aplicado cada vez que um nmero expresso numa base r qualquer deva ser
convertido base 10.
Esquematicamente:
(N)r

{ (D P) } (N)10 .

Observao:
No caso especfico de se converter um nmero binrio, inteiro, em seu
equivalente decimal, existe um algoritmo muito simples, conhecido como o
mtodo de dobrar e somar, que permite a realizao de tal converso
praticamente por inspeo, sem se utilizar, explicitamente, o desenvolvimento
polinomial, o qual muitas vezes se torna enfadonho, quando da sua aplicao
sistemtica.
O mtodo em questo consiste em dobrar o bit mais significativo, e som-lo com
o imediatamente menos significativo, dobrando-se novamente o resultado,
repetindo-se o processo at o bit menos significativo da parte inteira. O
resultado, ao final, ser o decimal equivalente.
Exemplo:
Encontrar o decimal equivalente ao nmero binrio:
(N)2 = 1 1 0 1 0 1

12

Soluo:
dobra-se o MSB
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado

= 1 X
= 3 X
= 6 X
= 13 X
= 26 X

2
2
2
2
2

= 2
= 6
= 12
= 26
= 52

+
+
+
+
+

bit seguinte:
bit seguinte:
bit seguinte:
bit seguinte:
LSB

2
6
12
26
52

+
+
+
+
+

1
0
1
0
1

=
=
=
=
=

3
6
13
26
53

Decimal equivalente: (53)10 .


Isto :
(1 1 0 1 0 1)2 (53)10
Outro exemplo:
Encontrar o decimal equivalente ao nmero binrio (N)2 = 1 0 0 1 1 1 0 1 0.
Soluo:
dobra-se o MSB:
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado
dobra-se o resultado

1 x 2 =
2
4
9
19
39
78
157

x
x
x
x
x
x
x

2
2
2
2
2
2
2

=
=
=
=
=
=
=

2
4
8
18
38
78
156
314

bit seguinte:

+
+
+
+
+
+
+

bit seguinte:
4
bit seguinte:
8
bit seguinte:
18
bit seguinte:
38
bit seguinte:
78
bit seguinte: 156
LSB: 314

+
+
+
+
+
+
+

0
1
1
1
0
1
0

=
=
=
=
=
=
=

4
9
19
39
78
157
314

Decimal equivalente: (314)10 .


Logo,
(1 0 0 1 1 1 0 1 0)2 (314)10
Observa-se que a aplicao de algoritmo similar parte fracionria, bem como
aos nmeros em Octal ou Hexadecimal, no reduz suficientemente o trabalho de
se efetuar a converso pelos mtodos anteriormente descritos, no se
justificando, portanto, a sua utilizao generalizada!
1.1.2 Converso de um Nmero Decimal para uma Base qualquer: (N)10 (N)r

Freqentemente o nmero conhecido encontra-se em decimal (N)10 e deseja-se


obter o seu equivalente numa base r qualquer (N)r. Neste caso, o mtodo
anterior no utilizado diretamente, sendo aplicados distintos algoritmos tanto
13

para a parte inteira quanto para a fracionria do decimal conhecido, procedendose do seguinte modo:
a) separa-se a parte inteira da fracionria, caso esta ltima exista;
b) toma-se a parte inteira do nmero decimal e divide-se pela base (r) do
sistema no qual se deseja encontrar o nmero equivalente. O resultado
apresentar um quociente (Q) e um resto (R). Toma-se o primeiro
quociente encontrado e divide-se novamente pela base (r). O resultado
apresentar um segundo quociente e um segundo resto. Aplica-se
sucessivamente tal processo at que o quociente resultante seja nulo,
indicando-se tambm o ltimo resto obtido. Os restos obtidos ao longo
desse procedimento se constituiro nos dgitos da parte inteira do
nmero na base r , sendo o primeiro deles o dgito menos significativo
(LSB) e o ltimo, o mais significativo (MSB).
c) toma-se a parte fracionria do nmero decimal (F), caso a mesma
exista, e multiplica-se pela base (r) do sistema no qual se deseja
encontrar o nmero equivalente. O resultado apresentar um produto
(P) que estar constitudo por uma parte inteira (I), eventualmente nula,
e outra fracionria (f). Toma-se a primeira parte fracionria encontrada
e multiplica-se novamente pela base (r). O resultado apresentar um
segundo produto, tambm constitudo por uma segunda parte inteira,
eventualmente nula, e outra fracionria.
Repete-se o procedimento, sucessivamente, at o nmero de dgitos
atender aproximao necessria para representar com preciso o
equivalente ao decimal a ser convertido, ou at a parte fracionria
resultar nula, ou se configurar como em sendo uma dzima peridica!
Os inteiros obtidos ao longo desse procedimento se constituiro nos dgitos da
parte fracionria do nmero na base (r) , sendo o primeiro deles o dgito mais
significativo (MSB) e o ltimo, o menos significativo (LSB)!
Aps tal procedimento, a soma do inteiro com o fracionrio equivalentes, resulta
no nmero representado na base (r).
Exemplo: Converter o decimal (N)10 = 100,39 para o sistema binrio.

14

Soluo:
a) Separando-se a parte inteira da fracionria, temos que o nmero
decimal acima (N)10 = 100,39 pode ser escrito como:
(N)10 = (100)10 + (0,39)10
b) Tomando-se a parte inteira (100)10 e aplicando-se o procedimento
b, indicado anteriormente, tem-se:

DEC
100
50
25
12
6
3
1

Base

Quociente

Resto

2
2
2
2
2
2
2

=
=
=
=
=
=
=

50
25
12
6
3
1
0

+
+
+
+
+
+
+

0
0
1
0
0
1
1

Status

[ LSB ]

[ MSB ]

Assim, o nmero binrio equivalente ao inteiro (100)10 ser constitudo pelos


dgitos binrios: 1 1 0 0 1 0 0.
( 1100100 )2 ( 100 )10

Ou seja:

c) Tomando-se agora a parte fracionria (0,39)10 e aplicando-se o


procedimento c, indicado acima, tem-se:
DEC
0,39
0,78
0,56
0,12
0,24
0,48
0,96
0,92
0,84
0,68

x
x
x
x
x
x
x
x
x
x
x

Base
2
2
2
2
2
2
2
2
2
2

=
=
=
=
=
=
=
=
=
=
=

Produto
0,78
1,56
1,12
0,24
0,48
1,92
1,92
1,84
1,68
1,36

=
=
=
=
=
=
=
=
=
=
=

Frao
0,78
0,56
0,12
0,24
0,48
0,96
0,92
0,84
0,68
0,36

15

+
+
+
+
+
+
+
+
+
+
+

Inteira
0
0
1
1
0
0
0
1
1
1

Status
[ MSB ]

[ LSB ]

Assim, a parte fracionria ser constituda pelos dgitos binrios:


0110001111
Observa-se que a frao resultante igual a (0,0110001111)2, corresponde na
verdade ao decimal (0,3896)10 - o que pode ser verificado atravs do seu
desenvolvimento polinomial; ou seja, uma aproximao do nmero (0,39)10.
O erro na converso inversamente proporcional ao nmero de bits da parte
fracionria.
Concluda a converso da parte fracionria, tem-se ento que:
(100,39)10 (1100100,0110001111)2
Evidentemente, a verificao desse resultado pode ser realizada pela converso
do binrio encontrado ao decimal correspondente, atravs do mtodo do
desenvolvimento polinomial, conforme citado acima, considerando as
aproximaes pertinentes.
Vale ressaltar que o resultado da converso ser exato somente quando a parte
fracionria resultar nula.
Por exemplo: Converter o decimal 0,5 para a base 2.
Aplicando-se o mesmo procedimento, anteriormente descrito, para a parte
fracionria, uma vez que neste caso a parte inteira nula, tem-se:
DEC
0,5
0,0

x
x
x

Base =
2
=
2
=

Produto
1,0
0,0

=
=
=

Frao
0,0
0,0

+ Inteira Status
+
1 [ MSB ]
+
0 [ LSB ]

O binrio equivalente constitudo pelos bits 1 e 0.


Isto :
( 0,5 )10 ( 0,10 )2.
A converso de um nmero na base dez, no seu equivalente em qualquer outra
base pode ser encontrada utilizando-se o mtodo acima exposto. Este algoritmo
se aplica a qualquer caso, lembrando-se apenas que, quando o nmero
composto, as partes inteira e fracionria recebem tratamentos distintos e duais.

16

Esquematicamente, para efeito mnemnico,

{Ir=Q+[R]

LSB

(N)10

{ Fxr

}
} (N)r
}

MSB

= f + [ I ]MSBLSB

1.1.3 Converso de um Nmero numa Base r1 para a Base r2: (N)r1 (N)r2

Genericamente, quando se deseja converter um nmero expresso num sistema


cuja base ou raiz definida por r1 em outro sistema cuja base definida por r2,
procede-se da seguinte maneira:
Encontra-se o equivalente decimal do nmero expresso em um dos sistemas
atravs do seu desenvolvimento polinomial, como indicado no item I.1.1.
Aps a identificao do decimal correspondente, encontra-se o equivalente ao
nmero expresso na outra base, atravs do mtodo indicado no item I.1.2.
Esquematicamente:
(N)r1 (N)10 (N)r2
Exemplo: Encontrar o equivalente ao nmero (123,45)6, num sistema de base 3.
Soluo: O equivalente decimal de (123,45)6 , como j vimos pelo mtodo do
desenvolvimento polinomial encontrado por:
1 x 62 + 2 x 61 + 3 x 60 + 4 x 6-1 + 5 x 6-2

ou,

1 x 36 + 2 x 6 + 3 x 1 + 4 x 0,1666 + 5 x 0,0277 ou ainda,


36 + 12 + 3 + 0,6664 + 0,1385 = (51,8049)10.
Ento:
(123,45)6 (51,8049)10

17

Para se encontrar o equivalente de (51,8049)10 na base 3, aplica-se o algoritmo


indicado no item I.1.2, separando-se o procedimento relativo parte inteira do da
fracionria, conforme visto anteriormente:
Parte inteira :
DEC
51
17
5
1

Base
3
3
3
3

=
=
=
=
=

Quociente
17
5
1
0

+
+
+
+
+

Resto
0
2
2
1

Status
[ LSB ]

[ MSB ]

ou,
(51)10 (1220) 3
Parte Fracionria :
DEC.
0,8049
0,4147
0,2441
0,7323
0,1969
0,5907
0,7721

x
x
x
x
x
x
x
x

Base
3
3
3
3
3
3
3

=
=
=
=
=
=
=
=

Produto
2,4147
1,2441
0,7323
2,1969
0,5907
1,7721
2,3163

=
=
=
=
=
=
=
=

Frao
0,4147
0,2441
0,7323
0,1969
0,5907
0,7721
0,3163

+
+
+
+
+
+
+
+

Inteira
2
1
0
2
0
1
2

ou,
(0,8049)10 (0,2102012...) 3
Logo,
(123,45)6 (51,8049)10 (1220,2102012...)3

18

Status
[ MSB ]

[ LSB ]

1.1.4 Converses entre Binrio, Octal e Hexadecimal

A converso entre os sistemas binrio, octal e hexadecimal, pode ser realizada a


partir do mtodo geral indicado no item I.1.3. Contudo, devido a determinadas
peculiaridades desses sistemas, a converso entre os mesmos torna-se muito
simples, desde que se considere o seguinte: Os dgitos do sistema octal podem
ser representados por grupos de 3 bits do sistema binrio, como a seguir:
OCTAL
0
1
2
3
4
5
6
7

BINRIO
000
001
010
011
100
101
110
111

Do mesmo modo, os dgitos do sistema hexadecimal podem ser representados


por grupos de 4 bits do sistema binrio:
HEXADECIMAL
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

19

BINRIO
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

Pela razo acima citada, qualquer nmero binrio pode ser convertido
diretamente em octal ou hexadecimal, bastando para isso separar-se no primeiro
caso (octal) grupos de 3 bits e, no segundo (hexadecimal), grupos de 4 bits do
binrio em questo. A partir da, identifica-se a representao equivalente,
encontrando-se, por inspeo, o resultado num ou noutro sistema.
Quando o grupo de dgitos no pode ser subdividido em subgrupos de 3 ou 4 bits,
acrescentam-se zeros esquerda da parte inteira ou direita da parte fracionria.
Exemplo: Encontrar o octal e o hexadecimal equivalentes ao nmero
(N)2 = 111101000,0111
Soluo: Separando-se a informao em grupos de 3 bits,
(N)2 = 111 101 000, 011 100 ou,
(N)8 =

0 ,

Do mesmo modo, no caso do hexadecimal, separando-se em grupos de 4 bits,


(N)2 = 0001 1110
(N)16 =

1000,
8 ,

0111 tem-se:
7.

Logo,
(111101000,0111)2 (750,34)8 (1E8,7)16
Observa-se ento que, o nmero de dgitos necessrios para se representar
uma determinada grandeza varia de acordo com a base do sistema. No
exemplo acima, a grandeza representada em binrio por 13 dgitos, em
octal por 5 dgitos e por apenas 4 dgitos em hexadecimal. Essa uma das
vantagens de se utilizar os sistemas octal e hexadecimal!
Evidentemente, o processo de converso de octal ou hexadecimal para
binrio tambm possvel, bastando aplicar o processo anterior de modo
inverso.

20

Exemplo:
Encontrar o Bnrio equivalente ao Octal (N)8 = 274,71
Como

(N)8 =

tem-se

(N)2 = 010 111 100 , 111 001.

4 , 7

Do mesmo modo, o hexadecimal (N)16 = FAE,BC ter como equivalente o


binrio:
(N)16 =

(N)2 = 1111 1010

E ,

C ou

1110, 1011 1100

Observaes:
Quando se deseja encontrar os equivalentes numricos em binrio, octal e
hexadecimal de um determinado nmero explicitado em decimal, deve-se iniciar
o processo de converso a partir do hexadecimal, e no do binrio como muito
comum se proceder. A razo dessa recomendao nasce do fato de as operaes
de converso para a base 16 convergir mais rapidamente para o resultado. Aps a
determinao do hexadecimal, deve-se encontrar, por inspeo, o seu equivalente
binrio e, atravs desse mesmo processo, a partir do binrio, encontrar-se o octal
equivalente.
Devido sua grande utilizao, vale dizer que os binrios, quando agrupados em
determinado nmero de dgitos, constitundo-se numa informao completa,
recebe designaes especiais a saber:

BIT
um dgito binrio 0 ou 1
NIBBLE um grupo de 4 bits
BYTE um grupo de 8 bits
WORD um grupo de 2 bytes ou 4 nibbles, ou mltiplos desses.

21

Apenas como ilustrao, apresenta-se a seguir algumas equivalncias


numricas entre os sistemas decimal, binrio, octal e hexadecimal:
DECIMAL

BINRIO

OCTAL

HEXADECIMAL

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
50
60
64
100
255
1000
1024

00000
00001
00010
00011
00100
00101
00110
00111
01000
01001
01010
01011
01100
01101
01110
01111
10000
10001
10010
10011
10100
10101
10110
10111
11000
11001
11010
11011
11100
11101
11110
11111
100000
110010
111100
1000000
1100100
11111111
1111101000
1000000000

0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
62
74
100
144
377
1750
2000

0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
10
11
12
13
14
15
16
17
18
19
1A
1B
1C
1D
1E
1F
20
32
3C
40
64
FF
3E8
400

22

1.2 CDIGOS BINRIOS

A representao dos nmeros binrios nem sempre estabelecida a partir da sua


equivalncia direta com os nmeros decimais, octais ou hexadecimais, conforme
indicado anteriormente. Freqentemente, por razo de praticidade, aumento de
velocidade das operaes lgicas e simplificao dos circuitos digitais
(hardware) que executam operaes lgicas diversas, sobretudo no que diz
respeito a circuitos aritmticos de computadores, torna-se conveniente expressar
determinadas informaes de uma forma codificada, sem que a mesma guarde
qualquer relao com o valor numrico, propriamente dito, que se encontra
simbolizado por um determinado nmero em binrio. Assim, existem vrios
cdigos numricos dentro do prprio sistema binrio. Entre esses cdigos
destacam-se:

Cdigo binrio natural (8 4 2 1 )


BCD (Binary Coded Decimal)
Cdigo de Gray
Cdigo Excesso de 3 (XS3)
Cdigo ASCII
Cdigos de paridade, deteo e correo de erros, etc.

A aplicao de cada um desses cdigos depende de aspectos operacionais e da


filosofia utilizada em projetos de circuitos aritmticos, por exemplo.
As justificativas para a utilizao de cada um deles, evidentemente, fogem ao
escopo de uma abordagem introdutria sobre sistemas numricos. Contudo, o
cdigo BCD (8421) e o Cdigo de Gray, devido a aplicaes que sero vistas a
seguir, merecem algum destaque:
O cdigo BCD (8421) representa os decimais de 0 a 9 sob a forma de 4 bits, de
modo que a converso de decimal para binrio realizada dgito a dgito.
Exemplo:
Encontrar o equivalente BCD do nmero decimal (1990,47)10 .
(N)10 = (1990,47)10 =
Da,

0 ,

(N)BCD = 0001 1001 1001 0000 , 0100 0111

23

Observa-se que os decimais acima do dgito 9, no tm correspondncia direta no


cdigo BCD, sendo representados dgito a dgito nesse cdigo. Assim, por
exemplo, os decimais 10 e 15 tero os seus equivalentes BCD, conforme
indicado abaixo:
(10)10 (0001 0000)BCD e (15)10 (0001 0101)BCD
Os estados lgicos que no tm correspondncia direta nos cdigos binrios, so
denominados estados indiferentes e, como ser visto na abordagem sobre
Minimizao de Circuitos Combinacionais e Seqenciais, tais estados so de
grande utilidade na simplificao de circuitos lgicos. O Cdigo de Gray, por seu
turno, tem a peculiaridade, como pode ser observado no quadro correspondente,
de representar os equivalentes decimais na ordem crescente ou decrescente de
modo que, de uma representao outra, somente um nico bit assume valor
diferente com relao configurao anterior. Essa caracterstica de grande
importncia em transmisso de dados e tambm em codificadores e conversores
digitais, como ser mostrado oportunamente.
A tabela apresentada abaixo mostra alguns cdigos utilizados, com o objetivo de
ilustrar a total inexistncia da relao entre determinados cdigos e o valor
numrico decimal da configurao binria propriamente dito. A razo tcnica de
diversas codificaes poder ser encontrada na literatura especializada, e em
vrios trabalhos indicados na bibliografia citada.
DEC

BIN

BCD

XS3

GRAY

BIQUINARY

0
1
2
3
4
5
6
7
8
9
10

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001

0011
0100
0101
0110
0111
1000
1001
1010
1011
1100

0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111

0100001
0100010
0100100
0101000
0110000
1000001
1000010
1000100
1001000
1010000

11

1011

1110

12

1100

1010

13

1101

1011

14

1110

1001

15

1111

1000

24

A seguir apresenta-se uma srie de exerccios propostos, objetivando-se uma


reviso geral sobre o assunto aqui discutido, enfatizando-se os aspectos
conceituais relativos aos diversos sistemas numricos.

1.3 EXERCCIOS I:

I.1 Escrever os nmeros abaixo sob a forma de representao polinominal:


a) (1001)2;

b) (0,101)2;

c) (101,02)3;

d) (1010,01)2;

e) (715)8;

f) (157,75)8;

g) (1400,320)7;

h) (100)8;

i) (78E5,A)16;

j) (0,A27)16

I.2 Converter os nmeros abaixo para o sistema numrico decimal:


a) (101)2;

b) (1101,101)2;

f) (27,36)8; g) (0,004)8;

c) (1110,01)2;

d) (0,0101)2;

e) (07,602)8;

h) (7,77)8;

i) (76FA,6B)16;

j) (6BA,3A)16

I.3 Converter os seguintes nmeros decimais em binrios:


b) 0,25;
g) 734;

a) 0,50;
f) 512,64;

c) 14,776;
h) 1010,01;

d) 9,25;
i) 7836;

e) 10,4;
j) 832,17.

I.4 Quantos algarismos binrios necessitamos para representar os decimais:


a) 256;

b) 512;

c) 2748;

d) 10844;

e) 1023;

f) 1024

I.5 Converter os seguintes decimais para as bases octal e hexadecimal.


a) 10,84;
g) 10000

b) 36;
h) 278,50;

c) 74;
i) 0,0522;

d) 700;
j) 888

e) 2700;
k) 386;

f) 8742,34;
l) 222

I.6 Converter diretamente da base binria para a base octal e hexadecimal


os seguintes nmeros:
a) 1011101;
f) 1001,1110;

b) 110001;
g) 1101001;

c) 111000;
h) 11,001;

d) 111110;
i) 0,1101;

e) 1101101;
j) 110011,10110

I.7 Em que base r o nmero 106 equivale a 577 ?


I.8 Em que base r o nmero decimal 79 equivale ao nmero 142?

25

I.9 Em que base r o decimal 22213 equivale a 106 ?


I.10 Converter os nmeros abaixo, conforme indicado:
a) (543,21)6 para a base 9;
b) (42,21)5 para a base 3;
c) (52)7 para a base 6
d) (0,00125)10 para as bases 2, 8 e 16;
e) (FEA6,FE2)16 para a base 7

26

2. INTRODUO LGEBRA BOOLEANA


Os operadores, postulados e teoremas da lgebra tradicional (no booleana), que
so aplicados de uma maneira sistemtica na engenharia, tm o sistema numrico
decimal como referncia, utilizando as suas regras bsicas para adio, subtrao,
multiplicao, diviso e outras operaes matemticas.
A lgebra booleana, que estuda as leis e processos formais de operaes
aplicados ao sistema binrio, assim denominada em homenagem ao matemtico
ingls George Boole, o qual em 1849 publicou o livro An Investigation of the
Laws of Thought, on Which are Founded the Mathematical Theories of Logic
and Probability, apresentando os princpios bsicos dessa lgebra, atravs de
uma investigao eminentemente terica.
Conforme citao de diversos autores, somente em 1938 Shannon, C.F. veio a
publicar Symbolic Analysis of Relay and Switching Circuits (Trans. AIEE, 57
(1938) p 713-723), implementando aplicaes prticas para o trabalho terico de
George Boole. As aplicaes discernidas por Shannon transformaram
radicalmente a abordagem lgica das interconexes de circuitos operados por
rels, sendo tais aplicaes rapidamente extendida aos componentes eletrnicos
tais como vlvulas termoinicas, logo em seguida aos circuitos a transistores e,
modernamente, aos circuitos integrados.
A lgebra Booleana, por se fundamentar no Sistema Binrio, o qual possui
apenas os dgitos 0 e 1, aplicvel genericamente a qualquer situao lgica
envolvendo variveis que podem assumir somente dois valores discretos,
mutuamente exclusivos entre s, tais como: [baixo, alto]; [verde, azul]; [direita,
esquerda]; [0,1]; [aberto, fechado]; [-5, +12]; [falso, verdadeiro]; [morto, vivo],
etc.
Assim, qualquer operao lgica realizada atravs da lgebra booleana que
associe, ou codifique, uma ou mais variveis como em sendo 0 ou 1, no
significa, necessariamente, que a varivel ou variveis em questo apresentem o
valor numrico 0 ou 1. Tais associaes, ou codificaes, tm uma conotao de
carater eminentemente lgico, para permitir a aplicao da lgebra booleana.
Cada vez que uma dada varivel ou uma dada situao falsa ou verdadeira,
por exemplo, pode-se associar a primeira condio a 0 e a segunda a 1.

27

O estabelecimento dessa conveno ou codificao chamada de lgica positiva,


por associar o 0 a uma situao "desfavorvel", e o 1 a uma situao "favorvel".
A conveno oposta , portanto, definida como lgica negativa. O fato de se
convencionar de uma forma ou doutra, evidentemente, no altera a sistemtica
algbrica definida por Boole. Deve-se lembrar que, o que definido como
"desfavorvel" para um observador, pode ser altamente "favorvel" para outro...

2.1 OPERADORES DA LGEBRA BOOLEANA

Os operadores fundamentais da lgebra Booleana so basicamente:: NOT, AND


e o OR.
A aplicao do operador NOT a uma varivel "X" simbolizada por X ou X.
Tal operador tem a propriedade de negar o estado lgico atribudo varivel,
como ilustra a tabela abaixo:
X

Esta tabela denominada tabela-verdade.

A tabela-verdade do operador AND aplicado s variveis "X" e "Y", cuja


operao simbolizada por (X . Y) , ou apenas XY, definida por:
X
0
0
1
1

Y
0
1
0
1

X.Y
0
0
0
1

Ou seja, o operador "AND" faz com que o resultado da sua aplicao se torne
verdadeiro (estado lgico 1), somente quando todas as variveis envolvidas
assumem valores lgicos verdadeiros.

28

A tabela-verdade do operador "OR" aplicado s variveis "X" e "Y", cuja


operao simbolizada por (X + Y) , definida por:
XY
0 0
0 1
1 0
1 1

X+Y
0
1
1
1

ou seja, o operador "OR" faz com que o resultado da sua aplicao se torne
verdadeiro quando qualquer uma das variveis assume valor lgico verdadeiro.
Vale ressaltar que as representaes (X . Y) para a aplicao do operador AND e
tambm (X + Y) para o operador OR, no tm o mesmo significado das
operaes de multiplicao e adio, respectivamente, como acontece no sistema
decimal.
Os trs operadores acima mencionados so os operadores bsicos da lgebra de
Boole. Entretanto, devido grande freqncia com que aparecem nas operaes
booleanas, outros operadores ou funes derivados deles, a partir da combinao
dos operadores NOT com os operadores AND e OR, merecem destaque, a
exemplo dos operadores NAND, NOR, XOR e XNOR, cujas tabelas-verdade
so definidas abaixo:
X
0
0
1
1

Y
0
1
0
1

NAND
1
1
1
0

NOR
1
0
0
0

XOR
0
1
1
0

XNOR
1
0
0
1

Cada um desses operadores so representados da maneira indicada a seguir, e so


o resultado da aplicao dos operadores fundamentais, conforme mostrado:
____

NAND(X,Y) = XY ou (XY) :
Ao contrrio do operador AND, a funo "NAND" faz com que o resultado da
sua aplicao se torne falso (estado lgico 0) somente quando as variveis
envolvidas assumem valores lgicos verdadeiros.
29

____
NOR(X,Y) = X+Y ou (X+Y) :
De modo anlogo, a funo "NOR" faz com que o resultado da sua aplicao se
torne falso quando qualquer uma das variveis assume valor lgico verdadeiro.
_
_
XOR(X,Y) = (X Y) = X Y + X Y ou XY + XY :
A funo XOR (ou OR-exclusivo) verdadeira quando uma das variveis
falsa e a outra verdadeira, ou seja, quando as variveis envolvidas assumem
valores lgicos diferentes, simultaneamente.
_ _
XNOR(X,Y) = X Y = X Y + X Y ou XY + X Y :
Ao contrrio da funo XOR, a XNOR (ou NOR-exclusivo) verdadeira
somente quando as variveis envolvidas assumem o mesmo valor lgico,
simultaneamente. Esta funo, por este motivo, tambm conhecida como
funo coincidncia.
Observar que a funo XNOR o resultado da aplicao do operador NOT
funo XOR; isto :
_______
X Y = X Y
2.2 CIRCUITOS EQUIVALENTES E SIMBOLOGIA C.I.'s

Antes do estudo dos postulados e teoremas da lgebra de Boole, torna-se


extremamente interessante identificar-se os circuitos equivalentes inerentes a
cada uma das funes anteriormente apresentadas. O conhecimento de tais
circuitos equivalentes auxilia sobremaneira o entendimento das relaes
algbricas, permitindo uma viso conceitual dos teoremas, postulados e
propriedades da lgebra em questo.
Para o desenvolvimento dos circuitos equivalentes, utilizam-se chaves
convencionais ou contatos de rels (X e X), uma fonte de tenso (V), um resistor
(R) e uma carga, simbolizada por uma lmpada (L). O estado lgico 1 estar
associado a: contato fechado ou bobina do rel energizada ou lmpada acesa. O
estado lgico 0 estar associado s situaes: contato aberto ou bobina do rel
desenergizada ou lmpada apagada!

30

O rel representado abaixo, como se v, possui dois contatos. Um deles encontrase permanentemente fechado (estado lgico 1) na condio de repouso, ou seja,
quando a bobina no se encontra energizada (estado lgico 0); este contato est
sendo definido como X. O outro contato (X) atua de modo oposto: encontra-se
aberto (estado lgico 0) na condio de repouso. Quando a bobina do rel passa a
estar energizada (estado lgico 1), os dois contatos mudam de estado: X que se
encontrava em estado lgico 1 (contato fechado), muda para o estado lgico 0
(contato aberto), enquanto X que se encontrava no estado lgico 0, muda para o
estado 1. O funcionamento desses contatos encontra-se representado pelos
smbolos indicados ao lado dos mesmos, no diagrama abaixo

Os operadores bsicos e os seus derivados mais utilizados, acima definidos sob a


forma de tabelas-verdade, so simulados a seguir por circuitos eltricos muito
simples, tendo ao lado o diagrama correspondente em contatos de rels e ainda a
simbologia prpria dos circuitos lgicos integrados (C.I.s), para cada uma das
portas lgicas, conforme aparecem nos diagramas eletrnicos dos circuitos
lgicos ou digitais.
_
NOT: L = A ou L = A

AND: L = A . B

31

OR: L = A + B

____
NAND: L = A . B ou L = (A . B)

_____
NOR: L = A + B ou L= (A + B)

_
_
XOR : L = A B = A . B + A . B ou L = (A. B + A . B)

32

_ _
XNOR: L = A B = A . B + A . B ou L = (A. B + A . B)

33

2.3 POSTULADOS E TEOREMAS DA LGEBRA BOOLEANA

Aps a associao de cada um dos operadores ou funes com os seus circuitos


equivalentes, torna-se muito simples a interpretao dos postulados, teoremas e
propriedades apresentados abaixo:
Postulados:
NOT
AND
OR
_
0=1
0.0=0
0+0=0
_
0.1=0
0+1=1
1=0
1.0=0
1+0=1
1.1=1
1+1=1
Teoremas e Propriedades:
1. Sobre "1" e "0"
0+X=X
1+X=1

0.X=0
1.X=X

2. Comutativas
X+Y=Y+X

X.Y=Y.X

3. Associativas
X+(Y + Z) = (X + Y) + Z

X.(Y . Z) = (X . Y).Z

4. Distributivas
(X + Y).(Z + W) = X . Z + X . W + Y . Z + Y . W
5. Idempotncia
X+X=X

X.X=X

6. Complementares
_
X+X=1

_
X.X=0
34

7. Absoro
_

X + X.Y = X

X(X + Y) = X

_
X + XY = X + Y

8. Inverso ou Teorema de Morgan


_____ _ _
_____ _ _
(X + Y) = X . Y
e (X . Y) = X + Y
9. Involuo

X=X
10. Adjacncia

X.Y+X.Y=X
11. Dualidade
Uma relao booleana pode ser transformada na sua dual da seguinte
maneira:
* Troca-se OR por AND e vice-versa e
* Troca-se 0 por 1 e vice-versa.
X+0=X
X+X=1

X.1= X
_
X.X = 0

X+Y=Y+X

X.Y=Y.X

X+XY=X

X .(X + Y) = X

_ _
X+Y=X.Y
_
X+XY=X+Y

____ _ _
X.Y=X+Y
_
X.(X + Y) = X . Y

Observa-se que relaes ou expresses lgicas


necessariamente, equivalentes do ponto de vista lgico!

35

duais

no

so,

Exemplos & Aplicaes:


Exemplo 1:

Aplicar o teorema de De Morgan funo:


_
_
_ _
F = A.B.C + A.B + A.B.C
10 Passo: Negar a funo:
__________________
_
_
_
_ _
F = A.B.C + A.B + A.B.C

20 Passo: Trocar operadores externos e negar as variveis


_____ ____ _____
_
_
_
_ _
F = (A.B.C) . (A.B) . (A.B.C)
30 Passo: Trocar operadores internos e negar variveis internas
_
_
_ _
_
F = (A+B+C) . (A+B) . (A+B+C)
_
4 Passo: Complementar a funo F, revertendo-se funo F (verdadeira)
______________________
= _
_
_
_
F = (A+B+C) . (A+B) . (A+B+C)
=
F
0

Pode-se observar que a aplicao do teorema de De Morgan permitiu a


obteno da mesma funo lgica, atravs de diferentes operadores!
Tais manipulaes algbricas podem vir a ser extremamente til na
implementao de circuitos lgicos, como ser mostrado oportunamente!!

36

Exemplo 2:

Projetar um circuito a rels para implementar a funo:


_
_ _
_
F = A.(B + C) + B.(C + D.E)
Soluo:
Aplicando-se os circuitos equivalentes, identificados anteriormente, para
implementar as funes AND e OR, observa-se que a equao proposta
representa dois ramos em paralelo. Um deles est descrito por A (B+C), o que
corresponde ao contato A em srie com dois contatos em paralelo definidos por
(B+C). Aplicando-se as mesmas consideraes para o outro ramo, tem-se o
circuito abaixo como resultado:

Exemplo 3:
Escrever a expresso lgica para o circuito abaixo, simplificar a expresso
resultante e esboar o circuito equivalente:

37

Soluo:
Considerando-se todos os ramos e caminhos, sejam de contatos em srie ou em
paralelo, para que o estado lgico presente em V seja comunicado ao ponto F,
pode-se escrever:
_ _
_
_
_
F = A.B + A.C.B + A.C.D + C.D + C.B + C.C.B
_
_
= A.B + B.(A.C+C) + A.C.D + C.D
_
_
= A.B + B.(A + C) + A.C.D + C.D
_ _
_
= A.B + A.B + B.C + A.C.D + C.D
_
_
_
= A.(B + B) + B.C + A.C.D + C.D
_
_
= A + B.C + A.C.D + C.D
_
_
= A + B.C + D.(C + C.A)
_
= A + B.C + C.D + A.D
_
_
= A.(1 + D) + C.(B + D) ou F = A + C.(B+ D)

Pelo resultado acima, o circuito equivalente pode ser representado por:

Comparando-se os dois circuitos, chega-se concluso de que esta segunda


verso possui apenas 4 contatos de rels, em lugar de 6, conforme o circuito
anterior. Isto demonstra que a manipulao algbrica de uma dada equao
lgica pode promover maior economia na implementao da funo final.

38

Exemplo 4:
_
Provar que X + X.Y = X + Y . Sabe-se que:
_
X + Y = (X + Y) . (X + X)
logo,
_
_
= X.X + X.X + X.Y + X.Y
_
= X + X.Y + X.Y ou
_
= X + X.Y + X.Y
_
_
= X.(1 + Y) + X.Y = X + X.Y

c.q.d.

Exemplo 5:
Mostrar que

_
_
X.Y + Y.Z + X.Z = X.Y + Y.Z

Sabe-se que:
_
_
X.Y + Y.Z = X.Y.(1 + Z) + Y.Z.(1 + X)
_
_
= X.Y + X.Y.Z + Y.Z + X.Y.Z
_
_
= X.Y + Y.Z + X.Z.(Y + Y)
_
= X.Y + Y.Z + X.Z
c.q.d.

Exemplo 6:
Simplificar a funo descrita pelas seguintes alternativas de circuitos, cujos
diagramas so apresentados tanto sob a forma de rels quanto sob a forma de
portas lgicas integradas:

39

A alternativa do circuito acima, em diagrama de circuitos lgicos integrados,


seria:

A partir de qualquer um dos circuitos acima, chega-se seguinte equao lgica:


_ _ _ _
F = (A + B) . (A + B.C) + A . B + A . C
Aplicando-se inicialmente a propriedade distributiva da lgebra booleana, e logo
aps diversas outras propriedades indicadas anteriormente, tem-se:
_ _ _ _
= A.A + A.B.C + A.B + B.B.C + A . B + A . C
_ _ _ _
= A + A.B.C + A.B + B.C + A.B + A.C
_ _ __
= A.(1 + B.C + B) + B.C + A.B + A.C
_ _ __
= A + A.B + A.C + B.C

40

_ _ _
_ _ _
= A + B + A.C + B.C = A + A C + B + B C
_ _
=A+C+B+C
_ _
=A+B+C+C
_
= A + B + 1 = 1.
Ou seja: A funo resultante equivale ao nvel lgico 1.
Como deve ser interpretado este resultado?

Exemplo 7:
Utilizando a simbologia dos circuitos integrados para representar as portas
lgicas, esboar o diagrama que corresponde funo:
_ _
F = A.B ( C + A.C)
Soluo:

Existe um circuito equivalente mais simples?


Soluo:
_ _
_ _
F = A.B.(C + A.C) = A.B.C + A.B.A.C
_ _
= A.B.C + A.A.B.C = A.B.C + 0
=ABC

41

Ou seja, existe um circuito mais simples, constitudo apenas por uma porta lgica
AND, com trs entradas:

Exemplo 8:
Escrever as equaes lgicas que descrevem o funcionamento dos circuitos a
seguir e, atravs da lgebra, provar que os mesmos so equivalentes!

Soluo:
Por inspeo, v-se que

_ _
F1 = A.B + A.B

__________
____ ____
_
_
F2 = (A.B) . (A.B).

Ainda, noutra alternativa de notao,


F1 = A.B + A.B

F2 = ( (A.B) . (A.B) ).

Aplicando-se o teorema de De Morgan funo F1,


________
_
_ _
F1 = A.B + A.B

____ ____
_
_
_
F1 = (A.B) . (A.B)
42

Da,
___________
____ ____
=
_
_
F1 = F1 = (A.B) . (A.B) = F2.
Concluso: Os circuitos so equivalentes.

Exemplo 9:
Prova de equivalncia entre funes atravs de "Tabelas Verdade".
Provar que:
_
C + A.C = A + C
Para a comprovao da igualdade acima, pode-se construir uma tabela verdade
como a mostrada abaixo, contendo as expresses de interesse.

A
0
0
1
1

C
0
1
0
1

_
A.C
0
0
1
0

A+C
0
1
1
1

_
C+AC
0
1
1
1

_
Por inspeo, observa-se que as colunas relativas a (C + A.C) e (A + C) so
equivalentes, comprovando-se portanto a equivalncia entre as funes.

2.4 PROPRIEDADES DAS FUNES "NAND"

_____ _____ ____


a) A.B.C = B.A.C = C.B.A
_______ ______
___
___
b) (A.B).C A.(B.C)

43

2.4.1 Expresses que envolvem apenas "NAND'S".

1. NOT
_ ____ ____
F = A=A.1 = A.A

2. AND
___
___
F = A.B = A.B

3. OR
_______

____________________

=
____
_____ _____
F = A + B F = (A . 1) . (B . 1)

2.5 PROPRIEDADES DAS FUNES "NOR"

_________ _________ ________


a) A + B + C = B + A + C = C + B + A = ...
________ ________
_____
_____
b) A + B + C A + B + C ...

44

2.5.1 Expresses que envolvem apenas "NOR'S".

1. NOT
_ _____ _____
F=A=A+0 = A+A

2. AND
F = A.B

___ _____
= ___ _ _
F = A.B = A + B

3. OR

_____
_____
F=A+B=A+B

45

2.6 PROPRIEDADES DAS FUNES XOR E XNOR

As funes XOR e XNOR apresentam algumas propriedades, mostradas abaixo,


as quais facilitam a implementao dos circuitos lgicos:
XY
00=0
01=1
10=1
11=0
0X =X
1 X = X
X X = 1
XX =0
X Y = XY
X Y = XY
(X Y) = XY
XYX.Y = X+Y
X X.Y = X.Y
X(X + Y) = X.Y

X Y = X Y
X Y = X Y
(X Y) = X Y
XYX.Y=X+Y
X X.Y = (X.Y)
X(X+Y )=(X.Y)

X X.Y = X + Y
X(X+Y)=(X.Y)

X X.Y = (X + Y)
X(X+Y)=X.Y

XY
00=1
01=0
10=0
11=1
0 X = X
1 X=X
X X = 0
XX=1

Recomenda-se, como exerccio, a demonstrao algbrica das relaes do quadro


acima, onde as variveis negadas esto representadas por X , Y, (X + Y) , etc.
Devido grande vantagem da aplicao do OR exclusivo ou da Coincidncia na
implementao dos circuitos lgicos, deve-se sempre procurar verificar se existe
a possibilidade de se expressar equaes lgicas mais complexas, atravs desses
operadores. Vale observar que existem circuitos integrados que efetuam as
operaes XOR e XNOR diretamente.

46

2.7 FORMAS CANNICAS

As expresses booleanas, envolvendo os diversos operadores, podem ser escritas


na sua forma cannica, seja em soma de produtos (S.O.P.) ou em produto de
somas (P.O.S.).
A vantagem de se exprimir uma funo booleana nessa forma reside no fato
desse tipo de expresso permitir a representao numrica da funo, facilitando
assim os procedimentos de simplificao.
As redues ou simplificaes sistemticas das funes, sobretudo atravs dos
mapas de Karnaugh e do mtodo Quine McCluskey, se baseiam nas formas
cannicas das funes a serem simplificadas. Esses procedimentos permitem
maior independncia de artifcios algbricos, e facilitam a identificao da
expresso mais simples para representar a mesma funo lgica.
Uma funo F(A,B,C,) escrita em S.O.P. ou P.O.S. tem a forma geral abaixo:

S.O.P. F(A,B,C) = (A.B.C) + (A.B.C) + ...


ou
P.O.S F(A,B,C) = (A + B + C) . (A + B + C) ...

Quando cada termo da expresso em S.O.P. ou P.O.S. contm todas as variveis


da funo, diz-se que a mesma encontra-se escrita sob a forma standard ou
completa.

2.7.1 Funes em S.O.P.

A funo
_
_ _
_ _
_
F(A.B.C.D) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D,
encontra-se escrita sob a forma standard ou completa.

47

Os termos ou parcelas da expresso so denominados termos mnimos


(MINTERMs) da funo; isto porque a funo verdadeira para o nmero
mnimo de parcelas verdadeiras presentes na expresso.
Toda S.O.P. completa pode ser escrita na sua representao numrica,
convencionando-se:
varivel falsa = 0 e varivel verdadeira = 1
A partir dessa conveno, atribuem-se valores 0 ou 1 s variveis presentes em
cada Termo Mnimo (MINTERM), e encontra-se o decimal correspondente a
cada um deles. Esses decimais definem a representao numrica da funo,
conforme indicado a seguir.
Exemplo:
_ _
_
_ _ _
F(A,B,C) = A.B.C + A.B.C + A.B.C + A.B.C
000
MINTERMs:

(0)

100

101

(4)

111

(5)

(7)

Representao numrica da funo:


F(A,B,C) =

m(0,4,5,7)

importante observar que a primeira varivel (A) a mais significativa (MSB),


e a ltima (C), a menos significativa (LSB). Esta conveno deve ser obedecida,
para que a representao numrica decimal se mantenha coerente com o seu
equivalente binrio.
Outro exemplo:
__ _ _
_ _
_ _
_
F(A,B,C,D) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D

MINTERMs:

0000

0011

0101

1101

(0)

(3)

(5)

( 13 )

48

Tem-se ento a representao numrica da funo como em sendo:


F(A,B,C,D) =

m(0,3,5,13)

Evidentemente, quando a funo est sob a forma numrica, a sua expresso


algbrica pode ser encontrada pelo processo inverso.
Exemplo:
Escrever em soma de produtos a funo representada por:
F(A,B,C,D) =

m(1,5,7,13,15)

Processo inverso:
Sabe-se que cada MINTERM tem os correspondentes binrios indicados a
seguir:

MINTERMs:
Binrio:

(1)

(5)

(7)

0001 0101 0111

(13)

( 15 )

1101 1111

logo,
_ _ _
_ _
_
_
A.B.C.D A.B.C.D A.B.C.D A.B.C.D A.B.C.D
ou
_ _
_
_
_ _ _
F(A.B.C.D) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D
Quando a S.O.P. encontra-se representada na forma incompleta, a sua
representao numrica no possvel. Para tornar possvel esta representao, a
S.O.P. incompleta deve ser transformada em completa, seja atravs de artifcios
algbricos, ou mesmo atravs de tabelas verdade, sem que o valor lgico da
funo venha a sofrer alterao.
Exemplo de S.O.P. incompleta:
_ _
F(A,B,C,D) = A.B.C
49

V-se que a varivel "D" no est presente no nico termo da funo.


Para transformar tal equao em representao completa ou standard, deve-se
incluir a varivel "D" , sem alterar o valor lgico da funo.
_
Assim, sabendo-se que D + D = 1 , e que F.1 = F, faz-se:
_ _
F(A,B,C,D) = A.B.C
__
_
F(A,B,C,D) = A.B.C .(D + D)
_ _ _
_ _
F(A,B,C,D) = A.B.C.D + A.B.C.D
ou
F(A,B,C,D) =

m (8,9)

Um modo prtico de se chegar ao mesmo resultado exemplificado abaixo:


Seja a funo incompleta:
__
F(A,B,C,D) = A.C.D
Como a varivel "B" encontra-se ausente, tem-se: 1 X 0 0 onde "X" representa
a varivel "B", a qual pode assumir apenas os valores 0 e 1 .
Assim, dois termos possveis so:
1 0 0 0 = 8 e 1 1 0 0 = 12
Logo, F(A,B,C,D) =

m(8,12), tendo como representao algbrica :

_ _ _
__
F(A,B,C,D) = A.B.C.D + A.B.C.D

50

Quando o nmero de variveis ausentes grande, o mtodo mais prtico para se


encontrar a funo completa, e a correspondente representao numrica, o da
tabela verdade como se mostra a seguir:
Seja:
_
F(A,B,C,D,E) = B.E

V-se que as variveis "A", "C" e "D" esto ausentes. Assim, cria-se ento a
tabela-verdade conforme demonstrado abaixo, fazendo-se constar todas as
configuraes binrias possveis para tais variveis e, na coluna seguinte,
acrescentam-se as variveis presentes, atribundo-se os valores lgicos
pertinentes. Os decimais equivalentes s configuraes completas, definem os
MINTERMs da funo.

Variveis
Ausentes
ACD
000
001
010
011
100
101
110
111
ou seja,

Termos
Completos
ABCDE
00001
00011
00101
00111
10001
10011
10101
10111

Decimais
Equivalentes
MINTERMS
1
3
5
7
17
19
21
23

F(A,B,C,D,E) = m(1,3,5,7,17,19,21,23).

51

2.7.2 Funes em P.O.S.

A funo abaixo encontra-se escrita sob a forma completa, em Produtos de


Somas (P.O.S.):
_
_ _
_ _ _
_
F(A.B.C.D) = (A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D)
Os termos ou parcelas da expresso so denominados Termos Mximos
(MAXTERMS) da funo; isto porque a funo verdadeira para o nmero
mximo de parcelas verdadeiras, presentes na expresso!
Todo P.O.S. completo pode ser escrito na sua representao numrica, segundo a
conveno usada anteriormente. Contudo, o procedimento para se encontrar a
representao numrica de um P.O.S. requer que se encontre o complemento de
cada uma das variveis, antes de se encontrar o decimal equivalente, como
indicado a seguir:
_
_ _
_ _ _
_
F(A,B,C,D) = (A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D).
COMPLEMENTOS: (0 1 0 1).(1 0 0 0).( 0 0 1 1).( 1 0 0 1)
MAXTERMS:

(5)

(8)

Da, ordenando em ordem crescente,


Onde

(3)
F(A,B,C,D) =

(9)

M(3,5,8,9).

representa o produto dos Termos Mximos da funo.

Outro exemplo:
_
_
F(W,X,Y,Z) = ( W + X + Y + Z )
COMPLEMENTOS:
MAXTERM:
Ou seja:

9
F(W,X,Y,Z) = M (9)

52

Tambm, como no caso da S.O.P., pode-se escrever a expresso algbrica do


P.O.S. a partir da representao numrica, lembrando-se de encontrar o
complemento antes de se reverter varivel original, como nos exemplos abaixo:
Escrever em P.O.S. a funo:
F(A,B,C,D) = M (0, 4, 7, 11, 14) . Ento,
F(A,B,C,D) = (

0000

11

14

0100 0111 1011 1110

COMPLEMENTOS:
_ _ _ _ _
_
_ _ _ _
F = (A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D)
Quando a funo est expressa sob a forma incompleta, procede-se de modo
similar ao caso da S.O.P., conforme os exemplos:
Exemplo 1:
_ _
_
F(A,B,C,D) =(A+C+D).(A+B)
F1 . F2
Pela expresso F1,
_ _
_
F1 = A+C+D+(B.B)
_ _
_ _ _
F1 = (A+C+D+B).(A+C+D+B)
_ _
_ _ _
F1 = (A+B+C+D).(A+B+C+D).

Do mesmo modo,
_
_
_
F2 = A+B+(C.C)+(D.D)
_
_ _
_
F2 = (A+B+C).(A+B+C)+(D.D)
_
_
_
_ _
_ _ _
F2 = (A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D)
53

ou seja,

F(A,B,C,D) = F1 . F2 ou
F(A,B,C,D) =
_ _
_ _ _
_
_
_
_ _
= (A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D).(A+B+C+D)

Exemplo 2:
Encontrar a representao numrica do P.O.S.
_
_
_
F(W,X,Y,Z) = (W+Y).(W+Y+Z).(X+Y+Z)
Considerando-se todos os valores lgicos possveis para as variveis ausentes em
cada termo, tem-se:
_
W+Y :

[1+X+0+Z]

{ 8, 9, 12 ,13 }
_
W+Y+Z :

[0+X+1+0]

{ 2, 6 }
_
X+Y+Z :

[W+0+0+1]
{ 1, 9 }
F(W,X,Y,Z) = M (1,2,6,8,9,12,13)
Exemplo 3:
_
F(A,B,C,D) = A+C
Pelo mtodo da tabela-verdade:
BD

A B C D

MINTERM

00

0010

Pelos termos mnimos resultantes

01

0011

tem-se

10

0110

11

0111

Complementos !:

54

F(A,B,C,D)= M (2,3,6,7)

2.8 Relao entre P.O.S. / S.O.P. e Tabelas-Verdade

Seja a tabela verdade da funo XOR abaixo:


DEC
0
1
2
3

AB
00
01
10
11

F
0
1
1
0

Como nos casos anteriores, a tabela-verdade especifica a funo F como sendo


verdadeira para as situaes definidas pela equao:
_
_
F(A,B) = A.B + A.B ,
cuja representao numrica :
Binrio

01

10

MINTERMs 1

ou
_

F(A,B) = A.B + A.B =

m(1,2).

A mesma tabela-verdade especifica a funo F como falsa para as situaes


definidas por:
_____ _ _
F(A,B) = A.B + A.B.
Aplicando-se o teorema de De Morgan expresso acima tem-se:
_____ _________
_____ _ _
F(A,B) = A.B + A.B
ou
___ ___
__
F(A,B) = (A.B) . (A.B)
_ _
F(A,B) = (A+B) . (A+B).

55

Esta ltima expresso a representao da funo sob a forma de P.O.S.!


Encontrando-se a sua representao numrica, tem-se:
_ _
F(A.B) = (A+B).(A+B)
Complemento
MAXTERMs

0 0 . 1 1
0
_ _

ou

F(A,B) = (A+B).(A+B) = M (0,3).


_ _
Observa-se, entretanto, que a expresso F(A,B) = (A+B).(A+B) pode ser
desenvolvida algebricamente do seguinte modo, a partir da propriedade
distributiva:
_
_ _
_
_ _
F(A,B) = (A+B).(A+B) = A.A + A.B + A.B + B.B
_ _
= 0 + A.B + A.B + 0 .
Da,
_
_
_ _
F(A,B) = (A+B).(A+B) = A.B + A.B.

Ou seja:
F(A,B) = M (0,3) = m(1,2).
Isto significa que a expresso definida a partir da funo verdadeira, em S.O.P.,
equivalente definida a partir da funo falsa, em P.O.S.
Logo, tanto faz se exprimir uma mesma funo a partir dos 1's em S.O.P., quanto
a partir dos 0's em P.O.S.
Vale dizer que as expresses so equivalentes entre s, podendo uma delas
ser transformada na outra, atravs da aplicao do teorema de De Morgan e
outras propriedades algbricas!
56

Observa-se ainda que os nmeros decimais que no constam da S.O.P. so os


que definem o P.O.S. e vice-versa. Isto porque, quando todas as configuraes
entre as variveis so examinadas e definem os valores lgicos de determinada
funo, os termos que no so 1's, necessariamente sero 0's e vice-versa. Ou
seja, o que no corresponde a termo mnimo (MINTERM) , necessariamente,
termo mximo (MAXTERM) da funo.
Outro exemplo:
- Seja a funo F(X,Y,Z) definida pela tabela verdade a seguir:
DEC
0
1
2
3
4
5
6
7

XYZ
000
001
010
011
100
101
110
111

F
1
0
1
0
1
1
0
1

Provar que as expresses em S.O.P e P.O.S. da funo, assim definida, so


equivalentes entre s.
Soluo:
A tabela-verdade indica as expresses em S.O.P. e P.O..S., respectivamente:
F(X,Y,Z) SOP = m(0,2,4,5,7)

F(X,Y,Z) POS =

M(1,3,6)

Partindo-se da primeira expresso, pode-se escrever que:


F(X,Y,Z) =

m(0,2,4,5,7)

F(X,Y,Z) SOP
F(X,Y,Z) SOP

_ _ _ _
_
_ _
_
= X.Y.Z + X.Y.Z + X.Y.Z + X.Y.Z + X.Y.Z
_ _ _ _
_
_ _
_
_
= X.Y.Z + X.Y.Z + X.Y.Z + ( X.Y.Z + X.Y.Z ) + X.Y.Z

57

_ _ _
_ _
_
= X Z.(Y+Y) + X.Y(Z + Z) + X.Z(Y + Y)
__
_
= X.Z + X.Y + X.Z
_
_ _
F(X,Y,Z) SOP = X.Z + X.Y + X.Z

Da mesma maneira,
_
_ _ _ _
F(X,Y,Z) POS = (X+Y+Z).(X+Y+Z).(X+Y+Z)
_
_ _ _
= (X+Z).(Y+Y).(X+Y+Z)
_ _ _
= (X+Z).(X+Y+Z)
_
_
_ _ _ _
_
= X.X + X.Y + X.Z + X.Z + Y.Z + Z.Z
_ __ _ _
= X.Y + X.Z + Y.Z + X.Z
_ _ _
= (X.Y + X.Z) + X.Z
_ _
_
F(X,Y,Z) POS = X.Z + X.Y + X.Z
Pode-se observar, ento, que as expresses em S.O.P. e P.O.S resultam na
mesma equao lgica, provando-se a equivalncia entre as mesmas.

58

Exerccio:
Seja a funo definida pela tabela verdade abaixo:
DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

ABCD
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

A funo verdadeira para:

S.O.P.
_ _
_
_
A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D
0101

0111

1101

1111

(5)
(7)
(13)
(15)
.
. . F(A,B,C,D) = m(5,7,13,15)

59

F
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1

A partir dos zeros tem-se:


P.O.S.
F(A,B,C,D) = M (0,1,2,3,4,6,8,9,10,11,12,14)
Como exerccio, provar que as expresses em S.O.P e P.O.S. so equivalentes.
Apenas para fixar idias, apresenta-se o quadro a seguir, para uma funo
F(A,B,C,D), onde especificam-se os valores lgicos e as formas de representar os
MINTERMs e os MAXTERMs de uma funo de quatro variveis:
DEC
0
1

ABCD
0000
0001

F
0
0

0010

MINTERMS MAXTERMS
A + B + C+ D
A B C D
A B C D

A + B + C+ D

A B C D

A + B + C+ D

0011

A B C D

A + B + C+ D

0100

A B C D

A + B+ C+ D

0101

A B C D

A + B+ C+ D

0110

A B C D

A + B + C+ D

0111

A B C D

A + B + C+ D

1000

A B C D

A + B + C+ D

1001

A B C D

A + B + C+ D

10

1010

A B C D

A + B + C+ D

11

1011

A B C D

A + B + C+ D

12

1100

A B C D

A + B+ C+ D

13

1101

A B C D

A + B+ C+ D

14

1110

A + B + C+ D

15

1111

A B C D
A B C D

A + B + C+ D

A funo "F" definida como acima ser representada por:


F(A,B,C,D) = m(2,3,4,6,10,11,13) = M (0,1,5,7,8,9,12,14,15), ou seja:
_ _ _ _ _
_ __ _
_
_ _
_
_
F = A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D
F(A,B,C,D) = M (0,1,5,7,8,9,12,14,15).

60

Ou seja:
_
_
_
F(A,B,C,D) = (A+B+C+D).(A+B+C+D).(A+B+C+D).
_
_
_ _ _ _
(A+B+C+D).(A+B+C+D).(A+B+C+D).
_ _
_ _ _
_ _ _ _
(A+B+C+D).(A+B+C+D).(A+B+C+D).
Atravs de manipulaes algbricas, conforme procedimentos anteriormente
mostrados, pode-se provar que as expresses em S.O.P e P.O.S so equivalentes;
ou seja:
F(A,B,C,D) =

m(2,3,4,6,10,11,13) = M (0,1,5,7,8,9,12,14,15)

Observa-se, mais uma vez, que os decimais ausentes na representao em


MINTERM's so os que constam da representao em MAXTERM's.

A seguir, uma srie de exerccios propostos apresentada, objetivando a


aplicao dos diversos conceitos relativos ao presente captulo.

61

2. 9 EXERCCIOS II

1. Verificar se as igualdades abaixo so verdadeiras ou falsas:


_
a) (X+Y).(X+Z) = X+Y.Z;
b) X + X.Y = X + Y;
_
_
_ _
_
c) X.Y+Y.Z+X.Z = X.Y+Y.Z; d) X.Y + X+Y = X;
_
_
_ _ _
_
_ _
_ _
e) (X+Y).(X.Y) = X.Y;
f)(X.Y+X.Y)+(X.Y+X.Y)= X.Y+X.Y
2. Simplificar algebricamente as expresses:
_ ____
______
a) (X+Z).(Z+W.Y) + (VZ+W.X).(Y+Z);
_ _ _ _
b) (X+Y).(X+Z);
_
c) X.Y + Y(W.Z + W.Z);
_
d) X.Y + ZW + Z + XW(Y+Z)
3. Transformar as expresses abaixo nas equivalentes apenas em NAND'S.
_
_
__ _
a) F = A B C + A B + A.B.C;
__ _
_
_ _
_ _
b) F = A B C D + A B C D + A B C D + A B C D ;
_ _ _ _
_ _ _ _
c) F = A B (C D + C D) + (A + B)C D + A C ;
_ _
d) F = A B + A B + A B
4. Obter a tabela verdade para as funes:
_ _
a) F = XY + XY + YZ ; b) M = X.Y + X+Y
5. Encontrar o complemento das expresses abaixo e simplific-los:
_ _
_
_
a) P = (BC + AD) (AB + CD) ;
__
__
b) Q = (AB.A).(AB.B)

62

6. Verificar se so verdadeiras as expresses:


a) ABC = ABC ;
c) ABC = ABC ;

b) ABCD = ABCD;
___
_
___
d) ABC = A BC

7. Encontrar as expresses mais simples em S.O.P. e P.O.S. para:


a) F(A,B,C) = m(1,3,7) ;
b) F(A,B,C) = M(1,3,4,7);
c) F(A,B,C,D) = m(0,1,2,3,4,6,12);
d) F(A,B,C,D) = m(0,1,2,3,4,11,12,13,14,15);

m(0,1,2,9,13,16,18,24,25).
f) F(A,B,C,D,E) = M(3,5,6,8,9,12,13,14,19,22,24,25,30);
e) F(A,B,C,D,E) =

8. Simplificar as expresses indicadas abaixo:


_ __ _
_
_ _
a) F(A,B,C,D) = A B D + A C D + A B C + A B C D + A C D
_ _ _
_ _ _ _ _
b) F(A,B,C,D,E) = A C D E + A C D E + D E + A D E;
c) F(W,X,Y,Z) = m(0,2,8,10);
d) F(W,X,Y,Z) = m(1,5,9,13);
e) F(W,X,Y,Z) = m(0,1,2,3,8,9,10,11).
9. Construir a tabela verdade para as seguintes funes:
a) F(A,B) = m(0,1,3);
b) F(A,B,C) = m(2,5,6,7);
c) F(A,B,C,D) = m(0,1,4,6,9,11,13,14);
d) F(A,B,C,D,E) = M(0,2,9,14,15,17,23,26,28,30,31).
10. Transformar as expresses abaixo nas equivalentes apenas em NOR'S.
_
_
_ _ _
a) F = A B C + A B + A.B.C;
_ _ _
_
__
_ _
b) F = A B C D + A B C D + A B C D + A B C D ;
__ _ _
_ __
_
c) F = A B (C D + C D) + (A + B)C D + A C ;
63

11. A partir das tabelas-verdade abaixo, expressar a funo "F" sob as formas
de Soma de Produtos e Produtos de Somas, e provar a equivalncia entre as
mesmas:
a)
0
0
0
0
1
1
1
1
X
0
0
1
1
0
0
1
1
Y
0
1
0
1
0
1
0
1
Z
0
0
1
1
0
1
1
0
F
b)
W
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

X
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

Y
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

Z
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

F
0
1
0
0
0
1
1
1
0
0
0
1
1
0
0
0

12. Para o circuito abaixo, encontrar o seu equivalente com portas lgicas do tipo
NAND e, depois, repetir o exerccio para portas do tipo NOR.

64

3 MINIMIZAO DE CIRCUITOS LGICOS

Como se depreende do captulo anterior, os circuitos lgicos realizam


fisicamente as equaes booleanas, ou equaes lgicas. Tais equaes so
determinadas a partir das relaes que as variveis binrias guardam entre s para
determinarem uma funo especfica. Essas relaes so normalmente definidas
pelo enunciado de um problema ou por tabelas-verdade.
A minimizao dos circuitos que executam, na prtica, as funes assim
definidas, de grande importncia por propiciar a reduo do nmero de
dispositivos a serem utilizados, reduzir o tempo necessrio ao desempenho
previsto, aumentar a confiabilidade e, obviamente, a economia, na
implementao dos circuitos ou sistemas lgicos.
Os mtodos mais usados na minimizao de funes so:
*
*
*
*

mtodo algbrico;
mapas de Karnaugh (MK);
mtodo tabular de Quine McCluskey e
algoritmos computacionais.

O mtodo algbrico aplica-se sobretudo quando o nmero de variveis pequeno


e as relaes entre as mesmas so facilmente identificveis. Neste caso, aplicamse os postulados e teoremas da lgebra de Boole para se encontrar expresses
mais simples, como vimos anteriormente.
A minimizao atravs dos mapas de Karnaugh, baseada no teorema da
adjacncia (XY + XY = X), muito eficiente, simples e prtica, permitindo a
eliminao de grande nmero de manipulaes algbricas. A sua utilizao
recomendada quando a funo depende de at cinco variveis, embora seja
possvel a sua aplicao a funes que dependam de at seis variveis.
O algoritmo devido a Quine & McCluskey, permite a busca exaustiva de
MINTERMs ou MAXTERMs adjacentes, e se presta identificao da funo
mais simples para grande nmero de variveis. Embora no exista uma limitao
formal quanto ao nmero de variveis da funo, para a sua aplicao, os seus
procedimentos repetitivos torna-o enfadonho para a sua execuo de modo no
mecanizado.

65

Os mtodos computacionais seriam os preferidos para a minimizao de funes


de grande nmero de variveis. Contudo, medida que o grau de complexidade
de um circuito aumenta, deve ser considerada a alternativa da utilizao de
circuitos integrados de mais elevado grau de integrao (MSI, LSI, ou VLSI), a
exemplo de memrias programveis, multiplexadores, decodificadores e
microprocessadores, os quais permitem maior eficincia em menor espao fsico,
sem depender diretamente da simplificao de funes lgicas elementares.
excesso da simplificao algbrica, os demais procedimentos s podem ser
aplicados a funes definidas de forma standard ou completa, em S.O.P. ou
P.O.S.
O processo mais utilizado para a minimizao dos circuitos de reduzido grau de
integrao (SSI), os quais so extremamente necessrios inclusive para a
interligao dos circuitos de maior grau, conhecido como Mapas de Karnaugh,
cuja anlise o principal objetivo do presente captulo.

3.1 MAPAS DE KARNAUGH (MK)

M. Karnaugh criou, em 1953, uma representao grfica que ordena e mostra os


MINTERMs e os MAXTERMs das funes lgicas de uma forma geomtrica
tal que a aplicao do teorema da adjacncia, citado anteriormente, se torna bvia
por inspeo.
Os Mapas de Karnaugh so aplicados sobretudo aos circuitos lgicos
combinacionais, ou queles cuja funo de sada depende nica e exclusivamente
dos estados lgicos das variveis de entrada, definidos em termos de 0s e 1s,
embora tambm possam ser aplicados a circuitos seqenciais.
Esse procedimento se caracteriza pela representao grfica de funes S.O.P. ou
P.O.S., quando escritas de modo standard ou completo, conforme as definies
apresentadas no captulo anterior.
Os nmeros internos aos lugares geomtricos, representados nos MKs,
correspondem aos MINTERMs ou aos decimais equivalentes s configuraes
binrias indicadas pelos nveis lgicos das variveis, respeitando-se a hierarquia
da varivel mais significativa. Os estados lgicos das variveis, que esto
representados em todos os mapas, obedecem a uma distribuio tpica do cdigo
de Gray. Por esta razo, os lugares geomtricos se distribuem de modo
66

contnuamente adjacente tal que, somente uma nica varivel muda o seu estado
lgico, em relao aos lugares geomtricos vizinhos. Esses lugares geomtricos,
por sua vez, so definidos como estados adjacentes, identificando as variveis s
quais o teorema da adjacncia pode ser aplicado.
Os mapas criados para representar as funes at 4 variveis so mostrados a
seguir, com os seus MINTERMs e respectivas adjacncias:
Mapa de Karnaugh para 2 variveis:

MINTERM
0
1
2
3

ADJACNCIAS
1,2
0,3
0,3
1,2

As adjacncias apontadas para cada termo mnimo significam que o MINTERM


em questo tem os outros termos mnimos como adjacentes, ou aqueles com os
quais o dado MINTERM satisfaz a equao XY + XY = X. Por exemplo, o
MINTERM 0 mantm a condio de adjacncia com os termos mnimos 1 e 2.
Isto quer dizer que as seguintes expresses so vlidas:
Entre os MINTERMs 0 e 1 :

A B+ A B = A

Entre os MINTERMs 0 e 2 :

A B+ A B= B

Do mesmo modo, o MINTERM 3 mantm a condio de adjacncia com os


termos mnimos 1 e 2. Isto quer dizer que as seguintes expresses tambm so
vlidas:

67

Entre os MINTERMs 3 e 1 :

A B+ A B=B

Entre os MINTERMs 3 e 2 :

A B + A B = A

Naturalmente, o mesmo se aplica a todos os outros casos, e para qualquer nmero


de variveis constantes do Mapa de Karnaugh, desde que os termos envolvidos
apresentem configuraes de bits que diferem entre s por apenas um nico bit,
como o caso, por exemplo, das expresses A B C D e A B C D que diferem
apenas quanto varivel D.
Mapa de Karnaugh para 3 variveis:

MINTERM

0
1
2
3
4
5
6
7

ADJACNCIAS

1, 2, 4
0, 3, 5
0, 3, 6
1, 2, 7
0, 5, 6
1, 4, 7
2, 4, 7
3, 5, 6

Mapa de Karnaugh para 4 variveis:

68

MINTERM

0
1
2
3
4
5
6
7

ADJACNCIAS

1, 2, 4, 8
0, 3, 5, 9
0, 3, 6, 10
1, 2, 7, 11
0, 5, 6, 12
1, 4, 7, 13
2, 4, 7, 14
3, 5, 6, 15

MINTERM

8
9
10
11
12
13
14
15

ADJACNCIAS

0, 9, 10, 12
1, 8, 11, 13
2, 8, 11, 14
3, 9, 10, 15
4, 8, 13, 14
5, 9, 12, 15
6, 10, 12, 15
7, 11, 13, 14

Os Mapas de Karnaugh para 5 e 6 variveis so indicados a seguir, deixando-se


ao leitor o exerccio da identificao das adjacncias aos diversos termos
mnimos do MK para 5 variveis, e a identificao inclusive da expresso
algbrica correspondente a cada um deles, no caso de seis variveis.
Mapa de Karnaugh para 5 variveis:

69

Neste caso, utilizam-se dois mapas de 4 variveis fazendo com que um deles seja
integralmente adjacente ao outro. A varivel A, que a mais significativa, falsa
no primeiro MK e verdadeira no segundo. Assim, cada lugar geomtrico do
segundo mapa adjacente ao lugar correspondente do primeiro e vice-versa, uma
vez que todos eles tm apenas uma nica varivel (A) que muda de valor lgico.
Pelo exposto, ento, o MINTERM 2, por exemplo, adjacente ao 18, o 31 ao 15,
o 8 ao 24, e assim por diante.
Mapa de Karnaugh para 6 variveis:
O Mapa de Karnaugh para 6 variveis construdo por 4 MKs de 4 variveis. A
exemplo do caso para 5 variveis, os mapas so distribudos de modo que cada
um deles se apresenta como adjacente ao outro. Observa-se que o primeiro MK
tem a condio das variveis A e B serem ambas falsas (AB). O MK vizinho j
apresenta a condio A falsa e B verdadeira (AB) e, logo a seguir, (AB) e (AB),
tal que a seqncia completa faz com que todos os MKs sejam adjacentes entre
s, excetuando-se aqueles que se encontram em diagonal, justamente como
acontece no caso dos MINTERMs 1, 2 e 0, 3 no MK para 2 variveis. Da, os
MINTERMs 7, 23, 55 e 39 - por exemplo - serem adjacentes entre s.

70

71

3.2 RELAO ENTRE TABELAS-VERDADE E MKs

As tabelas-verdade, definidas a partir das relaes que as variveis guardam com


determinada funo lgica, definem os MINTERMs e MAXTERMs da funo.
Em se conhecendo a tabela-verdade, ou mesmo apenas a representao numrica
de qualquer funo, pode-se represent-la diretamente no Mapa de Karnaugh,
conforme mostram os exemplos abaixo:
3.2.1 Para duas variveis:
Uma funo definida pela tabela-verdade:
DEC
0
1
2
3

A
0
0
1
1

B
0
1
0
1

F
1
0
0
0

gera a expresso em S.O.P


F (A . B) = A B , com a representao numrica:
F (A . B) =

m(0)

A mesma tabela-verdade pode gerar ainda uma funo P.O.S. do tipo:


F(A, B) = ( A + B )( A + B )( A + B )
ou,

F(A, B) =

M (1,2,3).

Da, o Mapa de Karnaugh correspondente pode ser facilmente construdo:

72

3.2.2 Para trs variveis:


Uma funo, definida diretamente sob a forma numrica, por exemplo:
F (A B C) = m (0, 7), gera a equao lgica: F (A B C.) = A B C + A B C
A equao correspondente em P.O.S : F (A, B, C) =
tendo por expresso algbrica:

M(1, 2, 3, 4, 5, 6),

F(A,B,C)=( A + B + C)( A + B + C )( A + B + C)( A + B + C )( A + B + C)( A + B + C )

De qualquer uma das equaes acima chega-se facilmente tanto tabela-verdade


quanto ao Mapa de Karnaugh correspondentes:

0
1
2
3
4
5
6
7

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

73

F
1
0
0
0
0
0
0
1

3.2.3 Para quatro variveis:

Para a funo F(A,B,C,D) = M (0, 1, 2, 3, 4, 6, 8, 9, 10, 11, 12, 14) ou


F(A,B,C,D) = m (5, 7, 13, 15), tem-se, respectivamente, a tabela-verdade:

DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

e o MK correspondente:

74

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

F
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1

Obviamente, basta que se possa representar uma funo qualquer na sua forma
numrica em S.O.P., para se ter a indicao de em que termos mnimos do MK
deve-se colocar o valor lgico 1, que corresponde s configuraes binrias para
as quais a funo verdadeira. Quando se tem a expresso numrica em P.O.S.,
os termos mximos indicam onde se deve colocar o valor lgico 0 que
corresponde s configuraes binrias para as quais a funo falsa.
As tabelas-verdade e os respectivos mapas de Karnaugh para cinco e seis
variveis deixam de ser mostrados, devido grande extenso dos mesmos. As
suas aplicaes sero vistas oportunamente, a partir das suas representaes
numricas, por serem muito mais compactas.

3.3 MINIMIZAO OU SIMPLIFICAO DE FUNES ATRAVS DE MKs

Conhecendo-se o teorema da adjacncia e a filosofia da construo dos Mapas de


Karnaugh, as simplificaes mostradas a seguir se tornam bvias, por inspeo,
sem a necessidade de desenvolvimentos ou manipulaes algbricas:
Exemplo 1: Simplificar a funo abaixo, definida pelas expresses em S.O.P
e P.O.S.:
S. O. P.: FSOP(A,B) = m(0,1)
F = A B + A B = A ( B+ B ) = A
Em P.O.S.: FPOS(A,B) = M(2,3),

75

resultando em:
F = ( A + B )( A + B ) = A A + A B + A B + B B
F = A( 1 + B + B ) = A
Evidentemente, a simplificao realizada acima, tanto em S.O.P. quanto em
P.O.S., foi levada a termo atravs de manipulaes algbricas, apresentando o
resultado F= A em qualquer dos dois casos.
O Mapa da Karnaugh correspondente funo dada, pode ser construdo
conforme indicado:

Vale observar, no MK em questo, que os termos adjacentes 0 e 1 esto


indicados por um enlace para facilitar a sua identificao. Este enlace quer dizer
que entre os elementos ou termos mnimos 0 e 1, pode-se aplicar o teorema da
adjacncia. V-se que a funo em soma de produtos (S.O.P.) verdadeira para
os termos mnimos adjacentes m{0 e 1}, situao em que apenas a varivel B
muda de estado. Considerando-se que a mudana de estado de B no afeta o
valor lgico da funo, conclui-se que a mesma no depende desta varivel.
Assim, como A se mantm constante com o valor lgico 0, na situao
identificada pelo enlace, o resultado da simplificao :
FSOP = A
Tal concluso, diretamente do MK, equivale aplicao do teorema da
adjacncia, por inspeo.
Evidentemente, o mesmo procedimento pode ser utilizado a partir dos termos
mximos para a construo da expresso simplificada sob a forma de produtos de
somas (P.O.S.), a partir dos zeros da funo, lembrando-se de complementar as
variveis, como visto no captulo anterior. Neste caso especfico, a funo se
mantm falsa para os termos mximos adjacentes M{2 e 3}, quando apenas a
varivel B muda de estado. Considerando-se que a mudana de estado de B no
afeta o valor lgico da funo, conclui-se, como no caso acima, que a mesma no
76

depende desta varivel. Assim, como A se mantm constante com o valor lgico
1, esta varivel complementada, e o resultado da simplificao igualmente:
FPOS = A
Mais uma vez, tal concluso, diretamente do MK, equivale aplicao do
teorema da adjacncia, por inspeo.
Exemplo 2: Simplificar a funo: FSOP(A,B,C) = m(0,1,4,5)
ou

F= A B C+ A B C + A B C+ A B C ,

cujo MK pode ser construdo a partir apenas da expresso numrica como:

A partir de consideraes similares s do exemplo anterior, nota-se no MK acima


que a funo S.O.P. se mantm verdadeira para os termos mnimos adjacentes
m{0,1,4 e 5}, como indicado pelo enlace. Assim, as variveis A e C mudam os
seus valores lgicos de 0 para 1 sem afetarem o valor lgico da funo, enquanto
a varivel B se mantm falsa. Conclui-se, ento, que a funo depende apenas da
varivel B falsa. Da, a expresso simplificada corresponde simplesmente a:
FSOP(A,B,C) = B
Quanto expresso em P. O. S., da mesma funo, FPOS(A,B,C) = M(2,3,6,7)
,
os termos mximos adjacentes mostram apenas a varivel B como verdadeira a
qual, aps complementada, resulta em:
FPOS(A.B.C) = B
Exemplo 3: Simplificar a funo: FPOS(A,B,C) = M(3,6,7)

77

Os MAXTERMs situados em 3, 6 e 7 indicam o MK:

A partir de consideraes similares s anteriores, tm-se os seguintes termos


adjacentes, com as suas respectivas simplificaes:

M{3, 7} = ( B + C) e M{6, 7} = ( A + B )
ou seja:
FPOS = ( B + C).( A + B ).

Em termos de S.O.P., tem-se:


m{0, 2} = ( A C ) ou
m{0,1,4 e 5} = ( B )
correspondendo ento a:
FSOP = A C + B

sempre interessante estar-se atento para o fato de que as expresses em


S.O.P. so equivalentes quelas em P.O.S., para a mesma funo, mesmo na
forma simplificada, como pode ser mostrado algebricamente.

Exemplo 4: Simplificar a funo:


FSOP(A,B,C,D) = m(1,5,6,7,11,12,13,15)
78

A partir do MK abaixo, observando-se os termos mnimos adjacentes, conforme


os enlaces indicados, possvel chegar-se, por inspeo, s simplificaes
explicitadas:

tem-se:
m{1 e 5} = A C D

m{6 e 7} = A B C

m{12 e 13} = A B C

m{11 e 15} = A C D , resultando em:

FSOP(A,B,C,D) = A C D + A B C + A B C + A C D .
A anlise da expresso em P.O.S. pode ser realizada a partir dos termos mximos
adjacentes:
M{10 e 14} = A + C+ D ;
M{8 e 9} = A + B + C ;

M{2 e 3} = A + B + C
M{0 e 4} = A + C + D , resultando em:

FPOS = ( A + C+ D ).( A + B + C).( A + B + C ).( A + C + D )


Observao importante: Todas as vezes em que se procura a identificao de
adjacncias nos Mapas de Karnaugh, deve-se iniciar o processo a partir dos
termos que se encontram isolados (sem termos adjacentes). Depois, procuram-se
enlaces entre termos que sejam adjacentes apenas a um nico outro termo. Em
seguida procura-se identificar os que se combinam 2 a 2, 4 a 4, 8 a 8 etc. Esta
regra importante para se evitar a incluso de termos no essenciais ou termos
79

redundantes. Para ilustrar uma situao tpica de gerao de termo redundante,


pode-se tomar o exemplo recm-analisado:
FSOP(A,B,C,D) = m(1,5,6,7,11,12,13,15)
Observando-se mais uma vez o MK correspondente:

Nota-se que os termos m(5, 7, 13, 15) so todos adjacentes entre si, gerando um
termo simplificado reconhecido como BD o qual, por sua vez, um termo
redundante; isso porque, absolutamente todos os MINTERMs considerados
nessa simplificao j se encontravam, anteriormente, com enlaces ou
adjacncias com outro termo. Embora um mesmo termo mnimo ou mximo
possa participar de diversos enlaces ou adjacncias, sempre que todos os termos
envolvidos j se encontram participando de enlaces outros, essa simplificao
gerar um termo redundante, desnecessrio composio da equao lgica.
Para demonstrar tal afirmativa, pode-se tomar a equao simplificada
anteriormente:
FSOP(A,B,C,D) = A C D + A B C + A B C + A C D .
e acrescentar-se ento o termo BD:
FSOP(A,B,C,D) = A C D + A B C + A B C + A C D + B D .
A incluso desse termo na equao permite o seguinte desenvolvimento
algbrico:
80

FSOP(A,B,C,D) =. ( A C + A C) B + ( A C + A C ) D + B D .
Tomando-se como referncia o que foi definido no Capitulo II, esta expresso
equivale evidentemente a:
____
FSOP(A,B,C,D) =. B(AC) + (AC)D + BD.
Lembrando-se que a relao XY + Y Z + XZ = XY + Y Z verdadeira,
conforme demonstrado ainda no Captulo II - Exemplo 5 -, reconhece-se ento
que o termo B associado a X, e o termo D associado a Z, permite provar que o
termo BD no necessrio para definir a equao lgica em questo.
sempre possvel demonstrar-se algebricamente que um termo redundante no
contribui para o estabelecimento de uma equao lgica.
Exemplo 5: Simplificar a funo:
FSOP(A,B,C,D) = m(0,5,7,8,13,15)
= FPOS(A,B,C) = M(1,2,3,4,6,9,10,11,12,14)

O MK para a funo em questo :

81

Os MINTERMs apresentam as seguintes adjacncias com as simplificaes


resultantes:
m{5,7,13,15} = B.D

m{0 e 8} = B C D

FSOP(A,B,C,D) = B.D + B C D
Em termos de P.O.S.:
M{1,3,9,11} = ( B + D )
M{4,6,12,14} = ( B + D )
M{2,6,14,10} = ( C+ D )
FPOS(A,B,C) = ( B + D ) + ( B + D ) + ( C+ D ).
Exemplo 6: Simplificar a funo:
FPOS(A,B,C,D) = M(1,3,4,5,6,7,8,9,13,15)
= FSOP (A,B,C,D) = m(0,2,10,11,12,14)
Partindo-se das definies chega-se ao MK:

Da,

82

M{8,9} = A + B +C
M{1,3,5,7} = A + D
M{5,7,13,15} = B + D
M{4,5,6,7} = A + B ou
FPOS = ( A + B +C )+ (A + D ) + ( B + D ) + (A + B )
Quanto FSOP(A,B,C,D),
m{12,14} = A B D
m{0, 2} = A B D
m{10,11} = A B C
FSOP(A,B,C,D) = A B D + A B D + A B C
Exemplo 7: Simplificar a funo:
FPOS(A,B,C,D) = M(1,3,4,5,6,7,9,10,11,14,15) ou
FSOP(A,B,C,D) = m(0,2,8,12,13). Da o MK:

83

Os termos adjacentes so:


M{10,11,14,15} = A + C
M{4,5,6,7} = A + B
M{1,3,9,11} = B + D

isto :

FPOS(A,B,C,D) = ( A + C).( A + B ).( B + D )


Para a FSOP(A,B,C,D),
m{0,2} = A B D
m{12,13} = A B C
Neste caso particular, observa-se que o termo mnimo 8 adjacente ao 0 e
tambm ao 12, podendo gerar duas simplificaes distintas, embora somente uma
delas venha a ser considerada pois, as duas expresses so igualmente vlidas na
equao, permitindo, assim, duas solues para o problema.
As adjacncias m{0 e 8} resultam na simplificao B C D , enquanto as
adjacncias m{8 e 12} em A C D , possibilitando:
FSOP(A,B,C,D) = A B D + A B C + B C D

ou

FSOP(A,B,C,D) = A B D + A B C + A C D
Nos casos em que mais de uma soluo se torne possvel, no processo de
simplificao, deve-se escolher a soluo que apresente menor nmero de
inversores, ou que contenha portas lgicas convenientes, levando-se em
considerao a disponibilidade das mesmas em laboratrio, ou outras
consideraes ditadas pelo bom senso do projetista.
Exemplo 8: Simplificar a funo:
FSOP(A,B,C,D,E) = m(3,5,6,8,9,12,13,14,19,22,24,25,30)

ou

FPOS(A,B,C,D,E) = M(0,1,2,4,7,10,11,15,16,17,18,20,21,23,26,27,28,29,31)

84

Como nos casos anteriores, podem ser identificadas as seguintes adjacncias com
as respectivas simplificaes:
Para FSOP(A,B,C,D,E):
m{5,13} = A C D E

m{3,19} = B C D E

m{8,9,12,13} = A B D m{6,14,22,30} = C D E

m{8,9,24,25} = B C D

Isto resulta na expresso:


FSOP(A,B,C,D,E) = A B D + A C D E + B C D E + C D E + B C D
Consideraes similares aplicadas FPOS (A,B,C,D,E) permitem identificar as
adjacncias e simplificaes a seguir:
M{0,4,16,20} = (B + D + E)

M{0,1,16,17} = (B + C + D)

M{2,10,18,26} = (C + D + E)

M{11,15,27,31} = ( B + D + E )

M{20,21,28,29} = ( A + C + D )

M{7,15,23,31} = ( C+ D + E )

FPOS(A,B,C,D,E) =
= (B+D+E).(B+C+D).(C+ D +E).( B + D + E ).( A + C + D ).( C+ D + E )
85

ou

Exemplo 9: Simplificar a funo:


FSOP(A,B,C,D,E) = m(0,1,4,5,6,11,12,14,16,20,22,28,30,31) ou
FPOS(A,B,C,D,E) = M(2,3,7,8,9,10,13,15,17,18,19,21,23,24,25,26,27,29)
O Mapa de Karnaugh, para a funo definida acima corresponde a:

Para FSOP(A,B,C,D,E), possvel a identificao das adjacncias e suas


respectivas simplificaes:
m{11} = A B C D E
A presena de todas as variveis envolvidas neste termo significa que o
MINTERM 11 encontra-se isolado, sem qualquer outro termo adjacente ao
mesmo, aparecendo portanto na sua forma completa ou standard.

m{0,4,16,20} = B D E
m{0,1,4,5} = A B D

m{30,31} = A B C D
m {4,6,12,14;20,22,28,30} = C E

resultando em:

86

FSOP(A.B.C.D.E) = A B C D E + B D + A B.C.D. + A B D + C E

Similarmente, para FPOS (A,B,C,D,E) tem-se:


M{2,10,18,26} = C + D + E
M{9,13,25,29} = B + D + E
M{3,7,19,23} = B + D + E

M{8,9,24,25} = B + C + D
M{17,19,21,23} = A + B + E
M{13,15}
= A + B + C+ E

M{24,25,26,27} = A + B + C
Isto :
FPOS =
= ( C + D + E )( B + C + D )( B + D + E )( A + B + E )( B + D + E )( A + B + C+ E )( A + B + C )

O exemplo a seguir, mostra a aplicao dos Mapas de Karnaugh para o caso de 6


variveis, onde j se verifica maior dificuldade para a identificao ou
visualizao dos estados lgicos adjacentes:

Exemplo 10: Simplificar a funo: FPOS(A,B,C,D,E,F) =

M (0,5,7,8,9,12,13,23,24,25,28,29,37,40,42,44,46,55,56,57,60,61)
Da expresso em P.O.S. pode-se construir o conjunto de mapas para 6 variveis,
a seguir resultando nas equaes:

87

Para FPOS(A,B,C,D,E,F), tem-se:


M{0, 8} = A+B+D+E+F
M{5, 37} = B+C+ D +E+ F
M{5, 7 } = A+B+C+ D + F
M{23, 55} = B + C + D + E + F
M{40, 42, 44, 46} = A + B + C+ F

88

M{24, 25, 28, 29, 56, 57, 60, 61} = B + C+ E


M{8, 9, 12, 13, 24, 25, 28, 29} = A+ C+E
Ou
FPOS (A,B,C,D,E,F) = (A+B+D+E+F).(B+C+ D +E+ F ).(A+B+C+ D + F ).
.( B + C + D + E + F ).( A + B + C+ F ).( B + C+ E ).(A+ C+E)

Para FSOP(A,B,C,D,E) =

m (1, 2, 3, 4, 6, 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 26, 27, 30, 31, 32,
33, 34, 35, 36, 38, 39, 41, 43, 45, 47, 48, 49, 50, 51, 52, 53, 54, 58, 59, 62, 63),
tem-se:
m{4,6,20,22;36,38,52,54}

=C D F
m{16,17,20,21,48,49,52,53} = B C E

m{1,3,17,19,33,35,49,51} = C D F
m{2,6,14,10,18,22,26,30} = A E F

m{18,22,26,30,50,54,58,62} = B E F
m{11,15,27,31,43,47,59,63} = C E F
m{41,43,45,47} = A B C F .

m{32,34,36,38,48,50,52,54} = A C F
m{35,39,43,47} = A B E F

Naturalmente, o somatrio de todas as parcelas simplificadas, definem a funo


em soma de produtos:
FSOP(A,B,C,D,E) = C D F + C D F + B C E + A E F + B E F +
+ A C F + C E F + A B E F + A B C F.

O mtodo de minimizao, ilustrado acima, se constitui numa poderosa


ferramenta para simplificar os circuitos lgicos capazes de resolver problemas
relativos tanto lgica combinacional quanto seqencial, como ser
demonstrado nos prximos captulos. Contudo, os ltimos exemplos servem para
ilustrar que a partir de 6 variveis esse processo de simplificao no deve ser
utilizado.

89

3.4 COMPLEMENTAES DE FUNES ATRAVS De MKs

Alm da utilizao como mtodo de minimizao de funes lgicas, os MKs


podem ser aplicados para completar funes S.O.P. ou P.O.S. que se apresentem
sob a forma incompleta, evitando desenvolvimentos algbricos, conforme
abordado, anteriormente, no Captulo II.
Para ilustrar esse tipo de aplicao, prope-se, por exemplo, o exerccio de se
completar a seguinte funo incompleta, sem os artifcios algbricos
apresentados no Captulo II :

F(A,B,C,D) = A B + C D + A C D

Como se v, a funo de 4 variveis apresenta 3 termos incompletos. Como o


MK completo necessariamente o indicado abaixo, para todos os MINTERMs,
basta considerar que a funo em pauta ser verdadeira para qualquer das 3
parcelas : A B ou C D ou ainda A C D ,. que apaream no MK, no termo
mnimo correspondente.
:

Assim, em todas as posies do MK, em que tais cofiguraes venham a


aparecer, a funo dever ser lanada como verdadeira. Isso faz com que o MK
se apresente, para a funo completa, sob a forma:

90

Evidentemente, a partir deste MK, cada um dos termos que aparece (sem
simplificao, j que se deseja encontrar a expresso completa), reconstitui a
expresso algbrica standard indicada a seguir:
F (A,B,C,D) = A B C D + A B C D + A B C D + A B C D +
+ A B C D + A B C D +A B C D

3.5 TERMOS INDIFERENTES NA MINIMIZAO POR MKs

Em diversas situaes reais, alguns termos da funo completa no fazem parte


das possibilidades de configuraes binrias de determinadas inter-relaes
lgicas. Um exemplo clssico disso o Cdigo BCD, no qual s existem
configuraes binrias possveis at o decimal 9, ficando sem representao
vlida todas as configuraes binrias correspondentes aos termos mnimos 10,
11, 12, 13, 14 e 15.
Para efeito do sistema combinacional que gera tal cdigo, ento, todas as
configuraes no pertencentes ao cdigo no tm qualquer influncia nas sadas
do circuito, uma vez que as mesmas jamais aparecem na entrada. Tais
configuraes, que no aparecem na entrada, e, por isso, no tm como afetar o
resultado da sada, interpretam-se como termos indiferentes. Nesta situao, tais
termos podem ser considerados indiferentemente como 0 ou 1, uma vez que no
influenciam o resultado da sada e, assim, podem ser usados no MK, a partir das
eventuais adjacncias que venham a criar, desde que se revelem vantajosas para a
simplificao que se deseja obter. No captulo IV, apresentam-se alguns
exemplos que ilustram tal tipo de aplicao.

91

3.6 EXERCCIOS III

1. Utilizar os mapas de Karnaugh para simplificar as funes abaixo,


encontrando as expresses correspondentes em S.O.P. e P.O.S.
a) F(A,B,C) = m(1,3,7) ;
b) F(A,B,C) = M(1,3,4,7);
c) F(A,B,C,D) = m(0,1,2,3,4,6,12);
d) F(A,B,C,D,E) = M(3,5,6,8,9,12,13,14,19,22,24,25,30);
2. Utilizar os mapas de Karnaugh para simplificar as expresses indicadas
abaixo:
a) F(W,X,Y,Z) = m(0,8,2,10);
b) F(W,X,Y,Z) = m(1,5,13,9);
c) F(W,X,Y,Z) = m(0,1,2,3,8,9,10,11)
3. Utilizar os mapas de Karnaugh para simplificar as expresses indicadas
abaixo:
a) F(A,B) = m(0,1,3);
b) F(A,B,C,D) = m(0,1,4,6,9,11,13,14);
c) F(A,B,C,D,E) = M(0,2,9,14,15,17,23,26,28,30,31)
4. Simplificar, pelo mtodo do mapa de Karnaugh, as seguintes expresses:

a) ( B + D ).( D + A + C ).( E + B ).( C+ D );


b) ( B + A ).( B + C);
c) B . C + C . A . D + A . D ;
d) B . C + D . A + D + B . A . C
5. Simplificar a funo:
F = m(0,5,7,8,9,12,13,23,24,25,28,29,37,40,42,44,46,55,56,57,60,61).
92

6. Simplificar, pelo mtodo do mapa de Karnaugh, as seguintes expresses:


a) A B C + A B + A B C;
b) F = A B C D + A B C D + A B C D ;
c) F = A B ( C D + C D) + (A + B ) C D + ( A C + A C ).D ;
d) F = A B + A B + A B
e) P = (B C + A D) (A B + C D ) ;
7. Provar que:

m(2,7,8,13) = M(0,1,3,4,5,6,9,10,11,12,14,15)
8. Encontrar a expresso mais simples, em S.O.P. e P.O.S. para:
F(A,B,C,D,E) = m(2,7,8,13,18,23,24,29)
9. Encontrar a expresso mais simples, em S.O.P. e P.O.S. para:
F(A,B,C,D,E) =

M(0,5,10,15,16,21,26,31)

10. Simplificar em termos de P.O.S e S.O.P a expresso:


F=

M(0,2,8,10,16,18,24,26,32,34,40,42,50,56,58)

93

94

4 CIRCUITOS COMBINACIONAIS

Os circuitos combinacionais so circuitos lgicos cujas sadas dependem nica e


exclusivamente da configurao das variveis de entrada, em termos dos seus
estados lgicos, ou seja, das variveis que so falsas ou verdadeiras em
determinado instante, independendo do estado anterior das sadas. O nmero de
sadas de um circuito combinacional pode ser menor, igual ou maior do que o
nmero de entradas, dependendo apenas das especificaes contidas no
problema.
As tcnicas desenvolvidas nos captulos anteriores so satisfatrias para se
estabelecer as equaes lgicas, as quais descrevem o comportamento das
funes, e ainda possibilitar a implementao dos circuitos de forma mais
simples e econmica.
O estabelecimento das funes lgicas realizado a partir das condies que
definem as relaes entre as diversas variveis e, de um modo geral, tais relaes
so explicitadas por meio de um texto ou de uma tabela-verdade.
Algumas relaes entre as variveis so muito claras no prprio texto e permitem
a identificao da equao resultante diretamente do mesmo, sem a necessidade
de uma abordagem sistemtica. Entretanto, a maior parte das interrelaes exige
um procedimento mais elaborado para se encontrar as equaes que definem as
funes das sadas.
Em geral, a determinao sistemtica de um circuito combinacional realizada
em quatro passos:
leitura e interpretao do texto que define as funes lgicas das sadas, a
partir das interrelaes das variveis de entrada, especificadas segundo as
condies pertinentes ao problema em foco;
representao das variveis e das funes resultantes sob a forma de uma
ou mais tabelas-verdade;
expresso das funes resultantes, na sua forma mais simples, em S.O.P e
P.O.S.;

95

implementao dos circuitos lgicos correspondentes s equaes, em


funo das disponibilidades de circuitos integrados e demais
consideraes que possibilitem a otimizao do circuito lgico final a ser
adotado.
medida que um circuito seja classificado como combinacional, o procedimento
acima deve ser aplicado para se encontrar a sua equao e a configurao geral
de interligao das diversas portas lgicas que permitem a implementao da
soluo do problema.
Assim, inmeros circuitos lgicos podem ser implementados, recebendo diversas
classificaes tais como:

circuitos aritmticos;
codificadores;
decodificadores;
comparadores;
geradores e detetores de paridade;
multiplexadores;
demultiplexadores e
outros circuitos destinados a sistemas de comando ou controle.

Independentemente da classificao que um circuito combinacional venha a


receber, a rotina para o estabelecimento da equao lgica obedece mesma
seqncia indicada acima.
A seguir, apresenta-se uma srie de exemplos ilustrativos de projetos de circuitos
combinacionais, previlegiando-se - por simplicidade - a implementao em
S.O.P., objetivando-se uma abordagem sistemtica para a soluo de problemas
aplicados, independentemente da classificao recebida pelos diversos circuitos.

4.1 PROJETO DE CIRCUITO COMBINACIONAL ELEMENTAR:

Projetar um circuito combinacional para permitir ligar ou desligar uma lmpada a


partir de dois pontos distintos, a exemplo do circuito de interruptores three-way.
Soluo :
Admitindo-se dois interruptores A e B situados nos pontos de interesse, e a
lmpada F a ser ligada ou desligada, e ainda que os estados ligado ou desligado
96

correspondem aos estados lgicos 1 ou 0 respectivamente, tm-se a tabelaverdade e o mapa de Karnaugh indicados abaixo. Tal tabela-verdade elaborada
partindo-se das seguintes consideraes:
a) considerando-se inicialmente que os dois interruptores e a lmpada se
encontrem desligados, qualquer interruptor que venha a mudar de estado lgico
ligar a lmpada.
b) do mesmo modo, quando a lmpada se encontrar ligada, qualquer mudana de
estado em qualquer dos interruptores, a desligar.
Examinando-se todas as alternativas possveis, pode-se construir ento a tabelaverdade, bem como o correspondente Mapa de Karnaugh, os quais descrevem a
situao para qualquer caso:
A B
0
0
0
1
1
0
1
1

F
0
1
1
0

A equao resultante pode ser estabelecida tanto diretamente da tabela quanto do


Mapa de Karnaugh, o qual revela no haver estados adjacentes.
Pelas definies anteriores, a equao lgica que representa a funo verdadeira
corresponde a um XOR, ou seja:
_
_
F(A,B) = A.B + A.B

F(A,B) = A B

ou

O circuito equivalente :

97

4.2 CIRCUITO ELEMENTAR DE ALARME 1:

Uma mquina refrigerada a gua e lubrificada a leo, sob presso, necessita de


um sinal de alarme a ser acionado quando uma ou ambas as situaes abaixo se
apresentem:
a temperatura da mquina se encontra acima da mxima permitida pelo
fabricante e
a temperatura se encontra abaixo da mxima, mas o nvel da gua e a presso
do leo esto abaixo dos valores mdios recomendados no manual de
manuteno.
Projetar um circuito lgico para acionar o mencionado alarme.
Soluo :
O texto do problema extremamente claro e, apenas pelas defies das funes
OR e AND pode-se chegar equao lgica, bastando para isso convencionar-se:
F = acionar alarme;
T = temperatura da mquina acima da mxima permitida;
N = nvel da gua igual ou acima do recomendado;
P = presso do leo igual ou acima da recomendada.
A partir do texto, pode-se escrever diretamente:
__ _
F = T + T.N.P

ou, por simplificao algbrica,

__
F = T + N.P, resultando no circuito lgico abaixo:

98

4.3 CIRCUITO ELEMENTAR DE ALARME 2:

Uma mquina funciona com 4 sensores controlando o seu estado de operao. Se


a mquina estiver operando adequadamente, pelo menos duas das variveis de
controle devem estar presentes ao mesmo tempo. Quando a mquina no estiver
operando corretamente, um alarme dever soar num painel de controle. Projetar o
circuito lgico do alarme.
Convencionando-se a presena da varivel de controle como estado lgico 1, a
tabela-verdade abaixo demonstra a condio para soar o alarme (F=1), segundo
as condies definidas no texto. A partir desta tabela-verdade, obtem-se o mapa
de Karnaugh correspondente, conforme se observa abaixo:

DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

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

F
1
1
1
0
1
0
0
0
1
0
0
0
0
0
0
0

Pela tabela-verdade, F(A,B,C,D) = m(0,1,2,4,8), gerando o MK:

99

Observando-se o MK acima, v-se que os termos mnimos adjacentes definem as


simplificaes que resultam nas seguintes expresses em S.O.P e P.O.S,
respectivamente:
FSOP
FPOS

_ __ _ _ _ _ _ _ _ _ _
=BCD+ABD+ACD+ABC
e
_ _ _ _ _ _ _ _ _ _ _ _
= (A + B) (C + D) (B + D) (B +C) (A + D) (A + C)

Visando-se a implementao do circuito, atravs de portas lgicas do tipo


NAND, tem-se pela aplicao do teorema de De Morgan:
__ __ __ __ __ __
F = (AB . CD . BD . BC . AD . AC).
Desta ltima expresso, pode-se implementar o circuito:

100

4. 4 CIRCUITO ELEMENTAR DE ALARME 3:

A porta de emergncia de uma aeronave dever operar nas seguintes condies:

se o piloto indicar a necessidade de sua operao;


se o teor de O2 estiver abaixo do mnimo permitido;
se a temperatura estiver acima da mxima permitida e
o engenheiro de vo fizer operar "situao de emergncia".

Encontrar o correspondente circuito de controle, sabendo-se que a mesma dever


operar se a primeira condio ocorrer, simultaneamente com pelo menos duas
das outras trs.
A tabela-verdade a seguir representa a situao lgica estabelecida no texto:
DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B C
0
0
0
0
0
1
0
1
1
0
1
0
1
1
1
1
0
0
0
0
0
1
0
1
1
0
1
0
1
1
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

Pela tabela-verdade, pode-se escrever:


F (A,B,C,D) =

m(11,13,14,15)

F (A,B,C,D) = M(0,1,2,3,4,5,6,7,8,9,10,12)

101

F
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1

O MK correspondente resulta em:

As adjacncias identificadas no MK acima, permitem escrever :


FSOP = A (BC + CD + BD)
FPOS = A (C + D).(B + D).(B + C)
Tomando-se a segunda expresso para a implementao do circuito, tem-se:

4.5 CODIFICADOR ELEMENTAR X/X2:

A partir de nmeros binrios de 3 digitos, projetar um circuito para gerar um


cdigo de sada que corresponda ao quadrado dos nmeros binrios apresentados
na entrada.
a) Encontrar o circuito lgico mais simples e
b) esboar o diagrama do circuito.

102

Soluo :
Pelas condies estabelecidas no problema pode-se construir a tabela-verdade
abaixo :
X
0
1
2
3
4
5
6
7

A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

X 2 Y5
0 0
1 0
4 0
9 0
16 0
25 0
36 1
49 1

Y4 Y3
0 0
0 0
0 0
0 1
1 0
1 1
0 0
1 0

Y2
0
0
1
0
0
0
1
0

Y1
0
0
0
0
0
0
0
0

Y0
0
1
0
1
0
1
0
1

A partir da tabela acima, obtem-se as equaes a seguir, as quais, devido sua


grande simplicidade, podem ser minimizadas algebricamente, conforme
demonstrado :
_
_
Y5 = A B C + A B C = A B.( C + C ) ou Y5 = A.B
_ _
_
Y4 = A B C + A B C + A B C
_
=AB+ABC
= A (B + C)

ou

_
Y4 = A ( B C )

_
_
Y3 = A B C + A B C
_
_
= C.(A B + A B)

ou

Y3 = C.( A B )

_
_ _
Y2 = A B C + A B C
_ _
=BC(A+A)

ou
103

_
Y2 = B C

Y1 = 0 , por inspeo :

Y1 = 0

_ _
_
_
Y0 = A B C + A B C + A B C + A B C
_
_
_
= A C.(B + B) + A C.(B + B)
_
= C (A + A)
ou

Y0 = C

Da,

4.6 COMANDO DE CIRCUITO ELTRICO:

Projetar um circuito lgico para controlar um sistema de iluminao de uma


quadra de esportes, tal que um conjunto de refletores possa ser ligado ou
desligado de 4 pontos distintos.
elaborar a tabela-verdade e encontrar a equao correspondente;
simplificar a equao e esboar o circuito lgico utilizando o menor
nmero possvel de CIs.
Soluo :
Convencionando-se os 4 pontos distintos como A,B,C e D e o conjunto de
refletores como F, e ainda assumindo tanto os refletores quanto os interruptores
situados nos diversos pontos com valor lgico 1 na condio de ligado, pode-se
elaborar a tabela-verdade abaixo, partindo-se do pressuposto de que o conjunto
104

de refletores encontra-se desligado quando todos os interruptores estiverem nessa


mesma condio.
DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

F
0
1
1
0
1
0
0
1
1
0
0
1
0
1
1
0

Logo,
F (A,B,C,D) = m (1,2,4,7,8,11,13,14)
O mapa de Karnaugh corresponde a:

105

Como se v, o mapa de Karnaugh resulta numa funo para a qual no possvel


se encontrar MINTERMs ou MAXTERMs adjacentes.
Vale observar que todas as vezes que os termos no adjacentes se apresentam no
MK segundo uma diagonal, a funo resultante estar relacionada com
expresses envolvendo XOR ou XNOR, conforme demonstrado a seguir:
A funo F( A,B,C,D ) definida ento por :
_ _ _ _ __ _
_ __
F( A,B,C,D ) = A B C D + A B C D + A B C D + A B C D +
_
_
_ __
_
+ABCD+ABCD+ABCD+ABCD
_
_ __
_ _ _
F( A,B,C,D ) = A B ( C D + C D ) + A B ( C D + C D ) +
_
_ _ _
_
+AB(CD+CD)+AB(CD+CD)
_
_
_ _
_ _
_
_
F = ( C D + C D ).( A B + A B ) + ( C D + C D )( A B + A B )
______
______
F = ( C D ).( A B ) + ( C D ).( A B ) ou
F( A,B,C,D ) = ( A B ) ( C D ) = A B C D
Circuitos correspondentes :

106

Qualquer um dos circuitos sintetiza a funo em questo. O primeiro circuito,


entretanto, apresenta a vantagem de utilizar o mesmo nmero de portas lgicas,
envolvendo apenas 2 estgios, o que representa menor constante de tempo na
transio de 1 para 0 ou vice-versa.

4.7 SOMADOR COMPLETO OU FULL-ADDER:

Projetar um somador "Full-Adder"


A tabela-verdade que define as relaes "entradas versus sadas" de um somador
"Full-Adder" pode ser observada abaixo:
Cin
0
0
0
0
1
1
1
1

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

Cin representa o carry ou o transporte (vai-um) do somador anterior, que pode ser
0 ou 1. A e B correspondem aos bits a serem somados; S e Cout correspondem
soma e ao carry seguinte.
Os MKs correspondentes so:

107

As equaes resultantes, por sua vez , so:


S = A B Cin

Cout = A.B + Cin ( A B ), correspondendo ao circuito:

Vale observar que optou-se pela simplificao da funo Cout atravs das
adjacncias m{3 e 7}, mantendo-se os termos no adjacentes m{5 e 6}, na
condio de guardarem entre s a relao ( A B ). Tal artifcio permite a
utilizao desse XOR, j pertencente equao anterior da funo S ,
aproveitando-a tambm para a implementao da funo Cout .

4.8 CIRCUITO COMPARADOR:

Projetar um circuito combinacional para comparar a magnitude relativa de dois


nmeros binrios de 2 Bits.
Soluo:
Considerando-se os nmeros em questo como A( A1 A0 ) e B( B1 B0 ), e
elaborando-se a tabela-verdade abaixo, que corresponde a uma comparao entre
todas as configuraes possveis entre os 4 bits em anlise, tem-se:

108

DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A1A0B1B0 A<B A=B A>B


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

Pela tabela-verdade acima pode-se estabelecer os mapas de Karnaugh:

109

De cada uma dessas funes, ou seja:


[A<B] = m(1,2,3,6,7,11);
[A=B] =m(0,5,10,15)

[A>B] = m(4,8,9,12,13,14) ,

pode-se chegar s equaes simplificadas:


_
_
_ _
[A<B] = A1A0B0 + A0B1B0 + A1B1
[A=B] = (A0 B0).(A1 B1)
_ _
_
_
[A>B] = A0B1B0 + A1A0B0 + A1B1
Observa-se entretanto que as trs condies so exclusivas entre s, j que dois
nmeros s podem atender a apenas uma das hipteses previstas no problema.
Logo, uma das condies pode ser testada a partir da negao das outras duas.
Por exemplo: se A no maior do que B e tambm no igual a B, ento, A
menor do que B! Ou seja, a equao para a condio [A<B] poderia ser
simplesmente a equao alternativa:
_____ _____
[ A<B ] = [ A=B ].[ A>B ]

110

Tais consideraes podem resultar numa simplificao do circuito final a ser


implementado, como se torna evidente no diagrama abaixo:

111

4.9 CIRCUITO GERADOR DE BIT DE PARIDADE:

Projetar um circuito gerador e detetor de paridade par e mpar para uma palavra
de 4 bits.
O bit de paridade um dgito binrio de teste que adicionado palavra ou
informao, o qual, atravs de adequada codificao, pode possibilitar a deteo
de um erro numa informao transmitida.
Diz-se que o cdigo gerado do tipo paridade par, quando a soma dos 1's
presentes na informao total, incluindo o bit de teste, resulta em um nmero par!
A recproca verdadeira, para o caso do cdigo do tipo paridade mpar.
Assim, tomando-se os bits A, B, C e D como relativos informao, e P e I
como os de paridade par e mpar, a serem gerados, pode-se construir a tabelaverdade:
DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

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

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

P
0
1
1
0
1
0
0
1
1
0
0
1
0
1
1
0

I
1
0
0
1
0
1
1
0
0
1
1
0
1
0
0
1

A S.O.P resultante para P (paridade par) ser:


F(A,B,C,D) =

m(1,2,4,7,8,11,13,14).
112

Por inspeo, a expresso para I (paridade mpar) corresponde ao complemento


da anterior, no sendo necessria a elaborao do MK correspondente. Tal fato
pode ser demonstrado a partir do mapa elaborado para a sada I.

Os Mapas de Karnaugh acima indicam a inexistncia de termos adjacentes.


Da, as expresses para P e I so:
_ _ _____ _
_____ _
P(A,B,C,D) = (B D)AC + (B D)AC + (B D)AC + (B D)AC
_____
_____
P(A,B,C,D) = (B D).(A C) + (B D).(A C)

P(A,B,C,D) = ( B D ) ( A C )

Evidentemente,
_________
I(A,B,C,D) = P(A,B,C,D)

113

O circuito corresponde a:

114

4.10 CONVERSOR DE CDIGO BCD/ XS3:

Projetar um coversor do Cdigo BCD para o Cdigo Excesso de Trs.

Como se sabe (vide Captulo I), o Cdigo Excesso de Trs gerado somando-se
3 ao cdigo BCD, como indicado na tabela-verdade logo a seguir. Considerandose que o BCD tem a sua representao vlida apenas para os dgitos do sistema
decimal (0 a 9), as configuraes que correspondem a 10, 11, 12, 13, 14 e 15 no
tm uma representao simples em E3E2E1E0. Essas configuraes so compostas
e representadas dgito a dgito. Por essa razo, as sadas E3E2E1E0, na tabelaverdade, assumem estados considerados indiferentes. Esses estados so
representados por (x), (d) ou (), tanto na tabela-verdade quanto nos mapas de
Karnaugh.
A tabela-verdade e o correspondente Mapa de Karnough, neste caso, so
construdos a partir da definio do cdigo em questo, conforme consta no
Captulo I:
DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

B3
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

B1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

B0 E3
0 0
1 0
0 0
1 0
0 0
1 1
0 1
1 1
0 1
1 1
0 x
1 x
0 x
1 x
0 x
1 x

Os Mks para o conversor so:`

115

E2
0
1
1
1
1
0
0
0
0
1
x
x
x
x
x
x

E1 E0
1 1
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
0 0
x x
x x
x x
x x
x x
x x

Os estados indiferentes, quando representados nos mapas de Karnaugh, podem


ser usados para efeito de simplificao das funes, desde que estejam em
posies adjacentes estratgicas.
Tais estados podem ser considerados indistintamente como 0 ou 1, de acordo
com a convenincia ocasionada pela adjacncia eventualmente produzida.
Observa-se neste exemplo que no MK(E3), todos os estados indiferentes podem
ser considerados como 1, possibilitando as simplificaes decorrentes dos termos
mnimos adjacentes:

116

( m8, m9, m10, m11, m12, m13, m14 e m15 ), resultando em ( B3 );


( m5, m7, m13,e m15 ), resultando em ( B2.B0 ) e
( m6, m7, m14, e m15 ), resultando em ( B2.B1 )
Ou seja,
E3 = B3 + B2B0 + B2B1.
Similarmente, no MK(E2), os termos indiferentes m10, m11 e m12 podem ser
considerados como 1 e os demais como 0, possibilitando as simplificaes entre
as adjacncias:
_ _
( m4 e m12 ), resultando em B2.B1.B0;
_
( m1, m3, m9, m11 ), resultando em B2.B0 e
_
( m2, m3, m10 e m11 ), resultando em B2.B1.
Assim,
_
_ _ _
E2 = B2.B1.B0 + B2.B0 + B2.B1
No MK(E1), os termos indiferentes m11, m12 e m15 podem ser considerados como
1 e os demais como 0, possibilitando as simplificaes:
_ _
( m0, m4, m8, m12 ), resultando em B1.B0
( m3, m7, m11, m15 ), correspondendo a B1.B0.

ou,

_ _
E1 = B1.B0 + B1.B0 = B1 B0.
Quanto ao MK(E0), considerando-se os estados indiferentes m10, m12, e m14
como lgico 1 e os demais como 0, tem-se:
_
E 0 = B0

117

Determinadas consideraes e equivalncias podem contribuir para a otimizao


da implementao do circuito resultante, como mostrado a seguir.
E3 = B3 + B2.( B1 + B0 )
_
______
_
_ _
E2 = B2( B1.B0 ) + B2( B1 + B0 ) = B2( B1 + B0 ) + B2( B1 + B0 )
ou E2 = B2 ( B1 + B0 )
_ _
_
E1 = B1.B0 + B1.B0 = B1 B0 = B1 B0
_
E0 = B0.
O circuito correspondente mostrado abaixo:

118

4.11 SELECIONADOR - SOMADOR/SUBTRATOR:

Projetar um circuito selecionador, de tal sorte que se um dado bit de seleo K


for igual a 0, o circuito combinacional dever se comportar como um somador
Full-Adder, entre os bits CIN, A e B, para as sadas S1 e C1OUT . No caso de a
varivel K vir a assumir o valor lgico 1, as sadas em questo devero
apresentar, respectivamente, a subtrao simples entre A e B, e ao transporte da
operao de subtrao.
Da, a tabela verdade que corresponde s operaes mencionadas:
DEC K
0 0
1
0
2
0
3
0
4
0
5
0
6
0
7
0
8
1
9
1
10
1
11
1
12
1
13
1
14
1
15
1

CIN A
0
0
0
0
0
1
0
1
1
0
1
0
1
1
1
1
0
0
0
0
0
1
0
1
1
0
1
0
1
1
1
1

B
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

S1
0
1
1
0
1
0
0
1
0
1
1
0
0
1
1
0

C1OUT
0
0
0
1
0
1
1
1
0
1
0
0
0
1
0
0

Logo,
S(K,CIN,A,B) = m(1,2,4,7,9,10,13,14)
COUT(K,CIN,A,B) = m(3,5,6,7,9,13)
A partir das expresses acima pode-se construir os Mapas de Karnaugh para as
e COUT(K,CIN,A,B), conforme os procedimentos
funes S(K,CIN,A,B)
anteriormente mostrados, chegando-se ento s minimizaes pertinentes.
Contudo, este problema, aparentemente de maior complexidade, pode ser
resolvido por mera inspeo, desde que se observe o seguinte:
119

O texto do problema diz que para K=0 a funo deve ser um somador completo.
Assim, sabendo-se que as equaes e o circuito para o somador completo so
aquelas definidas no tem IV.7: S = A B Cin e Cout = A.B + Cin ( A B ),
correspondendo ao circuito:

Acrescentando-se, para a primeira condio, a varivel K:


_
_
S1 = {A B Cin}.K... e C1out = {A.B + Cin ( A B )}.K...
Como na outra condio, para K=1, as funes S1 e C1out devero apresentar o
resultado da subtrao simples entre as variveis A e B, definidas pela tabela
verdade, basta reconhecer que a tabela verdade para S1 quando K=1, equivale ao
XOR entre A e B, enquanto C1out equivale funo AND entre A e B. Esta
segunda condio dever ento fazer parte da equao geral, atravs da incluso
dessa alternativa nas expresses de S1 e C1out, definidas acima. Logo,
_
S1 = {A B Cin}.K + {A B}.K
e
_
_
C1out = {A.B + Cin ( A B )}.K + {A.B}.K ou

120

O circuito apresentado admite tais funes como as adequadas para a


implementao, aproveitando-se o circuito anteriormente encontrado. Vale
observar que o circuito anexado s sadas S e Cout do circuito anterior (IV.7),
atua como mero selecionador das funes que devero ser efetuadas entre as
variveis de entrada, tendo a varivel K como varivel de controle ou seleo.
Circuitos selecionadores como esse so de grande aplicao nos sistemas lgicos
e digitais.
A soluo desse problema, via minimizao por MKs, certamente traria
circuitos combinacionais mais simples, mas o tipo de soluo aqu utilizada,
ilustra a aplicao de uma estrutura selecionadora de operaes lgicas.

121

4.12 MULTIPLEXADOR/DEMULTIPLEXADOR:

Projetar um circuito selecionador que obedea tabela-verdade abaixo, onde S1 e


S0 representam determinadas variveis de seleo que definem a funo F como
assumindo o valor lgico das variveis ou funes I0 ou I1 ou I2 ou ainda I3, de
acordo com os valores lgicos das variveis de seleo:
S0 F
0 I0
1 I1
0 I2
1 I3
_ _
_
_
F(S1,S0) = (S1 S0) I0 + (S1 S0) I1 + (S1 S0) I2 + (S1 S0) I3
S1
0
0
1
1

O circuito correspondente a esta equao lgica ser naturalmente:

Este circuito mostra claramente que possvel selecionar-se uma determinada


informao, a partir da codificao empregada para as variveis de seleo. Caso
as variveis de seleo sejam escolhidas de uma maneira seqencial, torna-se
possvel ento transmitir as informaes I0, I1, I2, e I3, em momentos distintos,
atravs de apenas uma sada. A aplicao prtica de um circuito como este
evidente, pois, atravs de um nico canal ou atravs de um nico condutor podese transmitir grande nmero de informaes. Este circuito denominado
MULTIPLEXADOR (MUX), e de enorme aplicao prtica. A equao
definida acima pode ser tambm explicitada da seguinte forma:
122

F(S1,S0) = (m0) I0 + (m1) I1 + (m2) I2 + (m3) I3 .


Evidentemente, m0, m1, m2 e m3 representam os termos mnimos relativos a S1 e
S0 .
O fato de a equao poder ser expressa desta forma, indica outra importante
aplicao do MULTIPLEXADOR:
Como cada cdigo de S1 e S0 encontra-se associado ao correspondente termo
mnimo da funo, neste caso de duas variveis, qualquer funo lgica que
venha a ser escrita sob a forma dos seus MINTERMs poder ser implementada
atravs de um multiplexador, bastando-se para isso atribuir-se os valores 1 ou 0,
s entradas I0, I1, I2, e I3, de acordo com a definio dos termos mnimos e
mximos da funo desejada.
Por exemplo:
Usar o circuito acima para implementar a funo: F(S1,S0) = m(1,3).
Esta expresso define os termos mnimos 1 e 3 como aqueles em que a funo
verdadeira. Portanto, a funo ser falsa para os termos 0 e 2.
F(S1,S0) = (m0) I0 + (m1) I1 + (m2) I2 + (m3) I3

se apresenta como:

F(S1,S0) = (m0) 0 + (m1) 1 + (m2) 0 + (m3) 1


Isto implica em se conectar as entradas I0 e I2 a 0 e I1 e I3 a 1, como indicado
abaixo, para se ter o circuito implementado, sem qualquer preocupao inclusive
quanto simplificao do mesmo.

123

Outra vantagem extraordinria dessa estrutura a de que a configurao lgica


das diversas portas no muda para as diferentes funes. Basta que as entradas
sejam ligadas a 0 ou a 1, conforme os termos mnimos selecionados, para se ter
outras funes devidamente implementadas.
Existem inmeros tipos de MULTIPLEXADORES integrados e para grande
nmero de variveis de entrada, permitindo maior flexibilidade na
implementao de funes lgicas combinacionais. Os manuais dos fabricantes
trazem maiores detalhes e sugestes de uso para os diversos dispositivos desse
tipo, os quais, apesar da simplicidade na sua lgica, permite a soluo de
problemas complexos de modo elegante, alm de programvel.
O circuito que executa a tarefa de receber as informaes por um nico condutor
e recompor a informao completa, denomina-se DEMULTIPLEXADOR
(DEMUX). Este circuito faz o trabalho inverso do anterior, apresentando a
seguinte configurao:

Tal configurao evidente por s mesma, onde I representa a informao,


geralmente fornecida por um MULTIPLEXADOR, para cada cdigo S1, S0. As
informaes I0, I1, I2 e I3 so reconstitudas para o cdigo especfico, coincidente
com o do MULTIPLEXADOR, sendo geralmente armazenadas em registros ou
memrias a FLIP-FLOP, por exemplo, como ser visto no prximo Captulo.
124

4.13 CONVERSOR BINRIO/GRAY:

Projetar um conversor Binrio/Gray de 4 Bits.


Pela definio do cdigo de Gray, apresentada anteriormente, pode-se construir a
tabela-verdade a seguir, onde B3B2B1B0 equivalem aos bits em binrio e
G3G2G1G0 aos seus correspondentes no cdigo de Gray.
Cdigo Binrio x Gray
DEC
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

B3 B2 B1 B0 G3 G2 G1 G0
0 0 0
0 0 0 0 0
0 0 0
1 0 0 0 1
0 0 1
0 0 0 1 1
0 0 1
1 0 0 1 0
0 1 0
0 0 1 1 0
0 1 0
1 0 1 1 1
0 1 1
0 0 1 0 1
0 1 1
1 0 1 0 0
1 0 0
0 1 1 0 0
1 0 0
1 1 1 0 1
1 0 1
0 1 1 1 1
1 0 1
1 1 1 1 0
1 1 0
0 1 0 1 0
1 1 0
1 1 0 1 1
1 1 1
0 1 0 0 1
1 1 1
1 1 0 0 0

As S.O.P.s para cada caso so:


G3 = m(8,9,10,11,12,13,14,15);
G2 = m(4,5,6,7,8,9,10,11);
G1 = m(2,3,4,5,10,11,12,13);
G0 = m(1,2,5,6,9,10,13,14).

125

Os MKs se apresentam como:

As equaes resultantes so:


G 3 = B3
_
_
G2 = B3B2 + B3B2 = B3 B2
_
_
G1 = B2B1 + B2B1 = B2 B1
_
_
G0 = B1B0 + B1B0 = B1 B0

126

Para o problema especfico acima, o circuito correspondente ser:

Observe-se que possvel a generalizao para qualquer nmero de bits,


conforme indicado:
Gi = Bi+1 Bi

127

4.14 DECODIFICADORES:

A exemplo das informaes lgicas que devero estar disponveis na entrada dos
multiplexadores, ou de qualquer outra estrutura como reconstituidora de linhas de
atuao de circuitos de controle, ou de endereamento de memrias e outras
aplicaes, os decodificadores exercem, apesar da sua simplicidade, um papel
muito importante no interfaceamento de circuitos lgicos e digitais.
Por exemplo, no caso do endereamento da informao para uma nica linha,
entre vrias outras, ou barramento, as variveis de entrada podem exercer o papel
de selecionadoras de linha, similarmente ao que foi visto no caso dos
demultiplexadores.
A filosofia de operao dos decodificadores pode ser ilustrada a partir do
diagrama de blocos mostrado a seguir, onde B1 e B0 representam as variveis de
entrada, enquanto I0 , I1 , I2 e I3 , as diversas linhas a serem energizadas, ou
acessadas.

O diagrama de blocos sintetiza a situao em que apenas 2 variveis podem gerar


4 (22) sadas, em consonncia com as configuraes das variveis de entrada,
conforme a representao indicada pela tabela-verdade abaixo:
B 1B 0
0 0
0 1
1 0
1 1

I3
0
0
0
1

I2
0
0
1
0

128

I1
0
1
0
0

I0
1
0
0
0

A tabela-verdade auto explicativa, indicando simplesmente que somente uma


das sadas assume o valor lgico verdadeiro, a cada distinta configurao das
variveis de entrada.
Representando o que foi dito acima sob a forma de equaes lgicas, tem-se:
_ _
I0 = B1 B0
_
I1 = B1 B0
_
I2 = B1 B0
I3 = B1 B0

O circuito correspondente :

Este circuito muito simples, para apenas duas variveis de entrada, pode ser
expandido para n variveis, podendo ento apresentar na sada at 2n linhas,
associadas s diversas configuraes.
Os decodificadores se prestam a variadas aplicaes, a exemplo de gerao de
formas de onda, conversores BCD x 7 segmentos, gerao aleatria de funes
lgicas, desempenhando tambm um importante papel nos circuitos de
endereamento de memrias semicondutoras.

129

4.15 CONSIDERAES GERAIS:

Evidentemente, inmeros outros circuitos so passves de implementao, a


exemplo de multiplexadores e demultiplexadores para grande nmero de
entradas, codificadores e decodificadores para funes especiais e tambm
circuitos aritmticos e outros de maior grau de complexidade. Contudo, todos os
conceitos aqu apresentados se aplicam integralmente, tanto na anlise quanto na
sntese de circuitos lgicos, e so essenciais para permitir uma viso crtica
quando da utilizao de circuitos integrados interconectados entre s, visando a
implementao de solues efetivas de problemas reais e de aplicao prtica.
O fato de determinados circuitos se destinarem a aplicao mais geral, contribui
para que grande variedade deles seja projetada e implementada monoliticamente,
em circuitos integrados ou CIs, permitindo a sua utilizao diretamente, sem a
necessidade de se interconectar portas bsicas do tipo SSI, ou de baixo grau de
integrao.
Assim, vrios circuitos cujos projetos foram aqui elaborados, podem ser
encontrados para pronta utilizao, como pode ser visto nos manuais dos
fabricantes, onde so mostrados os diagramas lgicos e de pinagem, as
caractersticas eltricas gerais, alm de sugestes para o seu uso e aplicaes
vrias, ou application notes.
Evidentemente, qualquer projeto a nvel profissional requer o conhecimento do
que se encontra disposio no mercado, caractersticas desses circuitos, alm de
um detido exame do problema especfico a resolver, para se evitar esforos
desnecessrios no desenvolvimento e implementao de circuitos que j se
encontrem disponveis no mercado.
O fato de se dispor de funes mais complexas j integradas, facilita o trabalho e
aumenta a confiabilidade do sistema implementado. Recomenda-se a qualquer
profissional que deseje projetar circuitos lgicos deter o conhecimento das
famlias de circuitos lgicos existentes, e detalhes a respeito das suas
caractersticas eletro-eletrnicas e limitaes.
Considerando que o presente trabalho visa unicamente dar os subsdios bsicos
para o entendimento da filosofia e conceituao sobre circuitos lgicos, no se
apresenta aqu os dados tecnolgicos propriamente ditos sobre os componentes a
serem utilizados na implementao desses circuitos e sistemas.
130

Como deve ter sido notado, as solues apresentadas neste captulo privilegiaram
a resoluo dos problemas propostos a partir das expresses em soma de
produtos (S.O.P.) mas, evidentemente, todos os problemas podem ser
solucionados sob a forma de P.O.S.
O desenvolvimento de tais expresses deve ser realizado como exerccio por
parte do leitor, objetivando maior segurana no entendimento dos procedimentos
aqu discutidos.

131

4. 16 EXERCCIOS IV

1. O Cdigo BCD (5311) definido pela tabela-verdade indicada abaixo, em


relao ao cdigo binrio natural (8421). Projetar um circuito combinacional
para converter o binrio representado em BCD (5311), utilizando o menor
nmero possvel de portas lgicas. Esboar o circuito a ser implementado.
BINRIO
ABCD
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1

5 3 1 1
WXYZ
0 0 0 0
0 0 0 1
0 0 1 1
0 1 0 0
0 1 0 1
1 0 0 0
1 0 0 1
1 0 1 1
1 1 0 0
1 1 0 1

2. Um codificador de posio angular, associado ao eixo de um motor, indica a


posio angular do mesmo em intervalos de 30 graus, usando o cdigo de
Gray, conforme a tabela abaixo. Projetar um circuito lgico para fazer soar
um alarme quando a posio angular detectada se encontre no segundo ou no
quarto quadrante.
Posio
00-30
30-60
60-90
90-120
120-150
150-180
180-210
210-240
240-270
270-300
300-330
330-360

Cdigo
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011

132

Deve-se assumir que as configuraes inexistentes, na tabela-verdade, no


colaboram no estabelecimento do sistema de codificao.
3. Projetar um circuito a 5 variveis tal que a sada seja verdadeira quando mais
de cinqenta por cento dessas variveis apresentem valor lgico 0.
simplificar a expresso encontrada usando o mapa de Karnaugh;
esboar o diagrama do circuito lgico.
4. Projetar um circuito comparador, tal que um LED seja ativado num painel de
controle, a cada vez que o estado lgico de determinada mquina A seja
equivalente ao da mquina D , e o estado da mquina B diferente do da
mquina C.
5. Projetar um circuito lgico para ligar um motor para bombeamento de
combustvel de um reservatrio inferior para outro superior. A bomba ser
controlada por quatro detetores de nvel que acionam respectivamente 4
variveis lgicas a saber:
reservatrio inferior vazio;
reservatrio inferior cheio;
reservatrio superior vazio;
reservatrio superior cheio.
O motor dever partir sempre que o reservatrio superior estiver vazio e o
inferior no estiver vazio, ou quando o reservatrio inferior estiver cheio e o
superior no estiver cheio. Prever um circuito de alarme, para indicar eventuais
condies de mau funcionamento dos detetores de nvel do sistema.
6. Em determinado computador, as letras do alfabeto e os dgitos do sistema
decimal so codificados em termos dos nmeros octais:
Letras:
A=30; B=23; C=16; D=22; E=20; F=26; G=13; H=05; I=14;
J=32; K=36; L=11; M=07; N=06; O=03; P=15; Q=35;
R=12; S=24; T=01; U=34; V=17; W=31; X=27; Y=25; Z=21.
Nmeros:
0=37; 1=52; 2=74; 3=70; 4=64; 5=62; 6=66; 7=72; 8=60 9=33
Projetar um circuito para receber esse cdigo na entrada, e apresentar uma sada
falsa a cada vez que a informao de entrada corresponder a uma letra do
133

alfabeto, e uma sada verdadeira, quando a informao for numrica. Observar


que os demais cdigos, pertencentes ao sistema, se referem a smbolos especiais,
cujas configuraes no sero utilizadas pelo circuito combinacional em questo.
7. Em determinado computador, as letras do alfabeto e os dgitos do sistema
decimal so codificados em termos dos nmeros hexadecimais, equivalentes
configurao binria, conforme demonstra a tabela abaixo:
Letras:
A=18; B=13; C=0E; D=12; E=10; F=16; G=0B; H=05; I=0C;
J=1A; K=1E; L=09; M=07; N=06; O=03; P=0D; Q=1D;
R=0A; S=14; T=01; U=1C; V=0F; W=19; X=17; Y=15; Z=11
Nmeros:
0=1F; 1=2A; 2=3C; 3=38; 4=34; 5=32; 6=36; 7=3A; 8=30; 9=1B.
Projetar um circuito para receber tal cdigo na entrada e apresentar uma sada
verdadeira, a cada vez que a informao de entrada corresponder a uma letra do
alfabeto, e uma sada falsa, quando a informao for numrica.
Observar que os demais cdigos, pertencentes ao sistema, se referem a smbolos
especiais, cujas configuraes no estaro disponveis na entrada do circuito
combinacional em questo.
8. Projetar um circuito de controle para desarmar um disjuntor de proteo,
quando ocorrer a energizao de uma prensa hidrulica, ao mesmo tempo em
que um sensor indique a presena de um operador, e determinada esteira
rolante se encontre funcionando, enquanto o sistema de empacotamento
automtico de determinado produto se encontre desligado.
9. Para o circuito abaixo, encontrar a tabela-verdade e a equao lgica em Soma
de Produtos e Produto de Somas. Implementar o mesmo circuito atravs de
um multiplexador.

134

5 FLIP-FLOPs
Os Flip-Flops so dispositivos especiais que permitem armazenar uma dada
informao do sistema binrio e, por essa razo, so tambm conhecidos como
elementos de memria ou clulas de memria.
Para descrever o comportamento das funes elementares dos circuitos
combinacionais, estudados anteriormente, as tabelas-verdade representavam uma
fonte de informaes que permitiam o estabelecimento das equaes lgicas.
Devido aos aspectos dinmicos do funcionamento dos FLIP-FLOPs, um outro
tipo de representao se torna mais indicado e designado como diagrama de
estados.
Os diagramas de estados permitem uma descrio bastante compacta das
transies (mudana de estado lgico de 0 para 1, ou vice-versa) que so
realizadas pelos FLIP-FLOPs, em funo das variveis de entrada e de sada,
alm de facilitarem a elaborao de uma tabela de estados, ou transio, a qual
caracteriza a dinmica do circuito.
Os FLIP-FLOPs so geralmente comandados por trens de pulsos (clock), que
definem com que freqncia as aes ou transies devem ocorrer, para que uma
determinada seqncia de operaes seja executada.
Cada Flip-Flop definido atravs de um diagrama de estados que d origem a
uma tabela-verdade denominada Tabela Caracterstica, da qual resultam outras
duas, conhecidas como Tabela de Estados (ou Tabela de Transio) e Tabela de
Excitao.
A Tabela Caracterstica explicita o que sucede na sada do dispositivo, em funo
das variveis de entrada, aps a ocorrncia de um pulso de comando ou tambm
denominado pulso clock.
A Tabela de Estados ou Transio uma verso expandida da Tabela
Caracterstica, constando o estado lgico do momento da observao (ou atual)
em que o dispositivo se encontra, alm das variveis de entrada nesse mesmo
momento, e a determinao do estado lgico seguinte da sada, em funo das
mencionadas variveis.

135

A Tabela de Excitao, por sua vez, determina quais so os valores lgicos


necessrios na entrada dos Flip-Flops para se programar uma transio desejada
no estado lgico da sada.
A sada desse dispositivo geralmente indicada na literatura tcnica e nos
manuais dos fabricantes pela letra Q. Tal sada, num determinado momento de
observao, identificada por Qn e, no momento seguinte, por Qn+1. Vale a pena
registrar que as sadas Qn e Qn+1 so a mesma sada fsica, em momentos distintos
de observao.
Quando tal sada se apresenta no estado lgico 1, diz-se que o Flip-Flop
encontra-se setado ou em estado SET. No caso oposto (estado lgico 0), diz-se
que o mesmo encontra-se resetado ou em estado RESET.
Os Flip-Flops mais utilizados so os denominados SR, JK, T e D.
A seguir, apresentam-se os mencionados dispositivos, com os seus respectivos
diagramas de estado, tabelas-verdade e as suas correspondentes equaes lgicas.

5.1 FLIP-FLOP SR:


5.1.1 Diagrama de Estados FF-SR:

O diagrama de estados mostrado acima indica esquematicamente o que ocorre


com a sada Q do Flip-Flop SR (ou RS) na presena dos valores lgicos das
entradas S e R, dependendo do estado em que a prpria sada se encontra. Por
exemplo: se o dispositivo se encontrar no estado lgico 0, num dado momento de
observao, caso as entradas SR estejam, respectivamente, com os valores 00 ou
01, o dispositivo ser mantido no estado em que se encontra (0); caso as entradas
apresentem os valores lgicos SR = 10, o Flip-Flop dever fazer a transio do
estado lgico 0 para o estado 1: ( 0 1 ). Este diagrama de estados tambm
indica que, no caso de o Flip-Flop se encontrar no estado lgico 1, se as entradas
S e R apresentarem valores lgicos 00 ou 10, o Flip-Flop continuar no estado
em que se encontra (1); entretanto, se as entradas assumirem os valores SR = 01,
136

o Flip-Flop mudar do estado lgico 1 para o estado 0: ( 1 0 ). Essas


mudanas de estado so denominadas transio. Evidentemente, o diagrama de
estados fornece os elementos essenciais para que as diversas tabelas-verdade
sejam construdas.

5.1.2 Tabela-Caracterstica FF-SR:

Como mencionado anteriormente, esta tabela-verdade descreve o que ocorre na


sada Q do dispositivo, no momento de observao (n+1) - aps a ocorrncia de
um dos pulsos de comando (clock) -, em funo dos valores lgicos das entradas
S e R, no momento de observao (n).
Assim,
Sn
0
0
1
1

Rn
0
1
0
1

Qn+1
Qn
0
1
x

Em consonncia com o Diagrama de Estados, esta tabela


indica que o estado seguinte de observao da sada (Qn+1)
corresponde ao estado atual de observao (Qn ), quando
SnRn= 00; que ocorre reset para SnRn=01 e set para SnRn=10.

O estado indiferente (x), representado na tabela-verdade, decorre do fato de que


neste dispositivo no se permite que as entradas S e R apresentem,
simultaneamente, nveis lgicos verdadeiros. Tal situao, devido prpria
concepo lgica deste Flip-Flop, resultaria numa ambigidade pois, tais
entradas estariam sendo apresentadas de sorte que o dispositivo teria que setar e
resetar simultaneamente. Na prtica, esta situao provocar uma instabilidade
no circuito eletrnico, no sendo possvel prever-se o estado lgico da sada Qn+1,
quando R=S=1. Por este motivo, o projetista dever evitar que as entradas S e R
assumam, concomitantemente, o valor lgico 1.

5.1.3 Tabela de Estados FF-SR:

Esta tabela-verdade, que nada mais do que uma expanso da tabelacaracterstica, registra qual ser o estado lgico previsto para a sada no momento
seguinte ao de observao ( Qn+1 ), em funo dos estados lgicos das entradas e
da prpria sada, no momento atual de observao (n).

137

Tabela de Estados ou Transio FF-SR:


DEC

Sn

Rn Qn

0
1
2
3
4
5
6
7

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

Qn+1
0
1
0
0
1
1
x
x

Observao: DEC, na tabela, corresponde aos MINTERMs ou aos valores em decimal


equivalentes configurao em binrio.

Conforme as tcnicas de abordagem apresentadas no captulo anterior, a equao


que define a funo a partir da tabela-verdade acima pode ser escrita como:
Qn+1 =

m (1,4,5) + d (6,7)

O termo d(6,7), define os MINTERMs indiferentes pertencentes funo.


Como se sabe, tais valores lgicos representados no Mapa de Karnaugh da
funo, podem ser teis na simplificao da equao a ser implementada.
Neste caso especfico, tem-se o seguinte Mapa de Karnaugh:

Logo, a equao simplificada atravs dos MINTERMs assinalados se apresenta


como:
_
Qn+1 = Sn + Qn Rn
Para SR

138

11

Por uma questo de convenincia de implementao, a partir da utilizao de


apenas um tipo de porta lgica, esta equao pode ser representada por portas
NAND ou por portas NOR, indiferentemente.
Caso deseje-se implementar esta funo a partir de portas do tipo NAND, a
equao acima, aps manipulaes algbricas bastante bvias, assume a seguinte
configurao:
________
_
_
Qn+1 = Sn + Qn.Rn
Da, pelo teorema de De Morgan,
___________
_____
_
_
Qn+1 = (Sn)) . (Qn.Rn )
O circuito resultante utilizando somente portas lgicas do tipo NAND, :

Q'
R

Como pode ser mostrado atravs da tabela de estados ou transio, todas as vezes
que a sada Q assume um dado valor lgico (no momento n+1), a sada do
NAND associada a Q, apresenta o valor lgico complementar ao da sada Q. Por
uma questo de praticidade e flexibilidade na utilizao dos Flip-Flops, as sadas
complementares quase sempre tambm se encontram disponveis nos Circuitos
Integrados (CIs) como parte integrante dos circuitos lgicos integrados. O
circuito mostrado acima geralmente denominado latch e se constitui na clula
bsica de memria ou no Flip-Flop essencial, sendo representado em diagramas
lgicos pelo bloco indicado abaixo:
S

QN

139

Do ponto de vista conceitual, o pulso clock (Cp ou Ck) que comanda o


dispositivo pode ser implementado pela anexao de circuitos do tipo AND ao
circuito anterior, resultando na configurao abaixo:
S
Q

Ck

Q'
R

Vale observar que os valores lgicos das entradas S e R so comunicados ou no


clula bsica de memria, dependendo do nvel lgico da entrada Ck, que
representa o pulso clock. A equao originalmente apresentada pode ser
implementada tambm a partir de portas lgicas do tipo NOR, conforme as
manipulaes algbricas a seguir:
Sendo
_
Qn+1 = Sn + Qn Rn
Logo, pelo teorema de De Morgan,
_______
_
Qn+1 = Sn + (Qn + Rn)

_
_
Qn+1 = (Sn )+ (Qn + Rn)

Da,

Esta expresso pode ser implementada, ento, pelo circuito bsico:


S

Q'

Q
R

140

A incluso do circuito que permite a atuao do clock, resulta na configurao:


S
Q'

Ck

Q
R

Nos Flip-Flops para uso profissional, circuitos detectores de subida ou descida


de pulsos so anexados, a exemplo dos circuitos indicados abaixo:

Ck

Cks

Ck

Ckd

Estes circuitos fazem com que o pulso clock permita a atuao da clula de
memria na subida (do nvel lgico 0 para o nvel lgico 1) ou na descida do
mesmo (do nvel lgico 1 para o nvel 0). Este artifcio permite que as transies
de um estado lgico para outro possam ocorrer com maior velocidade.
5.1.4 Tabela de Excitao FF-SR:

A Tabela de Excitao desse Flip-Flop representada por:


Qn Qn+1
0
0
1
1

S n Rn
0
1
0
x

0
1
0
1

x
0
1
0

Naturalmente, esta tabela-verdade define os estados lgicos necessrios nas


entradas do FF-SR para que as transies a representadas possam ocorrer.
Por exemplo: se o dispositivo estiver no estado lgico 0 (no momento de
observao n) e se deseja, aps a ocorrncia do pulso clock, que o mesmo se

141

mantenha nesse mesmo estado lgico, torna-se necessrio que a entrada S, no


momento de observao n, seja 0 (para no setar o dispositivo), mas a entrada R,
no mesmo momento de observao, pode apresentar qualquer valor lgico pois,
em sendo nvel lgico 0, a tabela caracterstica diz que o estado seguinte
sempre igual ao estado anterior e, em sendo nvel lgico 1, ocorrer um reset do
dispositivo. Considerando que o mesmo j se encontra resetado, o valor lgico
dessa entrada ser irrelevante para a obteno da operao pretendida. Do
mesmo modo, analisando a situao para o caso de o dispositivo se encontrar no
estado lgico 0, e vir a fazer a sua transio para o estado 1, necessrio se torna,
no momento de observao n, que as entradas S e R sejam respectivamente 1 e 0,
e assim por diante (vide Tabela Caracterstica).

5.2 FLIP-FLOP JK

A exemplo do Flip-Flop SR, o FF-JK apresenta o diagrama de estados, as


tabelas e as equaes lgicas, como indicados a seguir:

5.2.1 Diagrama de Estados FF-JK:

Como no caso anterior, o diagrama de estados indica o que ocorre com a sada Q
do Flip-Flop JK na presena dos valores lgicos das entradas J e K, dependendo
do estado em que a sada se encontra. Em outras palavras, se o dispositivo se
encontrar no estado lgico 0, num dado momento de observao, caso as
entradas JK estejam, respectivamente, com os valores 00 ou 01, o dispositivo
dever ser mantido no estado em que se encontra (0); caso as entradas
apresentem os valores lgicos JK = 10 ou 11, o Flip-Flop dever fazer a transio
do estado lgico 0 para o estado 1 (0 1). Este diagrama de estados tambm
indica que, no caso de o Flip-Flop se encontrar no estado lgico 1, se as entradas
S e R apresentarem valores lgicos 00 ou 10, o Flip-Flop continuar no estado

142

em que se encontra (1); entretanto, se as entradas assumirem os valores JK = 01


ou 11, o Flip-Flop mudar do estado lgico 1 para o estado 0 (1 0).
Como se sabe, o Diagrama de Estados fornece os elementos essenciais para que
as diversas tabelas-verdade sejam construdas. Vale ressaltar que o Flip-Flop JK
permite que as entradas assumam simultaneamente o estado lgico 1,
apresentando como estado seguinte (Qn+1), o complemento do estado atual de
observao ( Q n), no havendo portanto a restrio estabelecida no caso do FFSR.
5.2.2 Tabela-Caracterstica FF-JK:

Esta Tabela-Caracterstica difere da anterior (FF-SR), apenas pela condio das


entradas poderem apresentar simultaneamente o estado lgico 1, sendo o
comportamento das entradas J e K similar ao das entradas S e R,
respectivamente. Assim,
Qn+1
Jn Kn
0 0
Qn
0 1
0
1 0
1
1 1
Qn

5.2.3 Tabela de Estados FF-JK:

Ainda como no caso anterior, expandindo-se a Tabela-Caracterstica, chega-se


Tabela de Estados ou de Transio a seguir, onde as entradas J e K podem
assumir concomitantemente o valor lgico 1 , resultando no complemento do
estado lgico Qn.
DEC

Jn

Kn

Qn

0
1
2
3
4
5
6
7

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

143

Qn+1
0
1
0
0
1
1
1
0

Da Tabela de Estados ou de Transio acima, define-se a funo:


Qn+1 =

m(1,4,5,6).

O Mapa de Karnaugh pode ento ser construdo:

Pelas adjacncias indicadas, chega-se ento expresso:


_ _
Qn+1 = JnQn + KnQn
Esta expresso, como no caso do FF-SR, pode ser implementada tambm atravs
de portas lgicas NAND ou NOR, conforme indicado pela equao lgica.
Entretanto, a implementao do FF JK, por razo de praticidade, realizada
atravs da clula bsica do Flip-Flop SR, cujo circuito resultante mostrado
abaixo, utilizando-se o mtodo de converso explicado no item V.2.

Q'

144

A verso de tal circuito, incluindo a entrada do clock, portanto:

Ck

Q'
K

Devido necessidade de se dispor de circuitos seqenciais melhor sincronizados


e com a propriedade de serem setados ou resetados, independentemente tanto do
clock quanto das entradas, tornou-se muito popular o circuito mostrado abaixo,
denominado de Flip-Flop JK - MASTER-SLAVE. Do ponto de vista lgico, no
h qualquer diferena da sntese anteriormente realizada. Contudo, esta
concepo de montagem permite que, de acordo com os valores lgicos S ou R
sejam executadas as funes de PRESET ou PRERESET. Observa-se tambm
que o inversor presente no circuito somente libera o segundo estgio (SLAVE),
para efetuar eventuais transies, aps o trmino do clock, quando as sadas da
clula bsica do primeiro estgio (MASTER) j se encontram estabilizadas.
S

J
Q

Cp

Q'
K

MASTER

SLAVE
R

ou

145

S
J
Q
CP
K QN
R

Embora esta verso do Flip-Flop JK ainda se encontre em uso, as modernas


tecnologias permitem que as transies dos Flip-Flops ocorram para pulsos
extremamente estreitos tanto na subida quanto na descida dos mesmos, no
havendo problemas mais significativos quanto sincronizao de operaes,
desde que as caractersticas inerentes aos pulsos de comando indicadas pelos
fabricantes de tais circuitos, sejam obedecidas. Tais caractersticas so indicadas
nos manuais pertinentes.

5.2.4 Tabela de Excitao FF-JK:

Qn Qn+1
0
0
1
1

Jn Kn
0
1
x
x

0
1
0
1

x
x
1
0

Como j se sabe, esta tabela-verdade define os estados lgicos necessrios nas


entradas do FF-JK, para que as transies a representadas possam ocorrer.
Se o dispositivo estiver no estado lgico 0 (no momento de observao n) e se
deseja, aps a ocorrncia do pulso clock, que o mesmo continue nesse mesmo
estado, torna-se necessrio que a entrada J, no momento de observao n, seja 0
(para no setar o dispositivo), mas a entrada K, no mesmo momento de
observao, pode apresentar qualquer valor lgico pois, em sendo nvel lgico 0,
a tabela caracterstica diz que o estado seguinte igual ao estado anterior e, em
sendo nvel lgico 1, ocorrer um reset do dispositivo, mas, como ele j se
encontra resetado, o valor lgico dessa entrada irrelevante para a obteno da
operao pretendida. Do mesmo modo, analisando a situao para o caso de o
dispositivo se encontrar no estado lgico 0, e fazer a sua transio para o estado
1, necessrio se torna, no momento de observao n, que a entrada J seja 1,
podendo a entrada K assumir qualquer valor lgico pois, sendo K=0, o Flip-Flop
conduzido ao estado SET e sendo K=1, o Flip-Flop muda de estado, ou seja:
faz a transio de 0 para 1, resultando na mesma operao. No caso de as duas

146

entradas apresentarem valor lgico 1, o Flip-Flop simplesmente muda de estado


quando ocorre o pulso clock (vide Tabela Caracterstica).

5.3 FLIP-FLOP T

5.3.1 Diagrama de Estados FF-T:

O Diagrama de Estados indica que este Flip-Flop apresenta apenas uma entrada
denominada T. Quando a entrada T apresenta valor lgico 0, o Flip-Flop no
muda de estado e, quando tal entrada assume valor lgico 1, o Flip-Flop faz a
transio para o estado complementar ao que se encontrava no momento de
observao (n). As tabelas verdade resultantes apresentam-se a seguir:

5.3.2 Tabela Caracterstica FF-T:

Tn
0
1

Qn+1
Qn

DEC

Tn

Qn

0
1
2
3

0
0
1
1

0
1
0
1

Qn

5.3.3 Tabela de Estados FF-T:

147

Qn+1
0
1
1
0

A equao sob a forma numrica:


Qn+1 =

m(1,2).

O MK correspondente:

Evidentemente, a expresso resultante a de definio de um OR-Exclusivo


(XOR):
_
_
Q n + 1 = Qn Tn + Qn Tn
ou
Qn+1 = Qn Tn .
A implementao do circuito eletrnico deste Flip-Flop realizada normalmente
atravs da clula bsica do Flip-Flop SR ou do JK, conforme ser mostrado no
item V.2.

5.3.4 Tabela de Excitao FF-T:

Qn Qn+1

Tn

0
1
1
0

0
0
1
1

0
1
0
1

148

Esta tabela de excitao apenas indica que, no caso do Flip-Flop T, sempre que
se deseja promover uma transio (0 1 ou 1 0), deve-se apresentar na
entrada T o valor lgico 1. Naturalmente, o valor 0 na entrada T faz com que o
Flip-Flop mantenha-se no estado em que se encontrava no momento de
observao n.

5.4 FLIP-FLOP D

5.4.1 Diagrama de Estados FF-D:

Similarmente ao caso anterior, o Diagrama de Estados indica que este Flip-Flop


apresenta apenas uma entrada denominada D. Quando o Flip-Flop se encontra
resetado (Qn = 0) e a entrada D apresenta valor lgico 0, o Flip-Flop no muda
de estado. Quando essa entrada assume valor lgico 1, o Flip-Flop faz a transio
para o estado lgico 1 (Qn+1 = 1). Caso o Flip-Flop se apresente setado (Qn = 1),
e a entrada D apresente valor lgico 1, o Flip-Flop no muda de estado. Quando a
mencionada entrada assume o valor lgico 0, o Flip-Flop faz a transio para o
estado lgico 0 (Qn+1 = 0).
Na prtica, o diagrama de estados informa apenas que a estado seguinte do FlipFlop D (Qn+1) sempre determinado pelo valor lgico da entrada D, no momento
de observao n (Dn), conforme fica demonstrado pelas tabelas-verdade a seguir:

5.4.2 Tabela Caracterstica FF-D:

Dn
0
1

Qn+1
0
1

149

5.4.3 Tabela de Estados FF-D:

DEC

Dn

Qn

Qn+1

0
1
2
3

0
0
1
1

0
1
0
1

0
0
1
1

Da,
Qn+1 =

m(2,3).

Mapa de Karnaugh:

Logo,
Qn+1 = Dn

Assim como no caso do Flip-Flop T, o Flip-Flop D implementado a partir da


clula bsica do Flip-Flop SR ou do JK, conforme ser mostrado adiante.

5.4.4 Tabela de Excitao FF-D:

Qn Qn+1
0
0
1
1

Dn
0
1
0
1

0
1
0
1

Esta Tabela de Excitao informa apenas que, quando se deseja que o estado
seguinte do Flip-Flop (Qn+1) apresente um determinado valor lgico, basta

150

assegurar que esse valor lgico esteja presente na entrada D, no momento de


observao n.
Um Flip-Flop que apresente a caracterstica de a sada apenas seguir o valor
lgico da entrada, mediante a ocorrncia de um pulso clock, muito utilizado
como armazenador de uma informao binria, e a sua utilizao em momentos
adequados pode ser extremamente importante dentro de uma dada seqncia de
operaes, como ser mostrado oportunamente.

5.5 CONVERSO DE FLIP-FLOPS

Qualquer tipo de Flip-Flop pode ser transformado em qualquer outro, inclusive


num Flip-Flop especial, cuja tabela caracterstica venha a ser definida pelo
usurio. Para tanto, utilizam-se as tabelas de excitao do Flip-Flop que se
encontra disponvel, em contraposio com a do Flip-Flop desejado. Em seguida,
encontra-se a equao, ou equaes, das variveis de entrada do Flip-Flop
disponvel, em funo de Qn e da entrada, ou entradas, do Flip-Flop desejado. A
equao, ou equaes, resultantes definem os circuitos combinacionais capazes
de programar a transio do Flip-Flop disponvel, tal que o mesmo se comporte
segundo a tabela de transio do desejado.
Esquematicamente, pode-se indicar o procedimento usado da seguinte maneira:

O diagrama acima representa o FF1 (disponvel) que dever ser transformado no


FF2 (desejado ou necessrio), atravs do circuito combinacional (Circ.Comb).
Para facilitar a compreenso do mtodo exposto, vrios exemplos de converso
entre tais dispositivos so apresentados a seguir.

151

5.5.1 Converso do FF SR em FF JK

A converso ou a implementao de um Flip-Flop JK atravs de um Flip-Flop


SR, como explicada anteriormente, realizada atravs da contraposio entre as
Tabelas de Excitao do SR (disponvel) e JK (desejado), tal que se possa
determinar as equaes:
Sn =

( Qn , Jn , Kn ) e Rn = ( Qn , Jn , Kn )

Como j se sabe, as tabelas em questo so as indicadas abaixo, onde as entradas


do Flip-Flop desejado aparecem em negrito:

Qn Qn+1
0
0
1
1

0
1
0
1

Sn Rn
0
1
0
x

x
0
1
0

Jn Kn
0
1
x
x

x
x
1
0

Partindo-se, pois, das tabelas acima, v-se que os valores lgicos de Sn e Rn


podem ser inseridos nos Mapas de Karnaugh correspondentes, em funo dos
valores lgicos de Qn, Jn e Kn , para todos os MINTERMs constantes dos
citados Mapas.
Assim,
Sn

Rn

_
Sn = Qn J n

Rn = Qn Kn-

ou
152

J
K

QN

5.5.2 Converso do FF-SR em FF-T

A converso ou a implementao de um Flip-Flop T, atravs de um SR, pode ser


realizada do mesmo modo, desde que as equaes lgicas para S e R sejam
encontradas em funo do estado Qn do FF disponvel e da entrada T do
desejado.
As Tabelas de Excitao dos dois FF so apresentadas a seguir:
Qn Qn+1
0
0
1
1

Sn Rn
0
1
0
x

0
1
0
1

x
0
1
0

Tn
0
1
1
0

As equaes de Sn e Rn em funo de Qn e Tn so encontradas a partir dos


Mapas de Karnaugh a seguir, onde os estados lgicos de Sn e Rn so inseridos
nos respectivos Mapas para todos os MINTERMS relativos s variveis Qn e Tn :
Sn

Rn

_
Sn = Qn Tn

Rn = Qn Tn

Logo,

153

Assim, tendo-se o FF-SR mostrado abaixo e direita, anexando-se os ANDs


indicados pelas equaes acima, obtm-se um circuito cujas transies
correspondem quelas de um FF do tipo T.

QN

5.5.3 Converso do FF-SR em FF-D

Repetindo-se o procedimento para o caso de se converter um FF-SR em FF-D,


tem-se as tabelas de excitao:
Qn Qn+1
0
0
1
1

Sn Rn
0
1
0
x

0
1
0
1

x
0
1
0

Dn
0
1
0
1

e
Os Mapas de Karnaugh correspondentes:
Sn

Rn

S n = Dn

_
Rn = Dn

Logo,

ou
D

154

QN

5.5.4. Converso do FF-JK em FF-T

Ainda segundo o mesmo processo:


Qn Qn+1
0
0
1
1

Jn Kn

Tn

0
1
x
x

0
1
1
0

0
1
0
1

x
x
1
0

Mapas de Karnaugh:
Kn

Jn

ou
Jn = Tn

Kn = Tn

Apesar de os Mapas de Karnaugh indicarem tal resultado, uma observao um


pouco mais atenta s tabelas de excitao acima revela, por inspeo, que, tanto a
entrada Jn quanto a Kn coincidem com o valor lgico da entrada Tn , resultando
em Jn = Kn = Tn , ou no circuito equivalente:

S
J
Q
CP
K QN
R

155

5.5.5 Converso do FF-D em FF-T

Pelo mesmo processo, temos as Tabelas de Excitao e o Mapa de Karnaugh


correspondentes:
Tabelas de Excitao:
Qn Qn+1

Dn

Tn

0
1
0
1

0
1
1
0

0
0
1
1

0
1
0
1

Mapa de Karnaugh:

Equao :
D n= Q n

Tn

ou
T

CP QN

5.5.6 Converso do FF-SR num FF qualquer

Seja um Flip-Flop qualquer, de entradas A e B, definido pela seguinte TabelaCaracterstica:


A n Bn
0 0
0 1
1 0
1 1

Operao em Qn+1
mudar de estado
setar o dispositivo
resetar o dispositivo
manter o estado anterior

A Tabela acima pode ser facilmente representada pelo diagrama de estados:


156

Expandindo-se a Tabela-Caracterstica, ou mesmo atravs do prprio diagrama


de estados, chega-se Tabela de Estados ou de Transio:
DEC

An

Bn Qn

0
1
2
3
4
5
6
7

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

Qn+1

0
1
0
1
0
1
0
1

1
0
1
1
0
0
0
1

Da Tabela de Estados ou de Transio acima, define-se a funo:


Qn+1 =

m(0,2,3,7).

O Mapa de Karnaugh pode ento ser construdo:

157

Pelas adjacncias indicadas, chega-se ento expresso:


_ _
Qn+1 = An Qn + Bn Qn
Como nos casos anteriores, este Flip-Flop hipottico, de entradas A e B , poderia
ser sintetizado a partir de portas lgicas NANDs ou NORs. Contudo, realizando
a implementao do mesmo atravs da clula bsica do FF-SR, conforme
solicitado acima, chega-se s tabelas de excitao a seguir, e aplica-se o
procedimento de converso j demonstrado em diversos exemplos anteriores:
Tabelas de Excitao:
Qn Qn+1
0
0
1
1

Sn Rn
0
1
x
x

0
1
0
1

An Bn

x
x
1
0

1
0
x
x

x
x
0
1

Mapas de Karnaugh correspondentes:


Sn

Rn

Equaes simplificadas:
_ _
Sn = Q n A n

_
Rn= Qn Bn

Vale dizer ento que, o circuito que realiza o FF-AB, atravs do FF-SR, :

An

Bn

158

QN

Q'

6 IMPLEMENTAO DE CIRCUITOS LGICOS


& FIELD PROGRAMMABLE GATE ARRAY - FPGAs
6.1 CONSIDERAES GERAIS

As portas lgicas integradas so fabricadas de modo a que num nico bloco de


material semicondutor ("chip"), um ou mais circuitos completos para realizar
determinadas funes so implementados, agrupando-se de forma compacta e
indissocivel diversos dispositivos e portas lgicas bsicas, alm de circuitos de
larga utilizao, tais como: contadores, codificadores, decodificadores, e variado
nmero de funes lgicas de interesse aplicado.
O material semicondutor que serve como substrato, e as tcnicas utilizadas para a
fabricao dos circuitos integrados so de fundamental importncia na definio
das caractersticas eltricas distintas entre os circuitos sintetizados. Tais
caractersticas, e o grau de compactao ou densidade de integrao dos
circuitos, so fatores preponderantes no estabelecimento das suas propriedades
gerais e, conseqentemente, no grau de aplicabilidade de cada um deles. A
grande diversidade de caractersticas e a densidade de integrao dos circuitos
integrados permitem classific-los em linhas ou famlias, as quais so
caracterizadas segundo o seu grau de integrao e o tipo de componentes ativos e
passivos utilizados no processo da sua fabricao. Assim, os circuitos so
classificados como:
-SSI ("Small Scale Integration")
Correspondendo queles circuitos que possuem at 12 portas lgicas
bsicas integradas.
-MSI ("Medium Scale Integration")
Correspondendo queles circuitos que possuem at 99 portas lgicas
mais sofisticadas, sintetizando algumas funes lgicas mais
utilizadas, objetivando reduzir as conexes externas entre vrios
circuitos SSI que realizariam a mesma funo lgica.
-LSI ("Large Scale Integration")
Estes circuitos possibilitam a realizao de funes mais complexas
que suscitariam a interconexo entre vrios outros classificados
como MSI e SSI, a exemplo de microprocessadores,
microcontroladores, memrias, relgios digitais e outros.

159

-VLSI ("Very Large Scale Integration")


Por extenso, estes circuitos desempenham funes que necessitam
de vrios CIs do tipo MSI ou LSI para implement-los, a exemplo
de unidades aritmticas, e memrias de maior porte.
Quanto ao tipo de componentes que so utilizados para a implementao fsica
dos circuitos, vrias linhas ou famlias de circuitos lgicos so fabricadas, a
saber:
RTL ("Resistor Transistor Logic")
DTL ("Diode Transistor Logic")
TTL ("Transistor Transistor Logic")
ECL ("Emitter Coupled Logic")
CMOS ("Complementary Metal Oxide Semiconductor")
VMOS ("Vertical Metal Oxide Semiconductor")
I2L ("Integrated Injection Logic")
As famlias de circuitos lgicos RTL e DTL, de grande valor histrico, so
consideradas obsoletas, sobretudo em decorrncia do desenvolvimento das
famlias TTL, CMOS, ECL e outras, as quais apresentam hoje grande
diversificao de portas lgicas e funes, melhor resposta em freqncia, sendo
a famlia ECL a de escolha natural especialmente quando se necessita adequado
desempenho em elevadas freqncias pois, enquanto nas demais famlias os
semicondutores trabalham entre a regio de corte e a de saturao, na famlia
ECL os transistores operam entre a regio de corte e a linear, sem entrar em
saturao, o que reduz o tempo de resposta, permitindo a sua utilizao em mais
elevadas freqncias.
A tecnologia dos circuitos integrados faculta ao projetista dos circuitos lgicos,
ou digitais, a opo dos Field Programmable Gate Arrays ou FPGAs, os quais
possibilitam a implementao de circuitos com maior flexibilidade,
especialmente por apresentarem uma lgica programvel, propiciando a sntese
de configuraes distintas atravs de softwares, permitindo que considervel

160

nmero de funes possam vir a ser configuradas num mesmo bloco de circuito
integrado, a exemplo de codificadores, decodificadores, interfaces, controladores,
contadores, memrias semicondutoras, shift-registers, etc.
Assim como nos circuitos digitais integrados sob a forma de portas lgicas do
tipo AND, NAND, OR, NOR, OREx, NOREx, AOI, Flip-Flops e outras, vrias
Famlias de FPGAs surgiram, sendo as suas caractersticas e aplicaes
apresentadas nos manuais dos respectivos fabricantes, mediante Application
Notes correspondentes.
Dentre as diversas Linhas ou Famlias de FPGAs destacam-se as seguintes
Famlias: XC4000, Spartan, Spartan XL, Spartan-II, Virtex, Virtex-E,
Virtex-II/Virtex-II PRO e Spartan 3, alm de outras desenvolvidas por
indstrias especializadas, cada uma delas objetivando apresentar elevada
performance ou desempenho dos circuitos eletrnicos que utilizam tais
dispositivos.
As consideraes aqui apresentadas visam apenas mostrar algumas opes
relativas sntese dos circuitos lgicos que so desenvolvidos a partir dos
procedimentos discutidos nos captulos anteriores, assunto este que se encontra
em permanente evoluo, enquanto tecnologia aplicada, e foge ao escopo do
presente trabalho, o qual procura principalmente apresentar os mtodos de
anlise e sntese dos circuitos lgicos, enfatizando a sua metodologia ou filosofia
de abordagem, em lugar dos aspectos estritamente tecnolgicos.
Naturalmente, os leitores interessados nos aspectos eminentemente tcnicos
quanto implementao dos circuitos dessa natureza, tero acesso s
informaes adequadas nos manuais dos fabricantes, buscando compatibilizar a
sntese dos circuitos especficos a serem desenvolvidos com a disponibilidade
das portas lgicas, ou circuitos integrados dedicados, disposio nos seus
laboratrios.
Vale ressaltar ainda que, grande nmero de referncias a livros, manuais e artigos
sobre esse tema encontra-se disponvel tambm atravs de Application Notes
em artigos especializados, inclusive de fcil acesso por meio eletrnico via
internet (Wikipdia ou similares).
As consideraes abaixo, por exemplo, de carter mais aplicado aos dispositivos
em pauta, so provenientes de informaes fornecidas diretamente dos manuais
dos fabricantes ou sites especializados, para efeito de ilustrao quanto s

161

disponibilidades de recursos tecnolgicos, e s suas aplicaes na soluo de


problemas concretos na elaborao de circuitos e projetos aplicados.
A grande maioria dos chips utilizados nos equipamentos eletrnicos de uso
geral, tais como: rdios, televisores, telefones celulares, e outros, so prprogramados; ou seja, tm as suas funes especficas previamente definidas no
ato da sua fabricao.
A evoluo na fabricao dos circuitos integrados permitiu ento uma nova
categoria de hardwares reconfigurveis, os quais tm as suas funes finais
definidas pelos prprios usurios, a exemplo dos FPGAs (Field Programmable
Gate Arrays), dispositivos largamente utilizados especialmente no
processamento de informaes digitais.
O FPGA composto basicamente por trs tipos de componentes: Blocos de
Entrada e Sada (IOB), Blocos Lgicos Configurveis (CLB) e Chaves de
Interconexo (Switch Matrix).
Os mencionados Blocos Lgicos so dispostos de forma bidimensional; as
chaves de interconexo so dispostas em formas de trilhas verticais e horizontais
entre as linhas e as colunas dos blocos lgicos. Assim, alguns termos comuns e
presentes nos manuais de tais dispositivos suscitam esclarecimentos, a exemplo
de:
CLB (Configuration Logical Blocks):
Circuitos idnticos, construdo pela reunio de flip-flops (entre 2 e 4) e a
utilizao de lgica combinacional. Utilizando os CLBs, o usurio pode
construir diversos elementos funcionais lgicos.
IOB (Input/Output Block):
So circuitos responsveis pelo interfaceamento das sadas provenientes
das combinaes de CLBs. So basicamente buffers, que funcionaro
como um acoplamento bidirecional entrada-sada do FPGA.
Switch Matrix (chaves de interconexes):
Trilhas utilizadas para conectar os CLBs e IOBs. O terceiro grupo
composto pelas interconexes. Os recursos de interconexes possuem
trilhas para conectar as entradas e sadas dos CLBs e IOBs para
as redes apropriadas.

162

Geralmente, a configurao estabelecida por programao interna das


clulas de memria esttica, que determinam funes lgicas e conexes
internas implementadas no FPGA entre os CLBs e os IOBs. O processo
de escolha das interconexes chamado de roteamento.
6.1.1 Consideraes sobre a tecnologia do FPGA:

O FPGA um chip que possibilita a implementao de circuitos lgicos


relativamente complexos, consistindo de um grande arranjo de clulas lgicas ou
blocos lgicos configurveis, contidos em um nico circuito integrado, conforme
anteriormente mencionado. Vale observar que, cada clula contm capacidade
computacional para implementar funes lgicas e efetuar o roteamento para
comunicao entre elas.
O primeiro FPGA disponvel comercialmente foi desenvolvido pela empresa
Xilinx Inc, em 1983. Os FPGAs no possuem planos OR ou AND, e consistem
de um grande arranjo de clulas configurveis que podem ser utilizadas para a
implementao de funes lgicas.
Um FPGA basicamente constitudo por blocos lgicos, blocos de entrada e
sada, e chaves de interconexo. Os blocos lgicos formam uma matriz
bidimensional, e as chaves de interconexo so organizadas como canais de
roteamento horizontal e vertical entre as linhas e colunas dos blocos lgicos. Os
canais de roteamento possuem chaves de interligao programveis que
permitem conectar os blocos lgicos de maneira conveniente, em funo das
necessidades de cada projeto. No interior de cada bloco lgico do FPGA existem
vrios modos possveis para a implementao de funes lgicas. O mais
utilizado pelos seus fabricantes, a exemplo da Empresa Altera Corp., o bloco
de memria LUT (Look-Up Table). Esse tipo de bloco lgico contm clulas de
armazenamento que so utilizadas para implementar pequenas funes lgicas.
Cada clula capaz de armazenar um nico valor lgico: zero ou um.
Nos FPGAs disponveis comercialmente, tais blocos lgicos LUTs possuem
geralmente quatro ou cinco entradas, o que permite enderear 16 ou 32 clulas de
armazenamento. Quando um circuito lgico implementado em um FPGA, os
blocos lgicos so programados para realizar as funes desejadas, e os canais de
roteamento so estruturados de forma a efetuar as interconexes necessrias entre
tais blocos lgicos. As clulas de armazenamento dos LUTs de um FPGA so
volteis, o que implica na perda do contedo armazenado, no caso de falta de
suprimento de energia eltrica. Dessa forma, tal dispositivo deve ser

163

reprogramado toda vez que for energizado. Assim, geralmente utiliza-se uma
pequena memria FLASH EEPROM (Electrically Erasable Programmable Read
Only Memory), cuja funo carregar automaticamente as clulas de
armazenamento, a cada vez que o FPGA re- energizado.
6.1.2 Para efeito de ilustrao, apresenta-se abaixo o aspecto de um FPGA
da Altera

Um FPGA da Altera com 20.000 clulas.


Objetivando-se classificar os FPGAs quanto ao bloco lgico pertinente, foram
criadas algumas categorias, a saber:
Gro grande: podem possuir como gro unidades lgicas e
aritmticas, pequenos microprocessadores e memrias.
Gro mdio: freqentemente contm duas ou mais LUTs e dois ou
mais flip-flops.
Gro pequeno: contm um grande nmero de blocos lgicos simples.
Os blocos lgicos normalmente contm uma funo lgica de duas
entradas ou um multiplexador 4x1 e um flip-flop.
A arquitetura de roteamento de um FPGA a forma pela qual os seus
barramentos e chaves de comutao so posicionados para permitir a
interconexo entre as clulas lgicas. Essa arquitetura deve permitir que se
obtenha um roteamento completo e, ao mesmo tempo, uma alta densidade de
portas lgicas. Para uma melhor compreenso dessa arquitetura, torna-se
necessria a definio de nomenclaturas e alguns conceitos bsicos tais como:

164

Pinos: entradas e sadas dos blocos lgicos;


Conexo: ligao eltrica de um par de pinos;
Rede: um conjunto de pinos que esto conectados;
Segmento de trilha no interrompido por chaves programveis;
Bloco de Comutao: utilizado para conectar 2 segmentos de
trilha;
Canal de roteamento: grupo de duas ou mais trilhas paralelas.
Bloco de conexo: permite a conectividade das entradas e sadas
de um bloco lgico com os segmentos de trilhas nos canais.
As chaves programveis de roteamento apresentam algumas propriedades, tais
como: tamanho, resistncia, capacitncia e tecnologia de fabricao, que afetam
principalmente a velocidade e o tempo de propagao dos sinais, e definem
caractersticas como volatilidade e capacidade de reprogramao. Na escolha de
um dispositivo reconfigurvel, esses fatores devem ser avaliados. Basicamente
existem trs tipos de tecnologias de programao das chaves de roteamento:
SRAM (Static Random Access Memory): nesta tecnologia, a chave de
roteamento ou comutador um transistor de passagem ou um
multiplexador controlado por uma memria esttica de acesso aleatrio
SRAM. Devido volatilidade dessas memrias, os FPGAs que se utilizam
dessa tecnologia precisam de uma memria externa tipo FLASH
EEPROM. Essa tecnologia ocupa muito espao no circuito integrado,
entretanto rapidamente reprogramvel.
Antifuse: esta tecnologia baseia-se num dispositivo de dois terminais, que
no estado no programado apresenta uma alta impedncia (circuito
aberto). Aplicando-se uma tenso, por exemplo, entre 11 e 20 Vdc, o
dispositivo forma um caminho de baixa impedncia entre seus terminais.
Gate flutuante: baseia-se em transistores MOS (Metal Oxide
Semiconductor), especialmente construdo com dois gates flutuantes
semelhantes aos usados nas memrias EPROM (Erasable Programmable
Read Only Memory) e EEPROM (Electrical EPROM). A maior
vantagem dessa tecnologia a sua capacidade de programao e a
reteno dos dados. Alm disso, da mesma forma que uma memria
EEPROM, os dados podem ser programados com o circuito integrado
instalado na placa, caracterstica denominada ISP (In System
Programmability).

165

Encontram-se atualmente no mercado trs tipos importantes de FPGAs, os quais


apresentaro os desempenhos pertinentes, dependendo das aplicaes para as
quais os mesmos venham a ser destinados:
RAM Esttica: FPGA na qual suas conexes entre as portas so feitas entre
blocos lgicos por meio de portas de transmisso ou multiplexadores controladas
por clulas SRAM. Tem como vantagem a possibilidade de ser rapidamente
configurada, porm exige hardware externo auxiliar que deve ser montado junto
com os blocos lgicos.
Transistores de Passagem: Esta uma opo de menor custo que a opo
anteriormente citada, sendo composta por uma grande concentrao de
transistores configurados em modo de corte ou modo de conduo.
EPROM/EEPROM: Baseada na tecnologia de criao de memrias EPROM e
EEPROM, sendo a sua principal vantagem a de permitir a reprogramao sem
que se precise armazenar a configurao externa.
6.1.3 Consideraes necessrias

Alm das funes lgicas ou digitais, alguns FPGAs dispem de recursos


analgicos, permitindo, portanto, a implementao de Conversores
Analgico/Digital (ADC) e Digital/Analgico (DAC), oferecendo grande
flexibilidade ao projetista. Tais circuitos so definidos como estrutura de
interconexo programvel ou (FPAA), e tambm permitem valores
analgicos nesta interconexo.
Para efeito da implementao de circuitos mais complexos, vale ressaltar
a possibilidade da aplicao dos Circuitos Integrados CPLDs (Complex
Programmable Logic Devices), os quais podem promover a sntese de
circuitos lgicos/digitais programveis de muito maior grau de
complexidade!
Evidentemente, o estudo mais aprofundado de tais dispositivos
extrapolaria completamente a inteno inerente ao presente trabalho!.
Algumas referncias sobre esses temas tambm podem ser encontradas
na bibliografia indicada. Contudo, devido dinmica inerente a essas
tecnologias, os manuais dos fabricantes e suas Application Notes
constituem-se na melhor e mais adequada fonte de referncia, no sentido
de se promover a otimizao de um projeto especfico a ser levado a
termo de modo econmico e eficaz.
166

6.2 PESQUISAS EM FPGA

Navarre AsyncArt. Asynchronous-SOPC research. Universidade de


Navarre
Reconfigurable Network Group da Universidade de Washington
Circuits and Systems Group, Imperial College, London
MEANDER FPGA Design Framework from the Democritus University of
Thrace (Greece)
Pesquisas em FPGA da Universidade de British Columbia
Pesquisas em FPGA da Universidade de Toronto
Pesquisas em FPGA da Northeastern University
Pesquisas em FPGA da Universidade de Sao Paulo - LCR/ICMC/USP
FPGA Reliability Studies, Brigham Young University
The Virginia Tech Configurable Computing Laboratory
Computer System Design Lab da Universidade de Kansas
GRECO-Grupo de Engenharia da Computao - Centro de Informtica da
UFPE
LAD - Laboratrio de Arquiteturas Dedicadas - Grupo de Arquiteturas
Dedicadas - Centro de Engenharia Eltrica e Informtica - UFCG
FPGA Database.

167

168

REFERNCIAS

BARNA, A.; PORAT, D. I. Integrated circuits in digital electronics. York: John


Wiley, 1973.

BARTELT, Terry L. M. Digital electronics: an integrated laboratory approach.


New Jersey: Prentice Hall, 2002.

BURGER, Peter. Digital design: a practical course. New York: John Wiley,
1988.

COSTA, Csar da. Projetando controladores digitais com FPGA. So Paulo:

DEWEY, Allen. Analysis and design of digital systems with VHDL. AndoverUK: International Thomson, 1997.

FLETCHER, W. I. An engineering approach to digital design. New Jersey:


Prentice Hall, 1980.

FLOYD, Thomas L. Sistemas digitais: fundamentos e aplicaes. 9. ed. So


Paulo: Artmed, 2007.

GREENFIELD, J. D. Practical digital design using ICs. 2th ed. New York: John
Wiley, 1983.

HARTMUT, F.-W.; SADROZINSKI; JINYUAN ,Wu.


Aplicaes de
programmable gate Arrays de Campo em Investigao
Cientfica .
London: Taylor & Francis, 2010.

HILL, F. J.; PETERSON, G. R. Digital logic and microprocessors. New York:


John Wiley, 1984.

HILL, F. J.; PETERSON, G. R. Introduction to switching theory and logical


design. 2th ed. New York: John Wiley, 1974.

MELO, Mairton. Circuitos digitais e microprocessadores. So Paulo: McGraw


Hill do Brasil, 1993.

MORENO, Edward David; PENTEADO, Cesar Giacomini; RODRIGUES,


Alexandre Csar. Microcontroladores e FPGAs - Aplicaes em Automao.
So Paulo: Novatec, 2005.
SARAIVA, Fregni. Engenharia do projeto lgico e digital: circuitos e Prtica.
So Paulo: Edgard Blcher, 1995.

TOCCI, Ronald J. Sistemas digitais: princpios e aplicaes. 5. ed. Rio de


Janeiro: Prentice-Hall do Brasil, 1994.
169

COLOFO
Formato

21 X 29,7 cm
Tipologia

Times New Roman


Papel

Alcalino 75 g/m2 (miolo)


Carto Supremo 300 g/m2 (capa)
Impresso

Setor de Reprografia da EDUFBA


Capa e Acabamento

Cian
Tiragem

300

170