Лекция 12. Канал прямого доступа к памяти Предпосылки создания Обслуживание внешних устройств по прерываниям может замедлить работу микроЭВМ, если главное назначение прерываний заключается в передаче большого количества данных от внешнего устройства в ОЗУ или наоборот. Назначение Контроллер прямого доступа к памяти берет на себя управляющие функции CPU для более быстрой передачи больших объемов данных за счет обмена без прерываний. Схема работы канала прямого доступа к памяти AB RAM DB ВУ DRQ HRQ CPU MEMR MEMW IOR IOW HLDACK HLDACK DMAC DACK Схема работы канала прямого доступа к памяти • Внешнее устройство генерирует запрос прямого доступа к памяти (Direct Request). • DAMC передает его центральному процессору (CPU) (Hold Request). • CPU приостанавливает выполняемую программу и разрешает прямой доступ сигналом HLDACK. • DAMC генерирует адрес ячейки памяти для обмена и подтверждает сеанс прямого доступа для внешнего устройства выдачей сигнала DACK. • DMAC генерирует сигналы MEMR показывающие направление обмена данными. или MEMW, Разновидности прямого доступа к памяти • Блокировка центрального процессора на время передачи всего пакета данных. В этом случае прекращается работа выполняемой программы. • Захват цикла. Используется в тех циклах работы микропроцессора, когда не происходит его обращение к памяти. Контроллер прямого доступа к памяти KP580BT57 Общая характеристика Контроллер управляет работой четырех независимых каналов прямого доступа к памяти с учетом приоритетов внешних устройств (эти приоритеты могут быть циклически изменяемыми). Условное изображение контроллера Инициализация контроллера Для инициализации контроллера необходимо записать соответствующую информацию: • в 16-разрядный регистр адреса канала; • 16-разрядный счетчик циклов канала; • 8-разрядный регистр режима, общий для всех каналов. Таблица истинности Запись счетчиков циклов каналов Два старших разряда счетчика циклов каждого из каналов определяют коды режимов, задающих направление обмена следующим образом: Запись в память – 01 Чтение из памяти – 10 Контроль – 00 Слово управления