2013 m. sausio 10 d., ketvirtadienis

11.1 Komandų vykdymo fazės



Tipiškas procesorius bet kurią komandą vykdo keliais etapais:
  1. Komanda išrenkama iš atminties (pasiunčiama užklausa į atmintį, sulaukiama, kol atmintis procesoriui perduos komandos kodą);
  2. Komanda identifikuojama (nustatoma, kaip ir kokius duomenis komanda naudos) ;
  3. Iš atminties išrenkami komandos naudojami duomenys (pasiunčiama užklausa į atmintį, sulaukiama, kol atmintis procesoriui perduos komandos naudojamus duomenis);
  4. Komanda įvykdoma;
  5. Į atmintį perkeliami komandos apdoroti duomenys (į atmintį pasiunčiami duomenys, sulaukiama, kol jie bus įrašyti);
  6. Apskaičiuojamas kitos komandos adresas.
Visi šie etapai vykdomi gana nepriklausomai vienas nuo kito, todėl vykdant vieną iš šių veiksmų, už kitus veiksmus atsakingos paprasto procesoriaus dalys stovi be darbo. Naudojant konvejerį, visi šie darbai vykdomi lygiagrečiai, pvz., kol viena procesoriaus dalis identifikuoja naujai gautą komandą, kita dalis išrinkinėja iš atminties kitai komandai reikalingus duomenis.
Kai kurie sudėtingesni konvejeriai būna apjungti su kešavimo schemomis, ilgiau trunkančius
veiksmus (komandų išrinkimą, jų duomenų išrinkimą) jie vykdo iš anksto.

Komentarų nėra:

Rašyti komentarą

Tinklaraščio archyvas

Etiketės