000FACULDADE DE COMPUTAÇÃO E INFORMÁTICA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
ÁLGEBRA BOOLEANA E CIRCUITOS DIGITAIS – Aula 06 – 2º SEMESTRE/2020
CIRCUITOS COMBINACIONAIS
Nossos objetivos nesta aula são:
Conhecer circuitos combinacionais aritméticos.
Conhecer as aplicações de circuitos combinacionais
aritméticos.
Praticar a implementação de circuitos
combinacionais aritméticos.
Para esta aula, utiliza-se como referência o Capítulo 6
(Aritmética Digital: Operações e Circuitos) do livro-texto:
TOCCI, Ronald J.; WIDMER, Neal S.; MOSS, Gregory L.
Sistemas Digitais: princípios e aplicações. 12ª Ed. Editora
Pearson, 2019.
Não deixem de ler a indicação depois desta aula!
CIRCUITO COMBINACIONAL
A saída depende única e exclusivamente das combinações entre as variáveis de entrada.
Determina-se a tabela-verdade a partir da especificação do problema.
A construção de circuitos combinacionais deriva de suas expressões características.
As expressões são obtidas das tabelas-verdade que representam situações reais.
Favorece a compreensão do funcionamento de circuitos, ex.: codificadores,
decodificadores e aritméticos.
1
CIRCUITOS ARITMÉTICOS
São os componentes básicos para a construção de uma ULA (Unidade Lógica e
Aritmética) em microprocessadores e encontram-se disponíveis em circuitos integrados
comerciais.
MEIO SOMADOR
Operação de soma entre dois números binários.
Somas binárias:
0+0=0
0+1=1
1 + 1 = 0 e vai um (transporte ou transbordo)
1 + 1 + 1 = 1 e vai um (transporte ou transbordo)
Somas:
Ts
Somas: 6 + 7 decimal em binário com 4 bits.
Ts
Ts
MSB LSB
2
O meio somador binário é um bloco digital referente a soma de 1 bit (LSB).
Bloco Funcional - Meio Somador
EXERCÍCIO TUTORIADO
1. Construa a tabela-verdade para o CIRCUITO meio somador, apresente a sua expressão
booleana e o circuito combinatório interno correspondente.
A B S Ts
SOMADOR COMPLETO
Operação de soma entre os números binários 11102 + 1102
3
O somador completo binário é um bloco digital referente a soma de 1 bit utilizado nos
demais bits além do LSB que necessita de um “vem um” (TE) adicional.
Bloco Funcional – Somador Completo de 1 bit
EXERCÍCIO COM DISCUSSÃO EM DUPLAS
2. Construa a tabela-verdade para o CIRCUITO somador completo, apresente a expressão
característica e o circuito combinatório interno correspondente.
A B TE S Ts
4
SOMADOR COMPLETO PARALELO DE 4 BITS
Soma binário completo paralelo de 4 bits:
O somador paralelo completo de 4 bits:
5
SUBTRAÇÃO EM BINÁRIOS
A operação de subtração em binário pode ser realizada de duas maneiras.
o Somador completo, sendo que o segundo binário faz previamente o complemento
de 2.
o Circuito dedicado para a subtração.
Subtração binária:
0-0=0
0 - 1 = 1 e empresta um do bit superior (TS)
1-0=1
1-1=0
Exemplo de subtração binária:
MEIO SUBTRATOR
Possibilita efetuar a subtração de números binários com um algarismo.
O circuito torna-se insuficiente para a subtração de números binários de mais algarismos.
Bloco Funcional - Meio Subtrator
EXERCÍCIO COM DISCUSSÃO EM DUPLAS
3. Construa a tabela-verdade para o CIRCUITO do meio subtrator, apresente a expressão
característica e o circuito combinatório interno correspondente.
6
A B S TS
SUBTRATOR COMPLETO
Operação de subtração considerando o vem um solicitado pelo bit inferior (T E) ou
solicitando o vem um do bit superior (TS).
Subtração binária:
0-0-0=0
0 - 1 - 0 = 1 e empresta um do bit superior (TS)
1-1-0=0
1 - 0 - 1 = 0, considera o vem 1 do bit inferior (TE)
1 - 1 - 1 = 1, considera o vem 1 do bit inferior (TE) e empresa 1 do bit superior (TS)
Exemplo de subtração:
7
Bloco Funcional – Subtrator Completo de 1 bit
EXERCÍCIO COM DISCUSSÃO EM DUPLAS
4. Construa a tabela-verdade para o CIRCUITO subtrator completo, apresente a expressão
característica e o circuito combinatório interno correspondente.
A B TE S TS
8
SUBTRATOR COMPLETO PARALELO DE 4 BITS
Subtrator completo paralelo binário de 4 bits.
O subtrator paralelo completo de n bits:
SUBTRATOR EM COMPLETO DE 2
Subtrai um número binário (subtraendo) de outro número binário (minuendo) seguindo
os passos:
o 1: Complemente de 1 o subtraendo: mude o subtraendo complementando cada
bit que compõem o subtraendo.
o 2: Adicione 1 ao subtraendo.
o 3: Some minuendo e subtraendo: o resultado será a diferença entre o subtraendo
e minuendo.
O overflow indica que a resposta é positiva. Ignore o overflow.
Se não houver overflow, a resposta é negativa.
Exemplo: 11 – 4 em decimal
11 = 10112
4 = 01002
9
soma em complemento de 2
1 0 1 1 1 0 1 1
-1 0 1 1 + + 1 1 0 0
0 1 0 0 1 0 1 1
C1 C2 1 0 1 1 1
overflow
complemento de 2 (C2)
0 1 0 0 1 0 1 1
+ 1
1 1 0 0
Subtrator paralelo de 4 bits em completo de 2:
UNIDADE LÓGICA E ARITMÉTICA
Em um computador todas as operações aritméticas são realizada pela Unidade Lógica e
Aritmética (ULA).
Ela aceita dados binários armazenados na memória e executa sobre o controle da
Unidade de Controle (UC) as operações lógicas e aritméticas sobre os dados binários são
armazenados em um registrador B e no Acumulador.
Passos de execução de uma operação na ULA:
10
1. Unidade de Controle (UC) recebe uma instrução da memória especificando que
um número armazenado em uma posição de memória (endereço) deve ser
adicionado ao número armazenado no Acumulador.
2. Número a ser adicionado é transferido da memória para o registrador B.
3. Número no registrador B e no Acumulador são somados através dos circuitos
lógicos (somador) ao comando da UC. O resultado é armazenado no Acumulador.
4. O novo número pode permanecer no Acumulador para ser somado a outro
número, ou então, o processo aritmético é terminado e o resultado pode ser
transferido para a memória.
Unidade Lógica e Aritmética (ULA) típica
Processo de adição binária em uma ULA
11
0
Diagrama em blocos de um somador paralelo binário completo para 5 bits
PROPAGAÇÃO DE CARRY
O somador paralelo realiza operações de soma bit a bit em alta velocidade.
Entretanto, a sua velocidade é limita pelo efeito de progração do carry.
Imagine o seguinte exemplo:
A adição dos bits LSB produzem um carry até o bit MSB, no qual o bit da última posição
depende da soma do primeiro bit.
O bit MSB não atingirá seu valor correto até que ocorra toda a propagação pelos
somadores intermediários.
Se cada somador possui um tempo de atraso de 40 ns, o MSB atingirá o valor correto
somente após 120 ns e a soma terá o valor correto somente após 160 ns.
Este atraso acaba sendo proporcional ao número de bits, por exemplo, para 32 bits
haveria um atraso de carry de 1280 ns = 1,28 μs.
Este atraso é proibitivo para computadores de alta velocidade, sendo necessárias
técnicas como carry antecipado que observa os bits LSB para verificar se um carry de
mais alta ordem deve ser gerado.
Este esquema de detecção adiciona um maior número de circuitos lógicos.
12
SOMADORES PARALELOS COM CI COMERCIAL
Existem diversos somadores paralelos e ULAs disponíveis no mercado como CIs.
Os mais comuns é um CI somador paralelo de 4 bits com 4 somadores completos e um
circuito de carry antecipado para operação em alta velocidade.
Também é comum CI ULA de 4 bits contendo 4 somadores completos.
Famílias típicas: 74LS283, 74LS382, 74LS181.
4-BINARY FULL ADDER WITH FAST CARRY - 74HC283
13
14
Somador paralelo de 8 bits a partir de dois somadores paralelos de 4 bits 74HC283
15
Somador paralelo de 4 bits
Soma e subtração de número fornecido em complemento de 2 com 74LS283
Somador paralelo de 4 bits
Subtração realizando complemento de 2 com 74LS283
16
Somador/Subtrator paralelo em complemento de 2 – 74LS283
17
CI ARITMETIC LOGIC UNIT (ALU) 74LS382/74HC382 (TTL)
18
19
CI ALU 74HC382 como somador de 8 bits
20
CI ALU 54/74LS181
ENCAPSULAMENTO
21
22
23
EXERCÍCIOS EXTRA-CLASSE
1. Construa um somador paralelo de 8 bits.
2. Construa um somador paralelo de n bits.
3. Construa um subtrator de 16 bits.
4. Construa um subtrator baseado em complemento de 2 de 16 bits.
5. Construa um somador/subtratator de 16 bits.
24