Escolar Documentos
Profissional Documentos
Cultura Documentos
FEUP
Arquitetura e Organizao de
Computadores - EIC0083
1 ano, 1 semestre - 2014/15
Circuitos combinatrios
Antnio Jos Duarte Arajo
lgebra de Boole
1854 - George Boole
formular proposies como V ou F
combinar proposies
avaliar a sua veracidade ou falsidade
(T1) X 1 = X
(T2) X + 1 = 1
(T2) X 0 = 0
(T3) X + X = X
(T3) X X = X
(T4) (X) = X
(T5) X + X = 1
Antnio Jos Arajo, FEUP
(T5) X X = 0
(T6) XY=YX
(T7) (X+Y)+Z=X+(Y+Z)
(T8) XY+XZ=X(Y+Z)
(T9) X+XY=X
(T9) X(X+Y)=X
(T10) X(X+Y) = XY
(T11) XY+XY = X
(T11) (X+Y)(X+Y) = X
Generalizando:
[F(X1, X2, X3, ... Xn, +, ) ] =
F(X1, X2, X3,..., Xn, , +)
Antnio Jos Arajo, FEUP
Simplificao de expresses
Exemplo
(AB+(A+B))+AC =
AB+AB+AC = (leis de De Morgan, T13)
A(B+B)+AC =
(teorema T8)
A1+AC =
(teorema T5)
A+AC =
(teorema T1)
A
(teorema T9)
Antnio Jos Arajo, FEUP
10
Formas de representao
Expresso algbrica:
F(X,Y,Z)=ZY+XZ+YZ
Tabela de verdade: todos os valores de F()
Circuito lgico
Antnio Jos Arajo, FEUP
11
Tabela de verdade
2N linhas
(combinaes
das entradas)
ordem natural
crescente
X
0
0
0
0
1
1
1
1
Y
0
0
1
1
0
0
1
1
Z F(X,Y,Z)
0
1
1
1
0
0
1
0
Valores da funo
0
1
1
1
0
0
1
1
12
Tabela de verdade
X
0
0
0
0
1
1
1
1
Y
0
0
1
1
0
0
1
1
Z F(X,Y,Z)
0
1
1
1
0
0
1
0
0
1
1
1
0
0
1
1
Y
0
1
0
1
1
Z F(X,Y,Z)
x
1
x
0
x
1
0
0
1
1
x significa 0 ou 1
13
Circuito lgico
portas lgicas elementares
E
A
A.B
OU
A
A+B
NO
A
A
0
0
1
1
B A.B
0 0
1 0
0 0
1 1
A
0
0
1
1
B A+B
0 0
1 1
0 1
1 1
A A
0 1
1 0
circuito lgico
X.Z
F(X,Y,Z)
Z.Y
Z
Y
Z .Y
14
Circuito lgico
As portas lgicas E e OU podem ter um nmero qualquer de entradas
(na realidade, limitado por razes ligadas realizao fsica dos circuitos eletrnicos)
A
B
C
D
A
B
C
A.B.C.D
A+B+C
A.B
A+B
A.B
A
B
A+B
15
X Y
0 0
0 0
0 1
0 1
1 0
1 0
1 1
1 1
Z F(X,Y,Z)
0
1
XYZ
1
1
XYZ
0
0
1
0
0
1
XYZ
1
1
XYZ
0
0
1
1
XYZ
16
X Y
0 0
0 0
0 1
0 1
1 0
1 0
1 1
1 1
Z F(X,Y,Z)
0
1
1
1
0
0
X+Y+Z
1
0
X+Y+Z
0
1
1
1
0
0
X+Y+Z
1
1
F(X,Y,Z)= (X+Y+Z)(X+Y+Z)(X+Y+Z)
Antnio Jos Arajo, FEUP
17
Sntese de circuitos
combinatrios
Expresses booleanas no simplificadas
soma cannica e produto cannico
realizadas como circuitos lgicos de 2 nveis:
F(X,Y,Z) = (X+Y+Z)(X+Y+Z)(X+Y+Z)
Y
Z
X
SOP
POS
AND-OR
OR-AND
nvel de portas OR
AOCO_2014/15 - Circuitos combinatrios
18
19
F(X,Y,Z)
Y
X
Z
E os inversores?
E s com NAND de 2 entradas?
Antnio Jos Arajo, FEUP
F(X,Y,Z)
Leis de DeMorgan:
Um OR com as entradas
negadas um NAND!
20
21
22
Desenho de circuitos
Portas lgicas elementares
A sua funo especificada pelo seu smbolo
Funes complexas
No existem smbolos padro para cada funo
Usa-se um retngulo com entradas e sadas
Funo: tabela de verdade
Entrada ativa com 1
A
EN_A
EN_B
23
Barramentos
Grupo de N sinais lgicos relacionados
Representam um dado com N bits
Usam-se nomes do tipo A[7:0]
(MSB)
A7 A6 A5 A4 A3 A2 A1 A0
n de bits
A[7:0]
B[7:0]
A[3:1]
8
8
A
A>B
B
comparador
barramento (8 bits)
Antnio Jos Arajo, FEUP
(LSB)
fio (1 bit)
AS
Y
MAX[7:0]
B
multiplexador
24
Descodificadores
Descodificadores (decoders)
N entradas e M sadas, N < M (geralmente)
Transforma um cdigo noutro com mais bits
Descodificador binrio (ou N para 2N)
Exemplo: descodificador 2 4 (2 para 4)
EN
0
1
1
1
1
Y0
I1
Y1
I0
Y2
EN
Y3
I1
x
0
0
1
1
I0
x
0
1
0
1
Y3
0
0
0
0
1
Y2
0
0
0
1
0
Y1
0
0
1
0
0
Y0
0
1
0
0
0
25
Descodificadores
Descodificadores disponveis como CIs
Descodificador binrio 2 4
G
0
1
1
1
1
B
x
0
0
1
1
A
x
0
1
0
1
Y3
0
0
0
0
1
Y2
0
0
0
1
0
Y0
/Y0
Y1
/Y1
Y2
/Y2
Y3
/Y3
B
/G
Y1
0
0
1
0
0
Y0
0
1
0
0
0
/G
1
0
0
0
0
B
x
0
0
1
1
A
x
0
1
0
1
Descodificadores
- Descodificador binrio 3 8
EN
0
1
1
I2 I1
x x
0 0
0 0
...
1 1 1
1 1 1
Y0
Y1
I0
Y2
I1
Y3
I2
I0
x
0
1
0
1
Y7 Y6 ...
1 1 ...
1 1 ...
1 1 ...
...
1 0 ...
0 1 ...
Y1 Y0
1 1
1 0
0 1
1
1
1
1
Y4
EN
Y5
Y6
Y7
sadas ativas a 0
Antnio Jos Arajo, FEUP
27
Descodificadores
Descodificador BCD para 7 segmentos
(blanking input)
(LSB)
(MSB)
BI
A
B
C
D
a
b
c
d
e
f
g
a
f
28
Codificadores
Codificadores (encoders)
N entradas e M sadas, N > M (geralmente)
transforma um cdigo noutro com menos bits
codificador binrio 2N N
se no estiverem duas entradas em 1 simultaneamente
Exemplo: codificador binrio 4 2
I0
Y1
I1
Y0
I3
0
0
0
0
1
I2
I3 IDLE
I2
0
0
0
1
0
I1
0
0
1
0
0
I0
0
1
0
0
0
Y1
0
0
0
1
1
Y0 IDLE
0
1
0
0
1
0
0
0
1
0
29
Codificadores
Codificador de prioridade 8 3
8 entradas: I7 (+ prioridade) a I0 (- prioridade)
enable output
I7
enable input
got something
I6
I5
I4
I3
I2
I1
I0
EI
A2
A1
A0
GS
EO
EI
0
1
1
1
1
1
1
1
I7
x
0
0
0
...
0
0
1
0
I6 I5 ...
x x ...
0 0 ...
0 0 ...
0 0 ...
0
1
x
0
1
x
x
0
...
...
...
...
I2 I1 I0
x x x
0 0 1
0 1 x
1 x x
...
x x x
x x x
x x x
0 0 0
A2
0
0
0
0
1
1
1
0
A1
0
0
0
1
...
0
1
1
0
A0
0
0
1
0
GS
0
1
1
1
EO
1
1
1
1
1
0
1
0
1
1
1
0
1
1
1
0
30
Multiplexadores
Multiplexadores (multiplexers ou muxs)
circuito seletor (um mux 4 1)
smbolo habitual
I0
I1
I2
Y = Is, s={S1,S0}
I0
I1
I2 Y
I3
entradas
de seleo
I3
S0
S1
S1
S0
31
Multiplexadores
32
Ou exclusivo
Porta OU-exclusivo (XOR)
sada 1 quando as entradas so diferentes
aplicao: somadores, detetor de paridade
A B AB
(mpar)
A
B
AB
0
0
1
1
0
1
0
1
0
1
1
0
funo lgica: AB = AB + AB
como se faz um XOR com 4 NANDs?
XNOR um comparador de igualdade
Antnio Jos Arajo, FEUP
33
Somadores/subtratores
Somadores
somador tipo ripple-carry (como se faz mo)
ligao de N full-adders em cascata (circuito
iterativo)
Si = Ai Bi Ci-1
Ci = AiBi + AiCi-1 + BiCi-1
Subtratores
como A - B = A + (-B), basta trocar o sinal de B
trocar o sinal: trocar os bits todos (XORs) e somar 1 (carryin)
34
Comparadores
Comparadores de igualdade
entre uma varivel de N bits e uma constante
um AND de N entradas
negadas as entradas a comparar com zero
Ai = Bi
35
Comparadores
Circuitos iterativos
ligao em cascata de sub-circuitos simples
cada sub-circuito avalia parte dos operandos
exemplo: comparador iterativo de igualdade
Ai
AEQBin
os bits mais significativos
(at i-1) so iguais
Antnio Jos Arajo, FEUP
Bi
AEQBout
os bits at i so iguais
36
Comparadores
Comparadores de magnitude
(sem sinal)
Bi
resultado (A>B) dos bits at i
AGTBin
ALTBin
AGTBout
ALTBout
37