Käsusüsteeme võib seega käsuformaadi põhjal jagada: 0-aadressiga ei täpsustata operandi asukohta, kuna selle asukoht on kindlalt paigas. Need arvutid on üldjuhul realiseeritud pinul NT käsk ADD ,,tõmbaks" pinu tipust 2 esimest operandi, liidaks kokku ja ,,lükkaks" tulemuse pinu otsa tagasi. Puhtalt 0-aadressi masinad pole väga laias kasutuses. 1-aadressiga täpsustab käsus vaid ühe operandi. Käsk = käsukood + 1 operandi aadress. Käsu teine operand on tavaliselt eeldefineeritud asukohaga akumulaator, mida ei pea eraldi ära näitama. 1-aadressiga arvuteid kasutatakse siiani laialdaselt vähemhinnalistes kontrollerites ja süsteemid nagu nt mänguasjad jms. NT: LDA P, ADD Q 2-aadressiga defineerib käsus 2 erinevat operandi. Käsk = käsukood + 1 op.pikk aadress + 2 op.pikk aadress.
dekoodril väljundit. Kuivõrd iga sisendkoodi korral on aktiivne ainult üks valjund, on meil seal unitaarkood (1-out-of-2 kood). St, et igas koodis on ainult üks 1. Juhtsisend E võimaldab keelata dekodeerimist, kui ta väärtus on 0. Madalaktiivse väljundi dekoodri korral, on vastupidi igas koodis ainult üks 0. Käsuformaadid - 0, 1, 2, 3 ja 1,5 aadressiga arvutid. Kõigis käskudes on alati käsukood (KK), mis määrab tegevuse, mida tuleb teha ja samuti, kuidas leida operandid ning kuhu salvestada resultaat. Operandi leidmise ja resultaadi salvestamise koha leidmiseks on terve rida eri meetodeid, mida nimetataksegi adresseerimisviisideks. Käskude pikkus on oluline mälu kasutamise efektiivsuse jaoks. 0 aadressiga arvuti (Käsukood (OPCode)) – tegemist on pinumälul põhineva arvutiga. Aadresse ei ole käsu formaadis.
efektiivne andmevahetus alamprogrammidega effektiivne käskude järjekorra juhtimine (siirded ja alamprogrammid) PILET 3. Konveier protsessoris ja mälus. Konveier kiirendab protsessori tööd, kuna võimaldav mitut käsku täita paralleelselt. Ta ei suurenda üksiku käsu täitmise kiirust. Ilma konveierita protsessori töös täidetakse käske jadamisi. Konveier täidab paralleelselt, kui ühe käsu käsuloendur on saatnud käsu aadressi mälu poole, et saada käsukood, siis ta laeb endasse järgmise käsu ja saadab ka selle teele. Samal ajal toimub juba esimese käsu salvestamine käsuregistrisse ja sellele järgneb käsu dekodeerimine. Virtuaalmälu ( lehekülgedeks jagamine, segmenteerimine). Virtuaalmälu on mäluhaldustehnoloogia, mis kasutab nii arvuti riistvara kui ka tarkvara. Virtuaalmälu eesmärgiks on laiendada aadressiruumi ehk mäluaadresside hulka, mida programmid kasutada saavad. Kui virtuaalmälu ei kasutataks, ei pruugiks programm, mis
a).0-aadressiga arvuti: 0-aadressiga arvutis ei täpsustata operandi asukohta, kuna selle asukoht on kindlalt paigas. 0-aadressiga arvutid on üldjuhul realiseeritud pinul näiteks käsk ADD " tõmbaks" pinu tipust 2 esimest operandi, liidaks nad kokku ning ,,lükkaks" tulemuse tagasi pinu otsa. Puhtalt 0-aadressi masinad pole väga laias kasutuses. b).1-aadressiga arvuti: 1-aadressiga arvuti täpsustab käsus vaid ühe operandi. *Käsk koosneb: käsukood + 1 op. aadress. Käsu teine operand on tavaliselt eeldefineeritud asukohaga akumulaator, mida ei pea eradi ära näitama. 1-aadressiga arvuteid kasutatakse siiani laialdaselt vähem-hinnalistes kontrollerites ja süsteemides nagu näiteks mänguasjad jms. * Näiteid: LDA P, ADD Q. c). 1,5-aadressiga arvuti: 1,5 aadressiga arvutis täspsutatakse 1 ,,pikk" operand, 1 ,,lühike" operand. *Käsk koosneb: käsukood + 1 op. pikk aadress + resultaadi lühike aadress.
kasutamist). 4. Register-mälupõhine (alates 1970-st) ► 2 aadressi; üks operandidest on esitatud ilmutamatult. 5. Register-registripõhine (alates 1960-st) ► 3 aadressi; operandid on (laade- salvestusarhitektuur) esitatud ainukesena mõlemad ilmutatult. 7. Protsessorites kasutatavate käskude vormingud, formaadid käsukoodi valik. Käsustikku kuuluvate käskude puhul eristatakse: 1. Käsu vormingut 2. Käsu formaati Püsiva vorminugu ja formaadiga käsud Käsukood – Aadress 1 – 2 – 3 Muutuva vormingu ja formaadiga käsud Käsukood – Aadress 1 Käsukood – Aadress 1 – Tunnus – Operand Käsukood – Aadress 1 – Aadress 2 Käsuformaat võib olla: Fikseeritud - kõik käsustikku kuuluvad käsud on ühesuguse pikkusega Varieeruv – käsu pikkus sõltub käsust. Käsuformaatide võrdlus Fikseeritud pikkusega Plussid: Lihtsustub käskude täitmise protsess.
väljundit. Üldjuhul on dekoodril nii mitu sisendit n, kui mitu kohta on sisendisse antaval kahendarvul. Maksimaalne väljundite arv võrdub kombinatsioonide arvuga 2n. Dekoodreid koostatakse peamiselt OR loogika elementidest. Suure sisendite arvu korral kasutatakse dekodeerimiseks kaskaadlülitust, kus esimese astme dekooder aktiveerib ühe teise astme dekoodri ning see omakorda ühe väljundi. 7.Käsuformaadid – 0, 1, 2, 3 ja 1,5 aadressiga arvutid. 3 aadressiga arvuti – käsukood + I operandi pikk aadress + II operandi pikk aadress + resultaadi pikk aadress A=B+C 2 aadressiga arvuti – käsukood + I operandi pikk aadress (resultaat läheb sinna) + II operandi pikk aadress B=B+C 1,5 aadressiga arvuti – käsukood + I operandi pikk aadress + resultaadi lühike aadress (registriaadress) 1 aadressiga arvuti – käsukood + I operandi aadress. Ac – akumulaatorregister. 1 operand asub mälus, teine operand ning resultaat samal akumulaatorregistri aadressil Käsusüsteem:
vastava väljundi. Sisendis n-järguline kood, väljundis 2 astmel n-järguline kood. Dekoodriga saab kahendkoodi muundada koodiks, millega aktiveerida mälupesa, juhtida segmentindikaatorit, konverteerida bin<-->dec, jne. Koosneb AND elementidest. Kaskaadlülitus... kõrgema taseme dekooder aktiveerib madalama taseme dekoodrid, need omakorda väljundid, etc. Käsuformaadid - 0, 1, 2, 3 ja 1,5 aadressiga arvutid. 3 aadressiga arvuti käsukood + I operandi pikk aadress + II o. pikk aadress + resultaadi pikk aadress A=B+C 2 aadressiga arvuti kk + I operandi pikk aadress (resultaat läheb sinna) + II operandi pikk aadress B=B+C 1,5 aadressiga arvuti kk + I operandi pikk aadress + resultaadi lühike aadress (registriaadress) 1 aadressiga arvuti kk + I operandi aadress Ac akumulaatorregister. 1 operand asub mälus, teine operand ning resultaat samal akumulaatorregistri aadressil Käsusüsteem:
Dekooder on ettenähtud kahendarvude dekodeerimiseks, see tähendab, et tehakse kindlaks, milline on sisendkood. Igale võimalikule sisendkoodile (n järgulise koodi korral on neid 2) vastab üks väljund ja järelikult on dekooderil 2 väljundit. Kuivõrd iga sisendkoodi korral on aktiivne ainult üks valjund, on meil seal unitaarkood (1-out-of-2 kood). Käsuformaadid - 0, 1, 2, 3 ja 1,5 aadressiga arvutid. Kõigis käskudes on alati käsukood, mis määrab ära tegevuse, mida tuleb teha ja samuti, kuidas leida operandid ning kuhu salvestada resultaat. Operandi leidmise ja resultaadi salvestamise koha leidmiseks on terve rida eri meetodeid, mida nimetataksegi adresseerimise viisideks. 0 aadressiga arvuti (Käsukood (OPCode)) tegemist on pinumälul põhineva arvutiga. Aadresse ei ole käsu formaadis. Alati võetakse operandid pinumälu pealt ja kirjutatakse sinna tulemus.
kuulub täitmisel, *kus operandid mikrooperatsioonidest. Ühele registermälu, mille töid korraldab (monoliitprotsessor,akumulaator, asuvad, *kuhu salvestada käsule vastab mikroprogramm. juhtautomaat mällu salvestatud registermälu, ALU, siinipuhvrid, resultaadid. 2 aad arv KK: #1. Käsukood määrab programmi kohaselt. pinumälu osuti ). operandi pikk aad #2. op/result mikroprogrammi. 20.Programmeeritavad Mikroprotsessoriks nim. ühel või pikk aad# 3 aad arv KK #1. Mikroprogramm koosneb loogikamaatriksid: Kasut. mitmel integraallülitusel ehk
Minimaalselt tähendab ühist sünkroniseerimist. Peale kahendsõna säilitamise saab registris teha ka muid operatsioone, näiteks nihe. Loendur on register, millesse salvestatud arv sisendi mõjul suureneb v väheneb ühe võrra. Loenduri moodul määrab, mitmeni loendatakse või kui on reversiivne loendur, siis määrab, millest alustatakse. XII. Käsuformaadid 0,1,2,3 ja 1,5 aadressiga arvutid /231-235/ Kõikides käskudes on käsukood, mis määrab tegevuse ja millega võib kaasneda info, kust leida operandid ja kuhu salvestada tulemus. Aadressid näitavad operandide ja resultaadi asukohta põhimälus(pikk aadress) või registrimälus(lühike aadress) Nullaadressiga käsukoodi juures pole aadresse. Selline arvuti põhineb pinumälul: operandid võetakse pinumälult ja sinna salvestatakse ka tulemus.
järjestikkujul bitthaaval välja. Loendurid Protsessor: Käsu täitmine protsessoris. Kogu käsu täitmise võib kokku võtte ühe tsüklina, mida nimetatakse ka von Neumanni tsükliks. See tsükkel näitab käsu täitmist von Neumann tüüpi arvutis. Alustades käsukoodi laadimisest, saadetakse käsuloenduri sisu mälu aadressiregistrisse, modifitseeritakse käsuloenduri väärtus, et see sisaldaks järgmise käsu aadressi. Seejärel laetakse käsukood mälust käsuregistrisse. Käsukood dekordeeritakse. Seejärel genereerib juhtautomaat käsu täitmiseks terve rea juhtsignaale, mis näiteks kommuteerivad ALU sisenditesse läbi multipleksorite registermälu operandid. Juhtautomaat valib ka ALU operatsiooni ja kommuteerib ALU väljundisse registri, kuhu läheb tulemus. Iga käsu täitmiseks on oma individuaalne elementaartegevuste jada. See tähendab, et dekodeerimisele järgneb hargnemine, kus igas harus genereeritakse
___________ `|' _________________ |Käsu täitmine| | |PC modifitseerimine | |___________| | |_________________| `' | / ________|________'/' | Kk. Desifreerimine| |________________ | 12. ÜHE, KAHE, KOLME JA 1,5 AADRESSIGA ARVUTID. · ühe aadressiga arvutid käsukood näitab: * milline käsk kuulub täitmisele * kus operandid asuvad * kuhu salvestada resultaadid · kahe aadressiga arvutid · kolme aadressiga arvutid · 1,5 aadressiga arvuti Pikk aadress viitab mällu, lühike registrisse. 13. ADRESSEERIMISE VIISID. Operandide adresseerimiseks kasut. mitut viisi: otse- ja kaudadresseerimist, suht- ja indeksadresseerimist, vahetut adresseerimist,
Protsessori koosseisu kuulub ALU, juhtautomaat-mikroprogrammautomaat, mitu registrit ning vahemälu. Käsuloenduri ülesandeks on järjestikuste käskude lugemine PC aadressi järgi. Käsuloendur saab järgneva käsu aadressi ???-st (juhtautomaadist arvatavasti ... või siis programmistilt). Saadab Read signaali ja mälu aadressi Mäluaadressi Registrisse, kus selle järgi leitakse mälust vastav pesa ja kirjutatakse selle sisu Mälu Puhverregistrisse, sealt omakorda käsukood ning operand(id) käsuregisreisse. Mälust saadud käsk säilitatakse käsuregistris kuni käsudekooder selle identifitseerib. Käsudekoodrist liigub vastavast väljundist signaal juhtautomaati. Juhtautomaat saadab juhtsignaalid operatsiooniautomaati. Operatsiooniautomaat loeb nõutud andmed oma suurde registermälusse ning saadab andmed ALU-sse, mis juhtautomaadi käskude järgi teeb vastavad tehted. Lippude register saadab samuti operande ALU-sse.
Protsessori koosseisu kuulub ALU, juhtautomaat-mikroprogrammautomaat, mitu registrit ning vahemälu. Käsuloenduri ülesandeks on järjestikuste käskude lugemine PC aadressi järgi. Käsuloendur saab järgneva käsu aadressi ???-st (juhtautomaadist arvatavasti ... või siis programmistilt). Saadab Read signaali ja mälu aadressi Mäluaadressi Registrisse, kus selle järgi leitakse mälust vastav pesa ja kirjutatakse selle sisu Mälu Puhverregistrisse, sealt omakorda käsukood ning operand(id) käsuregisreisse. Mälust saadud käsk säilitatakse käsuregistris kuni käsudekooder selle identifitseerib. Käsudekoodrist liigub vastavast väljundist signaal juhtautomaati. Juhtautomaat saadab juhtsignaalid operatsiooniautomaati. Operatsiooniautomaat loeb nõutud andmed oma suurde registermälusse ning saadab andmed ALU-sse, mis juhtautomaadi käskude järgi teeb vastavad tehted. Lippude register saadab samuti operande ALU-sse.
Dekooder tunneb ära vastava kahendkoodi ja aktiveerib sellele vastava väljundi. Sisendis njärguline kood, väljundis 2 järguline kood. Koosneb AND elementidest. Dekoodriga saab kahendkoodi muundada koodiks, millega aktiveerida mälupesa, juhtida segmentindikaatorit, konverteerida bin<>dec, jne. Kaskaadlülitus kõrgema taseme dekooder aktiveerib madalama taseme dekoodrid, need omakorda väljundid, etc. KÄSUFORMAADID 0,1,2,3 JA 1,5 AADRESSIGA ARVUTID 3 aadressiga arvuti käsukood + I operandi pikk aadress + II o. pikk aadress + resultaadi pikk aadress, A=B+C 2 aadressiga arvuti kk + I operandi pikk aadress (resultaat läheb sinna) + II operandi pikk aadress, B=B+C 1,5 aadressiga arvuti kk + I operandi pikk aadress + resultaadi lühike aadress(registriaadress) 1 aadressiga arvuti kk + I operandi aadress, 1 operand asub mälus, teine operand ning resultaat samal akumulaatorregistri (Ac) aadressil Käsusüsteem:
kuvaritest on iga ekraanivälja punkt valgusalliks ja vaatenurk on lai. 1. Dekooder. Dekooder on ettenähtud kahendarvude dekodeerimiseks. Igale võimalikule sisendkoodi väärtusele vastab dekoodril üks väljund ja seega on dekoodril n sisendi korral 2^n väljundit. Kui dekooderile on lisatud juht-sisend, siis on võimalik keelata dekodeerimist, kui selle väärtus on 0. Dekoodri loogikaskeem. 2. Käsuformaadid 0, 1, 2, 3 ja 1, 5 aadressiga arvutid. Kõikides käskudes on alati käsukood, mis määrab tegevuse, mida tuleb teha ja samuti võib kaasneda infot selle kohta, kuidas leida operandid ja kuhu salvestada tulemus. Operandi leidmise ja tulemuse salvestamiseks on erinevad adresseerimiseviisid. Kolme aadresssiga arvuti käsu juurde kuulub kolm pikka aadressi, mis näitavad operandide asukohta ja tulemuse salvestamise kohta põhimälus. Kahe aadressiga arvuti käsu juurde kuulub kaks pikka aadressi. Tulemus
Üldjuhul on dekoodril nii mitu sisendit n, kui mitu kohta on sisendisse antaval kahendarvul. Maksimaalne väljundite arv võrdub kombinatsioonide arvuga 2n. Dekoodreid koostatakse peamiselt OR loogika elementidest. Suure sisendite arvu korral kasutatakse dekodeerimiseks kaskaadlülitust, kus esimese astme dekooder aktiveerib ühe teise astme dekoodri ning see omakorda ühe väljundi. 2. Käsuformaadid - 0, 1, 2, 3 ja 1,5 aadressiga arvutid. 3 aadressiga arvuti käsukood + I operandi pikk aadress + II o. pikk aadress + resultaadi pikk aadress A=B+C 2 aadressiga arvuti kk + I operandi pikk aadress (resultaat läheb sinna) + II operandi pikk aadress B=B+C 1,5 aadressiga arvuti kk + I operandi pikk aadress + resultaadi lühike aadress (registriaadress) 1 aadressiga arvuti kk + I operandi aadress Ac akumulaatorregister. 1 operand asub mälus, teine operand ning resultaat samal akumulaatorregistri aadressil 3
orgaanilise ainega. On valmistatud ribadena, mis on risti. Selle abil saab adresseerida kõiki punkte. Aktiivmaatriksiga OLED Kasutatakse TFT-maatriksit, millega määratakse heledus. Igal väljal 2 transistori. Käsu täitmine protsessoris (käsuloendur, käsuregister, käsu dekooder, op automaat, juhtautomaat) Käsukoodi laadimises saadetakse käsuloenduri sisu mälu aadressiregistrisse (MAR), modifitseeritakse käsuloenduri väärtust (PC = PC + 1) ja loetakse käsukood mälust registrisse. Käsu täitmine tähendab, et juhtautomaat genereerib iga käsu täitmiseks terve rea juhtsignaale. Käsukoodi dekodeerimisele järgneb hargnemine, kus igas harus genereeritakse juhtsignaalid, mis on vajalikud konkreetse käsu täitmiseks. Protsessorise loetakse käsud ja andmed, mällu kirjutatakse resultaate. Käsu täitmise e. Von Neumanni tsükkel (fetch decode execute) 1. Käsukoodi laadimine 2. Käsuloenduri modifitseerimine (pc = pc + 1) 3
tuleb selle võimalusega arvestada. Mida vähem on vaja konveierit uuesti käsivitada, seda kiirem on programmi täitmine. 1 T.Evartson konspekt: http://www.pld.ttu.ee/~teet/prose_w.pdf Eriti halb on kui siire toimub käsu täitmise viimasel etappidel, sest siis võidakse täita mõni käsk väljaspool järjekorda. Selle vastu aitab nt see, kui tarkvara (translaator) selliste käskude järel psigutab mõne NOP (no operation) käsu, mis midagi ei tee, kuid tema käsukood loetaks eikkagi protsessorisse. Protsessorites on tihti eraldi loogikaskeem mis tegeleb hargnemiste ennustamisega, et muuta konveier efektiivsemaks. Hargnemise ennustamine toimub teatud statistiliste kriteeriumite järgi ja ei saa anda alati õiget tulemust, kuid siiski suudab vähendada konveieri uuesti käivitamise vajaduse tõenäosust. 15. Mikroskeemide valmistamise tehnoloogiad. Bipolaarsed tehnoloogiad:
Keskseadme kui arvuti "südame" sisemise "pulsilöögi" määrab taktgeneraatori ehk kella võnkesagedus. "Meeleorganiteks" on keskseadmele juurde lisatud erilised sisend-väljund (S/V)- lülitused. Andmeimpulsse edastakse arvutisõlmede vahel siinide abil, mida võib võrrelda inimese "närvikiududega". Keskseadme protsessor täidab arvutikäske üksteisele järgnevate sammudena. Kõigepealt tuleb käsk välja lugeda mälust, panna siis erilisse käsuregistrisse ja deÅ?ifreerida käsukood, et teada saada, mida järgnevas tuleb ette võtta. Põhimõtteliselt peab iga käsu kahendkood sisaldama järgmisi osi: 1.osa, mida nimetatakse käsukoodiks (operatsioonikoodiks) ja mis määratleb teostatava tehte iseloomu (näiteks kahe arvu liitmine) 2.andmete asukoha (nende aadressid), näiteks kahe arvu liitmisel liidetavate (operandide) aadressid 3.tehte tulemi paigutuskoha (aadressi) järgmisena täidetava käsu asukoha
vormingu ja formaadiga käsud (IBM 360/370, Intel 80x86). Käsuformaat võib olla: 1. Fikseeritud - kõik käsustikku kuuluvad käsud on ühesuguse pikkusega; 2. Varieeruv – käsu pikkus sõltub käsust. Iga käsk peab sisaldama juhtinformatsiooni, mis näitab käsu poolt sooritatava infoteisenduse olemust -> käsukoodi. Käsukoodi valik: Tüüpilised käsukoodi moodustamise viisid: 1. Reserveeritud käsukoodid (igal käsul ainult temale omane iduviduaalne käsukood, Intel 8080) 2. Klassipõhised käsukoodid (koosneb kahest osast: klassikood ja operatsioonikood,Mostek 6502). 8. Käsutsükli täitmise üldistatud mudel. Täitmisele kuuluva käsu aadressi arvutamine -> käsuvõtt -> käsukoodi dekodeerimine -> operandi aadressi arvutamine -> operandivõtt (mitu operandi) -> operatsioon andmetega (string või vektorandmed) -> salvestamisele kuuluva tulemi aadressi arvutamine -> tulemi salvestus (mitu tulemit) ->
Üldjuhul on dekoodril nii mitu sisendit n, kui mitu kohta on sisendisse antaval kahendarvul. Maksimaalne väljundite arv võrdub kombinatsioonide arvuga 2 n . Dekoodrid koostatakse peamiselt NING- elementidest. Suure sisendite arvu korral kasutatakse dekodeerimiseks nn. kaskaadlülitust, kus esimese astme dekooder aktiveerib ühe teise astme dekoodri ning see omakorda ühe väljundi. 2.Käsuformaadid - 0, 1, 2, 3 ja 1,5 aadressiga arvutid. Käskudes on alati käsukood, mis määrab tegevuse, mida tuleb teha. Samuti võib kaasneda informatsioon selle kohta, kuidas leida operandid ning kuhu salvestada tulemus. Käskude pikkus on oluline mälu kasutamise efektiivsuse jaoks. Käsu pikkus võib olla fikseeritud ja langeda kokku mälu sõna järgulisusega või olla tema kordne. Kasutatakse ka süsteeme, kus erinevad käsud on eri pikkusega. Käskude juurde võib
Käsuloendur sisaldab mingi käsu täitmisel alati järgmise käsu aadressi (mitte täitmisel oleva). Järgmise käsu aadress on näiteks vajalik katkestuste korral ja alamprogrammi poole pöördumisel, et fikseerida tagasipöörde aadress. Vaadeldes praegu käsu täitmise protsessi, on tehtud lihtsustusi protsessori ja mälu andmevahetuses. Mälul on aadressi register, kuhu saadetakse aadress ning puhver register, kuhu lugemisel tuleb sõna mälust (käsukood või andmed) ja kirjutamisel paneb protsessor sinna sõna, mis salvestatakse mälus vastavalt aadressile. o käsuregister (IR - Instruction Register) Kui protsessor väljastab käsuloendurist (PC) aadressi ja saab mälust käsu koodi, siis salvestatakse see käsuregistrisse. Käsuregistri väljundisse on ühendatud dekooder. Dekoodri väljunditest on iga sisendkoodi korral aktiivne ainult üks väljaund. Nüüd läheb käsudekoodril aktiivseks väljund, mis näitab
aritmeetika loogika tehted kahe muutuja ehk kahe operaatori vahel. Klassikalised aritmeetikatehted ALU-s: Summeerimine Nihe Korrutamine Jagamine Loogikatehted ALU-s NING (AND) VÕI (OR) Välistav VÕI (XOR) Invertor Toomas Ruuben. TTÜ Raadio ja sidetehnika 79 instituut. Digitaalarvuti komponendid. ALU ALU struktuur A ja B - andmeregistrid R - väljund F - käsukood (instruction) D - Olekusõna Toomas Ruuben. TTÜ Raadio ja sidetehnika 80 instituut. 40 Digitaalarvuti komponendid. ALU Toomas Ruuben. TTÜ Raadio ja sidetehnika 81 instituut. Digitaalarvuti komponendid. ALU olekuregister
1. Kui protsessor väljastab käsuloendurist (PC) aadressi ja loeb selle järgi mälust käsukoodi, siis salvestatakse see käsuregistrisse. 2. Käsuregistri väljundisse on ühendatud dekooder. 3. Dekoodri väljundis on iga sisendkoodi korral aktivne ainult üks väljund. 4. Käsudekoodril läheb aktiivseks üks väljunditest, mis näitab, millise käsu kood loeti protsessorisse. 5. Kõik käsud sisaldavad alati käsukoodi, kui sealjuures vb käsus ka andmeid võid aadress (IRp). 6. Käsukood sisaldab infot selle kohta, mida peab protsessor tegema (nt liitma, lahutama, nihutama jne) 4.3. Juhtautomaat Pärast käsukoodi dekodeerimist asub käsu edasist täitmist juhtima juhtautomaat. J – käsu täitmise algoritm riistvaralise realisatsiooni loogikaskeem. Kõikidel käskude täitmise algoritmidel on alguses ühisosa (käsukoodi lugemine, käsukoodi modifitseerimine jne) ja pärast dekodeerimiset täidetav eriosa (operandide lugemine, ALU
Käsuloendur sisaldab mingi käsu täitmisel alati järgmise käsu aadressi (mitte täitmisel oleva). Järgmise käsu aadress on näiteks vajalik katkestuste korral ja alamprogrammi poole pöördumisel, et fikseerida tagasipöörde aadress. Vaadeldes praegu käsu täitmise protsessi, on tehtud lihtsustusi protsessori ja mälu andmevahetuses. Mälul on aadressi register, kuhu saadetakse aadress ning puhver register, kuhu lugemisel tuleb sõna mälust (käsukood või andmed) ja kirjutamisel paneb protsessor sinna sõna, mis salvestatakse mälus vastavalt aadressile. käsuregister (IR - Instruction Register) 17 Kui protsessor väljastab käsuloendurist (PC) aadressi ja saab mälust käsu koodi, siis salvestatakse see käsuregistrisse. Käsuregistri väljundisse on ühendatud dekooder. Dekoodri väljunditest on iga sisendkoodi korral aktiivne ainult üks väljaund. Nüüd läheb
Käsuloendur sisaldab mingi käsu täitmisel alati järgmise käsu aadressi (mitte täitmisel oleva). Järgmise käsu aadress on näiteks vajalik katkestuste korral ja alamprogrammi poole pöördumisel, et fikseerida tagasipöörde aadress. Vaadeldes praegu käsu täitmise protsessi, on tehtud lihtsustusi protsessori ja mälu andmevahetuses. Mälul on aadressi register, kuhu saadetakse aadress ning puhver register, kuhu lugemisel tuleb sõna mälust (käsukood või andmed) ja kirjutamisel paneb protsessor sinna sõna, mis salvestatakse mälus vastavalt aadressile. o käsuregister (IR - Instruction Register) 17 Kui protsessor väljastab käsuloendurist (PC) aadressi ja saab mälust käsu koodi, siis salvestatakse see käsuregistrisse. Käsuregistri väljundisse on ühendatud dekooder. Dekoodri väljunditest on iga sisendkoodi korral aktiivne ainult üks väljaund. Nüüd läheb
.. Aritmeetika-loogika käsud Arithmetic-logic instructions AND, OR, ADD, SUB, ... Hargnemiste (siirete) käsud Branch instructions JMP, CALL, RET, ... Pinumälu, sisend-väljund seadmete ja protsessori juhtimine Stack, I/O, Machine control instructions PUSH, POP, IN, OUT, NOP, ... · Adresseerimise viisid (Addressing modes) Otsene - käsuga antakse ette operandi aadress, mille järgi see sealt ka leitakse. Vahetu - operand antakse koos käsuga, mälus on koos käsukood ja operant Suhteline - antakse operandi aadress käsuloenduri prog. jooksva aadressi suhtes. Operandi aadress leitakse käsuloenduri ja juhtaadressi summeerimisega. Kaudne - kõigepealt leitakse mälust operandi aadress ja seejärel teisest mälupesast operand. Indekseerimine - baasaadressina kasutatakse indeksiregistris salvestatud aadressi sõna. Autoinkrementne - sarnane kaudsega, aga pärast operandi adresseerimist ja käsu
RAM-i võib võrrelda inimese lühiajalise mäluga, ROM-i pikaajalise kustumatu mäluga. Arvuti "meeleorganiteks" on emaplaadile juurde lisatud erilised sisend-väljund (S/V)- lülitused. Andmeimpulsse edastatakse arvutisõlmede vahel siinide abil, mida võib võrrelda inimese "närvikiududega". Protsessor täidab arvutikäske üksteisele järgnevate sammudena. Kõigepealt tuleb käsk välja lugeda mälust, panna siis erilisse käsuregistrisse ja dešifreerida käsukood, et teada saada, mida järgnevalt tuleb ette võtta. Põhimõtteliselt peab iga käsu kahendkood sisaldama järgmisi osi: osa, mida nimetatakse käsukoodiks (operatsioonikoodiks) ja mis määratleb teostatava tehte iseloomu (näiteks kahe arvu liitmine) andmete asukoha (alguspesa järjekorra numbri e. aadressi), näiteks kahe arvu liitmisel liidetavate (operandide) aadressid tehte tulemi paigutuskoha (aadressi)
märgendivälja tavaliselt tühjaks. Käsukoodiväli sisaldab masinakäsu mnemokoodi või pseudokäsu, mis iseloomustab konkreetset assemblerikeelt. Käsukoodivälja lõpu tunnuseks on tavaliselt tühik. 112 Märgendivälja eraldaja Kommendivälja Komment Märgend algustunnus ALGUS: LHLD AADRESS; MASSIIVI ELEMENT CR Käsukood Operand Kommendivälja ja Käsukoodi lause lõpu tunnus eraldaja Joonis 2.41. Assemblerikeelse lause struktuur Operandiväli sisaldab järgmist informatsiooni: - operandide nimed (märgendiviited), - arvväärtused (vahetu adresseerimine korral), - avaldised. Avaldisi defineeritakse iga konkreetse assemblerikeele puhul eraldi. Tavaliselt sisaldavad