Co je to Full Subtractor: Konstrukce využívající logické brány

Vyzkoušejte Náš Nástroj Pro Odstranění Problémů





Obecně je plný odečítač jedním z nejpoužívanějších a základní kombinační logické obvody . Jedná se o základní elektronické zařízení, které se používá k odečítání dvou binárních čísel. V předchozím článku jsme již uvedli základní teorii poloviční zmije a plná zmije který pro výpočet používá binární číslice. Podobně full-subtraktor používá pro odečítání binární číslice jako 0,1. Obvod tohoto může být postaven s logickými branami, jako je brána OR, Ex-OR, NAND. Vstupy tohoto odečítače jsou A, B, Bin a výstupy jsou D, Bout.

Tento článek poskytuje teorii teorie full-subtraktoru, která zahrnuje prostor, jako je subtraktor, design s logickými branami, tabulka pravdivosti atd. Tento článek je užitečný pro studenty inženýrství, kteří si mohou projít tato témata v praktické laboratoři HDL.




Co je odečítač?

Odečtení binárních číslic lze provést pomocí odečítacího obvodu. Jedná se o jeden druh kombinačního logického obvodu, který se používá k odečtení dvou binárních číslic, jako jsou 0s a 1s. Odečtení binárních číslic od 0 do 0 nebo 0 až 1 výsledek nezmění, odčítání od 1 do 1 bude mít hodnotu 0, ale odečtení od 1 do 0 je třeba vypůjčit.

Například dvoubitový odečítací obvod zahrnuje dva vstupy jako A & B, zatímco výstupy jsou rozdílné a vypůjčené. Tento obvod může být sestaven s přídavnými zařízeními spolu s měniči, které jsou umístěny mezi každým vstupem dat, stejně jako vstupem zapůjčení (Bin) dřívější fáze FA.



Subtraktory se dělí na dva typy, jako je napůl odečítač a plný odečítač. Zde diskutujeme o úplném odečítači.

Co je to Full Subtractor?

Jedná se o elektronické zařízení nebo logický obvod který provádí odečtení dvou binárních číslic. Jedná se o kombinační logický obvod používaný v digitální elektronice. Mnoho kombinačních obvodů je k dispozici v technologie integrovaných obvodů jmenovitě sčítače, kodéry, dekodéry a multiplexery. V tomto článku se budeme zabývat jeho konstrukcí pomocí polovičního odečítače a také pojmy jako pravdivostní tabulka.


Plný odečítač

Plný odečítač

Navrhování toho lze provést dvěma polovičními subtraktory, které zahrnují tři vstupy, jako je minuend, subtrahend a půjčit, bit vypůjčit mezi vstupy se získá odečtením dvou binárních číslic a odečte se od dalšího páru vyšších řádů bity, výstupy jako rozdíl a výpůjčka.

The plné odečítací blokové schéma je zobrazen níže. Nejvýznamnější nevýhodou polovičního odečítače je, že v tomto odečítači nemůžeme udělat výpůjční bit. Zatímco v jeho designu můžeme ve skutečnosti udělat Borrow bit v obvodu a můžeme odečíst se zbývajícími dvěma i / ps. Tady je A minuend, B subtrahend & Bin je vypůjčený. Výstupy jsou Difference (Diff) & Bout (Borrow out). Celý obvod odečítače lze získat pomocí dvou polovičních odečítačů s extra branou OR.

Blokové schéma úplného odečítače

Schéma zapojení celého odečítače s logickými hradly

The obvodové schéma plného odečítače pomocí základní brány s je znázorněno v následujícím blokovém schématu. Tento obvod lze provést dvěma obvody polovodiče.

V počátečním obvodu polovičního subtraktoru jsou binární vstupy A a B. Jak jsme již diskutovali v předchozím článku polovičního subtraktoru, vygeneruje dva výstupy, a to rozdíl (Diff) & Borrow.

Plný odečet pomocí logických bran

Plný odečet pomocí logických bran

Rozdíl o / p levého odečítače je dán obvodu levého polovičního odečítače. Difuzní výstup je dále poskytován na vstup obvodu pravé poloviny subtraktoru. Nabízeli jsme půjčku v bitech přes další i / p dalšího poloviční odčítací obvod . Ještě jednou to rozdá Diff a také si půjčí bit. Konečný výstup tohoto odečítače je Diff-output.

Na druhou stranu je výpůjčka obou polovičních obvodů subtraktoru připojena k logické bráně NEBO. Později než rozdáme logiku OR pro dva výstupní bity odečítače, získáme konečnou výpůjčku ze odečítače. Poslední výpůjčka k označení MSB (nejvýznamnější bit).

Pokud sledujeme vnitřní obvod tohoto, můžeme vidět dva poloviční subtraktory s bránou NAND a bránou XOR s bránou navíc OR.

