Rezumat: Arhitectura microprocesorului - structura si caracteristici generale

1.6.1 Noțiuni de bază

Dezvoltarea tehnologiei face posibilă crearea pe un cip a unui număr tot mai mare de componente active - tranzistoare, care pot fi folosite pentru a implementa noi soluții arhitecturale și structurale care oferă performanțe crescute și funcționalitate extinsă a microprocesoarelor.

Tehnologia cu microprocesor include hardware și software utilizate pentru a construi diverse sisteme cu microprocesoare, dispozitive și microcalculatoare personale.

Microprocesor (MP) un dispozitiv controlat de software care realizează procesul de prelucrare și control al informațiilor digitale și este construit, de regulă, pe un singur LSI.

Sistem cu microprocesor (MPS) este un produs complet funcțional format din unul sau mai multe dispozitive, în principal bazate pe microprocesor: un microprocesor și/sau un microcontroler.

Termen "microcontroller" (MK) a înlocuit termenul folosit anterior „microcomputer cu un singur cip” de la utilizare. Primul brevet pentru un microcomputer cu un singur cip a fost eliberat în 1971 pentru M. Kochren și G. Boon. Aceștia au propus plasarea pe un cip nu numai a unui microprocesor, ci și a dispozitivelor de memorie și de intrare/ieșire. Apariția microcalculatoarelor cu un singur cip este asociată cu începutul erei automatizării computerelor în domeniul managementului. Aparent, această împrejurare a definit termenul "microcontroller" (Control- management).

Cu toate acestea, ulterior, extinderea domeniului de utilizare a microcontrolerelor a presupus dezvoltarea arhitecturii acestora datorită plasării dispozitivelor (modulelor) pe un cip care reflectă specificul sarcinilor care se rezolvă cu funcționalitatea lor. Astfel de dispozitive suplimentare au ajuns să fie numite periferice. Prin urmare, nu întâmplător a fost introdus recent un alt termen - „procesor integrat” (IP) , care definește o nouă clasă de dispozitive cu un singur cip funcțional capabile cu o compoziție diferită de module. După cantitate și compoziție dispozitiv periferic IP-urile sunt inferioare deputaților și ocupă o poziție intermediară între parlamentari și deputați. Din același motiv, au apărut nu numai familii de MK-uri, care unesc MK-uri înrudite (cu același sistem de comandă, adâncime de biți), ci au început să se distingă și subtipuri de MK-uri: comunicare, pentru control etc.

Microcontroler (MK) – computer cu un singur cip sau microprocesor de control.

MP-urile sunt în prezent utilizate în principal pentru producția de computere personale, iar MK-urile și IP-urile sunt baza pentru crearea diferitelor sisteme încorporate, telecomunicații și echipamente portabile etc.

Arhitectura procesorului este complexul hardware și software furnizat utilizatorului. Acest concept general include un set de registre accesibile prin software și dispozitive executive (de operare), un sistem de comenzi de bază și metode de adresare, volumul și structura memoriei adresabile etc.

Arhitectură strâns legat de structura , care prevede prezența componentelor pentru implementarea funcțiilor procesorului.

1.6.2 Variante ale arhitecturii microprocesoarelor

Depinde dinset de comenzi de executat și metode de adresare

    CISC ( Complex Instruire A stabilit Calculator ) – arhitectura implementat în multe tipuri de microprocesoare care execută un set mare de instrucțiuni multi-format folosind numeroase metode de adresare.

De exemplu, microprocesoare din familia Pentium. Ei execută peste 200 de comenzi de complexitate diferită, care variază în dimensiune de la 1 la 15 octeți și oferă mai mult de 10 în diverse moduri adresare).

O mare varietate de comenzi executate și metode de adresare permite programatorului să implementeze cei mai eficienți algoritmi pentru rezolvarea diferitelor probleme. Cu toate acestea, în același timp, structura microprocesorului, în special a dispozitivului său de control, devine semnificativ mai complicată, ceea ce duce la o creștere a dimensiunii și a costului cristalului și la o scădere a performanței. În același timp, multe comenzi și metode de adresare sunt folosite destul de rar. Prin urmare, începând cu anii 1980, a început o dezvoltare intensivă arhitectură redusă a procesorului set de comenzi ( RISC -procesoare).

    RISC ( Redus Instruire A stabilit Calculator ) – arhitectura caracterizată prin utilizarea unui set limitat de comenzi de format fix și a unui număr redus de metode de adresare. În consecință, structura microprocesorului este simplificată semnificativ, dimensiunea și costul acestuia sunt reduse, iar productivitatea crește semnificativ.

Procesoarele RISC moderne implementează de obicei aproximativ 100 de instrucțiuni, care au un format fix de 4 octeți lungime. Numărul de metode de adresare utilizate este de asemenea redus semnificativ. De obicei, la procesoarele RISC, toate instrucțiunile de prelucrare a datelor sunt executate numai cu registru sau adresare imediată. În același timp, pentru a reduce numărul de accesări la memorie, procesoarele RISC au un volum crescut de stocare a registrelor interne - de la 32 la câteva sute de registre, în timp ce la procesoarele CISC numărul de registre de uz general este de obicei 8-16 în procesoarele RISC este utilizat numai în operațiuni de încărcare a datelor în REU sau de transfer a rezultatelor din REU în memorie. În acest caz, un număr mic dintre cele mai multe moduri simple adresare: registru indirect, index și altele.

Avantajele arhitecturii RISC au dus la faptul că multe procesoare CISC moderne folosesc un nucleu RISC pentru a efectua procesarea datelor. În acest caz, comenzile complexe și multi-formate primite sunt pre-convertite într-o secvență de operații RISC simple care sunt executate rapid de acest nucleu de procesor.

Așa funcționează, de exemplu, cele mai recente modele de microprocesoare Pentium și K7, care conform indicatorilor externi aparțin procesoarelor CISC. Utilizarea arhitecturii RISC este o trăsătură caracteristică multor microprocesoare moderne.

    VLIW ( Foarte Mare Instruire Cuvânt ) – o caracteristică a arhitecturii este utilizarea de comenzi foarte lungi (până la 128 de biți sau mai mult), dintre care câmpurile individuale conțin coduri care permit executarea diferitelor operații. Astfel, o comandă face ca mai multe operații să fie executate în paralel în diferite dispozitive de operare, incluse în structura microprocesorului.

Arhitectură a apărut relativ recent - în anii 1990.

Depinde privind implementarea memoriei utilizate și organizarea comenzilor de preluare și a datelor Următoarele opțiuni de arhitectură sunt implementate în microprocesoarele moderne:

    Arhitectura Princeton , care este adesea numit Arhitectura Von Neumann, caracterizat prin utilizarea RAM partajată pentru a stoca programe și date. Pentru a accesa această memorie, se folosește o magistrală comună de sistem, prin care atât comenzile, cât și datele intră în procesor.

Avantaje arhitectură:

a) Prezența memoriei partajate vă permite să redistribuiți rapid volumul acesteia pentru a stoca matrice separate de comenzi și date, în funcție de sarcinile rezolvate. Acest lucru asigură capacitatea de a utiliza eficient volumul disponibil memorie cu acces aleatorîn fiecare caz specific de utilizare a unui microprocesor;

b) utilizarea unei magistrale comune pentru transmiterea comenzilor și a datelor simplifică foarte mult depanarea, testarea și monitorizarea continuă a funcționării sistemului și crește fiabilitatea acestuia.

Principalul dezavantaj arhitectura este nevoia de eșantionare secvențială a comenzilor și a datelor procesate pe o magistrală comună de sistem. În acest caz, autobuzul comun devine un „gât de sticlă”, ceea ce limitează productivitatea sistem digital.

    Arhitectura Harvard caracterizată prin separarea fizică a memoriei de instrucțiuni (programe) și a memoriei de date. Fiecare memorie este conectată la procesor printr-o magistrală separată, care permite citirea și scrierea simultană a datelor în timp ce se execută comanda curentă pentru a prelua și decoda următoarea comandă.

Demnitate arhitectura are o performanță mai mare decât utilizarea arhitecturii Princeton, datorită separării fluxurilor de comandă și date și combinației operațiunilor lor de preluare.

Defecte arhitecturile sunt asociate cu necesitatea unui număr mai mare de magistrale, precum și cu o cantitate fixă ​​de memorie alocată pentru comenzi și date, al cărei scop nu poate fi redistribuit rapid în conformitate cu cerințele problemei care se rezolvă.

Prin urmare, este necesar să se folosească o memorie mai mare, a cărei rată de utilizare la rezolvarea diferitelor probleme este mai mică decât în ​​sistemele cu arhitectura Princeton. Cu toate acestea, dezvoltarea tehnologiei microelectronice a făcut posibilă depășirea în mare măsură a acestor neajunsuri.

GarArhitectura vardiană utilizat pe scară largă în structura internă a microprocesoarelor moderne de înaltă performanță, care utilizează o memorie cache separată pentru a stoca instrucțiuni și date. În același timp, principiile de Arhitectura Princeton.

        Structura tipică a unui sistem cu microprocesor

Majoritatea sistemelor cu microprocesoare au o structură magistrală-modulară, în care dispozitivele individuale (module) incluse în sistem fac schimb de informații printr-o magistrală comună a sistemului (Figura 1.7).

