Čo je to úplný subtraktor: Konštrukcia pomocou logických brán

Čo je to úplný subtraktor: Konštrukcia pomocou logických brán

Všeobecne je celý odčítač jedným z najpoužívanejších a základné kombinačné logické obvody . Je to základné elektronické zariadenie, ktoré sa používa na odčítanie dvoch binárnych čísel. V predchádzajúcom článku sme už uviedli základnú teóriu polovičná a plná sčítačka ktorá na výpočet používa binárne číslice. Rovnako full-subtractor používa na odčítanie binárne číslice ako 0,1. Obvod tohto obvodu môže byť zostavený s logickými bránami ako brána OR, Ex-OR, NAND. Vstupy tohto odčítača sú A, B, Bin a výstupy sú D, Bout.

Tento článok poskytuje myšlienku teórie úplného subtraktora, ktorá obsahuje premisy, ako je subtraktor, dizajn s logickými bránami, tabuľka pravdy atď. Tento článok je užitočný pre študentov inžinierstva, ktorí si môžu prejsť týmito témami v praktickom laboratóriu HDL.


Čo je odčítavač?

Odčítanie binárnych číslic je možné vykonať pomocou odčítacieho obvodu. Toto je jeden druh kombinačného logického obvodu, ktorý sa používa na odpočítanie dvoch binárnych číslic ako 0s a 1s. Odčítanie binárnych číslic od 0 do 0 alebo 0 až 1 výsledok nezmení, odčítanie 1 až 1 bude mať hodnotu 0, ale na odpočítanie 1 až 0 je potrebné požičať si.



Napríklad dvojbitový subtraktorový obvod obsahuje dva vstupy ako A a B, zatiaľ čo výstupy sú rozdielne a požičané. Tento obvod môže byť zostavený s prídavnými zariadeniami spolu s invertormi, ktoré sú umiestnené medzi každým vstupom údajov, ako aj výpožičným (Bin) vstupom skoršej fázy FA.

Odčítače sú rozdelené do dvoch typov, ako je polovičný a plný. Tu diskutujeme o úplnom odčítavači.

Čo je to Full Subtractor?

Jedná sa o elektronické zariadenie resp logický obvod ktorá vykonáva odčítanie dvoch binárnych číslic. Jedná sa o kombinačný logický obvod používaný v digitálnej elektronike. Mnoho kombinačných obvodov je k dispozícii v technológia integrovaných obvodov menovite pridávače, kódovacie zariadenia, dekodéry a multiplexory. V tomto článku sa budeme zaoberať jeho konštrukciou pomocou polovičného odčítavača a tiež výrazmi ako pravdivostná tabuľka.


Plný odčítavač

Plný odčítavač

Toto je možné navrhnúť pomocou dvoch polovičných subtraktorov, ktoré zahŕňajú tri vstupy, ako napríklad minuend, subtrahend a vypožičiavanie, bit medzi výpožičkami sa získava odčítaním dvoch binárnych číslic a odčíta sa od dvojice vyšších rádov bity, výstupy ako rozdiel a požičané.

The úplná bloková schéma odčítavača je zobrazený nižšie. Najvýznamnejšou nevýhodou polovičného odčítavača je, že v tomto odčítavači nemôžeme urobiť bit požičať. Zatiaľ čo v jeho dizajne môžeme v obvode urobiť bit požičať a so zvyšnými dvoma i / ps odpočítať. Tu A je minulosť, B je subtrahend & Bin je vypožičaný. Výstupmi sú Difference (Diff) & Bout (Borrow out). Celý obvod subtraktora je možné získať použitím dvoch polovičných subtraktorov s extra hradlom OR.

Blokový diagram úplného odčítavača

Schéma zapojenia celého subtraktora s logickými hradlami

The obvodová schéma úplného odčítača pomocou základnej brány s je znázornený na nasledujúcej blokovej schéme. Tento obvod je možné vykonať pomocou dvoch polovodičových obvodov.

