- •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
16 Pav. Mažos mps sm asinchroninio darbo režimo laikinės
funkcionavimo diagramos
Labai svarbu, kad prasidėjus duomenų mainų ciklui, pirmojo XACK tikrinimo metu (t2 laiko momentu), kai elementas nepasiruošęs duomenų mainams, XACK būtų lygus 0. Laikas, per kurį XACK signalas turi pakisti iš loginio 1 į 0 (t1), prasidėjus duomenų mainų ciklui ( , pasikeitimas iš loginio 1 į 0), griežtai reglamentuojamas, nes teisingai XACK = 0 atpažystamas tik, kai šis lygis išsilaiko tam tikrą laiką. XACK signalo testavimas vyksta pagal CLK signalo galinį frontą. t2 laiko momentu XACK = 0, todėl MP pereina į laukimo (t3 laiko momentu WAIT tampa lygus 1). t4, t5 laiko momentais išorinis elementas, su kuriuo prasidėjo duomenų mainai, dar nepasiruošęs (XACK = 0). t6 laiko momentu elementas jau pasiruošęs (XACK = 1), todėl baigiamas duomenų mainų ciklas. t7 laiko momentu duomenys skaitomi ( strobavimo signalas) ar rašomi ( strobavimo signalas) ir MP baigia laukimo būseną (WAIT tampa lygus 0). Tokiu būdu XACK signalas prieš duomenų mainų pradžią ir pabaigoje išlieka lygus loginiam 1.
SM asinchroniniame darbo režime duomenų mainų strobavimo signalai (skaitymo, rašymo) paailginami, dėl to, kad, kai XACK = 0, MP dirba laukimo būsenoje ir strobavimo signalai išlieka lygūs 0. Naudojant signalą XACK, galima užtikrinti patikimus duomenų mainus tarp greitaeigio MP ir lėtaeigių MPS elementų (pvz. elektromagnetinis įtaisas), praplečiant strobavimo signalų trukmes ir jas pritaikant prie konkretaus elemento greitaveikos.
13. Mps tipinės struktūros
Pagal apibendrintą MPS funkcinę schemą (žr. 1 pav.) pagrindiniai elementai (CP, AĮ, Įv.Iš.Į) yra atskiros sistemos, žemesnio lygio posistemės, turinčios savo struktūrą ir organizaciją. Šiuolaikiškos MPS projektuojamos taip, kad šios posistemės sudarytų atskirus modulius: CP modulį (CPM), AĮ modulį (AĮM), Įv.Iš.Į modulį (Įv. Iš.ĮM), jungiamus prie SM. Modulis yra savarankiškas MPS elementas, fiziniame lygmenyje – atskira spausdintinė plokštė, turinti standartinius matmenis bei jungtis. Moduliai jungiami prie SM. SM yra atvira, t.y. prie jos be standartinių modulių gali būti prijungiami ir kiti naujai sukurti moduliai. SM yra standartizuotos ir jų linijų rinkinys yra apibrėžtas standartais. Projektuojant MPS yra naudojamas universalus magistralinis modulinis principas [3]. Sistemą sudaro atskiri savarankiški moduliai jungiami prie bendros SM.
MPS magistralinės struktūros apibendrinta funkcinė grandinė pateikta 17 pav.
Apibendrintoje magistralinės struktūros funkcinėje schemoje pagrindinis yra CP modulis, kuris valdo ir koordinuoja visos sistemos darbą.
AĮ posistemėje (AĮ modulyje), galima išskirti dviejų tipų atmintis:
pastoviąją atmintį (PA);
operatyviąją atmintį (OA).
17 Pav. Apibendrinta magistralinės struktūros funkcinė grandinė: cpm – centrinio procesoriaus modulis; aįm – atminties įrenginio modulis;
Įv.Iš. ĮM – įvesties ir išvesties įrenginio modulis; PA0, PA1... PAn – periferiniai adapteriai.
PA (nuo energijos šaltinio nepriklausoma atmintis) saugoma informacija, kuri išjungus maitinimo įtampa neišsitrina. Programuojamuose valdikliuose (mažose MPS) PA yra saugomos darbo programos, konstantos ir ji yra pakankamai didelės talpos.
OA (nuo energijos šaltinio priklausoma atmintis) informacija, išjungus maitinimo įtampą, išsitrina. Programuojamuose valdikliuose OA yra saugomi kintamieji bei objektiniai kodai, įrašomi darbo metu ir jos talpa nedidelė. Didelėse MPS (pvz. asmeniniuose kompiuteriuose) atvirkščiai PA talpa nedidelė, o OA – didelė.
Įv.Iš.Į posistemėje galima išskirti šiuos pagrindinius elementus:
Paprasčiausiu atveju Iv.Iš.ĮM gali sudaryti atskiri adresuojami registrai kartu su buferinėmis schemomis. Tokie registrai vadinami įvesties ir išvesties prievadais, portais;
Sudėtingesniais atvejais portai yra sujungiami į blokus ir sudaro periferinius adapterius. Jie projektuojami kaip atskiri dideli integriniai grandynai, kurie visiškai programiškai valdomi. Tokie adapteriai turi tam tikra skaičių darbo režimų, kuriuos galima programuoti;
Sudėtingais atvejais, kai valdomi specialieji išoriniai įrenginiai, realizuojantis specialiąsias įvesties ir išvesties funkcijas, kai duomenų mainai vyksta pagal sudėtingus protokolus, įvairiose ryšių komunikacinėse priemonėse naudojami įtaisai sudaryti iš keleto periferinių adapterių ir vadinami periferiniais valdikliais.
Dažniausiai periferiniai valdikliai turi nuosavą MP, kuris vadinamas koprocesoriumi. Jis veikia pagal savarankišką programą ir užtikrina duomenų mainus pagal programuojamus algoritmus. Iš esmės, tai savarankiška MPS su visais jos komponentais.
Prie SM gali būti jungiami ir papildomi moduliai, atliekantys tam tikras specifines vartotojui reikalingas funkcijas. Daugeliui duomenų mainų funkcijų yra sukurti dideli integriniai grandynai ir tik lieka pasirinkti tinkamiausią.
Lygiagretiesiems skaitmeninių duomenų mainams sukurtas lygiagretusis programuojamasis duomenų įvesties ir išvesties adapteris (angl. PIO – Programable Input/Output). Nuosekliesiems duomenų mainams – nuosekliojo ryšio adapteris (angl. USART – Universal Sinchronous/Asynchronous Reciver/Transmitter). Realaus laiko įvairioms funkcijoms realizuoti – programuojamasis intervalinis laikmatis (angl. PIT – Programable Interval Timmer). Duomenų mainus, naudojant pagrindinės programos pertrauktis, organizuoja programuojamasis pertraukčių adapteris. Tiesioginius duomenų mainus valdo tiesioginių duomenų mainų adapteris.
Pagal modulių prijungimą prie SM magistralinė struktūra gali būti [3]:
Magistralinė kaskadinė;
Magistralinė radialinė.
Magistralinės kaskadinės struktūros MPS funkcinė grandinė pateikta 18 pav. Šioje struktūroje SMV dažniausiai turi savo MP, kuris skirtas duomenų mainams tarp SM ir SMV suderinti. Duomenų mainai derinami, atsižvelgiant į portų reikšmingumo (prioritetinę) eilę. SMV duomenų mainų srautą valdo priklausomai nuo porto reikšmingumo ir užtikrina duomenų perdavimą tarp CPM ir atskirų portų.
Magistralinės radialinės struktūros MPS funkcinė grandinė pateikta 19 pav. Šioje struktūroje įvesties ir išvesties valdiklis (Įv.Iš.V) atlieka tas pačias funkcijas, kaip ir SMV magistralinėje kaskadinėje struktūroje, tačiau portai prijungti prie jo tiesiogiai (be VSM).
Nepriklausomai nuo struktūros, duomenų mainai vyksta tik tarp dviejų sistemos elementų.
