Você está na página 1de 34

SISTEMAS DIGITAIS

CIRCUITOS COMBINATRIOS TPICOS

Setembro de 04

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 2 SUMRIO:


CODIFICADORES DESCODIFICADORES MULTIPLEXERS DEMULTIPLEXERS SOMADORES / SUBTRACTORES COMPARADORES

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 3 CODIFICADORES:


O CODIFICADOR um circuito combinatrio que permite, perante a activao de uma entrada, gerar uma codificao ou combinao de sinais de sada correspondente a essa entrada.

Exemplo:
Entradas de Dados
I3 I2

CODIFICADOR 4:2
I1 I0 >1 A1

I0 1 0 0 0

I1 0 1 0 0

I2 0 0 1 0

I3 0 0 0 1

A1 0 0 1 1

A0 0 1 0 1

Sadas ou Cdigo
A0

>1

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 4 CODIFICADORES DE PRIORIDADE:


Codificadores de Prioridade: Permite a activao de mais de uma entrada simultaneamente gerando a codificao correspondente entrada mais prioritria activa. Exerccio: Determine uma implementao possvel para um conversor de prioridade 4:2, que permita a activao de entradas em simultneo gerando sempre a codificao correspondente entrada de maior ordem. (Sugesto: Comece por determinar os mapas de Karnaugh para cada sada)
A1 01 11 10 A0 01 11 10

I3 I2 I1 I0 00 00 01 11 10

I3 I2 I1 I0 00 00 01 11 10

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 5 DESCODIFICADORES: ARQUITECTURA


O DESCODIFICADOR um circuito combinatrio que permite, perante uma combinao de entradas, activar uma e s uma sada. DESCODIFICADOR 2:4 Sadas

IN1 IN0 OUT0 OUT1 OUT2 OUT3 0 0 1 1 0 1 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

&

OUT0

Entrada de Dados ou Cdigo

IN1

&

OUT1

&
IN0 1

OUT2

&

OUT3

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 6 DESCODIFICADORES: SIMBOLOGIA Exemplos: DESCODIFICADOR 3:8


74LS138 X/Y X0_H X1_H X2_H 1 1 2 2 4 3 4 EN1_L EN2_L EN3_H & EN 5 6 7 Y3_L Y4_L Y5_L Y6_L Y7_L X20_H X21_H EN2_L 1 2 EN 0 1 2 3 Y20_L Y21_L Y22_L Y23_L
0 1 2 3 Y10_L Y11_L Y12_L Y13_L

DUAL DECODER 2:4


0 Y0_L Y1_L Y2_L X10_H X11_H EN1_L 1 2 EN 74LS139 X/Y 0 1 2 3 Y10_L Y11_L Y12_L Y13_L
X0_H X1_H 1 2 74LS155 X/Y

DUAL DECODER 2:4

EN10_L EN11_H

&

EN

EN20_L EN21_H

&

EN

0 1 2 3

Y20_L Y21_L Y22_L Y23_L

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 7 DESCODIFICADORES: APLICAES (DESCODIFICAO) Implementao de um DECODER 3:8 tendo por base 2 DECODERs 2:4 Exemplo:

A0 A1

X/Y 1 2
1

0 1 2

D0 D1 D2 D3

A2

EN

X/Y 1 2 0 1 2 EN 3 D4 D5 D6 D7

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 8 DESCODIFICADORES: APLICAES (F. COMBINATRIAS) Implementao de F. Combinatrias de 3 variveis com DECODERs 3:8 Exemplo:
f1(X,Y,Z) = f2(X,Y,Z) =

m(1,5,7) m(0,3,4)
74LS138 X/Y Z Y X 1 1 2 2 4 3 4 & EN 5 6 5V 7 & F2 & F1 0

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 9 MULTIPLEXERS: ARQUITECTURA


O MULTIPLEXER um circuito combinatrio que permite, atravs da especificao dos sinais de seleco, encaminhar uma das n entradas de dados para a sada.

MULTIPLEXER 4:1
D0

S1 0 0 1 1

S0 0 1 0 1

OUT D0 D1 D2 D3

Entradas de Dados

D1 D2 D3