V počiatočnom obvode polovičného subtraktora sú binárne vstupy A a B. Ako sme už diskutovali v predchádzajúcom článku o polovičnom subtraktore, vygeneruje dva výstupy, a to rozdiel (Diff) & Borrow.

Plný odčítavač pomocou logických brán

Plný odčítavač pomocou logických brán

Rozdiel o / p ľavého odčítavača je daný obvodom ľavého polovičného odčítavača. Difúzny výstup sa ďalej poskytuje vstupu pravého polovičného obvodu subtraktora. Ponorili sme bit požičiavať trochu cez ďalšie i / p nasledujúcej polovičný odčítací obvod . Opäť raz to rozdá Diff, ale aj Borrow. Konečný výstup tohto odčítača je rozdielny výstup.

Na druhej strane je výpožička z oboch polovičných obvodov subtraktora pripojená k logickej bráne OR. Neskôr ako rozdáme logiku ALEBO pre dva výstupné bity odčítavača, získame konečnú výpožičku od odčítača. Posledný vypožičaný na označenie MSB (najvýznamnejší bit).

Ak z toho pozorujeme vnútorný obvod, môžeme vidieť dva polovičné subtraktory s hradlom NAND a hradlom XOR s hradlom OR navyše.

Tabuľka úplnej odčítavacej pravdy

Toto obvod odčítavača vykoná odčítanie medzi dvoma bitmi, ktoré majú 3 vstupy (A, B a Bin) a dva výstupy (D a Bout). Tu vstupy označujú minulosť, podčiarknutie a predchádzajúcu výpožičku, zatiaľ čo tieto dva výstupy sa označujú ako výpožička o / p a rozdiel. Nasledujúci obrázok zobrazuje tabuľku pravdy full-subtraktora.

Vstupy

Výstupy

Minuend (A)

Subtrahend (B) Požičať (kôš) Rozdiel (D)

Požičať si

0

000

0

0

0111
0101

1

0110

1

1

0010
1010

0

1

1000

1

111

1

K-mapa

Zjednodušenie plný subtraktor K-mapa pre vyššie uvedený rozdiel a výpožičku je uvedený nižšie.

K - mapa pre rozdiel

Rovnice rozdielu a Bin sú uvedené nižšie.

K - mapa zápasu

Výraz pre rozdiel je,

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

Výraz pre Borrow je,

Zápas = A’Bin + A’B + BBin

Kaskádovanie celého obvodu subtraktora

Predtým sme diskutovali o prehľade podobného konštrukčného riešenia, schéme zapojenia s logickými hradlami. Ale ak chceme odčítať dve inak viac 1-bitové čísla, tento odčítací obvod je veľmi užitočný na kaskádu jednobitových čísel a tiež odčíta viac ako dve binárne čísla. V takýchto prípadoch sa používa kaskádový obvod sčítačky pomocou logickej brány NOT. Konverziu obvodu z úplného sčítača na plný odčítavač je možné vykonať pomocou techniky 2 doplnkov.

Spravidla invertujte vstupy subtrahendu pre celú sčítačku pomocou NOT hradla, inak invertora. Pridaním tohto Minuend (neinvertovaný vstup) & Subtrahend (Invertovaný vstup) je LSB (prenosový vstup) obvodu FA 1, čo znamená Logic High, inak odčítame dve binárne číslice pomocou techniky komplementu 2. Výstupom FA je bit Diff. Ak vykonanie invertujeme, môžeme získať MSB, inak si požičať bit. V skutočnosti môžeme navrhnúť obvod tak, aby bolo možné pozorovať výstup.

Verilogský kód

Pokiaľ ide o kódovaciu časť, najskôr musíme skontrolovať štrukturálny spôsob modelovania schémy logického obvodu. Logický diagram tohto je možné vytvoriť pomocou brány AND, polovičných odčítacích obvodov a kombinácie logických brán ako brány AND, OR, NOT, XOR. Rovnako ako v štruktúrnom modelovaní vysvetľujeme rôzne moduly pre každé základné elementárne usporiadanie. V nasledujúcom kóde je možné pre každú bránu definovať rôzne moduly.

