Автор: Пользователь скрыл имя, 16 Ноября 2011 в 16:09, курс лекций
Тема 1. Основные характеристики, области применения ЭВМ различных классов.
Определение производительности ЭВМ.
Тема 2.
Функциональная и структурная организация процессора.
Алгоритм работы процессора.
Адрес МК | Операция | Поле | Значе-ние | Функция | |
00 | ARAM := IP | B | C | IP | |
IP := IP + 2 | WM | 3 | ARAM:= RGB | ||
SRC | 5 | CONST, RGB | |||
ALU | 3 | Сложение | |||
DST | 4 | Запись в РЗУ | |||
CONST | 2 | ||||
01 | Чтение
ОП
RGK := RGR Дешифрация |
MEM | 5 | Чтение слова | |
B | E | RGK | |||
DST | 1 | РЗУ[B]:= RGR | |||
CHA | 2 | JMAP |
7.2.2. Микропрограммы операций
Микропрограммы
операций MOV, CMP, JLE и HALT (табл. 7) записаны
начиная с адресов 03, 05, 07 и 0А соответственно.
Адреса регистров в операциях MOV
и CMP заданы в полях reg и r/m регистра команд.
В таблице приведены поля микрокоманды,
значения которых не совпадают со значениями
по умолчанию.
Микропрограммы
операций
Адрес МК | Операция | Поле | Значение | Функция |
03 | MOV reg2, r/m | MA | 3 | r/m |
MB | 2 | reg2 (reg во втором байте RGK) | ||
DST | 4 | Запись в РЗУ | ||
CHA | 0 | JZ – переход к выборке команды | ||
05 | CMP reg2, r/m | MA | 3 | r/m |
MB | 2 | reg2 | ||
ALU | 1 | S-R-C0+1 | ||
CCX | 1 | C0=1 | ||
F | 1 | Фиксация флажков | ||
CHA | 0 | JZ – переход к выборке команды | ||
07 | JLE | B | E | RGK |
Проверка условия по | ALU | 4 | S + С0 | |
фиксированным | SH | E | Расширение знака | |
флажкам | DST | 4 | Запись в РЗУ | |
Расширение знака | CC | 6 | JLE | |
Условный переход | JFI | 2 | Фиксированные флажки | |
SHA | 3 | Условный переход | ||
CONST | 0009 | Адрес перехода | ||
08 | CHA | 0 | JZ – переход к выборке команды | |
09 | IP := IP + RGK | A | E | RGK |
B | C | IP | ||
ALU | 3 | R+S+C0 | ||
DST | 4 | Запись в РЗУ | ||
CHA | 0 | JZ– переход к выборке команды | ||
0А | HALT | JFI | 5 | Останов |
7.3. Кодирование таблицы преобразования адресов
Кодирование таблицы
преобразования адресов производится
в соответствии с рекомендациями
в разделе 6. Для нашего примера
преобразование адресов описывается
в табл. 8. В командах MOV, CMP безразличными
являются биты 0-5 второго байта команды.
В командах JLE и HALT безразличными являются
все биты второго байта команды.
Преобразование адресов Таблица 8
Начальный адрес | Код операции | |||
03 | 1000 | 1011 | 11XX | XXXX |
05 | 0011 | 1011 | 11XX | XXXX |
07 | 0111 | 1110 | XXXX | XXXX |
0A | 1111 | 1111 | XXXX | XXXX |
7.4. Порядок выполнения команды
На рис. 6 представлен порядок выполнения команды СМР AX, DX в микропроцессоре. Микропрограмма начинает выполняться с адреса 00 (CMK=0000). По этому адресу записана микропрограмма выборки команд, а в IP находится адрес команды CMP AX, DX. Основные этапы выборки команд:
Далее выполняем
непосредственно заданную операцию,
для которой операнды определяются
не полями А и В микрокоманды, а полями
reg и r/m команды, этот факт фиксируется
в полях МА и МВ микрокоманды.
В зависимости от места нахождения источника прерываний они могут быть разделены на:
Регистр – внутреннее
Система прерываний ЭВМ
Современная ЭВМ представляет собой комплекс автономных устройств, каждое из которых выполняет свои функции под управлением местного устройства управления независимо от других устройств машины. Включает устройство в работу центральный процессор. Он передает устройству команду и все необходимые для ее исполнения параметры. После начала работы устройства центральный процессор отключается от него и переходит к обслуживанию других устройств или к выполнению других функций.
Можно считать, что центральный процессор переключает свое внимание с устройства на устройство и с функции на функцию. На что именно обращено внимание ЦП в каждый данный момент, определяется выполняемой им программой.
Во время работы в ЦП поступает (и вырабатывается в нем самом) большое количество различных сигналов. Сигналы, которые выполняемая в ЦП программа способна воспринять, обработать и учесть, составляют поле зрения ЦП или другими словами - входят в зону его внимания.
Например, если процессором исполняется программа сложения двух двойных слов, которая анализирует регистр флагов ЦП, то в “поле ее зрения” находятся флаги микропроцессора, определяющие знаки исходных данных и результата, наличие переноса из тетрады или байта, переполнение разрядной сетки и др. Такая программа готова реагировать на любой из сигналов, находящихся в ее зоне внимания (а поскольку именно программа управляет работой ЦП, то она определяет и “зону внимания” центрального процессора). Но ееяи во время выполнения такой программы нажать какую-либо клавишу, то эта программа “не заметит” сигнала от этой клавиши, так как он не входит в ее “поле зрения”.
Для того чтобы ЦП, выполняя свою работу, имел возможность реагировать на события, происходящие вне его зоны внимания, наступления которых он “не ожидает”, существует система прерываний ЭВМ. При отсутствии системы прерываний все заслуживающие внимания события должны находиться в поле зрения процессора, что сильно усложняет программы и требует большой их избыточности. Кроме того, поскольку момент наступления события заранее не известен, процессор в ожидании какого-либо события может находиться длительное время, и чтобы не пропустить его появления, ЦП не может “отвлекаться” на выполнение какой-либо другой работы. Такой режим работы (режим сканирования ожидаемого события) связан с большими потерями времени ЦП на ожидание.
Кроме сокращения потерь на ожидание, режим прерываний позволяет организовать выполнение такой работы, которую без него реализовать просто невозможно. Например, при появлении неисправностей, нештатных ситуаций режим прерываний позволяет организовать работу по диагностике и автоматическому восстановлению в момент возникновения нештатной ситуации, прервав выполнение основной работы таким образом, чтобы сохранить полученные к этому времени правильные результаты. Тогда как без режима прерываний обратить внимание на наличие неисправности система могла только после окончания выполняемой работы (или ее этапа) и получения неправильного результата.
Таким образом, система прерываний позволяет микропроцессору выполнять основную работу, не отвлекаясь на проверку состояния сложных систем при отсутствии такой необходимости, или прервать выполняемую работу и переключиться на анализ возникшей ситуации сразу после ее появления.
Помимо требующих внимания нештатных ситуаций, которые могут возникнуть при работе микропроцессорной системы, процессору полезно уметь “переключать внимание” и на различные виды работ, одновременно выполняемые в системе. Поскольку управление работой системы осуществляется программой, этот вид прерываний должен формироваться программным путем.
В
зависимости от места нахождения
источника прерываний они могут
быть разделены на внутренние (программные
и аппаратурные) и внешние прерыв
Принцип
действия системы
прерываний заключается в следующем:
при
выполнении программы после каждого
рабочего такта микропроцессора
изменяются содержимое регистров, счетчиков,
состояние отдельных
Совокупность значений наиболее существенных информационных элементов называется вектором состояния или словом состояния процессора (в некоторых случаях она называется словом состояния программы).
Вектор
состояния в каждый момент времени
должен содержать информацию, достаточную
для продолжения выполнения программы
или повторного пуска ее с точки,
соответствующей моменту
Вектор
состояния формируется в
Наборы информационных элементов, образующих векторы состояния, отличаются у ЭВМ разных типов. В ЮМ PC вектор состояния включает содержимое счетчика команд, сегментных регистров, регистра флагов и аккумулятора (регистра АХ).
При
возникновении события, требующего
немедленной реакции со стороны
машины, ЦП прекращает обработку текущей
программы и переходит к
Каждое событие, требующее прерывания, сопровождается специальным сигналом, который называется запросом прерывания. Программа, затребованная запросом прерывания, называется обработчиком прерывания.
Запросы на прерывание могут возникать из-за сбоев в аппаратуре (зафиксированных схемами контроля), переполнения разрядной сетки, деления на нуль, выхода за установленные для данной программы области памяти, затребования периферийным устройством операции ввода-вывода, завершения этой операции ввода-вывода или возникновения при этой операции особых условий и т.д.
Некоторые из этих запросов порождаются самой программой, но время их возникновения невозможно предсказать заранее.
При
наличии нескольких источников запросов
прерывания часть из них может
поступать одновременно. Поэтому
в ЭВМ устанавливается
ПЭВМ
ШМ PC может выполнять 256 различных
прерываний, каждое из которых имеет
свой номер (двухразрядное