Организация системы прерывания в PDP 11
Система прерывания моделей семейства PDP 11предусматривает:
· исключения–возникают при аппаратных сбоях, при выполнении команды прерывания, при установленном флаге пошагового прерывания (четвертый бит “trap” в регистре состояния PS), при страничном промахе механизма виртуальной памяти.
· аппаратные прерывания (прерывания от внешних устройств).
Отличие системы прерывания моделей семейства PDP-11 от системы прерывания МП-IA, заключается в процедуре передачи сигнала прерывания и содержимого вектора прерывания.
Процедура передачи сигнала прерывания в семействе PDP-11 производится по проводам системного интерфейса. В интерфейсе предусмотрено 5 проводов от периферийных устройств к арбитражу.
Рис.4.5 Схема работы арбитража процессора PDP-11 при запросах аппаратных прерываний
Это провода для передачи запроса на права доступа к шинам интерфейса (рис.4.5) для:
· запросов на внепроцессорный (прямой) доступ к памяти (ЗВП – запрос с высшим 8-м уровнем приоритета, один провод),
· запросов на прерывание: 4 провода с уровнями приоритета от 7 до 5 (ЗП7, ЗП6, ЗП5, ЗП4).
Процессор может иметь переменный уровень приоритета от 7 до 4. Уровень приоритета процессора задается трехбитовым полем приоритета регистра состояния (PS).
Всем внешним устройствам, использующим прямой доступ к памяти или систему прерывания, присваивается высший (8) уровень приоритета на запрос прямого доступа к памяти и один из уровней (от 7 до 4) – по запросам на передачу сигнала прерывания.
На запросы внешних устройств, если приоритет запроса выше уровня приоритета процессора, арбитраж выставляет ответный сигнал разрешения на захват шин интерфейса для прямого доступа к памяти или для передачи вектора прерывания в процессор по одному из четырех проводов разрешения (РП4, РП5, РП6, РП7) захвата (следующего) цикла процессора. Но это приоритетное выделение только уровня запроса, а не конкретного устройства на этом уровне. Для выделения единственного запроса на приоритетном уровне провода разрешения на каждом уровне соединены последовательно в контроллерах периферийных устройств. При этом в контроллере всех периферийных устройств передача сигнала на последующее устройство блокируется. Таким образом, сигнал разрешения захвата цикла процессора доходит только до контроллера одного периферийного устройства. По получении разрешения контроллер выставляет сигнал “Прерывания” на общий провод подтверждения разрешения. При отсутствии сигнала подтверждения процессор определяет запрос как ложный.
Таким образом, в семействах PDP-11 реализована ортогональная (многоуровневая) схема выделения приоритетов. Маскирование запросов прерывания производится не индивидуально, а по уровням. При этом уровень приоритета задается в регистре состояния (PS), запрос на прямой доступ не маскируется, т.к. запрос на внепроцессорные передачи (8 уровень) всегда выше приоритета процессора (от 7 до 4 уровня).
Устройство, получившее разрешение на прерывание, по окончании текущего цикла занимает цикл интерфейса и передает процессору по шине данных адрес вектора прерывания в таблице прерываний, расположенной с начальных адресов памяти. Вектор прерывания состоит из двух слов – адреса программы обработки прерывания (PC – Program counter) и регистра состояния программы (PS – Program status). В процедуре прерывания процессор сохраняет в аппаратном стеке содержимое счетчика команд (PC) и регистра состояния программы (PS). После сохранения контекста программы процессор производит загрузку регистров PC и PSсоответствующими компонентами вектора прерывания.
Процедура прерывания семейства моделей PDP-11,в отличие от семейства МП IA-16, заключается в том, что вектор прерывания, кроме адреса программы обработки прерывания, содержит и начальное состояние программы обработки прерывания, и программа обработки прерывания начинает работу в своем контексте, а не в контексте прерываемой программы.
Вопросы для самопроверки:
1. Отличия системы прерывания моделей семейства PDP-11 от системы прерывания МП-IA.
2. Процедура передачи сигнала прерывания в семействе PDP-11.
3. Работа арбитража.
4. Механизм маскирования сигналов прерывания.
5. Принцип выделения сигналов приоритетного уровня.
6. Принцип выделения сигнала приоритетного уровня.
7. Принцип выделения приоритетного сигнала внутри уровня.
8. Особенность передачи вектора прерывания в процессор.
9. Отличия содержимого вектора прерывания в моделях семейства
PDP –11.
Дата добавления: 2021-01-26; просмотров: 383;