7 Fatti sul sottrattore binario: sottrattore metà e pieno

  • Definizione e panoramica del sottrattore binario
  • Mezzo sottrattore
  • Sottrattore completo
  • Sottrattore a N bit
  • Applicazioni del sottrattore binario
  • VHDL implementazione del mezzo sottrattore e del pieno sottrattore

Definizione

Un sottrattore è un dispositivo che sottrae due numeri e produce il risultato. Un sottrattore digitale o binario è qualcosa che si occupa della sottrazione di cifre binarie.

Un sottrattore binario è necessario per il calcolo digitale all'interno di un dispositivo digitale o di un computer digitale. Il modo più conveniente di sottrazione numeri binari senza segno è il metodo dei complementi. Esistono regole per la sottrazione binaria.

Le regole di sottrazione binaria sono indicate come segue. Qui 0 è logico basso e uno è logico alto. A e B sono due ingressi.

ABY = A - B
000
011 (prendere in prestito 1)
101
110
Tabella di verità della sottrazione binaria

Esempio di operazioni di sottrazione:

1101 - 1011

1101

- 1011

= 0010

Quindi, la risposta è 0010

I metodi dei complementi possono alternativamente eseguire sottrazioni binarie per sottrattori binari. Esistono due tipi di metodi di complemento generalmente utilizzati.

Complemento di A. 1

Complemento di B. 2

Passaggi per eseguire il complemento a 1:

  1. Trova il complemento a 1 del numero che deve essere sottratto.
  2. Ora il complemento di 1 viene aggiunto al numero da cui si desidera la sottrazione.
  3. Dove c'è un riporto nell'ultima posizione, del risultato dell'aggiunta nella fase 2, il supporto viene rimosso e aggiunto al prodotto senza riporto per ottenere il risultato finale.

Facciamo un esempio: 1101-1011

Complemento di 1 di 1011 = 0100

Ora aggiungi 1101 con 0100

1101

 + 0100

 = 1 0001

Come possiamo vedere, ce n'è uno come riporto, quindi rimuoviamo il riporto e aggiungiamo di nuovo il riporto con il risultato ottenuto.

0001

+ 1

= 0010

Quindi, la risposta alla sottrazione è 0010

Per il metodo del complemento di 2

  1. Calcola il complemento di 2.
  2. Il complemento viene ora aggiunto con un altro numero.
  3. Il riporto viene rifiutato.

Facciamo un esempio: 1101-1011

Il complemento a 2 di qualsiasi numero viene calcolato eseguendo il complemento a 1 e aggiungendo 1 ad esso.

Complemento di 2 di

Ora aggiungi 1101 con 0100

1101 + 0100 = 1 0001

Come possiamo vedere, ce n'è uno come riporto, quindi rimuoviamo il riporto e aggiungiamo di nuovo il riporto con il risultato ottenuto.

0001 + 1 = 0010

Quindi, la risposta alla sottrazione è 0010

I computer digitali utilizzano il metodo del complemento a 2 per i calcoli poiché richiede meno trasporto.

I metodi del complemento nel sistema dei numeri decimali sono noti come metodo del complemento di 9 e 10.

Vari circuiti digitali implementano questa operazione di sottrazione. Loro sono -

  • Mezzo sottrattore
  • Sottrattore completo

Un sottrattore binario non solo esegue operazioni di addizione, ma viene anche utilizzato nelle applicazioni digitali. Decodifica e codifica dei valori, calcolo dell'indice è alcune delle sue applicazioni.

Mezzo sottrattore

Un sottrattore mezzo binario è un sottrattore binario che sottrae un bit di dati e produce il risultato. Ha due lati di ingresso attraverso i quali forniamo i valori logici digitali, e ha due uscite attraverso le quali riceviamo l'impatto dell'operazione. Il risultato può essere visualizzato in una singola cifra. Il lavoro mostra il numero nella Sottrazione che ha lo stesso significato delle singole cifre sottratte. L'altro output mostra il bit di prestito.

