Instrukční cyklus

Z MediaWiki SPŠ a VOŠ Písek
Skočit na navigaci Skočit na vyhledávání
Verze k tisku již není podporovaná a může obsahovat chyby s vykreslováním. Aktualizujte si prosím záložky ve svém prohlížeči a použijte prosím zabudovanou funkci prohlížeče pro tisknutí.

Úvod

Instrukční cyklus je posloupnost kroků, jejichž postupným provedením se vykonává operace definovaná instrukcí programu.

Dělení cyklusu

Instrukční cyklus se skládá ze dvou fází:

  1. Výběrová - v průběhu této fáze se vybere instrukce z hlavní paměti, dekóduje kód operace a určí adresy operandů.
  2. Vykonávací - v průběhu této fáze se vyberou operandy, realizuje se operace a výsledek se zapíše na určené paměťové místo (registr nebo hlavní paměť)

Instrukční cyklus se dále dělí na strojové cykly, přičemž jeden strojový cyklus znamená jeden přístup do paměti. Strojový cyklus se pak dále dělí na strojové takty.

Zřetězení

Je to všeobecný princip zpracování informací, založený na rozdělení operací, procesů nebo úloh na jednotlivé kroky, které jsou vykonávány samostatnými moduly.


Zřetězené zpracování instrukcí (pipelining)

Vychází z toho, že zpracování každé instrukce procesorem lze rozdělit do pěti základních fází:

  1. PF - výběr instrukce (další zpracovávaná instrukce se bere buď z RAM nebo z Cache.
  2. DI - dekódování instrukce (určí se délka a typ instrukce)
  3. DA - výpočet adresy (určí se adresa operandů, se kterými instrukce pracuje)
  4. EX - provedení instrukce
  5. WB - zápis výsledků

Při klasickém zpracování se v každých pěti taktech zpracuje kompletně celá jedna první instrukce, v dalších pěti taktech zase druhá, což prodlužuje dobu zpracování všech instrukcí. Např. po deseti taktech jsou zpracovány pouze dvě instrukce.

Při zřetězeném zpracování je sice v prvních pěti taktech zase zpracována jenom jedna celá první instrukce, ale další instrukce jsou už rozpracovány, takže v každém dalším taktu je pak zpracována jedna další instrukce. Např. po deseti taktech je zpracováno šest instrukcí. Což je samozřejmě rychlejší než u klasického zpracování.

Může ale nastat problém, když některá z instrukcí způsobí skok. V tom případě se musí vyprázdnit fronta, nezpracované instrukce nebudou vůbec provedeny a program bude pokračovat tam, kde byl uskutečněn skok.

Instruktion Execution






Otázky k opakování z referátů mikroprocesorové techniky TVY

Zdroje:


http://vos.panacek.com/download/ap-tema/04-absolventske-tema.doc


--Jhejnova 3. 5. 2010, 18:09 (UTC) --Arni 27. 5. 2010, 13:42 (UTC)