Kas ir pilnīgs atņemējs: būvniecība, izmantojot loģiskos vārtus

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Parasti pilnais atņemējs ir viens no visbiežāk izmantotajiem un būtiskas kombinācijas loģikas shēmas . Tā ir pamata elektroniska ierīce, ko izmanto divu bināro skaitļu atņemšanai. Iepriekšējā rakstā mēs jau esam devuši pamata teoriju puse papildinātāja un pilna summa kas aprēķinam izmanto bināros ciparus. Tāpat arī pilnais atņemējs atņemšanai izmanto bināros ciparus, piemēram, 0,1. To ķēdi var izveidot ar loģiskiem vārtiem, piemēram, OR, Ex-OR, NAND vārtiem. Šī atņemēja ieejas ir A, B, Bin un izejas ir D, Bout.

Šis raksts sniedz pilnīgas atņemšanas teorijas ideju, kurā ietvertas tādas telpas kā atņemējs, dizains ar loģiskiem vārtiem, patiesības tabula utt. Šis raksts ir noderīgs inženierzinātņu studentiem, kuri var iziet šīs tēmas ABL praktiskajā laboratorijā.




Kas ir atņemējs?

Bināro ciparu atņemšanu var veikt ar atņemšanas ķēdes palīdzību. Šī ir viena veida kombinācijas loģikas shēma, ko izmanto, lai veiktu divu bināro ciparu, piemēram, 0s un 1s, atņemšanu. Bināro ciparu atņemšana no 0 līdz 0 vai 0 līdz 1 rezultātu nemaina, no 1 līdz 1 atņemot rezultātu 0, bet no 1 līdz 0 atņemot ir nepieciešams aizņemties.

Piemēram, divu bitu atņemšanas ķēdē ietilpst divas ieejas, piemēram, A un B, savukārt izejas ir atšķirīgas un aizņemas. Šo ķēdi var uzbūvēt ar papildinātājiem, kā arī invertoriem, kas atrodas starp katru datu ievadi, kā arī aizņem iepriekšējās FA fāzes (Bin) ievadi.



Atskaitītājus klasificē divos veidos, piemēram, puse atskaitītājs un pilns atņemējs. Šeit mēs apspriežam pilno atņemēju.

Kas ir pilnīgs atņemējs?

Tā ir elektroniska ierīce vai loģiskā shēma kas veic divu bināro ciparu atņemšanu. Tā ir kombinēta loģiskā shēma, ko izmanto digitālajā elektronikā. Valodā ir pieejamas daudzas kombinētās shēmas integrētās shēmas tehnoloģija Proti, pievienotāji, kodētāji, dekodētāji un multiplekseri. Šajā rakstā mēs apspriedīsim tā konstrukciju, izmantojot pusi atņemšanas, kā arī tādus terminus kā patiesības tabula.


Pilnīgs atņemējs

Pilnīgs atņemējs

To var noformēt divi pusatdalītāji, kas ietver trīs ievades, piemēram, minuend, subtrahend un aizņemties, aizņemties bitu starp ieejām iegūst, atņemot divus bināros ciparus un atņemot no nākamā augstākas kārtas pāra biti, rezultāti kā starpība un aizņemties.

The pilna atņemšanas bloka diagramma ir parādīts zemāk. Puses atņemšanas mehānisma galvenais trūkums ir tas, ka mēs nevaram izveidot Borrow bitu šajā atņemšanā. Tā kā tā konstrukcijā faktiski mēs varam izveidot aizņemšanās bitu ķēdē un atņemt ar atlikušajiem diviem i / ps. Šeit A ir minuend, B ir subtrahend un Bin aizņemas. Rezultāti ir Difference (Diff) un Bout (Borrow out). Pilnīgu atņemšanas ķēdi var iegūt, izmantojot divus pusatdalītājus ar papildu VAI vārtiem.

Pilna atņemšanas bloka diagramma

Pilna atņemšanas shēmas shēma ar loģiskiem vārtiem

The ķēdes shēma pilnam atņemējam, izmantojot pamata vārtus s ir parādīts nākamajā blokshēmā. Šo ķēdi var veikt ar divām pus-atņemšanas ķēdēm.

Sākotnējā pus-atņemšanas ķēdē binārās ieejas ir A un B. Kā mēs esam apsprieduši iepriekšējā pus-atņemšanas rakstā, tas ģenerēs divus izvadus, proti, starpību (Diff) un Borrow.