Tento modul je pre bránu OR.

VSTUP: a0, b0

VÝSTUP: c0

Nakoniec spojíme tieto presné moduly brány do jediného modulu. Na to tu využívame inštanciu modulu. Teraz je možné túto inštanciu použiť, keď chceme replikovať presný modul alebo funkciu pre rôzne vstupné množiny. Najskôr navrhneme polovičný odčítač, potom sa tento modul použije na implementáciu úplného odčítavača. Na implementáciu tohto postupu používame bránu OR na kombináciu o / ps pre premennú Bout. The verilogový kód pre celý odčítač je zobrazený nižšie

modul or_gate (a0, b0, c0)

vstup a0, b0

výstup c0

priraď c0 = a0 | b0

endmodul

modul xor_gate (a1, b1, c1)

vstup a1, b1

výstup c1

priraďte c1 = a1 ^ b1

endmodul

modul and_gate (a2, b2, c2)

vstup a2, b2

výstup c2

priraďte c2 = a2 & b2

endmodul

modul not_gate (a3, b3)

vstup a3

výstup b3

priradiť b3 = ~ a3

endmodul

modul half_subtractor (a4, b4, c4, d4)

vstup a4, b4

výstup c4, d4

drôt x

xor_gate u1 (a4, b4, c4)

and_gate u2 (x, b4, d4)

not_gate u3 (a4, x)

endmodul

modul full_subtractor (A, B, Bin, D, Bout)

vstup A, B, Bin

výstup D, záchvat

drôt p, q, r

half_subtractor u4 (A, B, p, q)

half_subtractor u5 (p, Bin, D, r)

or_gate u6 (q, r, zápas)

endmodul

Plný odčítavač pomocou multiplexora 4X1

Vykonanie odčítania je možné vykonať pomocou metódy dvoch doplnkov. Preto požadujeme použitie brány 1-XOR, ktorá sa používa na invertovanie 1-bitov a zahrnutie jedného do prenosového bitu. Výstup ROZDIELU je podobný výstupu SUM v obvode úplnej sčítačky, avšak BARROW o / p nie je podobný výkonu prenášania celej sčítačky, je však invertovaný a doplnený, ako A - B = A + (-B) = A + dva doplnok B.

Konštrukcia tohto riešenia pomocou multiplexora 4X1 je uvedená v nasledujúcom logickom diagrame. Tento dizajn je možné vykonať pomocou nasledujúcich krokov.

Multiplexer 4X1

Multiplexer 4X1

  • V kroku 1 sú dva výstupy ako Sub a Borrow. Musíme teda zvoliť 2 multiplexory.
  • V kroku 2 možno implementovať tabuľku pravdy spolu s K-mapami
  • V kroku 3 je možné zvoliť dve premenné ako riadok výberu. Napríklad B & C sú v tomto prípade.

Tabuľka pravdy

The pravdivostná tabuľka úplného odčítavača obvod využívajúci multiplexor 4X1 obsahuje nasledujúce

TO

B C. Sub

Požičať si

0

0000
0011

1

0101

1

0

1101
1001

0

1

0100
1100

0

1

111

1

Celý subtraktor pomocou dekodéra

Návrh úplného subtraktora pomocou 3-8 dekodérov je možné vykonať pomocou aktívnych nízkych výstupov. Predpokladajme, že dekodér bude fungovať pomocou nasledujúceho logického diagramu. Dekodér obsahuje tri vstupy v 3 - 8 dekodéroch. Na základe tabuľky pravdivosti môžeme napísať mintermy pre výstupy rozdielu a požičať si.

Z vyššie uvedenej tabuľky pravdy

Pre rôzne funkcie v tabuľke pravdy môžu byť mintermy zapísané ako 1,2,4,7 a podobne pre výpožičku môžu byť mintermy napísané ako 1,2,3,7. Dekodéry 3-8 obsahujú tri vstupy a 8 výstupov, napríklad 7 až 7 čísel.

