- •Vilniaus gedimino technikos universitetas
- •Mikroprocesoriniai
- •Valdymo įtaisai
- •I dalis mokomoji knyga
- •Vilnius 2008
- •Turinys
- •Žymenys
- •Pratarmė
- •1. Įvadas. Pagrindinės sąvokos ir apibrėžimai
- •2. Mikroprocesoriai. Pagrindinės techninės charakteristikos
- •3. Mikroprocesorinės sistemos organizacija
- •Ir architektūra
- •1 Pav. Mps apibendrinta funkcinė grandinė: cp- centrinis procesorius;
- •2 Pav. Skaitmeninių duomenų pateikimo būdai
- •4. Mps pagrindiniai atminties architektūrų tipai
- •3 Pav. Tipinės atminčių architektūros
- •5. Mps atminties organizavimas
- •4 Pav. Baitinė tiesinės organizacijos atmintis
- •6. Programa, komanda, komandos ciklas
- •5 Pav. Komandos ciklas
- •7. Mp sistemos magistralė (sm). Sm tipai
- •6 Pav. Trijų magistralių mps
- •7 Pav. Dvieju magistralių mps
- •8 Pav. Mps su vietiniais adresų registrais: arg – adreso registras.
- •9 Pav. Mps su bendruoju adresų registru
- •10 Pav. Laikinės funkcionavimo diagramos dviejų magistralių sistemoje
- •8. Sistemos magistralės darbo ciklai
- •9. Sistemos magistralės skaitymo darbo ciklas
- •11 Pav. Trijų magistralių mps skaitymo laikinės
- •12 Pav. Dviejų magistralių mps skaitymo laikinės funkcionavimo diagramos
- •10. Sistemos magistralės rašymo darbo ciklas
- •13 Pav. Trijų magistralių mps rašymo laikinės
- •14 Pav. Dviejų magistralių mps rašymo laikinės
- •11. Sistemos magistralės pertraukties darbo ciklas
- •12. Sistemos magistralės darbo režimai
- •15 Pav. Sm klasikinio asinchroninio darbo režimo laikinės
- •16 Pav. Mažos mps sm asinchroninio darbo režimo laikinės
- •13. Mps tipinės struktūros
- •17 Pav. Apibendrinta magistralinės struktūros funkcinė grandinė: cpm – centrinio procesoriaus modulis; aįm – atminties įrenginio modulis;
- •18 Pav. Magistralinės kaskadinės struktūros funkcinė grandinė: smv – sistemos magistralės valdiklis; vsm – vidinė sistemos magistralė; p0, p1... Pn – portai.
- •19 Pav. Magistralinės radialinės struktūros funkcinė grandinė
- •14. Duomenų įvesties ir išvesties organizavimas
- •14.1. Programiniai duomenų mainai
- •20 Pav. Programiniai besąlyginiai duomenų mainai
- •21 Pav. Įvesties ir išvesties portų funkcinė grandinė
- •22 Pav. Pseudo dvikrypčio porto funkcinė grandinė
- •23 Pav. Įvesties, išvesties ir kvitavimo laikinės diagramos
- •24 Pav. Sąlyginių ciklinių duomenų mainų algoritmas
- •25 Pav. Sąlyginių ciklinių laikinių duomenų mainų algoritmas
- •26 Pav. Sąlyginių neciklinių duomenų mainų algoritmas
- •14.2. Pertrauktiniai duomenų mainai
- •27 Pav. Pertrauktiniai duomenų mainai
- •14.2.1. Radialinė pertraukčių sistema
- •28 Pav. Dinaminė pertraukties signalų priėmimo grandinė
- •29 Pav. Statinė pertraukties signalų priėmimo grandinė
- •30 Pav. Kombinuota pertraukties signalų priėmimo grandinė
- •14.2.2. Išplėstinė radialinė pertraukčių sistema
- •14.2.3. Vektorinė pertraukčių sistema
- •31 Pav. Pertrauktčių valdiklio sujungimo su sm funkcinė grandinė: cp – centrinis procesorius; pv – pertraukčių valdiklis
- •14.3. Tiesioginiai duomenų mainai
- •32 Pav. Tiesioginių duomenų mainų valdiklio sujungimo su sm funkcinė grandinė: cp – centrinis procesorius; tdmv – tiesioginių duomenų mainų valdiklis; pį0 ... PĮn – periferiniai įrenginiai.
- •15. I8085 mikroprocesoriaus mps struktūra
- •33 Pav. I8085 mikroprocesoriaus mps funkcinė grandinė: cp – i8085 centrinis procesorius; arg – adreso registras.
- •16. I8085 mikroprocesoriaus registrų segmentas
- •34 Pav. I8085 mp registrų segmentas
- •17. Bendroji i8085 mp komandų sistemos charakteristika
- •35 Pav. Komandos struktūra
- •36 Pav. Tiesioginio adresavimo komandų formatai: port – porto adresas (1 baitas); adrl – adreso jaunesnysis baitas; adrh – adreso vyresnysis baitas.
- •37 Pav. Tiesioginio registrų adresavimo komandos formatas.
- •38 Pav. Betarpiško adresavimo komandos formatas: db – duomenų baitas; dbh – duomenų vyresnysis baitas; dbl – duomenų jaunesnysis baitas;
- •Aritmetinės ir loginės komandos.
- •Paprogramių komandos.
- •Įvesties ir išvesties bei specialiosios komandos.
- •18. Duomenų perkėlimo (perdavimo) ir dėklo (steko) atminties komandos
- •1 Lentelė. Duomenų perdavimo ir dėklo (steko) atminties komandos
- •19. Aritmetinės ir loginės komandos
- •2 Lentelė. Aritmetinės ir loginės komandos
- •39 Pav. Rlc, ral postūmio į kairę komandų veikimas
- •40 Pav. Rrc, rar postūmio į dešinę komandų veikimas
- •20. Valdymo nukreipimo (perdavimo) komandos
- •3 Lentelė. Valdymo perdavimo (nukreipimo) komandos
- •4 Lentelė.Valdymo perdavimo komandos, kai kontroliuojamas
- •5 Lentelė. Valdymo perdavimo komandų sekos, priklausančios
- •21. Paprogramių komandos
- •6 Lentelė. Kreipimosi į paprogrames ir grįžimo komandos
- •22. Įvesties ir išvesties bei specialiosios komandos
- •7 Lentelė. Įvesties ir išvesties bei specialiosios komandos
- •8 Lentelė. Pertraukčių prioritetinė eilė ir pradiniai (starto) adresai
- •9 Lentelė. Skaitymo rim komanda rezultatas
- •10 Lentelė. Valdymas sim rašymo komanda
- •41 Pav. Rst n komandos formatas:
- •11 Lentelė. Rst n komandos perėjimų (starto) adresai ir
- •23. I8085 mp vidinė struktūra, valdymo signalai
- •42 Pav. Mikroprocesoriaus i8085 sutartinis grafinis ženklas
- •44 Pav. Taktavimo grandinės, naudojant vidinį taktinio dažnio generatorių: a) su zq kvarciniu rezonatoriumi; b) su r – c grandine; c) su l – c grandine.
- •45 Pav. Taktavimo grandinės su išoriniu taktinio dažnio generatoriumi: fT – išorinio taktinio dažnio generatoriaus generuojamų impulsų dažnis.
- •46 Pav. I8085 mp vidinė sinchronizavimo grandinė: ss – sinchronizavimo grandinės stiprintuvas; t – skaitmeninis trigeris; bs1, bs2 – buferiniai stiprintuvai;
- •47 Pav. Išorinė tipinė pradinio nustatymo grandinė
- •24. I8085 mp funkcionavimo laiko ciklai
- •48 Pav. Mikrotaktinis ciklas (taktas)
- •49 Pav. Mikroprocesoriaus funkcionavimo laiko ciklai
- •25. Skaitymo darbo ciklo laikinės funkcionavimo diagramos
- •50 Pav. Skaitymo darbo ciklo laikinės funkcionavimo diagramos
- •26. Rašymo darbo ciklo laikinės funkcionavimo diagramos
- •51 Pav. Rašymo darbo ciklo laikinės funkcionavimo diagramos
- •27. Pertraukties darbo ciklo laikinės funkcionavimo diagramos
- •53 Pav. Laikinės funkcionavimo diagramos, kai pertrauties
- •Vektorius yra rst n komanda
- •28. Tiesioginių duomenų mainų darbo ciklo laikinės funkcionavimo diagramos
- •29. Sustojimo darbo ciklo laikinės funkcionavimo diagramos
- •56 Pav. Sustojimo darbo ciklo laikinės funkcionavimo diagramos
- •30. I8085 mikroprocesoriaus modulis
- •58 Pav. Sistemos valdiklio funkcinė grandinė
- •12 Lentelė. Sistemos valdiklio būsenos
- •59 Pav. I8282/83 tipo registrų sutartinis grafinis ženklas ir
- •Vidinė funkcinė grandinė
- •60 Pav. I8286/87 buferinių formuotuvų sutartinis grafinis ženklas ir
- •Vidinė funkcinė grandinė
- •31. Mps atminties įrenginys
- •61 Pav. Statinės oa kr537ru8a/ru8b sutartinis grafinis ženklas
- •13 Lentelė. Statinės operatyviosios atminties kr537 ru8a/b būsenos
- •14 Lentelė. Loginės grandinės būsenos
- •62 Pav. Signalų sujungimo loginės grandinės
- •63 Pav. Dinaminės oa kr565 ru5 sutartinis grafinis ženklas
- •15 Lentelė. Dinaminės operatyviosios atminties kr565 ru5b/V/g/d būsenos
- •64 Pav. Pastoviosios atminties dig k573 rf5 sutartinis grafinis ženklas
- •16 Lentelė. Pastoviosios atminties kr573 rf5 būsenos
- •32. Įvesties ir išvesties įrenginys
- •32.1. Programuojamasis lygiagretusis periferinis adapteris (pio), struktūra, valdymo signalai
- •65 Pav. I8255 periferinio adapterio sutartinis grafinis ženklas
- •66 Pav. I8255 periferinio adapterio vidinė funkcinė grandinė
- •67 Pav. A, b portų organizacijos grandinė: a) a porto; b) b porto.
- •17 Lentelė. Pio būsenos
- •32.1.1. Pio darbo režimai ir sujungimų funkcinė grandinė
- •18 Lentelė. Pio ms formatas
- •68 Pav. I8255 0 darbo režimas
- •69 Pav. I8255 1 darbo režimas
- •70 Pav. Duomenų mainų signalų kitimas
- •19 Lentelė. Pio bsr formatas
- •71 Pav. I8255 2 darbo režimas
- •72 Pav. Pio sujungimo su sistemos magistrale
- •32.2.Universalusis sinchroninis, asinchroninis imtuvas ir siųstuvas (usart), struktūra, valdymo signalai
- •73 Pav. I8251 adapterio sutartinis grafinis ženklas
- •74 Pav. I8251 adapterio vidinė funkcinė grandinė
- •20 Lentelė. Usart būsenos
- •32.2.1. Usart valdymo bei būsenos žodžiai ir sujungimų funkcinė grandinė
- •21 Lentelė. Usart asinchroninio darbo režimo mi formatas
- •22 Lentelė. Usart sinchroninio darbo režimo mi formatas
- •23 Lentelė. Usart ci žodžio formatas
- •24 Lentelė. Usart sw žodžio formatas
- •75 Pav. Usart sujungimo su sm funkcinė grandinė
- •33. Programuojamasis intervalinis laikmatis (pit), struktūra, valdymo signalai
- •76 Pav. Pit i8253 sutartinis grafinis ženklas
- •77 Pav. Pit i8253 vidinė funkcinė grandinė
- •25 Lentelė. Pit būsenos
- •33.1. Pit darbo režimai ir sujungimų funkcinė grandinė
- •26 Lentelė. Pit cw formatas
- •78 Pav. 0 režimo laikinė diagrama
- •79 Pav. 1 režimo laikinės diagramos
- •80 Pav. 2 režimo laikinė diagrama
- •81 Pav. 3 režimo laikinė diagrama
- •82 Pav. 4 režimo laikinė diagrama
- •83 Pav. 5 režimo laikinės diagramos
- •27 Lentelė. Gate signalo kitimas ir valdymo funkcijos
- •84 Pav. Pit sujungimo su sm funkcinė grandinė Literatūra
2. Mikroprocesoriai. Pagrindinės techninės charakteristikos
Mikroprocesorius yra pagrindinis SVS elementas, kuris koordinuoja atskirų sistemos elementų darbą ir vykdo bendrąją valdymo funkciją. MP veikia pagal programą, kuri saugoma atmintyje. Programa susideda iš nuoseklios komandų (instrukcijų) sekos. Kiekvienas MP turi tik jam būdingą komandų rinkinį (komandų sistemą), kiekviena iš kurių atmintyje gali turėti nuo 1 iki 5 baitų ilgį. MP skaito komandas iš eilės, jas dešifruoja, kuria valdymo signalus, kurie naudojami vidiniams MP ir išoriniams sistemos elementams valdyti. MP valdo visus duomenų mainus ir atlieka aritmetines bei logines operacijas.
MP charakterizuojamas šiomis pagrindinėmis techninėmis charakteristikomis:
MP tipas (vienkristaliai, daugiakristaliai).
MP gamybos technologija. Nuo jos priklauso MP greitaeigiškumas, suderinamumas su kitų tipų MP ir DIG, MP kaip DIG elementų integracijos laipsnis (elementų kiekis kristale), suvartojamos elektros energijos kiekis (išsiskiria šilumos pavidale).
MP informacinio (duomenų) žodžio ilgis. Tai dvejetainio kodo bitų (skilčių) skaičius, kurį vienu metu gali apdoroti MP. Gali būti: 2, 4, 8, 16, 32, 64. MPS plačiai naudojamį 8 skilčių (1 baitas) MP. Vienkristaliams MP informacinio žodžio ilgis fiksuotas, sekcijiniams gali būti keičiamas.
MP adresų magistralės linijų (skilčių) skaičius. Ši charakteristika nustato atminties ląstelių arba įvesties ir išvesties įrenginių skaičių, kurį gali naudoti MP: M= 2m, čia M – atminties ląstelių ar įvesties ir išvesties įrenginių skaičių; m – adresų magistralės linijų (skilčių) skaičius. Dažniausiai m = 16, tada M = 216 = 65536 arba M = 64K, čia K=1024.
MP greitaveika matuojamas:
paprasčiausios operacijos (pvz.duomenų persiuntimo iš vieno registro į kitą) laiku;
operacijų skaičiumi, atliekamu per 1sek.
MP greitaveika priklauso nuo gamybos technologijos, taktinio dažnio ir architektūros. Kiekvienam MP nurodomas ribinis taktinis dažnis.
Maitinimo įtampa ir suvartojama galia. Ši charakteristika parodo kiek ir kokių įtampų reikia MP maitinti, kokia galią sunaudoja MP. Pvz.: I8080 naudoja -5V, +5V, +12V (3 šaltiniai), o I8085 – tik +5V (1 šaltinis). Suvartojama galia neviršija 2W.
MP darbo aplinkos sąlygos: temperatūrų diapazonas (-60°C ... +125°C); drėgmė (santykinė drėgmė procentais); vibracijų diapazonas (matuojamas pagreičiu g = 9,8 m/s2), atsparumas įvairioms spinduliuotėms.
Viena iš svarbiausiųjų šiuolaikinių SVS vystymosi tendencijų yra greitaveikos didėjimas. Greitaveika didinama, tobulinant technines ir programines priemones.
Svarbiausiojo elemento MP greitaveikai didinti naudojama [2, 4]:
konvejerinis apdorojimas;
atsargos (keš) atmintis;
persidengiantys registrų langai;
valdymas ir sinchronizacija.
Konvejerinis apdorojimas tai būdas komandų veikimui spartinti, skaidant veiksmą į atskirus segmentus, kurie vykdomi lygiagrečiai. Kiekvienas segmentas dažniausiai sudarytas iš loginės kombinacinės grandinės, atskirtos nuo kitų schemų registru. Šis apdorojimo būdas taikomas komandoms (komandų konvejeris) ir aritmetinėms operacijoms (aritmetinis konvejeris).
Komandų konvejerio atveju, skaitant komandas iš atminties kartu tuo pat metu vykdomos kituose segmentuose anksčiau skaitytos komandos. Todėl sutapatinamos komandos išrinkimo (skaitymo) (angl. fetch) ir vykdymo (angl. execute) fazės ir viena komanda atliekama per vieną taktą.
Atsargos (angl. cache) atmintis – tai operatyviosios atminties rūšis žymiai greitesnė už įprastinę, esanti MP arba atskirame įrenginyje. Šioje atmintyje saugomos komandos ir duomenys apdorojami daug greičiau, nes kreipimosi laikas į tokią atmintį mažesnis (apie 7 kartus). Pvz. MP Motorola firmos 68030 turi keš atmintį komandoms ir duomenims, kiekvienai po 256 baitus.
Persidengiančius registrų langus sudaro MP išplėstas (didelis) registrų kiekis, sudarantis registrų laikmeną (failą), kuriame registrai suskirstyti į persidengiančias grupes (langus) pagal paskirtį:
jungtiniai (globalieji) registrai, skirti globaliesiems kintamiesiems saugoti;
vietiniai (lokalieji) registrai, skirti lokaliesiems kintamiesiems saugoti;
bendrosios paskirties registrai, skirti paprogramių faktiniams parametrams ir duomenims (rezultatams) perduoti, nenaudojant operatyviosios atminties.
Naudojant tokią persidengiančių registrų langų atminties organizaciją sumažėja kreipimusi į operatyviąją atmintį (lėtesnę, lyginant su registrų atmintimi) skaičius ir paspartėja MP darbas.
MP veikia, valdant sinchronizuotai jo atskirų mazgų darbą taktiniais impulsais, kuriuos generuoja taktinių impulsų generatorius. MP naudojami šie pagrindiniai valdymo organizavimo būdai:
aparatūrinis (techninis);
mikroprograminis.
Aparatūrinio valdymo MP turi kombinacinę loginę valdymo grandinę, kuri sinchronizuojama impulsais, patenkančiais iš skaitiklio. Toks valdymas yra labai greitas, tačiau tinka tik, esant paprastoms komandoms, turinčioms fiksuotą ilgį.
Mikroprograminiame valdyme naudojama mikroprograma saugoma pastoviojoje atmintyje. Kiekvieną į MP patenkančią išorinę komandą atitinka tam tikra mikrokomandų seka, kuri skaitoma iš mikrokomandų pastoviosios atminties. Mikrokomanda patenka į valdantyjį duomenų registrą, kuris formuoja vidinius ir išorinius valdymo signalus reikalingus komandai vykdyti. Šis valdymo būdas dažniausiai taikomas MP, turintiems sudėtingas kintamo ilgio komandas.
Kiekvienas MP turi tam tikrą apibrėžtą komandų rinkinį (komandų sistemą), kurių komandas jis gali vykdyti. Pagal komandų sistemoje naudojamų komandų sudėtingumą ir kiekį MP būna:
pilno komandų rinkinio (MP CISC architektūros, angl. Complete Instruction Set Computer);
sumažinto komandų rinkinio (MP RISC architektūros, angl. Reduce Instruction Set Computer ).
CISC architektūros MP būdingos sudėtingos komandos, kurios greitina duomenų apdorojimą. Svarbiausios CISC MP charakteristikos yra:
didelis komandų kiekis (iki 250);
didelis adresavimo būdų skaičius (nuo 5 iki 20);
komandos turi skirtingą ilgį (nuo 1 iki 5 baitų);
specialiosios komandos, kurios vartojamos gana retai;
komandos, kurios valdo operandus atmintyje;
specializuotosios komandos, kurios atlieka kai kurias aukšto lygio kalbų procedūras ir leidžia sumažinti mašinos kodo apimtis;
mikroprograminis (mikrokomandinis) valdymas.
RISC architektūros MP turi supaprastintą komandų rinkinį ir dauguma komandų atliekama per vieną taktą, todėl pagreitėja MP darbas. Pagrindinės RISC MP chatakteristikos:
nedidelis komandų kiekis ir paprastas jų formatas;
mažas adresavimo būdų skaičius (tiesioginis ir netiesioginis registrų, betarpiškas);
didelis MP vidinių registrų kiekis;
persidengiantys registrų langai;
kreipiamasi į atmintį tik skaitant komandas ar rašant duomenis;
viena komanda vykdoma per vieną taktą, naudojant konvejerinį apdorojimą;
aparatūrinis valdymas.