Sada
OUT

SEL (S1, S0)

ENABLE

Entradas de Controlo (Seleco e Habilitao)


Setembro de 04 SISTEMAS DIGITAIS H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 10 MULTIPLEXERS: ARQUITECTURA Exemplo: MULTIPLEXER 4:1


Entradas de Seleco S0

S1 0 0 1 1

S0 0 1 0 1

OUT D0 D1 D2 D3
Entradas de Dados

S1

&
D0

Sada
&
D1 1 OUT

&
D2

&
D3

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 11 MULTIPLEXERS: SIMBOLOGIA Exemplos: MULTIPLEXER 4:1


S0 1

S1

&
D0

A designao das variveis de entrada/sada deve indicar o nvel de actividade H ou L.


1 OUT

&
D1

&
D2

&
D3

MUX S0_H S1_H D0_H D1_H D2_H D3_H 0 1 0 1 2 3

MUX S0 S1 D0 D1 D2 D3 0 1 0 1 2 3

_ G 0 3 OUT_H

Por simplicidade sempre que no exista uma funcionalidade clara associada a uma entrada ou sada ser omitido o nvel de actividade. Por omisso ser considerado o nvel de actividade H.

_ G 0 3 OUT

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 12 MULTIPLEXERS: SIMBOLOGIA Exemplos: MULTIPLEXER 8:1 c/ ENABLE (74LS151), TRISTATE (74LS251)
74LS151 MUX EN_L S0_H S1_H S2_H IN0_H IN1_H IN2_H IN3_H IN4_H IN5_H IN6_H IN7_H EN 0 1 2 0 1 2 3 4 5 6 7 EN_L _ G 0 7 OUT_H OUT_L S0_H S1_H S2_H IN0_H IN1_H IN2_H IN3_H IN4_H IN5_H IN6_H IN7_H EN 0 1 2 0 1 2 3 4 5 6 7 74LS251 MUX

_ G 0 7 OUT_H OUT_L

Sada Tristate
OUT_H HI-Z IN0_H IN1_H
H. Neto, N. Horta

S2 0 0
Setembro de 04

S1 0 0

S0 0 1

EN_L 1 0 0

OUT_H 0 IN0_H IN1_H

SISTEMAS DIGITAIS

CIRCUITOS COMBINATRIOS TPICOS - 13 MULTIPLEXERS: SIMBOLOGIA Exemplos: QUAD MUX 2:1 DUAL MUX 4:1

74LS157 EN_L SEL_H IN00_H IN01_H IN10_H IN11_H IN20_H IN21_H IN30_H IN31_H OUT3_H OUT2_H EN G1 0 1 OUT1_H MUX OUT0_H

74LS153 SEL0_H SEL1_H EN0_L IN00_H IN01_H IN02_H IN03_H EN1_L IN10_H IN11_H IN12_H IN13_H 0 1

_ G 0 3 MUX OUT0_H

EN 0 1 2 3

OUT1_H

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 14 MULTIPLEXERS: APLICAES (MULTIPLEXAGEM) Implementao de um MUX 8:1 tendo por base 2 MUX 4:1, Exemplos:
S2 S0 S1 D0 D1 D2 D3 EN 0 1 0 1 2 3
1

com e sem sada tristate


MUX MUX S2 S0 S1 OUT1 D0 D1 D2 D3 OUT MUX EN OUT1 0 0 _ G 3 1 0 1 2 3 OUT EN 0 1

0 _ 3

0 _ 3

S2 S0 S1 D4 D5 D6 D7

MUX EN OUT1 0 0 _ G 3 1

S2 S0 S1 D4 D5 D6 D7

0 1 2 3

0 1 2 3

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 15 MULTIPLEXERS: APLICAES (MULTIPLEXAGEM) Implementao de um MUX 32:1 tendo por base 4 MUX 8:1 Exemplos:

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 16 MULTIPLEXERS: APLICAES (FUNES COMBINATRIAS) Implementao de F. Combinatrias de 2 variveis com MUX 4:1 Exemplos:
F = A + AB A 0 0 1 1 B 0 1 0 1 F 1 1 1 0
B A VCC "1" "1" "1" "0" VGND 0 1 2 3 0 1 MUX

