Инструкцијски циклусИнструкцијски циклус (понекад се назива донеси-и-изврши циклус, донеси-декодирај-изврши сиклус, или FDX) је основна операција циклуса рачунара. То је процес путем којег рачунар преузима инструкције програма из своје меморије, одређује које радње инструкција захтева, и извршава те радње. Овај циклус се стално понавља помоћу процесора (CPU), из покретача оперативног система када је рачунар искључен. ![]() Употреба циклусаЦиклуси који се користе у процесору током процесорског циклуса су:
Сваки процесор може да има различите циклусе засноване на различитом скупу инструкција, али ће бити слични следећем циклусу:
Следећа инструкција је преузета из меморијске адресе која се тренутно чува у IP (процесор) (PC), и чува се у регистру за инструкције (IR). На крају операције преузимања, PC указује на следеће инструкције које ће бити прочитане у следећем циклусу.
Декодер тумачи инструкцију. Током овог циклуса инструкција унутар IR (инструкцијског регистра) је декодирана.
Ако инструкција има индиректни приступ, ефективна адреса се чита из главне меморије, и било који захтевани подаци су преузети из главне меморије да би се обрадили и онда ставили у регистре података (Такт: T3). Ако је инструкција директна, ништа није учињено на том такту. Ако је у питању У/И инструкција или инструкција регистра, операција се одвија (извршава) на такту.
Контролна јединица процесора пролази декодиране информације као низ контролних сигнала на релевантне јединице функција процесора да би извршила радње које су захтеване од стране инструкција, као што су читање вредности из регистара, пролазећи кроз ALU да би извршила математичке или логичке операције на њима, и уписује резултат назад у регистар. Ако је ALU укључена, она шаље условни сигнал назад на процесор. Генерисани резултат је сачуван у главној меморији, или послат на неки излазни уређај. На основу стања било какве повратне информације од ALU, програмски бројач може да се ажурира на другу адресу од које ће следећа инструкција бити преузета. Циклус се затим понавља. Започињање циклусаЦиклус почиње одмах када се укључи напајање система користећи почетну PC вредност која је унапред дефинисана за архихектуру система (у Интеловом IA-32 процесору, на пример, унапред дефинисана PC вредност је Циклус доношењаКорак 1 Инструкцијског циклуса се зове Циклус доношења. Ови кораци су исти за сваку инструкцију. Циклус доношења обавља инструкцију из речи инструкције која садржи код операције. ДекодирањеКорак 2 инструкцијског циклуса се зове декодирање. Код операције донет из меморије се декодира за наредне кораке и премешта се у одговарајуће регистре. Читање ефективне адресеКорак 3 одлучује која је то операција у питању. Ако је меморијска операција - у овом кораку рачунар проверава да ли је то директна или индиректна меморијска опрерација:
Ако је у питању У/И или инструкција регистра - рачунар проверава ту врсту и извршава инструкцију. Циклус извршавањаКорак 4 Инструкцијског циклуса је Циклус извршавања. Ови кораци ће се мењати са сваком инструкцијом. Подаци се преносе између CPU и У/И модула. Даље, аритметичке и логичке операције дате у инструкцијама се извршавају на основу података, као и друге инструкције, као што су скакање на другу локацију на програмском бројачу. Референце
|
Portal di Ensiklopedia Dunia