Mezzo sottrattore utilizzando NAND
Implementazione del gate NAND. Credito immagine - NitianabhigyanMezzo sottrattore utilizzando NANDCC BY-SA 4.0

La tabella della verità dei mezzi sottrattori

Il funzionamento del sottrattore mezzo binario è mostrato nella seguente tabella di verità.

ABSynhydridprendere in prestito
0000
0111
1010
1100
Tabella di verità per mezzo sottrattore binario

Circuito mezzo sottrattore

Dalla tabella della verità, possiamo concludere che le prime tre righe possono rappresentare il risultato utilizzando una singola cifra. Nella seconda riga, il lavoro è descritto utilizzando due numeri poiché è stato preso in prestito come 1.

Differenza = A′B + AB ′

Prendere in prestito = A′B 

Così,

Differenza = A XOR B

Prendere in prestito = A ′ E B

Abbiamo bisogno di una porta XOR, una porta NOT e una porta AND per implementare la logica. I cancelli XOR, NOT, AND possono essere realizzati anche utilizzando cancelli universali come NAND e NOR. Quindi, un mezzo sottrattore può essere progettato utilizzando solo porte universali.

L'immagine seguente mostra A e B come input e D come differenza e C mentre prendono in prestito.

Sottrattore mezzo binario
Mezzo sottrattore

Sottrattore completo

Full Binary Subtractor è un altro tipo di sottrattore binario che fornisce il risultato di un'operazione di sottrazione binaria. Quando vengono sottratti due numeri binari, ad eccezione della cifra meno significativa, c'è un prestito come Bi-1 e prendere in prestito come Bi. Il Subtractor completo è progettato per gestire un prestito per ogni fase. È così che un intero ordine supera il difetto di mezzo sottrattore nell'esecuzione del prestito.

Una tabella di verità completa del sottrattore

XiYiBi-1DiBi
00000
00111
01011
01101
10010
10100
11000
11111
Tabella di verità del sottrattore completo

Circuito sottrattore completo

Differenza = A ′ B ′ Bin + AB ′ Bin′ + A ′ BBin′ + ABBin 

Prendere in prestito = A ′ Bin + A ′ B + BBin 

Per implementare l'espressione utilizzando porte logiche, è necessario semplificare ulteriormente la parola.

Differenza = A ′ B ′ Bin + AB ′ Bin′ + A ′ BBin′ + ABBin 

 Oppure, Differenza = Bin (A′B ′ + AB) + Bin ′ (AB ′ + A′B)

 Oppure, Differenza = Bin (LA XNOR B) + Bin (A XOR B)

 Oppure, Differenza = Bin (LA XOR B) ′ + Bin (A XOR B)

 Oppure, Differenza = Bin XOR (A XOR B)

  Oppure, Differenza = (A XOR B) XOR Bin

Prendere in prestito = A ′ B ′ Bin + AB ′ Bin′ + A ′ BBin′ + ABBin 

 Oppure, prendere in prestito = A ′ B ′ Bin + A ′ BBin ′ + A ′ BBin + A ′ BBin + A ′ BBin + AB Bin

 Oppure, prendere in prestito = A ′ Bin (B + B ′) + A′B (Bin +Bin ′) + BBin (A + A ′)

 Oppure, prendere in prestito = A ′ Bin + A′B + BBin

L'espressione può essere scritta in un altro modo:

Bout = A ′ B ′ Bin + A ′ B Bin ′ + A ′ B Bin + AB Bin     

    Oppure, Prendere in prestito = Bin (AB + A ′ B ′) + A ′ B (Bin + Bin ′)

     Oppure, Prendere in prestito = Bin (A XNOR B) + A ′ B

    Oppure, Prendere in prestito = Bin (A XOR B) ′ + A ′ B