Modulul principal al sistemului este un microprocesor, care include

    aranja management (UU) ,

    dispozitiv de operare ,

    înregistrează gura de depozitare roi (RZU) – memorie internă, implementată ca un set de registre.

Operă dispozitiv de stocare activ (RAM) servește la stocarea programului executabil (sau a fragmentelor acestuia) și a datelor de prelucrat. În cele mai simple sisteme cu microprocesor, cantitatea de RAM este de zeci și sute de octeți, iar în computerele personale, serverele și stațiile de lucru moderne ajunge la sute de MB sau mai mult. Deoarece accesarea RAM prin magistrala de sistem necesită o perioadă semnificativă de timp, majoritatea microprocesoarelor moderne de înaltă performanță introduc în plus memorie intermediară de mare viteză (cache) volum limitat (de la câțiva KB la sute de KB).

Memorie numai pentru citire (ROM) folosit pentru a stoca constante și programe standard (imuabile). ROM stochează de obicei programe de inițializare (pornire) pentru sisteme, programe de testare și diagnosticare și alte programe de service care nu se modifică în timpul funcționării sistemului. Sistemele cu microprocesoare care controlează anumite obiecte utilizând programe fixe sau rar modificate folosesc, de obicei, ROM (ROM) pentru a le stoca. memorie ROM– Memorie Read-Only) sau ROM reprogramabilă (memorie EEPROM – Memorie de doar citire programabilă stersă electric sau memorie flash).

Inter dispozitive faciale (FD) servesc la conectarea la magistrală a altor dispozitive care sunt externe sistemului. IU-urile implementează anumite protocoale de comunicație paralelă sau serială. Dispozitivele externe pot fi o tastatură, un monitor, dispozitive de stocare externe (ESD) care utilizează dischete sau discuri magnetice rigide, discuri optice (CD-ROM), benzi magnetice și alte tipuri de medii de stocare, senzori și convertoare de informații (analog-digital sau digital-analogic), diverse actuatoare (indicatoare, imprimante, motoare electrice, relee și altele).

Pentru a implementa diverse moduri de operare, la sistem pot fi conectate dispozitive suplimentare - controlere de întrerupere, controlere de acces direct la memorie și altele care implementează funcțiile speciale de control necesare.

Această structură corespunde arhitecturii Von Neumann propusă de acest om de știință în anii 1940 pentru a implementa primele modele de calculatoare digitale.

УУ – dispozitiv de control

OS - dispozitiv de operare

RZU – dispozitiv de stocare a înregistrărilor

RAM - memorie cu acces aleatoriu

ROM – memorie doar pentru citire

IU – dispozitiv de interfață

Figura 1.7 – Structura tipică a unui sistem cu microprocesor

Autobuz de sistem conține câteva zeci (în sistemele complexe mai mult de 100) conductoare, care, în conformitate cu scopul lor funcțional, sunt împărțite în magistrale separate:

    magistrala de adrese A, servește la transmiterea unei adrese care este generată de microprocesor și vă permite să selectați celula de memorie RAM necesară (ROM) sau DI necesară atunci când accesați un dispozitiv extern;

    magistrala de dateD, este folosit pentru a prelua comenzile venite din RAM sau ROM către unitatea de control a microprocesorului și pentru a transfera date procesate (operanzi) între microprocesor și RAM sau dispozitiv (dispozitiv extern);

    magistrala de control C, servește la transmiterea unei varietăți de semnale de control care determină modurile de funcționare ale memoriei (scriere sau citire), dispozitive de interfață (intrare sau ieșire de informații) și microprocesor (pornire, solicitări de dispozitive externe pentru service, informații despre curentul). modul de funcționare) și alte semnale.

  • INTRODUCERE
  • 1. Caracteristici generale ale arhitecturii procesorului
    • 1.1 Structură de bază sistem cu microprocesor
    • 1.2 Conceptul arhitecturii microprocesorului
    • 1.3 Revizuirea tipurilor existente de arhitecturi de microprocesoare
  • 2. Dispozitiv de control
  • 3. Caracteristici de control software și firmware
  • 4. Moduri de adresare
  • Concluzie
  • Bibliografie
  • INTRODUCERE
  • Procesul de interacțiune umană cu computerele se desfășoară de mai bine de 40 de ani. Până de curând, la acest proces puteau participa doar specialiştii - ingineri, matematicieni - programatori, operatori. În ultimii ani, s-au produs schimbări dramatice în domeniul calculului. Datorită dezvoltării și implementării microprocesoarelor în structura computerului, au apărut computere personale de dimensiuni mici, ușor de utilizat. Situația s-a schimbat; rolul unui utilizator poate fi nu doar un specialist în calculatoare, ci și orice persoană, fie că este vorba de școlar sau de gospodină, de medic sau de profesor, de muncitor sau de inginer. Acest fenomen este adesea numit fenomen calculator personal. În prezent, flota globală de computere personale depășește 20 de milioane.
  • De ce a avut loc acest fenomen? Răspunsul la această întrebare poate fi găsit dacă formulăm clar ce este un computer personal și care sunt principalele sale caracteristici. Trebuie să percepem corect însăși definiția „personal” nu înseamnă că un computer aparține unei persoane ca proprietate personală. Definiția „personal” a apărut deoarece o persoană a avut posibilitatea de a comunica cu un computer fără medierea unui programator profesionist, independent, personal. Nu este necesar să cunoașteți un limbaj special de calculator. Software-ul existent în computer va oferi o formă favorabilă „prietenoasă” de dialog între utilizator și computer.
  • În prezent, unul dintre cele mai populare computere este modelul IBM PC și versiunea sa modernizată IBM PC XT, care, conform arhitecturii sale, software, designul extern este considerat modelul de bază al unui computer personal.
  • Baza unui computer personal este unitatea de sistem. Organizează munca, procesează informații, face calcule și asigură comunicarea între o persoană și un computer. Utilizatorului nu i se cere să înțeleagă temeinic cum funcționează unitatea de sistem. Aceasta este pentru specialiști. Dar el trebuie să știe din ce blocuri funcționale constă computerul. Nu avem o idee clară despre principiul de funcționare a blocurilor funcționale interne ale obiectelor din jurul nostru - un frigider, o sobă cu gaz, o mașină de spălat, o mașină, dar trebuie să știm care este baza pentru funcționarea aceste dispozitive, care sunt capabilitățile blocurilor lor constitutive.
