Programare microprocesoare cu un singur cip - Grigoriev V.L. Hardware și software ale sistemelor simple cu microprocesoare

INTRODUCERE 3

1 Structura logică a unui sistem cu microprocesor 4

1.1 Structura logică a unui sistem de microprocesor dezvoltat 9

2.1 Autostrăzile informaționale 12

2.2 Adresa trunchiului 12

2.3 Autostrada de date 12

2.4 Linia de control 13

3 Clasificare MP 15

Concluzia 19

REFERINȚE 21

INTRODUCERE

Dezvoltarea microelectronicii la începutul anilor 1970 a condus la apariția microprocesoarelor (MP) - un nou tip de mare circuite integrate(LSI), care sunt universale ca scop, dispozitive complete funcțional, în funcțiile și structura lor care amintesc de o versiune simplificată a procesoarelor convenționale de computer, dar având dimensiuni incomparabil mai mici. Primul mesaj despre crearea unui microprocesor a apărut în 1972. Microprocesoarele aparțin unei clase de microcircuite, a căror caracteristică este capacitatea controlul programului operarea LSI folosind un set specific de comenzi.

Domeniul de aplicare al MPBIS este neobișnuit de larg: de la sisteme de calcul complexe de înaltă performanță până la cele mai simple mașini și mecanisme.

MPBIS sunt elemente programabile universale, dintr-un număr mic dintre care este posibil să se construiască sisteme cu microprocesoare cu o structură și funcții similare calculatoarelor tradiționale.

Cu toate acestea, costul redus, simplitatea și fiabilitatea sistemelor cu microprocesoare fac posibilă integrarea acestora în diverse echipamente. Prezența unei puteri de calcul fără precedent face posibilă oferirea unor astfel de echipamente noi proprietăți și extinderea în mod semnificativ funcţionalitate. În unele cazuri, aceste proprietăți sunt atât de neobișnuite încât a existat o tendință de a caracteriza echipamentele cu microprocesor cu cuvântul „inteligent”.
^

1 Structura logică a unui sistem cu microprocesor

Microprocesor este un dispozitiv universal complet controlat de software care realizează procesul de procesare informații digitaleși controlul acestuia efectuat pe unul sau mai multe LSI.

^ Microprocesor LSI (MP LSI) – un circuit integrat care îndeplinește funcția unui MP sau a unei părți a acestuia. În esență, acesta este un LSI cu o organizare de procesor concepută pentru construirea de sisteme cu microprocesoare.

^ Kit cu microprocesor (MPC) este un set de MP și alte LSI și VLSI, compatibile în proiectare și proiectare tehnologică și destinate utilizării în comun în construcția de MP, microcalculatoare și alte instrumente de calcul. (chipset).

Structura logică (arhitectura) microprocesoarelor este axată pe obținerea universalității aplicației, a performanței ridicate și a capacității de fabricație. Versatilitate MP este determinată de posibilitatea utilizării lor diverse și este asigurată de controlul software al microprocesorului, care permite configurarea software-ului MP pentru implementarea anumitor funcții, principiul construcției modulare principale, precum și mijloace hardware și logice speciale: memorie de registru ultra-rapidă, sistem de întrerupere pe mai multe niveluri, acces direct la memorie, circuite de control I/O personalizabile prin software etc.

Relativ ridicat Performanță MP se realizează prin utilizarea LSI și VLSI de mare viteză și special solutii arhitecturale, cum ar fi memoria stivă, diferite metode de adresare, sistem de comandă flexibil etc.

Fabricabilitatea Instrumentele cu microprocesor sunt asigurate de un principiu de proiectare modulară, care implică implementarea acestor instrumente sub forma unui set de LSI-uri complete funcțional, combinate cu ușurință în dispozitive de calcul, mașini, complexe și sisteme adecvate.

Microprocesoarele cu capacități mari de calcul și logice, versatilitate și flexibilitate ridicate se caracterizează prin costuri reduse, dimensiuni unice mici și fiabilitate ridicată. Datorită acestor caracteristici, MP-urile servesc ca elemente de sistem pe baza cărora sunt create diverse sisteme de microprocesoare universale și specializate, microcalculatoare, microcontrolere programabile, încorporate direct în dispozitive, mașini, instalații tehnologice și permițând obținerea unei creșteri semnificative a nivelului de automatizarea proceselor tehnologice, economisirea de energie, materii prime, materiale, creșterea productivității și a calității muncii.

Avantajul MP ​​în comparație cu procesoarele mari este că puterea acestora din urmă este împărțită între mulți utilizatori (sarcini), în timp ce MP este destinat utilizării de către un singur utilizator (sarcină). Drept urmare, devine mult mai ușor software. În calculatoarele mari, software-ul pentru a le sprijini funcționarea (în primul rând sistemul de operare) necesită costuri generale mari, în plus față de costurile semnificative pentru hardware. Acest tip de cost este mult mai mic sau practic absent în sistemele cu microprocesoare. Avantajele MP cresc cu atât mai mult pe măsură ce capacitatea și viteza lor cresc. Deputații existenți sunt în multe privințe superiori procesoarelor convenționale și minicomputerelor care au fost produse în urmă cu 10 ani. Prin urmare, prefixul „micro” ar trebui interpretat în ceea ce privește dimensiunea și costul sistemelor MP și MP, mai degrabă decât capacitățile acestora.

Un sistem electronic real bazat pe un microprocesor conține un număr semnificativ de dispozitive funcționale, dintre care unul este un microprocesor. Toate dispozitivele de sistem au o interfață standard și sunt conectate la o singură autostradă a informațiilor, așa cum se arată în Figura 1.1.

Microprocesorul îndeplinește în sistem funcțiile unui dispozitiv de control central și a unui dispozitiv de conversie a datelor aritmetic-logic. Ca dispozitiv de control, generează secvențe de ceas și semnale logice care determină secvențele de declanșare ale tuturor dispozitivelor logice din sistem. Microprocesorul setează și efectuează secvențial microoperații pentru preluarea comenzilor programului din memoria sistemului, decodificarea și executarea lor. Tipul de operații cu microprocesor este determinat de codul operațional din instrucțiune. În conformitate cu aceste coduri, microprocesorul efectuează operații aritmetice, logice sau de altă natură asupra numerelor reprezentate în cod binar sau codat BCD.

Numerele care suferă transformări operaționale în unitatea aritmetică-logică a microprocesorului se numesc operanzi. Operandul poate fi unul dintre numerele originale, un rezultat, o constantă sau un parametru. O operație într-un microprocesor este efectuată pe unul sau doi operanzi.

Memoria unui sistem cu microprocesor este implementată fizic pe baza diferitelor memorii. Fezabilitatea tehnică și economică duce la construirea de memorie ierarhică bazată pe dispozitive semiconductoare de memorie cu acces permanent și aleatoriu și dispozitive de stocare externă magnetică.


Figura 1.1 - Structura logică a unui sistem cu microprocesor
Dispozitivele de memorie Semiconductor ROM numai pentru citire permit citirea datelor pre-înregistrate în timpul funcționării sistemului. Avea de mare viteză funcționează și sunt nevolatile, adică păstrați informațiile atunci când alimentarea este oprită.

Dispozitivele de memorie cu acces aleatoriu (RAM) semiconductor funcționează în moduri online (coincidend cu rata de funcționare a microprocesorului) de scriere și citire a datelor. Dezavantajul RAM este volatilitatea lor, adică. Pierderea informațiilor înregistrate atunci când alimentarea este oprită.

Memoria de sistem este adresabilă, adică Fiecare cuvânt este înregistrat într-o celulă de memorie cu adresa sa unică. Un cuvânt este o colecție de unități binare (biți) - biți binari interpretați ca un număr separat sau mai multe grupuri semantice de biți binari. Pentru a primi un număr din memorie sau pentru a scrie un număr în memorie, trebuie să specificați cu precizie adresa acestuia în memorie și să efectuați operația de citire a datelor din memorie.

Dispozitive de introducere a datelor (DID) - orice mijloc conceput pentru a transfera date din exterior în registrele microprocesorului sau în memorie (tastatura panoului de control, intrare de pe benzi perforate și carduri perforate, dispozitive de stocare externe pe benzi magnetice, casete, discuri, afișaje etc.) .

Dispozitivele de ieșire a datelor (DOU) sunt orice mijloc capabil să primească date transmise din registrele microprocesorului sau din celulele de memorie (afișaje, dispozitive de imprimare, dispozitive de stocare externe, panou de control etc.).

Pentru a conecta diverse dispozitive de intrare sau de ieșire (precum și dispozitive combinate de intrare-ieșire), este necesar să aduceți toate conexiunile și semnalele lor într-o formă standard, de exemplu. interfețe de coordonate. Pentru aceasta, se folosește o unitate hardware specială - un controler de informații IR, care are o interfață standard pe partea conexiunii la autostrada informațională și o interfață non-standard pe partea dispozitivelor de intrare-ieșire, de exemplu. care este un convertor de interfețe de interfață.

Microprocesorul MP, RAM și ROM, împreună cu calculatoarele destinate operațiunilor cu o persoană sau alt sistem electronic, se numesc microcalculatoare. Un microcomputer este un computer, a cărui parte centrală, constând dintr-un procesor, RAM, ROM și controler de informații, este construită pe baza unui LSI. Utilizarea LSI-urilor ca principale componente elementare oferă microcalculatoarelor astfel de avantaje față de alte tipuri de computere, cum ar fi compactitatea, fiabilitatea, consumul redus de material, consumul redus de energie și costul. Dar structura principală a microcomputerului și limitările de viteză ale microprocesorului determină caracteristicile de performanță moderate ale microcomputerului. Aceasta se referă la microcalculatoare bazate pe microprocesoare pe unul sau mai multe cipuri. În microcalculatoarele bazate pe secțiuni de microprocesor bipolar, performanța ridicată poate fi atinsă prin implementarea prelucrării datelor prin conducte și a unui control de mare viteză și foarte eficient al procesului de calcul, chiar și cu o structură de coloană vertebrală.

Un microcalculator devine o parte centrală a unui sistem electronic de monitorizare, control și calcul atunci când este introdus în bucla de control a unui anumit obiect (proces). Pentru a interfața cu un microcalculator, obiectul (procesul) trebuie să fie echipat cu senzori de stare și actuatoare. Senzorii acționează ca surse de intrare a informațiilor în microcalculator, iar actuatorii acționează ca receptori de informații de ieșire. Pentru a coordona interfețele, conectarea senzorilor și a actuatoarelor în sistem se realizează prin intermediul blocurilor de interfață senzor și actuator.

În funcție de caracteristicile obiectului (procesului) și de capacitățile microprocesorului, complexitatea fiecărui dispozitiv sau bloc este stabilită în faza de proiectare. Părți ale sistemului se pot dezvolta sau degenera, dar trebuie asigurate principiu general construcția și operarea tuturor sistemelor electronice de control. Datorită relației directe dintre funcțiile software și hardware, la construirea unui sistem electronic, este posibil să se dezvolte fie hardware-ul, fie să se complice software-ul. Aceste circumstanțe determină posibilitățile larg răspândite de utilizare a sistemelor de control cu ​​microprocesor în aproape toate domeniile.

^

1.1 Structura logică a unui sistem de microprocesor dezvoltat

Figura 1.2 prezintă un generalizat structura logica micro-computer, în care controlerele programabile sunt utilizate ca toate unitățile de control ale dispozitivelor computerizate, de exemplu, controlerul panoului de control al sistemului KSPU. Este folosit pentru a lucra cu panoul de control al sistemului SPU. Toate dispozitivele de intrare-ieșire sunt controlate de controlere ale dispozitivelor de intrare-ieșire KUVV sau controlere de grup ale dispozitivelor de intrare-ieșire GrKUVV.

Dispozitivele de stocare RAM și ROM numai pentru citire sunt controlate folosind controlerele RAM și KPZU corespunzătoare. Cu acest tip de organizare computerizată, procesorul central (CPU) oferă controlerelor programabile doar informații de control de nivel înalt detaliate de controler. Prin urmare, cantitatea de informații de control pe autostrada informațională a sistemului este redusă drastic, ceea ce face posibilă creșterea ratei de transfer de date.

În esență, această diagramă prezintă un sistem de calcul multiprocesor în care, în limită, controlerul are aceleași capacități ca și procesorul central.

Cost redus și fiabilitate ridicată Pentru atingerea parametrilor doriti, LSI-urile fac posibila introducerea procesarii distribuite in toate subsistemele unui sistem informatic, ceea ce determina noi modalitati de organizare a proceselor de calcul in sisteme cu control descentralizat si procesare a informatiilor.

Figura 1.2 - Structura logică generalizată a unui microcalculator cu controlere cu microprocesor

^

2 Interfață cu microprocesor

Pentru a include un microprocesor în orice sistem de microprocesor, este necesar să se stabilească principii și mijloace uniforme de interfațare cu alte dispozitive ale sistemului, de exemplu. interfață unificată.

O interfață unificată este un set de reguli care stabilesc principii uniforme pentru interacțiunea dispozitivelor unui sistem cu microprocesor. Interfața include hardware pentru conectarea dispozitivelor (conector și conexiuni), nomenclatura și natura conexiunilor, software care descrie natura semnalelor de interfață și diagrama de timp a acestora, precum și o descriere a parametrilor electrici ai semnalelor.

