
- •2. Учебно-методический блок
- •2.1 Теоретическая часть
- •Краткая история развития компьютерной техники.
- •2. Ко времени ее реализации должна быть достаточно развита техническая база для реализации идеи в массовом масштабе.
- •3. В практической реализации этой идеи должна быть заинтересована значительная часть общества (должен «созреть» социальный заказ).
- •2. Обобщенная структурная схема компьютера
- •3.Оценка производительности компьютеров
- •4. Классификация и краткий обзор современных компьютеров
- •Суперкомпьютеры
- •Мини-компьютеры
- •Микроконтроллеры
- •5. Формы представления информации в компьютере.
- •5.1. Кодирование в компьютерах числовой информации.
- •Десятичная:
- •Шестнадцатеричная:
- •Двоично-десятичная:
- •5.2. Кодирование в компьютерах символьной (алфавитно-цифровой) информации.
- •5.3 Кодирование в компьютерах звуковой информации.
- •5.4 Кодирование в компьютерах визуальной информации.
- •Основы компьютерной арифметики.
- •1. Операции сложения и вычитания целых чисел.
- •2. Операции с вещественными числами.
- •7. Элементная база компьютера.
- •8. Структура и функционирование cpu.
- •9. Способы адресации информации
- •10. Система прерываний компьютера.
- •Основные понятия.
- •Основные характеристики систем прерывания.
- •4. Классификация систем прерывания.
- •11. Принципы организации системы ввода/вывода в компьютерах.
- •Общие положения
- •3. Ввод/вывод по прерыванию.
- •4. Ввод/вывод с прямым доступом к памяти.
- •12. Конструктив атх рс и архитектура системной платы
- •13. Устройства ввода информации
- •1. Клавиатура
- •2. Мышь.
- •14. Организация оперативных запоминающих
- •1. Общие принципы функционирования
- •2. Тайминги
- •3. Тенденции развития
- •4. Распределение адресного пространства оп пк.
- •2.2 Лабораторный практикум
- •2.3 Методические рекомендации для преподавателей и студентов
- •2.3.1.Методические рекомендации по изучению дисциплины для преподавателя
- •2.3.2. Методические рекомендации для студентов
- •2.3.3. Методические рекомендации для применения активных и интерактивные формы проведения занятий
- •3.Глоссарий
- •Диагностико-контролирующий блок
- •Тест по теме: «Архитектура компьютеров» Вариант №1
- •Тест по теме: «Архитектура пк» Вариант №2
- •Блок наглядно-демонстрационного материала
Основные характеристики систем прерывания.
К основным характеристикам систем прерывания относятся.
а) Общее количество типов запросов прерывания (входов в систему прерывания).
б) Время реакции – интервал времени между появлением запроса прерывания и началом выполнения прерывающей программы.
в) Издержки прерывания – затраты времени на переключение программ (см. рис.10.4).

Прерываемая
(основная)
программа






Запрос
прерывания