_ G 0 3 F

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 17 MULTIPLEXERS: APLICAES (FUNES COMBINATRIAS) Implementao de F. Combinatrias de 3 variveis com MUX 4:1 Exemplos:
F = A B + A C + ABC
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 F 1 1 0 1 0 0 1 0
F =1
B A "1" C 0 1 0 1 2 3

MUX

_ G 0 3 F

F =C

F =0

"0" C

F =C

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 18 DEMULTIPLEXERS: ARQUITECTURA


O DEMULTIPLEXER um circuito combinatrio que permite, atravs da especificao dos sinais de seleco, encaminhar a entrada para uma das n sadas. DEMULTIPLEXER 1:4 Entrada de Dados
IN OUT2

S1 0 0 1 1

S0 0 1 0 1

OUT0 OUT1 OUT2 OUT3 IN 0 0 0 0 IN 0 0 0 0 IN 0 0 0 0 IN

Sadas
OUT0 OUT1

OUT3

ENABLE

SEL (S1, S0)

Entradas de Controlo (Seleco e Habilitao)


Setembro de 04 SISTEMAS DIGITAIS H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 19 DEMULTIPLEXERS: ARQUITECTURA Exemplo: DEMULTIPLEXER 1:4


Entradas de Seleco S0

S1 0 0 1 1

S0 0 1 0 1

OUT0 OUT1 OUT2 OUT3 IN 0 0 0 0 IN 0 0 0 0 IN 0 0 0 0 IN

S1

Sadas

Entrada de Dados
IN

&

OUT0

&

OUT1

&

OUT2

&

OUT3

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 20 DEMULTIPLEXERS: SIMBOLOGIA Exemplos: DEMULTIPLEXER 1:4


S0 1

DMUX
S1 1

&

OUT0

S0 S1

0 1

0 _ 3 0 OUT0 OUT1 OUT2 OUT3

DUAL DMUX 1:4


1 2 3
74LS139 DMUX S10_H S11_H IN1_L 0 1 _ }G 0 3 0 1 2 3 OUT10_L OUT11_L OUT12_L OUT13_L

&

OUT1

IN
IN

&

OUT2

&

OUT3

EN

S20_H S21_H IN2_L

0 1

_ }G 0 3

EN

0 1 2 3

OUT20_L OUT21_L OUT22_L OUT23_L

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 21 DEMULTIPLEXER E DESCODIFICADORES


Um DESCODIFICADOR com ENABLE equivalente a um DEMULTIPLEXER, sendo as entradas de dados do primeiro as entradas de seleco do segundo e a entrada de ENABLE do primeiro a entrada de dados do segundo. Nota: a simbologia altera-se de acordo com a funcionalidade do circuito.

DUAL DMUX 1:4 74LS139


74LS139 DMUX S10_H S11_H IN1_L 0 1 _ }G 0 3 0 1 2 3 OUT10_L OUT11_L OUT12_L OUT13_L

DECODER 2:4
74LS139 X/Y X10_H X11_H EN1_L 1 2 EN 0 1 2 3 Y10_L Y11_L Y12_L Y13_L

EN

S20_H S21_H IN2_L

0 1

_ }G 0 3

EN

0 1 2 3

OUT20_L OUT21_L OUT22_L OUT23_L

X20_H X21_H EN2_L

1 2 EN

0 1 2 3

Y20_L Y21_L Y22_L Y23_L

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 22 CIRCUITO PARA SOMA ARITMTICA


A estrutura mais simples resolve 1 bit de cada vez. Passo 1: soma os 2 bits de menor peso e obtm 1 bit do resultado e o carry para o passo seguinte.
A B + Carry-out Sum

Exemplo
Somador de 2 nmeros de 4 bits cada. 1 1 0 Carry 7 + 2 9
A3 B3

0 1 1 1 + 0 0 1 0 1 0 0 1
A2 B2 A1 B1 A0 B0

SEMI-SOMADOR HALF-ADDER

Passo N1: soma os 2 bits dos operandos, mais o carry do passo anterior, e obtm 1 bit de resultado e um carryout.
A B Carry-in Carry-out + Sum