Figura 2.1 - Structura logică generalizată a unui microcalculator cu controlere cu microprocesor
Figura 2.1 arată schema generala interacțiunea microprocesorului MP cu dispozitivele de intrare-ieșire ale dispozitivelor aeropurtate și RAM în sistemul de microprocesor. Comunicarea între MP și dispozitivul aeropurtat necesită cinci grupuri de comunicații furnizate prin terminalele carcasei. Grupul de magistrală 1 transmite codul de selecție a dispozitivului (adresa), magistrala 2 transportă semnalul de comandă de citire-scriere, magistrala 3 transportă semnalul de solicitare a întreruperii, magistralele 4 și 5 sunt utilizate pentru a transfera date de la procesor la dispozitivul de bord și de la aeropurtat. dispozitiv către MP. Conexiunea dintre MP și RAM conține și cinci grupuri de conexiuni care trebuie asigurate prin bornele carcasei MP. Grupul de magistrală 6 transmite adresa către RAM, magistrala 7 este necesară pentru controlul de citire/scriere, semnalele de pe magistrala 8 primesc comenzi către procesor, iar magistralele 9 și 10 asigură transferul de date de la RAM la MP și înapoi.
^

2.1 Autostrăzile informaționale

La proiectarea LSI-urilor și a dispozitivelor bazate pe acestea, este necesar să se țină cont de complexitatea implementării conexiunilor ramificate între diverse noduri (blocuri) și dispozitive. Prin urmare, structurile de comunicație de coloană vertebrală, la care sunt conectate intrările și ieșirile nodurilor electronice (blocuri), au fost implementate practic și au devenit larg răspândite. Autostrada informațională (MI) este un ansamblu de conductori (autobuze) sau cabluri ale căror proprietăți fizice asigură transmiterea semnalelor informaționale de înaltă frecvență. Componente electronice(blocurile) conectate la autostrada informațională trebuie să aibă anumite proprietăți, în caz contrar este posibilă formarea de conexiuni în scurtcircuit și sarcini cu rezistență scăzută.
^

2.2 Adresă trunchi

Într-un sistem simplu cu microprocesor, doar microprocesorul poate genera adresele informațiilor transmise în sistem. Prin urmare, autostrada de adresă (MA) este unidirecțională: microprocesorul generează semnale de cod de adresă, iar alte dispozitive conectate la MA pot doar să le perceapă, efectuând continuu microoperația de identificare a codului de adresă.

Numărul magistralelor de adrese coincide cu lățimea codului de adresă transmis. Dacă se folosește codul pe 16 biți, sistemul poate genera
=65536 adrese. Toate acestea se pot referi la adrese de celule de memorie sau la adrese de celule de memorie și adrese de registru de date ale dispozitivelor I/O.
^

2.3 Autostrada de date

Microprocesorul, precum și RAM, VRAM și afișajele pot primi sau transmite date. Alte dispozitive pot fie să primească numai date, cum ar fi un dispozitiv de imprimare, fie doar să le scoată, cum ar fi un ROM.

Pentru a oferi capabilități complete ale sistemului, coloana vertebrală de date este bidirecțională. Capacitatea sa este determinată de capacitatea microprocesorului și este egală cu 2, 4, 8, 16 și 32 de biți. Dacă microprocesorul prelucrează datele utilizând programe pe dublu biți, atunci cuvântul dublu este trimis în două cicluri, adică. are loc multiplexarea în timp (aceasta a fost folosită și în primele microprocesoare când a fost folosită o adresă comună și o coloană vertebrală de date).
^

2.4 Linia de control

Microprocesorul și unele magistrale de dispozitiv I/O generează semnale de control pentru sincronizarea și determinarea operațiunilor dispozitivului. Aceste semnale sunt transmise printr-un set de autobuze unidirecționale, care formează în general o autostradă cu semnal de control (MU). Toate semnalele de control intră sistem electronic de acord cu semnalele sistemului sincronizare Aceste semnale definesc începutul și secvența tragerii, așa cum diverse dispozitive sistem, precum și diverse blocuri și noduri din interiorul tuturor cipurilor LSI. Pentru sarcina secvența principală sincronizarea impulsurilor, de regulă, se utilizează un cuarț extern sau un generator bazat pe acesta. Semnalele de sincronizare emise de microprocesor sunt monofazate, mai rar bifazate.

Fiecare microprocesor are sistem unic semnale de control. Prin urmare, o descriere specifică a tuturor magistralelor MU, precum și a pinout-ului terminalelor carcasei, este dată în documentația tehnică pentru un anumit microprocesor. Cu toate acestea, aproape toate microprocesoarele împărtășesc semnale comune. Printre acestea se numără semnalul „Resetare” - semnal de intrare, generat pe panoul de control al sistemului. Conduce la resetarea tuturor registrelor interne ale microprocesorului și la încărcarea contorului programului - un nod care determină succesiunea de execuție a comenzilor programului - cu valoarea inițială a adresei la care este scrisă prima comandă de program.

Cea mai importantă funcție de control a microprocesorului este determinarea fluxurilor de date în sistem. Microprocesorul reamintește cuvintele de comandă din memorie în timp ce le citește, accesează memoria pentru operanzi sau dispozitive externe pentru date noi, poate scrie rezultatul unei operații în memorie sau, după ce a generat o serie de date, poate determina necesitatea de a le scoate pe dispozitive externe. Când microprocesorul trimite date către un dispozitiv, are loc o operație de scriere a datelor, iar când primește date de la un dispozitiv, citește date din registrul său de informații și efectuează o operație de citire a datelor. Pentru a seta direcția transferului de date de-a lungul MD, microprocesorul generează semnale „Citire/Scriere” transmise pe una dintre magistralele MU.

Specificitatea dispozitivelor de intrare/ieșire a datelor este de așa natură încât informațiile se pot pierde dacă MP nu efectuează o operațiune cu dispozitivul în timp util. Prin urmare, aceste dispozitive generează semnale „Solicitare întrerupere a procesorului”, alertând microprocesorul într-o stare gata (sau defectă). Microprocesorul are o intrare pentru a primi cel puțin un semnal „Solicitare întrerupere a procesorului”. Dacă cererea este acceptată, MP informează sistemul generând un semnal de răspuns „Solicitare de întrerupere satisfăcută”.

Vitezele diferite de operare ale dispozitivului I/O și ale microprocesorului necesită oprirea procesorului în timp ce pregătesc datele în dispozitivul extern. Prin urmare, modul de funcționare de așteptare al microprocesorului este determinat de semnalul extern „Date pregătite (datele nu sunt pregătite)”. În total, până la o duzină (sau mai multe) semnale de control diferite sunt transmise către MU.

^

Clasificare 3 MP

MP este caracterizat un numar mare parametrii, deoarece, pe de o parte, este funcțional un procesor digital complex controlat de software, adică un dispozitiv de calculator și, pe de altă parte, un circuit integrat sau circuite cu un grad ridicat de integrare a elementelor, de ex. dispozitiv electronic.

În general, deputații pot fi clasificați în funcție de diverse caracteristici, principalele fiind:

1) tipul de tehnologie microelectronică utilizată la fabricarea MP LSI-urilor.

După implementarea tehnologică, acestea se disting:

Tehnologii R-MDP (primele tipuri de MP), tehnologii n-MDP, tehnologii KMDP, tehnologii TTL, tehnologii ESL, tehnologii I 2 L. Cu excepția tehnologiei r-MDD și a utilizării limitate a tehnologiei TTL, toate celelalte sunt utilizate efectiv în fabricarea LSI și VLSI.

2) numărul de cristale care formează MP (single-cristal și multi-cristal).

MP-urile cu un singur cip au o adâncime fixă ​​de biți fără posibilitatea de a o mări, precum și un sistem de comandă fix, deoarece microprogramele corespunzătoare comenzilor sunt „cablate” în interiorul cipului. MP-urile cu mai multe cipuri au capacitatea de a-și crește adâncimea de biți datorită conexiune serială același tip de elemente de microprocesor (secțiuni), implementate sub formă de LSI-uri separate.

O caracteristică distinctivă a MP-urilor cu mai multe cipuri în comparație cu cele cu un singur cip este, de asemenea, că nu au un sistem de comandă fix. Utilizatorul are capacitatea de a-și crea propriul sistem de comandă.

Cu toate acestea, design dispozitive de calcul bazat pe MT-uri multicip este mai complex.

3) tip de caz (sunt aproximativ două duzini);

4) adâncimea de biți. Capacitatea de biți MP arată câți biți de date poate

Primește și procesează în registrele sale la un moment dat (într-un ciclu de ceas).

Adâncimea de biți a MP determină în mare măsură nivelul de complexitate al sarcinilor care pot fi rezolvate folosind un set specific de MP.

MT-urile cu descărcare scăzută sunt utilizate în dispozitivele cu sistem zecimal binar notație și viteză redusă de prelucrare a datelor (calculatoare, case de marcat, contoare de parametri etc.).

MP-urile de opt și șaisprezece biți au capacități de calcul semnificative și sunt utilizate în procesarea informațiilor alfanumerice, în sisteme de comunicații, mașini CNC etc.

Microprocesoarele high-bit (32 și mai mari) vă permit să creați programe mai compacte cu un minim de instrucțiuni, ceea ce reduce drastic costul programelor de depanare, care poate ajunge la 50...70% din costul tuturor mijloacelor tehnice ale microprocesorului complex.

5) performanță (frecvența ceasului, timpul de execuție a comenzii). Executarea fiecărei comenzi necesită un anumit număr de cicluri de ceas. Cu cât frecvența ceasului este mai mare, cu atât MP poate executa mai multe comenzi pe unitatea de timp, cu atât performanța sa este mai mare.

Performanța unui MP este determinată de timpul necesar pentru a rezolva o serie de probleme de testare și depinde de viteza de efectuare a operațiilor simple, capacitatea de biți, numărul de registre de uz general, structura circuitelor de intrare-ieșire și alte factori.

6) capacitate de memorie adresabilă. (volum).

Ea caracterizează capabilități informaționale Complex MP (ajunge în prezent la zeci de GB) și ținând cont de gama largă de dispozitive periferice conectate la MP ca parte a complexului (blocuri RAM capacitate mare, dispozitive de stocare pe flexibil discuri magnetice, CD-uri, imprimante, scanere etc.), organizarea adresei memoriei este una dintre cele mai importante probleme în proiectarea unui complex MP.

7) tipul dispozitivului de control;

8) sistem de comandă (număr de comenzi, metode de adresare).

În timpul funcționării, MP-ul deservește datele aflate în registrele sale (celule interne), în câmpul RAM, precum și datele aflate în porturi externe procesor. Acesta interpretează unele dintre date direct ca date, unele dintre date ca date de adresă și altele ca comenzi. Setul tuturor comenzilor posibile pe care MP le poate executa asupra datelor formează așa-numitele sistem de comandă MP. Parlamentarii aparținând aceleiași familii au aceleași sisteme de comandă sau similare. Parlamentarii care aparțin unor familii diferite diferă în sistemele de comandă și nu sunt interschimbabili.

Există parlamentari cu un sistem de comandă extins și redus. Cu cât setul de comenzi ale sistemului MP este mai larg, cu atât înregistrarea formală a comenzii este mai lungă (în octeți), cu atât durata medie de execuție a unei comenzi este mai mare, măsurată în cicluri de operare MP. De exemplu, sistemul de instrucțiuni al procesorului Intel Pentium are în prezent peste o mie de echipe diferite. Se numesc astfel de procesoare procesoare cu set de instrucțiuni extins– Procesoare CISC (CISC – Complex Instruction Set Computer).

Spre deosebire de procesoarele CISC, procesoarele au apărut la mijlocul anilor 80 Arhitecturi RISC(Computer cu set de instrucțiuni redus) – procesoare cu set de instrucțiuni redus.

Cu această arhitectură, numărul de comenzi din sistem este mult mai mic și fiecare dintre ele se execută mult mai rapid.

Procesoarele CISC sunt utilizate în sistemele de calcul de uz general.

Procesoarele RISC sunt folosite în sisteme de calcul specializate sau dispozitive axate pe efectuarea de operațiuni uniforme.

AMD produce MP-uri din familia AMD-K6, care se bazează pe un nucleu intern realizat conform arhitecturii RISC și o structură externă realizată conform arhitecturii CISC. Astfel, au apărut MP-uri care erau compatibile cu x86 MP-uri, dar aveau o arhitectură hibridă.

Sistemul de comandă MP, de regulă, conține următoarele tipuri de comenzi:


  1. comenzi de calcul (aritmetice și logice);

  2. comenzi de transfer de date;

  3. comenzi de control (tranziții condiționate și necondiționate);

  4. comenzi I/O;

  5. comenzi pentru apelarea subrutinelor;

  6. comenzi auxiliare;
În conformitate cu partea de adresă a instrucțiunii, memoria, registrul sau dispozitivul I/O pot fi accesate.

Apropo, MP x86 are cel mai complex sistem de comandă din lume.

9) numărul de niveluri de întrerupere;

10) capacitatea de a accesa direct memorie;

11) numărul și nivelurile tensiunilor de alimentare;

