Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МПУЭВС. Лекции. Задания / pdf_ПрилПЦиПУ / Приложение_ Л_КонтроллерПДП

.pdf
Скачиваний:
25
Добавлен:
11.05.2015
Размер:
85 Кб
Скачать

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

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

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