Što je mikrooperacija?

Računala se programiraju programskim jezicima. Ti su jezici općenito čitljivi i omogućuju programeru da konfigurira ono što računalo radi. Ovaj kod zatim treba kompajlirati u računalne upute. Točni detalji o tome razlikuju se ovisno o arhitekturi skupa instrukcija ili ISA-i koju računalo koristi. Zbog toga postoje različite veze za preuzimanje za x86 procesore Intela i AMD-a te ARM procesore koji se koriste u modernim Apple uređajima. ISA za x86 i ARM je drugačiji; softver se mora zasebno kompajlirati. Kao što je Apple pokazao, moguće je izgraditi otmjeni prijevodni sloj; jednostavno nije uobičajeno to činiti.

Možda mislite da CPU vidi upute koje su mu prikazane i zatim ih izvršava redom. Postoje mnogi trikovi koje moderni CPU rade, uključujući izvršavanje izvan redoslijeda, dopuštajući CPU-u da promijeni redoslijed stvari u hodu kako bi optimizirao performanse. Međutim, pametan dio koji je prilično dobro skriven su mikrooperacije.

Cjevovod do mikrooperacije

Pojedinačne instrukcije u strojnom kodu mogu se nazvati instrukcijama ili operacijama; pojmovi su međusobno zamjenjivi. Jedna od poteškoća s Complex Instruction Set Computing ili CISC arhitekturama kao što je x86 jest to što upute mogu varirati u duljini trajanja. Ovo se konkretno odnosi na to koliko podataka oni trebaju predstaviti. U x86, instrukcija može biti kratka od jednog bajta ili dugačka do 15. Usporedite ovo sa standardnom RISC-V arhitekturom koju koriste moderni ARM CPU-i s instrukcijama od 4 bajta fiksne duljine.

Savjet: RISC je kratica za Reduced Instruction Set Computing.

Jedna od implikacija ove razlike u strukturi je da je RISC arhitekture mnogo lakše učinkovito cijepiti. Svaka instrukcija ima više faza svog rada koje koriste različit hardver. Cjevovod pokreće više instrukcija kroz ove faze istovremeno, s točno jednom instrukcijom u svakoj fazi. Cjevovod nudi značajno povećanje performansi kada se koristi učinkovito. Jedan ključni faktor u učinkovitom korištenju cjevovoda je osiguravanje da se svaki stupanj koristi istovremeno. Time sve nesmetano teče kroz cjevovod.

Budući da su sve instrukcije iste duljine, RISC instrukcije obično zahtijevaju isto vrijeme obrade kao i druge. U CISC-u, međutim, kao što je x86, neke instrukcije mogu potrajati mnogo duže od drugih. To stvara veliki problem učinkovitosti pri cjevovodu CPU-a. Svaki put kad se pojavi duža uputa, ona dulje zapne u cjevovodu. To uzrokuje mjehurić i zadržava sve iza njega. Mikrooperacije su rješenje za to.

Učinkovite mikro operacije

Umjesto tretiranja svake instrukcije kao jedine razine operacije koja se može izvesti, mikrooperacije uvode novi niži sloj. Svaka se operacija može podijeliti na više mikrooperacija. Pažljivim projektiranjem mikrooperacija možete optimizirati cjevovod.

Zanimljivo, to nudi novu prednost. Dok sveukupni ISA, recimo x86, ostaje isti između mnogih različitih generacija CPU-a, mikro-operacije mogu biti prilagođene za svaku generaciju hardvera. To se može učiniti uz duboko razumijevanje koliko se performansi može izvući iz svake faze cjevovoda za svaku mikro-operaciju.

U ranim danima mikro-operacija, to su bile ožičene veze koje su aktivirale ili onemogućavale određene funkcije ovisno o mikro-operaciji. U modernom CPU dizajnu, mikro-operacija se dodaje međuspremniku za ponovno naručivanje. To je međuspremnik pomoću kojeg CPU može izvršiti svoje preuređivanje usmjereno na učinkovitost. Preuređuju se mikrooperacije, a ne stvarne upute.

