O que é um subtrator completo: construção usando portas lógicas

Experimente Nosso Instrumento Para Eliminar Problemas





Geralmente, o subtrator completo é um dos mais usados ​​e circuitos lógicos combinacionais essenciais . É um dispositivo eletrônico básico, usado para realizar a subtração de dois números binários. No artigo anterior, já demos a teoria básica de meio somador e um somador completo que usa os dígitos binários para o cálculo. Da mesma forma, o subtrator completo usa dígitos binários como 0,1 para a subtração. O circuito deste pode ser construído com portas lógicas como porta OR, Ex-OR, porta NAND. As entradas deste subtrator são A, B, Bin e as saídas são D, Bout.

Este artigo fornece uma ideia da teoria do subtrator completo que compreende as premissas como o que é um subtrator, projeto com portas lógicas, tabela verdade, etc. Este artigo é útil para estudantes de engenharia que podem passar por esses tópicos no HDL Practical Lab.




O que é um subtrator?

A subtração de dígitos binários pode ser feita com a ajuda do circuito subtrator. Este é um tipo de circuito lógico combinacional, usado para realizar a subtração de dois dígitos binários como 0s e 1s. A subtração de dígitos binários de 0 a 0 ou 0 a 1 não altera o resultado, a subtração de 1 a 1 resultará em 0, mas a subtração de 1 a 0 precisa ser emprestada.

Por exemplo, o circuito subtrator de dois bits inclui duas entradas como A e B, enquanto as saídas são diferença e empréstimo. Este circuito pode ser construído com somadores junto com inversores que estão localizados entre cada entrada de dados, bem como a entrada de empréstimo (Bin) da fase anterior do FA.



Os subtratores são classificados em dois tipos, como meio subtrator e subtrator completo. Aqui estamos discutindo o subtrator completo.

O que é um Subtractor Completo?

É um dispositivo eletrônico ou circuito lógico que realiza a subtração de dois dígitos binários. É um circuito lógico combinacional usado em eletrônica digital. Muitos circuitos combinacionais estão disponíveis em tecnologia de circuito integrado a saber, somadores, codificadores, decodificadores e multiplexadores. Neste artigo, vamos discutir sua construção usando meio subtrator e também os termos como tabela verdade.


Subtrator Completo

Subtrator Completo

O projeto disso pode ser feito por meio de dois subtratores, que envolve três entradas, como minuendo, subtraendo e emprestar, emprestar o bit entre as entradas é obtido da subtração de dois dígitos binários e é subtraído do próximo par de ordem superior de bits, saídas como diferença e emprestar.

O diagrama de bloco subtrator completo é mostrado abaixo. A principal desvantagem do meio subtrator é que não podemos fazer um bit Borrow neste subtrator. Considerando que em seu design, na verdade, podemos fazer um bit Borrow no circuito e podemos subtrair com os dois i / ps restantes. Aqui, A é minuendo, B é subtraendo e Bin é emprestado. As saídas são Diferença (Dif) e Bout (Empréstimo). O circuito subtrator completo pode ser obtido usando dois meios subtratores com uma porta OR extra.

Diagrama de Bloco Subtrator Completo

Diagrama de circuito subtrator completo com portas lógicas

O diagrama de circuito do subtrator completo usando porta básica s é mostrado no diagrama de blocos a seguir. Este circuito pode ser feito com dois circuitos meio-subtrator.

No circuito meio-Subtrator inicial, as entradas binárias são A e B. Como discutimos no artigo meio-Subtrator anterior, ele irá gerar duas saídas, a saber, diferença (Diff) e Empréstimo.

Subtrator completo usando portas lógicas

Subtrator completo usando portas lógicas

A diferença o / p do subtrator esquerdo é dada ao circuito do meio-subtrator esquerdo. A saída de diferencial é fornecida posteriormente para a entrada do circuito subtrator da metade direita. Oferecemos o Borrow em parte através do outro i / p do próximo circuito meio subtrator . Mais uma vez, ele dará a diferença tanto a Diff quanto a Borrow. A saída final desse subtrator é a saída Diff.

Por outro lado, o empréstimo de ambos os circuitos da metade do subtrator é conectado à porta lógica OR. Depois de fornecer a lógica OR para dois bits de saída do subtrator, adquirimos o Borrow final do subtrator. O último Borrow out para significar o MSB (um bit mais significativo).

Se observarmos o circuito interno deste, podemos ver dois Half Subtractors com porta NAND e porta XOR com uma porta OR extra.

Tabela de verdade completa do subtrator

Esta circuito subtrator executa uma subtração entre dois bits, que tem 3 entradas (A, B e Bin) e duas saídas (D e Bout). Aqui, as entradas indicam minuendo, subtraendo e empréstimo anterior, enquanto as duas saídas são denotadas como empréstimo o / p e diferença. A imagem a seguir mostra a tabela verdade do subtrator completo.