+
C4 S3 C3

+
S2 C2

+
S1 C1

+
S0

SOMADOR COMPLETO FULL-ADDER

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 23 SEMI-SOMADOR

A B 0 0 0 1 1 0 1 1

Cout 0 0 0 1

S 0 1 1 0
A B

Cout = A B S = A B
=1

&

C out

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 24 SOMADOR COMPLETO


AB 00 Cin 0 0 1

01 1 0

11 0 1

10 1 0

S = Cin A B + Cin A B + Cin A B + Cin A B = A B Cin

A B Cin Cout 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 0 1 1 1

S 0 1 1 0 1 0 0 1
A B

AB 00 Cin 0 1 0 0

01 0 1

11 1 1

10 0 1

Cout = A B + Cin A + Cin B = A B + Cin ( A B )

=1

=1

&

&
1
Cout

Cin
Setembro de 04 SISTEMAS DIGITAIS H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 25 RIPPLE CARRY ADDER


BN CN FA AN CN-1 C4 B3 FA A3 C3 B2 FA A2 C2 B1 FA A1 C1 B0 FA A0 0

SN

S3

S2

S1

S0

A velocidade mxima de execuo limitada pela necessidade de propagar o Carry desde a soma do primeiro bit at soma do bit mais significativo. No pior caso, o tempo de propagao do Carry ser N tPFA.

Exemplo
A0 comuta de 0 para 1. Ai = 0, i0 Bi = 1, i

0 0 0 + 1 1

0 0 1 1

0 0 0 1 1 1 1

1 1 0 + 1 0

1 0 1 0

1 0 1 1 1 0 0

O Ripple Carry Adder o somador mais simples possvel (que requer menos portas lgicas). Existem inmeros circuitos alternativos para diversos compromissos velocidade/rea.
Setembro de 04 SISTEMAS DIGITAIS H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 26 REPRESENTAO DE NMEROS NEGATIVOS


Sinal e Valor O bit mais significativo representa o sinal, e os restantes bits representam o seu valor absoluto. Ex.: -9 = 10001001 Complemento para 1 O complemento para 1 de N, em n bits, definido como (2n - 1) - N. 2n 1 um nmero constitudo por n 1s. Subtrair de 1 equivale a inverter o bit: 1 0 = 1 e 1 1 = 0. Portanto, complementar para 1 corresponde a inverter todos os bits (0 1 e 1 0). Ex.: -9 = 11110110 ( = 11111111 00001001 = 25510 910 ). Complemento para 2 O complemento para 2 de N, em n bits, definido como 2n N para N 0, e 0 para N = 0. Portanto, complementar para 2 corresponde a complementar para 1 e somar 1. Ex.: -9 = 11110111 ( = 100000000 00001001 = 25610 910 ). Na prtica, o complemento para 2 pode ser formado do seguinte modo: mantm-se todos os 0s menos significativos e o primeiro 1, e invertem-se todos os outros bits mais significativos.
Setembro de 04 SISTEMAS DIGITAIS H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 27 NMEROS BINRIOS COM SINAL


Decimal +7 +6 +5 +4 +3 +2 +1 +0 -0 -1 -2 -3 -4 -5 -6 -7 -8 Complemento Complemento Sinal e para 2 para 1 Valor 0111 0111 0111 0110 0110 0110 0101 0101 0101 0100 0100 0100 0011 0011 0011 0010 0010 0010 0001 0001 0001 0000 0000 0000 1111 1000 1111 1110 1001 1110 1101 1010 1101 1100 1011 1100 1011 1100 1011 1010 1101 1010 1001 1110 1001 1000 1111 1000 H. Neto, N. Horta

As operaes usando o sistema de sinal e valor so mais complicadas, devido necssidade de gerir separadamente o sinal e o valor. Por isso, so normalmente utilizadas representaes em complemento. A representao em complemento para 2 habitualmente preferida em sistemas digitais por ter uma nica representao para o 0.

Setembro de 04

SISTEMAS DIGITAIS

