
МПУЭВС. Лекции. Задания / pdf_ПрилПЦиПУ / Приложение_ Л_КонтроллерПДП
.pdf
1
Приложение Л
Л.1 Контроллер ПДП
На рисунке Л.1 изображено условное графическое обозначение распространённой версии контроллера 580ВТ57 (аналог i8257), ставшей классическим примером контроллера ПДП. Контроллер является программно настраиваемым модулем.
Рисунок Л.1 - Условное обозначение контроллера ПДП
Контроллер после настройки может управлять работой четырёх каналов ПД каналов с установкой приоритетов внешних устройств. Внешние устройства могут выставлять запросы (DRQ) ПД через контроллер к МПУ.
Контроллер с учётом очереди транслирует запрос к МПУ сигналом HOLD.
Процессор МПУ после перевода магистралей в отключённое (третье)
состояние выставляет к контроллеру сигнал подтверждения ПД (HLDA) и
контроллер транслирует сигнал подтверждения (/DACK) к внешнему устройству в ответ на запрос. Внешнее устройство к этому времени должно быть готово принять безадресный сигнал управления I/OR (или I/OW) для выдачи данных к памяти (или для приёма данных из памяти) и должно быть обеспечено собственным аппаратным ресурсом доставки данных для чтения
(или для размещения по выводу). Параллельно контроллер по подтверждению ПД выставляет старший байт адреса на линиях шины
2
данных (DI/DO) в сопровождении сигнала сопровождения (ADST) для сохранения в буферном регистре, выходы которого соединены с линиями
(A15-A8) адресной магистрали адреса, вне контроллера. На линиях (A7-A4,
A3-A0) контролер в это же время выставляет младший байт адреса, образуя два байта адреса на магистрали. Сигнал чтения к памяти (/MEMR)
контроллером формируется с запаздыванием к установке адреса и с упреждением к сигналу записи (/I/OW) во внешнее устройство. При записи в память контроллер формирует сигнал чтения внешнему устройству (/I/OR) с
запаздыванием к установке адреса и с упреждением к сигналу записи
(/MEMW) в память. Во время передачи между внешним устройством и памятью сигнал запроса должен удерживаться в течение передачи всего блока данных. Размер блока данных до 16Кб и адрес его размещения в пределах сегмента 64Кб устанавливаются при программировании контроллера. По завершению заданного блока данных в слове состояния программной модели контроллера на выходе (TC) устанавливается активное стояние бита и сигнала «Окончание счёта». Предусмотрена выдача импульсных меток через каждые 128 байт передачи на выходе (MARK).
Сигнальные линии RDY, CLK, соответствуют спецификации сигналов машинных циклов МП 1821ВМ85А. Сигнальная линия /CS активируется выходом дешифратора адреса по обращению при программировании контроллера. После перехода в режим ведущего (по предоставлению прямого доступа HLDA=1) вход /CS блокируется для исключения самовыбора.
Сигнальная линия AEN (Addres Enable) используется для перевода внешних формирователей в третье состояние.
Программная модель контроллера приведена на рисунке Л.2. Она содержит четыре одинаковых набора по четыре однобайтовых регистра в наборе и два общих однобайтовых регистра настройки режима и контроля.
состояния контроллера.
Регистр режима программируется после загрузки регистров адреса и счётчиков. Регистр режима сбрасывается по системному сбросу сигналом

3
RESET (RES), который запрещает работу всех каналов. Не желательно разрешать работу каналов до загрузки данных в счётчики и адресов. Битом
RP=0 в слове режима устанавливается фиксированный приоритет, иначе -
циклический. Установкой бита EW=1 повышается длительность сигнала записи в память и порт с целью ослабить потребность в тактах ожидания готовности. Битом TCS разрешается запрет ПД при завершении передачи данных (устанавливается TCi и сбрасывается ENi). При TCS=0 состояние канала не изменяется после завершения передачи.
Рисунок Л.2 - Программная модель контроллера
Режим автозагрузки (AL=1) позволяет образовать сцепку блоков данных каналов К2 и КЗ. Состояние бита TCS при этом не влияет на работу канала К2. При программировании канала К2 параметры его загрузки дублируются в регистрах канала К3. Загрузка адресов в регистры адреса,
загрузка размеров массива в счётчики и режима канала контроллера по отношению к памяти в разряды D15, D14.счётчиков выполняется двумя парами байтов. Адреса объектов программной модели при загрузке кодируются адресным полем А3-А0 и кодом активизации входа /CS через внешний селектор контроллера. Разряд А3=0 идентифицирует регистры
|
|
4 |
счётчиков и |
адресов памяти, а |
А3=1 соответствует слову режима |
контроллера |
по записи и слову состояния по чтению. Состояние разряда |
А0=0 соответствует загрузке слов начального адреса памяти для ПД.
Состояние разряда А0=1 соответствует загрузке счётчика массива и режима по отношению к памяти в битах D15, D14. Состояния разрядов А2, А1
кодируют номер канала контроллера. В контроллере ПД для исключения наложения слов загрузки адреса и счётчика применён триггер идентификации места в паре (L/H - младший/старший). Младший байт адреса
(или младший байт счетчика) загружается первым, а старший байт адреса -
вторым. Разрядами D15, D14 загрузки счётчиков устанавливаются режимы работы памяти (00-верификация, 01-запись, 10-чтение, 11запрещено).
Соответствие последовательности загрузки достигается с учётом того, что состояние триггера L/H сбрасывается по сигналу RES, а загрузка адресов,
счётчиков и режима выполняется парами слов. Вход /CS используется только при загрузке и проверке состояния контроллера, когда он исполняет роль ведомого. Получив предоставление ПД, контроллер становится ведущим и его вход /CS блокируется для исключения конфликтов адресации памяти.
По завершению счета, когда разрешение отменяется (ENi=0), блокировка с входа /CS снимается.
Пример настройки адреса и размера массива одного из каналов КПДП Выполнена загрузка слов 2534h, 5442h последовательностью
четырёх команд OUT 24h, OUT 24h, OUT 25h, OUT 25h .
Определить номер настроенного канала, код настройки селектора входа /CS, начальный адрес обращения, размер массива, режим работы с памятью.
Ответ: номер канала - К2, код селектора - 2h, начальный адрес обращения к памяти - 2534h, режим работы с памятью - запись, размер записываемого массива - 5187 байт (по спецификации загружаемый явно в контроллер размер массива принимается на единицу меньше фактического).
5
Как следует из проведенного анализа принятых в контроллере решений, требуются дополнительные технические средства, чтобы передача данных могла исполняться. Многообразие условностей организации работы контроллера с ресурсами общей памяти, источниками и приёмниками внешних устройств побуждает к применению менее избыточных аппаратных средств ПД, рассчитанных на применение с конкретными внешними устройствами. Оставляя в контроллере один канал вместо четырёх и,
заменяя совмещённые контакты вывода адреса к памяти и сигналов управления к внешнему устройству дополнительными, можно существенно упростить и подключение, и программное обслуживание контроллера ПД.