Прямым доступом к памяти управляет контроллер ПДП, который выполняет следующие функции:
1. Управление инициируемой процессором или ПУ передачей данных между ОП и ПУ.
2. Задание размера блока данных, который подлежит передаче, и области памяти, используемой при передаче.
3. Формирование адресов ячеек ОП, участвующих в передаче.
4. Подсчет числа переданных единиц данных (байт или слов) и определение момента завершения операции ввода-вывода.
Указанные функции реализуются контроллером ПДП с помощью одного или нескольких буферных регистров, регистра – счетчика текущего адреса данных и регистра – счетчика подлежащих передаче данных.
Прямой доступ к памяти
Прямой доступ к памяти (ПДП) – система для быстрой передачи данных между
памятью и периферийным устройством, минуя процессор.
При этом МП освобождается от участия в обмене данными. ОЗУ связывается с МП
и с аппаратурой, руководящей обменом данных, разными шинами. Обмен данными
полностью управляется с помощью аппаратных средств. Инициатором обмена данными
является ПУ, которое посылает запрос об обмене данными на флажок запроса ПДП.
Флажок запроса активизирует блок ПДП. Блок ПДП посылает в память сигнал чтения
или записи и определяет ячейку ОЗУ, с которой начнется обмен данными. Блок ПДП
посылает эти сигналы, после того, как получит от МП сигнал подтверждения. Регистр
данных передает данные из ОЗУ в ПУ и из ПУ в ОЗУ. При ПДП процессор
освобождается от управления операциями ввода вывода и может параллельно
выполнять основную программу. ПДП обеспечивает более высокое быстродействие и
более высокую производительность работы ЭВМ.
Прямым доступом к памяти управляет контроллер ПДП, который выполняет
следующие функции:
используемой при передаче.
1. Управление инициируемой процессором или ПУ передачей данных между ОП и ПУ.
2. Задание размера блока данных, который подлежит передаче, и области памяти,
3. Формирование адресов ячеек ОП, участвующих в передаче.
4. Подсчет числа переданных единиц данных (байт или слов) и определение момента
завершения операции вводавывода.
Указанные функции реализуются контроллером ПДП с помощью одного или
нескольких буферных регистров, регистра – счетчика текущего адреса данных и регистра –
счетчика подлежащих передаче данных.
При инициировании операции вводавывода в счетчик подлежащих передаче данных
заносится размер передаваемого блока (число байт или слов), а в счетчик текущего адреса
начальный адрес области памяти, используемой при передаче. При передаче каждого байта
содержимое счетчика адреса увеличивается на 1, при этом формируется адрес очередной
ячейки памяти, участвующей в передаче. Одновременно уменьшается на 1 содержимое
счетчика подлежащих передаче данных; обнуление этого счетчика указывает на завершение
передачи.
В компьютерах, совместимых с IBM PC и PC/XT, для организации прямого доступа в
память используется одна 4канальная микросхема 8237, канал 0 которой предназначен
для регенерации динамической памяти. Каналы 2 и 3 предназначены для управления вы
сокоскоростной передачей данных между дисководами гибких дисков, винчестером и
оперативной памятью соответственно. Только канал 1 доступен для дополнительного
оборудования.
IBM РС/АТ – совместимые компьютеры имеют уже 7 каналов прямого доступа к
памяти. В первых компьютерах это достигалось каскадным включением двух микросхем
8237, как и в случае контроллеров прерываний. Поскольку прямой обмен данными между
оперативной памятью и периферийными устройствами в IBM PCсовместимых
компьютерах имеет некоторые существенные ограничения (в том числе и по скорости), то в
PC/AT задействован только канал 2 – для обмена с приводом флоппидиска. Заметим, что
для первых четырех каналов ПДП
(0–3) передача данных осуществляется побайтно, а для каналов 5–7 – 16
разрядными словами.Контроллер ПДП обычно имеет более высокий приоритет в занятии цикла обращения
к памяти по сравнению с процессором. Управление памятью переходит к контроллеру
ПДП, как только завершается цикл обращения к памяти для текущей команды процессора.
Прямой доступ к памяти обеспечивает высокую скорость обмена данными за счет того, что
управление обменом производится не программными, а аппаратными средствами