Co je mikrooperace?

Počítače jsou naprogramovány pomocí programovacích jazyků. Tyto jazyky jsou obecně čitelné pro člověka a umožňují programátorovi konfigurovat, co počítač dělá. Tento kód je pak potřeba zkompilovat do počítačových instrukcí. Přesné podrobnosti se liší v závislosti na architektuře Instruction Set Architecture nebo ISA, které zamýšlený počítač používá. To je důvod, proč existují různé odkazy ke stažení pro procesory x86 od Intel a AMD a procesory ARM používané v moderních zařízeních Apple. ISA x86 a ARM se liší; software musí být zkompilován samostatně. Jak Apple ukázal, je možné vytvořit efektní překladovou vrstvu; prostě to není běžné.

Možná si myslíte, že CPU vidí instrukce, které jsou mu předloženy, a pak je provádí v pořadí. Existuje mnoho triků, které moderní CPU dělají, včetně spouštění mimo pořadí, které umožňuje CPU měnit pořadí věcí za chodu, aby se optimalizoval výkon. Chytrou částí, která je však docela dobře skrytá, jsou mikrooperace.

Potrubí k mikroprovozu

Jednotlivé instrukce ve strojovém kódu lze nazvat instrukcemi nebo operacemi; termíny jsou zaměnitelné. Jednou z potíží s Complex Instruction Set Computing nebo architekturami CISC, jako je x86, je to, že instrukce se mohou lišit v délce. To konkrétně odkazuje na to, kolik dat potřebují k reprezentaci. V x86 může být instrukce krátká až jeden bajt nebo až 15. Porovnejte to se standardní architekturou RISC-V používanou moderními procesory ARM se 4bajtovými instrukcemi s pevnou délkou.

Tip: RISC je zkratka pro Reduced Instruction Set Computing.

Jedním z důsledků tohoto rozdílu ve struktuře je to, že RISC architektury mají tendenci být mnohem snazší efektivně propojit. Každá instrukce má několik fází své činnosti, které využívají jiný hardware. Pipelining spouští více instrukcí v těchto fázích současně, přičemž v každé fázi je přesně jedna instrukce. Pipelining nabízí značné zvýšení výkonu při efektivním použití. Jedním z klíčových faktorů efektivního využití potrubí je zajistit, aby se každý stupeň používal současně. Díky tomu vše plynule běží potrubím.

Vzhledem k tomu, že všechny instrukce mají stejnou délku, instrukce RISC obvykle vyžadují stejnou dobu zpracování jako každá jiná. V CISC, jako je x86, však některé instrukce mohou trvat mnohem déle než jiné. To vytváří velký problém s efektivitou při zřetězení CPU. Pokaždé, když přijde delší instrukce, uvízne v potrubí na delší dobu. To způsobí bublinu a zadrží vše za ní. Řešením jsou mikrooperace.

Efektivní mikroprovozy

Namísto toho, aby byla každá instrukce považována za jedinou úroveň operace, kterou lze provést, zavádějí mikrooperace novou nižší vrstvu. Každá operace může být rozdělena do mnoha mikrooperací. Pečlivým navržením mikrooperací můžete optimalizovat potrubí.

Zajímavé je, že to nabízí novou výhodu. Zatímco celkový ISA, řekněme x86, zůstává stejný mezi mnoha různými generacemi CPU, mikrooperace mohou být navrženy na míru pro každou generaci hardwaru. To lze provést s hlubokým pochopením toho, kolik výkonu lze vytlačit z každého stupně potrubí pro každou mikrooperaci.

V počátcích mikrooperací to byla pevně připojená připojení, která aktivovala nebo deaktivovala konkrétní funkce v závislosti na mikrooperaci. V moderním designu CPU je do vyrovnávací paměti pro změnu pořadí přidána mikrooperace. Je to právě tato vyrovnávací paměť, kterou může CPU provádět přeskupení orientované na efektivitu. Jsou to mikrooperace, ne skutečné instrukce, které jsou přeskupeny.

