Kas yra pusė atimties: grandinė naudojant loginius vartus

Išbandykite Mūsų Instrumentą, Kaip Pašalinti Problemas





Elektronikos srityje svarbiausia koncepcija, kuria dirba visi komponentai, yra „ Loginiai vartai “. Loginių vartų koncepcija įgyvendinama visose funkcijose, tokiose kaip integriniai grandynai, jutikliai, perjungimo, mikrovaldikliai ir procesoriai, šifravimo ir iššifravimo tikslai ir kt. Be to, yra daugybė „Logic Gates“ programų. Yra daugybė loginių vartų, tokių kaip „Adder“, „Subtractor“, „Full“ Papildytojas , Visas subtraktorius, pusiau subtraktorius ir daugelis kitų. Taigi, šiame straipsnyje pateikiama kolektyvinė informacija apie pusės atimties grandinė , pusės atimties tiesos lentelė ir susijusios sąvokos.

Kas yra pusė atimties?

Prieš eidami aptarti pusės atimties, turime žinoti dvejetainį atimimą. Dvejetainiu atimimu atimties procesas yra panašus į aritmetinį atimimą. Aritmetiniame atimime naudojama bazinė 2 skaičių sistema, o dvejetainėje atimant - dvejetainiai skaičiai. Gautus terminus galima pažymėti skirtumu ir skolintis.




Pusė atimties yra svarbiausia kombinacinės logikos grandinė kuri naudojama skaitmeninė elektronika . Iš esmės tai yra elektroninis prietaisas arba, kitaip tariant, galime jį pasakyti kaip loginę grandinę. Ši grandinė naudojama dviejų dvejetainių skaitmenų atimimui atlikti. Ankstesniame straipsnyje mes jau aptarėme pusės sumuotojo ir visos suminės grandinės sąvokos kuri skaičiavimui naudoja dvejetainius skaičius. Panašiai atimties grandinė atimant naudoja dvejetainius skaičius (0,1). Pusiau atimties grandinę galima sukurti dviem loginiai vartai, būtent NAND ir EX-OR vartai . Ši grandinė suteikia du elementus, tokius kaip skirtumas, taip pat jie skolinasi.

Kaip ir dvejetainio atimimo atveju, pagrindinis skaitmuo yra 1, mes galime generuoti skolinimąsi, kai subtrehend 1 yra pranašesnis už minuend 0 ir dėl to skolintis reikės. Šiame pavyzdyje pateikiamas dviejų dvejetainių bitų dvejetainis atimimas.



Pirmasis skaitmuo

Antrasis skaitmuo Skirtumas Pasiskolink

0

000

1

01

0

011

1

110

0

Atėmus minėtą skaičių, du skaitmenys gali būti pavaizduoti A ir B. Šiuos du skaitmenis galima atimti ir gautus bitus pateikti kaip skirtumą ir skolintis.

Kai stebime pirmąsias dvi ir ketvirtąsias eilutes, skirtumas tarp šių eilučių, tada skirtumas ir skolinimasis yra panašūs, nes subtrehendas yra mažesnis nei minuendas. Panašiai, kai stebime trečią eilutę, manoend reikšmė atimama iš subtreever. Taigi skirtumas ir skolinimosi bitai yra 1, nes subtraig skaitmuo yra pranašesnis už minuend skaitmenį.


Ši kombinuota grandinė yra būtina bet kokio tipo priemonė skaitmeninė grandinė žinoti galimus įvesties ir išvesties derinius. Pvz., Jei atimėjas turi du įėjimus, tada gaunami keturi. Pusės atimties koeficientas minimas žemiau esančioje lentelėje, kuris parodys skirtumo ir skolinimosi bitą. Grandinės tiesos lentelės paaiškinimas gali būti atliekamas naudojant loginius vartus, pvz., EX-OR loginius vartus ir AND vartų operaciją, o po to - NOT vartus.

Tiesos lentelės sprendimas naudojant K žemėlapis yra parodyta žemiau.

pusės atimties k žemėlapis

pusės atimties k žemėlapis

pusės atimties išraiška naudojant tiesos lentelę ir K žemėlapį galima gauti kaip

Skirtumas (D) = ( x’y + xy „)

= x ⊕ y
Pasiskolinkite (B) = x’y

Loginė grandinė

pusės atimties loginė grandinė galima paaiškinti naudojant loginius vartus:

  • 1 XOR vartai
  • 1 NE vartai
  • 1 IR vartai

Atstovavimas yra

