II dio Mikroprocesor
2.13. Superskalarni procesori

2.13.7. Početak i kraj obrade instrukcija su u redoslijedu nezavisnom od redoslijeda dohvatanja

Kada je redoslijed početka obrade instrukcija jednak redoslijedu dohvatanja instrukcija, procesor dekodira instrukcije sve dok ne naiđe na zavisnost između njih ili na zahtjev za istim resursom. Dekodiranje narednih instrukcija se odlaže sve dok se uočeni konflikti ne razriješe. Poboljšanje performansi može da se ostvari ako procesor za to vrijeme određuje naredne instrukcije nezavisne od instrukcija u konfliktu, i inicijalizuje početak njihove obrade.
Da bi se ovo omogućilo neophodno je, u vodu instrukcija, razdvojiti korake dekodiranja i izvršenja. Razdvajanje se izvodi pomoću bafera koji se naziva instrukcioni prozor. Po završetku dekodiranja instrukcija se upisuje u instrukcioni prozor. Procesor može da nastavi sa dekodiranjem i upisivanjem u bafer sve dok u baferu ima slobodnog mjesta. Instrukcije napuštaju bafer i počinju da se izvršavaju kada se oslobode funkcionalne jedinice potrebne za njihovu obradu, a da pri tome ne postoji zavisnost koja sprečava njihovo izvršavanje. Pri tome, redoslijed kojim instrukcije napuštaju instrukcioni prozor je nezavisan od redoslijeda dohvatanja i zavisi samo od prethodno navedenih uslova. Ovaj način omogućuje najbolje performanse, kao što se vidi na slici 23.c.

Početak obrade instrukcija je u redoslijedu dohvatanja, dok je završetak u redoslijedu nezavisnom od redoslijeda dohvatanja     <    Index    >    Promjena naziva registara