Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Обработка прерываний




Процессоры компьютеров с сокращенными наборами команд (RISC-процессор).

Достоинства микропрограммного управления

1. Проектирование процессора можно разделить на создание микропрограммы и проектирование логических схем; эти 2 вида проектирования можно проводить параллельно. Меняя микропрограммы можно получить процессор с совершенно другой системой команд.

2. УУ (самое сложное в структуре компьютера) можно строить на базе функциональных узлов с регулярной структурой – ПЗУ, управление удобно для логического проектирования интегральных схем (СБИС).

Недостатком устройств МПУ является более медленная обработка, чем та, которая обеспечивается УУ с жесткой логикой.

 

Если рассматривать традиционную архитектуру компьютера, то для расширения функциональных возможностей в систему команд вводят новые команды, что позволяет увеличить возможность (работоспособность компьютера – CISC-компьютеры с полным набором команд.

Другой подход – сужение набора команд, что позволяет снизить сложность и стоимость процессора. Компьютеры RISC-проц. работают быстрее:

а) набор команд содержит 30-50 команд.

б) команды выполняются за один машинный цикл

в) ограничения на форматы команд, режимы адресации, что позволяет упростить УУ. Большинство команд имеют формат: регистр-регистр. К памяти имеет обращение только команда чтение или запись.

г) построение УУ на базе жесткой логики.

 

Прерывание – это событие, при котором меняется нормальная последовательность команд, выполняемых процессором.

Если произошло прерывание, то

1) управление передается ОС,

2) ОС запоминает состояние прерванного процесса

3) ОС анализирует тип прерывания и передает управление соответствующей программе обработки этого прерывания (обработчику прерывания)

Запросы прерывания генерируются несколькими развивающимися параллельно во времени процессами, которые в некоторые моменты требуют вмешательства процессора.

Это – процесс выполнения самой программы:

– процесс контроля правильности работы ЭВМ;

– операции ввода/вывода

– другие

Возможность прерывания программ – важное свойство архитектуры ЭВМ, позволяющее эффективно использовать производительность процессора при наличии нескольких протекающих во времени процессов, требующих в произвольные моменты времени управления и обслуживания со стороны процессора. Это в первую очередь относится к организации параллельной работы процессора и ПУ, а также к использованию ЭВМ для управления в реальном времени технологическими процессами.

1. Прерывания ввода-вывода и внешние прерывания инициируются аппаратурой ввода-вывода. Они сигнализируют ЦП о том, что произошло изменение состояния УВВ, например, завершено выполнение операции ввода-вывода; возникла ошибка; УВВ находится в состоянии готовности (прерывания от клавиатуры, от накопителя на дисках и т.д.); прерывания от таймера - истек квант времени.

2. Прерывание по контролю (ошибке) программы. Эти прерывания вызываются различными видами ошибок, обнаруженных в выполняющемся процессе, также как попытка деления на ноль, попытка выполнить операцию с неправильным кодом; попытка процесса пользователя выполнить привилегированную команду и т.д.

3. Программные прерывания. Инициатором этих прерываний является работающий процесс, который обращается к функциям ОС или BIOS, например, для ввода-вывода, увеличения размера выделенной памяти и т.п.

Механизм программных прерываний позволяет 1) защитить ОС от пользователей. Вход в ОС – только через обращения к функциям ОС с разрешенным уровнем привилегии; 2) использовать механизм прерываний для обращения к подпрограммам.

4. Прерывания по контролю (ошибке) машины.

5. Прерывания по рестарту. Эти прерывания происходят, когда оператор нажимает на ПУ на кнопку «Сброс» или поступает сигнал сброса от другого процессора в мультипрограммной системе.

Чтобы ЭВМ могла, не требуя больших усилий от программиста, реализовывать с высоким быстродействием прерывания программ, машине необходимо придать соответствующие аппаратные и программные средства, совокупность которых получила название системы прерываний.

При наличии нескольких источников запросов прерывания должен быть установлен определенный порядок в обслуживании поступающих запросов. Т.е. между запросами (и соответствующими прерывающими программами) должны быть установлены приоритетные соотношения, определяющие:

1. какой из одновременно поступивших запросов подлежит обработке в первую очередь

2. имеет ли право данный запрос прерывать ту или иную систему

Часть функций системы прерываний возлагается на ЦП, а часть на спец ПКП.

12.Характеристики системы прерыва ний

Общее количество запросов прерываний.

Время реакции – время между появлением запроса прерывания и началом выполнения прерывающей программы.

Упрощенно временная диаграмма процесса прерывания выглядит так:

рис. 14. Временная диаграмма процесса прерывания

Большей частью прерывание допускается после окончания текущей машинной команды.

Глубина прерывания – максимальное число программ, которые могут прерывать друг друга. Если после перехода к прерывающей программе и вплоть до ее окончания обслуживание других запросов запрещается, то говорят, что система имеет глубину прерывания, равную 1 (одноуровневая система). Глубина равна n, если допускается последовательное прерывание до n программ.

Глубина прерывания обычно совпадает с числом уровней приоритета в системе прерываний.

Назовем вектором прерывания вектор начального состояния прерывающей программы.

Вектор прерывания содержит всю необходимую информацию для перехода к прерывающей программы, в т.ч. ее начальный адрес. В перспективе ЭВМ каждому запросу прерывания соответствует свой вектор прерывания (в больших ЭВМ много запросов, они разбиваются на классы (уровни), один класс запросов – один вектор прерывания).

Векторы прерываний обычно находятся в специальных фиксированных ячейках памяти.

Главное место в процедуре перехода к прерывающей программе (обработчику прерываний) занимают передача из регистров процессора в память (в стек) на сохранение текущего вектора состояния прерываемой программы (чтобы можно было вернуться к ее исполнению) и загрузке в регистр процессора вектора прерывания обработчика прерывания, к которому при этом переходит управление процессом.

В простейшем случае вектор прерывания состоит лишь из начального адреса обработчика прерывания.

Процедура организации перехода к обработчику прерывания включает в себя выделение из выставленных запросов, который имеет максимальный приоритет.

Простейший способ – это программный или аппаратный опрос источников (флажков) прерываний, которые объединяются в регистр запросов прерывания.

рис. Процедура организации перехода к обработчику прерывания.

Более гибким и динамичным является векторное прерывание, при котором исключается опрос источников прерывания.

Прерывание называется векторным, если источник прерывания, выставляя запрос прерывания, посылает в процессор код адреса своего вектора прерывания.

Во многих случаях приоритет между прерывающими программами должен быть динамичным, т.е. программно-управляемым.

2 способа реализации программно-управляемыми приоритетами:

1. порог прерывания. Этот способ позволяет программным путем изменять уровень приоритета процессора относительно приоритетов запросов источников прерывания от ПУ, т.е. задавать порог прерывания – минимальный уровень приоритета запросов, которым разрешается прервать программу, выполняющуюся на процессоре.

2. использование маски прерывания двоичного кода, разряды которого поставлены в соответствие запросам прерывания. Маска загружается в регистр маски, командой процессора. Разряд маски разрешает или запрещает (маскирует) прерывания текущей программы от соответствующего запроса.

Замаскированные запросы либо игнорируются (например, переполнение в арифметическом сопроцессоре), либо запоминаются с тем, чтобы осуществить затребованные действия, когда запрет будет снят (например, от ПУ).




Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 554; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.018 сек.