În cadrul arhitecturii unui calculator se înțelege un set de principii generale pentru organizarea instrumentelor hardware și software și a caracteristicilor acestora, care determină funcționalitatea calculatorului atunci când rezolvă clasele corespunzătoare de probleme.
Arhitectura deschisa - presupune un singur standard pentru dezvoltarea dispozitivelor aflate pe placa de baza si placa de extensie.
Structura calculatorului este un anumit model care stabilește compoziția, ordinea și principiile interacțiunii componentelor sale
Figura 3 - arhitectura calculatorului.
În prezent, două tipuri de arhitectură au primit cea mai mare distribuție în computere: Princeton (von Neumann) și Harvard. Ambele dintre ele alocă 2 noduri principale ale computerului: procesorul central și memoria calculatorului. Diferența constă în structura memoriei: în arhitectura Princeton, programele și datele sunt stocate într-o singură matrice de memorie și transferate către procesor printr-un singur canal, în timp ce arhitectura Harvard oferă fluxuri separate de stocare și transmisie pentru comenzi și date.
Potrivit lui John von Neumann, orice computer ar trebui să includă patru blocuri principale - procesor, memorie RAM, memorie externă și un set de dispozitive de intrare / ieșire
Figura 4 - Diagrama bloc a calculatorului
Această schemă, utilizată pe scară largă în primele computere, a avut un dezavantaj semnificativ: controlul I / O și executarea comenzii au fost efectuate de un singur dispozitiv de control. Cu această structură a computerului, toate tipurile de procesare de software pentru timpul de operare I / O au fost întrerupte datorită ocupării procesorului, ceea ce a redus semnificativ performanța mașinii.
Pentru a rezolva acest dezavantaj, a fost inclusă o componentă suplimentară, un canal I / O (un dispozitiv care asigură interacțiunea directă între procesor și dispozitive periferice).
Arhitectura Harvard este arhitectura calculatorului, caracteristică distinctă a căreia este stocarea și prelucrarea separată a comenzilor și a datelor. Arhitectura a fost proiectată de Howard Aiken la sfârșitul anilor 1930 la Universitatea Harvard
Operațiunile tipice (adunarea și multiplicarea) necesită mai multe operații de la orice dispozitiv de calcul: selectarea a două operanzi, selectarea unei instrucțiuni și executarea acesteia și salvarea în final a rezultatului.
Ideea realizată de Aiken a fost separarea fizică a liniilor de comandă și de transmisie de date. În primul computer Aken, "Mark I" a folosit o bandă perforată pentru stocarea instrucțiunilor și registre electromecanice pentru a lucra cu date. Acest lucru a permis transmiterea simultană și prelucrarea comenzilor și a datelor, ceea ce a dus la o creștere semnificativă a performanței globale.
Conform caracteristicilor enumerate și combinațiilor dintre arhitecturi, există:
1. Lățimea interfețelor și a cuvintelor mașinilor. 8-, 16-, 32-, 64-, 128-biți (un număr de calculatoare au alte cifre);
2. Prin caracteristicile unui set de registre, format de comandă și date. CISC, RISC, VLIW;
3. Numărul procesatorilor centrali. un singur procesor, multiprocesor, superscalar; multiprocesor bazat pe principiul interacțiunii cu memoria: multiprocesor simetric (SMP), masiv paralel (MPP), distribuit.
Cele mai multe sisteme multiprocesor utilizează astăzi arhitectura SMP.
Sistemele SMP permit oricărui procesor să lucreze la orice sarcină, indiferent de unde sunt stocate datele în memorie pentru această sarcină; cu suport adecvat pentru sistemul de operare, sistemele SMP pot muta ușor sarcinile între procesoare distribuind în mod eficient sarcina. Pe de altă parte, memoria este mult mai lentă decât procesoarele care o accesează, chiar și mașinile cu un singur procesor trebuie să-și petreacă o perioadă considerabilă de timp pentru a obține date din memorie. În SMP, un singur procesor poate accesa memoria la un moment dat.
Masiv Arhitectura paralelă (Engl Procesare paralelă, MPP.) - o clasă de arhitecturi de facilitate arhitecturi de calcul paralel, constă în aceea că memoria este împărțită fizic. Sistemul este construit din module individuale care conțin procesorul, banca de memorie de operare locale, procesoare de comunicații și adaptoare de rețea, uneori - hard disk-uri și / sau alte dispozitive de intrare / ieșire. Accesați banca de memorie de operare de la acești procesori numai din modulul respectiv. Modulele sunt conectate prin canale speciale de comunicare. spre deosebire de sistemele SMP. în mașinile cu memorie separată, fiecare procesor are acces numai la memoria locală, astfel încât nu este nevoie de sincronizarea ceasurilor procesoarelor.
Calculul distribuit. metacomputing (grid Engl. - Network) - mod de laborioasă de a rezolva sarcini de calcul folosind mai multe calculatoare, unite într-un sistem informatic paralel (soluții simultane ale diferitelor părți ale unei singure sarcini de calcul mai multe procesoare (sau nuclee de procesor a) unul sau mai multe calculatoare)
În procesoare superscalare există, de asemenea, mai multe module de calcul, dar sarcina distribuirii lucrului între ele este rezolvată prin hardware. Acest lucru complică foarte mult proiectarea procesorului și poate fi plină de erori. În procesoarele VLIW, sarcina de distribuție este rezolvată la momentul compilării, iar instrucțiunile indică în mod explicit ce dispozitiv de calcul trebuie să execute ce comandă.
Superscalar este o arhitectură de bază computațională care utilizează mai mulți decodificatori de instrucțiuni care pot încărca o mulțime de unități de execuție. Programarea execuției fluxului de comandă este dinamică și se realizează de către nucleul de calcul propriu-zis. Dacă în timpul operației comenzile procesate de conducte nu se contrazic reciproc și una nu depinde de rezultatul celuilalt, atunci un astfel de dispozitiv poate executa execuția paralelă a comenzilor. În sistemele superscalare, decizia de rulare a instrucțiunii de execuție se face de către modulul de calcul propriu-zis, care necesită o mulțime de resurse