Pe măsură ce MF se dezvoltă, tensiunea de alimentare scade treptat. Modelele timpurii de procesoare x86 aveau o tensiune de alimentare de 5V. Odată cu trecerea la procesoarele Intel Pentium, acesta a fost coborât la 3,3V, iar în prezent este mai mic de 3V. Mai mult, miezul MP ​​este alimentat de o tensiune redusă de 2,2V. Reducerea tensiunii de funcționare face posibilă reducerea distanței dintre elementele structurale din cristalul MP ​​la zece miimi de milimetru fără teama de defecțiune electrică.

12) niveluri de semnal;

13) consumul de energie;

În prezent, variază de la 10...20 mW la 1...3 W pentru MP moderni, în funcție de munca efectuată.

14) interval de temperatură;

15) imunitate la zgomot;

16) capacitatea de încărcare;

17) fiabilitate etc.;

În ultimii 20 de ani, tehnologia MP, arhitectura și circuitele s-au dezvoltat foarte rapid. Această dezvoltare a fost marcată de competiția dintre MDP și tehnologiile microelectronice bipolare.

Concluzie

Microprocesoarele sunt utilizate pe scară largă în sistemele de testare și control; sisteme de control al proceselor; software de control al mașinilor; monitorizarea stărilor liniei de comunicație; subsisteme ale sistemelor de procesare și control al informațiilor primare în scopuri industriale și sisteme de automatizare pentru experimente științifice; subsisteme pentru controlul echipamentelor periferice ale sistemelor și complexelor informatice; dispozitive de calcul specializate.

Microprocesoarele ieftine sunt folosite în ceasuri, calculatoare, camere de film și foto, radiouri și televizoare. Microprocesoarele (de exemplu, microprocesoarele cu un singur cip din seria K580) sunt instalate în încuietori și clopote, aparate și dispozitive de uz casnic.

Microprocesoarele mai scumpe concurează cu succes cu unitățile de control mecanice și electromecanice cu logica „hard” sau „hardware”.

Să luăm, de exemplu, o unealtă mecanică comună și utilizată pe scară largă - un burghiu electric. Microprocesorul încorporat în acesta vă permite să țineți cont de rezistența la găurire și să modificați automat viteza de rotație în funcție de duritatea materialului prelucrat. Când folosiți un burghiu pentru a strânge șuruburile și piulițele, microprocesorul oprește alimentarea motorului electric până la finalizarea operațiunii, care este finalizată din cauza inerției.

Producția de jocuri electronice folosind microprocesoare și microcontrolere se dezvoltă rapid. Nu numai că generează mijloace interesante de divertisment, dar face și posibilă testarea și dezvoltarea concluziilor logice, a dexterității și a vitezei de reacție. Jocurile cu sau fără indicator TV oferă funcții complexe datorită utilizării de microprocesoare logic mai puternice, dar accesibile.

Microprocesoarele sunt încorporate efectiv în afișaje, console și terminale pe ecran, unde li se atribuie funcțiile de editare a datelor, control,

Generarea de caractere și stocarea și reproducerea imaginilor.

Microprocesoarele preiau funcțiile de preprocesare a informațiilor de la dispozitive externe, de conversie a formatelor de date și controlere ale dispozitivelor electromecanice externe. În aceste scopuri, sunt utilizate microprocesoare din seriile K580, K536, K1803.

Microprocesoarele din echipamentele de comunicație fac posibilă efectuarea de control al erorilor, codificarea și decodificarea informațiilor și controlul dispozitivelor transceiver. Utilizarea microprocesoarelor va face posibilă reducerea de mai multe ori a lățimii necesare a canalelor de televiziune și telefon și crearea unei noi generații de echipamente de comunicații.

Instrumentele cu microprocesor rezolvă problema tehnică complexă a dezvoltării diverselor sisteme de colectare și procesare a informațiilor, unde funcții generale se rezumă la transmiterea mai multor semnale către un singur centru pentru evaluare și luare a deciziilor. De exemplu, în medicină, pentru a monitoriza starea pacienților grav bolnavi non-stop, este necesar să se măsoare periodic tensiunea arterială, frecvența cardiacă și respiratorie, parametrii electrocardiogramei etc. Un sistem centralizat bazat pe un computer mare sau minicalculator în aceste scopuri se dovedește a fi greoi și destul de costisitor. Un sistem de diagnosticare distribuită bazat pe microprocesor are o capacitate mare de supraviețuire, este simplu în organizare și permite o bună performanță economică.

Rezumând exemplele considerate de introducere a tehnologiei microprocesoarelor, putem pune întrebarea astfel: progresul științific și tehnologic nu este posibil fără o tranziție de la metodele evolutive utilizate anterior (îmbunătățirea tehnologiile actuale, modernizarea parțială a mașinilor și echipamentelor etc.) la schimbări revoluționare, la sisteme tehnologice fundamental noi care asigură cea mai mare eficiență.

Acest lucru necesită reechiparea întregii industrii bazată pe realizările moderne ale științei și tehnologiei. Sistemele cu microprocesoare joacă un rol important în rezolvarea acestei probleme.

^

LISTA BIBLIOGRAFICĂ


  1. Novikov Yu.V. [Text] Fundamentele circuitelor digitale. Elemente de bază și diagrame. Metode de proiectare.-M.: 2001.

  2. Novikov Yu.V., Skorobogatov P.K. [Text] Fundamentele tehnologiei microprocesoarelor. Curs de curs. M.: INTUIT.RU, 2003.

  3. Pukhalsky G.I., Novoseltseva T.Ya. [Text] Dispozitive digitale: manual. manual pentru colegiile tehnice. - Sankt Petersburg: 2006.

  4. Bukreev I.N., Goryachev V.I., Mansurov B.M. [Text] Circuite microelectronice ale dispozitivelor digitale. -M.: Radio și comunicare, 2000.

AGENȚIA FEDERALĂ PENTRU EDUCAȚIE

INSTITUȚIA DE ÎNVĂȚĂMÂNT DE STAT DE ÎNVĂȚĂMÂNT PROFESIONAL SUPERIOR

UNIVERSITATEA TEHNICĂ DE STAT DON

HARDWARE ȘI SOFTWARE ALE SISTEMELOR DE MICROPROCESARE SIMPLE

Instrucțiuni

pentru munca de curs pe secțiune

„Electronică și tehnologie cu microprocesoare”

Rostov-pe-Don 2006

1. Scopul lucrării

Dobândirea deprinderilor practice diagrame bloc structuraleși liste de programe în limbaj de asamblare pentru sisteme simple cu microprocesoare (sisteme MP) pentru controlul diferitelor procese.

2. Structuri tipice ale diagramelor bloc ale algoritmilor de prelucrare a datelor

Pentru a finaliza cu succes temele de curs, studenții trebuie să se familiarizeze cu setul de comenzi al procesorului KR580 /1/, precum și cu cerințele pentru compilarea programelor în limbajul de asamblare /2/, /3/, /4/, destinate microprocesorului automat. sisteme de control diverse procese de măsurare şi tehnologice.

Setul de instrucțiuni pentru microprocesor este baza pentru proiectarea diagramei bloc de instrucțiuni ale mașinii. Această schemă este urmată doar de scrierea și codarea programului. Prin urmare, diagrama bloc trebuie să fie atât de detaliată încât fiecare bloc să poată fi reprezentat de cel mult trei comenzi.

Orice diagramă bloc poate fi construită prin combinarea mai multor blocuri de bază: funcțional (secvențial), buclă (repetiție), ramificare (soluție alternativă).

În fig. 1 prezintă blocuri tipice de diagrame bloc ale algoritmilor care sunt utilizați pe scară largă în programele de procesare a datelor.

Structura secvenţială este cea mai frecventă (Fig. 1, a); înseamnă că acțiunile trebuie efectuate una după alta. Arată în Fig. 1, b structura IF-THEN-ELSE este utilizată în cazurile în care este necesară implementarea unei tranziții software la una din cele două proceduri de calcul în funcție de îndeplinirea unei condiții care este verificată. Structura IF-THEN (Fig. 1, c) este o simplificare a celei anterioare și este utilizată în cazurile în care este necesară implementarea unei proceduri de calcul în funcție de condiția testată. Structura DO-WHILE este utilizată pentru a verifica condiția de încheiere a ciclului (Fig. 1, d). Structura REPEAT-PÂNĂ-PÂNĂ (Fig. 1, e) este similară celei anterioare, dar ordinea operatorilor este diferită: procedura se realizează înainte de verificarea condiției. Structura PROCESS–WHILE (Fig. 1, f) este o combinație a celor două structuri anterioare. Și în sfârșit, în fig. 1, g prezintă structura DO-DEPENDING-ON, cu ajutorul căreia alegerea acțiunii se realizează în decizii cu mai multe valori și care este folosită pentru a înlocui lanțuri de structuri IF-THEN-ELSE.

Toate blocurile listate în diverse combinatii găsite în algoritmii de executare a programelor de prelucrare a datelor.

3. Implementarea software funcții tipice management

La proiectarea sistemelor de control MP pentru diferite procese de măsurare sau tehnologice, apare necesitatea de a programa astfel de proceduri standard de control precum

– sondarea stării senzorului binar;

– așteptarea unui eveniment;

– scanarea unui grup de senzori de poziție;

– formarea de întârzieri;

– găsirea valorii minime sau maxime a matricei de parametri de intrare;

– operațiuni de sortare etc.

Mai jos sunt câteva modalități de software pentru funcțiile standard de control al procesului în legătură cu MP KR580VM80.

În fig. 2. prezintă o diagramă de conectare a contactului senzorului binar la portul de intrare al sistemului MP. Dacă contactul S este deschis, atunci un semnal logic este prezent la intrarea D5 a portului de intrare; dacă contactul S este închis, atunci D5 este zero logic. Este necesar într-o anumită parte a programului de control al sistemului MP să irigați valoarea semnalului la intrarea D5 a portului 04 și, în funcție de valoarea acestuia (0 sau 1), să transferați controlul într-un fragment de program cu o etichetă, pt. exemplu, LABEL A (dacă D5 = 0) sau la adresa marcată eticheta LABEL B (dacă D5=1).

Orez. 2. Circuit de interogare cod binar

În fig. 3, a este o diagramă bloc, iar în Fig. 3, b programul „INPKEY” (introducerea tastei), implementând procedura de interogare a unui senzor binar. Numele simbolic al programului „INPKEY” este folosit ca etichetă de comandă inițială pentru acel program. Când programați folosind subrutine, puteți accesa această subrutină de sondare a senzorului binar folosind comanda: CALL, adresa INPKEY.

Orez. 3. Diagrama bloc și listarea programului de sondare a senzorilor binari

Controlorii obiectelor tehnologice operează în timp real și, prin urmare, funcționarea lor este determinată de evenimentele care au loc în obiectul de control. Cel mai adesea, evenimentele din obiectul de control sunt înregistrate folosind senzori binari; de exemplu, prin închiderea sau deschiderea comutatorului zero la deplasarea corpului executiv al obiectului de control.

Dacă, în timpul execuției programului de control, este necesară suspendarea executării comenzilor acestuia până când, ca urmare a proceselor care au loc în obiectul de control, contactul S al senzorului de deplasare se închide, atunci puteți utiliza o subrutină cu numele simbolic „NUNT” (ambuladă), a cărei diagramă bloc este prezentată în Fig. 4, b.

Orez. 4. Schema de conectare a contactului senzorului binar la portul de intrare al sistemului MP (a) și schema bloc a algoritmului de așteptare a evenimentului

Programul principal al sistemului MP poate apela în mod repetat această subrutină folosind comanda CALL, adresa NUNT. Din schema bloc a algoritmului este clar că programul trebuie să interogheze constant valoarea semnalului la intrarea D2 a portului 07 până când aceasta devine egală cu zero (contactul senzorului este deschis), iar în acest caz să continue executarea programului principal al sistem MP. Dacă trecerea la bucla de așteptare a evenimentului din programul principal se realizează folosind comanda CALL, adresa NUNT, apoi revenirea la aceasta din procedura NUNT se realizează folosind comanda RET la sfârșitul subrutinei.

În mod similar, prin utilizarea diferitelor coduri de mască în comanda ANI, este posibilă monitorizarea mai multor evenimente detectate de diferiți senzori binari conectați la alte intrări ale portului de intrare a informațiilor.

În fig. 5. prezintă o diagramă de conectare a sistemului MP la un actuator al obiectului de control prin portul de ieșire a informațiilor.

Orez. 5. Circuit de generare a semnalului de control

Să presupunem că acest actuator funcționează pe principiul „pornire-oprire”, adică. poate fi controlat de semnalul binar de ieșire al sistemului MP („1” – activare, „0” – dezactivare).

Subrutina pentru generarea unei astfel de acțiuni de control este simplă și constă doar din două comenzi. Pentru a porni actuatorul, utilizați subrutina „ON”:

ON: MVI A, 02; încărcați codul 000.0010 în baterie

OUT, 03; emite un octet de control la portul 03.

Pentru a opri actuatorul, puteți utiliza subrutina „OFF”:

OPRIT: XRA A; reseta bateria

OUT, 03; octetul de ieșire 0000 0000 la portul 03.

(ieșiți conținutul octetului bateriei 0000 0000 la portul 03).

Dacă alte actuatoare sunt conectate la cei șapte pini rămași ai portului de ieșire 03, nu se formează o acțiune de control binară, ci un octet de cuvânt de control, în care fiecărui bit îi este atribuit un 0 sau 1, în funcție de mecanismele care trebuie dezactivate sau pornite.