1. Caracteristici generale ale arhitecturii procesorului 1.1 Structura de bază a unui sistem cu microprocesor Sarcina de gestionare a sistemului este atribuită unității centrale de procesare (CPU), care este conectată la memorie și la sistemul de intrare/ieșire prin intermediul canalelor de memorie și, respectiv, de intrare/ieșire. CPU citește instrucțiunile din memorie care alcătuiesc programul și le decodifică. În funcție de rezultatul instrucțiunilor de decodare, acesta preia date din memoria porturilor de intrare, le procesează și le trimite înapoi în porturile de memorie sau de ieșire. Există, de asemenea, capacitatea de a I/O date din memorie către dispozitive externe și invers, ocolind CPU-ul. Acest mecanism se numește acces direct la memorie (DMA) Din punctul de vedere al utilizatorului, atunci când alegeți un microprocesor, este util să aveți câteva caracteristici cuprinzătoare generalizate ale capacităților microprocesorului. Dezvoltatorul trebuie să înțeleagă și să înțeleagă doar acele componente ale microprocesorului care se reflectă clar în programe și trebuie luate în considerare la dezvoltarea circuitelor și a programelor pentru funcționarea sistemului. Astfel de caracteristici sunt definite de conceptul de arhitectură a microprocesorului. 1.2 Conceptul arhitecturii microprocesorului Arhitectura unui sistem de calcul mic tipic pe bazat pe microcalculator prezentată în fig. 1. Un astfel de microcalculator conține toate cele 5 blocuri principale ale unei mașini digitale: un dispozitiv de introducere a informațiilor, o unitate de control (CU), o unitate aritmetică-logică (ALU) (inclusă în microprocesor), dispozitive de stocare (SRAM) și o unitate de informații dispozitiv de ieșire. 1. Arhitectura unui microprocesor tipic Microprocesorul coordonează funcționarea tuturor dispozitivelor sistemului digital folosind o magistrală de control (CB). Pe lângă SHU, există o magistrală de adrese pe 16 biți (ABA), care este utilizată pentru a selecta o anumită celulă de memorie, un port de intrare sau un port de ieșire. Autobuzul de informații de 8 biți sau magistrala de date (SD) efectuează transferul bidirecțional de date către și de la microprocesor. Este important de reținut că MP-ul poate trimite informații către memoria microcomputerului sau către unul dintre porturile de ieșire, precum și să primească informații din memorie sau de la unul dintre porturile de memorie read-only (ROM) din microcalculatorul conține un program (în practică, programul de inițializare a computerului). Programele pot fi încărcate într-o memorie cu acces aleatoriu (RAM) și de pe un dispozitiv de stocare extern (ERM). Acestea sunt programe de utilizator Ca exemplu care ilustrează funcționarea unui microcalculator, luați în considerare o procedură pentru implementarea căreia trebuie să efectuați următoarea secvență de operații elementare: 1. Apăsați tasta cu litera „A” de pe tastatură.2. Pune litera „A” în memoria microcalculatorului.3. Afișați litera „A” pe ecranul de afișare Aceasta este o procedură tipică de intrare-stocare-ieșire, care face posibilă explicarea principiilor de utilizare a unor dispozitive incluse în microcomputer. Figura 2 prezintă o diagramă detaliată a execuției procedurii intrare-stocare-ieșire. Rețineți că instrucțiunile sunt deja încărcate în primele șase locații de memorie. Programul stocat conține următorul lanț de comenzi: 1. Introduceți datele din portul de intrare 1.2. Stocați datele în locația de memorie 200.3. Trimiteți date la portul de ieșire 10. Există doar trei comenzi în acest program, deși în Fig. 2 poate părea că există șase instrucțiuni stocate în memoria programului. Acest lucru se datorează faptului că echipa este de obicei împărțită în părți. Prima parte a comenzii 1 din programul de mai sus este comanda de introducere a datelor. A doua parte a comenzii 1 specifică de unde trebuie introduse datele (de la portul 1). Prima parte a comenzii, care specifică o acțiune specifică, se numește codul de operație (OPC), iar a doua parte se numește operand. Opcode și operandul sunt plasate în celule individuale memoria programului. În fig. 2 COP este stocat în celula 100, iar codul operandului este stocat în celula 101 (portul 1); acesta din urmă indică de unde ar trebui preluată informația În MP din Fig. 2, sunt evidențiate încă două blocuri noi - registre: acumulatorul și registrul de comandă Fig. 2. Diagrama de execuție a procedurii intrare-stocare-ieșire Să luăm în considerare trecerea comenzilor și a datelor în interiorul microcalculatorului folosind cercuri numerotate din diagramă. Să ne amintim că microprocesorul este nodul central care controlează mișcarea tuturor datelor și execuția operațiilor. Deci, atunci când se efectuează o procedură tipică de intrare-stocare-ieșire într-un microcalculator, are loc următoarea secvență de acțiuni: 1. MP emite adresa 100 către magistrala de adrese. Prin magistrala de control este trimis un semnal care setează memoria programului (un microcircuit specific) în modul citire.2. Memoria programului trimite prima comandă („Enter Data”) de-a lungul magistralei de date, iar MP-ul primește acest mesaj codificat. Comanda este plasată în registrul de comenzi. MP decodifică (interpretează) comanda primită și determină că comanda necesită un operand.3. Problemele MP se adresează 101 către ShA; Camera de control este folosită pentru a transfera memoria programului în modul citire.4. Operandul „De la portul 1” este trimis din memoria programului pe SD. Acest operand este localizat în memoria programului în celula 101. Codul operandului (conținând adresa portului 1) este transmis prin SD către MP și trimis în registrul de comenzi. MP-ul decodifică acum comanda completă („Introduceți date din portul 1”).5. MP, folosind ShA și ShU care îl conectează la dispozitivul de intrare, deschide portul 1. Cod digital litera „A” este transferată în acumulatorul din interiorul MP ​​și este reținută. Este important să rețineți că atunci când procesați fiecare comanda programului MP-ul funcţionează conform microprocedei de eşantionare-decodare-execuţie.6. MP accesează celula 102 prin SHA. Camera de control este folosită pentru a transfera memoria programului în modul citire.7. Codul de comandă „Store data” este trimis către SD și trimis către MP, unde este plasat în registrul de comenzi.8. MP descifrează această instrucțiune și determină că necesită un operand. MP accesează celula de memorie 103 şi activează intrarea pentru citirea cipurilor de memorie de program.9. Codul de mesaj „În celula de memorie 200” este trimis din memoria programului către SD. MP ia acest operand și îl plasează în registrul de instrucțiuni. Comanda completă „Store data in memory location 200” este selectată din memoria programului și decodificată.10. Acum începe procesul de execuție a comenzii. MP-ul înaintează adresa 200 către SHA şi activează intrarea de scriere aferentă memoriei de date.11. MP-ul transmite informațiile stocate în baterie către memoria de date. Codul literei „A” este transmis prin SD și scris în celula 200 a acestei memorie. A doua comandă a fost executată. Procesul de memorare nu distruge conținutul bateriei. Conține încă codul pentru litera „A”.12. MP accesează celula de memorie 104 pentru a selecta următoarea comandă și comută memoria programului în modul citire.13. Codul de comandă de ieșire a datelor este trimis prin SD către MP, care îl plasează în registrul de comenzi, îl decriptează și determină că este necesar un operand.14. MP emite adresa 105 către SHA și setează memoria programului în modul citire.15. Din memoria programului prin SD, codul de operand „To port 10” ajunge la MP, care este apoi plasat în registrul de comenzi.16. MP decriptează comanda completă „Ieșire date în portul 10”. Cu ajutorul ShA și ShU care îl conectează la dispozitivul de ieșire, MP deschide portul 10 și trimite codul literei „A” (încă aflată în baterie) prin ShD. Litera „A” este afișată prin portul 10 pe ecranul de afișare În majoritatea sistemelor cu microprocesor (MPS), informațiile sunt transferate într-un mod similar cu cel discutat mai sus. Cele mai semnificative diferențe sunt posibile în blocurile de intrare și de ieșire a informațiilor. Să subliniem încă o dată că microprocesorul este nucleul sistemului și controlează toate operațiunile. Lucrarea sa reprezintă o implementare secvențială a microprocedurilor de eșantionare-decriptare-execuție. În acest caz, succesiunea efectivă a operațiilor în MPS este determinată de comenzile înregistrate în memoria programului. Astfel, în MPS, microprocesorul realizează următoarele funcții: - preluarea comenzilor de program din memoria principală; efectuarea de operații aritmetice, logice și de altă natură codificate în comenzi - controlul transferului de informații între registre și memoria principală, între dispozitivele de intrare/ieșire, inclusiv implementarea întreruperilor de la aceste dispozitive; coordonarea funcționării principalelor noduri MP. 1.3 Revizuirea tipurilor existente de arhitecturi de microprocesoare Există mai multe abordări pentru clasificarea microprocesoarelor după tipul de arhitectură. Astfel, MP se disting cu arhitectura CISC (Complete Instruction Set Computer), caracterizată printr-un set complet de instrucțiuni, și arhitectura RISC (Reduce Instruction Set Computer), care definește un sistem cu un set redus de comenzi de același format, executate în un ciclu de clock MP Definit ca principală capacitate de biți MP, se disting următoarele tipuri de arhitecturi MP: - cu o capacitate de biți fixă ​​și o listă de instrucțiuni (single-chip) și controlul microprogramelor Analizând spațiile de adrese ale programelor și datelor, se determină MP cu arhitectură von Neumann (memoria programului și memoria datelor sunt situate în spatiu comunși nu există semne care să indice tipul de informații din celula de memorie) și MP cu arhitectura Laboratorului Harvard (memoria de program și memoria de date sunt separate, au propriile spații de adrese și metode de accesare a acestora). detaliază principalele tipuri de soluții arhitecturale, evidențiind legătura cu metodele de adresare a memoriei.1. Arhitectura registrului este determinată de prezența unui fișier de registru suficient de mare în interiorul MP. Instrucțiunile pot accesa operanzii aflați pe unul dintre cele două medii de stocare: RAM sau registre. Mărimea registrului este de obicei fixă ​​și se potrivește cu dimensiunea cuvântului implementat fizic în RAM. Orice registru poate fi accesat direct, deoarece registrele sunt reprezentate ca o matrice de elemente de stocare - un fișier de registru. Este tipic să efectuați operații aritmetice numai într-un registru, în timp ce instrucțiunea conține doi operanzi (ambele operanzi într-un registru sau un operand într-un registru și al doilea în RAM).K acest tip arhitectura include un microprocesor de la Zilog. Procesorul Z80, creația lui Zilog, pe lângă un sistem de instrucțiuni extins, o putere nominală și capacitatea de a executa programe scrise pentru i8080, a avut caracteristici arhitecturale. 3. Microprocesorul Z80 de la Zilog Pe lângă setul principal de RON, un al doilea set de registre similare a fost implementat în cristal. Acest lucru a simplificat foarte mult munca la apelarea subrutinelor sau a rutinelor de serviciu de întrerupere, deoarece programatorul putea folosi un set alternativ de registre pentru acestea, evitând stocarea conținutului de RON pentru programul principal pe stivă folosind operațiunile PUSH. În plus, în sistemul de instrucțiuni au fost incluse o serie de instrucțiuni speciale, concentrate pe procesarea biților individuali și pentru a sprijini regenerarea memorie dinamică Hardware-ul corespunzător este introdus în circuitul procesorului. Z80 a fost folosit în mașinile Sinclair ZX, Sinclair Spectrum, Tandy TRS80. Opțiunea finală a fost o arhitectură cu adresare prin baterii (un set mai mic de comenzi). În primul rând, cristalul MC6800 a necesitat o putere nominală pentru funcționare, iar sistemul de comandă s-a dovedit a fi foarte transparent pentru programator. Arhitectura MP a avut de asemenea o serie de caracteristici. Dar cea mai valoroasă calitate a structurii MC 6800 a fost salvare automatăîn stiva de conținut al tuturor registrelor procesorului la procesarea întreruperilor (Z80 a necesitat mai multe comenzi PUSH pentru aceasta). Procedura de refacere a RON din stivă a fost efectuată și în hardware.2. Arhitectura stivei face posibilă crearea unui câmp de memorie cu o secvență ordonată de scriere și regăsire a informațiilor. În general, comenzile sunt adresate implicit elementului stivă situat în partea de sus a stivei, sau celor două elemente de sus ale stivei.3. . Arhitectura MP, axată pe RAM (de tip memorie la memorie), oferă viteză mare și mai mare capacitatea de informare registrele de lucru și stiva atunci când sunt organizate în RAM Acest tip de arhitectură nu necesită o definiție explicită a acumulatorului, a registrelor de uz general sau a stivei; toți operanzii comenzilor sunt adresați zonei de memorie principală Din punct de vedere al importanței pentru utilizator-programator, arhitectura este în general înțeleasă ca un ansamblu al următoarelor componente și caracteristici: - adresa și lățimea datelor - compoziția, denumirile și scopul registrelor accesibile - formate și comenzi de sistem - metode de reprezentare automată a datelor de diferite tipuri; clase de întreruperi, caracteristici de inițiere și procesare a întreruperilor. 2. Dispozitiv de control Codurile de operare ale comenzilor programului, percepute de partea de control a microprocesorului, decriptate și convertite în acesta, oferă informații despre ce operațiuni trebuie efectuate, unde se află datele în memorie, unde trebuie trimis rezultatul și unde urmează. comanda după ce se execută este localizată Dispozitivul de comandă dispune de mijloace suficiente pentru ca, după perceperea și interpretarea informațiilor primite în comandă, să se asigure comutarea (activarea) tuturor părților funcționale necesare ale mașinii. pentru a le furniza date și a percepe rezultatele obținute. Este acționarea, adică schimbarea stării elementelor logice binare la opus, care permite, prin porți de comutare, efectuarea de operații logice și aritmetice elementare, precum și transferul operanzilor necesari către părțile funcționale ale microcalculatorului succesiune strictă în intervalele de timp de ceas și ciclic ale funcționării microprocesorului (tact - intervalul minim de lucru în care se efectuează o acțiune elementară; ciclu - intervalul de timp în care se execută o operație a mașinii) efectuează: selectarea comenzii; interpretarea acestuia în scopul analizării formatului, caracteristicilor serviciului și calculării adresei operandului (operanzilor); stabilirea nomenclaturii și a secvenței de timp a tuturor semnalelor de control funcțional; generarea impulsurilor de control și transmiterea acestora către magistralele de control ale părților funcționale ale microcalculatorului și supapele dintre acestea; analizarea rezultatului operației și modificarea stării acesteia astfel încât să se determine locația (adresa) următoarei comenzi. 3. Caracteristici de control software și firmware Microprocesoarele folosesc două metode pentru generarea unui set de semnale de control funcționale: software și microprogram. Efectuarea operațiunilor într-o mașină se reduce la transformări elementare de informații (transferul de informații între noduri în blocuri, deplasarea informațiilor în noduri, operații logice pe biți, verificarea condițiilor). etc.) în elemente logice, noduri și blocuri sub influența semnalelor funcționale de control ale blocurilor (dispozitivelor) de control. Transformările elementare care nu pot fi descompuse în altele mai simple sunt efectuate în timpul unui ciclu de ceas al semnalelor de sincronizare și sunt numite micro-operații În dispozitivele de control hardware (circuit), fiecare operație are propriul său set de circuite logice, producând anumite semnale funcționale pentru a efectua microoperații în anumite momente în timp. Cu această metodă de construire a unui dispozitiv de control, implementarea micro-operațiilor se realizează prin circuite logice odată conectate între ele, prin urmare un computer cu un dispozitiv de control hardware se numește computer cu logică de control rigidă. Acest concept se referă la fixarea sistemului de comandă în structura de comunicație a computerului și înseamnă imposibilitatea practică a oricăror modificări în sistemul de comandă al computerului după fabricarea acestuia La implementarea unui dispozitiv de control al microprogramelor, în acesta din urmă este introdusă o memorie bit din codul de ieșire al căruia determină apariția unui anumit semnal functional management. Prin urmare, fiecărei microoperații i se atribuie propriul cod de informații - o microcomandă. Un set de microcomenzi și succesiunea implementării acestora asigură executarea oricărei operațiuni complexe. Un set de microoperații se numește microprograme. O metodă de control al operațiunilor prin citirea și interpretarea secvențială a microcomenzilor dintr-o memorie (cel mai adesea, matricele logice programabile de mare viteză sunt utilizate sub forma unei memorie de microprograme), precum și utilizarea codurilor de microcomandă pentru a genera semnale de control funcționale se numește microprogram, iar un microcalculator cu această metodă de control este microprogramat sau stocat (flexibil) logica de control. Microprogramele sunt supuse cerințelor de completitudine funcțională și minimalism. Prima cerință este necesară pentru a asigura capacitatea de a dezvolta microprograme pentru orice operațiuni ale mașinii, iar a doua este legată de dorința de a reduce cantitatea de echipament utilizat. Luarea în considerare a factorului de viteză duce la extinderea microprogramelor, deoarece complicația acestora din urmă face posibilă reducerea timpului de execuție al comenzilor programului. Conversia informațiilor se realizează în blocul aritmetic-logic universal al microprocesorului. De obicei, este construit pe baza circuitelor logice combinaționale Pentru a accelera execuția anumitor operații, sunt introduse unități de operare speciale suplimentare (de exemplu, schimbătoare ciclice). În plus, specializat unități operaționale expansoare aritmetice Capacitățile de operare ale microprocesorului pot fi extinse prin creșterea numărului de registre. Dacă nu există o alocare a funcțiilor de registru în memoria tampon de registru, atunci acestea pot fi utilizate atât pentru stocarea datelor, cât și pentru stocarea adreselor. Astfel de registre de microprocesor sunt numite registre de uz general (GPR). Pe măsură ce tehnologia se dezvoltă, producția a 16, 32 sau mai multe registre într-un microprocesor a fost efectiv realizată. În general, principiul controlului microprogramelor (PMC) include următoarele poziții: 1) orice operație implementată de dispozitiv este o secvență. actiuni elementare- microoperatii 2) sunt folosite conditii logice pentru a controla ordinea microoperatiilor 3) procesul de efectuare a operatiilor in aparat este descris sub forma unui algoritm reprezentat in termeni de microoperatii si conditii logice; microprogram; 4) microprogramul este utilizat ca formă de reprezentare a funcției dispozitivului, pe baza căreia se determină structura și ordinea de funcționare a dispozitivului în timp asigură flexibilitatea sistemului de microprocesor și permite orientarea în funcție de problemă de micro- și minicalculatoare. 4. Moduri de adresare Pentru a interacționa cu diverse module, computerul trebuie să aibă mijloace de identificare a celulelor de memorie externă, celule memorie interna, registre MP și registre dispozitiv I/O. Prin urmare, fiecărei celule de stocare i se atribuie o adresă, adică combinație neechivocă de biți. Numărul de biți determină numărul de celule care trebuie identificate. De obicei, un computer are spații de adrese diferite pentru registrele de memorie și MP și uneori - spații de adrese separate pentru registrele dispozitivelor de intrare/ieșire și memoria internă. În plus, memoria stochează atât date, cât și instrucțiuni. Prin urmare, pentru computere au fost dezvoltate multe modalități de accesare a memoriei, numite moduri de adresare Un mod de adresare a memoriei este o procedură sau o schemă de conversie a informațiilor despre un operand în adresa sa executivă. Toate metodele de adresare a memoriei pot fi împărțite în: 1) direct , când adresa executivă este preluată direct din comandă sau se calculează folosind valoarea specificată în comandă și conținutul unui registru (adresare directă, registru, bază, index etc.) indirect, care presupune că comanda conține valoarea adresei indirecte, adică de ex. adresele celulei de memorie în care se află adresa executivă finală (adresare indirectă) Fiecare microcalculator implementează doar unele moduri de adresare, a căror utilizare, de regulă, este determinată de arhitectura microcalculatorului. Concluzie Numărul computerelor personale atât în ​​lume, cât și, în special, în Rusia, crește rapid; Piața PC-urilor este cea mai promițătoare și mai profitabilă dintre celelalte piețe de calcul. ÎN America de Nordși Europa de Vest, procentul familiilor cu PC se apropie de 30. Fără îndoială, astăzi toată lumea ar trebui să studieze și să înțeleagă un computer nu doar teoretic, ci, cel mai important, practic procesorul, memoria, dispozitivele de intrare/ieșire formează baza oricărui computer. Să luăm în considerare cea mai comună diagramă bloc, care stă la baza celor mai comune modele de calculatoare, în special cele personale Un computer modern poate fi reprezentat în majoritatea cazurilor printr-o diagramă bloc simplificată, în care sunt evidențiate părțile centrale și periferice. Partea centrală include procesorul și memoria internă, partea periferică include dispozitivele de intrare/ieșire și memoria externă. Diagrama structurală simplificată se bazează pe principiile conectivității, modularității și microprogramabilității. Nu trebuie să sperăm că dezvoltarea tehnologiei informatice ne va schimba într-un fel radical existența. Un computer nu este mai mult (dar nici mai puțin) decât unul dintre puternicele motoare ale progresului (cum ar fi energia, metalurgia, chimia, ingineria mecanică), care necesită astfel de functie importanta ca o rutină pentru prelucrarea informaţiei. Această rutină întotdeauna și pretutindeni însoțește cele mai înalte zboruri ale gândirii umane. În această rutină se îneacă foarte des deciziile îndrăznețe care sunt inaccesibile unui computer. De aceea este atât de important să „dai vina” pe computer operațiuni de rutină, pentru a elibera o persoană pentru adevăratul său scop - creativitatea Viitorul tehnologiei microprocesoarelor este conectat astăzi cu două direcții noi - nanotehnologia și sistemele de calcul cuantic. Aceste studii, încă preponderent teoretice, se referă la utilizarea moleculelor și chiar a particulelor subatomice ca componente ale circuitelor logice: baza calculelor nu trebuie să fie circuite electrice, ca acum, ci poziția atomilor individuali sau direcția de rotație a electronilor. Dacă sunt create computere „microscopice”, acestea vor depăși mașinile moderne în multe privințe. Bibliografie 1. Balashov E.P., Grigoriev V.L., Petrov G.A. Micro și minicalculatoare. - Sankt Petersburg: Energoatomizdat, 2004.2. Eremin E.A. Prelegeri populare despre proiectarea computerelor. - Sankt Petersburg: BHV-Petersburg, 2003.3. Ibrahim K.F. Dispozitiv PC și configurare / Per. din engleza - M.: Binom, 2004..4. Kosarev V.P., Surkov E.M., Bakova I.V. Mijloace tehnice sistem de control. - M.: Editura „Finanţe şi Statistică”, 2006.5. Leontiev V.P. Cea mai recentă enciclopedie a unui computer personal 2003. - M.: OLMA-PRESS, 2004.6. Stallings W. Organizarea structurală și arhitectura sistemelor informatice. - M.: Williams, 2002.7. Wynn L. Roche. Biblia pentru actualizarea computerului personal. - M.: Tivali-Style, 2005.8. Figurnov V.E. IBM PC for the User, ediția a 6-a, revizuită și extinsă. - M.: INFRA-M, 1996.

