IRUITOS SOMADORES Os circuitos digitais que efetuam operações aritméticas devem processar os dados na forma binária, ou seja, devem executar as operações matemáticas com os números binários omo o sistema de numeração utilizado é diferente do sistema decimal, as operações da álgebra convencional (adição, subtração, multiplicação, divisão, de números decimais) devem ser transformadas para a álgebra booleana Estes circuitos digitais são circuitos combinacionais, constituídos por portas lógicas, e podem ser elaborados através das tabelas verdades A operação mais básica que dá origem a outras operações matemáticas mais complexas é a soma de dois números Para desenvolver um circuito digital somador, procede-se a partir da forma em que são somados dois números decimais Exemplo: 5 + = 2 + 7 = 2 2 = 2 A soma de dois números pode produzir um número de uma casa decimal a mais que os dois operandos Na soma de dois números binários aplica-se o mesmo No exemplo acima, o resultado produziu um número de duas casas decimais a partir de dois números de uma casa decimal, assim como o equivalente binário O resultado que ultrapassa uma casa binária na soma de dois bits passa a ser somado com os bits da próxima casa binária (o vai um ), e é denominado carry: bits de carry 5 7 + = 2 = 2 2 = 2 Para a soma da primeira casa decimal ou binária (primeiros bits à esquerda) não há o carry, mas para o restante das casas binárias pode haver o carry Na última casa decimal ou binária, o carry determina se o resultado possui uma casa decimal ou binária a mais que os operandos De forma geral, indicando A n e n para os bits dos operandos e n para os bits de carry: + 2 A 2 A A + 2 2 2 UTFPR ornélio Procópio
Deste modo, é possível determinar o circuito de soma dos dois primeiros bits (A e ) a partir da seguinte tabela verdade: A Mas a última situação (A = e =) produz como resultado um número de dois bits Neste caso, o bit a mais é somado com os bits da próxima casa binária (com A e ), sendo o bit de carry da próxima casa binária: A Obtendo a representação padrão e simplificando: O circuito para esta tabela verdade resulta na porta lógica Ou Exclusivo para o resultado e a porta E para o carry Este circuito é denominado meio somador (half adder): A Para a soma das outras casas binárias, o procedimento é o mesmo, porém com o carry da casa binária anterior sendo somado aos dois bits dos operandos: A UTFPR ornélio Procópio 2
Obtendo a representação padrão e simplificando: A A A A A A A A A A A A A A A A A A A A A A A A Este circuito resulta em uma porta lógica Ou Exclusivo de três entradas dos três operandos (, A e ) para o resultado ( ) e uma combinação de portas E entre os três operandos (, A e ) para o carry ( ) Este circuito é denominado somador completo (full- adder): A UTFPR ornélio Procópio 3
Esta denominação se deve às duas somas (de com A, e o resultado com ) equivalente a dois circuitos meio somadores Então também é possível elaborar o circuito somador completo pelo circuito meio-somador de com A e com outro circuito meio-somador do resultado com Sendo X n o resultado da soma do bit de carry com os bits do operando A, e os bits de carry produzidos pelas duas somas: 2 A 2 A A X 2 X + 2 2 2 Deste modo: X ' A A X X X X X " X A O circuito resultante possui dois bits de carry ( e ) provenientes dos dois meio somadores onforme as tabelas verdade, sempre que um dos bits de carry é gerado, o outro é nulo (se =, =, e vice-versa) Assim: ' " A A A A A A A A A UTFPR ornélio Procópio 4
O meio somador é utilizado somente para os primeiros bits (A e ), enquanto o somador completo é repetido para os bits restantes dos dois operandos (A e ) O carry do último circuito somador completo será o primeiro bit do resultado, observando que qualquer circuito somador é limitado pelo seu número de somadores completos aso seja necessário somar dois números que possuem mais bits que um determinado circuito somador pode fornecer, é possível separar os números em duas partes, efetuando a operação de soma duas vezes com estas partes meio somador A somador completo A somador completo A 2 2 2 UTFPR ornélio Procópio 5