U nekim slučajevima, posebno s naprednijim procesorima, može se učiniti čak i više. Fuzija mikrooperacija je mjesto gdje se više mikrooperacija kombinira u jednu. Na primjer, slijed jednostavnih mikrooperacija može izvesti radnju koja se može izvesti s jednom, složenijom instrukcijom. Smanjenjem broja izvedenih mikrooperacija, proces se može završiti brže. Ovo također smanjuje broj promjena stanja smanjujući potrošnju energije. Potpune upute mogu se čak analizirati i kombinirati u učinkovitije strukture mikrooperacija.

Neki CPU-i koriste predmemoriju mikrooperacija. Ovo pohranjuje potpuno dekodirane sekvence mikrooperacija koje se mogu ponovno upotrijebiti ako se ponovno pozovu. Tipično, veličina takve predmemorije označava se brojem mikrooperacija koje može pohraniti, a ne kapacitetom bajta.

Zaključak

Mikrooperacija je implementacija skupa instrukcija specifična za CPU. Upute se dekodiraju u niz mikrooperacija. Ove mikrooperacije znatno je lakše učinkovitije usmjeriti u cjevovod i tako bolje iskoristiti CPU resurse. Budući da mikrooperacije nisu tvrdo kodirane u skupu instrukcija, mogu se prilagoditi specifičnom hardveru svake generacije CPU-a. Mikrooperacije se često skraćuju na mikrooperacije ili čak μoperacije. To koristi grčko slovo μ ( izgovara se Mu ), SI simbol za mikro prefiks.


Kako klonirati tvrdi disk

Kako klonirati tvrdi disk

U modernom digitalnom dobu, gdje su podaci dragocjena imovina, kloniranje tvrdog diska u sustavu Windows za mnoge može biti ključan proces. Ovaj sveobuhvatni vodič

Kako popraviti upravljački program WUDFRd koji se nije učitao u sustavu Windows 10?

Kako popraviti upravljački program WUDFRd koji se nije učitao u sustavu Windows 10?

Jeste li suočeni s porukom o pogrešci tijekom pokretanja računala koja kaže da se upravljački program WUDFRd nije uspio učitati na vašem računalu?

Kako popraviti šifru pogreške NVIDIA GeForce Experience 0x0003

Kako popraviti šifru pogreške NVIDIA GeForce Experience 0x0003

Imate li NVIDIA GeForce iskustvo s kodom pogreške 0x0003 na radnoj površini? Ako da, pročitajte blog kako biste saznali kako brzo i jednostavno popraviti ovu pogrešku.

Što je SMPS?

Što je SMPS?

Naučite što je SMPS i značenje različitih ocjena učinkovitosti prije nego što odaberete SMPS za svoje računalo.

Zašto se moj Chromebook ne uključuje

Zašto se moj Chromebook ne uključuje

Pronađite odgovore na pitanje Zašto se moj Chromebook ne uključuje? U ovom korisnom vodiču za korisnike Chromebooka.

Kako Googleu prijaviti phishing prijevare

Kako Googleu prijaviti phishing prijevare

Pomoću ovog vodiča saznajte kako Googleu prijaviti prevaranta kako biste ga spriječili da vara druge.

Roomba staje, zapinje i okreće se – popravi

Roomba staje, zapinje i okreće se – popravi

Riješite problem u kojem vaš Roomba robot usisavač stane, zaglavi se i stalno se okreće.

Kako promijeniti grafičke postavke na Steam Decku

Kako promijeniti grafičke postavke na Steam Decku

Steam Deck nudi robusno i svestrano iskustvo igranja na dohvat ruke. Međutim, kako biste optimizirali svoje igranje i osigurali najbolje moguće

Što je sigurnost temeljena na izolaciji?

Što je sigurnost temeljena na izolaciji?

Namjeravali smo se zadubiti u temu koja postaje sve važnija u svijetu kibernetičke sigurnosti: sigurnost temeljena na izolaciji. Ovaj pristup prema

Kako koristiti Auto Clicker za Chromebook

Kako koristiti Auto Clicker za Chromebook

Danas smo namjeravali istražiti alat koji može automatizirati ponavljajuće zadatke klikanja na vašem Chromebooku: Auto Clicker. Ovaj vam alat može uštedjeti vrijeme i