Co je to návod?

Co je to návod?

Každá instrukce procesoru má několik fází své činnosti. Dokončení každé z těchto fází trvá jeden cyklus CPU. Tyto fáze jsou načtení instrukce, dekódování instrukce, provedení, přístup do paměti a zpětný zápis. Respektive dostanou instrukci, kterou je třeba dokončit, oddělí operaci od operovaných hodnot, provedou proces, otevřou registr, do kterého bude výsledek zapsán, a výsledek zapíšou do otevřeného registru.

Historické procesory v pořadí

V dřívějších počítačích CPU nepoužíval instrukční kanál. V těchto CPU se každá operace s jedním cyklem musela uskutečnit pro každou instrukci. To znamenalo, že trvalo pět hodinových cyklů, než byla průměrná instrukce úplně zpracována, než mohla být spuštěna další. Některé operace nemusí zapsat žádný výsledek do registru, což znamená, že lze přeskočit fáze přístupu do paměti a zpětného zápisu.

Co je to návod?

V subskalárním procesoru bez pipeline je každá část každé instrukce vykonávána v daném pořadí.

Problém však číhá při spouštění kompletní instrukce v pořadí, než je možné přejít k další instrukci. Problém je v chybě cache. CPU ukládá data, která aktivně zpracovává, do registru. K tomu lze přistupovat s jednocyklovou latencí. Problém je v tom, že registr je malý, protože je zabudován do jádra procesoru. CPU musí přejít do větší, ale pomalejší mezipaměti L1, pokud data ještě nebyla načtena. Pokud tam není, musí jít znovu do větší a pomalejší L2 cache. Dalším krokem je mezipaměť L3; poslední možností je systémová RAM. Kontrola každé z těchto možností vyžaduje stále více cyklů CPU.

Nyní může být tato dodatečná latence velkým problémem v systému, který musí před zahájením další instrukce dokončit každou instrukci v plném pořadí. To, co bylo dříve procesorem s 5 cykly na instrukci, může najednou zavěsit na jednu instrukci na desítky nebo stovky hodinových cyklů. Po celou dobu se na počítači nemůže stát nic jiného. Technicky se to dá poněkud zmírnit tím, že máme dvě nezávislá jádra. Nic jim však nebrání v tom, aby dělali totéž, potenciálně současně. Takže přechod na vícejádrovou cestu to nevyřeší.

Klasický RISC Pipeline

RISC je zkratka pro Reduced Instruction Set Computer . Je to styl designu procesoru, který optimalizuje výkon tím, že usnadňuje dekódování každé instrukce. To je ve srovnání s CISC nebo Complex Instruction Set Computer, který navrhuje složitější instrukční sady umožňující méně instrukcí, které jsou nutné k provedení stejných úkolů.

Klasický RISC design obsahuje instrukční potrubí. Namísto spouštění kterékoli z pěti instrukčních fází v daném cyklu umožňuje zřetězení provést všech pět fází. Samozřejmě nemůžete spustit všech pět fází jedné instrukce v cyklu. Můžete však zařadit do fronty pět po sobě jdoucích instrukcí s posunem každé o jednu fázi. Tímto způsobem může být dokončena nová instrukce každý cyklus hodin. Nabízí potenciální 5x zvýšení výkonu pro relativně nízký nárůst složitosti jádra.

Co je to návod?

Ve skalárním zřetězeném procesoru lze každou fázi provádění instrukcí provést jednou za cyklus hodin. To umožňuje maximální propustnost jedné dokončené instrukce na cyklus.

Procesory, které nemají pipeline, mohou být vždy pouze subskalární, protože nemohou provést jednu úplnou instrukci za cyklus. S tímto primárním pětistupňovým potrubím můžete vytvořit skalární CPU, které dokáže dokončit instrukci pro každý proces. Vytvořením ještě dalekosáhlejších pipeline můžete vytvořit superskalární CPU, které mohou provádět více než jednu instrukci za cyklus hodin. Samozřejmě stále existují potenciální problémy.

