Обслуживание запросов на прерывание
Внешние устройства выдают сигнал запроса прерывания асинхронно по отношению к работе МП путем подачи уровня “1” на вход З.Пр. Запрос может быть удовлетворен только в том случае, если МП находится в состоянии разрешения восприятия запросов прерывания.
МП автоматически устанавливается в состояние запрета запросов прерывания после выполнения начальной установки,
а также после начала обслуживания запроса прерывания. Управление состоянием восприятия запросов прерывания может осуществляться программно с помощью команд: EI - “Разрешение прерываний” и DI - “Запрет прерываний”.
Состояние восприятия запросов прерывания МП указывает на своем выходе Р.Пр. Если на этом выходе присутствует уровень “1”, то запросы прерывания могут быть восприняты, в противном случае (уровень “0” на выоде Р.Пр) запросы восприниматься не будут. Если запрос на прерывание принят, то начинается цикл обслуживания прерывания.
Машинный цикл прерывания, который начинается в такте Т1 в условиях разрешенного прерывания, в основных чертах повторяет машинный цикл выборки команды. В течение времени, определяемого единичным значением сигнала синхронизацина ШД выставляется слово состояния “Разрешение прерывания”.
На такте Т2 слово состояния записывается в регистр состояний и формируется единичный сигнал “Прием”, позволяющий поступление на ШД кода прерывания. Имеется два способа задания кода прерывания: с помощью команды RST (N) или команды CALL (A1), (A2).
Отличие машинного цикла прерывания от машинного цикла извлечения кода команды из памяти состоит в том, что содержимое программного счетчика не увеличивается, а запоминается, чтобы оно могло быть восстановлено после окончания программы прерывания и возврата к прерванному процессу (программе).
В такте Т3 по шине данных начальная команда программы прерывания RST, подготовленная периферийным устройством, помещается в регистр команд МП.
Получив команду на первом машинном цикле, МП на циклах М2 и М3 записывает в область памяти, отведенной под стек, текущее значение программного счетчика РС. Сохранение содержимого РС в стеке необходимо для возврата к прерванной программе после окончания выполнения подпрограммы обслуживания прерывания. Возврат из подпрограммы осуществляется командой RET, которая загружает содержимое двух верхних ячеек стека в РС.
Структурная схема МП
Микропроцессорная БИС, представленная на рисунке 3, включает в себя следующие функциональные блоки:
- блок регистров;
- арифметическо-логический блок;
- устройство управления (УУ);
- буферные схемы шины данных (БФД) и шины адреса (БФА).
Секция регистров включает шесть 16-разрядных регистров: W,Z,B,C,D,E,H,L; РС (программный счетчик) и SP (указатель стека). Шесть 8-разрядных регистров общего назначения составлены в пары регистров:B,C; D,E; H,L. Они могут быть использованы в программах как отдельные 8-разрядные регистры или как три 16-разрядных регистра (B,D,H).
Программный счетчик РС содержит текущий адрес памяти, к которому обращается программа. Содержание РС автоматически изменяется в течении каждого цикла команды.
Указатель стека SР содержит адрес памяти, начиная с которого ее можно применять для хранения и восстановления содержимого программно- доступных регистров МП БИС. Указатель стека SP служит для работы со стековой памятью и определяет адрес последней занятой ячейки стека.
Буферные регистры 0W,Z не являются программно доступными регистрами и используются для выполнения команд внутри МП БИС.
Арифметическо-логический блок выполняет арифметические и логические операции под воздействием устройства управления МП БИС. Он включает в себя 8-разрядное АЛУ, схему десятичной коррекции ДК, построенной на базе ПЗУ, 5-ти разрядный регистр признаков, аккумулятор А, буфер аккумуляторя БФА и буферный регистр БФРг. Арифметическо-логический блок позволяет осуществить арифметические операции сложения, вычитания, а также основные логические операции (И, ИЛИ, исключающее ИЛИ) и сдвиг. При проведении операции одно число всегда берется из буфера аккумулятора, а другое - из буферного регистра. По результату выполнения арифметико-логических операций АЛБ устанавливает в регистре признаков пять знаков.
Признак переноса (Carry - C) устанавливается в единицу, если при выполнении команд появляется единица переноса из старшего разряда.
Дополнительный признак переноса (Auxiliary carry - АС) устанавливается в единицу, если при выполнении команд возникает единица переноса из третьего разряда числа. Состояние разряда может быть проанализировано лишь командой десятичной коррекции числа.
Признак знака (Sign - S) в машинном слове можно представить числом от -128 до 127. В этом случае седьмой (старший) разряд числа - его знак. Единица в седьмом разряде при такой записи будет указывать на отрицательное число, а ноль- на положительное.
В разряд нулевого признака (Zero -Z) записывается единица, если при выполнении команды результат равен нулю.
В разряд признака четности (Parity - P) записывается единица, если при выполнении команды количество единиц в разрядах результата будет четным.
Регистр команд РгК и дешифратор команды ДШК используются в МП БИС для получения и дешифрации кода команды. При извлечении команды первый байт, содержащий ее код, помещается в регистр команды и поступает на дешифратор команд. Дешишифратор совместно с устройством управления и синхросигналами Ф1 и Ф2 формируют управляющие сигналы для всех внутренних блоков МП БИС, а также его выходные сигналы управления и состояния.
Выполнение каждой команды производится в МП БИС в строго определенной последованности, определяемой кодом команды, и синхронизируется во времени сигналами Ф1 и Ф2 тактового генератора.
Период синхросигналов CLK1 и CLK2 называется МАШИННЫМ ТАКТОМ (Т). Длительность машинного такта Т может быть установлена произвольно в диапазоне от 0.5 до 2 микросекунд.
При использовании МП БИС необходимо ясно представлять динамику его работы, т.е. на каких магистралях, в зависимости от каких управляющих сигналов и когда МП БИС будет выдавать ту или иную информацию. Это в дальнейшем поможет понимать работу схем, позволяющих согласовывать ее с различными периферийными устройствами микро-ЭВМ.
При анализе процессов будем использовать следующие понятия:
Машинный цикл (М)-время , требуемое для извлечения из памяти один байт информации или выполнение команды, определяемой одним машинным словом. Машинный цикл может состоять из 3-5 машинных тактов.
Время выполнения команды - время получения, декодирования и выполнения команды.
В зависимости от вида команды это время может состоять из 1-5 машинных циклов. Для МП БИС КР580ИК80 существует 10 различных типов машинных циклов:
1. Извлечение кода команды (М1).
2. Чтение данных из памяти.
3. Запись данных в память.
4. Извлечение из стека.
5. Запись данных в стек.
6. Ввод данных из внешнего устройства.
7. Запись данных во внешнее устройство.
8. Цикл обслуживания прерывания.
9. Останов.
10. Обслуживание прерываний при работе МП БИС в режиме останова.
Тип выполняемого цикла МП указывает на первом такте каждого машинного цикла с помощью 8-разрядного слова состояния, выдаваемого на ШД.
Отдельные разряды слова состояния задействуются в микро-ЭВМ для формирования магистрали управления. Слово состояния выдается на ШД лишь на интервале синхросигналов С (такты Т1 и Т2), а используется на протяжении всего машинного цикла, поэтому необходимо записать его в специальный регистр слова состояния РгСС. На рисунке 4 приведена схема записи слова состояния.
Запись осуществляется с использованием сигнала “Синхро” и тактового импульса Ф1. Сигнал “Синхро” появляется в начале каждого цикла и занимает промежуток времени между положительными фронтами тактового импульса Ф2 на тактах Т1 и Т2. Таким образом, запись слова состояния осуществляется сигналом Ф1 на такте Т2.
Работа в режиме ЗАХВАТ
Режим “Захват” используется для приостановки процесса управления работой всех периферийных устройств. При работе в этом режиме выходные магистрали МП переводятся в третье состояние и отключаются от магистралей внешних устройств, обеспечивая тем самим возможность обмена информацией по каналу прямого доступа к памяти.
Режим “Захват” инициируется подачей лог.1 на вход управления МП “З.Зх”. Переход МП в этот режим подтверждается путем выдачи сигнала лог.1 на выходе МП “П.Зх”. Состояние “Захват” будет длиться целое число машинных тактов.
Снятие сигнала “Захват”, т.е. появление лог.0 на входе “З.Зх” проверяется на каждом сигнале Ф2 и при его обнаружении МП перейдет к выполнению очередного машинного цикла начиная с такта Т1.
Работа в режиме ОСТАНОВ
Режим ОСТАНОВ является результатом выполнения команды HALT. Находясь в этом режиме, магистрали МП БИС не отключаются от магистралей микро-ЭВМ, а процессор просто отмечает время, в течение которого он ничего не выполняет. Состояние микро-ЭВМ в этом режиме аналогично состоянию ОЖИДАНИЕ, за исключением того, что это состояние устанавливается программно.
Обычно режим ОСТАНОВ оканчивается тогда, когда ВУ выдают запрос на обслуживание. Одним из методов формирования запроса на обслуживание является подача запроса прерывания на вход З.Пр процессора.
Если сигналы прерывания не воспринимаются процессором (например, после выполнения команды DI), то остается один выход из состояния ОСТАНОВ - подача сигнала начальной установки на вход R процессора.
Специфика режима ОСТАНОВ заключается в том, что в этом состоянии МП может входить в режим ЗАХВАТ и выходить из него. В режиме ОСТАНОВ запрос на ЗАХВАТ не будет удовлетворяться, если запрос на прерывание был уже подан на вход З.Пр., но не было еще подтверждено его обслуживание. После подтверждения получения прерывания (уровень “0” на выходе П.Пр) микро-ЭВМ может войти в состояние ЗАХВАТ.
1 Процессор - центральное устройство (или комплекс устройств) ЭВМ или вычислительной системы, которое выполняет арифметические и логические операции, управляет вычислительным процессом и координирует работу периферийных устройств системы.
Микропроцессор - это обрабатывающее и управляющее устройство, выполненное с использованием технологии БИС (часто на одном кристалле) и обладающее способностью выполнять под программным управлением обработку информации, включая ввод и вывод информации, арифметические и логические операции и принятие решений.
Микропроцессорная БИС - интегральная микросхема, выполняющая функцию МП или его части (БИС с процессорной организацией, разработанная для построения микропроцессорных систем).
Микропроцессорный комплект (МПК) - совокупность микропроцессорных и других интегральных микросхем, совместимых по конструктивно-технологическому исполнению и предназначенных для совместного применения при построении МП, микро-ЭВМ и других средств вычислительной техники.
Контроллер - это микро-ЭВМ с небольшими вычислительными ресурсами, обедненной периферией и упрощенной системой команд ориентированная не на производство вычислений, а на выполнение процедур логического управления различным оборудованием. Контроллеры часто применяют в качестве встраиваемых в различные станки, машины, технологические процессы.
Микроконтроллер - это микропроцессорное устройство ориентированное не на производство вычислений, а на реализацию заданной функции управления.
Микро-ЭВМ - это вычислительная или управляющая система выполненная на основе одного или нескольких МП содержащая БИС постоянной и оперативной памяти, БИС управления вводом и выводом информации и оснащенная необходимым периферийным оборудованием (дисплей, печатающее устройство, накопители на магнитных дисках и т. п.).
Мини-ЭВМ (малая ЭВМ) - малогабаритные ЭВМ общего применения малой или средней производительности используемые главным образом для решения несложных инженерно-технических задач. Специализированные мини-ЭВМ используются в системах автоматического управления.
Микропроцессорная система (МП-система) - специализированная информационная или управляющая система, построенная на основе микропроцессорных средств, т. е. набора микропроцессорных схем.
СИСТЕМЫ СЧИСЛЕНИЯ
Цифровые электронные устройства строятся на схемах способных находиться в двух состояниях. Если этим состояниям поставить в соответствие символы 1 и 0, то любому числу, букве или символу можно приписать определенное сочетание единиц и нулей. Представление чисел с помощью двух цифр 1 и 0 получило название двоичной или бинарной системы счисления (в основании системы лежит число 2). Каждый разряд двоичной записи числа называют битом.
Любое число в системе с любым основанием можно записать в виде суммы, где слагаемыми являются весовые коэффициенты умноженные на значащую цифру.
Например, число 245 в десятичной системе можно записать так:
Аналогично, число 45 в двоичной системе можно представить как
В первом случае весовые коэффициенты могут принимать значения от 0 до 9 и в основании системы лежит число 10 (десятичная система счисления), а во втором случае весовые коэффициенты могут принимать значения только 0 и 1, а в основании системы лежит число 2 (двоичная система счисления).
Классификация ЭВМ
Существуют различные критерии для классификации ЭВМ, из которых наиболее распространены следующие:
По назначению: общего пользования (универсальные), ориентированные на решение разнообразных задач.
По быстродействию: малые (до 100 тыс. операций в секунду), средние (до 500 тыс.), большие (до 1,5 млн.), сверхбольшие (свыше 1,5 млн. операций в секунду).
Здесь указано быстродействие центрального процессора. Реальное быстродействие ЭВМ существенно ниже за счет “медленных” устройств ввода-вывода.
По составу оборудования: базовые, включающие стандартный минимальный комплект для поставки потребителю; типовые, включающие комплект оборудования, наиболее используемый в настоящее время; специализированные, включающие комплект оборудования, поставляемого по спецификации заказчика.
Следует иметь ввиду, что классификация ЭВМ постоянно изменяется.