
- •ОБразования российской федерации
- •Цель работы
- •Теоретическая часть
- •Режимы работы процессоров
- •Организация памяти эвм
- •Управляющие регистры
- •Прерывания и исключения
- •Цикл выполнения команды в процессоре
- •Стандартные фазы цикла выполнения команды
- •Примеры команд 32-разрядного процессора
- •XchGоперанд_1, операнд_2 (xchgах,bl)
- •Порядок выполнения работы
- •Вопросы для самопроверки (защиты л/р)
- •Список литературы
Цикл выполнения команды в процессоре
Процессор – это программно управляемое электронное цифровое устройство, предназначенное для обработки данных и управления процессом этой обработки. Процессор работает под управлением программы, состоящей из последовательности команд.
Стандартные фазы цикла выполнения команды
При выполнении каждой команды процессор выполняет некоторую последовательность действий, называемую циклом выполнения команды. Каждый цикл работы процессора состоит из нескольких фаз. Стандартные фазы работы ЦП включают в себя:
Выборка команды
1)поэтапное формирование адреса команды в ОП:
преобразование логического адреса команды CS:EIP в линейный с проверкой последнего на нарушение границ сегмента кода,
EIP – регистр счетчика команд, содержит адрес команды внутри сегмента кода,
CS – сегментный регистр, дескриптор которого однозначно определяет виртуальный адрес сегмента кода - CS.SDC.BA, его размер CS.SDC.LIMIT, тип и правила работы с сегментом CS.SDC.ATR (подробнее см. л.р.№6),
преобразование линейного адреса в физический с проверкой присутствия страницы в ОП (блок страничной переадресации использует заданный механизм страничной переадресации: базовый, или PSE, или PAE),
выставление физического адреса команды в ОП на ША,
2)цикл чтения команды:
считывание очередного байта команды из основной памяти,
побайтный анализ полей команды и либо передача байта операционной части команды в регистр команды (IR) центрального устройства управления (ЦУУ), либо передача байтов адресной части команды в адресный регистр (ADR) устройства управления памятью (УУП),
проверка необходимости дальнейшей выборки байтов команды,
3)модификация содержимого счетчика команд – регистра EIP, для выборки следующей команды.
Выборка операндов (если операндов несколько, то нижеперечисленные действия повторяются несколько раз)
1)анализ местоположения операнда (согласно режиму адресации - постбайту mod r/m),
2)в зависимости от местонахождения операнда обращение либо в ОП, либо к регистру локальной памяти, либо к регистру ADR, считывание операнда и передача данных по ШД в регистр АЛУ.
2,а) операнд в ОП (процедура аналогична выборке команды):
преобразование логического адреса операнда DS:ИАД в линейный с проверкой последнего на нарушение границ сегмента данных,
DS-селектора из сегментного регистра данных и ИАД – исполнительный адрес данных вычисляемый согласно режиму адресации: (ИАД =Б+И×М+С) подробнее см. м.у. по к.р.
преобразование линейного адреса в физический с проверкой присутствия страницы в ОП.
выставление физического адреса операнда в ОП на ША,
передача операнда из ОП по ШД в регистр АЛУ,
2,б) операнд в РП:
выставление физического адреса операнда в РП на внутреннюю ША,
передача операнда из РП по внутренней ШД в регистр АЛУ,
2,в) операнд в команде:
передача операнда из адресной части команды – регистра ADR в регистр АЛУ,
Выполнение операции
выполнение в АЛУ, регистрах и схемах сопряжения действий, задаваемых кодом операции из команды, находящейся в регистре команд IR.КОП. Каждая операция выполняется по определённому алгоритму, анализируются ограничения и возможность появления ошибок (см. исключения).
изменение состояния процессора и системы в целом (установка признаков и разрядов служебных и системных регистров, если требуется).
Запись результатов
результат операции передается из регистра АЛУ в локальную или основную память по адресу, определяемому адресной частью команды или неявно заданному кодом операции (как правило, на место первого операнда).
Обработки прерывания
выполнение действий в ответ на сигналы от внутренних и внешних источников, требующих немедленной реакции ЭВМ.
Далее процессор переходит к выборке и выполнению следующей команды.
Рис. Структура процессора