Plná tabulka pravdy odečítání

Tento obvod odečítače provede odečtení mezi dvěma bity, které mají 3 vstupy (A, B a Bin) a dva výstupy (D a Bout). Zde vstupy označují minulost, subtrahend a předchozí výpůjčku, zatímco dva výstupy jsou označeny jako výpůjčka o / p a rozdíl. Následující obrázek ukazuje tabulku pravdivosti full-subtraktoru.

Vstupy

Výstupy

Minuend (A)

Subtrahend (B) Půjčit (Bin) Rozdíl (D)

Půjčit (záchvat)

0

000

0

0

0111
0101

1

0110

1

1

0010
1010

0

1

1000

1

111

1

K-mapa

Zjednodušení plný subtraktor K-mapa výše uvedený rozdíl a půjčka je uveden níže.

K- mapa pro rozdíl

Rovnice rozdílu i Bin jsou uvedeny níže.

K- Mapa zápasu

Výraz pro rozdíl je,

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

Výraz pro Půjčit je,

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

Kaskádování celého obvodu odečítače

Dříve jsme diskutovali o přehledu tohoto, jako je konstrukce, schéma zapojení s logickými branami. Pokud však chceme odečíst dvě jinak více 1bitová čísla, je tento odečítací obvod velmi užitečný pro kaskádu jednotlivých bitových čísel a také odečte více než dvě binární čísla. V takových případech se používá plný kaskádový obvod sčítače pomocí logické brány NOT. Konverzi obvodu z plného sčítače na plný odečítač lze provést technikou doplňku 2.

Obecně invertujte vstupy subtrahend pro celou sčítačku pomocí NOT brány, jinak invertoru. Přidáním tohoto Minuend (neinvertovaný vstup) & Subtrahend (Invertovaný vstup) je LSB (přenosový vstup) obvodu FA 1, což znamená Logic High, jinak odečteme dvě binární číslice pomocí techniky doplňku 2. Výstupem FA je bit Diff, a pokud provedeme invertování, můžeme získat MSB, jinak si vypůjčit bit. Ve skutečnosti můžeme obvod navrhnout tak, aby bylo možné pozorovat výstup.

Verilogský kód

U kódovací části nejprve musíme zkontrolovat strukturální způsob modelování schématu logického obvodu. Logický diagram tohoto lze sestavit pomocí brány AND, polovičních odečítacích obvodů a kombinace logických bran jako brány AND, OR, NOT, XOR. Stejně jako ve strukturálním modelování vysvětlujeme různé moduly pro každé základní elementární uspořádání. V následujícím kódu lze pro každou bránu definovat různé moduly.

Tento modul je pro bránu OR.

VSTUP: a0, b0

VÝSTUP: c0

Nakonec spojíme tyto přesné moduly brány do jediného modulu. K tomu zde využíváme instanci modulu. Nyní lze tuto instanci použít, když chceme replikovat přesný modul nebo funkci pro různé vstupní sady. Nejprve navrhneme poloviční odečítač, poté se tento modul použije k implementaci úplného odečítače. Pro implementaci tohoto používáme bránu OR ke kombinaci o / ps pro proměnnou Bout. The verilogový kód pro celý odečítač je zobrazen níže

modul or_gate (a0, b0, c0)

vstup a0, b0

výstup c0

přiřadit c0 = a0 | b0

endmodul

modul xor_gate (a1, b1, c1)

vstup a1, b1

výstup c1

přiřadit c1 = a1 ^ b1

endmodul

modul and_gate (a2, b2, c2)

vstup a2, b2

výstup c2

přiřadit c2 = a2 & b2

endmodul

modul not_gate (a3, b3)

vstup a3

výstup b3

přiřadit 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ápas

drát p, q, r

half_subtractor u4 (A, B, p, q)

half_subtractor u5 (p, Bin, D, r)

or_gate u6 (q, r, Bout)

endmodul

Full Subtractor using 4X1 Multiplexer

Provedení odčítání lze provést pomocí metody dvou doplňků. Proto požadujeme využití 1-XOR brány, která se používá k invertování 1-bitů a zahrnutí jednoho do bitového přenosu. Výstup DIFFERENCE je podobný výstupu SUM v obvodu plného sčítače, ale BARROW o / p není podobný plnému výkonu sčítače, je však invertován a doplněn, jako A - B = A + (-B) = A + two's doplněk B.

Návrh tohoto použití multiplexeru 4X1 je uveden v následujícím logickém schématu. Tento návrh lze provést pomocí následujících kroků.

Multiplexer 4X1

Multiplexer 4X1

  • V kroku 1 jsou dva výstupy jako Sub a Borrow. Musíme tedy vybrat 2 multiplexery.
  • V kroku 2 lze tabulku pravd implementovat spolu s K-mapami
  • V kroku 3 lze vybrat dvě proměnné jako řádek výběru. Například B & C jsou v tomto případě.