Acest capitol se concentrează pe caracteristicile arhitecturale ale microprocesoarelor. Oferă informații generale despre microprocesoare, discută despre principiile organizării structurale și funcționale), tipurile de date, memoria de registre, metodele de adresare și sistemul de instrucțiuni al microprocesoarelor. Materialul prezentat este ilustrat pe cele mai simple procesoare de 8 și 16 biți.

Noțiuni de bază

Microprocesor este un dispozitiv controlat de software sub forma unui circuit integrat (LSI sau VLSI), conceput pentru a procesa informații digitale. Deoarece toate microprocesoarele moderne sunt integrate, termenul de procesor a devenit sinonim cu microprocesor.

Microcontroler este un procesor specializat conceput pentru a implementa funcții de control (control).

(xtypo_quote)Digital Signal Processor (DSP) este un procesor specializat conceput pentru a procesa semnale digitale. (/xtypo_quote)
Un sistem cu microprocesor este un produs complet funcțional format din mai multe dispozitive digitale, inclusiv procesorul. Acest concept combină o gamă largă de produse finite, începând cu microcontrolere realizate pe circuite integrate, și se termină cu sisteme informatice, care sunt un set de dispozitive individuale proiectate structural (unitate de sistem, tastatură, monitor etc.). În cele ce urmează, considerăm cele mai simple sisteme cu microprocesoare (cu un singur cip) care conțin, pe lângă procesor, memorie principală și dispozitive de intrare/ieșire. Astfel de sisteme cu microprocesoare pot fi clasificate ca microprocesoare.