Implementarea software a temporizării folosește metoda buclelor de program, în care un număr este încărcat în orice registru al blocului de registru de uz general (ROB) al microprocesorului, care este redus cu câte unul cu fiecare trecere a buclei. Aceasta continuă până când conținutul registrului de contor devine egal cu zero, care este interpretat de program ca momentul în care bucla iese. Timpul de întârziere este determinat de numărul încărcat în registrul contor și timpul de execuție a instrucțiunilor care formează ciclul. Diagrama algoritmului unui astfel de program este prezentată în Fig. 6.

Orez. 6. Schema bloc a întârzierii

Programul are denumirea simbolică „TIME” și, dacă este apelat de programul principal cu comanda CALL, adresa TIME, trebuie completată cu comanda de retur RET.

Să presupunem că într-un sistem MP care utilizează o frecvență de ceas de 2 MHz (ceasul în acest caz este de 0,5 μs), este necesar să se implementeze o întârziere de 250 μs. Un fragment dintr-un program care implementează o întârziere de timp trebuie formatat ca subrutină, deoarece se presupune că programul principal îl va accesa de multe ori.

Textul programului care afișează structura algoritmului prezentat în Fig. 6, următorul:

COUNT: DCR B; scade cu 1 continut

registru B JNZ, adresa COUNT; repetați ciclul dacă B≠0

RET; reveniți la programul principal dacă B=0.

Pentru a obține întârzierea necesară este necesară determinarea valorii numărului X încărcat în registrul B. Determinarea numărului X se realizează pe baza timpului de execuție a instrucțiunilor care formează această subrutină. Este necesar să se țină cont de faptul că comenzile MVI B, X și RET sunt executate o singură dată, iar numărul de repetări ale comenzilor DCR B și JNZ, adresa COUNT este egal cu numărul X încărcat în registrul B. În plus, subrutina de întârziere este accesată cu ajutorul comenzii CALL, adresa TIME, al cărei timp de execuție trebuie să fie luat în considerare și la calcularea întârzierii. Descrierea comenzilor MP KR580IK80 indică câte cicluri de ceas ale frecvenței principale de sincronizare este executată fiecare comandă MP. Pe baza acestor date putem scrie:

CALL, TIME – 17 cicluri de ceas – 8,5 µs;

MVI B, X – 7 cicluri de ceas – 3,5 µs;

DCR B – 5 cicluri de ceas – 2,5 µs;

JNZ, adresa COUNT – 10 cicluri de ceas – 5,0 µs;

RET – 10 cicluri de ceas – 5,0 µs.

Astfel, o dată comenzi executabile(CALL, MVI, RET) în această subrutină necesită 17 µs (8,5+3,5+5,0). Prin urmare, pentru a obține întârzierea necesară de 250 μs, sunt necesare comenzile DCR B și JNZ, COUNT de atâtea ori încât timpul lor de execuție este de 233 μs, adică. (250–17). Totuși, timpul de execuție pentru această pereche de comenzi este (2.5+5.0). Prin urmare, dacă luăm X=31, este posibil să obținem o întârziere de 232,5 μs.

Dacă acuratețea implementării subrutinei a unei întârzieri de 250 μs cu o eroare de 0,5 μs satisface condițiile problemei, atunci dezvoltarea programului se încheie.

Pe baza calculului de mai sus, scriem textul subrutinei TIME:

JNZ, adresa COUNT; ciclu dacă B≠0

RET; reveni la programul principal.

Dacă acuratețea reprezentării unui interval de timp de 250 μs cu o eroare de 0,5 μs nu satisface dezvoltatorul, există două opțiuni:

– implementați o subrutină pentru o întârziere exactă de 50 μs și repetați apelul său de cinci ori;

– prin introducerea de operațiuni NOP goale în subrutină și modificarea corespunzătoare a setului de comenzi (pentru a elimina nepotrivirea timpului de 0,5 µs) pentru a asigura o sincronizare precisă.

În multe cazuri în care sunt utilizate sisteme MP, este necesar să se creeze întârzieri mari de timp (secunde, minute, ore etc.). Este imposibil să faceți acest lucru la o frecvență de 2 MHz folosind metoda descrisă anterior, deoarece capacitatea maximă a perechii de registre FFFF nu este suficientă pentru a reprezenta numărul X suficient pentru a genera o întârziere de 1 secundă. O întârziere atât de mare pentru MP poate fi generată folosind metoda buclei imbricate (după cum se arată în Fig. 7).

Pentru a obține o întârziere de 1 minut, principalul program de control poate apela subrutina ONESEC de 60 de ori. Pentru a face acest lucru, numărul 60 este încărcat, de exemplu, în registrul B, care funcționează ca un numărător de secunde decremental, iar după fiecare rulare a subrutinei ONESEC conținutul acestuia este redus cu 1. Textul programului ONESEC este dat mai jos.

ONESEC: MVI B, FF; contor de buclă exterior

L1: MVI C, FB; contor de buclă intern

L2: NOP; sincronizare precisă

buclă interioară

DCR C; decrementarea contorului buclei interioare

JNZ, adresa L2; revenirea la bucla interioară dacă C≠0

DCR B; scaderea contorului buclei exterioare

JNZ, adresa L1; reveniți la bucla exterioară dacă B≠0

Orez. 7. Algoritm de întârziere de 1 secundă

În Fig. 8. Sursa datelor de intrare este portul de intrare cu adresa simbolică NN, 8100 este adresa de pornire a matricei de date, registrul C este folosit ca contor de date și perechea de registre HL este utilizată de instrucțiuni cu adresare indirectă a registrului ca indicator de date. ; ETX – terminator „sfârșitul matricei”.

Orez. 8. Procedura tipică de colectare a datelor

Programul arată astfel:

LXI H, 8100; înregistrarea adresei de început

MVI C, C, 00; contor = 0

SALVARE: IN, NN; date de intrare de la port la A

MOV M, A; transfer de date A → celulă RAM,

a cărui adresă este în (H+L)

INX H; (H+L) = (H+L+1)

INR C; contor = contor+1

SUI, ETX; verificarea terminatorului

Dacă numărul de cuvinte de date este cunoscut și stocat în celula cu adresa 81N0, atunci programul de achiziție de date va arăta astfel:

LDA, 81N0; redirecționarea conținutului 81N0 → (A)

MOV C, A; contor = lungimea matricei: A → (C)

DCR C; counter = counter-1

JNZ, adresa SAVE; colectarea continuă dacă nu 0

Să ne uităm la câteva exemple de procesare a unei matrice de date.

LXI H, 8100; stocarea în (H+L) adresa de start

matrice de date

SUB A; resetarea bateriei: (A) ← 0

ADNU: Adăugați M ; adăugarea elementului M+(A) → (A)

INX H; trece la următoarea adresă

(H+L) ← (H+L+1)

DCR B; scădere contor: (V) ← (V-1)

JNZ, adresa ADDN; organizarea buclei dacă nu 0

M (NUMĂRĂ) → (A)

MOV B, A; organizarea unui cont în registrul B:

URMĂTORUL: DCR B; scădere contor: (V) ← (V-1)

JNZ, adresa DONE; verificarea sfârșitului buclei: dacă 0,

apoi săriți la adresa etichetei DONE

INX H; (H+L) ← (H+L+1)

CMP M; comparatie cu maximul

JMP, adresa NEXTE;


Literatură

1. G.I. Pukhalsky. Programarea sistemelor cu microprocesoare. Manual pentru Universități - M. Politehnică, 2002.

2. V.S. Yampolsky. Fundamentele automatizării și tehnologiei computerelor electronice. – M.: Educație, 1991.

3. L.N. Ananchenko, I.E. Rogov. Întocmirea de algoritmi și programe în limbaj de asamblare pentru controlul proceselor tehnologice: Metoda. instrucțiuni - Rostov-pe-Don: DSTU, 1993.

4. L.N. Ananchenko. Set de comenzi pentru microprocesor KR580IK80: Metodă. instrucțiuni - Rostov-pe-Don, RISHM, 1991.

Tema 1.6 Software pentru sisteme cu microprocesoare
LUCRARE DE LABORATOR Nr 3

Înregistrarea și executarea de programe simple
Obiective de invatare: studiul executării comenzilor individuale și a programelor simple de către un microprocesor; utilizarea diferitelor metode de adresare în programe; programe de înregistrare.

Obiective de invatare:

1. Studiul executării comenzilor individuale și a programelor simple de către un microprocesor; utilizarea diferitelor metode de adresare în programe; programe de înregistrare.

2. Consolidarea cunoștințelor teoretice dobândite privind programarea sistemelor cu microprocesoare.

3. Examinați practic starea diferitelor componente și dispozitive ale microprocesorului, precum și componente ale sistemului cu microprocesor, folosind modelare software.
Rezultate educaționale declarate în a treia generație a standardelor educaționale de stat federale:
Studentul trebuie:

a fi capabil să:

Efectuați cerințele termeni de referinta privind programarea sistemelor cu microprocesoare;

Compune programe în limbaj de asamblare pentru sisteme cu microprocesoare;

Creați și depanați programe în timp real folosind emulare software și prototipuri hardware;

Testați și depanați sistemele cu microprocesoare.
stiu

Software pentru sisteme cu microprocesor;

De bază diagrama functionala sistem cu microprocesor;

Metode și metode de testare pentru depanarea sistemelor cu microprocesoare;

Starea producției și a utilizării sistemelor cu microprocesoare;

Caracteristici de programare a sistemelor cu microprocesoare în timp real;

Metode de implementare prin microprocesor a funcțiilor standard de control.
Obiectivele muncii de laborator:


  1. Folosind un program de emulator de sistem cu microprocesor, explorați sistemul de comandă al microprocesorului KR580VM80 și programele pentru funcțiile de control tipice;

  2. Utilizarea practică a unui nou produs software.

Disponibilitatea ocupatiei:
Literatură educațională și metodologică:

Kostrov B.V., Ruchkin V.N. Sisteme cu microprocesoare și controlere. Tutorial. M., DESS, 2007, 319 p.

Mayorov V.G., Gavrilov A.I. Curs practic de programare a sistemelor cu microprocesoare. – M.: Inginerie mecanică, 1999.

Maksimov N.V., Partyka T.L., Popov I.I. Arhitectura calculatoarelor și sistemelor de calcul: Manual. – M.: FORUM: INFRA-M, 2005

Palaguta K.A. Microprocesoare INTEL 8080, 8085 (KR580VM80A, KR1821VM85A) și programarea acestora / K.A. Palaguta. – M.: MGIU, 2007. – 104 p.

Programarea sistemelor cu microprocesoare: Manual. manual pentru universități / Ed. V.F. Shangina. – M.: Academia., 2009. – 303 p.
Referințe

- Note de curs „Sisteme cu microprocesoare”. Compilat de E.G. Kuznetsov Editura, GBOU SPO ZhGK, 2013;

- Sistemul de comandă al microprocesorului KR580VM80.
Ajutoare tehnice de instruire:

Calculator personal;

O imprimantă.


  1. Software:
- sistem de operare Windows;

- Programul este un emulator al sistemului cu microprocesor SHELLKR580.


  1. Echipament de laborator:
- Calculator personal;

- O imprimantă.


  1. Caiet de lucru verificat

  2. Pix.

  3. Creion simplu.

  4. Rechizite pentru desen: riglă
Scurte materiale teoretice și educaționale pe tema lucrărilor de laborator
Când se studiază dispozitivele specializate cu microprocesor, sunt luate în considerare tehnicile de proiectare atât pentru hardware, cât și pentru software-ul MPS.

Proiectarea software-ului necesită cunoștințele necesare pentru a selecta o metodă și un algoritm pentru rezolvarea problemelor incluse în funcțiile unui dispozitiv cu microprocesor, pentru a compune programe (folosind adesea limbaje de nivel scăzut - limbaj de combinare a codurilor, limbaj de asamblare), precum și capacitatea pentru a utiliza instrumentele de depanare a programelor.

Cea mai importantă etapă în crearea oricărui sistem tehnic este depanarea acestuia. O caracteristică a depanării sistemelor cu microprocesoare este indisolubilitatea software-ului și hardware-ului. Prin urmare, proiectantul unor astfel de sisteme trebuie să fie competent în programarea și depanarea software-ului sistemului. Manualul prezintă elevilor astfel de instrumente folosind exemplul unui dispozitiv de instruire și depanare - programul - emulator „KR580” utilizat la depanarea software-ului pe un computer personal.

Manualul conține exemple de scriere a programelor de calcul și de control pentru microprocesorul KR580VM80A. Pe baza acestor exemple, sunt propuse opțiuni pentru sarcini pentru munca individuală independentă, care sunt de fapt sarcini pentru clasele de laborator despre bazele tehnologiei microprocesoarelor.

Interfata programului: 1 - domeniul programelor cercetate; 2 – afisaj digital; 3 – port de intrare; 4 – port de ieșire; 5 – zona de memorie stiva; 6 - conținutul registrelor de uz general; 7 – steaguri de registru de atribute; 8 – RAM; 9 – contor de programe (contor de programe); 10 – indicator de stivă

Interfață de selecție a postului:


