Ce este microarhitectura?

Proiectarea computerului urmărește să aranjeze capacitățile unui procesor într-un cadru structural astfel încât o arhitectură de set de instrumente (ISA) să poată executa instrucțiunile programate într-un mod cât mai eficient și rapid posibil. Microarhitectura este structura decisivă a computerului care elaborează implementarea componentelor căii de control pentru a interopera cu elementele căii de date, astfel încât componentele computerului să poată funcționa în configurația ideală pentru ISA. Multiple unități centrale de procesare (CPU) și multithreading, care permit preluarea memoriei lente a sistemului în timp ce comuta simultan funcțiile CPU la un alt fir de program până când recepția memoriei este completă, aduc eficiența și viteza mai aproape în aliniere pentru a evita latența între controlul memoriei și vitezele de procesare a CPU

Microarhitecturile proiectate sunt construite dintr-o serie de decizii la nivel de sistem care iau în considerare consumul de energie, complexitatea logicii, conectivitatea, testabilitatea și ușurința de depanare, împreună cu costurile cipului și capacitatea de fabricație pentru a ajunge la un design optim. Proiectele de microarhitectură mai bune sunt cele care permit noilor progrese tehnologice în semiconductori să obțină o performanță mai bună, folosind același ISA pe mai multe platforme. Proiectele de microarhitectură pot utiliza conducte de instrucțiuni care manipulează mai mult decât un singur set de instrucțiuni la un moment dat, ca în anii trecuți.

Mai multe seturi de instrucțiuni pot folosi CPU simultan, iar pipelining și gestionarea cache-ului care ține pasul cu cipurile îmbunătățite care dețin mai multă memorie cache pentru recuperare, citire și scriere instantanee pot ține acum pasul cu conductele care nu trebuie să se blocheze și să aștepte. recuperarea memoriei mai mult. În plus, predicția de ramificație, care face presupuneri educate unde poate fi necesară ramificarea conductelor, și modelele de execuție speculative care încep calculele matematice înainte de a fi solicitate, pot, de asemenea, accelera procesarea datelor în calea datelor. O altă îmbunătățire a tehnicii în proiectarea microarhitecturii folosește execuția în afara ordinii, permițând instrucțiunilor gata de a fi executate să aibă prioritate față de instrucțiunile mai vechi care așteaptă memoria cache. În timp ce hard disk-ul este mai lent în execuție, un procesor nu trebuie ținut în așteptare, dar poate funcționa cu alte elemente ale setului de instrucțiuni.

Un tip de microarhitectură specializată este cunoscut ca arhitectură de flux de date. Proiectele fluxului de date nu urmează metodele tradiționale ale fluxului de control; execuția instrucțiunilor are loc pe baza disponibilității argumentelor de intrare, iar aceste instrucțiuni ghidează procesarea pentru rutarea în rețea, procesarea semnalului digital al streaming audio sau video și procesarea grafică. Motoarele software pentru baze de date folosesc arhitectura fluxului de date pentru a sincroniza datele pentru redirecționarea în timp real a pachetelor cu viteza firului, iar natura lor dedicată permite echilibrarea încărcării procesoarelor și accesul la resurse comune. Această pachetare înseamnă că instrucțiunile și rezultatele permit calculul paralel la scară largă pentru rețelele de flux de date.

În hardware, microarhitectura permite integrarea componentelor într-o arhitectură de sistem în principii înțelese de inginerie electrică și mecanică pentru a facilita dezvoltarea de software pentru diverse dispozitive hardware, cum ar fi tablete și computere desktop, telefoane mobile, sateliți, instrumente chirurgicale și sisteme de navigație. Deoarece este utilizat într-o mare varietate de instrumente și dispozitive, microarhitectura hardware este de fapt construcția de sisteme hardware electromecanice și electronice proiectate. Microarhitectura în proiectarea hardware este un proces de reprezentare a componentelor înrudite care se raportează prin intermediul regulilor și principiilor de proiectare mecanică și electrică încorporate în componentele în sine. Seturi operabile de subsisteme delimitate sunt aranjate cu senzori și actuatori într-un sistem exclusiv și cuprinzător pentru utilizări specificate.