Circuito aritmético

(Redirecionado de Circuitos aritméticos)

Circuito Aritmético é um tipo de circuito combinatório que executa operações de subtração, adição, multiplicação, divisão, operações lógicas (and/or) ou qualquer outra função que possa ser implementada em um circuito combinatório. São chamadas de ULA (unidade lógica aritmética) ou ALU do inglês.[1][2]

Circuito Somador

editar

Adição Binária é a operação mais simples de Circuitos Aritméticos. A adição binária (0 1) é executada da mesma forma que a decimal (0 1 2 3 4 5 6 7 8 9), inclusive no "vai um" (Carry Out, de saída, e Carry In, de entrada) como pode ser entendida no exemplo dado abaixo. Quando somamos dois números binários começamos pela coluna menos significativa e continuamos na ordem crescente de significatividade (analogamente aos números decimais, em que começamos com a unidade e continuamos com a dezena, centena, e assim por diante).

Aqui podemos ver uma adição de 2 bits que acaba resultando em 4 possibilidades.

 

 

 

  (0 e "vai" 1)

Meio Somador

editar

O circuito combinacional que executa a soma de 2 bits é denominado de semi-Somador. O circuito semi-Somador consiste em 2 entradas e 2 saídas. Podemos designar as 2 entradas pelos 2 bits a serem de entrada que serão somados e as 2 saídas que são a Soma.

Abaixo temos a tabela verdade de um Circuito semi-Somador:

Meio Somador
XYSA
0000
0110
1010
1101

As expressões 'X' e 'Y' são os valores de entrada. 'A' é o "vai um" e expressa uma operação AND entre X e Y. 'S' é o bit menos significativo da soma e expressa a operação XOR entre X e Y.

O circuito Meio Somador tem este nome porque não leva em consideração os resultados de somas menos significativas. Para casos em que a entrada menos significativa (denominada carry) seja considerada, usamos a denominação de circuitos de Somador Completo. Esses circuitos executam a soma dos 2 bits levando em consideração as entradas menos significativas de bit de carry. Este somador tem as mesmas saídas do Meio Somador (Soma e Carry).

 
Bloco Meio Somador

Somador Completo

editar
 
Bloco Somador Completo

O Somador Completo como citado acima possui Carry In. Ele é utilizado para somar números de pelo menos 2 casas. Isso é possível Cascateando um semi-Somador com Somadores Completos.

Somador Completo
XYCSA
00000
00110
01010
01101
10010
10101
11001
11111

As expressões 'X' e 'Y' são os valores de entrada. 'C' é o Carry In ("vai um" do bit anterior). 'A' é o "vai um" para o próximo bit e expressa uma operação '(X and Y) or (X and C) or (Y and C)'. 'S' é o bit menos significativo da soma e expressa a operação XOR entre X e Y.

Circuito Subtrator

editar

Subtração Binária

editar

Na subtração procede-se da mesma maneira que na subtração decimal, porém o "vai um" é colocado no algarismo de baixo.

Aqui podemos ver uma subtração de 2 bits que acaba resultando em 4 possibilidades.

 

  e "empresta" 1

 

 

Meio Subtrator

editar

O circuito subtrator é o circuito que executa a subtração binária, porém este tipo de circuito não possui o Carry In (apesar de ter Carry Out). É utilizado para subtrações de apenas dois bits ou inícios de cascateamento de circuitos subtratores completos. O circuito Meio Subtrator consiste em 2 entradas e 2 saídas. Podemos designar as 2 entradas pelos 2 bits a serem de entrada que serão subtraídos e as 2 saídas que são a Subtração e o Carry Out.

Abaixo temos a tabela verdade de um Circuito Meio Subtrator:

Meio Subtrator
XYSA
0000
0111
1010
1100

As expressões 'X' e 'Y' são os valores de entrada. 'A' é o "empréstimo" e expressa uma operação AND entre X e Y com a entrada X negada (¬X). 'S' é o bit menos significativo da diferença e expressa a operação XOR entre X e Y.

O circuito Meio Subtrator tem este nome porque ele não leva em consideração os resultados de subtração menos significativas igual no Meio Somador. Para casos em que a entrada menos significativa, denominada carry seja considerada, usamos a denominação de circuitos de Subtrator Completo. Esses circuitos executam a subtração dos 2 bits levando em consideração as entradas menos significativas de bit de carry. Este subtrator tem as mesmas saídas do Meio Subtrator, (Subtração e Carry).

Subtrator Completo

editar

O Subtrator Completo como citado acima possui Carry In. Ele é utilizado para subtrair números de pelo menos 2 casas. Isso é possível Cascateando um Meio-Subtrator com Subtradores Completos.

Subtrador Completo
XYCSA
00000
00111
01011
01101
10010
10100
11000
11111

As expressões 'X' e 'Y' são os valores de entrada. 'C' expressa o Carry In ("empréstimo" do bit anterior). 'A' é o "empréstimo" para o próximo bit e expressa uma operação '(¬X and Y) or (¬X and C) or (Y and C)'. 'S' é o bit menos significativo da diferença e expressa a operação XOR entre X, Y e C.

Somadores de Palavras Binárias 2 bits

editar

A soma de palavras binárias necessita ‘N’ somadores inteiros estejam em paralelo sendo que as palavras possuem ‘N’ bits.

O somador para duas palavras binárias que possua "n" bits é formado pela ligação de "N" somadores completos sendo que o "vai um" de uma posiçao é usado como o "vem um" da esquerda da posição seguinte. O "vem um" da direita será aterrado.

Referências

  1. Nikolas Libert. «Circuito Aritmético» (PDF). Universidade Tecnológica Federal do Paraná. Consultado em 1 de dezembro de 2020 
  2. Neil Burgess (2011). «Fast Ripple-Carry Adders in Standard-Cell CMOS VLSI» (PDF) (em inglês). pp. 103–111. Consultado em 1 de dezembro de 2020 
  Este artigo sobre eletrônica é um esboço. Você pode ajudar a Wikipédia expandindo-o.