CIRCUITOS COMBINATRIOS TPICOS - 28 SOMA ARITMTICA DE NMEROS COM SINAL USANDO COMPLEMENTO PARA 2
A soma aritmtica de 2 nmeros binrios com sinal, representados em complemento para 2, obtida pela simples adio dos 2 nmeros incluindo os bits de sinal. O ltimo carry out no considerado.

Exemplos
4 + 3 7 1 1 0 0 4 1 0 1 0 0

0 0 0 0 0 1 0 0 + 0 0 1 1 0 1 1 1 0 0 0 0 4 + 3 1 1 1 0 0 + 0 0 1 1 1 1 1 1 4 7

1 1 0 0 1 1 0 0 1 0 0 1 + ( 3) + 1 1 0 1

+ ( 3) + 1 1 0 1 0 0 0 1

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 29 SUBTRACO DE NMEROS COM SINAL USANDO COMPLEMENTO PARA 2
A subtraco de 2 nmeros binrios com sinal, representados em complemento para 2, obtida do seguinte modo: forma-se o complemento para 2 do subtractor e somase ao subtraendo.

Exemplo

4 3 1

0 1 0 0 0 0 1 1

4 1
B3 A3 B2 A2

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

+ ( 3) + 1 1 0 1

Complemento para 2 = (Complemento para 1) + 1 A complementao para 1 realizada invertendo todos os bits do subtractor. A adio de 1 efectuada pondo o Carry inicial a 1.
Setembro de 04

C4

FA

C3

FA

C2

FA

C1

FA

S3

S2

S1

S0

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 30 CIRCUITO SOMADOR/SUBTRACTOR


As operaes de adio e subtraco so habitualmente combinadas num nico somador genrico, atravs da incluso de 1 porta ou-exclusivo em cada Full-Adder. Quando o sinal de controlo SOMA_L = 0, realizada a adio A + B (os operandos Bi no so invertidos e C0 = 0). Quando o sinal de controlo SOMA_L = 1, realizada a subtraco A B (os operandos Bi so invertidos e C0 = 1).
B3 A3 B2 A2 B1 A1 B0 A0 SOMA_L

C4

FA

C3

FA

C2

FA

C1

FA

S3

S2

S1

S0

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 31 OVERFLOW


Para se obter um resultado correcto, na adio e na subtraco, necessrio assegurar que o resultado tem um nmero de bits suficiente. Se somarmos 2 nmeros de N bits e o resultado ocupar N+1 bits diz-se que ocorreu um overflow. As unidades aritmticas digitais usam um nmero fixo de bits para armazenar os operandos e os resultados, sendo necessrio detectar e sinalizar a ocorrncia de um overflow. Um overflow pode ocorrer na adio, se os 2 operandos so ambos positivos ou se so ambos negativos.

Exemplos

Overflow = Carry N Carry N 1

0 1 0 0 4 + 5 ovfl. 0 1 0 0 + 0 1 0 1 1 0 0 1 4 ovfl.

1 0 0 0 1 1 0 0 0 1 1 1 + ( 5) + 1 0 1 1

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 32 SOMADOR DE 4 BITS

Somador de 4 bits rpido: usa internamente um carry lookahead trata-se de um somador de maior rapidez, conseguida custa de um maior nmero de portas lgicas.

TTL 74LS283

} }
0 1 2 3 P 0 1 2 3 Q CI

0 1 2 3

CO

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 33 COMPARADOR DE NMEROS DE 4 BITS

TTL 74LS85 Este circuito faz a comparao de 2 nmeros binrios de 4 bits. O circuito pode ser ligado em cascata, para realizar comparaes entre nmeros de N > 4 bits.
COMP

}
0 1 2 3 P > = < P>Q P=Q P<Q Q

}
0 1 2 3
Setembro de 04 SISTEMAS DIGITAIS H. Neto, N. Horta

CIRCUITOS COMBINATRIOS TPICOS - 34 BIBLIOGRAFIA


[1] M. Morris Mano, Charles R. Kime, Logic and Computer Design Fundamentals, Prentice-Hall International, Inc. (Captulo 3, Seces 3.5-3.10)

Setembro de 04

SISTEMAS DIGITAIS

H. Neto, N. Horta

Você também pode gostar