Što je mikroarhitektura?

Dizajn računala nastoji rasporediti sposobnosti procesora u strukturni okvir tako da arhitektura skupa instrumenata (ISA) može izvoditi svoje programirane upute na što učinkovitiji i brži način. Mikroarhitektura je odlučujuća računalna struktura koja osmišljava implementaciju komponenti kontrolne staze za međuoperaciju s elementima podatkovne putanje kako bi komponente računala mogle funkcionirati u idealnoj konfiguraciji za ISA. Više središnjih procesorskih jedinica (CPU-a) i višenitnost, koji omogućuju dohvaćanje spore memorije sustava uz istovremeno prebacivanje funkcija CPU-a na drugu programsku nit dok se ne završi prijem memorije, približavaju učinkovitost i brzinu u usklađivanju kako bi se izbjeglo kašnjenje između kontrole memorije i brzine obrade CPU-a.

Dizajnirane mikroarhitekture izgrađene su od niza odluka na razini sustava koje uzimaju u obzir potrošnju energije, složenost logike, povezivost, mogućnost testiranja i lakoću otklanjanja pogrešaka, zajedno s troškovima čipa i produktivnošću kako bi se postigao optimalan dizajn. Bolji dizajn mikroarhitekture ono je što omogućuje novom tehnološkom napretku u poluvodičima za postizanje boljih performansi uz korištenje istog ISA na više platformi. Dizajn mikroarhitekture može koristiti cjevovode instrukcija koji rukuju više od jednog skupa instrukcija u isto vrijeme, kao u prošlim godinama.

Nekoliko skupova instrukcija može istovremeno koristiti CPU, a cjevovod i rukovanje predmemorijem koje ide ukorak s poboljšanim čipovima koji drže više cache memorije za trenutno dohvaćanje, čitanje i pisanje sada mogu držati korak s cjevovodima koji ne moraju stajati i čekati ponovno pronalaženje memorije. Osim toga, predviđanje grananja, koje daje obrazovana nagađanja gdje bi grananje cjevovoda moglo biti potrebno, i spekulativni modeli izvršenja koji započinju matematičke izračune prije nego što se zatraže, također mogu ubrzati obradu podataka na svom podatkovnom putu. Još jedno poboljšanje tehnike u dizajnu mikroarhitekture koristi se izvanrednim izvršavanjem, dopuštajući instrukcije spremnim za izvođenje da imaju prednost u odnosu na starije instrukcije koje čekaju predmemoriju. Dok je tvrdi disk sporiji u izvođenju, CPU ne mora čekati, ali može raditi s drugim elementima skupa instrukcija.

Jedna vrsta specijalizirane mikroarhitekture poznata je kao arhitektura protoka podataka. Dizajn toka podataka ne slijedi tradicionalne metode tijeka kontrole; izvršenje instrukcija se događa na temelju dostupnosti ulaznih argumenata, a ove upute vode obradu za mrežno usmjeravanje, digitalnu obradu signala audio ili video streaminga i grafičku obradu. Softverski motori baze podataka koriste arhitekturu protoka podataka za sinkronizaciju podataka za prosljeđivanje paketa brzinom žice u stvarnom vremenu, a njihova namjenska priroda omogućuje balansiranje opterećenja procesora i pristup zajedničkim resursima. Ova paketizacija znači da upute i rezultati omogućuju paralelno računanje u velikim razmjerima za mreže protoka podataka.

U hardveru, mikroarhitektura omogućuje integraciju komponenti unutar arhitekture sustava u razumljivim principima elektrotehnike i strojarstva kako bi se olakšao razvoj softvera za različite hardverske uređaje kao što su tabletna i stolna računala, mobiteli, sateliti, kirurški instrumenti i navigacijski sustavi. Kako se koristi u širokom spektru instrumenata i uređaja, hardverska mikroarhitektura je zapravo konstrukcija projektiranih elektromehaničkih i elektroničkih hardverskih sustava. Mikroarhitektura u dizajnu hardvera predstavlja proces predstavljanja srodnih komponenti koje se odnose pomoću pravila i principa mehaničkih i električnih konstrukcija ugrađenih u same komponente. Radni skupovi ograničenih podsustava raspoređeni su sa senzorima i aktuatorima u ekskluzivni i uključivi sustav za određene namjene.