Sub organizarea procesoruluiînțelege totalitatea nodurilor sale (dispozitive, blocuri, module), conexiunile dintre noduri și caracteristicile funcționale ale acestora. Organizația determină organizarea hardware a procesorului, adică compoziția și interacțiunea hardware-ului acestuia. Există două niveluri de organizare:

● organizarea fizică sub formă diagramă schematică;

● organizare logica sub forma unei diagrame structurale si functionale.

În cele ce urmează, avem în vedere organizarea microprocesoarelor la nivel logic, sau organizarea structurală și funcțională a procesoarelor.

Sub arhitectura procesorului vom înțelege totalitatea software-ului și hardware-ului său care asigură prelucrarea informațiilor digitale (execuția programului), adică totalitatea tuturor instrumentelor disponibile programului (sau utilizatorului). Acest concept mai general în comparație cu conceptul de organizare include un set de registre și dispozitive de operare accesibile software-ului, un sistem comenzile principaleși metodele de adresare, volumul și organizarea memoriei adresabile, tipurile și metodele de prelucrare a datelor (schimb, întreruperi, acces la memorie etc.).

(xtypo_quote) De exemplu, procesoarele moderne x86 pe 32 de biți cu arhitectură IA-32 (Arhitectura Intel - 2 biți) au un set standard de registre, un sistem comun de instrucțiuni de bază, aceleași metode de organizare și adresare a memoriei, protecție a memoriei și întreruperea service-ului. Rețineți că conceptul de arhitectură caracterizează proprietățile sistemului într-o măsură mai mare decât proprietățile dispozitivului. (/xtypo_quote)

Principalele tipuri de arhitecturi

În funcție de formatele comenzilor (instrucțiunilor) utilizate, putem distinge:

● Arhitectura CISC, care se referă la procesoare (calculatoare) cu un set complet de instrucțiuni (Complete Instruction Set Computer—CISC). Este implementat în multe tipuri de microprocesoare (de exemplu, Pentium), care execută un set mare de instrucțiuni multi-format folosind numeroase metode de adresare.

Setul de instrucțiuni de procesoare cu arhitectură CISC poate conține câteva sute de instrucțiuni diferite formate(de la 1 la 15 octeți) sau grade de complexitate și utilizează mai mult de 10 metode de adresare diferite, ceea ce permite programatorului să implementeze cei mai eficienți algoritmi pentru rezolvarea diferitelor probleme.

Dezvoltarea CISC tradițională

Arhitecturile microprocesoarelor, pe calea extinderii funcționalității și a reducerii costurilor de programare, au condus la creșterea numărului de instrucțiuni dintr-un set și a numărului de microinstrucțiuni dintr-o echipă. Consecința acestui lucru a fost complicarea circuitelor integrate și scăderea vitezei de execuție a programului. Unul dintre moduri posibile eliminarea acestor neajunsuri constă în utilizarea unui set redus de comenzi, a cărui organizare este supusă creșterii vitezei de execuție a acestora;

● Arhitectura RISC, care se referă la procesoare (calculatoare) cu un set de instrucțiuni redus (Reduced Instruction Set Computer - RISC). Apariția arhitecturii RISC este dictată de faptul că multe comenzi și metode de adresare CISC sunt folosite destul de rar. Caracteristica principală a arhitecturii RISC este că sistemul de instrucțiuni constă dintr-un număr mic de instrucțiuni utilizate frecvent de același format, care pot fi executate într-un singur ciclu de comandă (ciclu) al procesorului central. Comenzile mai complexe, utilizate rar, sunt implementate la nivel de program. Totuși, datorită creșterii semnificative a vitezei de execuție a instrucțiunilor, performanța medie a procesoarelor RISC poate fi mai mare decât cea a procesoarelor cu arhitectură CISC.

(xtypo_quote) Majoritatea instrucțiunilor despre procesoarele RISC implică operațiuni de la un registru la altul. Pentru accesarea memoriei, cele mai simple operatii din punct de vedere al consumului de timp sunt operatiile de incarcare in registre si scriere in memorie. (/xtypo_quote)

Procesoarele RISC moderne implementează aproximativ 100 de instrucțiuni care au un format fix de 4 octeți lungime și folosesc un număr mic dintre cele mai simple metode de adresare (registru, index și altele).

Pentru a reduce numărul de accesări la RAM externă, procesoarele RISC conțin zeci până la sute de registre de uz general (GPR), în timp ce în CISC-procesoare doar 8-16 registre. Accesul la memoria externă în procesoarele RISC este utilizat numai în operațiuni de încărcare a datelor în RON sau de transfer a rezultatelor din RON în memorie. Prin reducerea hardware-ului necesar pentru decodarea și executarea comenzilor complexe, circuitele integrate ale procesorului RISC sunt simplificate semnificativ și costul lor este redus. În plus, productivitatea este îmbunătățită semnificativ. Datorită acestor avantaje, multe moderne
Procesoare CI SC (cele mai recente Modele Pentiumși K7) se folosește un nucleu RISC. În acest caz, comenzile CI SC complexe sunt pre-convertite într-o secvență de operații RISC simple și executate rapid de nucleul RISC;

● Arhitectura VLIW, care se referă la microprocesoare care utilizează instrucțiuni foarte lungi (Very Large Instruction Word—VLIW). Câmpurile de comandă individuale conțin coduri care efectuează diverse operații. O comandă VLIW poate efectua mai multe operații simultan în diferite noduri de microprocesor. Formarea comenzilor VLIW „lungi” este efectuată de compilatorul corespunzător atunci când traduceți programe scrise într-un limbaj de nivel înalt.

(xtypo_quote)VLIW -arhitectură implementate în unele tipuri microprocesoare moderneși este foarte promițător pentru crearea unei noi generații de procesoare ultra-performanțe. (/xtypo_quote)

