Прямой доступ к памяти
Прямой доступ к памяти — это такой способ обмена данными, который обеспечивает автономно от ЦП установление связи и передачу данных между ОП и ПУ. Прямой доступ к памяти освобождает процессор от управления операциями ввода-вывода, позволяет осуществлять параллельно во времени выполнение процессором программы с обменом данными между ОП и ПУ, производить этот обмен со скоростью, ограничиваемой только пропускной способностью ОП или ПУ.
Таким образом, ПДП, разгружая процессор от обслуживания ввода-вывода, способствует возрастанию общей производительности ЭВМ. Повышение предельной скорости ввода-вывода информации делает машину более приспособленной для работы в системах реального времени. Прямым доступом к памяти управляет контроллер ПДП (рис. 5.1), который выполняет следующие функции:
1. Управление инициируемой процессором или ПУ передачей данных между ОП и ПУ.
2. Задание размера блока данных, который подлежит передаче и области памяти, используемой при передаче.
3.
Формирование адресов ячеек ОП, участвующих в передаче.
4. Подсчет числа единиц данных (байт, слов), передаваемых от ПУ в ОП или обратно, и определение момента завершения заданной операции ввода-вывода.
Рис.5.1. Прямой доступ к памяти
Контроллер ПДП обычно имеет более высокий приоритет в занятии цикла памяти по сравнению с процессором. Управление памятью переходит к контроллеру ПДП как только завершится цикл ее работы, выполняемый для текущей команды процессора.
ПДП обеспечивает высокую скорость обмена данными за счет того, что управление обменом производится не программным путем, а аппаратурными средствами.
В современных ЭВМ используется как программно-управляемая передача данных, так и прямой доступ к памяти.
Программно-управляемый обмен сохраняют для операций ввода-вывода отдельных байт (слов), которые выполняются быстрее, чем при ПДП, так как исключаются потери времени на программно-управляемую установку начальных состояний регистров и счетчиков контроллера ПДП (инициализация).