Stále sekvenční

Nic z toho neřeší problém čekání po mnoho cyklů na odpověď, když je potřeba dotazovat se na různé úrovně mezipaměti a RAM. Přináší také nový problém. Co když se jedna instrukce spoléhá na výstup předchozí instrukce? Tyto problémy jsou samostatně řešeny pomocí pokročilého dispečera. Pečlivě plánuje pořadí provádění tak, aby žádné instrukce, které se spoléhají na výstup jiného, ​​nebyly příliš blízko u sebe. Zvládá také vynechání mezipaměti tím, že zaparkuje instrukci a nahradí ji v potrubí jinými instrukcemi, které jsou připraveny ke spuštění a nevyžadují její výsledek, a obnoví instrukci, když je připravena.

Tato řešení mohou fungovat na nezřetězených procesorech, ale jsou vyžadována pro superskalární procesor, který spouští více než jednu instrukci na takt. Prediktor větve je také velmi užitečný, protože se může pokusit předpovědět výsledek instrukce s více než jedním potenciálním výsledkem a nadále předpokládat, že je správný, pokud se neprokáže opak.

Závěr

Potrubí umožňuje využití všech odlišných schopností procesoru v každém cyklu. Dělá to tak, že spouští různé fáze různých instrukcí současně. To ani nepřidává velkou složitost návrhu CPU. Také připravuje cestu k tomu, aby více než jedna instrukce mohla provést jednu fázi za cyklus.


Jak klonovat pevný disk

Jak klonovat pevný disk

V moderním digitálním věku, kde jsou data cenným aktivem, může být klonování pevného disku v systému Windows pro mnohé zásadním procesem. Tento komplexní průvodce

Jak opravit selhání načtení ovladače WUDFRd v systému Windows 10?

Jak opravit selhání načtení ovladače WUDFRd v systému Windows 10?

Setkáváte se při spouštění počítače s chybovou zprávou, která říká, že se nepodařilo načíst ovladač WUDFRd do vašeho počítače?

Jak opravit kód chyby NVIDIA GeForce Experience 0x0003

Jak opravit kód chyby NVIDIA GeForce Experience 0x0003

Máte na ploše zkušenosti s chybovým kódem 0x0003 NVIDIA GeForce? Pokud ano, přečtěte si blog a zjistěte, jak tuto chybu rychle a snadno opravit.

Co je SMPS?

Co je SMPS?

Než si vyberete SMPS pro svůj počítač, zjistěte si, co je SMPS, a význam různých hodnocení účinnosti.

Proč se můj Chromebook nezapne

Proč se můj Chromebook nezapne

Získejte odpovědi na otázku Proč se můj Chromebook nezapíná? V této užitečné příručce pro uživatele Chromebooků.

Jak nahlásit phishingové podvody společnosti Google

Jak nahlásit phishingové podvody společnosti Google

V této příručce se dozvíte, jak nahlásit podvodníka společnosti Google a zabránit mu v podvádění ostatních.

Roomba se zastaví, přilepí a otočí – oprava

Roomba se zastaví, přilepí a otočí – oprava

Vyřešte problém, kdy se váš robotický vysavač Roomba zastaví, zasekne a stále se otáčí.

Jak změnit nastavení grafiky na Steam Deck

Jak změnit nastavení grafiky na Steam Deck

Steam Deck nabízí robustní a všestranný herní zážitek přímo na dosah ruky. Chcete-li však optimalizovat své hraní a zajistit to nejlepší možné

Co je zabezpečení založené na izolaci?

Co je zabezpečení založené na izolaci?

Chtěli jsme se ponořit do tématu, které je ve světě kybernetické bezpečnosti stále důležitější: zabezpečení založené na izolaci. Tento přístup k

Jak používat Auto Clicker pro Chromebook

Jak používat Auto Clicker pro Chromebook

Dnes jsme se chtěli ponořit do nástroje, který dokáže automatizovat opakované klikání na vašem Chromebooku: Auto Clicker. Tento nástroj vám může ušetřit čas a