V některých případech, zejména u pokročilejších CPU, lze udělat ještě více. Mikrooperační fúze je tam, kde je více mikrooperací kombinováno do jedné. Například sekvence jednoduchých mikrooperací může provádět akci, kterou lze provést pomocí jediné, složitější instrukce. Snížením počtu prováděných mikrooperací může být proces dokončen rychleji. To také snižuje počet změn stavu a snižuje spotřebu energie. Úplné instrukce mohou být dokonce analyzovány a kombinovány do efektivnějších mikrooperačních struktur.

Některé procesory využívají mezipaměť mikro operací. Zde jsou uloženy plně dekódované mikrooperační sekvence, které mohou být znovu použity, pokud jsou znovu volány. Velikost takové mezipaměti se obvykle určuje podle počtu mikrooperací, které může uložit, spíše než podle kapacity bajtů.

Závěr

Mikrooperace je implementace instrukční sady specifická pro CPU. Instrukce jsou dekódovány do řady mikrooperací. Tyto mikrooperace se výrazně snáze a efektivněji propojují a tím lépe využívají zdroje CPU. Protože mikrooperace nejsou pevně zakódovány do instrukční sady, lze je přizpůsobit specifickému hardwaru každé generace CPU. Mikrooperace se často zkracují na mikrooperace nebo dokonce μops. To používá řecké písmeno μ ( vyslovuje se Mu ), symbol SI pro mikro předponu.


Leave a Comment

10 Nejlepších NAS zařízení pro ukládání dat pro domácí a profesionální použití

10 Nejlepších NAS zařízení pro ukládání dat pro domácí a profesionální použití

Ať už hledáte NAS pro váš domov nebo kancelář, podívejte se na tento seznam nejlepších NAS zařízení pro ukládání dat.

Základy 3D tisku: Tipy na údržbu vaší 3D tiskárny

Základy 3D tisku: Tipy na údržbu vaší 3D tiskárny

Údržba vašich 3D tiskáren je velmi důležitá pro dosažení nejlepších výsledků. Zde jsou některé důležité tipy, které je dobré mít na paměti.

Jak připojit notebook s Windows 11 k projektoru/TV

Jak připojit notebook s Windows 11 k projektoru/TV

Přečtěte si tento článek, abyste se dozvěděli jednoduchý krok za krokem proces, jak připojit notebook k projektoru nebo TV v OS Windows 11 a Windows 10.

Jak opravit kód chyby GeForce Now 0xC272008F

Jak opravit kód chyby GeForce Now 0xC272008F

Připravujete se na večer her a bude to velké - právě jste si pořídili hru „Star Wars Outlaws“ na streamovací službě GeForce Now. Objevte jediný známý způsob, jak opravit kód chyby GeForce Now 0xC272008F, abyste mohli znovu hrát hry od Ubisoftu.

5 Důvodů, Proč Se Váš Notebook Přehřívá

5 Důvodů, Proč Se Váš Notebook Přehřívá

Zjistěte některé možné důvody, proč se váš notebook přehřívá, spolu s tipy a triky, jak tento problém vyřešit a udržet své zařízení v chladu.

Základy 3D tisku: Kontrolní seznam údržby, který si musíte přečíst

Základy 3D tisku: Kontrolní seznam údržby, který si musíte přečíst

Udržování vašeho vybavení v dobrém stavu je nezbytné. Zde jsou některé užitečné tipy, jak udržet váš 3D tiskárnu v nejlepším stavu.

Jak nainstalovat SSD na desktop a notebooky

Jak nainstalovat SSD na desktop a notebooky

Právě jste zakoupili SSD a chtěli byste upgradovat interní úložiště svého počítače, ale nevíte, jak SSD nainstalovat? Přečtěte si tento článek nyní!

Canon Pixma MG5220: Skenování bez inkoustu

Canon Pixma MG5220: Skenování bez inkoustu

Jak povolit skenování na Canon Pixma MG5220, když dojde inkoust.

Jak najít IP adresu tiskárny

Jak najít IP adresu tiskárny

Máte problémy s nalezením IP adresy tiskárny? Ukážeme vám, jak ji najít.

Jak používat AirPods s telefony Samsung

Jak používat AirPods s telefony Samsung

Pokud si nejste jisti, zda koupit AirPods pro váš telefon Samsung, tento průvodce vám může pomoci. Nejvíce evidentní otázka je, zda jsou obě zařízení kompatibilní, a odpověď je: Ano, jsou!