Dispozitivul educațional și de depanare (EDD) este destinat stăpânirii practice de către studenți a principiilor de construire a micro-calculatoarelor în diverse scopuri bazate pe microprocesorul KR580VM80A, pentru învățarea programării microprocesorului specificat, precum și pentru depanarea software-ului acestora. micro-calculatoare. Structura emulatorului este un microcomputer universal și poate fi folosit pentru a simula procese în sisteme simple controlul proceselor tehnologice, cu condiția să fie echipate cu programe adecvate. Frecvența de ceas a microprocesorului din emulator este de 2 MHz.

Programul de instruire „SHELL” este conceput pentru a vă familiariza cu caracteristicile construirii unui microcomputer pe un microprocesor cu un set fix de instrucțiuni și poate fi folosit pentru a studia metodele de programare și funcționarea LSI-urilor incluse în kitul de microprocesor din seria K580. Microcalculatoare în crearea și cercetarea sistemelor de control pentru diverse obiecte. Este ușor de învățat și mijloace convenabile pentru depanarea programelor utilizator relativ mici (până la 1500 de linii).
R zonele de lucru ale emulatorului


Ecranul emulator este format din 6 zone. Zona nr. 1 este un ecran cu codul sursă al programului în asamblare. Cursorul, care este un simbol „”, indică comanda care se execută în continuare. Contorul de comenzi PC indică numărul liniei cu comanda care este executată. Zona nr. 2 – șase indicatori cu șapte segmente cu un punct. Scrierea acestora se realizează folosind comanda OUT 70...75, unde adresa portului este numărul indicatorului. Astfel, comanda OUT 70 va scrie valoarea registrului A în primul indicator, iar comanda OUT 73 va scrie în al patrulea indicator al registrului A. Segmentele corespunzătoare ale indicatorilor pentru biții din registrul A sunt prezentate în Fig. 3.2.

Dacă segmentul indicator corespunzător este pornit, acesta se aprinde pe monitor culoare aprinsa, altfel este vizibil într-o culoare estompată.

Zona nr. 3 este o fereastră în care puteți vizualiza și modifica conținutul memoriei.

Zona nr. 4 este două registre de intrare/ieșire. Cel de sus reprezintă registrul de intrare. Valoarea acestuia poate fi obținută cu comanda IN 80. În acest caz, valoarea acestui port se va reflecta în registrul A.

Registrul de ieșire este realizat sub formă de LED-uri. Ieșirea acestuia este efectuată de comanda OUT 90. În acest caz, valorile LED-urilor sunt setate în funcție de biții registrului A.

Există un alt registru de ieșire - audio. Difuzorul este pornit prin scrierea unei valori diferite de zero în registrul A cu comanda OUT 60. Dacă registrul A este 0, difuzorul se va opri.

Zona nr. 5 conține valorile fiecăruia dintre registrele microprocesorului KR580. Pentru a scrie date în registre, trebuie să apăsați tasta corespunzătoare numărului de înregistrare. Registrul A are nr. 1 etc. După introducerea numărului de înregistrare, va apărea o fereastră pentru înregistrarea datelor. Datele sunt numere în hexazecimal de la 01 la FF.

În cele din urmă, zona #6 indică zona de memorie referită de registrul SP.


    1. Descrierea cheilor de emulator

Tastele folosite pentru a controla progresul programului.

Tasta F2 este folosită pentru a reporni programul.

Apăsând tasta F4, programul dumneavoastră se va executa până când se realizează unul dintre următoarele evenimente:

Contorul de programe pentru PC va ajunge pe linia unde se afla cursorul.


  • Utilizatorul nu apasă tasta ESC.

  • Programul își va încheia execuția folosind comanda HLT.

  • Va apărea o eroare (de exemplu, o eroare de sintaxă).

După ce au apărut cele două situații anterioare, va apărea o fereastră în care se vor scrie situația din cauza căreia programul a încetat să se execute, linia în care a avut loc evenimentul și opțiunile de acțiune. Dacă apăsați tasta 0, emulatorul va fi reinițializat și puteți începe din nou executarea programului. Dacă apăsați tasta 1, veți ieși din emulator. Apăsând tasta 2, puteți ascunde fereastra de mesaj până când apăsați din nou această tastă. Acest lucru vă permite să vizualizați rezultatele programului dvs.

Folosind tasta F9, emulatorul va executa programul până când apar evenimentele descrise mai sus. Folosind tastele cursor (tastele săgeți) vă puteți deplasa în sus/jos și puteți vizualiza programul.

Pentru a vizualiza memoria, utilizați tastele [și]. Tasta [mută conținutul din zona nr. 3 cu o celulă înapoi, iar tasta] mută conținutul cu o celulă înainte. Pentru a edita conținutul memoriei, apăsați tasta M. Va apărea o fereastră care vă va întreba despre adresa celulei de memorie. Introduceți adresa, variind de la 0000h la 1000h și apăsați Enter. Apoi, în caseta de dialog, introduceți conținutul celulei - de la 00h la FFh.

Pentru a vizualiza conținutul stivei, utilizați tastele + și -.

Pentru a modifica conținutul portului de intrare, utilizați tastele 1...8 - unde tasta 1 corespunde celui de-al 0-lea bit al registrului etc., până la cheia 8, care corespunde celui de-al șaptelea bit al registrului de intrare. Apăsarea din nou a tastei inversează bitul de registru corespunzător.

Pentru a schimba registrul de ieșire, utilizați tastele Alt-1...Alt-8.
3.2 Descrierea programului MENU
Programul MENU este conceput pentru a fi lansat programe de laborator. Acest program, ca și programul SHELL, este format din mai multe zone.

Zona nr. 1 este zona principală a acestui program. Aici puteți alege ce program doriți să descărcați. În această fereastră veți vedea numele și numărul lucrării de laborator. Selectați locul de muncă potrivitși apăsați Introduce cheia sau tasta R. Va apărea o a doua fereastră care vă va cere să încărcați programul dorit din laborator. Selectați programul dorit folosind cursorul și apăsați Enter pentru a emula acest program. Dacă în loc de tasta R (sau Enter) apăsați tasta E, puteți edita textul sursă al programului. După ieșirea din editor, emulatorul se va încărca cu textul programului modificat.

3.3 Descrierea programului EDITOR
Programul EDITOR este necesar pentru a edita programe existente sau pentru a crea altele noi. Când lansați acest program, veți vedea ecranul principal (și numai ) al programului. În partea de sus va exista o linie de stare care arată informații despre textul care este editat. Restul ecranului va fi textul editabil în sine. Vă puteți deplasa prin text folosind tastele cursor (tastele săgeți). Programul editat în prezent este evidențiat într-o culoare mai strălucitoare decât celelalte. Tastele „” și „” pot fi folosite pentru a muta cursorul pe lungimea liniei editate, iar tastele „” și „” pot fi folosite pentru a muta cursorul de-a lungul textului editat. Taste cu litere și cifre – textul se modifică. Apăsând tasta Backspace, caracterul din stânga cursorului este șters. Utilizați tasta Ștergere din dreapta cursorului. Dacă cursorul se află la sfârșitul liniei care este editată și apăsați Șterge cheia, apoi cele două linii (actuală și următoare) sunt combinate într-una singură. Apăsând tasta Enter, împărțiți linia de la poziția cursorului în două linii - prima parte (înainte de cursor) rămâne pe loc, iar a doua parte este mutată la următoarea.

După ce ați terminat de editat textul programului, apăsați tasta Esc - programul va înregistra toate modificările și va ieși.
Întrebări pentru consolidarea materialului teoretic pentru lucrările de laborator:


  1. Care este un nume mnemonic al instrucțiunii de microprocesor?

  2. Determinați comenzile care ar fi utilizate pentru a efectua următoarele acțiuni:
- trimite date la baterie de la zonă specifică memorie indicată de al doilea și al treilea octet al instrucțiunii;

Scrieți o copie a conținutului acumulatorului în zona de memorie indicată de conținutul perechii de registre BC;

Încărcați registrul B cu datele conținute în al doilea octet al instrucțiunii;

Transferați datele din registrul C în registrul B;

Scrieți o copie a conținutului bateriei în zona de memorie AACE;

Încărcați conținutul acumulatorului în registrul D.
Exerciții de laborator:

Exercitiul 1: Studiu de program 2.1

Sarcina 2: Studiu de program 2.2

Sarcina 3:

Sarcina 4: Programul de cercetare 2.4

Sarcina 5: Programul de cercetare 2.5

Sarcina 6:

Sarcina 7:
Lista programelor se află în textul descrierii lucrărilor de laborator.

Atenţie: Numărul de sarcini care trebuie îndeplinite este determinat de profesor.

Instrucțiuni pentru efectuarea lucrării

Microprocesorul KR580VM80A are un set fix de comenzi. Fiecare echipă are a lui Codul mașinii– un cuvânt cu lungimea de 8, 16 sau 24 de biți, care ocupă 1, 2 sau, respectiv, 3 celule de memorie într-un dispozitiv de stocare microcalculator. Microprocesorul funcționează conform unui program, interpretând conținutul unei celule de memorie ca un cod de instrucțiune sau ca date.
Sarcina nr. 1

Explorați activitatea programului 2.1

Luați în considerare programul 2.1, care preia un număr din locația de memorie 0010h, inversează acest număr și scrie rezultatul la adresa 0011h.

Programul 3.1 (în coduri mnemonice)

Cod mnemonic Comentariu

LXI H, 0010 adresa de încărcare 0010h

MOV A,M transferă date de la 0010h la acumulator

Conținutul acumulatorului inversat CMA

INX HL generează adresa pentru rezultat

MOV M, Un număr de scriere din acumulator în memorie

HLT întrerupe execuția programului
Pentru a porni programul, trebuie să introduceți orice număr hexazecimal de la 01 la FF în celula de lucru 0010.

Când scrieți programe, toate numerele sunt reprezentate în sistemul numeric hexazecimal. Pentru a descărca programul, selectați din meniul inițial munca de laborator Nr. 2.1, selectați programul necesar pentru cercetare și apăsați tasta Enter. Programul va porni și după un timp va apărea un mesaj de pornire. Apăsați orice tastă, interfața principală a programului va apărea cu programul selectat pentru cercetare în fereastra programelor în studiu. Acum poți începe să-l explorezi.
Exercitiul 1: Studiu de program 2.1

1.1 Introduceți programul 2.1 în microcomputer

1.2 Scrieți numărul studiat la adresa 0010

1.3 Verificați rezultatul execuției programului folosind numărul scris în celula 0011

1.4 Realizați un tabel 1 cu conținutul registrelor microprocesorului la executarea programului 3.1 cu comanda CMA la executarea programului pas cu pas.

tabelul 1


Conținutul registrelor după executarea fiecărei comenzi de program 3.1

Registrele

Etapa programului (comandă după care se analizează conținutul registrelor)

0 pas

(Start)


1 pas

Pasul 2

MOV A,M


3 pas

Pasul 4

Pasul 5

MOV M,A


Pasul 6

A

FL

H

L

M1=0010

M2=0011

Sarcina 2: Studiu de program 2.2

2.1 Apelați fereastra de selecție a sarcinilor și selectați programul 2.2 din meniu

2.2 Introduceți numerele comparate în celulele 0010 și 0011

2.3 Rezultatul execuției programului se află în registrul B

2.4 Verificați conținutul celulelor de memorie și al registrelor microprocesorului implicate în program

2.5 Afișați grafic execuția comenzii lda 0010

Reprezentare grafică a comenzii de încărcare a bateriei


Sarcina 3: Explorați activitatea programului 2.3

3.1 Încărcați programul 2.3 în memorie

3.2 Scrieți date în locațiile de memorie 0010 și 0011

3.3 Numărul rezultat este localizat în celula adresată de o pereche de registre BC

3.4 Realizați un tabel 2 cu conținutul registrelor microprocesorului la executarea programului 3.3 cu comanda ADD M la executarea programului pas cu pas.

masa 2




Echipă

A

FL

H.L.

M1/date

M2/date

M3/date

Soare

DE

1

lxi hl 0010

2

lxi bc, 0011

3

ldax bc

4

adaugă m

5

inx bc

6

stax bc

7

hlt

Sarcina 4: Programul de cercetare 2.4

4.1 Scrieți programul 2.4 pe un microcalculator

4.2 Scrieți numerele studiate la adresele 0010 și 0011

4.3 Verificați rezultatul execuției programului folosind numărul scris în registrul B

Sarcina 5: Programul de cercetare 2.5

5.1 Introduceți șaisprezece numere de un singur octet în celulele de memorie, începând de la 0000

5.2 Asigurați-vă că deplasarea secvențială a acestor numere este efectuată verificând conținutul adreselor 0010

Sarcina 6: Utilizarea programelor 2.2; 2,3; 2,5; scrieți un program pentru a trimite doi operanzi cu lungime dublă stocați în locațiile 0010, 0011, 0012, 0013 în perechea de registre BC și DE

Sarcina 7: Investigarea execuției programului 2.6

7.1 Scrieți numărul convertit la adresa 0010

7.2 Rezultatul inversării se află în registrul D
Când finalizați sarcinile nr. 6 și 7, trebuie să utilizați programul EDITOR din pachetul SHELLKR580,

Servește pentru înregistrarea și editarea programelor utilizator. După introducerea programelor editate în emulator, acesta va fi depanat conform metodologiei studiate, după care programul va deveni disponibil pentru cercetare.
Anexa nr. 1

Nume: Programarea microprocesoarelor cu un singur cip.