Tabulka pravdy

The pravdivostní tabulka plného odečítače obvod využívající multiplexer 4X1 zahrnuje následující

NA

B C Sub

Půjčit si

0

0000
0011

1

0101

1

0

1101
1001

0

1

0100
1100

0

1

111

1

Plný odečet pomocí dekodéru

Návrh úplného odečítače pomocí 3-8 dekodérů lze provést pomocí aktivních nízkých výstupů. Předpokládejme, že dekodér funguje pomocí následujícího logického diagramu. Dekodér obsahuje tři vstupy ve 3-8 dekodérech. Na základě tabulky pravdivosti můžeme psát mintermy pro výstupy rozdílu a půjčky.

Z výše uvedené tabulky pravdy

Pro různé funkce v tabulce pravdivosti lze mintermy zapsat jako 1,2,4,7 a podobně, pro výpůjčku, lze mintermy zapsat jako 1,2,3,7. Dekodéry 3-8 obsahují tři vstupy a 8 výstupů, například 7 až 7 čísel.

Dekodér 3 na 8

Dekodér 3 na 8

Pokud je vstup odečítače 000, bude aktivní výstup „0“ a pokud je vstup 001, bude aktivní i výstup „1“.

Nyní lze výstupy odečítače převzít z 1, 2, 4 a 7 a připojit jej k bráně NAND, pak bude rozdíl rozdílem. Tyto výstupy lze připojit k dalším logickým branám NAND, kde se výstup změní na výpůjčku.

Například pokud je vstup 001, pak bude výstup 1, což znamená, že je aktivní. Takže výstup je aktivní nízký a výstup lze získat z brány NAND nazývané rozdílová funkce jako vysoká a funkce výpůjčky se také změní na vysokou. Proto získáme preferovaný výstup. Takže nakonec dekodér funguje jako plný odečítač.

Výhody a nevýhody

The výhody odečítače zahrnout následující.

  • Návrh subtraktoru je velmi jednoduchý i implementovatelný
  • Odpočet výkonu v rámci DSP (digitální zpracování signálu)
  • Výpočtové úkoly lze provádět vysokou rychlostí.

The nevýhody odečítače zahrnout následující.

  • V polovičním odečítači není podmínka pro přijetí vstupu typu Půjčka z dřívější fáze.
  • Rychlost odečítače může být částečná prostřednictvím zpoždění v obvodu.

Aplikace

Některé z aplikace full-subtraktoru zahrnout následující

  • Obvykle se používají pro ALU (aritmetická logická jednotka) v počítačích k odečtení jako CPU a GPU pro aplikace grafiky ke snížení obtížnosti obvodu.
  • Odčítače se většinou používají k provádění aritmetických funkcí, jako je odčítání, v elektronických kalkulačkách i v digitálních zařízeních.
  • Platí také pro různé mikrokontroléry pro aritmetické odčítání, časovače a počítadlo programů (PC)
  • Odčítače se používají v procesorech k výpočtu tabulek, adres atd.
  • Je také užitečné pro systémy založené na DSP a sítích.
  • Používají se hlavně pro ALU v počítačích pro odečítání jako CPU a GPU pro grafické aplikace, aby se snížila složitost obvodu.
  • Používají se hlavně k provádění aritmetických funkcí, jako je odečítání v digitálních zařízeních, kalkulačkách atd.
  • Tyto odečítače jsou také vhodné pro různé mikrokontroléry pro časovače, PC (počítadlo programů) a aritmetické odčítání
  • Ty se používají pro procesory k výpočtu adres, tabulek atd.
  • Implementaci tohoto s logickými hradly, jako je NAND & NOR, lze provést s jakýmkoli úplným subtraktorovým logickým obvodem, protože obě brány NOR a NAND se nazývají univerzální brány.

Z výše uvedených informací lze při vyhodnocení sčítače, plného odečítače pomocí dvou polovičních odčítacích obvodů a jeho tabulkových tvarů zaznamenat, že Dout v úplném odečítači je přesně podobný Sout plného sčítače. Jedinou variantou je, že A (vstupní proměnná) je doplněna v úplném subtraktoru. Je tedy možné změnit obvod sčítačky na plný subtraktor pouhým doplněním i / p A před tím, než je dán logické brány ke generování posledního vypůjčeného bitového výstupu (Bout).

Použitím libovolného logického obvodu plného odečítače lze implementovat plný odečítač používající brány NAND a plný odečítač používající brány nor, protože brány NAND i NOR jsou považovány za univerzální brány. Zde je otázka, jaký je rozdíl mezi polovičním odečítačem a plným odečítačem?