După metoda de organizare a selecției comenzilor și datelor, se disting două tipuri de arhitecturi:

● Arhitectura Princeton, sau arhitectura von Neumann, o caracteristică a cărei caracteristică este (Fig. 2.1.1) utilizarea:

Memoria principală comună (acces aleatoriu) pentru stocarea programelor și datelor, care vă permite să redistribuiți rapid și eficient volumul acestuia în funcție de sarcinile rezolvate în fiecare caz specific de utilizare a unui microprocesor;

O magistrală comună prin care comenzile și datele sunt trimise către procesor, iar rezultatele sunt scrise în RAM, ceea ce simplifică foarte mult depanarea, testarea și monitorizarea continuă a funcționării sistemului și crește fiabilitatea acestuia. Pentru a separa instrucțiunea de date, codul operației efectuate este întotdeauna primit din memorie mai întâi, urmat de date. În mod implicit, codul de operare este încărcat în registrul de comandă, iar datele în blocul de registru (Fig. 2.1.1). Din cauza numărului limitat terminale externe Busul comun funcționează de obicei în modul de multiplexare în timp, adică direcțiile opuse de schimb de date între microprocesor, memorie sau alte dispozitive externe sunt separate în timp.

Dezavantajul arhitecturii Princeton

Utilizarea unei magistrale comune pentru transmiterea comenzilor și a datelor limitează performanța unui sistem digital;

● Arhitectura Harvard (creatorul Howard Aiken), a cărei caracteristică este separarea fizică a memoriei de instrucțiuni (programe) și a memoriei de date (Fig. 2.1.2). Această circumstanță este cauzată de cerințele în continuă creștere asupra performanței sistemelor cu microprocesor. Memoria de comandă și memoria de date sunt conectate la procesor prin magistrale separate. Datorită separării fluxurilor de comandă și date, precum și combinării operațiunilor de recuperare a acestora (și înregistrarea rezultatelor procesării), se asigură performanțe mai mari decât atunci când se utilizează arhitectura Princeton.

Dezavantajele arhitecturii Harvard

Complexitate crescută de proiectare datorită utilizării magistralelor separate pentru comenzi și date; cantitate fixă ​​de memorie pentru comenzi și date; o creștere a cantității totale de memorie din cauza imposibilității redistribuirii optime a acesteia între comenzi și date. Arhitectura Harvard este utilizată pe scară largă în microcontrolere - microprocesoare specializate pentru controlul diferitelor obiecte, precum și în structura internă a microprocesoarelor moderne de înaltă performanță în memoria cache cu stocare separată de instrucțiuni și date.

În același timp, principiile arhitecturii Princeton sunt implementate în structura externă a majorității sistemelor cu microprocesoare.

Rețineți că arhitectura microprocesorului este strâns legată de structura acestuia. Implementarea anumitor caracteristici arhitecturale necesită introducerea unor dispozitive adecvate în structura microprocesorului și asigurarea unor mecanisme pentru funcționarea lor în comun.

Adnotare: Scopul prelegerii: familiarizarea cu arhitectura microprocesoarelor, caracteristicile distinctive ale microprocesoarelor de diferite tipuri de arhitectură, etapele de dezvoltare a arhitecturii microprocesoarelor universale, precum și principalele caracteristici ale arhitecturii IA-32.

Concepte de bază și caracteristici ale arhitecturii microprocesorului

Microprocesor(MP) este un dispozitiv controlat de software care este proiectat să proceseze informații digitale si controlul procesului acestei prelucrari si se realizeaza sub forma unuia sau mai multor mari circuite integrate(BIS).

Concept circuit integrat mare momentan nu este clar definit. Anterior, se credea că această clasă ar trebui să includă microcircuite care conțin mai mult de 1000 de elemente pe un cip. Într-adevăr, primele microprocesoare se încadrează în acești parametri. De exemplu, secțiunea de procesor pe 4 biți a kit-ului cu microprocesor K584, produs la sfârșitul anilor 1970, conținea aproximativ 1.500 de elemente. Acum, când microprocesoarele conțin zeci de milioane de tranzistori și numărul acestora crește constant, prin LSI înțelegem un complex funcțional circuit integrat.

Sistem cu microprocesor(MPS) este un produs complet funcțional format din unul sau mai multe dispozitive, a căror bază este un microprocesor.

Microprocesorul este caracterizat o cantitate mare parametri și proprietăți, deoarece este, pe de o parte, un dispozitiv de calcul complex funcțional, iar pe de altă parte - dispozitiv electronic, un produs al industriei electronice. Ca mijloc al tehnologiei informatice, se caracterizează în primul rând prin sa arhitectură, adică un set de proprietăți software și hardware furnizate utilizatorului. Aceasta include sistemul de instrucțiuni, tipurile și formatele de date prelucrate, moduri de adresare, numărul și distribuția registrelor, principiile de interacțiune cu RAM și dispozitivele externe (caracteristicile sistemului de întrerupere, acces direct la memorie etc.). După arhitectura lor, microprocesoarele sunt împărțite în mai multe tipuri (Fig. 1.1).

Microprocesoare universale sunt concepute pentru a rezolva problemele de prelucrare digitală a diferitelor tipuri de informații, de la calcule inginerești până la lucrul cu baze de date, fără restricții stricte privind timpul de finalizare a sarcinii. Această clasă de microprocesoare este cea mai cunoscută. Acesta include următoarele microprocesoare celebre, cum ar fi seria Pentium MP de la Intel și familia Athlon MP de la AMD.


Orez. 1.1.

Caracteristicile microprocesoarelor universale:

  • adâncimea de biți: determinată de capacitatea maximă de biți a datelor întregi procesate într-un ciclu de ceas, adică, de fapt, capacitatea de biți unitate logică aritmetică(ALU);
  • tipuri și formate de date prelucrate;
  • sistem de comandă, moduri de adresare a operanzilor;
  • capacitatea RAM direct adresabilă: determinată de lățimea de biți a magistralei de adrese;
  • frecvența ceasului extern. Pentru frecvența de sincronizare, de obicei este indicat maximul acesteia sens posibil, care garantează funcționalitatea circuitului. Pentru funcțional circuite complexe, care includ microprocesoare, indică uneori și minimul frecventa posibila sincronizare Reducerea frecvenței sub această limită poate duce la defectarea circuitului. În același timp, în acele aplicații MP în care nu este necesară o performanță ridicată, reducerea frecvenței de sincronizare este una dintre domeniile economisirii energiei. Într-un număr de microprocesoare moderne, pe măsură ce frecvența scade, se transformă în< спящий режим >, în care își păstrează starea. Frecvența de ceas din aceeași arhitectură vă permite să comparați performanța microprocesoarelor. Dar diferit solutii arhitecturale afectează performanța mult mai mult decât frecvența;
  • performanță: determinată cu ajutorul unor teste speciale, iar setul de teste este selectat în așa fel încât să acopere, dacă este posibil, diverse caracteristici microarhitecturi de procesoare care afectează performanța.

Microprocesoarele universale sunt de obicei împărțite în CISC- Și Microprocesoare RISC. Microprocesoare CISC(Completed Instruction Set Computing - calcule cu sistem complet comenzi) includ întregul set clasic de comenzi cu moduri de adresare a operanzilor dezvoltate pe scară largă. Din această clasă aparțin, de exemplu, microprocesoarele de tip Pentium. În același timp Microprocesoare RISC(calcularea seturilor de instrucțiuni reduse - calcule cu un sistem de instrucțiuni redus) utilizează, după cum reiese din definiție, un număr redus de comenzi și moduri de adresare. Aici, în primul rând, ar trebui să evidențiem microprocesoare precum Alpha 21x64, Power PC. Numărul de instrucțiuni din setul de instrucțiuni este cel mai evident, dar astăzi nu este cea mai importantă diferență în aceste direcții de dezvoltare a microprocesoarelor universale. Vom lua în considerare alte diferențe pe măsură ce studiem caracteristicile arhitecturii lor.

Microcontrolere cu un singur cip(OMK sau pur și simplu MK) sunt destinate utilizării în sistemele de automatizare industriale și casnice. Sunt circuite integrate mari care includ toate dispozitivele necesare implementării unui sistem de control digital configurat minim: un procesor (de obicei întreg), memorie de comenzi, memorie de date, generator de ceas, dispozitive programabile pentru comunicarea cu Mediul extern ( controler de întrerupere, temporizatoare-contoare, diverse porturi de intrare/ieșire), uneori convertoare analog-digital și digital-analogic etc. În unele surse, această clasă de microprocesoare este numită microcalculatoare cu un singur cip (SMC).

În prezent, două treimi din toate LSI-urile cu microprocesor produse în lume sunt MP din această clasă și aproape două treimi dintre ele au o capacitate de biți care nu depășește 16 biți. La clasa cu un singur cip microcontrolereÎn primul rând, acestea includ microprocesoare din seria MCS-51 de la Intel și microprocesoare similare de la alți producători, a căror arhitectură a devenit un standard de facto.