Pilnīgs atņemējs, izmantojot loģiskos vārtus

Pilnīgs atņemējs, izmantojot loģiskos vārtus

Kreisā atņemēja o / p starpība tiek dota kreisās puses atņemšanas ķēdei. Atšķirīgā izeja tiek nodrošināta labās puses atņemšanas ķēdes ieejai. Mēs piedāvājām aizņemties mazliet citā nākamā i / p puse atņemšanas ķēde . Vēlreiz tas dos Diff, kā arī aizņemties mazliet. Šī atņemēja galīgā produkcija ir diferenciālā izeja.

No otras puses, aizņēmums no abām pusēm atņemšanas ķēdēm ir savienots ar OR loģiskajiem vārtiem. Vēlāk, nekā izsniedzot VAI loģiku diviem atņemšanas avota bitiem, mēs iegūstam galīgo aizņēmumu no atņemēja. Pēdējais aizņemies, lai apzīmētu MSB (vissvarīgākais bits).

Ja mēs novērojam tā iekšējo ķēdi, mēs varam redzēt divus Pusi atņemtājus ar NAND vārtiem un XOR vārtiem ar papildu VAI vārtiem.

Pilna atņemšanas patiesības tabula

Šis atņemšanas ķēde izpilda atņemšanu starp diviem bitiem, kuriem ir 3 ieejas (A, B un Bin) un divas izejas (D un Bout). Šeit ieejas norāda minuend, subtrahend un iepriekšējo aizņēmumu, turpretim abas izejas tiek apzīmētas kā aizņēmums o / p un starpība. Nākamajā attēlā parādīta pilnā atņemtāja patiesības tabula.

Ieejas

Rezultāti

Minuend (A)

Subtrahend (B) Aizņemties (Bin) Atšķirība (D)

Aizņemties (cīņa)

0

000

0

0

0111
0101

1

0110

1

1

0010
1010

0

1

1000

1

111

1

K-karte

Programmas vienkāršošana pilna atņemšanas K-karte par iepriekš minēto starpību un aizņemties ir parādīts zemāk.

K- atšķirību karte

Zemāk ir minēti atšķirības vienādojumi, kā arī Bin.

K- Bout karte

Starpības izteiksme ir

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

Aizņēmuma izteiksme ir

Bout = A’Bin + A’B + BBin

Pilnas atņemšanas ķēdes kaskāde

Iepriekš mēs esam apsprieduši pārskatu par šo, piemēram, konstrukciju, shēmu ar loģiskiem vārtiem. Bet, ja mēs vēlamies atņemt divus citādi vairāk 1 bitu skaitļus, šī atņemšanas shēma ir ļoti noderīga, lai kaskādētu viena bita numurus, un atņem arī vairāk nekā divus bināros skaitļus. Šādos gadījumos ar NOT loģisko vārtu palīdzību tiek izmantota pilna papildinātāja kaskādes shēma. Kontūras pārveidošanu no pilnas summas par pilnīgu atņemšanu var veikt, izmantojot 2 papildinājuma tehniku.

Parasti apgrieziet subtrahend ieejas pilnam papildinātājam, izmantojot NOT gate, citādi invertoru. Pievienojot šo Minuend (neinvertētā ievade) un Subtrahend (apgrieztā ievade), FA ķēdes LSB (pārnēsāšanas ievade) ir 1, kas nozīmē Logic High, pretējā gadījumā mēs atņemam divus bināros ciparus, izmantojot 2 papildinājuma tehniku. FA izeja ir Diff bits, un, ja mēs apgriežam izpildi, mēs varam iegūt MSB citādi Borrow bit. Patiesībā mēs varam izveidot ķēdi tā, lai varētu novērot izvadi.

Verilog kods

Attiecībā uz kodēšanas daļu vispirms mums jāpārbauda loģiskās shēmas shēmas modelēšanas strukturālais veids. To loģisko diagrammu var izveidot, izmantojot AND vārtu, pusi atņemšanas shēmas un loģisko vārtu kombināciju, piemēram, AND, OR, NOT, XOR vārti. Tāpat kā strukturālajā modelēšanā, mēs izskaidrojam dažādus moduļus katram pamatelementam. Šajā kodā katram vārtiem var definēt dažādus moduļus.