Pusinė atimties loginė grandinė

Pusinė atimties loginė grandinė

Pusiau atimties blokinė schema

Pusės atimties blokinė schema parodyta aukščiau. Tam reikia dviejų įėjimų, taip pat du du išėjimai. Čia įvestys vaizduojamos su A & B, o išvestys yra skirtumas ir skolinimas.

Minėta grandinė gali būti suprojektuota su EX-OR & NAND vartais. Čia NAND vartai gali būti pastatyti naudojant AND ir NOT vartus. Taigi, norint sukurti pusę atimties grandinės, būtent EX-OR vartai, NE vartai ir NAND vartai, mums reikia trijų loginių vartų.

AND ir NOT vartų derinys sukuria skirtingus kombinuotus vartus, vadinamus NAND Gate. „Ex-OR“ vartų išvestis bus skirtumo bitas, o NAND vartų išvestis bus skolinimosi bitas tiems patiems įėjimams A&B.

AND-Gate

AND-gate yra vieno tipo skaitmeninės logikos vartai su keliais įėjimais ir vienu išėjimu ir, remdamiesi įvesties deriniais, atliks loginę jungtį. Kai visi šių vartų įėjimai yra dideli, tada išėjimas bus didelis, kitaip išėjimas bus mažas. Žemiau pateikiama „AND gate“ ir tiesos lentelės loginė schema.

IR Vartų ir tiesos lentelė

IR Vartų ir tiesos lentelė

NE vartai

„NOT-gate“ yra vieno tipo skaitmeninės logikos vartai su vienu įėjimu ir, atsižvelgiant į įvestį, išvestis bus pakeista. Pvz., Kai NOT vartų įvestis yra didelė, išvestis bus maža. NOT-gate loginė schema su tiesos lentele parodyta žemiau. Naudodami tokio tipo loginius vartus, galime vykdyti NAND ir NOR vartus.

NE Vartų ir tiesos lentelė

NE Vartų ir tiesos lentelė

Buvę ARBA vartai

„Exclusive-OR“ arba „EX-OR“ vartai yra vieno tipo skaitmeninės logikos vartai su 2 įėjimais ir vienu išėjimu. Šių loginių vartų veikimas priklauso nuo ARBA vartų. Jei kas nors iš šių vartų įėjimų yra didelis, tada EX-OR vartų išvestis bus didelė. Žemiau pateikiama EX-OR simbolių ir tiesų lentelė.

XOR vartų ir tiesos lentelė

XOR vartų ir tiesos lentelė

Pusė atimties grandinės naudojant „Nand Gate“

Suprojektuotoją gali suprojektuoti naudojant loginius vartus kaip NAND vartai ir Ex-OR vartai. Norėdami suprojektuoti šią pusės atimties grandinę, turime žinoti dvi sąvokas, būtent skirtumą ir skolintis.

Pusė atimties grandinės naudojant loginius vartus

Pusė atimties grandinės naudojant „Nand Gate“

Jei stebėsime atsargiai, yra gana aišku, kad šios grandinės atliekamų operacijų įvairovė yra tiksliai susijusi su EX-OR vartų operacija. Todėl mes galime tiesiog naudoti EX-OR vartus, kad galėtume pakeisti. Lygiai taip pat, paskolą, gautą iš pusės sumavimo grandinės, galima paprasčiausiai pasiekti naudojant tokius loginius vartus kaip AND-gate ir NOT-gate.

Ši HS taip pat gali būti suprojektuota naudojant NOR vartus, kur statybai reikalingi 5 NOR vartai. Grandinės schema pusė atimties, naudojant NOR vartus, rodoma taip:

Pusė subtraktoriaus, naudojančio „Nor Gates“

Pusė subtraktoriaus, naudojančio Nor Gates

Tiesos lentelė

Pirmasis bitas

Antrasis bitas Skirtumas

(EX-OR out)

Pasiskolink

(NAND Out)

0

000
101

0

0

11

1

110

0

VHDL ir „Testbench“ kodas

Pusės atimties VHDL kodas paaiškinamas taip:

biblioteka IEEE

naudoti IEEE.STD_LOGIC_1164. VISI

naudokite IEEE.STD_LOGIC_ARITH.ALL

naudokite IEEE.STD_LOGIC_UNSIGNED.ALL

yra subjektas „Half_Sub1“

Uostas (a: STD_LOGIC

b: STD_LOGIC

HS_Diff: iš STD_LOGIC

„HS_Borrow“: iš STD_LOGIC)