Sottrattori binari completi
Vengono inseriti i sottrattori completi, X, Y, Z

Come mostra lo schema del circuito, A, B e Bpollici Il circuito fornisce due output come output di differenza e prende in prestito output. Il Bin è impostato a 1 ogni volta che è presente un prestito nell'ingresso A. Bin viene quindi sottratto da A e Y.

L'espressione generale può essere scritta come D = A - B - Bin + 2 SIfuori.

I sottrattori completi possono anche essere implementati utilizzando i mezzi sottrattori.

1920px Sottotitolo completo fisso.svg
Sottrattori completi utilizzando Half Subtractor

Sottrattore a N bit

In un sottrattore binario a bit singolo, è possibile eseguire la sottrazione di solo 1 bit. Se dobbiamo eseguire la sottrazione di n bit, è richiesto un sottrattore binario di n bit. Un sottrattore di n bit può essere implementato in modo simile utilizzando sottrattori in forma a cascata.

Applicazioni dei sottrattori

  • I sottrattori sono spesso usati con sommatori. Ogni volta che è necessario un sommatore per un circuito, è necessario anche un sottrattore.
  • ALU, che è responsabile del calcolo, e rimane all'interno di a microprocessore, necessita anche di sottrattori. Le CPU necessitano anche di sottrattori per il funzionamento.
  • I microcontrollori utilizzano anche i sottrattori per eseguire il calcolo digitale.
  • I sottrattori vengono utilizzati anche nel dominio dell'elaborazione del segnale digitale.
  • I computer digitali utilizzano molti sottrattori.

Implementazione VHDL di mezzi sottrattori e sottrattori completi

Modellazione del flusso di dati a mezzo sottrattore

libreria IEEE;

utilizzare IEEE.STD_LOGIC_1164.ALL;

l'entità ENTITY_NAME è

    Porta (A: in STD_LOGIC;

           B: in STD_LOGIC;

           IB: in STD_LOGIC;

           Diff: out STD_LOGIC;

           Borr: out STD_LOGIC);

fine ENTITY_NAME;

Architettura Dataflow

architettura Dataflow di ENTITY_NAME è

iniziare

Diff <= (A xo B) xo IB;

Borr <= ((non A) e (B o IB)) o (B e IB);

fine flusso di dati;

Modellazione del flusso di dati con sottrattore completo

l'entità ENTITY_NAME è

    Porta (A: in STD_LOGIC;

           B: in STD_LOGIC;

           IB: in STD_LOGIC;

           Borr: out STD_LOGIC;

           Diff: out STD_LOGIC);

fine ENTITY_NAME;

Flusso di dati dell'architettura

L'architettura Comportamentale di ENTITY_NAME è

iniziare

processo (A, B, IB)

iniziare

se (A = '0 ′ e B =' 0 ′ e IB = '0 ′) allora

Diff <= '0 ′;

Borr <= '0 ′;

elsif (A = '0 ′ e B =' 0 ′ e IB = '1 ′) quindi

Borr <= '1 ′;

Diff <= '1 ′;

elsif (A = '0 ′ e B =' 1 ′ e IB = '0 ′) quindi

Borr <= '1 ′;

Diff <= '1 ′;

elsif (A = '0 ′ e B =' 1 ′ e IB = '1 ′) quindi

Borr <= '0 ′;

Diff <= '1 ′;

elsif (A = '1 ′ e B =' 0 ′ e IB = '0 ′) quindi

Borr <= '1 ′;

Diff <= '0 ′;

elsif (A = '1 ′ e B =' 0 ′ e IB = '1 ′) quindi

Borr <= '0 ′;

Diff <= '0 ′;

elsif (A = '1 ′ e B =' 1 ′ e IB = '0 ′) quindi

Borr <= '0 ′;

Diff <= '0 ′;

altro

Borr <= '1 ′;

Diff <= '1 ′;

fine se;

fine del processo;

fine comportamentale;