Šis modulis ir paredzēts vārtiem OR.

IEVADE: a0, b0

IZVADE: c0

Visbeidzot, mēs apvienosim šos vārtu precīzos moduļus vienīgajā modulī. Tam šeit mēs izmantojam moduļa instantāciju. Tagad šo instantāciju var izmantot, kad mēs vēlamies atkārtot precīzu moduli vai funkciju dažādām ievades kopām. Pirmkārt, mēs projektējam pusi atņemšanas, pēc tam šo moduli izmanto, lai īstenotu pilnīgu atņemšanu. Lai to īstenotu, mēs izmantojam OR vārtus, lai apvienotu Bout mainīgā lieluma o / ps. The veriloga kods pilnam atņemējam ir parādīts zemāk

modulis or_gate (a0, b0, c0)

ieeja a0, b0

izeja c0

piešķirt c0 = a0 | b0

endmodulis

modulis xor_gate (a1, b1, c1)

ieeja a1, b1

izeja c1

piešķirt c1 = a1 ^ b1

endmodulis

modulis and_gate (a2, b2, c2)

ieeja a2, b2

izeja c2

piešķirt c2 = a2 & b2

endmodulis

modulis not_gate (a3, b3)

ievade a3

izeja b3

piešķirt b3 = ~ a3

endmodulis

modulis half_subtractor (a4, b4, c4, d4)

ievade a4, b4

izeja c4, d4

vads x

xor_gate u1 (a4, b4, c4)

and_gate u2 (x, b4, d4)

not_gate u3 (a4, x)

endmodulis

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

ieeja A, B, Bin

izeja D, Bout

vads p, q, r

puse_subaktors u4 (A, B, p, q)

puse_subaktors u5 (p, tvertne, D, r)

or_gate u6 (q, r, Bout)

endmodulis

Pilnīgs atņemējs, izmantojot 4X1 multipleksoru

Atskaitīšanu var veikt, izmantojot divu papildināšanas metodi. Tādējādi mums ir jāizmanto 1-XOR vārti, kurus izmanto, lai apgrieztu 1 bitu un iekļautu tos pārneses bitā. DIFFERENCE izeja ir līdzīga izejas SUM pilnā papildinātāja ķēdē, taču BARROW o / p nav līdzīga pilnas papildinātāja pārneses izejai, tomēr tā ir apgriezta, kā arī komplimentēta, piemēram, A - B = A + (-B) = A + divu B papildinājums

Šī, izmantojot 4X1 multipleksoru, dizains ir parādīts šajā loģiskajā diagrammā. Šo dizainu var izdarīt, veicot šādas darbības.

4X1 multipleksers

4X1 multipleksers

  • 1. solī ir divi rezultāti, piemēram, Sub un Borrow. Tāpēc mums jāizvēlas 2 multiplekseri.
  • 2. solī patiesības tabulu var ieviest kopā ar K kartēm
  • 3. solī divus mainīgos var atlasīt kā atlasīto līniju. Piemēram, šajā gadījumā ir B & C.

Patiesības tabula

The pilnā atņemtāja patiesības tabula ķēde, izmantojot 4X1 multipleksoru, ietver sekojošo

TO

B C Apakšgrupa

Aizņemties

0

0000
0011

1

0101

1

0

1101
1001

0

1

0100
1100

0

1

111

1

Pilnīgs atņemējs, izmantojot dekodētāju

Pilnīga atņemtāja projektēšanu, izmantojot 3-8 dekoderus, var veikt, izmantojot aktīvās zemās izejas. Pieņemsim, ka dekodētājs darbojas, izmantojot šo loģisko diagrammu. Dekoderā ir trīs ieejas 3-8 dekoderos. Pamatojoties uz patiesības tabulu, mēs varam uzrakstīt minterms atšķirību un aizņemšanās iznākumiem.

No iepriekš minētās patiesības tabulas

Dažādām patiesības tabulas funkcijām mintermus var uzrakstīt kā 1,2,4,7, un līdzīgi aizņēmumam mintermus var rakstīt kā 1,2,3,7. 3-8 dekoderos ir trīs ieejas, kā arī 8 izejas, piemēram, līdz 7 skaitļiem.

3 līdz 8 dekoders

3 līdz 8 dekoders

Ja atņemēja ieeja ir 000, tad izeja ‘0’ būs aktīva un ja ieeja ir 001, tad izeja ‘1’ būs aktīva.