pabaiga Half_Sub1

architektūra „Half_Sub1“ elgsena yra

pradėti

HS_diff<=a xor b

HS_Siskolinti<=(not a) and b

HS bandymų stendo kodas yra paaiškinta taip:

BIBLIOTEKA IEEE

NAUDOTI ieee.std_logic_1164. VISI

ENTITY HS_tb IS

PABAIGA HS_tb

ARCHITEKTŪRA HS_tb IS HS_tb

KOMPONENTAS HS

Uostas (a: IN std_logic

b: IN std_logic

HS_Diff: OUT std_logic

HS_Borrow: OUT std_logic

)

PABAIGOS KOMPONENTAS

signalas a: std_logic: = ‘0’

signalas b: std_logic: = ‘0’

signalas HS_Diff: std_logic

signalas HS_Borrow: std_logic

PRADŽIA

nauja: HS PORT MAP (

a => a,

b => b,

HS_Diff => HS_Diff,

HS_ skolintis => HS_ skolintis

)

stim_proc: procesas

pradėti

į<= ‘0’

b<= ‘0’

palaukite 30 ns

į<= ‘0’

b<= ‘1’

palaukite 30 ns

į<= ‘1’

b<= ‘0’

palaukite 30 ns

į<= ‘1’

b<= ‘1’

laukti

pabaigos procesas

GALAS

Visas subtraktorius naudojant pusę subtraktoriaus

Pilnasis atimtis yra kombinuotas prietaisas, valdantis atimties funkcionalumą naudojant du bitus ir yra manoend ir subtrahend. Grandinė laiko paskolą ankstesniu išėjimu ir turi tris įėjimus su dviem išėjimais. Trys įėjimai yra manoendas, subtrahendas ir įvestis, gauta iš ankstesnio išėjimo, kuris yra skolinimasis, o du išėjimai yra skirtumas ir skolinimasis.

Pilna atimties loginė schema

Pilna atimties loginė schema

Tiesos lentelė visiškas atimėjas yra

Įvestys Rezultatai
X Y Yin FS_diff FS_Siskolinti
00000
00111
01011
01101
10010
10100
11000
11111

Naudojant aukščiau pateiktą tiesos lentelę, žemiau pateikiama loginės diagramos skelbimų grandinių schema, skirta įgyvendinti visišką atimėją, naudojant pusę atimties:

Visas subtraktorius, naudojant HS

Visas subtraktorius, naudojant HS

Pusiau subtraktoriaus pranašumai ir apribojimai

Pusės atimties privalumai yra šie:

  • Šios grandinės įgyvendinimas ir sukūrimas yra paprastas ir lengvas
  • Ši grandinė sunaudoja minimaliai energijos apdorodama skaitmeninius signalus
  • skaičiavimo funkcijas galima atlikti pagerėjus greičiui

Šios kombinuotos grandinės apribojimai yra:

Nors daugybėje operacijų ir funkcijų yra daugybė subtraktoriaus, yra keletas apribojimų:

  • Pusės atimties grandinės nepriims „skolinimosi“ iš ankstesnių išėjimų, kur tai yra esminis šios grandinės trūkumas
  • Kadangi daugelis programų realiuoju laiku veikia atimant daugybę bitų, pusiau atimties įtaisai neturi galimybės atimti daug bitų

Pusiau subtraktoriaus paraiškos

Pusės subtraktoriaus paraiškos yra šios.

  • Pusė atimties naudojama garso ar radijo signalų jėgai sumažinti
  • Gali būti naudojamas stiprintuvuose siekiant sumažinti garso iškraipymą
  • Pusė atimties yra naudojamas procesoriaus ALU
  • Ją galima naudoti norint padidinti ir sumažinti operatorių skaičių, taip pat apskaičiuoti adresus
  • Pusė atimties naudojama atimant mažiausiai reikšmingus stulpelių skaičius. Daugiaženkliams skaičiams atimti, jis gali būti naudojamas LSB.

Todėl pagal aukščiau pateiktą pusės atimties teoriją galiausiai galime uždaryti, kad naudodami šią grandinę galime atimti iš vieno dvejetainio bito iš kito, kad gautume tokius išėjimus kaip „Difference“ ir „Borrow“. Panašiai galime suprojektuoti pusę atimties naudodami NAND vartų grandinę, taip pat NOR vartus. Kitos žinomos sąvokos yra pusės atimties verilogo kodas ir kaip galima nupiešti RTL schemą?