Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПС2 Проектирование аппаратного и программного...doc
Скачиваний:
22
Добавлен:
02.09.2019
Размер:
1.67 Mб
Скачать

Обмен в режиме прямого доступа в память

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

Сущность этого метода заключается в том, что процессор, как устройство, управляющее обменом, заменяется специальным контроллером ПДП, который обеспечивает генерацию необходимых адресов, сигналов управления и контроль за окончанием процесса пересылки. Все эти функции выполняются аппаратным путем за минимальное время.

Упрощенная структура стандартного интерфейса для реализации обмена в режиме ПДП приведена на рис. 1.11.

Рис. 1.11. Обмен данными с внешними устройствами

в режиме ПДП. Структура интерфейса

В этом случае сигналы с выходов флаговых триггеров портов ввода/вывода поступают в качестве сигналов запроса режима ПДП на контроллер ПДП, который формирует общий сигнал запроса режима ПДП, называемый сигналом захвата HOLD. Сигнал HOLD поступает в процессор, требуя обслуживания возникшего запроса на режим ПДП. Поскольку процессор не участвует в реализации этого обмена и его состояние не изменяется, то он прекращает выполнение программы, не дожидаясь завершения выполняемой команды, т. е. практически мгновенно после завершения текущего машинного цикла.

При переходе к обслуживанию режима ПДП процессор прежде всего отключается от шин адреса, данных и управления, переводя соответствующие выходы в высокоимпедансное состояние. После этого он выдает сигнал подтверждения захвата HLDA, поступающий в контроллер ПДП. Сигнал HLDA подтверждает, что процессор отдал свои шины в распоряжение контроллера ПДП, который может начинать управление обменом данными. По этому сигналу контроллер ПДП формирует выходной сигнал DACK, выбирающий порт ввода/вывода, соответствующий активному запросу. При одновременном активировании нескольких запросов контроллер ПДП выбирает порт, соответствующий активному запросу с наивысшим приоритетом.

После этого контроллер ПДП начинает управление обменом. При этом он выдает на шину адреса адрес ячейки памяти, с которой осуществляется обмен, и генерирует пару управляющих сигналов MEMR  IOW или IOR  MEMW в зависимости от направления пересылки данных. В результате данные извлекаются из источника и помещаются в приемник информации. Расход времени на пересылку одного элемента данных не превышает длительности одного машинного цикла. После пересылки заданного количества элементов данных контроллер ПДП снимает сигнал захвата HOLD, что приводит к снятию сигнала HLDA процессором микроЭВМ. После этого процессор подключается к шинам адреса, данных и управления и продолжает выполнение программы с точки захвата.

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

Эффективность обмена в режиме ПДП особенно велика при обмене данными со стандартными накопителями ЭВМ: накопителями на магнитных лентах и магнитных дисках. Недостатком обмена в режиме ПДП является усложнение интерфейса.

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