Sunt luate în considerare resursele software ale microprocesorului cu un singur cip K1810VM86 cu o lungime fixă ​​a cuvântului și un sistem de comandă, precum și problemele de programare în limbaj de asamblare. Sunt oferite numeroase exemple de executare a comenzilor și a programelor pentru sarcini simple.
Pentru lucrătorii ingineri și tehnici din domeniul tehnologiei informatice și al automatizării implicați în dezvoltarea și utilizarea sistemelor cu microprocesoare. Poate servi ajutor didactic studenți cu specializare în prelucrarea electronică a datelor.

Dezvoltarea rapidă și utilizarea pe scară largă a microprocesoarelor, dispozitivelor și sistemelor cu microprocesoare în diverse scopuri (de la cele mai simple controlere de obiecte până la sisteme de procesare a datelor de înaltă performanță) a generat un interes constant și din ce în ce mai mare pentru publicațiile despre instrumentele cu microprocesoare din partea inginerilor și lucrătorilor tehnici din o mare varietate de specialități. Acest interes al cititorului este în mare măsură satisfăcut de editurile centrale ale ţării noastre, care anul trecut a publicat o serie de monografii ale unor autori sovietici și străini dedicate acestui subiect. Aceste publicații au satisfăcut într-o oarecare măsură cererea cititorului de literatură care reflectă o serie de probleme organizatorice, caracteristici de operare și aplicații specifice ale dispozitivelor și sistemelor cu microprocesor. Cu toate acestea, gama de tehnologie de microprocesor produsă de industria autohtonă este în continuă creștere, iar tehnologia microprocesorului în sine se îmbunătățește rapid și devine mai complexă. Acest proces este însoțit de o nevoie tot mai mare de publicații care sunt dedicate prezentării problemelor legate de organizarea structurală cele mai noi microprocesoare, arhitectura sistemelor bazate pe acestea, instrumente și metode de programare și dezvoltare a software-ului de sistem și aplicație.

Capitolul 1. Microprocesor K1810VM86- noua etapa dezvoltarea microcircuitelor
1.1. caracteristici generale microprocesor
1.2. Proiectarea structurală a MP și scopul terminalelor de locuințe
1.3. Schema bloc al microprocesorului
1.4. Model MP pentru un programator
1.5. Organizarea memoriei
1.6. Intrare ieșire
1.7. Instrumente de multiprocesare
1.8. întreruperi
1.9. Control cu ​​microprocesor
Capitolul 2. Moduri de adresare și sistem de instrucțiuni cu microprocesor
2.1. Introducere în limbajul de asamblare
2 1.1. Construcții de bază ale limbajului de asamblare
2.1.2. Format declarație
2.1.3. Elemente operator
2.2. Moduri de adresare
2.3. Sistem de comandă
2.3.1. Comenzi de transfer de date
2.3.2. Instructiuni aritmetice
2.3.3. Operații logice și instrucțiuni de schimbare
2.3.4. Comenzile de transfer de control
2.3.5. Comenzi înlănțuite
2.3.6. Comenzi de control cu ​​microprocesor
2.4. Compatibilitate software microprocesoarele K580 și K1810
Capitolul 3: Programarea în limbaj de asamblare
3.1. Exemplu de program finalizat
3.2. Variabile
3.3. Directive de control pe segmente
3.4. Directive de denumire
3.5. Expresii
3.6. Directive de procedură
3.7. Directive pentru conectarea modulelor și segmentelor
3.8. Exemple de programe de asamblare
Capitolul 4. Caracteristici ale configurațiilor hardware
4.1. Ciclul autobuzului
4.2. Autobuze de adrese și date
4.3. Autobuz de sistem date
4.4. Moduri de operare
4.5. Sisteme multiprocesor
4 6. Sincronizare
4 7, Resetare microprocesor
4.8. Semnal gata
4.9. Concluzia interfeței I/O
Bibliografie

Descărcare gratuită e-carteîntr-un format convenabil, urmăriți și citiți:
Descărcați cartea Programarea microprocesoarelor cu un singur cip - Grigoriev V.L. - fileskachat.com, descărcare rapidă și gratuită.

Descărcați djvu
Puteți cumpăra această carte mai jos cel mai bun preț la reducere cu livrare în toată Rusia.

TEMA 3.1 Structura tipică a microcalculatorului.

ACTIVITATEA 3.1.1 Două moduri de a organiza un microcomputer: cu magistrale de date și adrese diferite și cu o magistrală de date și adrese multiplexate.

ÎNTREBĂRI DE LECȚIE:

1. Informații generale despre microcalculatoare. Blocuri funcționale și organizarea controlului într-un microcalculator.

2. O metodă de organizare a unui microcalculator cu adrese separate și magistrale de date.

3. O metodă de organizare a unui microcalculator cu o magistrală de date și adrese multiplexate.

PRIMA ÎNTREBARE

Organizarea unui microcomputer bazat pe kituri standard de microprocesoare este determinată de principiile formării IPC, organizarea sistemului de memorie, sistemul de intrare-ieșire, sistemul de întrerupere, caracteristicile arhitecturale ale microprocesorului și unele caracteristici ale microprocesorului. IPC LSI. Cu toate acestea, influența principală asupra organizării microcalculatoarelor este exercitată de metodele de implementare a transferului de date și adrese între microprocesor și alte componente ale microcalculatorului. Din acest punct de vedere, există o distincție două moduri de a organiza un microcalculator: cu magistrale separate de date și adrese; cu date multiplexate și magistrală de adrese.

Circuitele integrate cu microprocesor (MPIC) și microcalculatoarele construite pe baza lor au fost rezultatul dezvoltării rapide a microelectronicii, care a făcut posibilă plasarea structurilor de calcul complexe care conțin zeci de mii de tranzistori într-un singur cristal semiconductor. Producția de circuite integrate mari (LSI) implică muncă intensivă în muncă privind dezvoltarea circuitelor, a măștilor foto și pregătirea producției și a serviciilor pentru monitorizarea parametrilor și caracteristicile tehnologice ale LSI. Reducerea costului LSI este posibilă numai cu automatizarea maximă a etapelor premergătoare producției și producției lor în masă. Producția în masă a LSI presupune o cerere largă a consumatorilor și, prin urmare, posibilitatea utilizării sale pentru o gamă largă de sarcini. Microprocesor LSI (MP LSI) reprezintă acea clasă de circuite integrate care combină un grad ridicat de integrare, oferind o funcționalitate enormă, cu o mare versatilitate în aplicare. Universalitatea se realizează prin faptul că MP LSI implementează dispozitive complexe care fac posibilă efectuarea de funcții logice și aritmetice asupra numerelor originale, în timp ce procesul de calcul este controlat de software. Schimbarea programului de calcul vă permite să calculați orice funcție complexă.



Dacă luăm în considerare circuitul microcalculatorului (Fig. 1), putem ajunge la concluzia că acesta conține aceleași blocuri pe care au fost construite calculatoarele din generațiile anterioare.

Orez. 1. Diagrama microcalculatorului.

Cu toate acestea, un microcalculator are unele diferențe arhitecturale față de computerele digitale anterioare, datorită dorinței de a combina în LSI, pe care este construit microcalculatorul, noduri și blocuri capabile să efectueze transformări complexe de informații cu un număr minim de conductori externi. Această caracteristică se datorează posibilității de a construi complex circuite electronice cu o limitare a numărului de conductori externi, care nu depășește, de regulă, 50 sau 100 de contacte.

Structura procesorului de microcalculator este construită ținând cont de aceste caracteristici ale LSI. Cel mai comun este un circuit de microcalculator care are două sau trei linii comune, la care, sub influența dispozitivului de control, nodurile incluse în microprocesor pot fi conectate alternativ. Această structură necesită un număr limitat de contacte externe, dar schimbul de informații între noduri și blocuri trebuie efectuat în o anumită secvență.

Într-un microcomputer, procesorul este construit pe LSI-uri care formează setul MP ​​de bază. Un procesor de microcalculator poate fi implementat sub forma unuia (microprocesor cu un singur cip) sau a mai multor LSI (microprocesor multicip).

Pentru a construi blocurile de microcalculatoare rămase, sunt utilizate LSI-uri specializate sau IC-uri de grad mediu de integrare. Principalele tipuri de circuite integrate utilizate în microcalculatoare pot fi clasificate într-una din patru grupe: circuite integrate de bază pentru set de microprocesoare (MPC); CI de memorie; Dispozitive IC pentru intrarea și ieșirea de informații către microprocesor; IC pentru conectarea microcalculatoarelor cu obiecte de control.

Schimbul de informații între microprocesor și alte blocuri de microcalculatoare se realizează de-a lungul a trei autostrăzi: adresă, date și control.

Adresa trunchiului(MA) este utilizat pentru a transmite codul de adresă folosit pentru a accesa memorie, intrare-ieșire sau alte dispozitive externe conectate la microprocesor.

Sunt transmise informațiile prelucrate și rezultatele calculelor prin autostrada de date(MD).

Linie de control(MU) transmite semnale de control către toate blocurile de microcalculatoare, configurand modul dorit dispozitivele care participă la executarea comenzii.

Utilizarea unui număr mare de autostrăzi într-un microcalculator, în în acest exemplu trei tipuri, oferă performanțe ridicate și simplifică procesul de calcul. Este posibil să se construiască un microcalculator cu una sau două autostrăzi, prin care codul de adresă și informațiile prelucrate sunt transmise secvențial, în timp ce timpul de execuție a comenzii crește și organizarea schimbului de informații între noduri devine mai complicată.

Structura unui microcalculator este determinată de arhitectura microprocesorului, de compoziția unităților funcționale incluse în MP LSI, de numărul de autostrăzi externe și de organizarea schimbului de informații.

Microprocesoare pe un singur cip - un singur cip MP - se disting printr-o adâncime fixă ​​de biți și un sistem de comandă fix. Completitudinea funcțională a MP-urilor cu un singur cip necesită plasarea blocurilor de decodor de comandă și a dispozitivelor de control, a unui bloc aritmetic-logic, a dispozitivelor de control al schimbului extern și a cascadelor pentru potrivirea semnalelor interne și externe într-un singur cristal.

Multicip MP-urile sunt construite pe baza unui set de LSI, care sunt MPC-uri. Fiecare LSI inclus în MPC permite implementarea unui nod sau bloc funcțional al unui nod MP. Cele mai caracteristice noduri ale MP sunt unitatea aritmetic-logică (ALB), care formează baza dispozitivului de operare, și dispozitivul de control (CU).

Blocul aritmetico-logic este conceput pentru a procesa informații în conformitate cu codul de control primit de acesta. Operațiile efectuate în ALB pot fi împărțite în trei grupe: aritmetice, shift, logice și transfer.

Următoarele operații sunt de obicei folosite ca operații aritmetice: adunarea și scăderea a două coduri; adunarea și scăderea unităților; adunarea și scăderea cu conținutul semnului operației.

Operațiile de deplasare includ operații de deplasări aritmetice, logice și ciclice la dreapta și la stânga conținutului registrelor ALB.

Operatiile logice si operatiile de transfer asigura executarea functiilor logice de baza (adunare, inmultire) asupra continutului de registre si transfer de continut intre registre si intre registre si autostrazi externe.

Dispozitivul de control generează semnale de control către toate blocurile de microcalculatoare, sincronizându-le funcționarea și asigură selectarea comenzilor din memorie în conformitate cu algoritmul stabilit.

Să luăm în considerare mai detaliat funcționarea blocurilor individuale de microcalculatoare.

Dispozitiv de operare MP, conceput pentru a efectua operații asupra operanzilor în conformitate cu codul instrucțiunii care se execută (aritmetic, logic, deplasare sau transfer), include de obicei un ALB, blocuri de registru de uz general (GPR), un bloc de generare a stării registrului de condiție și un bloc de control local.

Bloc logic aritmetic realizează direct o microoperație asupra operanzilor sursă.

bloc RON asigură stocarea operanzilor și a rezultatelor intermediare ale calculelor, se caracterizează prin timp de acces redus și un număr limitat de registre.

Bloc pentru generarea stărilor registrului de condiții scrie în registrul de stare cod binar, care caracterizează caracteristicile aritmetice și logice ale rezultatului operației ALB. Conținutul registrului de atribute poate fi utilizat de dispozitivul de control pentru a genera tranziții condiționate pe baza rezultatelor operațiilor ALB.

Unitate de control local asigură executarea microcomandei curente și controlează toate blocurile dispozitivului de operare în conformitate cu codul de microcomandă.

Structura dispozitivului de operare depinde de numărul de autostrăzi externe și de organizarea schimbului de informații de-a lungul acestora, precum și de organizarea autostrăzilor interne și de ordinea schimbului de informații între blocurile dispozitivului de operare.

Dispozitive de operare implementate ca parte a un singur cip MP LSI-urile se disting printr-o adâncime fixă ​​de biți și un sistem de comandă. Limitările privind numărul de autostrăzi de informare și contacte externe duc la necesitatea organizării vedere secvențială transmisie de informații, în care informațiile sunt schimbate secvenţial de-a lungul unei autostrăzi de informare între toate nodurile interne ale LSI și autostrăzile externe.

LSI-urile MP cu un singur cip nu permit construirea de sisteme cu microprocesoare de înaltă performanță cu procesare paralelă informație. Timpul de execuție a comenzii variază de la 2 la 10 μs. LSI-urile MP cu un singur cip sunt utilizate în mod eficient în dispozitivele care nu necesită viteză mare și au limitări în ceea ce privește volumul echipamentelor și costul acestuia. Ele sunt implementate în seriile K580 și K586 MP LSI, care, împreună cu microprocesoarele, conțin o serie de LSI-uri auxiliare pentru construirea de microcalculatoare.