Dekodér 3 až 8

Dekodér 3 až 8

Ak je vstup odčítavača 000, potom bude aktívny výstup „0“ a ak je vstup 001, bude aktívny aj výstup „1“.

Teraz môžu byť výstupy odčítača prevzaté z 1, 2, 4 a 7 na jeho pripojenie k bráne NAND, potom bude výstupom rozdiel. Tieto výstupy je možné prepojiť s inými logickými bránami NAND, kde sa výstup zmení na výpožičku.

Napríklad ak je vstup 001, potom bude výstup 1, čo znamená, že je aktívny. Takže výstup je aktívny nízky a výstup je možné získať z brány NAND nazývanej rozdielová funkcia ako vysoká a funkcia výpožičky sa tiež zmení na vysokú. Preto dostaneme preferovaný výstup. Takže konečne, dekodér funguje ako plný subtraktor.

Výhody a nevýhody

The výhody odčítavača zahrňte nasledujúce.

  • Návrh subtraktora je veľmi jednoduchý, rovnako ako implementovateľný
  • Odpočet výkonu v rámci DSP (digitálne spracovanie signálu)
  • Výpočtové úlohy je možné vykonávať pri vysokej rýchlosti.

The nevýhody subtraktora zahrňte nasledujúce.

  • V polovičnom odčítavači nie je podmienka na prijatie pôžičkového vstupu z predchádzajúcej fázy.
  • Rýchlosť odčítavača môže byť čiastočná prostredníctvom oneskorenia v obvode.

Aplikácie

Niektoré z aplikácie full-subtraktora zahrňte nasledujúce

  • Spravidla sa používajú pre ALU (aritmetická logická jednotka) v počítačoch na odpočítanie ako CPU a GPU pre aplikácie grafiky na zníženie obtiažnosti obvodu.
  • Odčítače sa väčšinou používajú na vykonávanie aritmetických funkcií, ako je odčítanie, v elektronických kalkulačkách aj v digitálnych zariadeniach.
  • Sú použiteľné aj pre rôzne mikrokontroléry pre aritmetické odčítanie, časovače a počítadlo programov (PC)
  • Odpočítavače sa používajú v procesoroch na výpočet tabuliek, adries atď.
  • Je tiež užitočný pre systémy založené na DSP a sieťových systémoch.
  • Používajú sa hlavne pre ALU v počítačoch na odčítanie ako CPU a GPU pre grafické aplikácie, aby sa znížila zložitosť obvodu.
  • Používajú sa hlavne na vykonávanie aritmetických funkcií, ako je odčítanie v digitálnych zariadeniach, kalkulačkách atď.
  • Tieto odčítače sú vhodné aj pre rôzne mikrokontroléry pre časovače, PC (počítadlo programov) a aritmetické odčítanie
  • Používajú sa pre procesory na výpočet adries, tabuliek atď.
  • Implementáciu tohto s logickými hradlami ako NAND & NOR je možné vykonať s akýmkoľvek úplným subtraktorovým logickým obvodom, pretože obidve brány NOR a NAND sa nazývajú univerzálne brány.

Z vyššie uvedených informácií vyplýva, že vyhodnotením sčítača, úplného odčítavača pomocou dvoch polovičných odčítacích obvodov a jeho tabuľkových tvarov si možno všimnúť, že Dout v úplnom odčítavači je presne podobný Soutu sčítavača. Jedinou variáciou je, že A (vstupná premenná) je doplnená v úplnom odčítavači. Je teda možné zmeniť obvod sčítačky na plný subtraktor iba doplnením i / p A predtým, ako je daný logické brány na vygenerovanie posledného bit-bitového výstupu (Bout).

Použitím ľubovoľného logického obvodu s úplným subtraktorom je možné implementovať plný subtraktor pomocou brán NAND a plný subtraktor pomocou brán nor, pretože brány NAND aj NOR sa považujú za univerzálne brány. Tu je otázka, aký je rozdiel medzi polovičným a úplným odčítavačom?