tв
tобсл
tз
tp
Рис.10.4 Временная диаграмма процесса прерывания программ.
Здесь: tр – время реакции, интервал времени, требующийся для окончания текущей команды или такта. Оно зависит как от момента появления запроса прерывания, так и от времени выполнения текущей команды. Сюда же входит время обнаружения запроса прерывания.
Tз – время запоминания, интервал времени, требующийся для запоминания состояния прерванной программы т.е. запоминания состояния регистров CS, IP, Flags. Если требуется запомнить в стеке состояние других регистров процессора, это необходимо предусмотреть самим пользователем в начале самой процедуры обработки прерывания.
Tобсл – время выполнения собственно процедуры обслуживания прерывания.
Tв – время восстановления состояния прерванной программы, интервал требующийся для выборки из стека и восстановления в исходное состояние регистров CS, IP и Flags.
Интервал времени tз + tв = tизд , т.е. время, затрачиваемое на переключение программ, обычно называют издержками прерывания.
г) Глубина прерывания – максимальное число программ, которые могут прерывать друг друга (см. рис.10.5).
Если после перехода к процедуре обслуживания прерывания и вплоть до ее окончания прием других запросов запрещается, то говорят, что система прерываний имеет глубину прерывания равную 1. Глубина прерывания равна n, если допускается последовательное прерывание до n программ. Последовательность прерывания программ определяется заданными уровнями их приоритетов. Глубина системы прерывания обычно совпадает с числом уровней приоритета в системе прерываний.
Рис.10.5 Иллюстрация работы систем прерывания с различной глубиной
прерывания (наивысший приоритет – у прерывания 3, низший –
у прерывания 1).
д) Насыщение системы прерываний – насыщением системы прерывания называется ситуация, когда запрос прерывания окажется необслуженным к моменту прихода нового запроса от того же источника (этот случай обозначен пунктиром). В этом случае, предыдущий запрос прерывания от того же источника будет утрачен, что недопустимо. Поэтому быстродействие компьютера, характеристики системы прерывания, число источников прерывания и частота возникновения запросов должны быть согласованы таким образом, чтобы насыщение было невозможным.
4. Классификация систем прерывания.
Идентификация запросов прерывания (определение источников запросов) в системах прерывания может осуществляться двумя основными способами: способом опроса (Polling) и векторным способом.
В связи с этим и системы прерывания могут быть реализованы двух типов:
1. Системы прерывания с опросом источников прерывания (Polling).
2. Векторные системы прерывания.
Следует, однако, заметить, что в современных компьютерах системы прерывания строятся как комбинированные системы, поскольку они могут работать как в режиме опроса (Polling), так и в режиме векторного запроса.
Для упрощения понимания рассмотрим эти режимы по отдельности.
Системы прерывания с опросом (Polling).
Системы прерывания с опросом характерны тем, что опрос процессором состояний входов запросов прерывания осуществляется в удобное для него время (например, в промежутках между выполнением программ). Отсюда следует, что главным отличием систем прерывания с опросом является то, что инициатива идентификации и обслуживания запросов прерываний от периферийных устройств, принадлежит процессору.
Различают две разновидности режима опроса:
а) программный поллинг;
б) аппаратный поллинг.
а) Программный поллинг.
При программном поллинге запросы прерывания опрашиваются программно, так же программно определяется порядок их опроса и их обслуживания. Схема алгоритма реализации программного поллинга приведена на рис.Х.6. Появление самих запросов прерывания фиксируется в специальном регистре, так называемом регистре обслуживаемых запросов прерываний, разряды которого часто именуются «флагами», аналогично разрядам регистра Flags процессора. Регистр обслуживаемых запросов прерываний находится в контроллере прерываний, который, в свою очередь, в современных процессорах, входит в состав «южного» моста Chipset. Приход запроса прерывания устанавливает соответствующий ему бит этого регистра в состояние 1 (устанавливает «флаг» появления запроса).
б) Аппаратный поллинг.
В современных компьютерах определение порядка обслуживания запросов прерывания осуществляется аппаратным образом в контроллере прерывания, путем схемотехнического выявления кода типа прерывания (номера запрашивающего устройства), который должен быть обслужен в данный момент времени. Процессор в удобное для себя время только запрашивает, существует ли в данный момент времени вообще какой-либо запрос на прерывание программы.
При аппаратном поллинге, схема организации которого изображена на рис.10.7, запросы прерывания от всех, подключенных к компьютеру, периферийных устройств поступают сначала на схему маскирования контроллера прерываний, а затем незамаскированные запросы поступают на соответствующие входы регистра обслуживаемых запросов прерываний.
Рис.10.6 Блок-схема алгоритма реализации программного опроса.
Затем эти запросы, подлежащие обслуживанию, проходят через схему кодирования (CD) и поступают в младшие разряды регистра слова состояния (SW – Status Word) в виде двоичного кода типа прерывания, который должен обслуживаться в данный момент. При этом, шифратор осуществляет анализ всех подлежащих обслуживанию запросов прерываний по их заранее заданным приоритетам, формируя на выходе код типа наиболее приоритетного прерывания (при 8 входах запросов прерываний – 3-х разрядный двоичный код). В старшем разряде регистра слова состояния SW фиксируется наличие хотя бы одного запроса прерывания в системе, в виде установления этого разряда в состояние 1 и выдачи сигнала наличия прерывания – INTR (Interrupt).
В удобное для себя время, процессор опрашивает регистр слова состояния SW и считывает его старший бит INTR. Если этот бит равен 0, т.е. запросов прерываний к данному моменту не поступало, процессор продолжает выполнять основную программу. Если бит INTR=1, процессор считывает код типа прерывания и по этому коду определяет адрес необходимой процедуры обслуживания данного прерывания.
Рис.10.7 Схема организации аппаратного поллинга в современных
компьютерах.
Векторные системы прерывания.
В случае векторных систем прерывания инициатива принадлежит устройству, запрашивающему прерывание. Аналогично аппаратному поллингу, при поступлении в систему хотя бы одного запроса, процессору выставляется сигнал общего прерывания – INTR. Однако, процессор, принудительно проверяет состояние этого сигнала в конце каждого машинного цикла исполнения очередной команды. Если INTR=1, и процессору разрешено прерывание (флаг IF=1), он заканчивает выполнение очередной операции и подтверждает прием запрашиваемого прерывания путем подачи на контроллер прерывания сигнал INTA (Interrupt Acknowledge). Получив сигнал INTA, контроллер выдает процессору код типа прерывания (номер прерывания), по которому процессор определяет логический адрес начала процедуры обслуживания прерывания и, который, обычно, называется вектором прерывания (см. рис.10.2).
Поскольку полный логический адрес для процессоров i8086/88, а также всех последующих моделей процессоров семейства Х86, Pentium в реальном режиме работы состоит из четырех байт (2 – базовый адрес сегмента и 2 – смещение в данном сегменте), то вектора прерываний являются 4-х байтовым двоичным словом.
Рис.10.8 Принцип организации векторной системы прерываний процессоров
i8086.
Вектора прерываний в защищенном режиме работы всех современных компьютеров семейства Х86, Pentium имеют размер 8 байт, поскольку они определяют специальные 8-ми байтовые структуры – дескрипторы, исходя из которых определяются начальные физические адреса, соответствующих процедур обслуживания прерываний.
И в том и в другом случае всего определено 256 типов прерываний и, следовательно, любое возможное прерывание определяется 8-ми разрядным двоичным кодом типа прерывания.
Для процессоров i8086/88 и старших моделей семейства Х86, в реальном режиме работы, все возможные вектора прерываний располагаются в первом килобайте адресного пространства компьютеров.
Таблица векторов прерываний для процессоров i8086/88 и старших моделей процессоров семейства Х86 в реальном режиме работы, приведена на рис.Х.8.
Последовательность действий при поступлении запроса прерывания заключается в следующем.
1. Код типа внутреннего прерывания или код типа внешнего маскируемого аппаратного прерывания, суммируемый с константой 8, сдвигаются на 2 разряда влево и определяют адрес вектора прерывания в ОЗУ. Суммирование с константой 8 производится потому, что для всех внешних аппаратных прерываний предусмотрено использование векторов, начиная с восьмого. Вектора с нулевого до седьмого включительно зарезервированы под внутренние прерывания. Умножение кода типа прерывания на 4 производится потому, что каждый вектор занимает 4 байта адресного пространства и, следовательно, чтобы сформировать адрес n – го вектора прерывания необходимо код n –го типа прерывания умножить на 4.
2. Для того, чтобы можно было возвратиться, после выполнения процедуры обслуживания прерывания, к продолжению прерванной программы, в стеке запоминаются: содержимое кодового сегментного регистра, указателя команд, а также содержимое регистра флагов.
3. Сбрасывается флаг IF в регистре флагов, запрещая этим новое прерывание до окончания обслуживания текущего, а в кодовый регистр CS и регистр указателя команд IP передаются значения соответствующего вектора прерывания из таблицы векторов прерываний (в регистр CS – два старших байта, а в регистр IP – два младших байта вектора).
4. По новому значению CS и IP передается управление на процедуру обслуживания прерывания, соответствующую полученному запросу прерывания.