Caracteristici distinctive ale arhitecturii microcontrolerelor cu un singur cip:

  • fizice şi separare logică memoria de instrucțiuni și memoria de date (arhitectura Harvard), în timp ce în arhitectura Neumann clasică, programele și datele sunt partajate dispozitiv de stocareși au același mecanism de acces;
  • sistem de comandă simplificat și orientat către sarcini: MK, de regulă, nu are instrumente de procesare a datelor în virgulă mobilă, dar, în același timp, sistemul de comandă include comenzi axate pe lucrul eficient cu senzori și actuatori, de exemplu, comenzi pentru procesarea informațiilor de biți;
  • cele mai simple moduri de adresare a operanzilor.

Principalele caracteristici ale microcontrolerelor(de exemplu, valorile numerice sunt prezentate pentru MK-51):

  1. Dimensiunea biților (8 biți).
  2. Capacitatea memoriei interne de comandă și a memoriei de date, posibilități și limite de extindere a acestora:
    • memorie internă de comandă - 4 KB (în medie, o comandă are 2 octeți, deci un program cu o lungime de aproximativ 2000 de comenzi poate fi stocat în memoria internă); extensibil prin conectarea memoriei externe de până la 64 KB;
    • memorie de date pe cip 128 de octeți (poate fi conectată memorie externa capacitate totală de până la 64 KB).
  3. Frecvența ceasului:
    • frecventa externa 12 MHz;
    • frecvența ciclului mașinii 1 MHz.
  4. Posibilități de interacțiune cu dispozitive externe: cantitate și scop Porturi I/O, caracteristicile sistemului de întrerupere, suport software pentru interacțiunea cu dispozitive externe.

Disponibilitatea și caracteristicile încorporate convertoare analog-digitale(ADC) și convertoare digital-analogic(DAC) pentru a simplifica coordonarea cu senzorii și actuatorii sistemului de control.

Microprocesoare partiționate(alte denumiri: microprogramabile și biți-modulare) sunt microprocesoare concepute pentru construirea de procesoare specializate. Sunt secțiuni de microprocesor de capacitate relativ mică (de la 2 la 16) cu acces utilizator la nivelul de control al microprocesului și mijloace pentru combinarea mai multor secțiuni.

Această organizare vă permite să proiectați un procesor cu capacitatea necesară și cu un sistem de instrucțiuni specializat. Datorită capacității reduse de biți, secțiunile de microprocesor pot fi construite folosind tehnologii de mare viteză. Combinația tuturor acestor factori face posibilă crearea unui procesor cel mai bun mod orientat către o anumită clasă de algoritmi atât în ​​ceea ce privește sistemele de comandă și modurile de adresare, cât și formatele de date.

Unul dintre primele seturi de microprocesoare partiționate au fost MP LSI din familia Intel 3000. În țara noastră, acestea au fost produse ca parte a seriei K589 și 585. Elemente de prelucrare Această serie a fost un microprocesor pe doi biți. Cel mai comun set de microprocesoare partiționate este Am2900, care se bazează pe secțiuni pe 4 biți. În țara noastră, un analog al acestui kit a fost produs ca parte a seriei K1804. Setul a inclus următorul BIS:

  • ALU secțional de biți;
  • bloc de transfer accelerat;
  • ALU secțional de biți cu suport hardware pentru multiplicare;
  • tipul de circuite de control al microprogramelor;
  • controler de stare și schimbare;
  • controler de întrerupere prioritară.

Principalul dezavantaj al sistemelor cu microprocesoare bazate pe LSI-uri cu microprocesoare partiționate este complexitatea proiectării, depanării și programării sistemelor bazate pe acestea. Utilizarea unui sistem de comandă specializat a dus la incompatibilitatea software-ului dezvoltat pentru diferite microprocesoare. Capacitatea de a crea un procesor specializat care este optim în multe privințe a necesitat munca dezvoltatorilor calificați pe o perioadă lungă de timp. Cu toate acestea, dezvoltarea rapidă a tehnologiilor electronice a condus la faptul că, în timpul proiectării unui procesor specializat, a fost dezvoltat un microprocesor universal, ale cărui capacități au acoperit câștigul ipotetic din proiectarea unui dispozitiv specializat. Acest lucru a condus la faptul că în prezent această clasă de microprocesoare LSI-uri practic nu este utilizată.

Procesoare de semnal digital, sau digital procesoare de semnal , sunt o clasă de microprocesoare care se dezvoltă rapid, concepute pentru a rezolva problemele digitale. procesare a semnalului- prelucrare semnale sonore, imagini, recunoaștere a modelelor etc. Acestea includ multe caracteristici ale microcontrolerelor cu un singur cip: arhitectură Harvard, memorie de comandă și date încorporată, capabilități avansate pentru lucrul cu dispozitive externe. În același timp, ele conțin caracteristici ale MP-urilor universale, în special cu arhitectura RISC: organizarea în conductă a muncii, software și hardware pentru efectuarea operațiunilor cu punctul de plutire, suport hardware pentru calcule complexe specializate, în special înmulțire.

Ca produs electronic Microprocesorul este caracterizat de o serie de parametri, dintre care cei mai importanți sunt următorii:

  1. Cerințe de sincronizare: frecvență maximă, stabilitate.
  2. Numărul și evaluările surselor de alimentare, cerințele pentru stabilitatea acestora. În prezent, există o tendință de reducere a tensiunii de alimentare, ceea ce reduce disiparea căldurii a circuitului și duce la o creștere a frecvenței de funcționare a acestuia. Dacă primele microprocesoare au funcționat cu o tensiune de alimentare de +-15V, acum circuitele individuale folosesc surse mai mici de 1 V.
  3. Disiparea puterii- aceasta este pierderea de putere în treapta de ieșire a circuitului, care se transformă în căldură și încălzește tranzistoarele de ieșire. Cu alte cuvinte, caracterizează rata de eliberare a căldurii a LSI, care determină în mare măsură cerințele pentru proiectare sistem cu microprocesor. Această caracteristică este deosebit de importantă pentru MPS încorporat.
  4. Niveluri de semnal de zero logic și unul logic, care sunt asociate cu evaluările surselor de alimentare.
  5. Tip de carcasă - vă permite să evaluați adecvarea circuitului pentru funcționare în anumite condiții, precum și posibilitatea de a utiliza un nou LSI ca înlocuitor pentru cel existent pe placă.
  6. Temperatura mediu inconjurator, la care circuitul poate funcționa. Există două intervale aici:
    • comercial (0 0 C ... +70 0 C);
    • extins (-40 0 C ... +85 0 C).
  7. Imunitate la zgomot- determină capacitatea circuitului de a-și îndeplini funcțiile în prezența interferențelor. Imunitatea la zgomot este evaluată prin intensitatea interferenței la care întreruperea funcțiilor dispozitivului nu depășește încă limitele admise. Cum interferență mai puternică, la care dispozitivul rămâne operațional, cu atât este mai mare imunitatea la zgomot.
  8. Capacitate de incarcare, sau factorul de ramificare a ieșirii, este determinat de numărul de circuite din aceeași serie, ale căror intrări pot fi conectate la ieșirea unui anumit circuit fără a perturba funcționarea acestuia. Cu cât capacitatea de încărcare este mai mare, cu atât capacitățile logice ale circuitului sunt mai largi și cu atât sunt necesare mai puține astfel de microcircuite pentru a construi un dispozitiv de calcul complex. Cu toate acestea, pe măsură ce acest coeficient crește, imunitatea la zgomot și performanța se deteriorează.
  9. Fiabilitate este capacitatea unui circuit de a-și menține nivelul de calitate al performanței în condiții specificate pe o anumită perioadă de timp. Caracterizat de obicei Rata de eșec(ora-1) sau timpul mediu dintre defecțiuni (ora). În prezent, acest parametru pentru circuitele integrate mari nu este de obicei specificat de producător. Fiabilitatea MP LSI poate fi judecată prin indicatori indirecți, de exemplu, după fiabilitatea produsului în ansamblu, citată de dezvoltatorii de tehnologie informatică.
  10. Caracteristicile procesului. Indicatorul principal aici este rezoluția procesului. În prezent, este de 32 nm, adică aproximativ 30 de mii de linii pe 1 mm. Un proces tehnologic mai avansat face posibilă crearea unui microprocesor cu o funcționalitate mai mare.


Orez. 1.2.

Costurile de fabricație a dispozitivelor folosind LSI-uri cu microprocesor sunt prezentate în Fig. 1.2. Aici:

  1. costurile de fabricație a LSI (cu cât este mai mare gradul de integrare a elementelor pe cip, cu atât producția circuitului este mai scumpă);
  2. costuri de asamblare și instalare sistem cu microprocesor(cu o creștere a funcționalității MP, vor fi necesare mai puține circuite pentru a crea MPS);
  3. cost total sistem cu microprocesor, care constă din costuri (1) și (2). Are o valoare optimă pentru acest nivel dezvoltarea tehnologiei;
  4. trecerea la o nouă tehnologie (un număr diferit de elemente de pe cip va fi optim, iar costul total al produsului este redus).

În 1965, Gordon Moore a formulat ipoteza cunoscută acum ca<закон Мура>, conform căruia la fiecare 1,5-2 ani numărul de tranzistori pe unul circuit integrat se va dubla. Acest lucru este asigurat de îmbunătățirea continuă procese tehnologice producerea de microcipuri.

Cea mai avansată companie din punct de vedere tehnologic, Intel, distinge șase etape din ciclul de viață al tehnologiilor semiconductoare create și utilizate în corporație.

