- •1. Numbriliste (digitaalsete) seadmete kirjeldus.
- •1.2. Aluse q suuruse valik.
- •1.4. Loogika algebra funktsioonide kirjeldamine.
- •1.4.1. Üldist.
- •1.4.2. Lf suusõnaline kirjeldus.
- •1.4.3. Lf kirjeldus tõesuse tabeli abil.
- •1.4.6. Kuubi kompleksid.
- •2. Loogika seadmete minimeerimine.
- •2. 1. Lf minimeerimine Veitch`I diagrammide ja Karnaugh kaartide alusel.
- •3. Kombinatsioon – loogikaseadmed (kls).
- •3.1. Loogikaseadmete süntees etteantud baasi alusel.
- •3.3. Kombinatsioonloogika tüüplülitused.
- •3.3.1. Multipleksor (mux, ms).
- •3.3.3.2. Dekooder (dešifraator) dc.
- •6. Pooljuhtmäluseadmed .
- •6.1. Üldist, põhiparameetrid, liigitus.
- •6.5. Mäluseadme mahu suurendamine.
3.3. Kombinatsioonloogika tüüplülitused.
3.3.1. Multipleksor (mux, ms).
Multipleksor ühendab ühe oma m-sisenditest väjundiga. M – tavaliselt 2 täisaste. Ühendatava sisendi number valitakse nn aadressiga.
n – järguline aadressi kood → 2n tähendusi → infosisendite arv
m = 2n.
MS millel n = 2:
E – multipleksori tööd lubav signaal.
Kui E = 1- aktiivne loogikaline signaal, siis multipleksori väljund on konstantne, ja ei sõltu sisendsignaalidest.
LF, mis kirjeldab antava MS`i funktsioneerimist:
Sellele
LF-le vastab järgmine loogikaskeem:
Mikroskeem SN74LS151- klassikaline MS, millel n = 3. Tema eelkäija – SN74152 – harilik TTL, kõik sama, ainult puudub
E – sisend. Konkreetsel MS mikroskeemil sisendite arv on piiratud. Kui neid on rohkem vaja, siis tuleb ehitada nn MS –puu.
Näide |
Oleks vaja 16 sisendiga MS, aga kasutada on ainult 4 sisendiga skeemid.
3.3.2. Demultipleksor (DEMUX, DMS).
DMS`i ainus sisend ühendatakse ühele n – välunditest, mille number valitakse aadressi koodi abil.
Tabelile vastab LF:
K.T.Nr.5 |
3.3.3. Koodimuundurid.
Koodimuundur – see on KLS, mis on ettenähtud informatsiooni kodeerimisviisi muundamiseks
Sisendite peale tuleb üks kahendarv, väljunditest saame teise kahendarvu.
3.3.3.1. Kooder (šifraator) CD.
Tavaliselt on see seade, mis realiseerib „detsimal → BCD“ (binary cooded decimal).
Võib anda ette tabelina:
Juhul, kui m < 2n = 16, siis on mittetäielik kooder.
Q3 = X8 + X9
Q2 = X4 + X5 + X6 + X7
Q1 = X2 + X3 + X6 + X7
Q0 = X1 + X3 + X5 + X7 + X9
Antaval kooderil X0 signaali otseselt ei kasutata.
3.3.3.2. Dekooder (dešifraator) dc.
Dekooderil on n aadressi sisendid ja m väljundid. Kui m = 2n siis on täielik DC, kui m < 2n siis on mittetäielik DC. Väljund signaal ilmub ainult sellel väljundil, mille järjekorranumber on esitatud sisendile antud kahendarvuga.
Võib esitada tabeli abil, mis on analoogne kooderi tabelile, kus sisend- ja väljundsignaalid on vahetatud kohtadega.
Vastavalt tabelile, kuna väljundsignaal on võrdne 1 ainulise sisendvahelduvate kombinatsioonile, DC tööalgoritmi võib kirjeldada järgmise võrrandite süsteemiga:
jne, kus Qi – loogikavahelduva tähendus seadme i – sisendis.
Üldjuhul see süsteem näeb välja nii:
kus Xi
– signaal DC i – väljundil,
- 1 – konstituent, mis vastab i – kümmendarvu kahendkoodile.
LF dešifraatoril ja demultipleksoril peaaegu ühesugused (D – puudub). Juhul, kui D = 1, demultipleksor funktsioneerib nagu dešifraator. Kasutades dešifraatorit, võib ehitada DMS ja MS.
DC projekteerimisel põhieesmärk on skeemiline lihtsus. Aga skeemi lihtsustamine toimub kiiretoimelisuse arvel.
Püramidaalne struktuur.
Idee: selleks, et saada (n + 1) DC, tuleb kaks korda läbimängida kõik n – koodi kombinatsioonid koos (n + 1) järgu tähendusega
(0, 1).
Selline struktuur on lihtsam, kui üheastmeline. Tinglikute ühikute arv n – järgulse DC realisatsiooniks:
Edasi saab lihtsustada mitmeastmeliste struktuuride kasutamise puhul. Ehitamise idee on püramidaalse DC sarnane. Erinevus: n – järgulise koodi kombinatsioonid tuleb korrata mitte ühe järgu jaoks, vaid teise n – järgulise koodi jaoks.
Aparatuursed kulutused:
Näide |
20 – järgulise koodi DC (PROM 1 Mbait)
1) Paralleelne DC → 2,097∙107 ting. apar. ühikuid.
2) Ühekordne püramidaalne DC → 1,2∙107 t.a.ü.
3) Mitmeastmeline DC → 2,118∙106 t.a.ü.
DC mikroskeemid on tihti varustatud strobeerimissisendiga E. Sel juhul on lihtne ehitada nn DC – puu (sama struktuur, nagu DMS puu).
Tihti on kasutuses mittetäielikud DC, mis muundavad kahendkoodi kümnendkoodiks. Kasutades neid võib ehitada täieliku binaarse DC.
NB! DC lihtsustamine – see on alati kiiretoimelisuse langus!
3.3.4. Digitaalsed komparaatorid.
Digitaalne komparaator on kombinatsioon-loogikaseade kahe kahendarvu võrdlemiseks. Komparaatori sisendite arv sõltub koodide järkude arvust. Komparaatori väljundites formeeritakse kolm signaali:
F= - koodide võrdsus.
F> - juhul, kui esimese koodi numbriline ekvivalent on teisest suurem.
F< - juhul, kui esimese koodi numbriline ekvivalent on teisest väiksem.
NB! Komparaatori väljundis võib olla üks ainuke väljundsignaal!
Tõeväärsuse tabel kahe ühejärguliste koodide võrdlemiseks:
Järeldus: Piisab sellest, kui annab formeerida kaks väljundsignaa-
le; kolmandat juba saab nende alusel. LF, mis vastab tabelile:
(*)
On näha, et kulutuste vähendamiseks on vaja saada F< ja F> , aga F= otsida nende baasil. (*) omab suurt iseseisvat tähendust: see on „välistav VÕI“ (exclusive OR → XOR). Tema skeemiline lahendus:
Tabelile ja loogikafunktsioonile vastav komparaatori skeem:
Sünteesida n – koodile komparaator otse tabeli alusel on väga keeruline. Kasutada tuleb dekompositsiooni printsiipi.
Näide |
2 – järguline komparaator:
3 – järguliste koodide puhul:
Üldjuhul n – järguliste kahendkoodide puhul:
3.3.5. Keerukad KLS mikroskeemid.
Tihti kasutakse operatsioone NING – VÕI – EI erinevate signaalide arvuga. Mõned nendest saab teostada toodetavate mikroskeemide abil.
(2-2-3-4NING-4VÕI-EI) – tüüpi loogikamikroskeem. (555ЛР9).
(2-2-2-2NING-4VÕI-EI) → SN7453 (155ЛР3).
4. Jadaloogika lülitused (järjestikused loogikaseadmed)
4.1. Trigerseadmete liigitus.
Jadaloogika lülituse (trigerseadme) üldine struktuurskeem:
Elementaarne triger koosneb ainult mäluelemendist. Võib realiseerida võimendi alusel, mis on haaratud sügava positiivse tagasisidega.
Näide |
OV + PTS
Kui
sisendil on pinge:
,
siis väljundsignaal on muutmatu ja on määratud ainult
sisendsignaali eelmise tähendusega, mis allub tingimusele:
Trigerit võib ehitada NING-EI; VÕI-EI elementide alusel. Igaüks nendest on inverteeriv võimendi. Kuna me vajame PTS, siis on vaja kaks elementi.
Tähtis: kui Y0 = 1 siis Y1 = 0 ja vastavalt kui Y0 = 0 siis Y1 = 1
Kui Q = 1 → triger on “seatud” (set)
Q = 0 → triger on “tagastatud” (reset)
Liigitus infosisendite järgi:
R – eraldi tagastamise sisend (Q = 0)
S – eraldi seadmise sisend (Q = 1)
K – universaalse trigeri tagastamise sisend (Q = 0)
J – universaalse trigeri seadmise sisend (Q = 1)
T – loendussisend
D – trigeri ümberlülitamise infosisend. Trigeri ümberlülitamine toimub olekusse, mis vastab loogikalisele nivoole sellel samal sis.
C – juhtimise või sünkroniseerimise sisend.
Mõnikord trigerid on varustatud V – sisendiga, mis blokeerib nende tööd. Sissekirjutatud info aga säilub.
Lähtudes kasutatud sisendite tüüpidest võivad olla:
RS -, D -, T -, VD -, VT -, JK – trigerid.
Sõltuvalt sellest, missugune on trigeri reageerimismoment sisendsignaalile, olemas asünkroonsed ja sünkroonsed trigerid.
Asünkroonne triger muudab oma olekut otsekohe sisendsignaali muutmise momendil.
Sünkroonne triger muudab oma olekut ainult rangelt määratud (takteeritud) ajamomendil, mis vastab aktiivse signaali ilmumisele tema C – sisendil. Ei reageeri infosignaalile, kui C – sisendil on passiivne signaal.
Liigitus aktiivse loogikalise signaali (ALS) kuju järgi:
Staatilised trigerid → juhtimine toimub ALS nivooga.
Dünaamilised trigerid → juhtimine toimub ALS esi- või tagafrondiga (küljega).
Definitsioon: “Sünkroonne RS – triger inverssete staatiliste sisenditega”:
- omab kolme sisendit: → seadmise sisend S,
→ tagastamise sisend R,
→ sünkrosisend C.
Trigeri ümberlülitus toimub ajamomentidel, mis on määratud ALS ilmumisega sünkrosisendil (C =0);
Trigeri ümberlülitumiseks tuleb anda infosisendile madal loogika nivoo (loogika 0), (R = 0 või S = 0). Sellised sisendid tähistakse vastavalt
Trigeri töö kirjeldamiseks kasutakse:
Suusõnaline kirjeldus;
Tõeväärsuse tabel;
Loogikafunktsioonid.
Uus: lisa sisendvahelduv → Qn – väljundsignaali eelmine tähendus. Trigeri töö kirjeldamiseks kasutakse enamasti üleminekute tabelit. Üleminekute tabel määrab, missugused loogikalised signaalid tuleb anda trigeri infosisenditele, selleks, et toimuks üleminek olekust Qn olekusse Qn+1.
4.2. Üheastmelised trigerid
Asünkroonne RS – triger → omab ainult kaks infosisendit: R- tagastamine, S- seadmine.
Triger NING-EI loogikaelementide alusel → inversed sisendid
Triger VÕI-EI loogikaelementide alusel → otse sisendid R, S.
Üleminekute tabelid (*) :
Trigerite skeemilised tähistused:
Sisendid on staatilised!
Tähtis! → Oletame, et trigerile NING-EI LE baasil on antud
R = S = 0.
Peaks olema
!
See
on aga trigeri põhimõttega vastuolus. Trigeri olek ei
ole prognoseeritav!
Järeldus: → Kui trigerit kasutakse mäluelemendina, siis üheaegne ALS andmine mõlemale infosisendile on keelatud, kuigi tehnilisest küljest see fakt on täiesti võimalik.
Selleks, et saada trigeri (näiteks VÕI-EI elementide alusel) töö matemaatiline kirjeldus, koostame tema Veitchi kaardi. Kasutame selleks üleminekute tabelit (*).
→ Seal, kuhu juhib koht märgiga ~ , täidame 2 ruutu korraga.
Vastavalt trigeri sisendite definitsioonile (mis oli antud varem) otsesisenditega trigeri jaoks:
S = 1 → Qn+1 = 1; analoogselt: R = 1 → Qn+1 = 0
Juhul, kui sisenditele on antud passiivsed loogikanivood:
→ Qn+1
= Qn
→ trigeri olek ei muutu.
Andes mõlemale sisendile ALS R = S = 1 väljundsignaali Qn+1 peab olema üheaegselt 0 ja 1! → Täidame siis need kaks ruutu nõndaviisi; 10
← tõlgendame neid nagu 1!
Minimeerimiseks eraldame kontuurid (punane, roheline).
Minimeerimise
tulemus:
(***)
K.T.Nr.6 |
Matemaatiline kirjeldus RS – trigerile NING-EI baasil.
Sünkroonne RS – triger → RS(t).
Sellist trigerit võib teha asünkroonse RS - trigeri alusel, kui teda täiendada loogika lisaskeemiga. Lisaskeem peab formeerima trigeri sisenditel ALS-id ainult lisa sünkroniseerimise signaali (C) ilmumisega.
Oletame, et C on otsesisend; R,S, on ka otsesed.
Selleks, et teha minimeerimist Svälj ja Rvälj jaoks, tabeli alusel täidame Veitch`i kaardid:
Svälj = CS
Rvälj = CR
Saadud Svälj ja Rvälj tähendused kasutame (***) lahendamiseks:
Lõplikult:
(****)
Esimene komponent selles võrrandis on passiivse loogikanivoo (PLN) ja trigeri eelmise oleku korrutis.
Teine komponent on aktiivse loogokanivoo (ALN) ja LF (mis kirjeldab asünkroonse trigeri tööd)m korrutis.
Trigeri struktuurid, mis vastavad (****):
Sünkroonsed RS – trigerid võivad olla täiendatud asünkroonsetega lisaseadmise sisenditega.
Juhul, kui C = 1, sünkroonne RS – triger muutub asünkroonseks RS – trigeriks.
D – triger (delay); viitetriger.
Trigeril on ainult üks infosisend. See on sisend D, tema peale tulev info kirjutakse ümber väljundisse ainult sünkrosignaali puhul.
Järeldus: D – triger võib olla ainult sünkroonne.
Üleminekute tabel:
D – trigerit tuleb ehitada RS – trigeri alusel. Kasutame antud tabelit. Signaalid R,S sisenditel on seotud D – sisendiga järgmiselt:
;
Kasutame sünkroonse RS – trigeri LF:
;
Või nii:
(*)
Struktuurskeem, mis vastab sellele võrrandile:
Kui skeemile on lisatud blokeerimissisend V, mis funktsioneerib analoogselt C – sisendile, siis meil on olemas VD – triger.
V = 1 → (*) ; V = 0 → Qn+1 = Qn
Kui on rakendatud V – sisend ja asünkroonsed seadmise sisendid
D – trigeri ajadiagrammid:
4.3. Kaheastmelised trigerid.
T – triger → loendustriger (toggle)
Triger peab vahetama oma olekut vastupidise peale iga kord, kui ilmub aktiivne loogikasignaal T – sisendile.
Seda on kerge näha üleminekute tabeli abil:
Tabeli alusel:
← See on
asünkroonse T – trigeri kirjeldus. Sünkroonse T – trigeri
jaoks:
Selleks, et seda realiseerida, tuleb RS(t) – trigeris rakendada lisatagasisidet.
Kindlalt tööle ei hakka!
Triger ei või üheaegselt mängida infoallika ja infovastuvõtja rolli! Uue info vastuvõtt on vana info kaotamine. Ideaalsete elementide kiiretoimelisuse puhul struktuur ei ole töövõimeline. Reaalse kiiretoimelisuse puhul ja kunstlikult sisseehitatud aja viitega ∆t ikka midagi head oodata ei ole!
Situatsioon: R,S signaalide muutuse momendiks signaal T pole veel maha võetud → toimub trigeri järgmine ümberlülitus. Seade hakkab võnkuma.
Vasturohi: Tuleb kasutada lisa mäluelementi, uute R,S signaalide tähenduste säilitamiseks. Need uued tähendused tuleb anda põhimäluelemendi sisenditele ainult siis, kui aktiivne T – signaal on juba maha võetud. (Või kunstlikult piirata T – signaali kestvust.
Lahendus → kaheastmeline struktuur. Siis uus info formeeritakse ainult sisendastme väljundis, vana info aga säilub väljundastmes. Kui uus olek on formeeritud, ja aktiivne T – signaal on maas, toimub info ülekirjutamine väljundastmesse. Selleks, et ei tekiks võnkumise režiim, sünkronisatsioon toimub erinivoodega (otse ja inverssega).
„Skeem invertoriga“
JK – triger
See on universaalne triger, tema alusel võib ehitada kõik ülejäänud. Oletades, et aktiivne signaal on 1, koostame tabelit:
NB! JK – triger ei oma sisendsignaalide keelatud kombinatsioone.
(võrrelda RS – trigeriga!) Toodud tabel peegeldub varem tehtud definitsiooni J,K sisendite kohta. Need olid vastavalt seadmise ja tagastamise sisendid.
Asünkroonne
JK – triger:
Sünkroonne
JK – triger:
Tabelist on näha: (~ ~) → kui anname mõlemad aktiivsed nivood, siis saame T – trigerit.
Järeldus: struktuur peab olema kindlasti kaheastmeline (MS – struktuur)
→ Tagasisidemete rakendamine välistab keelatud kombinatsioonide tekkimist.
→ J,K sisendid võivad funktsioneerida nagu R,S sisendid.
→ Võib laiendada infosisendite arvu: 3NING-EI kuni 5NING-EI.
(ühel on alati ALS, teistel PLS).
→ JK –
trigerit võib täiendada asünkroonsetega eelseadmise sisenditega
.
JK – trigeri ajadiagrammid:
JK – trigeri kasutamine:
’
4.4. Trigerid dünaamilise juhtimisega.
Kõik ülalvaadeldud trigerid olid staatilise juhtimisega. Nende sünkroniseerimiseks (takteerimiseks) oli ALS C = 1. Tema kestvuse ajal staatilise juhtimisega trigerid on võimelised reageerida ükskõik missuguste signaalide muudatustele oma infosisenditel. Seetõttu konkreetse info salvestamiseks signaal infosisendil peab olema konstantne sünkroimpulsi kestvuse ajal. Mõnikord on seda raske saavutada. Sellest puudusest on vabad trigerid nn dünaamilise juhtimisega. Nendel ALS ei ole staatiline nivoo ise, vaid tema muudatus. Teisiti: trigeri ümberlülitus toimub lühikese aja jooksul, sünkroimpulsi esi- või tagakülje läheduses.
Juhul, kui triger reageerib esikülje peale (0 ┌ 1) on see otse dünaamilise sisendiga triger.
Juhul, kui triger reageerib tagakülje peale (1└ 0) on see inversse dünaamilise sisendiga triger.
On levinud nn „kolme trigerite skeem“.
Idee: → salvestada signaalid, mis on antud trigeri infosisenditele, ajamomendil, millel toimub sünkrosignaali muudatus.
Realisatsioon: → Infosignaalid antakse peamälupesale (asünkroonne RS – triger) mitte abikombinatsioonloogika skeemi kaudu, vaid kasutakse lisa mäluelemente (samuti asünkroonsed RS – trigerid).
Kuna asünkroonne RS – triger omab kaks infosisendit, järelikult on vaja veel kaht abitrigerit (RS – trigerit). Siit ongi tulnud skeemi nimetus : „ kolme trigeri skeem“.
Näide |
Antud struktuur on ülesehitatud tavalise sünkroonse RS – trigeri (rohelises kontuuris) baasil. On lisatud elemendid DD5, DD6. Koos trigeri sisendkombinatsioonloogika skeemiga (DD1, DD2) nad moodustavad abitrigerid (DD5 – DD1 ja DD2 – DD6).
Saadud struktuurskeemile vastab järgmine LF:
Lahendame seda süsteemi asünkroonse RS – väljundtrigeri sisendsignaalide suhtes:
Signaalid
X2
ja X3
figureerivad võrrandite vasakul ja paremal poolel üheaegselt. See
tähendab, et kui paremale poolele paneme tähendused X2
n
, X3
n
; siis vasakul poolel vastavalt saame X2
n+1 ,
X3
n+1.
Kasutades lahenduse < tulemused, uurime dünaamilise D – trigeri funktsioneerimist.
Oletame, et algolekus C = 0. Sel juhul vastavalt < X2 = X3 = 1 sõltumata signaali D tähendusest. Asünkroonse RS – trigeri sisenditel on PLS, ja tema viibib info säilitamise režiimis.
Sünkrosignaali tulekuga C = 1 < alusel:
See on püsiv olek. Tähendab, sünkrosignaali ilmumisega C – 1 asünkroonse RS – peatrigeri sisenditel on signaalid, millised on määratud infosignaaliga D – sisendil.
Kui D = 1, siis saame Q = 1; juhul, kui D = 0, siis Q = 0.
Oletame, et D = 1, siis kohe peale sünkroimpulssi tulekut saame:
X2 = 0, X3 = 1.
Paneme neid tähendused < süsteemi sisse, seega saame:
See tähendab, et peale sünkrosignaali C = 1 tulekut asünkroonse RS – trigeri olek on mittetundlik D – signaali muudatuste suhtes. Trigeri järgmiseks ümberlülituseks tuleb enne anda C = 0. Siis mõlemad sisendtrigerid asuvad olekusse, millal X2 = X3 = 1. Asünkroonne RS – väljundtriger jääb enne salvestatud info säilitamise režiimi. Järgmise sünkrosignaali esiküljega triger läheb üle olekusse, mis on määratud D – signaaliga.
Dünaamilise juhtimisega triger ei ole tundlik infosignaalide muudatuste suhtes ajavahemikes, millal C = 1 ja C = 0. Tuleb aga tunnistada, et trigeri ümberlülitus ei toimu otse sünkroimpulsi külje peal. Info garanteeritud salvestamiseks sünkroimpulss peab püsima konstantsena infosisendil mõni ajaintervalli vältel. See ajaintervall on määratud reaalsete LE dünaamiliste omadustega. Kui aeg, mida vajab LE ümberlülitamiseks on td, siis mainitud ajaintervalli pikkus on 2td. Ajaintervall (t0 – td) – t0 (kus t0 – signaali C muutmise moment) vajalik selleks, et toimuks infosignaalidega DD5 ja DD6 ümberlülitus.
Alaintervall t0 – (t0 + td) on vajalik selleks, et toimuks ümberlülitus DD1 ja DD2 peale signaali C ilmumist ajamomendil t0. Sisendinfo peab saama fikseeritud sisendtrigerites.
4.5. Numbriliste (digitaalsete) automaatide üldine
struktuurskeem ja kirjeldus.
Suvalist järjestikulist seadet tavaliselt nimetakse „numbriline (digitaalne) automaat“ (DA).
Haffmann`i mudel:
DA üldjuhul koosneb N – trigeritest. DA olekut iseloomustakse N – järgulise koodsõnaga. Iga järk assotsieeritakse vastava trigeri väljundsignaaliga.
Haffmann`i mudel võib olla kirjeldatud koodsõnadega:
X – sisendi mõju peegeldav koodsõna (KS).
Z – väljundsignaali KS,
Y – KS, mis tagab automaadi olekute vahetamise vajalik järjekord,
Q – KS, mis iseloomustab automaadi olekut.
.......
Tegelekult DA funktsioneerimiseks on vajalik sünkroniseerimissignaal C.
Mälu mahu (trigerite arvu) määramine – tähtsaim probleem, mis tekib DA projekteerimisel. Juhul, kui DA funktsioneerimiseks on vaja M olekut, siis trigerite alasüsteem peab koosnema miinimum n – trigeritest.
n ≥ log2M (n – lähim täisarv)
Maksimaalne trigerite arv ülevalt poolt on piiratud M tähendusega.
Olekute vajalik arv võib olla leitud kui maksimaalne väljundsignaali tähenduste arv, mis võib eksisteerida tema väljundil ühe sisendsignaali tähenduse puhul.
DA tööalgoritmi kirjeldamiseks sobib:
Suusõnaline kirjeldus (esialgne ülesande püstitamine),
Olekute tabelid,
Olekute skeemid (graafid).
Olekute tabel koosneb G + 1 veergudest (G – sisendsignaalide arv) ja 2n – ridadest. Tabeli esimeses veerus loetakse üle kõik võimalikud olekud, millistes võib viibida DA.
Seal, kus j – veerg ja i – rida ristuvad, kirjutakse sisse murdarv. Lugeja osa näitab olekut, kuhu satub DA peale järjekordse sünkroimpulsi tulekut juhul, kui ta viibis i – olekus ja tema sisendis on j – sisendsignaal. Nimetaja osas näidatakse DA väljundsignaali jooksev tähendus enne järjekordse sünkroimpulsi tulekut, kui ta viibis i – olekus j – sisendsignaali mõju all.
Olekute skeem (üleminekute graaf) see on DA töö graafiline interpretatsioon. Teda on väga mugav kasutada, kui 2n > 16, või kui esimeses lähenduses DA tööalgoritm ei ole veel lõplikult välja kujunenud. Iga DA olek tähistatakse ringiga, kuhu sisse kirjutakse vastava oleku number või kood. Üleminek olekust olekusse tähistatakse nooltega, mis seovad vastavad olekud. Iga noolekese juures kirjutakse murdarv. Lugejasse kantakse sisendsignaali tähendus, mille mõju all järjekordse sünkrosignaali tulekuga oli võimalik antud üleminek. Nimetajasse kirjutakse väljundsignaali jooksev tähendus, mis vastab mainitud olekule ja sisendsignaali tähendusele.
Näide |
Automaat, mis formeerib lifti ülekoormamise signaali.
Lifti kabiini mahub 6 inimest. Lubatud on aga ainult 3 inimese vedamine. Kui inimeste arv on rohkem kui 3, peab olema formeeritud blokeerimissignaal (ülekoormus).
Sisendsignaal → kahendkood:
„1“ tema 0 – järgus tähistab reisijate arvu suurendamist 1 (ühe) inimese võrra, mida fikseerib vastav andur.
„1“ tema esimeses järgus tähistab reisijate arvu vähendamist 1 (ühe) inimese võrra.
0 0 – reisijate arv jäi muutmatuks;
0 1 – reisijate arv suurenes ühe inimese võrra;
1 0 – reisijate arv vähenes ühe inimese võrra.
1 1 – keelatud kood.
Üleminekute tabel peab omama 4 veergu. Vajalik olekute arv M tuleb määrata lähtudes seadme töö analüüsist.
M = 7, kuna on seitse võimalikke situatsioone. Nimelt:
1) Lift tühi. 2) Liftis on 1 inimene. 3) Liftis on 2 in. 4) Liftis on 3 in. 5) Liftis on 4 in. 6) Liftis on 5 in. 7) Liftis on 6 in.
1, 2, 3, 4 olekute puhul blokeerimissignaali formeerimine ei toimu.
5, 6, 7 olekute puhul formeeritakse blokeerimissignaal.
Teeme kindlaks trigerite vajaliku arvu:
nmin > log27 → nmin = 3
DA olekute kirjeldus: 3 – järguline kahendkood. Üleminekute tabelis peab olema 8 rida.
Olekute tabel (*) ja olekute skeem (graaf):
4.6. Digitaalse automaadi loogikaskeemi süntees.
Sünteesi metoodika:
Lähtudes DA funktsioneerimistingimustest määratakse vajalik olekute arv ja trigerite alasüsteemi mälu maht.
Teostakse DA funktsioneerimisalgoritmi formaalne kirjeldus. Selleks kasutakse olekute tabelit, olekute skeemi(üleminekute graafi).
Trigerite alasüsteemi realisatsiooniks valitakse trigeri tüüp.
Kasutades formaliseeritud DA tööalgoritmi ja valitud trigeri tüübi üleminekute tabelit koostatakse laiendatud tõeväärsuse tabel.
Selle tabeli ridade arv on kombinatsioonalasüsteemi sisendsignaalide maksimaalne tähenduste arv. Tabeli veergudesse kantakse sisse järgmine info: X – sisendsignaal; Sn – jooksev olek; Sn+1 – järgmine olek; Y – sisendsignaalid trigerite infosisenditel;
Z – väljundsignaalid.
5) Kasutades laiendatud tõeväärsuse tabelit minimeeritakse LF,
mis kirjeldab kombinatsioonalasüsteemi.
6)LF alusel ehitatakse DA loogikaskeem.
Näide |
→ Eelmise näite jätk.
Valime aluseks universaalse JK – trigeri. Selget valiku kriteeriumit ei ole. Praktika näitab: mida rohkem valitud trigeri tüübil üleminekute tabelil määramata sisendsignaali tähendusi, seda lihtsam lõppkokkuvõttes tuleb DA struktuur.
Olekute tabeli (*) analüüs näitab, et projekteeritava seadme kombinatsioonalasüsteemil on 5 vahelduvat (X1X0 – sisendsignaalide koodid, Q2Q1Q0 – trigerite alasüsteemi väljundkood, olek ).
Formaalselt tabelis peab olema 25 = 32 rida.
Liiga palju! Tuleb proovida lihtsustada!
→ Trigerite alasüsteemi järkude arvu vähendada ei anna, kuna on jäik seos olekute arvuga.
→ Kahejärguline sisendsignaali kood faktiliselt peegeldub ainult 2 sündmust:
Üks inimene astus lifti sisse → 01
Üks inimene astus liftist välja → 10
Kood 00 tähendab, muudatusi ei toiminud, kuid iga sünkroimpussiga toimub jooksva oleku väljundsignaali kinnitamine.
Kood 11 on hoopis keelatud kood.
Sama efekt on saavutatav, kui (00) sünkrosignaal puudub, ja trigerid asuvad info säilitamisrežiimis. Tähendab, kui loobuda sünkroonsest meetodist asünkroonse kasuks, siis sünkroimpulss formeeritakse ainult peale muudatuse tekkimist. Välismõju võib sell juhul esitada ühejärgulise (!) koodiga. Tabeli ridade arv väheneb kahekordselt! 32 asemel on nüüd 16.
Seega ühe keerulise ülesande asemel tuleb lahendada kaks võrdlemisi kerget (dekompositsiooni meetod):
→ Välja töötada DA, mis formeerib signaali „sisse – välja“ ja sünkrosignaali.
→ Välja töötada DA, mis formeerib ülekoormamise signaali.
Isoleeritud tippude probleem.
Kui avarii olukorras (toite probleemid, häired jne) trigerite alasüsteemi väljundis tekib keelatud olek (111), siis võib juhtuda, juhtimissignaalide mõju all seade ei tule sellest olekust välja, või tema väljaminekule kaasneb seadme funktsioneerimisloogika rikkumine. Et seda vältida, tuleb algoritmis ette näha väljamineku teed. Algoritmi koht, kuhu seade peab tagasi minema, määratakse lähtudes funktsioneerimistingimustest.
Antaval juhul on mõttekas formeerida avariisignaal ja tagastada süsteem olekusse 000. Nii peab süsteem käituma ka ebareaalsete sisendmõjude puhul (lift tühi, aga sisendile tuleb inimese väljaastumise signaal).
Tähtis! DA tööalgoritm peab ühetähenduslikult olema määratud kõigi võimalike ja mittevõimalike kombinatsioonalasüsteemi sisendsignaali kombinatsioonide jaoks. Ainult sel juhul võib tabada vastuvõetavat töökindlust.
Korrigeeritud tööalgoritm. Tabel (**).
Iseärasused:
Ühejärguline juhtimiskood X :
X = 0 → liftist väljaastumine;
X = 1 → lifti sisseastumine.
2) Kahejärguline väljundsignaal Z1Z0 :
Z0 = 1 → ülekoormus;
Z1 = 1 → avarii
Korrigeeritud tööalgoritmile vastav graaf:
Tabeli (**) alusel on koostatud laiendatud tõeväärsuse tabel (***).
Tabeli (***) alusel saame LF, mis seob seadme väljundsignaalid Z signaalidega JK – trigerite sisenditel ja trigerite alasüsteemi olekud Q2Q1Q0 sisendsignaaliga X.
Z1 – ülekoormus:
Z0 – avarii:
4.7. Üleminekute tabeli koostamine digitaalse
automaadi loogikaskeemi alusel.
Milleks seda vaja teha? → Selline käik lubab välja selgitada DA reaktsiooni etteantud sisendsignaalide kombinatsioonile. Seda on kerge teha, kui on teada DA tabel või üleminekute graaf. Selleks eksisteerib järgmine metoodika:
Loogikaskeemi alusel kirjutakse välja LF, mis seob DA väljundsignaalid signaalidega trigerite sisenditel ja trigerite alasüsteemi olekud DA sisendsignaalidega.
Koostatakse laiendatud tõeväärsuse tabel.
Kirjutakse sisse kõik võimalikud sisendsignaalide kombinatsioonid trigerite alasüsteemi olekute koodide kombinatsioonid.
Leitud LF – de alusel kõike väljakirjutatud kombinatsioonalasüsteemi sisendmõjumisfaktoritele leitakse vastavad väljundsignaalide tähendused trigerite infosisenditel.
Teatavate trigerite infosignaalide ja ülemineku tabelite alusel leitakse trigerite alasüsteemi järgmiste olekute koodid.
Laiendatud tõeväärsuse tabeli alusel koostatakse DA olekute
tabel või üleminekute graaf (üleminekute skeem).
-
Näide
On antud DA skeem. Vaja ehitada üleminekute graaf ja välja selgitada DA reaktsioon sisendmõjule kujuga 1,0 0,1 1,0 tingimustes, et algasendis trigerite alasüsteemi kood on 1 1.
LF väljundsignaalidele Z1,Z0 ja signaalidele trigerite T1,T0 infosisenditele:
Täidame laiendatud tõeväärsuse tabeli. Selleks esialgu kirjutame kõik võimalikud signaalide X ja Q1n , Q0n kombinatsioonid. Pärast leiame Z1Z0 ja T1T0 T – trigeri üleminekute tabeli järgi, ja järgmised olekud Q1 n+1 ,
Q0 n+1.
Meeldetuletamiseks: T – trigeri üleminekute tabel.
Qn Qn+1 T
0 0 0
0 1 1
1 0 1
1 1 0
Tabel (****) :
Selle tabeli alusel tehtud üleminekute skeem:
Kasutades üleminekute skeemi joonistame ajadiagrammid, mis seletavad DA tööd. Diagrammide ehitamisel lähtume sellest, et sünkrosignaali ilmumise momendil seadme sisendil viibib eelmine signaal X, ja tema vahetus toimub ainult peale trigerite ümberlülitamist.
4.8. Jadaloogika seadmete funktsionaalsed sõlmed.
4.8.1. Registrid.
Register on jadaloogikaseade, mis on ette nähtud mitmejärgulisena koodsõnaga esitatud info salvestamiseks, säilitamiseks ja nihutamiseks.
Üldjuhul register võib teostada koodsõnaga järgmised mikrooperatsioonid:
Algoleku seadmine („nullkoodi“ salvestamine);
Sisendinfo salvestamine järjestikuses vormis;
Sisendinfo salvestamine paralleelses vormis;
Info säilitamine (hoidmine);
Säilitatava info nihutamine paremale või vasakule;
Säilitatava info väljastamine järjestikuses vormis;
Säilitatava info väljastamine paralleelses vormis.
Suvaline N – järguline register koosneb N – ühetüüpilistest pesadest – järguskeemidest. Nende väljundsignaal assotsieerib kahendarvu vastava järgu kaalukoefitsiendiga (kaaluteguriga). Iga järguskeem omaette koosneb trigerialasüsteemist ja kombinatsioonalasüsteemist, mis muundab sisendsignaalid ja trigerialasüsteemi oleku väljundsignaalideks.
Registrite mõned liigitamisvõimalused:
Info vastuvõtt tegumoodi järgi:
Paralleelsed – rööpregistrid (staatilised) → info salvestamine (sissekirjutamine) ja väljastamine (mahalugemine) toimub paralleelses vormis (PIPO).
Järjestikused – jadaregistrid (nihkeregistrid) → info salvestamine ja väljastamine toimub ainult jadavormis (SISO).
Rööp – jadaregistrid → info salvestamine ja väljastamine toimub mõlemas vormis (SIPO , PISO).
Info edastamise kanalite arvu järgi:
Parafaassed → info salvestamiseks ja väljastamiseks leiab kasutamist otsene ja inverssne kood.
Ühefaasilised → infot salvestatakse ja väljastatakse kas otse või inversses koodis.
Takteerimisviisi järgi:
Ühetaktilised → takteerimine toimub ühe juhtimpulsi portsuga.
Mitmetaktilised → takteerimine toimub mitme juhtimpulsi portsuga.
Paralleelne register (rööpregister) (PIPO).
→ Teostab 1, 3, 4, 7 mikrooperatsioonid.
→ Töötleb infot ainult paralleelvormis.
Järguskeemid, millistest koosneb register, omavahel seotud ei ole.
Lihtsat PIPO – registrit võib ehitada RS – trigerite alusel.
Koosneb N – trigeritest, sünkronisatsioon on ühine; infot sisestatakse otse ja inverssetes koodides; infot väljastatakse inversses koodis.
→ Ühetaktiline, parafaasse sisendiga, inversse väljundiga. Info salvestamine toimub ühe taktiga.
Juhul, kui kasutuses on ainult otse või ainult inversne kood, siis info sisestamine toimub kahe taktiga.
Esimene takt → „RESET“ või „SET“, teine takt – uue info salvestamine.
Juhul, kui selles struktuuris RS – trigerid vahetada välja D – trigerite vastu, siis on saadud ühetaktiline register ühefaasilise väljundiga. Kiiretoimelisus on siis kaks korda suurem.
Näide |
Reaalse registri skeem (fragment):
Tema skeemiline tähistus:
EZ1 , EZ2 – võrdväärsed, viivad registri väljundid „high Z“ olekusse. Juhul, kui EZ1 + EZ2 = 1 → „high Z“ olek.
E1 , E2 – võrdväärsed, viivad registri info sisestamise režiimist info hoidmise režiimi üle.
E1
+
E2
= 1
Üleval on PLS, all aga ALS. Tulemus: infosignaal D – sisendist edasi ei lähe! Kui tuleb sünkrosignaal C, siis toimub trigeri olemasoleva info ümbersalvestamine. See on info hoidmise režiim.
E1
+ E2
= 0
Toimub uue info salvestamine. Antaval juhul loogika element DD6 mängib multipleksori rolli, ja ühendab trigeri sisendi kas registri D – signaaliga või enda oma väljundiga Q.
Näide |
Skeem (üks pesa), mis võimaldab info salvestamist kahest suunast.
C0 = 1, C1 = 0 → signaali X salvestamine.
C0 = 0 , C1 = 1 → signaali Y salvestamine.
Nihkeregister on tavaliselt universaalne register, ja ta on võimeline teostama kõik mikrooperatsioonid. Selleks on kõik tema järguskeemid omavahel seotud.
Näide |
Ühetaktiline nihkeregister, millel on ettenähtud info paralleelne sisestamine (näidatud on ainult kaks pesa).
Töörežiimi valik toimub sisendi S/P abil.
Kui S/P = 0, siis loogikaelement DD1 2NING-EI formeerib loogika 1, sõltumata sünkrosignaalist C – sisendil, ja sellega blokeerib järguskeemide trigerite sünkroonset ümberlülitamist. Üheaegselt invertori DD2 väljundsignaal muundab elemendid DD3, DD5 invertoriteks ja signaalid Di registri paralleelsisenditel kirjutakse järguskeemide trigerite sisse. Elemendid DD4, DD6 töötavad samuti nagu invertorid ja ei anna võimalust kahele aktiivsele signaalile üheaegselt ilmuda trigeri asünkroonsetel sisenditel.
Kui S/P = 1, siis info paralleelne sissekirjutamine on võimatu, kuna loogika elemendid DD3 – DD6 sõltumata signaalidest Di formeerivad trigerite asünkroonsisenditel (R,S) PLS. Üheaegselt element DD1 muutub invertoriks.
Sünkroimpulsi esiküljega (frondiga) info sisendilt V kirjutakse esimese järguskeemi trigeri sisse. Teise järguskeemi trigerisse kirjutakse sisse info esimesest järguskeemist jne. Register võtab infot järjestikuses vormis sisse ja teostab eelnevalt sissekirjutatud info nihutamine noorimast järgust vanimasse. (nihutamine vasakule).
Neljajärgulise nihkeregistri skeemiline tähistus.
Kui register teostab info nihkumist vanimast järgust noorimasse – siis nooleke on suunatud paremale (→). Kui on kasutatud sellist tähistust ↔ , siis on tegemist reverssiivse registriga. Info nihkumise suund on määratud spetsiaalse juhtimissignaaliga. Selleks tuleb lisada lisa 2∙2NING-VÕI elemendid.
Elemendid 2∙2NING-VÕI-EI mängivad multipleksori rolli – muudavad signaali ülekandmise suunda.
S = 1 → info nihutamine noorimast järgust vanimasse (nihe vasakule ←).
S = 0 → info nihutamine vanimast järgust noorimasse (nihe paremale →).
Nihkeregistrites kasutakse ainult kaheastmelisi (M –S) trigereid või trigereid dünaamilise juhtimisega. Sel juhul garanteeritakse info nihkumine ühe järgu võrra ühe sünkroimpulsi puhul. Muu trigerite tüübi kasutamisel võib juhtuda mitmejärguline nihe.
Registrite vahelised sidemed.
Reaalsetes seadmetes töötlemisele kuuluv info hoitakse registrites. Info töötlemine näeb ette ülekandmise registrist registrisse. Lihtsamal juhul võib neid siduda individuaalselt. See meetod realiseerib nn ruumilise info vahetamise viisi. Registrite vaheline infovahetus toimub maksimaalse kiirusega. Aga suure registrite arvu puhul esinevad ka suured tehnilised raskused.
Mikroprotsessorite süsteemides registrite vaheline infovahetus toimub järjestikuse printsiibi alusel. Kasutakse ainult ühte sideliini DB (DATA BUS). Selle liini külge on ühendatud registrite sisendid ja ka väljundid. On realiseeritud info ajaline jaotus, mille puhul on võimalik info vahetus ainult kahe registri vahel. Info vahetamise tee on määratud juhtimissignaalidega.
Näide |
On olemas meile tuttav staatiline register. (Info sissekirjutamist lubavad signaalid E1 või E2, info väljastamist lubavad signaalid EZ1 või EZ2)
Oletus: EZ2 = E2 = 0. Mikroskeemid SN74LS173A.
K.T.Nr.7 |
Olemasoleva kombinatsioonskeemi lihtsustamine.
4.8.2. Loendurid.
Loendur on järjestikune seade, mis on ettenähtud sisendimpulsside loendamiseks ja nende arvu fikseerimiseks kahendkoodis.
Loendurid ehitakse omavahel ühendatud ühetüübiliste järguskeemide alusel.
Iga järguskeem omaette koosneb trigerist ja kombinatsioonskeemist, mis on ette nähtud trigeri juhtimissignaali väljatöötamiseks.
Digitaalskeemides võivad loendurid teostada koodsõnade alal järgmiseid mikrooperatsioone:
Seadmine algolekusse („nullkoodi“ salvestamine);
Sisendinfo salvestamine paralleelvormis;
Info hoidmine;
Info väljastamine paralleelvormis;
Inkrement – säilitatava koodsõna suurendamine „1“ võrra.
Dekrement – säilitatava koodsõna vähendamine „1“ võrra.
Põhiparameetrid ja liigitus
Loenduri esimene põhiparameeter on loenduse moodul M. See on maksimaalne impulsside arv, mille peale tulekul loendur seadistatakse algolekusse.
Dünaamiline põhiparameeter (mis määrab kiiretoimelisust) on väljundkoodi seadmise aeg (время установления). See on ajaintervall sisendsignaali tuleku ja väljundkoodi seadmise vahel.
Liigitus võib olla tehtud mitme parameetri järgi:
Loenduse mooduli järgi:
Kahendloendurid → loenduse moodul on M = 2n.
Mittekahendloendurid (kahendkodeeritud loendurid) →loenduse moodul M ≠ 2n.
Loenduse suuna järgi:
Summeerivad loendurid → teostavad inkremendi mikrooperatsiooni säilitatava koodsõna alal.
Lahutavad loendurid → teostavad dekremendi mikrooperatsiooni säilitatava koodsõna alal.
Reverssiivsed → sõltuvalt juhtimissignaali tähendusest võivad teostada inkremendi või dekremendi mikrooperatsiooni.
Järguvaheliste sidemete organiseerimisviiside järgi:
→ Loendurid järjestikulise ülekandega: järguskeemide trigerite ümberlülitus toimub järjestikuliselt, üksteise järgi.
→ Loendurid paralleelse ülekandega: kõik trigerid lülitavad ümber üheaegselt, sünkrosignaali järgi.
→ Loendurid kombineeritud ülekandega – ülaltoodud meetodite kombinatsioon.
Kahendloendurid.
Näide |
Tabel (*):
Vaja ehitada loendur M = 8.
Selleks on vaja min 3 trigerit.
Tabelist (*) on näha, et Q0 , mis vastab noorimale järgule, muudab oma tähendust iga sünkroimpulsi tulekuga. Q1 → iga teise sünkroimpulssi tulekuga. Q2 → iga neljandaga.
Antavat algoritmi on kerge realiseerida, kui kasutada T – trigereid. Iga järgmise trigeri sünkronisatsioon teostakse eelmise trigeri väljundsignaaliga. Esimene triger (mis formeerib Q0) sünkroniseeritakse otse sünkroimpulsiga.
Diagrammid selle algoritmi illustratsiooniks:
Tabelist ja diagrammidelt on näha, et selleks, et teostada inkremendi mikrooperatsioon, peab iga järgmine trigeri ümberlülitus toimuma eelmise trigeri väljundsignaali muudatusel 1 → 0 (impulsi tagakülg).
Järeldus: Selleks, et saada summeerivat loendurit, peavad järjestikku ühendatud T – trigerid olema varustatud inverssete dünaamiliste sisenditega.
Juhul, kui meie käsutuses on T – trigerid otse dünaamiliste sisenditega, siis saame lahutavat loenduri.
Sellele vastavad järgmised diagrammid:
Kui kasutada trigeri inversset väljundit, siis:
→ summeeriv loendur on realiseeritav otse dünaamiliste sisenditega T – trigeritel.
→ lahutav loendur on realiseeritav inverssete dünaamiliste sisenditega T – trigeritel.
Järgmises tabelis on toodud kõik võimalikud ühendamise kombinatsioonid:
Järeldus: loenduse suunda saab vahetada kui muuta järguvahelised sidemed. Saab ehitada reversiivse loenduri. Sisend V sellisel loenduril määrab järguvaheliste sidemete tüübi.
Ülaltoodud loenduritel oli järjestikülekanne. Nende sisemine struktuur on lihtne, aga seadmise aeg on suur ja sõltub väljundkoodi tähendusest. Seadmise aeg on maksimaalne juhul, kui on nõutud kõigi trigerite ümberlülitus.
tS max = N∙tS tr.
kus N – järgude arv, ja tS tr. – ühe järguskeemi seadmise aeg.
Seadmise aja vähendamine → tuleb loobuda trigerite asünkroonsest ümberlülitusest sünkroonse kasuks.
Selleks:
→ tuleb panna kõik trigerid lülituma ümber üheagselt;
→ tuleb formeerida signaalid, mis reglementeerivad trigerite ümberlülituse järjekorra enne sünkroimpulsi tulekut.
Tabelist (*) selgub, et iga järgmise trigeri ümberlülitus järjekordse sünkroimpulsi tulekuga toimub ainult siis, kui kõik eelmised trigerid on juba seatud (nendel väljunditel püsivad 1).
Antud ümberlülituse algoritm:
kus: Qi n+1 – loenduri väljundkoodi i – järgu tähendus n+1 ajamomendil;
Qi n – loenduri väljundkoodi i – järgu tähendus n – ajamomendil.
Realisatsioon → nn paralleelne ülekanne.
Selles skeemis tS max = tS tr.
Märkus!
Triger, mis formeerib Q0 jäi ikka asünkroonseks;
Järjestikuse ülekandega loendur on peale väljundkoodi seadmist kohe valmis järgmiseks ümberlülituseks. Paralleelülekandega loenduril läheb järgmiseks ümberlülituseks veel veidi aega tV (lülitamise viide) ülekandesignaali formeerimisahelates.
Tähtis!
Paralleelülekandega loendurites loendamise suund ei sõltu sellest, kas trigerid omavad otsest või inversset dünaamilist sisendit. Loenduse suund on määratud ainult sellega, kas ülekandmise signaali formeerimiseks kasutakse trigerite otsest või inversset väljundit.
Tähendab, ülaltoodud skeem on summeeriv loendur. Kui kasutada inversset väljundit, siis saab lahutava loenduri.
Järeldus:
Kui loenduri järguskeemid täiendada multipleksoriga (näiteks 2∙2NING-VÕI) võib ehitada reversiivse loenduri paralleelülekandega.
Paralleelülekandega loenduril on järkude arvu kasv raskendatud, kuna kiiresti kasvab NING – elementide sisendite arv.
Lahendus: konstrueerida kombineeritud ülekandega loendur. Loenduri järguskeemid jagatakse gruppideks. Grupi sees on teostatud kas järjestikune või paralleelülekanne. Gruppide vaheline ülekandesignaal formeeritakse NING elementidega ainult juhul, kui kõik grupi trigerid on seatud 1 – sse. See ongi paralleelse ülekande printsiip.
Seadmise aeg sellises struktuuris:
tS max = tS tr gr
kus tS tr gr - väljundkoodi seadmise aeg ühe grupi piiris.
Kui ühe grupi ulatuses kasutakse järjestikuse ülekande printsiipi, siis:
tS tr gr = ttr∙Ni
kus Ni – trigerite arv i – grupis.
Paralleel- järjestikulise ülekandega loenduri skeemi lihtsustamine toimub tema kiiretoimelisuse osalise kaotamise arvelt.
Kombineeritud ülekandega loenduri skeem:
Kui grupi sees on tehtud paralleelülekanne, siis loenduri kiiretoimelisus kasvab. See toimub väljundkoodi seadmise aja vähendamise tõttu:
tS tr gr = ttr
Kombineeritud ülekandega loenduri ümberlülituse ettevalmistuse aeg:
tet max = tV ∙(l – 1)
kus: tV – lülitamise viide; l – gruppide arv loenduris.
Kombineeritud ülekandega loenduri maksimaalne ümberlülitussagedus:
Järguskeemide arv grupis võib olla suvaline. Juhul, kui grupp koosneb ainult ühest järguskeemist, siis kombineeritud ülekandega loendur muutub läbiva ülekandega loenduriks.
Selles skeemis trigerite ümberlülitus toimub üheaeglaselt, aga ettevalmistus järgmiseks ümberlülituseks vajab aega. See aeg on vajalik selleks, et NING – elementide väljunditel järjestikusel viisil formeeruks ülekandmise signaale. See aeg sõltub konkreetsest koodist, mis on parajasti loenduri sisse kantud.
Kahend-kodeeritud loendurid (mittekahendloendurid).
Need on loendurid, milledel M ≠ 2n. Mittekahendloendurite loomise meetodeid on palju. Näiteks on toodud kaks nendest.
1) Liigsete olekute elimineerimine.
Näide |
„Sundviisiline juurdeloendamine“.
Kümmendloendur JK – trigerite (SN7472, 155TB1) baasil.
Juhitav nullimine.
Praktikas on soovitatav omada skeem-poolfabrikaati, mille alusel võiks väikeste lisadega lihtsal viisil muuta tööalgoritmi.
Seda on kerge teha, kui kasutada järguskeeme eelseadmise võimalusega.
Mõnedel loenduritel järguskeemid lubavad sisse kanda ka suvalist infot (nt SN74160, 155ИЕ9).
Kasutades loendureid eelseadmise sisenditega võib ehitada seadme ükskõik missuguse loendusmooduliga M. Lihtsa järjestikulise ülekandmisega loenduri baasil võib teha nn asünkroonse „nullimise“.
Sünkroonse nullimise näide läbiva ülekandega loenduri baasil:
Kui
väljunditel tekib kombinatsioon 1010
,
siis peale lülitamise viidet formeerub nullimise signaal.
t1 = tS R + tLV
kus: tSR – loenduri seadmise aeg R – sisendite kaudu;
tLV – lülitamise viide 4NING-EI loogikaelemendil.
Selle meetodi puhul ajavahemikul t1 väljunditel püsib liigne väljundkood.
Võib asja lihtsustada, kui kümnendloenduri ehitamiseks valida sobiv mikroskeem.
Näide |
On olemas kümnendloenduri mikroskeem SN7490 (155ИЕ2). Aga kui ei ole? Saab kasutada kahendloenduri mikroskeemi SN7493 (155ИЕ5).
4.8.3. Taktide jaotaja.
Lihtsaim lahendus selleks – võtta aluseks nihkeregister. Nüüd temast on saanud ringloendur.
Johnson`i loendur .
5. Aritmeetika – loogikaplokk (ALU).
5.1. Üldist.
See on funktsionaalselt täielik arvuti sõlm, mis on ette nähtud aritmeetika ja loogikatehete sooritamiseks. Sõltumata sellest, kui palju operatsioone realiseerib arvuti, aritmeetiline liitmine ja korrutamine on kõige tähtsamad. Nad on arvuti põhinäitajad. Lähte- ja vaheandmed on vaja kuskil hoida, seetõttu ALU on alati varustatud lisaregistritega.
ALU struktuurskeem:
Tegelikult see on lihtsustatud mikroprotsessori skeem. ALU omab kaht sisendit (sisendporti) ja üht väljundit. On olemas ka lisa- väljaviigud abiinfo saamiseks. Puhverregister 1 ja puhverregister 2 on andmete ajutiseks hoidmiseks. Nad on võimelised hoida üht koodsõna. Järkude arv on määratud ALU tüübiga. Sisend 1 saab andmeid otse andmete siinilt. Sisend 2 – ka sealtsamast või spetsiaalsest registrist – akumulaatorist. Selle registri sisend on ühendatud ka ALU väljundportiga. Tihti akumulaatoril on ka teine sisend, mis on ühendatud andmete siiniga. Üldjuhul akumulaatoris võivad olla hoiul andmed, mis on eelmise operatsiooni tulemused või on saadetud andmete siini poolt. Väljaviikude grupp, mis on ette nähtud abiinfo saamiseks , on ühendatud olekute registriga. Seal hoitakse tööinfot – viimase operatsiooni tulemused. Näiteks viide, et akumulaator on nullitud, et viimase operatsiooni käigus on saadud negatiivne tulemus.
Sõltuvalt operatsiooni tüübist, ALU opereerib kas ühe või kahe andmesõnaga ja vastavalt kasutab üht või kaht sisendporti. Näiteks, aritmeetilise liitmise puhul on kasutamisel mõlemad pordid, aga inversse koodi saamiseks on vaja ainult ühte.
On rida operatsioone, mida teostavad kõik ALU-d:
→ aritmeetiline liitmine;
→ aritmeetiline lahutamine;
→ loogikaline korrutamine;
→ loogikaline liitmine;
→ liitmine mooduli 2 järgi;
→ inversioon; nihe vasakule, nihe paremale, inkrement, dekrement.
Ülalnimetatud operatsioonid on elementaarsed, neid ALU teostab enda oma aparatuursete vahenditega. Keerukad operatsioonid nagu: aritmeetiline korrutamine ja jagamine, teostatakse mikroprogrammilise meetodi abil → elementaarsete operatsioonide kombinatsioonidega. ALU on kombinatsioonseade – oma mäluelemente temal ei ole.
Arvuti töö analüüs näitab, et 50% kõigist operatsioonidest on aritmeetiline korrutamine, ja 45% on aritmeetiline liitmine.
5.2. Kahendarvude liitmise algoritm.
On vaja saada LF, mis kirjeldaks kahte ühejärgulist koodide liitmist.
Tõeväärsuse tabel (*):
S – operatsiooni tulemus;
P – vanimasse järku ülekandmise signaal.
1 → Operatsiooni tulemust ei anna esitada samas (ühejärgulises) koodis! Tulemuse sõna peab omama ühe järgu rohkem.
0 → See ei ole loogikaline liitmine!
Tabeli (*) alusel:
(*)
(**)
S: →
antivalentsus ....
;
→ välistav
VÕI ....
(XOR) ;
→ liitmine mod 2 .... (X1 + X0)mod2
→ välistav
VÕI – EI
← digitaalkomparaatori
LF! (F=)
Välistava VÕI –l on alati kaks sisendit → operatsioon ainult kahe sõna alal.
Tabelis (*) näeme ainult noorimate järkude liitmist. Vanimate järkude liitmise jaoks tabelit (*) tuleb täiendada ülekandmise signaaliga noorimatest järkudest.
Selle uue, täiendatud, tabeli alusel koostame LF:
(***)
(****)
Moraal: → Selleks, et saada kahe vanima järgu summat, on vaja: 1) Operatsioon XOR X1 ja X0 alal, 2) Veel üks operatsioon XOR esimese operatsiooni tulemuse ja eelmisest järgust ülekandmise signaali alal.
5.3. Summaatorid.
5.3.1. Summaatorite liigitus.
Summaatorite liigitus (väljaviikude järgi):
→ Poolsummaator on seade, mis liidab kaht ühejärgulist koodi (sõna). Tal on kaks sisendit ja kaks väljundit. Seade formeerib liitmise signaali ja ülekandmise signaali vanimasse järku.
→ Ühejärguline summaator on seade, mis liidab kaht ühejärgulist koodi. Tal on kolm sisendit (ühe sisendi peale tuleb ülekandmise signaal noorimast järgust) ja kaks väljundit.
→ Mitmejärguline summaator on seade, mis liidab kaht mitmejärgulist koodi, formeerib väljunditel summa koodi ja ülekandmise signaali, juhul, kui liitmise resultaat ei ole esitatav koodis, mis on liidetavate koodidega samajärguline.
Mitmejärgulised summaatorid võivad olla:
→ Järjestikulised – liitmise protsess toimub järk – järguliselt, alustades noorimast järgust.
→ Paralleelsed – liitmine toimub üheaegselt kõikides koodide järkudes.
5.3.2. Poolssummaator.
Poolsummatori väljundsignaalid vastavad võrranditele (*) ja (**). Realisatsiooniks on vaja XOR ja AND – loogikaelemendid. Kuidas realiseerida „välistav VÕI“ 2NING-EI baasil:
Summaatori skeem:
Operatsiooni teostamise aeg:
tPS = 3tLV
Kui registril, kus hoitakse liidetavaid koode on otse ja inverssed väljundid, siis:
Operatsiooni teostamise aeg:
tPS = 2tLV
5.3.3. Ühejärguline summaator.
Ühejärgulise summaatori funktsioneerimine on kirjeldatud loogikafunktsioonidega (***) ja (****). Kõige kergem realisatsioon võib olla poolsummaatorite alusel (2 poolsumm. + 1 VÕI). Tuleb aga ära märkida, et kui sünteesida seadet otse täiendatud tõeväärsuse tabeli alusel, kasutades elementaarseid loogikaelemente, võib saada lihtsama tehnilise lahenduse. Operatsiooni teostamise aeg pakutavas skeemis samuti on määratud operatsiooni „välistav VÕI“ teostamise ajaga.
tüjS = 2tPS = 6tLV
Vanimasse järku ülekandmise signaali formeerimine toimub kiiremini:
tP = 5tLV
5.3.4. Mitmejärguline paralleelse toimega summaator.
Peavad olema eraldi aparatuursed vahendid selleks, et teostada üheaegne summeerimine igas järgus. Neljajärgulise summaatori jaoks oleks vaja üht poolsummaatorit, kolme ühejärgulist summaatorit, ja väljundlüliteid (NING –elemendid). Signaal Z → liitmise tulemuse mahalugemiseks.
Igas järgus on oma summaator, aga ülekandmise signaali formeerimine toimub järjestikuliselt. Selletõttu mahalugemise signaal Z antakse mitte varem, kui ülekandmise signaal käib kõik järgud läbi. Operatsiooni teostamise aeg:
kus n – järkude arv.
Juhul, kui n = 4, siis t4S = 12tLV
P on ülekandmise väljundsignaal, või ületäitmise signaal.
t4 üt = 11tLV
5.3.5. Mitmejärguline summaator järjestikulise toimega
Võib realiseerida kasutades ainult ühte ühejärgulist summaatori skeemi. Liitmine toimub kordamööda järk – järguliselt.
Liidetavate koodide paigaldus sisendregistrites:
Üldjuhul registrid võivad summaatorile ka mitte kuuluda.
Enne summeerimist peavad koodid olema sisse kantud registritesse (kas järjestikuliselt või paralleelselt).
Tähtis! Koodide paigaldus! Qn → 0 Registrite vanimatesse järkudesse kirjutakse sisse liidetavate koodide nooremate järkude tähendused.
On vaja (n+1) järgulisi registreid, mis võimaldavad nihutada koode vasakule. Enne algust D – triger nullitakse. Vastuvõtu registri järguskeemide olekud ei ole tähtsad. Liitmine vajab sünkronisatsiooni n – takte.
Sünkroimpulsi esikülg (0┘1) on aktiivne, ja hoiuregistrite Qn – väljunditel ilmuvad X0 ja Y0 .
D – trigeri Q – väljundil on 0 → ühejärgulise summaatori väljunditel formeeritakse S ja P signaalid noorimatele järkudele. Sünkroimpulssi tagaküljega (1└0) need tähendused kirjutatakse üle väljundregistri noorimasse järku ja ka D – trigerisse. Seega järgmise sünkroimpulsi tulekuni D – trigeris hoitakse ülekandmise signaali tähendus, mis oli saadud noorimate järkude summeerimisest, aga väljundregistri Q0 – järgus on noorimate järkude summa.
Seega iga sünkroimpulssi esikülje puhul (0┘1) ühejärgulise summaatori sisendil hakkavad ilmuma koodide järkude tähendused, alates noorimast, ja ülekandmise signaalid eelmistest protseduuridest.
Iga sünkroimpulsi tagakülje puhul (1└0) uue summa tähendus kirjutakse üle väljundregistrisse, aga ülekandmise signaali tähendus, mida tuleb arvestada järgmise summeerimise puhul, salvestatakse D – trigerisse. Kui lõpeb n – sünkroimpulss, summeerimise tulemus jääb hoiule väljundregistrisse.
NB! Väljundregistri vanimas järgus on summeerimise tulemuse noorim järk.
n – järguliste koodide minimaalne summeerimise aeg on:
tminS = 6ntLV
(neljajärguliste koodide liitmise aeg on kaks korda suurem, kui paralleelse toimega summaatoril)
Kiiretoimelisuse tõstmiseks tuleb kasutada paralleelse toimega summaatorit. Kiirust sel juhul piirab ainult ülekandmise signaali formeerimine.
Mõned tehnilised võimalused (mida võiks ette võtta):
→ Vähendada elementide ja ahelate arvu, mis on kasutatud ülekandmise signaali formeerimiseks;
→ Kasutada nendes ahelates suurendatud kiiretoimelisusega elemente;
→ Teostada ülekannet paralleelvormis;
→ Moodustada summaatorite grupid ja organiseerida ülekandmise signaalile lisa ahelad.
5.3.6. Summaatorid paralleelse ülekandega.
Sellistes summaatorites summeerimise signaal ja ülekandmise signaal formeeritakse otse sisendvahelduvatest.
Seade, mis formeerib nõndaviisi ülekandmise signaali, on kiirendatud ülekandmise plokk.
Kunagi oli:
Kasutades
saame:
.
. . . . . . . . . .
. . . . .
. . . . . . . . .
Selleks, et lihtsustada, tähistame:
gi = Xi∙Yi – ülekandmise funktsioon;
hi = Xi + Yi – ülekandmise edastamise funktsioon.
Vastavalt täiendatud tabelile gi = 1 ainult siis, kui ülekandmise signaal formeeritakse i – järgus, sõltumata sellest, kas on või ei ole ülekandmise signaali noorimast järgust. Samuti hi = 1 siis, kui kas või üks liidetavatest võrdub 1. Juhul kui hi = 1, siis ülekandmise signaal formeeritakse ainult siis, kui on olemas ülekandmise signaal noorimast järgust.
Juhul, kui Xi = Yi =1, siis gi = hi = 1.
Kasutades neid mõisted:
Pi = gi + Pi-1∙hi (*)
Selge, et ka ülekanne signaal Pi-1 allub (*)
Paneme selle tagasi (*), ja saame:
Kui sedasi minna Q – järguni välja, saame üldistatud LF, mis kirjeldab ülekandmise signaali formeerimist suvalises järgus:
Kus P – ülekandmise signaal, mis antakse skeemi sisendile, juhul, kui sellised seadmed on järjestikku ühendatud.
. . . . . . . . . . . . . . .
Neljajärgulise summaatori jaoks (kasutades NING-EI):
Paralleelse ülekandega neljajärgulise summaatori skeem:
Ülekandmise signaali formeerimise aeg (igale järgule) on püsiv suurus ja võrdne:
tpP = 4tLV
Seetõttu on üldine summeerimise aeg paralleelse ülekandega skeemile:
tpS = tpP + tPS =7tLV
Paralleelse ülekande puhul summeerimise kiirus kasvab tunduvalt, kuid tehniline realisatsioon läheb väga keeruliseks. Sellepärast reaalsetes skeemides järkude arv :
np ≤ 4
5.3.7. Summaatorid grupeeritud struktuuriga.
Kasutusele on võetud sama printsiip, nagu loendurites kombineeritud ülekandega. Ühejärgulised summaatorid on jagatud gruppideks nii, et oleks täidetud tingimus:
n = ml
kus: n – üldine järkude arv;
l – moodustatud gruppide arv;
m – ühejärguliste summaatorite arv ühes grupis.
Igas grupis ja gruppide vahel võib organiseerida kas paralleelse või järjestikulise ülekande meetodid.
Vaatlemisele võivad tulla:
→ Ahela ülekandega skeemid,
→ Paralleel – paralleelse ülekandega skeemid.
Ahela ülekandega summaator.
Grupi sees on organiseeritud paralleelne ülekanne, aga gruppide vahel – järjestikune. Toimub skeemi lihtsustamine, kuna kiirendatud ülekandmise ploki (KÜP) sisendsignaalid on ainult antava summaatorite grupi signaalid, KÜP formeerib ainult ühte ülekande signaali.
KÜP LF ja skeem, juhul kui järkude arv m = 4.
Summeerimise aeg sellistes skeemides:
kus: l – gruppide arv.
Kui on näiteks 16 – järguline summaator (m = l = 4), siis
taüS = 19tLV
. . . . . . .
Juhul kui sama suurel paralleelsel summaatoril oleks gruppide vahel tehtud järjestikülekanne, siis minimaalne summeerimise aeg oleks tminS = 36tLV . – 1,94 korda suurem, võrreldes ülaltoodud
variandiga.
Paralleel – paralleelse ülekandega summaator.
Mitmejärgulise summaatori struktuurskeem:
Gruppides ja gruppide vahel on organiseeritud paralleelne ülekanne.
tminS = 11tLV
gi =Xi∙Yi – ülekandmise funktsioon;
hi = Xi + Yi – ülekandmise edastamise funktsioon;
Pi = gi + Pi-1∙hi – ülekande signaal.
Kui järkude arv kasvab liiga suureks, siis tuleb ühendada summaatorid alagruppidesse („kolmekordse paralleelse ülekandmise printsiip“).
5.4. Kahendarvude lahutamise algoritm.
On teada, et lahutamine võib olla asendatud liitmisega, kui lahutavale omistada „miinus“ märk. Sel juhul lahutamiseks võib kasutada summaatorit.
Negatiivse kahendarvu esitamine:
- ........ -----
↑ ↑
Esimene koht – märk, moodul – kõik järgmised kohad.
Kui märk on: a) 0 → positiivne arv; b) 1 → negatiivne arv.
Ainult märgi järgu kasutamine ei anna veel võimalust teostada lahutamise operatsiooni, juhul kui lahutav kahendarv on esitatud otsekoodis. Selleks, et esitada negatiivne kahendarv, tuleb kasutada tema lisakoodi.
Kahendarvu lisakoodi saamine:
Tuleb leida kahendarvu tema inversne kood.
Saadud inverssele koodile lisada „1“ noorimasse järku.
Peale liitmise operatsiooni teostamist tulemuse märk on määratud saadud koodi vanima järguga.
! → Kui vanimas järgus on „0“, siis tulemuseks on positiivne arv, mis on esitatud otse koodis.
! → Kui vanimas järgus on „1“, siis tulemuseks on negatiivne arv, mis on esitatud lisakoodis.
Näide |
31 – 12 = ?
Antud arvude otsekoodid:
3110 = 000111112
1210 = 000011002
Lahutava inversne kood: 11110011
Lahutava lisakood: 11110011 + 00000001 = 11110100
Liitmine: 00011111
+ 11110100
„1“arvesse ei lähe! → 100010011
↕
0 → tulemus on positiivne, ja esitatud
otsekoodis → „19“
Näide |
- 31 = ?
Lahutava inversne kood: 11100000,
Lahutava lisakood: 11100000 +00000001 = 11100001
Liitmine: 00001100
+ 11100001
11101101
↕
1 → tulemus on negatiivne, ja esitatud
lisakoodis.
Kuidas lisakoodist saada tagasi otsekood? Võib kasutada juba tuntud otsekoodi lisakoodi muundamise algoritmi. Aga võib ka lihtsamini.
Kerge meetod:
Kahendarvu lisakoodi hakkame vaatlema paremalt vasakule. Jätame muutmata kõik ettetulnud loogikalised „0“. Esimest ettetulnud loogikalise „1“ laseme ka mööda, aga kõik järgnevad arvud inverteerime.
Arvu lisakoodi 11101101otsekood →00010011. See vastab: - 1910
5.5. Aritmeetilise liitmise ja lahutamise operatsioonide
realisatsioon.
Kahejärguliste koodide liitmise –lahutamise struktuurskeem:
DD1 on üldine juhtimissõlm. SLP on summerimis- lahutamisplokk. Summaatorite vahel on organiseeritud järjestikune ülekandmine.
Algolekus sisenditele „+“ ja „-„ on antud „0“. Seega esimestele (ülemistele) sisenditele 2NING DD5, DD9 ja 2NING DD3, DD6 tulevad aktiivsed signaalid. Siis summaatorite sisenditel sõltumata Xi, Yi tähendustest viibivad loogika – „0“. Vastavalt ka skeemi väljunditel on „0“.
Kui „+“ – sisendile on antud „1“. Esimestele sisenditele 2NING DD5, DD9 ja ka esimestele ülemistele sisenditele 2NING DD3, DD6 tulevad passiivsed loogikalised signaalid („1“). Seepärast summaatorite sisenditel viibivad liidetavate koodid. Nende väljunditel aga tekivad summeerimise tulemused ja ülekande signaal.
Kui „-„ – sisendile on antud „1“. Esimestele sisenditele 2NING DD5 ja DD9 endistviisi tuleb passiivne loogikasignaal ja summaatorite „b“ – sisenditele satub vähendatava otsekood. Esimeste sisendite ülemistele elementidele 2NING DD3, DD6 tulevad aktiivsed, aga esimeste sisendite alumistele elementidele 2NING – passiivsed loogikasignaalid. Seega lahutava kood satub summaatorite „a“ – sisenditele läbi invertorite, inverteeritud kujul. Üheagselt summaatori DD4 ülekandmise sisendile tuleb „1“. Selle alusel võib öelda, et summaatorite „a“ – sisenditele on antud lahutava lisakood. Summaatorite väljunditel formeeritakse kahe koodi vahe.
5.6. Loogikaoperatsioonide teostamine.
Loogikaoperatsioonide eripära seisneb selles, et neid teostakse iga järgu alal eraldi, ilma seoseta teiste järkudega.
Triger TTA kuulub ALU akumulaatorile, triger TT1 aga puhverregistrile 1.
Operatsiooni valik täidetakse „1“ andmisega vastavale sisendile.
Element DD6
formeerib signaali
;
Element DD7
formeerib signaali
;
Elementide DD8, DD9, DD13 ülesandeks on formeerida signaal
.
Signaal
võetakse trigeri TTA
inverteeriva väljundi pealt.
Blokeerimiselemendid DD12, DD15, DD16 ja DD10 mängivad loogikalülitite rolli, nende abil teostatakse tulemuse valik.
Elemendid 4VÕI (DD14), 2NING (DD2, DD3) ja invertor DD1 on selleks, et salvestada tulemust trigerisse TTA (DD4).
Algolekus juhtimissisenditel on „0“. Elemendi 4VÕI DD11 väljundil samuti püsib „0“. Resultaadiks esimestel sisenditel elementidel 2NING DD2, DD3, DD12, DD15, DD16, DD10 on aktiivsed loogikasignaalid. Nende elementide väljundid omavad madalat nivood, mis näeb ette trigeri TTA (DD4) alginfo säilitamist.
Kui AB sisendi peale on antud „1“: Elemendi 2NING DD12 ülemisel sisendil on passiivne signaal ja tema väljund kordab elemendi DD6 (mis realiseeris loogikakorrutamise operatsiooni) väljundsignaali tähendust. Seesama signaal läbi elemendi 4VÕI DD14 ja invertor DD1 satub elementide 2NING DD2, DD3 alumistele sisenditele. Elemendi 4VÕI DD11 väljundsignaal satub ülemistele sisenditele 2NING DD2, DD3. Ta on võrdne loogika „1“ ja lubab trigeri TTA (DD4) R,S – sisenditel formeerida signaale, mis on määratud operatsiooni A∙B tulemusega. Sünkroimpulsi tulekuga see info salvestatakse trigerisse TTA (DD4).
Kui teistele juhtimissisenditele anda peale signaalid „1“, siis skeem käitub analoogselt ülalkirjeldatule.
5.7. ALU integraalskeemid.
N
äiteks:
SN74LS187,
555ИП3.
Skeem opereerib kahe neljajärgulise sisendkoodidega (a0...a3 ja b0...b3). Teostab 16 aritmeetilist ja 16 loogikaoperatsiooni.
Operatsiooni tüüp määratakse M – sisendil (mode control).
M = 1 – sisemised ülekanded on blokeeritud. Skeem teostab loogikaoperatsioone.
M = 0 – skeem teostab aritmeetilisi operatsioone.
Operatsiooni liik valitakse vastava koodiga, mida antakse sisenditele S0...S3.
Operatsioonide tulemused saab kätte väljunditel F0...F3. P0, Pn – vastavalt ülekande signaali sisend ja väljund.
Signaale G, H kasutakse mitmejärguliste ALU ehitamise puhul (järjestik ja paralleelne ülekanne). Sel juhul nende väljundite külge lülitakse spetsialiseeritud mikroskeem – kiirendatud ülekandmise plokk (näiteks: SN74LS182, 555ИП4).
K – sisemise komparaatori väljund. K = 1, juhul, kui A = B.
Operatsioonid, mida teostab SN74LS187:
5.8. Aritmeetiline korrutamine.
Aastaid tehti seda programmmeetodil. Praegu on välja töötatud spetsialiseeritud integraalskeemid. Aga ikkagi nende tööalgoritm baseerub traditsioonilisel meetodil: - järkude erakorrutiste summeerimine.
Näide |
Kahejärguliste koodide korrutamine.
Struktuur, mis seda algoritmi realiseerib – maatriks – korrutamisplokk.
Selline lähenemine lubab korrutada koode suvalise järkude arvuga. Integraalskeemi väljatöötamisel oleks hea kasutada ühte tüüpi skeeme. Pakutud skeem sellele nõudele ei vasta.
Näide |
Neljajärguliste koodide korrutamine.
On näha neli ühetüübilist plokki. Iga plokk vastab kahejärguliste koodide korrutamisele.
Iga plokk peab veel teostama ka liitmise operatsiooni. Selleks, et näiteks saada M2 :
b2a0
b1a1
b0a2
ja veel mitte unustada juurde liita ülekandmise signaali, mis tekib peale erakorrutiste b1a0 ja b0a1 liitmist järgus M1.
Analoogselt tuleb käituda teistes järkudes. Üldjuhul igas plokis peab olema realiseeritud järgmine LF:
Mi = A∙B + C + D
kus: C ja D – lisaks liidetavad komponendid, mis on saadud teistes plokkides. Et seda realiseerida, tuleb ülaltoodud skeem täiendada kahe summaatoriga.
Järgmine skeem on kahejärguliste koodide maatrikskorrutamisplokk, kuid lubab koodide järkude arvu suurendamist.
Ja viimane skeem: maatrikskorrutamisplokk, mis on ette nähtud neljajärguliste koodide korrutamiseks. Ta on üles ehitatud eelmise skeemi kasutamispõhimõttel.