Tagad atņemšanas izejas var ņemt no 1, 2, 4 un 7, lai to savienotu ar NAND vārtiem, tad izeja būs atšķirība. Šīs izejas var savienot ar citiem NAND loģiskajiem vārtiem, kur izeja mainās uz aizņēmumu.

Piemēram, ja ieeja ir 001, tad izeja būs 1, kas nozīmē, ka tā ir aktīva. Tātad izeja ir aktīvi zema, un izeju var iegūt no NAND vārtiem, ko sauc par atšķirības funkciju, piemēram, augsts, un aizņemšanās funkcija arī mainās kā augsta. Tāpēc mēs iegūstam vēlamo produkciju. Tātad visbeidzot, dekodētājs darbojas kā pilnīgs atņemējs.

Priekšrocības un trūkumi

The atskaitītāja priekšrocības iekļaujiet sekojošo.

  • Atskaitītāja projektēšana ir ļoti vienkārša, kā arī ieviešana
  • Jaudas atskaitīšana DSP ietvaros (ciparu signālu apstrāde)
  • Skaitļošanas uzdevumus var veikt lielā ātrumā.

The atņemēja trūkumi iekļaujiet sekojošo.

  • Pusi atņemotājā nav nosacījuma pieņemt Aizņēmumam līdzīgu ievadi no iepriekšējā posma.
  • Atskaitītāja ātrums var būt daļējs, izmantojot ķēdes kavēšanos.

Pieteikumi

Daži no pilna atskaitītāja pieteikumi iekļaujiet sekojošo

  • Tos parasti izmanto ALU (aritmētiskās loģikas vienībai) datoros, lai grafikas lietojumprogrammās atņemtu kā CPU un GPU, lai samazinātu ķēdes grūtības.
  • Atskaitītājus galvenokārt izmanto aritmētisko funkciju, piemēram, atņemšanas, veikšanai elektroniskajos kalkulatoros, kā arī digitālajās ierīcēs.
  • Tie ir piemērojami arī dažādi mikrokontrolleri aritmētiskai atņemšanai, taimeri un programmu skaitītājs (PC)
  • Atņemēji tiek izmantoti procesoros, lai aprēķinātu tabulas, adreses utt.
  • Tas ir noderīgs arī DSP un uz tīkliem balstītām sistēmām.
  • Tos galvenokārt izmanto ALU datoros, lai atņemtu grafikas lietojumprogrammām, piemēram, CPU un GPU, lai samazinātu ķēdes sarežģītību.
  • Tos galvenokārt izmanto, lai veiktu tādas aritmētiskas funkcijas kā atņemšana digitālajās ierīcēs, kalkulatoros utt.
  • Šie atņemēji ir piemēroti arī dažādiem mikrokontrolleriem taimeri, datoru (programmu skaitītājs) un aritmētiskā atņemšana
  • Tos izmanto procesoriem, lai aprēķinātu adreses, tabulas utt.
  • To var realizēt ar tādiem loģiskiem vārtiem kā NAND & NOR ar jebkuru pilnīgu atņemšanas loģikas shēmu, jo abus NOR & NAND vārtus sauc par universālajiem vārtiem.

No iepriekš minētās informācijas, novērtējot saskaitītāju, pilno atņemšanas koeficientu, izmantojot divas atņemšanas ķēdes ar pusi, un tā tabulas formas, var pamanīt, ka pilnā atņemtā Dout ir precīzi līdzīgs pilnā saskaitītāja Soutam. Vienīgā variācija ir tā, ka A (ievades mainīgais) tiek atņemts pilnā atņemšanā. Tādējādi ir iespējams mainīt pilnas summas ķēdi par pilnu atņemšanu, vienkārši papildinot i / p A, pirms tā tiek dota loģikas vārti lai ģenerētu pēdējo aizņēmuma bitu izvadi (Bout).

Izmantojot jebkuru pilnīgu atņemšanas loģikas ķēdi, var ieviest pilnu atņemšanu, izmantojot NAND vārtus, un pilnīgu atņemšanu, izmantojot ne vārtus, jo gan NAND, gan NOR vārti tiek uzskatīti par universāliem vārtiem. Šeit ir jautājums jums, kāda ir atšķirība starp pusi un pilnīgu atņemšanu?