Cea mai timpurie etapă are loc în afara Intel - în laboratoare universitare și independente centre de cercetare, unde se caută noi principii fizice și metode care să poată deveni baza fundației științifice și tehnologice pentru anii următori. Corporația finanțează această cercetare.

În a doua etapă, cercetătorii Intel selectează cel mai mult direcții promițătoare dezvoltarea de noi tehnologii. În acest caz, de obicei sunt luate în considerare 2-3 opțiuni de soluție.

Sarcina principală a celei de-a treia etape este dezvoltarea completă brută tehnologie nouăși demonstrând fezabilitatea acestuia.

După aceasta, începe a patra etapă, al cărei scop principal este asigurarea realizării valorile stabilite indicatori tehnici și economici cheie precum randamentul produsului, fiabilitatea, costul și alții. Finalizarea etapei este confirmată de lansarea primului lot industrial de produse noi.

A cincea etapă este dezvoltarea industrială a noii tehnologii. Această problemă nu este mai puțin complexă decât dezvoltarea tehnologiei în sine, deoarece este extrem de dificil să reproduci cu acuratețe în condiții reale de producție ceea ce s-a obținut în laborator. De obicei, aici apar întârzierile cu momentul lansării noilor produse, cu realizarea volumelor de aprovizionare planificate și a costurilor de producție.

Ultima, a șasea etapă a ciclului de viață a tehnologiei (înainte de a abandona utilizarea acesteia) este maturitatea. Tehnologia matura, suferind anumite imbunatatiri in vederea cresterii productivitatii echipamentelor si reducerii costurilor de productie, asigura principalele volume de productie. Pe măsură ce sunt introduse tehnologii noi, mai avansate<старые>instalațiile de producție sunt în curs de lichidare.

Dar nu imediat: mai întâi sunt transferați în producția de microcircuite cu viteză mai mică sau cu mai puțini tranzistori, de exemplu, LSI-uri periferice.

Arhitectura microprocesorului- acesta este un set de informații despre compoziția componentelor sale, organizarea procesării informațiilor în acesta și schimbul de informații cu dispozitive computerizate externe, precum și funcţionalitate microprocesor care execută comenzi de program.

Structura microprocesorului- aceasta este informație doar despre compoziția componentelor sale, conexiunile dintre ele, asigurând interacțiunea lor. Astfel, arhitectura este un concept mai general care, pe lângă structură, include și ideea de interacțiune funcțională a componentelor acestei structuri între ele și cu mediul extern.

Baza oricărui MP (Fig. 14) este dispozitivul aritmetic-logic ALU, care efectuează procesarea informațiilor - operații aritmetice și logice pe datele sursă și în conformitate cu comenzile. Datele în sine (rezultatul inițial, intermediar și final) se află în registrele de date RD, iar comenzile sunt în registrul de comenzi RK. Gestionarea tuturor proceselor de intrare și ieșire a informațiilor, interacțiunea dintre ALU, RD și RK este realizată de dispozitiv multifuncțional managementul unitatii de control. Datele, comenzile și semnalele de control sunt transmise prin magistrala VS internă.

Fig.14 Tipic schema structurala MP

Fiecare microprocesor are propriul său limbaj intern numit set micro-instructiuni sau alcătuirea echipei- acesta este un set de comenzi pe care un anumit microprocesor le înțelege și le poate executa.

În timpul fiecărui ciclu de comandă CPUîndeplinește multe funcții de control:

1) plasează adresa de comandă pe magistrala de adrese de memorie;

2) primește o comandă de la magistrala de intrare a datelor și o decriptează;

3) selectează adresele și datele conținute în comandă; adresele și datele pot fi în memorie sau în registre;

4) efectuează operația definită în codul de comandă. Operația poate fi o funcție aritmetică sau logică, un transfer de date sau o funcție de control;

5) monitorizează semnalele de control, cum ar fi întreruperile și răspunde în consecință;

6) generează semnale de stare, control și oră care sunt necesare pentru funcționarea normală a dispozitivului aeropurtat și a memoriei.

Astfel, CPU este „creierul” care determină acțiunile computerului.

Fig. 15 Ciclul de comandă al procesorului

Pe baza naturii codului executabil și a organizării dispozitivului de control, se disting mai multe tipuri de arhitecturi:

- Procesor cu set de instrucțiuni complex, Engleză CISC - Calculator cu set de instrucțiuni complexe. Această arhitectură este caracterizată de un număr mare de instrucțiuni complexe și, ca urmare, un dispozitiv de control complex. Versiunile timpurii ale procesoarelor și procesoarelor CISC pentru aplicații încorporate sunt caracterizate de timpi lungi de execuție a instrucțiunilor (de la câteva cicluri de ceas la sute), determinate de microcodul dispozitivului de control. Procesoarele superscalare de înaltă performanță se caracterizează prin scanare amanuntita programe, execuție extraordinară a operațiunilor.


- Procesor cu un set de instrucțiuni simplificat, Engleză RISC - Calculator cu set de instrucțiuni redus. Această arhitectură are un dispozitiv de control mult mai simplu. Majoritatea instrucțiunilor procesorului RISC conțin același număr mic de operații (1, uneori 2-3), iar cuvintele de comandă în sine au, în marea majoritate a cazurilor, aceeași lățime (PowerPC, ARM), deși există și excepții (Coldfire). Procesoarele superscalare au cea mai simplă grupare de instrucțiuni fără a modifica ordinea de execuție.

- Procesor explicit paralel, Engleză EPIC - Calculator de instrucțiuni în mod explicit paralel (-ing, termen ® Intel, HP). Se deosebește de altele în primul rând prin faptul că secvența și paralelismul execuției operațiunilor și distribuția lor între dispozitivele funcționale sunt clar definite de program. Astfel de procesoare pot avea un număr mare de unități funcționale fără multă complexitate a dispozitivului de control și pierderea eficienței. În mod obișnuit, astfel de procesoare folosesc un cuvânt de instrucțiuni larg constând din mai multe silabe care definesc comportamentul fiecărei unități funcționale în timpul unui ciclu de ceas.

- Procesor de set minim de instrucțiuni, Engleză MISC - Set minim de instrucțiuni Computer. Această arhitectură este determinată în primul rând de un număr foarte mic de instrucțiuni (câteva zeci) și aproape toate sunt operanzi zero. Această abordare face posibilă împachetarea codului foarte strâns, alocând de la 5 la 8 biți pentru o instrucțiune. Datele intermediare dintr-un astfel de procesor sunt de obicei stocate pe stiva internă, iar operațiunile sunt efectuate pe valorile din partea de sus a stivei. Această arhitectură este strâns legată de ideologia programării în limbajul Forth și este de obicei folosită pentru a executa programe scrise în acest limbaj.

- Procesor de set de instrucțiuni variabile, Engleză WISC - Set de instrucțiuni de scriere Computer. O arhitectură care vă permite să vă reprogramați prin schimbarea setului de instrucțiuni, ajustându-l la problema rezolvată.

- Procesor controlat de transport, Engleză TTA - Arhitectura declanșată de transport. Arhitectura sa ramificat inițial de la EPIC, dar este fundamental diferită de celelalte prin faptul că instrucțiunile unui astfel de procesor codifică operațiuni funcționale, iar așa-numitele transporturi - transferă date între dispozitive funcționale și memorie în ordine aleatorie.

Pe baza metodei de stocare a programelor, există două arhitecturi:

- Arhitectura Von Neumann. Procesoarele acestei arhitecturi folosesc o magistrală și un dispozitiv I/O pentru a accesa programe și date.

- Arhitectura Harvard. În procesoarele acestei arhitecturi, există magistrale separate și dispozitive I/O pentru preluarea programelor și schimbul de date. În microprocesoarele, microcontrolerele și DSP-urile încorporate, acest lucru determină și existența a două dispozitive de stocare independente pentru stocarea programelor și datelor. În unitățile centrale de procesare, acest lucru determină existența unui cache separat de instrucțiuni și date. În spatele cache-ului, autobuzele pot fi combinate într-unul singur prin multiplexare.

Pe baza organizării fișierului de registru FU, se pot distinge următoarele tipuri de procesoare.

- Înregistrați arhitectura- caracterizat prin acces liber la registre pentru selectarea tuturor argumentelor și scrierea rezultatului. Operațiile aritmetico-logice elementare din astfel de procesoare sunt codificate în instrucțiuni cu doi sau trei operanzi (registru + registru → registru, uneori registrul rezultat coincide cu sursa unuia dintre argumente).

- Arhitectura bateriei- unul dintre mai multe registre acumulatoare este alocat din registre. Registrul acumulator este sursa unuia dintre argumente și receptorul rezultatului calculului. Operațiile sunt de obicei codificate în instrucțiuni cu un singur operand (acumulator + operand → acumulator). Această arhitectură este tipică pentru multe procesoare CISC (de ex. Z80).

- Arhitectura stivei- este determinată de organizarea fișierului de registru sub formă de stivă, iar adresarea indirectă a registrelor prin indicatorul stivei, care determină poziția vârfului stivei, se efectuează operațiuni asupra valorilor la partea de sus a stivei și rezultatul este de asemenea plasat deasupra. Operatii aritmetice sunt codificate în instrucțiuni cu operanzi zero. Arhitectura stivei este o parte integrantă a procesoarelor MISC.