Entradas

Saídas

Minuendo (A)

Subtraendo (B) Pegar emprestado (bin) Diferença (D)

Pegar emprestado (luta)

0

000

0

0

0111
0101

1

0110

1

1

0010
1010

0

1

1000

1

111

1

K-Map

A simplificação do subtrator K-map completo para a diferença acima e pedir emprestado é mostrado abaixo.

K- Map for Difference

As equações para a diferença e também para Bin são mencionadas abaixo.

K- Map para luta

A expressão para diferença é,

D = A’B’Bin + AB’Bin ’+ A’BBin’ + ABBin

A expressão para Borrow é,

Bout = A’Bin + A’B + BBin

Cascata de Circuito Subtrator Completo

Anteriormente, discutimos uma visão geral desse tipo de construção, diagrama de circuito com portas lógicas. Mas se quisermos subtrair dois, de outra forma, mais números de 1 bit, este circuito subtrator é muito útil para colocar em cascata números de bit único e também subtrair mais de dois números binários. Nesses casos, um circuito em cascata adicionador completo é usado com a ajuda da porta lógica NOT. A conversão do circuito de somador completo para subtrator completo pode ser feita usando a técnica de complemento de 2.

Geralmente, inverta as entradas de subtraendo para o somador completo usando a porta NOT, caso contrário, um inversor. Ao adicionar este Minuend (entrada não invertida) e Subtraendo (entrada invertida), o LSB (entrada de transporte) do circuito FA é 1, o que significa Logic High, caso contrário, subtraímos dois dígitos binários usando a técnica de complemento de 2. A saída do FA é o bit Diff e se invertermos o carry out, podemos obter o bit MSB de outra forma. Na verdade, podemos projetar o circuito de forma que a saída possa ser observada.

Código Verilog

Para a parte de codificação, primeiro, precisamos verificar a forma estrutural de modelagem do diagrama de circuito lógico. O diagrama lógico disso pode ser construído usando uma porta AND, circuitos de meio subtrator e a combinação de portas lógicas como portas AND, OR, NOT, XOR. Como na modelagem estrutural, explicamos vários módulos para cada arranjo elementar básico. No código a seguir, diferentes módulos podem ser definidos para cada portão.

Este módulo é para a porta OR.

INPUT: a0, b0

SAÍDA: c0

Por último, uniremos esses módulos precisos de portão em um único módulo. Para isso, utilizamos aqui a instanciação do módulo. Agora, esta instanciação pode ser usada uma vez que desejamos replicar um módulo ou função exata para diversos conjuntos de entrada. Primeiro, projetamos um meio subtrator e, em seguida, este módulo é usado para implementar um subtrator completo. Para implementar isso, usamos a porta OR para combinar o / ps para a variável de Bout. O código verilog para o subtrator completo é mostrado abaixo

módulo or_gate (a0, b0, c0)

entrada a0, b0

saída c0

atribuir c0 = a0 | b0

módulo final

módulo xor_gate (a1, b1, c1)

entrada a1, b1

saída c1

atribuir c1 = a1 ^ b1

módulo final

módulo e_gate (a2, b2, c2)

entrada a2, b2

saída c2

atribuir c2 = a2 & b2

módulo final

módulo not_gate (a3, b3)

entrada a3

saída b3

atribuir b3 = ~ a3

módulo final

módulo meio_subtrator (a4, b4, c4, d4)

entrada a4, b4

saída c4, d4

fio x

xor_gate u1 (a4, b4, c4)

e_gate u2 (x, b4, d4)

not_gate u3 (a4, x)

módulo final

módulo full_subtractor (A, B, Bin, D, Bout)

entrada A, B, Bin

saída D, Bout

fio p, q, r

meio_subtrator u4 (A, B, p, q)

meio_subtrator u5 (p, Bin, D, r)

or_gate u6 (q, r, Bout)

módulo final

Subtrator total usando multiplexador 4X1

A execução da subtração pode ser feita através do método do complemento de dois. Assim, exigimos a utilização de uma porta 1-XOR, que é usada para inverter 1 bit e incluir um no bit de transporte. A saída de DIFERENCE é semelhante à saída SUM no circuito do somador completo, entretanto BARROW o / p não é semelhante à saída de transporte do somador completo, porém é invertida e complementada, como A - B = A + (-B) = Complemento de A + dois de B.

O projeto deste usando o multiplexador 4X1 é mostrado no diagrama lógico a seguir. Esse design pode ser feito usando as seguintes etapas.

4X1 Multiplexer