Dispozitiv de control al microcalculatorului, asigură executarea unei secvențe de microoperații în conformitate cu codul comenzii curente și organizează selecția comenzilor programului în conformitate cu programul care se execută. Utilizarea microprogramării în implementarea unui dispozitiv de control permite să fie creat pe structuri obișnuite care permit modificări ușoare la secvența generată de semnale de control.

Arată în Fig. 2, o diagramă generalizată a unui dispozitiv de control al microprogramelor conţine: un bloc de memorie de microprogram în care sunt stocate microcomenzi; unitate de generare a adresei microinstrucțiunilor, care generează adresa următoarei microinstrucțiuni, care depinde în general de codul microinstrucțiunii care se execută, codurile de atribut ale operațiilor efectuate în ALB, informațiile din blocurile de sincronizare și întreruperile procesorului; o unitate de sincronizare concepută pentru a recepționa semnale de control și a genera o secvență de semnale de sincronizare pentru blocurile principale ale microcalculatorului pentru a asigura o anumită secvență a funcționării acestora; decodor de microinstrucțiuni care generează semnale de control care intră în unitățile executive ale microcalculatorului.

Cele mai obișnuite opțiuni pentru implementarea dispozitivelor de control sunt utilizarea memoriei numai în citire (ROM) sau a memoriei reprogramabile (PROM) ca memorie de microprogram și a unui dispozitiv de control bazat pe o matrice logică programabilă (PLM).

Fig 2. Schema generalizată a dispozitivului de control.

În primul caz, blocul de memorie de microinstrucțiuni este realizat pe baza memoriei LSI standard, cum ar fi ROM, PROM. Blocurile rămase ale dispozitivului de control sunt combinate într-un LSI separat sau executate ca unități separate pe circuite de integrare medii. Într-un dispozitiv de control bazat pe PLM, toate blocurile sunt combinate într-un singur LSI, care este de fapt o mașină digitală completă, a cărei lege de funcționare este determinată de comutarea autostrăzilor interne ale matricei.

Dispozitive de control PLM. În aceste dispozitive, spre deosebire de circuitele considerate, funcțiile unității de generare a adresei de microinstrucțiuni sunt combinate cu memoria microprogramelor. Să luăm în considerare diagrama unui astfel de dispozitiv folosind exemplul MPC din seria K587 (Fig. 3, b).

Orez. 3. Circuite LSI din seria K1804 (a) și seria K587 RP1 (b).

Structura dispozitivului conține memorie de microprograme de tip PLM, registru de comenzi RgK, registrul codului de stare RgKU, următorul registru de adresă RgAși registrul semnelor de control RSU.

Registrul semnului de control conține măști pentru semnalul de scris în registrul de comandă, următorul registru de adresă și registrul de cod de condiție. O parte din semnalele de la ieșirea PLM este scoasă pentru a controla partea de operare ca o micro-instrucțiune, iar cealaltă parte a semnalelor de ieșire PLM nu este scoasă din corpul LSI și este utilizată pentru a genera următoarea adresă și codul de registru de control. Matricea logică programabilă permite analizarea unui număr mare de biți, eliminând necesitatea multiplexoarelor controlate. Totalitatea tuturor gradelor RgK, RgKUȘi RgA folosit ca cuvânt complet de adresă pentru PLM.

Registrul de comenzi servește la primirea unui cod de comandă care specifică dispozitivului de control un program de eșantionare a unei secvențe de coduri de microcomandă, executând care microprocesorul implementează algoritmul acestei comenzi. Pentru a face acest lucru, una dintre ieșirile PLM este programată să genereze permisiunea de a primi o nouă comandă. Selectarea unei anumite microinstrucțiuni în timpul executării algoritmului oricărei comenzi de microprocesor nu este întotdeauna specificată strict, dar poate depinde de condiții - rezultatele operațiunilor înregistrate în registrul de condiții.

Registrul de adrese este principalul element de setare în selectarea microinstrucțiunii ulterioare. Adâncime de biți P Registrul de adrese permite dispozitivului de control să creeze stări stabile de 2" fără a schimba codul de comandă și codul de condiție.

Capacitatea PLM de a genera noi stări de informații prin combinarea stărilor codificate existente, prin simpla combinare a acestora, se extinde

capabilitățile logice ale PLM ca mașină digitală. Dispozitivul în cauză nu conține memorie stivă și, prin urmare, nu prevede programare modulară. Dintre dispozitivele luate în considerare, structura microcalculatorului este cea mai influențată de opțiunea de implementare a dispozitivului de control. Pot fi distinse trei opțiuni cele mai tipice: implementarea într-un procesor cu un singur cip care combină o parte de operare și un dispozitiv de control; implementarea unui dispozitiv de control sub forma unei mașini microprogramate folosind ROM și PROM pentru înregistrarea microcomenzilor; implementarea unui dispozitiv de control bazat pe PLM.

În seturile de microprocesoare din seriile K587, K588, K1883, dispozitivele de control sunt implementate pe baza PLM. Seturile de microprocesoare din seria K580, K.1801, K1810, K1816, K1820 conțin un LSI, care implementează un procesor central și un dispozitiv de control cu ​​o structură fixă ​​și un sistem de comandă. În seria MPK K583, K589, KR1800, KR1802, KR1804, dispozitivul de control este construit sub forma unei mașini microprogramate pe baza LSI-urilor incluse în aceste kituri, ceea ce permite consumatorului să implementeze sistemul de comandă necesar pe baza lor. Kiturile de microprocesoare din seria K536, K581 sunt proiectate pentru construirea de microcalculatoare din familiile „Electronics S” și „Electronics-60”.

Kiturile de microprocesoare din seria K1801 includ un MP K1801VM1 cu un singur cip, care conține un procesor și un dispozitiv de control cu ​​un sistem de comandă pentru microcomputerul Elektronika-60 și o serie de LSI-uri pentru construirea de microcalculatoare cu o singură placă. În funcție de caracteristicile lor tehnice, MPC-urile din seriile K580, K1816, K1810, K1820, care conțin MP-uri cu un singur cip, sunt recomandabile să fie utilizate pentru producerea de dispozitive digitale de automatizare, controlere simple și, de asemenea, utilizate pentru construirea de micro și mini-calculatoare pentru diverse scopuri.

Kiturile de microprocesoare din seriile K583, K584, K587, K588 sunt proiectate pentru construirea de microcalculatoare și controlere complexe. Datorită organizării secționale, unui sistem dezvoltat de autostrăzi și microprogramabilității funcțiilor de control, acestea pot servi drept bază pentru construirea diferitelor sisteme de control. Consumul redus de energie și imunitatea ridicată la zgomot a MPC-urilor din seriile K587 și K588 fac posibilă proiectarea pe baza lor a sistemelor de control numeric pentru echipamente și dispozitive tehnologice cu restricții privind consumul de energie.

Seria MP K de mare viteză K589, KP1802, KP1804 sunt proiectate pentru construirea de microcalculatoare și sisteme de automatizare de mare viteză, sunt compatibile ca niveluri de semnal și se pot completa reciproc. Kiturile cu microprocesoare din seriile KR1802 și K1804 diferă în abordarea lor cu privire la formarea modulelor. În MPC KR1804, LSI-urile microprocesorului pe 4 biți conțin toate elementele microprocesorului. În MPC din seria KR1802, unitățile funcționale MP individuale sunt executate în LSI (LSI de 8 biți AL B, LSI de 16 RON de 4 biți, LSI de expander aritmetic de 16 biți etc.). Diferența de compoziție a modulelor IPC-urilor considerate ne permite să aplicăm pe cele mai potrivite dintre ele în ceea ce privește împărțirea funcțională pentru diverse domenii. Setul de microprocesoare din seria KR1800 are performanțe ultra-înalte (frecvența de ceas 36 MHz) și are ca scop construirea de instrumente de calcul de înaltă performanță.

A DOUA INTREBARE

În fig. Figura 4 prezintă ca exemplu structura unui microcomputer implementat pe baza kit-ului de microprocesor KR580. Magistrala de adrese pe șaisprezece biți (ABA) și magistrala de date pe 8 biți (SD) și controlul formează interfața dintre microprocesor (MP), pe de o parte, și ROM, RAM și dispozitivele de interfață de intrare-ieșire (IOUD), pe de altă parte. Alocarea magistralelor separate pentru toate semnalele de control, informațiile despre adrese și datele simplifică organizarea schimbului de informații între componentele individuale și reduce timpul de execuție a comenzilor în microcalculator. Generatorul de impulsuri de ceas (GTI) generează semnalele necesare pentru funcționarea MP.

Orez. 4. Structură de microcalculator cu magistrale separate de date și adrese.

Utilizarea unei magistrale reduce numărul de pini externi ai kitului cu microprocesor LSI, dar duce la o separare temporară a transferului de adrese și de date, adică la o scădere a vitezei de schimb de informații între procesor și dispozitivele adresabile, precum și la necesitatea folosirii registrelor de adrese externe (RgA).

A TREIA ÎNTREBARE

Arată în Fig. Figura 5 ilustrează, folosind kit-ul de microprocesor K588 ca exemplu, organizarea unui microcomputer cu o adresă multiplexată și magistrală de date.

Astfel de microcalculatoare microprogramabile, de regulă, necesită dezvoltarea unui control pe două niveluri - microprogram și software. Acest lucru vă permite să aveți un sistem de comandă arbitrar, dar complică microcalculatorul.

Funcționarea normală a unui microcalculator poate fi asigurată numai cu sincronizarea corectă a semnalelor care determină interacțiunea componentelor sale. Prin urmare, o parte semnificativă a parametrilor tehnici ai componentelor MPC sunt formate din diverse constrângeri de timp.

Orez. 5. Structura unui microcalculator cu o magistrală de date și adrese multiplexate.

Sursa principală de semnale de temporizare într-un microcomputer este un generator de impulsuri de ceas care produce o secvență de impulsuri cu una, două, trei sau patru faze. Parametrii impulsurilor de ceas sunt supuși unor cerințe destul de stricte, inclusiv frecvențe minime și maxime ale impulsurilor, timpii maximi de creștere și scădere a impulsului, toleranțe scăzute și scăzute. niveluri înalte tensiuni ale impulsurilor, toleranțe privind durata impulsurilor de ceas, relații de timp între impulsurile de ceas din diferite faze. Nerespectarea cerințelor pentru impulsurile de ceas poate duce la executarea incorectă a operațiunilor, deoarece executarea fiecărei operațiuni constă într-o secvență de acțiuni, fiecare având o durată foarte specifică. Frecvența generatorului de ceas este de obicei stabilizată de cuarț și implementată în formă componentă separată kit cu microprocesor sau pe un cip cu microprocesor (cum se face în kit-ul cu microprocesor K588).

Impulsurile de ceas de la generator încep să sosească la microprocesor imediat după ce sursa de alimentare este pornită, dar microprocesorul pornește doar printr-un semnal instalare inițială, furnizat la intrarea sa specială. Pe baza acestui semnal, în contorul de programe este scrisă o adresă specifică, de la care microprocesorul începe să preia instrucțiunile programului. În plus, la unele microprocesoare, semnalul de inițializare resetează mai multe registre interne la zero.

Cele mai simple modalități de a genera un semnal de setare inițială sunt: ​​a) utilizarea unui singur generator de impulsuri, declanșat, de exemplu, de la un buton; b) formarea unui impuls inițial de setare la pornirea alimentării cu o întârziere pentru timpul necesar pentru setarea valorii nominale a tensiunii de alimentare după pornirea sursei.

Se impun restricții serioase asupra parametrilor de temporizare ai semnalelor care asigură interacțiunea componentelor microcalculatorului. Atâta timp cât viteza componentelor este suficientă pentru a răspunde corect la toate semnalele microprocesorului, ceea ce se face de obicei într-un microcomputer cu un număr mic de componente dintr-un set de microprocesoare, nu apar probleme cu sincronizarea componentelor. Creșterea complexității schemei de adresare, creșterea capacității de memorie și utilizarea componentelor din alte kituri de microprocesoare pot duce la nerespectarea unor relații de sincronizare obligatorii și, în consecință, la funcționarea necorespunzătoare a microcalculatorului.

Literatură:

1. M.V. Naprasnik „Microprocesoare și microcalculatoare”, pp.: 81-84.

2. L.N. Presnukhin „Microprocesoare”, partea 1, pp.: 140-162.

ACTIVITATEA 3.1.2 Diagrama bloc, caracteristicile și baza elementului de bază

microcomputer „MS1201.01”.

ÎNTREBĂRI DE LECȚIE:

1. Scop, caracteristici ale microcalculatorului „MS1201.01”.

2. Schema bloc, compoziția și elementul de bază ale microcalculatorului „MS1201.01”.

3. Sistem de comandă, moduri de adresare și caracteristici de operare ale microcalculatorului „MS1201.01”.

PRIMA ÎNTREBARE

Microcomputerul „MS1201.01” este o placă de circuit imprimat destinată integrării în echipamentele de consum și care îndeplinește funcțiile de intrare, stocare, procesare și ieșire a informațiilor digitale ca parte a acestui echipament.

