Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
AViS.doc
Скачиваний:
3
Добавлен:
21.04.2019
Размер:
2.19 Mб
Скачать

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

Как показано на рис 2.8, в приведённом примере задача идентификации источника прерывания решается чисто программными средствами, путём последовательного опроса всех имеющихся в системе внешних устройств (ВУ1, ВУ2, ВУ3 и т.д.).

Следует обратить внимание на то, что в приведенном примере наивысшим приоритетом обладает ВУ1, поскольку оно опрашивается первым, а самым низким – ВУ3. Это может иметь значение в случае одновременного запроса прерывания сразу несколькими устройствами.

Очевидно, что при таком алгоритме обслуживание ВУ, имеющего более низкий приоритет будет возможно только после завершения обслуживания всех ВУ, обладающих более высоким приоритетом. После завершения какой-либо частной подпрограммы обработки прерывания осуществляется восстановление из стека временно сохранённых там данных в аккумулятор и другие регистры. Затем выполняется команда EI – разрешение прерываний и происходит возврат к основной программе.

Если идентификация источника прерывания осуществляется на программном уровне, то и распределение приоритетов определяется программой обработки прерывания, путем задания последовательности опроса ВУ (см. рис. 2.8). Однако при использовании аппаратных средств, обеспечивающих передачу «вектора» прерывания, целесообразно и задачу распределения приоритетов решать на аппаратном уровне, как, например, это показано на рис. 2.10.

В ответ на поступивший запрос прерывания ЦВУ посылает ответный сигнал – подтверждение прерывания. Этот сигнал сначала попадает на схему прерываний внешнего устройства ВУ1 (упрощённый вариант структурной схемы контроллера прерываний по вектору показан на рис. 2.9), а также на нижний вход первой схемы совпадения. В том случае, если ВУ1 не запрашивало прерывания, на верхний инверсный вход схемы совпадения воздействует низкий уровень напряжения логического «0». При этом сигнал подтверждения появится на выходе той же схемы совпадения и поступит в аналогичную точку схемы прерываний внешнего устройства ВУ2, одновременно воздействуя на нижний вход второй схемы совпадения.

Сигал подтверждения прерывания будет передаваться по аналогичной цепочке и дальше, до тех пор, пока на его пути не встретится ВУ, запросившее прерывание. Схема контроллера сопряжения устройства, запросившего прерывание, предаёт на верхний инверсный

вход соответствующей схемы совпадения сигнал в виде логической «1», что и приводит к «разрыву» цепи дальнейшей передачи сигнала подтверждения прерывания. Таким образом, уровень приоритета в обслуживании каждого внешнего устройства определяется его порядковым номером в цепи распространения сигнала подтверждения прерывания. Очевидно, что для перераспределения уровней приоритетов между ВУ достаточно изменить схему соединений между контроллерами, по которым предаётся сигал подтверждения.

Вопрос 8. Ввод данных в режиме прямого доступа к памяти

В режиме прямого доступа к памяти (ПДП) контроллер сопряжения берёт на себя все функции по организации процесса формирования и передачи данных. При этом процессор ЦВУ как бы отключается на всё время предоставления ПДП. Алгоритм обмена данными в режиме ПДП поясняет рис. 2.11.

Обмен данных в режиме ПДП начинается по инициативе внешнего устройства (ВУ), которое в нужный момент времени устанавливает верхний триггер (рис. 2.11) в состояние логической «1». Сформированный таким образом сигнал запроса ПДП поступает на специальный вход устройства управления процессором (УУ) ЦВУ. Сигнал запроса ПДП вызывает прерывание процесса выполнения программы. Однако в данном случае отсутствует необходимость записи в стек содержимого внутренних регистров процессора, а также решения задачи идентификации источника прерывания. Приняв запрос ПДП, процессор ЦВУ лишь завершает текущее обращение к ячейке памяти оперативного запоминающего устройства (ОЗУ) и посылает ответный сигнал «Разрешение ПДП». При этом УУ отключает внутренние регистры процессора (РА и РД) от соответствующих шин адреса и данных. Таким образом, ОЗУ остаётся подключенным только к регистрам РА и РД контроллера ПДП. Поскольку в общем случае направление передачи данных может изменяться, в составе контроллера ПДП имеется второй триггер (нижний, на рис. 2.11). Он также управляется внешним устройством и служит для выбора режима работы ОЗУ (чтение/запись).

С момента предоставления режима ПДП вся «ответственность» за процесс передачи данных, использование ОЗУ возлагается на контроллер ПДП. Формирование текущих адресов и данных осуществляется по «жёсткому» алгоритму посредством специальной схемы управления регистрами РА и РД. Кроме того, в режиме ПДП контроллеру сопряжения может передаваться функция регенерации памяти ОЗУ (вопросы, связанные с необходимостью регенерации ОЗУ, построенного на ячейках памяти динамического типа, будут рассмотрены ниже). После завершения обмена триггер запроса ПДП переключается в исходное состояние, УУ вновь подключает внутренние регистры процессора к соответствующим шинам и ЦВУ продолжает выполнение прерванной программы.

Основное преимущество режима ПДП перед другими способами взаимодействия ЦВУ с внешними устройствами состоит в достижении предельного быстродействия системы, которое, по существу, определяется быстродействием используемого ОЗУ. Это особенно важно для АТСН с телевизионными датчиками высокого разрешения, поскольку время передачи большого объёма видеоинформации в ЦВУ может быть соизмеримо со временем её обработки.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]