|
Основные стадии выполнения команд1 этап: Выбор машинной команды из памяти. 2 этап: Дешифрация кода операции. 3 этап: Формирование исполнительного адреса и выбор операндов. 4 этап: Выполнение операций в АЛУ. 5 этап: Запись результата.
Конвейеризация Конвейерная обработка команд:
Конвейерная обработка на уровне команд: Каждый этап машинной команды обрабатывается на отдельном блоке. На 1-м такте 1-я команда подается на первый блок, то есть реализует 1-й этап (выборка команды из памяти). Во 2-м такте 1-я команда переходит на 2-й этап, а 2-я команда поступает на первый этап. В 3-ем такте, 1-я команда на 3 этапе, 2-я команда на 2-ом этапе, 3-я команда на 1-ом этапе. Т.е. конвейер команд аналогичен технологическому конвейеру. За 8 тактов при последовательной обработке команд, обрабатывается 2 команды, а при конвейерной – 5 команд. В случае отсутствия команд перехода и информационных конфликтов – повышение производительности! Если появляются команды перехода, то все команды, находящиеся на конвейере, обнуляются, и конвейер начинает заполняться с команды, на которую нужно перейти.
Информационные конфликты: При выполнении программы, может встретиться такая ситуация, когда результат предыдущей команды еще не сформирован, а следующая команда должна использовать этот результат при выборе операнда. R1 + R2 R1
R3 + R1 R3
При классическом конвейере, зависимая команда не будет поступать на обработку до тех пор, пока информационная зависимость не будет снята (пока результат не будет записан в R1), следующие за ней команды будут блокироваться – блокировка конвейера. Способы адресации Адресный код команды в полях Аi в большинстве случаев не совпадает с исполнительным адресом. Под исполнительным адресом понимается физический адрес ячейки памяти, по которому хранится информация, или же по которому её необходимо записать.
Прямая адресация 1) В адресном поле Аi хранится непосредственно исполнительный адрес.
ОП адрес операнд АЛУ
РАП = РК (Аi) РЧП = Чт (РАП) РА = РЧП
Непосредственная адресация В адресном поле команды хранится операнд.
операнд АЛУ
РА = РК (Аi) При непосредственной адресации можно только считывать операнд, но нельзя записывать результат на место Аi
Косвенная адресация В адресном поле команды хранится адрес ячейки ОП, по которому находится адрес операнда (то есть адрес адреса).
ОП
адрес операнда
операнд АЛУ
РАП = РК (Аi) – подаём в память адрес адреса операнда. РЧП = Чт (РАП) – получили адрес операнда. РАП = РЧП РЧП = Чт (РАП) – получили операнд. РА = РЧП
Регистровая адресация В адресном поле команды указывается номер РОНа, в котором хранится операнд.
ОП Номер РОНа операнд АЛУ
РОНы используются для сокращения времени доступа за операндами. Микропрограмма выполнения двухадресной команды формата регистр-регистр (R-R). Структура операционной части ЦП
Запись результата производится на место первого операнда.
ОП Чт
РК
+n
Чт Зп
РАРП – регистр адреса регистровой памяти РЧРП – регистр числа регистровой памяти 1 этап. Выбор машинной команды. РАП = СчК – адрес следующей выполняемой команды помещаем в память. РЧП = Чт (РАП) – на РЧП прочитали команду. РК = РЧП – передали команду на РК. СчК = СчК + n – (n – это длина в байтах текущей выполняемой команды). 2 этап. Дешифрация. 3 этап. Формирование исполнительного адреса и выбор операндов. РАРП = РК (R1) – подали номер РОНа, где хранится первый операнд. РЧРП = Чт (РАРП) – выбрали первый операнд. РА = РЧРП РАРП = РК (R2) РЧРП = Чт (РАРП) – выбрали второй операнд. РВ = РЧРП 4 этап. Выполнение операций в АЛУ. РС = РА оп РВ 5этап. Запись результата. РАРП = РК (R1) РЧРП = РС Зп (РАРП) = РЧРП – записали результат в R1. Базовая адресация Ai 1. В адресном поле Аi выделяется 2 подполя: Вi и Di. Bi – номер базового регистра или адрес ячейки памяти, где хранится база. (Bi) – база; наиболее часто база хранится в РОНах. Di – смещени е, выбирается непосредственно из команды. Исполнительный адрес формируется как сумма базы и смещения: ИА = (Bi) + Di.
Di
Bi (Bi) ИА операнд
АЛУ производит только сложение и вычисляет адрес (индексное АЛУ)
Индексная адресация Ai Xi – номер индексного регистра. (Xi) – индекс. Di – смещение. Исполнительный адрес формируется как сумма индекса и смещения: ИА = (Xi) + Di.
Р
Di Xi (Xi) ИА операнд
АЛУ
Базово-индексная адресация Ai Xi – номер индексного регистра. Bi – номер базового регистра. Di – смещение. Исполнительный адрес формируется как сумма индекса, базы и смещения: ИА = (Xi) + (Bi) + Di.
Di Bi (Bi) ИА операнд
Xi (Xi)
Конфликты в семейной жизни. Как это изменить? Редкий брак и взаимоотношения существуют без конфликтов и напряженности. Через это проходят все... ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между... Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем... Что вызывает тренды на фондовых и товарных рынках Объяснение теории грузового поезда Первые 17 лет моих рыночных исследований сводились к попыткам вычислить, когда этот... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|