4X1 Multiplexer

  • Na etapa 1, há duas saídas como Sub e Borrow. Portanto, temos que escolher 2 multiplexadores.
  • Na etapa 2, a tabela verdade pode ser implementada junto com K-maps
  • Na etapa 3, as duas variáveis ​​podem ser selecionadas como sua linha de seleção. Por exemplo, B & C estão neste caso.

Mesa da Verdade

O tabela verdade do subtrator completo circuito usando multiplexador 4X1 inclui o seguinte

PARA

B C Sub

Emprestar

0

0000
0011

1

0101

1

0

1101
1001

0

1

0100
1100

0

1

111

1

Subtrator completo usando decodificador

O projeto de um subtrator completo usando 3-8 decodificadores pode ser feito usando saídas baixas ativas. Vamos supor que o decodificador funcione usando o seguinte diagrama lógico. O decodificador inclui três entradas em 3-8 decodificadores. Com base na tabela verdade, podemos escrever os mintermos para as saídas de diferença e empréstimo.

Da tabela de verdade acima,

Para as diferentes funções na tabela verdade, os mintermos podem ser escritos como 1,2,4,7 e, da mesma forma, para o empréstimo, os mintermos podem ser escritos como 1,2,3,7. Os decodificadores 3-8 incluem três entradas, bem como 8 saídas, como 0 a 7 números.

Decodificador 3 para 8

Decodificador 3 para 8

Se a entrada do subtrator for 000, então a saída '0' estará ativa e se a entrada for 001, então a saída '1' estará ativa.

Agora as saídas do subtrator podem ser obtidas de 1, 2, 4 e 7 para conectá-lo a uma porta NAND, então a saída será a diferença. Essas saídas podem ser conectadas a outras portas lógicas NAND, onde a saída muda para empréstimo.

Por exemplo, se a entrada for 001, a saída será 1, o que significa que está ativa. Assim, a saída está ativa baixa e a saída pode ser obtida da porta NAND chamada função de diferença, como alta e a função de empréstimo também muda para alta. Portanto, obtemos a saída preferencial. Finalmente, o decodificador funciona como um subtrator completo.

Vantagens e desvantagens

O vantagens do subtrator inclui o seguinte.

  • O projeto do subtrator é muito simples, bem como implementar
  • Dedução de potência dentro de DSP (processamento de sinal digital)
  • Tarefas computacionais podem ser realizadas em alta velocidade.

O desvantagens do subtrator inclui o seguinte.

  • No meio subtrator, não há condição para aceitar a entrada do tipo emprestado da fase anterior.
  • A velocidade do subtrator pode ser parcial por meio do atraso no circuito.

Formulários

Alguns dos aplicações de subtrator completo inclui o seguinte

  • Estes são geralmente empregados para ALU (unidade lógica aritmética) em computadores para subtrair como CPU e GPU para as aplicações de gráficos para diminuir a dificuldade do circuito.
  • Os subtratores são usados ​​principalmente para executar funções aritméticas, como subtração, em calculadoras eletrônicas e também em dispositivos digitais.
  • Estes também são aplicáveis ​​para diferentes microcontroladores para subtração aritmética, temporizadores e o contador do programa (PC)
  • Subtratores são usados ​​em processadores para calcular tabelas, endereços, etc.
  • Também é útil para sistemas baseados em rede e DSP.
  • Eles são usados ​​principalmente para ALU em computadores para subtrair como CPU e GPU para aplicativos gráficos para reduzir a complexidade do circuito.
  • Eles são usados ​​principalmente para realizar funções aritméticas, como subtração em dispositivos digitais, calculadoras, etc.
  • Esses subtratores também são apropriados para vários microcontroladores para temporizadores, PC (contador de programa) e subtração aritmética
  • Eles são empregados por processadores para calcular endereços, tabelas, etc.
  • A implementação disso com portas lógicas como NAND e NOR pode ser feita com qualquer circuito lógico subtrator completo porque ambas as portas NOR e NAND são chamadas de portas universais.

A partir das informações acima, avaliando o somador, subtrator completo usando dois circuitos de meio subtrator e suas formas tabulares, pode-se notar que Dout no subtrator completo é exatamente semelhante ao Sout do somador completo. A única variação é que A (variável de entrada) é complementada no subtrator completo. Assim, é possível mudar o circuito somador completo em um subtrator completo, apenas complementando o i / p A antes de ser dado a as portas lógicas para gerar a última saída do bit de empréstimo (Bout).

Usando qualquer circuito lógico de subtrator completo, subtrator completo usando portas NAND e subtrator completo usando portas nor podem ser implementados, uma vez que as portas NAND e NOR são tratadas como portas universais. Aqui está uma pergunta para você, qual é a diferença entre meio subtrator e subtrator completo?