Mikroprotsessorsüsteemid
Mikroprotsessorsüsteemide kasutamine peaaegu kõigis elektriseadmetes on kaasaegse ühiskonna tehnilise infrastruktuuri kõige olulisem omadus. Elekter, tööstus, transport, sidesüsteemid sõltuvad suurel määral arvutijuhtimissüsteemidest. Mikroprotsessorsüsteemid on sisseehitatud mõõteriistadesse, elektriseadmetesse, valgustusseadmetesse jne.
Kõik see kohustab elektriinseneri tundma vähemalt mikroprotsessortehnoloogia põhitõdesid.
Mikroprotsessorsüsteemid on loodud infotöötluse automatiseerimiseks ja erinevate protsesside juhtimiseks.
Mõiste "mikroprotsessorsüsteem" on väga lai ja hõlmab selliseid mõisteid nagu "elektrooniline arvutusmasin (ECM)", "juhtarvuti", "arvuti" jt.
Mikroprotsessorisüsteem sisaldab Hardware või inglise keeles — riistvara ja tarkvara (Software) — tarkvara.
Digitaalne teave
Mikroprotsessorsüsteem töötab digitaalse teabega, mis on arvkoodide jada.
Iga mikroprotsessorsüsteemi tuumaks on mikroprotsessor, mis suudab vastu võtta ainult kahendarvu (koosneb 0-dest ja 1-dest).Kahendarvud kirjutatakse kahendarvusüsteemi abil. Näiteks igapäevaelus kasutame kümnendarvusüsteemi, mis kasutab numbrite kirjutamiseks kümmet märki või numbrit, 0,1,2,3,4,5,6,7,8,9. Sellest lähtuvalt on binaarsüsteemis ainult kaks sellist sümbolit (või numbrit) - 0 ja 1.
Tuleb mõista, et numbrisüsteem on ainult numbrite kirjutamise reeglid ja süsteemi tüübi valiku määrab kasutusmugavus. Binaarsüsteemi valik on tingitud selle lihtsusest, mis tähendab digitaalsete seadmete töökindlust ja nende tehnilist teostamise lihtsust.
Mõelge digitaalse teabe mõõtühikutele:
Bitt (inglise keelest «BInary digiT» — binary digit) võtab ainult kaks väärtust: 0 või 1. Saate kodeerida loogilise väärtuse «jah» või «ei», oleku «sees» või «väljas», oleku «. avatud» «või» suletud «jne.
Kaheksast bitist koosnevat rühma nimetatakse baidiks, näiteks 10010111. Üks bait võimaldab kodeerida 256 väärtust: 00000000 — 0, 11111111 — 255.
Bitt on väikseim teabeühik.
Bait – infotöötluse väikseim ühik. Bait – osa masinsõnast, mis koosneb tavaliselt 8 bitist ja mida kasutatakse teabehulga ühikuna selle salvestamisel, edastamisel ja arvutis töötlemisel. Bait tähistab tähti, silpe ja erimärke (tavaliselt kõik 8 bitti) või kümnendkoha numbrid (igaüks 2 numbrit ühes baidis).
Kahte kõrvuti asetsevat baiti nimetatakse sõnaks, 4 baiti topeltsõnaks, 8 baiti neljasõnaliseks sõnaks.
Peaaegu kogu meid ümbritsev teave on analoogne. Seetõttu teisendatakse see enne, kui teave töötlemiseks protsessorisse siseneb, kasutades ADC-d (analoog-digitaalmuundur).Lisaks on teave kodeeritud teatud formaadis ja võib olla digitaalne, loogiline, tekstiline (sümboolne), graafiline, video jne.
Näiteks kasutatakse tekstiteabe kodeerimiseks ASCII-koodide tabelit (inglise keeles American Standard Code for Information Interchange). Ühes baidis kirjutatakse üks märk, mis võib võtta 256 väärtust. Graafiline teave on jagatud punktideks (piksliteks) ning iga punkti värv ja asukoht on kodeeritud horisontaalselt ja vertikaalselt.
Lisaks kahend- ja kümnendsüsteemile kasutab MS kuueteistkümnendsüsteemi, milles numbrite kirjutamiseks kasutatakse sümboleid 0 ... 9 ja A ... F. Selle kasutamine on tingitud asjaolust, et ühte baiti kirjeldatakse kahega. -kohaline kuueteistkümnendnumber, mis vähendab oluliselt numbrilise koodi salvestamist ja muudab selle loetavamaks (11111111 – FF).
Tabel 1 — Arvude kirjutamine erinevates numbrisüsteemides
Arvu väärtuse määramiseks (näiteks arvu 100 väärtus erinevate numbrisüsteemide puhul võib olla 42, 10010, 25616) lisa numbri lõppu numbrisüsteemi tähistav ladina täht: kahendarvude puhul täht b, kuueteistkümnendarvude puhul — h , kümnendarvude puhul — d. Arvu, millel puudub lisatähis, loetakse kümnendkohaks.
Arvude teisendamine ühest süsteemist teise ning põhilised aritmeetilised ja loogilised toimingud numbritega võimaldavad teha insenerikalkulaatori (Windowsi opsüsteemi standardrakendus).
Mikroprotsessorsüsteemi struktuur
Mikroprotsessorsüsteem põhineb mikroprotsessoril (protsessoril), mis täidab infotöötlus- ja juhtimisfunktsioone. Ülejäänud seadmed, mis moodustavad mikroprotsessorisüsteemi, teenindavad protsessorit, aidates sellel töötada.
Mikroprotsessorsüsteemi loomisel on kohustuslikud seadmed sisend/väljundpordid ja osaliselt mälu... Sisend - väljundpordid ühendavad protsessori välismaailmaga, pakkudes infot töötlemis- või juhtimistoimingute tulemuste töötlemiseks ja väljastamiseks. Sisendportidesse on ühendatud nupud (klaviatuur), erinevad andurid; väljundportidesse — seadmed, mis võimaldavad elektrilist juhtimist: näidikud, näidikud, kontaktorid, solenoidventiilid, elektrimootorid jne.
Mälu on eelkõige vajalik protsessori tööks vajaliku programmi (või programmide komplekti) salvestamiseks. Programm on käskude jada, millest protsessor aru saab ja mille on kirjutanud inimene (tavaliselt programmeerija).
Mikroprotsessorsüsteemi struktuur on näidatud joonisel 1. Lihtsustatud kujul koosneb protsessor aritmeetilisest loogikast (ALU), mis töötleb digitaalset teavet, ja juhtplokist (CU).
Mälu sisaldab tavaliselt kirjutuskaitstud mälu (ROM), mis on püsiv ja mõeldud teabe (nt programmide) pikaajaliseks salvestamiseks, ja muutmälu (RAM), mis on mõeldud ajutiseks andmete salvestamiseks.
Joonis 1 – mikroprotsessorsüsteemi struktuur
Protsessor, pordid ja mälu suhtlevad omavahel siinide kaudu. Buss on juhtmete komplekt, mis on funktsionaalselt ühendatud. Ühtset süsteemisiinide komplekti nimetatakse süsteemisiseseks siiniks, milles on:
-
DB andmesiin (Data Bus), mille kaudu toimub andmevahetus protsessori, mälu ja portide vahel;
-
aadressibuss AB (Address Bus), mida kasutatakse protsessori mälurakkude ja portide adresseerimiseks;
-
juhtsiin CB (Control Bus), liinide komplekt, mis edastab erinevaid juhtsignaale protsessorist välisseadmetesse ja vastupidi.
Mikroprotsessorid
Mikroprotsessor - tarkvaraga juhitav seade, mis on ette nähtud digitaalse teabe töötlemiseks ja selle töötlemise protsessi juhtimiseks, mis on valmistatud ühe (või mitme) integraallülituse kujul, millel on kõrge elektrooniliste elementide integreerimine.
Mikroprotsessorit iseloomustab suur hulk parameetreid, kuna tegemist on nii keeruka tarkvaraga juhitava seadmega kui ka elektroonikaseadmega (mikroskeem). Seetõttu on mikroprotsessori puhul nii korpuse tüüp kui ka protsessori käsukomplekt... Mikroprotsessori võimalused on määratletud mikroprotsessori arhitektuuri mõistega.
Eesliide «mikro» protsessori nimes tähendab, et see on realiseeritud mikronitehnoloogia abil.
Joonis 2 – Intel Pentium 4 mikroprotsessori välisvaade
Töötamise ajal loeb mikroprotsessor mälust või sisendpordist programmikäske ja täidab need. Mida iga käsk tähendab, määrab protsessori käsustik.Käsukogum on sisse ehitatud mikroprotsessori arhitektuuri ning käsukoodi täitmine väljendub teatud mikrooperatsioonide täitmises protsessori sisemiste elementide poolt.
Mikroprotsessori arhitektuur — see on selle loogiline korraldus; see määratleb mikroprotsessori võimalused mikroprotsessorsüsteemi ehitamiseks vajalike funktsioonide riistvara ja tarkvara rakendamise osas.
Mikroprotsessorite peamised omadused:
1) Kellasagedus (mõõtühik MHz või GHz) — taktimpulsside arv 1 sekundis.Kellimpulsse genereerib kella generaator, mis asub tavaliselt protsessori sees. Kuna kõik toimingud (käsklused) sooritatakse kella tsüklitena, siis töö jõudlus (ajaühikus sooritatavate toimingute arv) sõltub taktsagedusest. Protsessori sagedus võib teatud piirides erineda.
2) Bitprotsessor (8, 16, 32, 64 bitti jne) — määrab ühes taktitsüklis töödeldavate andmete baitide arvu. Protsessori bitilaiuse määrab selle sisemiste registrite bitilaius. Protsessor võib olla 8-bitine, 16-bitine, 32-bitine, 64-bitine jne, st. andmeid töödeldakse 1, 2, 4, 8 baidiste tükkidena. On selge, et mida suurem on biti sügavus, seda suurem on töö tootlikkus.
Mikroprotsessori sisemine arhitektuur
Tüüpilise 8-bitise mikroprotsessori lihtsustatud sisearhitektuur on näidatud joonisel 3. Mikroprotsessori struktuuri võib jagada kolmeks põhiosaks:
1) Käskude, andmete ja aadresside ajutise salvestamise registrid;
2) aritmeetiline loogikaüksus (ALU), mis sooritab aritmeetilisi ja loogilisi tehteid;
3) Juhtimis- ja ajastusahel — tagab käsuvaliku, korraldab ALU tööd, tagab ligipääsu kõikidele mikroprotsessori registritele, tajub ja genereerib väliseid juhtsignaale.
Joonis 3 – 8-bitise mikroprotsessori lihtsustatud sisemine arhitektuur
Nagu diagrammil näha, põhineb protsessor registritel, mis jagunevad eriotstarbelisteks (spetsiifilisteks) ja üldotstarbelisteks registriteks.
Programmiloendur (arvuti) — register, mis sisaldab järgmise käsubaidi aadressi. Protsessor peab teadma, milline käsk järgmisena täidetakse.
Aku – register, mida kasutatakse enamikus loogika- ja aritmeetilise töötlemise käskudes; see on nii ühe ALU toimingu jaoks vajaliku andmebaidi allikas kui ka koht, kuhu ALU operatsiooni tulemus paigutatakse.
Funktsiooniregister (või lipuregister) sisaldab teavet mikroprotsessori sisemise oleku, täpsemalt viimase ALU toimingu tulemuse kohta. Lipuregister ei ole register tavatähenduses, vaid lihtsalt plätude kogum (liputage üles või alla. Tavaliselt on olemas null-, ülevoolu-, miinus- ja kandelipid).
Stack Pointer (SP) – jälgib virna asukohta, st sisaldab selle viimati kasutatud lahtri aadressi. Stack — andmesalvestuse korraldamise viis.
Käsuregister sisaldab praegust käsubaiti, mida käsudekooder dekodeerib.
Välised siiniliinid on isoleeritud sisemistest siiniliinidest puhvritega ning peamised sisemised elemendid on ühendatud kiire sisemise andmesiiniga.
Mitmeprotsessorilise süsteemi jõudluse parandamiseks saab keskprotsessori funktsioone jagada mitme protsessori vahel. Keskprotsessori abistamiseks kasutab arvuti sageli kaasprotsessoreid, mis on keskendunud mis tahes konkreetsete funktsioonide tõhusale täitmisele. Laialt levinud matemaatilised ja graafilised kaasprotsessorid, sisend ja väljund vabastavad keskprotsessori lihtsatest, kuid arvukatest välisseadmetega suhtlemistoimingutest.
Praeguses etapis on tootlikkuse tõstmise peamiseks suunaks mitmetuumaliste protsessorite arendamine, s.o. kahe või enama protsessori kombineerimine ühel juhul mitme toimingu paralleelseks (samaaegseks) tegemiseks.
Intel ja AMD on protsessorite projekteerimise ja tootmise juhtivad ettevõtted.
Mikroprotsessorsüsteemi algoritm
Algoritm - täpne ettekirjutus, mis määrab unikaalselt algteabe teisendamise protsessi toimingute jadaks, mis võimaldab lahendada teatud klassi ülesannete komplekti ja saavutada soovitud tulemuse.
Kogu mikroprotsessorsüsteemi peamiseks juhtelemendiks on protsessor... See juhib, kui mõned erijuhud välja arvata, kõiki teisi seadmeid. Ülejäänud seadmed, nagu RAM, ROM ja I / O pordid, on allutatud.
Niipea kui see sisse lülitatakse, hakkab protsessor lugema digitaalseid koode programmide salvestamiseks reserveeritud mälualast. Lugemine toimub järjestikku lahtri kaupa, alustades kõige esimesest. Lahter sisaldab andmeid, aadresse ja käske. Käsk on üks elementaarseid toiminguid, mida mikroprotsessor saab teha. Kogu mikroprotsessori töö taandub käskude järjestikusele lugemisele ja täitmisele.
Mõelge programmikäskude täitmisel mikroprotsessori toimingute järjestusele:
1) Enne järgmise käsu täitmist salvestab mikroprotsessor oma aadressi arvutiprogrammide loendurisse.
2) MP pöördub mälusse arvutis oleval aadressil ja loeb mälust käsuregistris järgmise käsu esimese baidi.
3) Käsudekooder dekodeerib (dešifreerib) käsukoodi.
4) Vastavalt dekoodrist saadud teabele genereerib juhtplokk ajaliselt järjestatud mikrooperatsioonide jada, mis täidavad käsukäske, sealhulgas:
— otsib operande registrist ja mälust;
— sooritab nendega aritmeetilisi, loogilisi või muid käsukoodiga ette nähtud tehteid;
— sõltuvalt käsu pikkusest muudab arvuti sisu;
— annab juhtimise üle järgmisele käsule, mille aadress on jälle arvutiprogrammide loenduris.
Mikroprotsessori juhiste komplekti saab jagada kolme rühma:
1) Käsud andmete teisaldamiseks
Ülekanne toimub mälu, protsessori, I / O portide vahel (igal pordil on oma aadress), protsessori registrite vahel.
2) Andmete teisendamise käsud
Kõik andmed (tekst, pilt, video jne) on arvud ning numbritega saab sooritada ainult aritmeetilisi ja loogilisi tehteid. Seetõttu hõlmavad selle rühma käsud liitmist, lahutamist, võrdlemist, loogilisi tehteid jne.
3) Juhtkäsu üleandmine
On väga haruldane, et programm koosneb ühest järjestikusest käsust. Enamik algoritme nõuab programmi hargnemist. Selleks, et programm saaks olenevalt tingimustest oma töö algoritmi muuta, kasutatakse juhtimise ülekandmise käske. Need käsud tagavad programmi täitmise voo mööda erinevaid teid ja korraldavad silmuseid.
Välised seadmed
Väliste seadmete hulka kuuluvad kõik seadmed, mis on protsessorivälised (välja arvatud RAM) ja ühendatud I / O portide kaudu. Välised seadmed võib jagada kolme rühma:
1) inimese ja arvuti sidevahendid (klaviatuur, monitor, printer jne);
2) juhtobjektidega suhtlemise seadmed (andurid, täiturid, ADC ja DAC);
3) suure mahutavusega välised salvestusseadmed (kõvaketas, disketid).
Välised seadmed ühendatakse mikroprotsessorsüsteemiga füüsiliselt — läbi pistikute ja loogiliselt — läbi portide (kontrollerite).
Protsessori ja välisseadmete liidestamiseks kasutatakse katkestussüsteemi (mehhanismi).
Katkestussüsteem
See on spetsiaalne mehhanism, mis võimaldab igal ajal välise signaali kaudu sundida protsessorit põhiprogrammi täitmist peatama, sooritama katkestuse põhjustanud sündmusega seotud toiminguid ja seejärel naasta põhiprogrammi täitmisele. .
Igal mikroprotsessoril on vähemalt üks katkestustaotluse sisend INT (sõnast Interrupt).
Vaatleme näidet personaalarvuti protsessori ja klaviatuuri koostoimest (joonis 4).
Klaviatuur — seade sümboolse teabe ja juhtkäskude sisestamiseks. Klaviatuuri ühendamiseks on arvutil spetsiaalne klaviatuuriport (kiip).
Joonis 4 – CPU töö klaviatuuriga
Töö algoritm:
1) Klahvi vajutamisel genereerib klaviatuurikontroller numbrikoodi. See signaal läheb klaviatuuri pordi kiibile.
2) Klaviatuuri port saadab CPU-le katkestussignaali. Igal välisel seadmel on oma katkestuse number, mille järgi protsessor selle ära tunneb.
3) Pärast klaviatuurilt katkestuse saamist katkestab protsessor programmi täitmise (näiteks Microsoft Office Wordi redaktor) ja laadib programmi klaviatuurikoodide töötlemiseks mälust. Sellist programmi nimetatakse draiveriks.
4) See programm suunab protsessori klaviatuuri porti ja numbriline kood laaditakse protsessori registrisse.
5) Digitaalne kood salvestatakse mällu ja protsessor jätkab teise ülesande täitmist.
Tänu suurele töökiirusele täidab protsessor korraga suurt hulka protsesse.