Modificările microcalculatoarelor diferă în ceea ce privește tipul de MP, numărul de instrucțiuni, capacitatea RAM și viteza, dar au un design de bază.

Se pot folosi microcalculatoare ca parte a echipamentelor tehnologice (sisteme CNC 2Р22 și Kontur-1); în complexe de control, măsurare și testare; în sistemele digitale de prelucrare a informaţiei de uz general.

În toate aplicațiile posibile, un microcalculator rezolvă aceleași probleme: intrarea, stocarea, procesarea și ieșirea informațiilor.

Principalele caracteristici:

Sistemul numeric pentru numere și comenzi este binar;

Formatul principal pentru reprezentarea numerelor și comenzilor este de 16 cifre binare;

Principiul de funcționare al principalelor dispozitive este paralel;

Performanță la executarea comenzilor precum „ADDITION”

Cu metoda de adresare a registrului, 400 ± 100 mii op/s;

Cu metoda de adresare indirectă a registrului, 180 ± 40 mii op/s;

Număr de lei – 8;

Canalul sistemului de microcomputer permite adresarea directă a zonelor de memorie

64 KB;

Capacitate RAM 28 KB cuvinte pe 16 biți;

Capacitate ROM sistem 4 KB cuvinte;

Alimentarea este furnizată de la surse externe DC cu

tensiune nominală +5 V (+5 V și +12 V pentru MC1201), curent nu

mai mult de 2,4 A, consumul de energie nu mai mult de 12,6 W;

Timpul microcalculatorului între defecțiuni este de cel puțin 10.000 de ore, între defecțiuni - cel puțin

Durata de viata – minim 10 ani;

Dimensiuni totale 252×296×12 mm, greutate nu mai mult de 0,8 kg;

Următoarele sunt acceptate ca software de bază pentru microcalculator: test

sistem de operare monitor (TMOS); sistem de operare cu

partajarea timpului (OS DVK).

A DOUA INTREBARE

Microcalculatorul „MS1201.01” constă din următoarele blocuri și componente funcționale principale și auxiliare.

De bază:

Procesor (PRC);

ROM de sistem (SROM);

Dispozitiv de interfață paralelă de octeți (UBPI);

Dispozitiv I/O serial(UPVV);

Dispozitiv de interfață pentru unitatea de dischetă (FMD UI);

Dispozitiv de control pentru ROM utilizator (CU ROM);

Registrul modului de pornire inițial (ILR);

Unitate optoelectronica de izolare a semnalului (OSI).

Auxiliar:

corector de semnal de control al canalului (CCS);

Generator de ceas (GTI-1, GTI-2);

Convertor de tensiune (PN-5 V);

Transceiver de semnal (PP1...PP4);

Unitate de control al transceiverului de semnal de canal (CUPP)

Un microcalculator este un sistem de blocuri funcționale, comunicarea între care se realizează printr-un singur canal de sistem (de tip „Common Bus”) pentru schimbul de informații cu multiplexarea magistralelor de adrese și de date.

Baza elementului de microcomputer este construită pe seria IC K1801 (8 bucăți), K531 (15 bucăți), K155 (23 bucăți), K555, KR565 (32 bucăți). Baza elementului de bază o constituie microcircuitele seria K1801, realizate conform n-tehnologia MOS canal.

Un microprocesor este construit pe K1801 IC, K1801RE1 este un sistem ROM, K1801VP1-030 dispozitiv de control RAM, K1801VP1-031 byte dispozitiv de control interfață paralelă, K1801VP1-034 UBPI dispozitiv de transfer de informații, K1801VP1-035 UPVV, interfață de control K-18301 GPS aparatul D.

Microcircuitele din seria K531 sunt utilizate în principal pentru a construi transceiver-uri de semnal de canal, iar K555 IC este un amplificator de semnal.

Circuite integrate seria KR565RU3 (RU6 - MS1201.01 și MS1201.02) formează o unitate RAM de tip dinamic, capacitatea totală de stocare a unității este de 32 KB de cuvinte pe 16 biți sau 8 bănci de memorie a câte 4 KB fiecare. Doar 7 bănci de memorie sunt disponibile utilizatorului, adică. Cuvinte de 28 KB. RAM constă dintr-un dispozitiv de stocare a informațiilor (N RAM), un dispozitiv de control RAM (U RAM), un registru de date tampon (DBR) și un comutator de bancă P3 în Figura 2 (BVB în Schema 1).

ROM-ul de sistem este conceput pentru a stoca programe pentru consola bootloader-ului cu unitatea flotantă și testul de verificare rezident.

Este posibil să instalați un cip ROM suplimentar cu o capacitate de 4 KB de cuvinte pe 16 biți în dispozitivul de contact (Fig. 2) situat pe placă.

Comutatoarele P1 și P2 (Fig. 2) sunt folosite pentru a seta modurile inițiale de pornire, a înregistra adrese și a vectorilor de întrerupere a dispozitivelor externe.

Conectorul P1 este folosit pentru a conecta un dispozitiv extern la un canal I/O serial, iar conectorul P2 este folosit pentru a conecta dispozitive la un canal I/O paralel de octeți, precum și pentru a conecta o unitate float.

Unificare prin proiecta, un sistem de comandă, o interfață de canal cu un computer de tip „Electronics-60”, vă permite să creșteți capacitățile tehnice ale unui microcomputer prin conectarea dispozitivelor funcționale standard suplimentare prin canal, precum și a dispozitivelor unificate dezvoltate de utilizator.

Orez. 1. Schema bloc a microcomputerului „MS1201.01”

Orez. 2. Aspectul dispozitivelor principale

pe placa de microcomputer „Electronics MS1201.01 (02)”

A TREIA ÎNTREBARE

Microcalculatorul „MS1201.01” folosește următoarele moduri de adresare: registru, registru indirect, auto-incremental, indirect-auto-incremental, auto-decremental, indirect-autodecremental, index și indirect-index.

Microcalculatorul folosește următoarele tipuri de comenzi: fără adresă, unicast și cu două adrese.

Comunicarea între dispozitivele conectate la canalul microcalculatorului se realizează conform principiului „activ-pasiv”.

În orice moment, un singur dispozitiv este activ și controlează ciclurile de comunicare din canal. Informațiile sunt transmise prin principiul asincron folosind semnale speciale de sincronizare K ENTER N; LA IEȘIRE N; K SIP N; K SIA N, i.e. Semnalul care inițiază schimbul de date de la dispozitivul activ trebuie să primească un semnal de răspuns de la dispozitivul pasiv.

Microcalculatorul are următoarele priorități pentru întreruperile întreruperilor între dispozitivele de intrare/ieșire ale interfeței:

1 – de la UPVV.

2 – de la UI GMD.

3 – de la UBPI.

Nu există un dispozitiv de acces direct la memorie în microcomputer. Procesorul RON (R0 – R7) poate servi ca registre de stocare, registre de index, registre de adresare auto-incrementale și auto-decrementale și alte scopuri. În plus, R6 funcționează ca un registru de indicatori de stivă (RUS), iar R7 funcționează ca un registru de contor de program (PCR). Formatul registrului este de 16 biți binari; pentru operațiunile cu octeți, sunt utilizați cei 8 biți cei mai puțin semnificativi ai registrelor.

Datorită nevoii de cunoaștere mai profundă a funcționării microcomputerului MC1201, deoarece pe baza acestuia au fost construite două sisteme CNC - 2P22 și Kontur - 1, vom analiza mai detaliat câteva aspecte ale funcționării acestuia.

Structura unui microcalculator cu o coloană vertebrală comună. Organizarea micro-computerului „Electronics MS 1201.01” se bazează pe principiul comunicării între dispozitive folosind unul autostrada comuna(Fig. 3). Pentru fiecare dispozitiv conectat la coloana vertebrală comună, tipul de comunicare este același. CPU P folosește același set de semnale atât pentru comunicarea cu celulele RAM OP,și pentru comunicarea cu dispozitivele periferice. Fiecărei celule de memorie, registre de procesor și registre periferice i se atribuie o adresă de magistrală specifică.Datorită acestei structuri, toate instrucțiunile pentru datele stocate în RAM OP, V in aceeasi masura poate fi folosit și pentru date din registrele dispozitivelor periferice. Acest principiu este o caracteristică foarte semnificativă a unui microcomputer cu o coloană vertebrală comună, deoarece același set de comenzi poate fi utilizat atât pentru calcule, cât și pentru controlul intrărilor-ieșiri. Echipe speciale input-output devin inutile, iar input-output de informații pot fi combinate cu procesarea acesteia. Datorită transferurilor bidirecționale și asincrone, dispozitivele pot trimite, primi și schimba date între ele. Organizarea funcționării unei coloane vertebrale comune în conformitate cu principiul „cerere-răspuns” asincron vă permite să coordonați funcționarea dispozitivelor care funcționează în cea mai largă gamă de frecvență.

Orez. 3. Structura unui microcalculator cu coloană vertebrală comună.

Comunicarea între dispozitivele conectate printr-o autostradă comună se realizează conform principiului „master - executor”. În orice moment, există un singur dispozitiv care controlează autostrada și este numit „master”. Acest dispozitiv controlează funcționarea portbagajului atunci când comunică cu un alt dispozitiv conectat la portbagaj, numit „receptor”. Un exemplu tipic al acestei relații este procesorul P, care servește ca dispozitiv principal și selectează o comandă din RAM OP(memoria este întotdeauna un dispozitiv de execuție). Dispozitivul principal, de exemplu, poate fi o unitate de disc magnetică (NMD), transmiterea datelor către OP. Astfel, comunicarea între dispozitive este dinamică.

Linia comună este utilizată de procesorul P și de toate dispozitivele I/O UVV. Sistemul de prioritate determină ce dispozitiv preia controlul asupra autostrăzii. Astfel, fiecărui dispozitiv conectat la magistrală și capabil să devină master îi este atribuită o prioritate.

Microcalculatorul în cauză are o linie de întrerupere prioritară. În cazul în care două (sau mai multe) dispozitive care sunt capabile să devină dispozitive de control pentru magistrală trimit simultan solicitări de utilizare a magistralei, controlul este transferat dispozitivului a cărui conexiune electrică este mai aproape de procesor.

Schimbul de date între dispozitivele conectate la magistrală poate fi efectuat în următoarele moduri:

1) software;

2) prin întrerupere;

3) acces direct la memorie (PDP).

Modul program- cel mai versatil. La inițiativa și sub controlul programului, se pot trimite cuvinte complete de 16 biți sau octeți de informații de 8 biți între dispozitivele master și receptor. Informațiile pot fi comenzi, adrese sau date. În mod obișnuit, procesorul, ca dispozitiv principal, selectează instrucțiuni din memorie și operanzi din memorie sau registre, iar după executarea instrucțiunilor, trimite rezultatele în memorie sau în registre.

În modul întrerupere schimbul de date are loc la cerere dispozitiv periferic. În acest caz, procesorul întrerupe execuția programului curent pentru a deservi dispozitivul solicitant. După finalizarea programului de întreținere, procesorul reia execuția programului întrerupt din punctul în care acesta a fost întrerupt. Deoarece un procesor este în general capabil să execute oriunde de la o duzină la o mie de instrucțiuni în perioada de timp dintre două transferuri succesive de date de la un dispozitiv de intrare/ieșire, nu este fezabil din punct de vedere economic să-l forțezi să rămână inactiv în acest timp. Transferul datelor prin întrerupere permite procesorului să lucreze simultan cu procesul I/O și să primească informații despre momentul finalizării acestuia.

În modul DMA(DAP) schimbul de date se realizează fără controlul programului de la procesor și este cel mai mare într-un mod rapid transferul de date între memorie și dispozitivul extern. Adresarea și gestionarea dimensiunii matricei transferate trebuie asigurate de dispozitivul care a primit acces direct la memorie. În mod obișnuit, modul DMA este utilizat atunci când se schimbă matrice de date între unități de pe discuri sau benzi magnetice (NMD sau NML) și RAM.

Ciclurile de funcționare ale magistralei atunci când interacționează cu procesorul sunt: ​​„Citire” - transferarea unui cuvânt de date de la un dispozitiv extern la procesor; „Scrie” - transferul unui cuvânt sau al unui octet de date de la procesor pe un dispozitiv extern; „Citire modificare - scriere” - transferul unui cuvânt de date de la un dispozitiv extern la procesor, urmat de scrierea unui cuvânt (octet) de date de la procesor la un dispozitiv extern.

Fiecare instrucțiune de procesor necesită unul sau mai multe cicluri de magistrală. În primul rând, se execută ciclul „Citire”, în care se selectează o comandă dintr-o celulă de memorie (adresa celulei este specificată de contorul de program). Dacă nu mai există operanzi care necesită acces la memorie sau la registrele dispozitivului I/O, atunci nu sunt necesare cicluri de lucru suplimentare pentru a executa instrucțiunea. Cu toate acestea, dacă este necesar accesul la memorie sau la un dispozitiv extern, este necesar unul (sau mai multe) cicluri de lucru suplimentare.

Observați diferența dintre întreruperi și operațiunile de acces direct la memorie. întreruperi schimba starea procesorului și, prin urmare, poate avea loc doar între comenzile procesorului. Operații de acces direct la memorie poate fi executat în cadrul execuției instrucțiunilor între ciclurile magistralei individuale, deoarece aceste operații nu schimbă starea procesorului.