Процессор очень хорошо справляется с обменами данными. Он может с одинаковой легкостью перемещать их между различными областями памяти, передавать из памяти в порты ввода/вывода и обратно. Однако разработчики прекрасно понимали, что передача больших объемов данных (всего лишь по одному слову за цикл) через процессор — это недопустимо расточительное использование его драгоценного времени. Дело в том, что процессор во время пересылки данных из одного места в другое не может заниматься ничем другим и выполняет при этом лишь роль посредника. Если бы была возможность освободить процессор от выполнения этих рутинных операций, то удалось бы существенно повысить эффективность его работы. Прямой доступ к памяти (DMA — Direct Memory Access) — это метод передачи больших объемов данных из памяти в устройства ввода/вывода и обратно без непосредственного вмешательства процессора. В принципе, контроллер
DMA играет роль автономного «процессора данных», экономящего время центрального процессора системы для выполнения других операций.
Сеанс передачи данных по каналам DMA начинается с формирования сигнала запроса канала прямого доступа к памяти (DRQ — DMA Request) тем устройством, которое заинтересовано в обмене данными (например, контроллером накопителей на гибких дисках). Если запрашиваемый канал был предварительно активирован с помощью программного драйвера или процедур BIOS, то запрос попадет в соответствующую микросхему контроллера DMA, расположенную на системной плате. После этого контроллер DMA посылает процессору сигнал захвата HOLD, который формирует в ответ сигнал подтверждения захвата (HLDA— Hold Acknowledge). После получения сигнала HLDА контроллер DMA передает контроллеру шины команду на отключение процессора от шины расширения и берет управление шиной на себя. Затем контроллер DMA посылает устройству, запросившему канал, сигнал подтверждения (DAC К — DMA Acknowledge), после чего может начаться процесс передачи данных. За один сеанс по каналу прямого доступа к памяти можно передать до 64 Кбайт данных. После завершения обмена данными контроллер DMA вновь подключает к шине центральный процессор и снимет сигнал захвата управления шиной HOLD. Описанный процесс повторяется для каждого блока данных до тех пор, пока все они не будут переданы.
В свое время в системах PC/AT был использован тот же метод увеличения каналов прямого доступа к памяти (каскадирование двух контроллеров), что и при наращивании количества линий IRQ. Выход второго контроллера подключен к 4-му каналу первого, который в результате оказывается недоступным, а общее количество каналов по сравнению с компьютерами PC/XT увеличивается с 4 до 7. Может показаться странным, что в настоящее время реально используется не так много каналов DMA. Это связано с тем, что по современным меркам производительность каналов прямого доступа к памяти оказывается слишком низкой. Технология DMA разрабатывалась в то время, когда тактовая частота процессора составляла всего 4,77 МГц, поэтому и тактовая частота каналов DMA была искусственно ограничена на уровне 4 МГц. После повышения тактовых частот процессоров до 8 МГц и более обмены данными через процессор, при всей своей избыточности, оказались более быстрыми, чем по каналам DMA. В результате в АТ-системах доступных каналов много, но они используются только для обменов данными с контроллером накопителей на гибких дисках и другими устройствами с невысокой производительностью (например, звуковыми платами).
Как и прерывания, каналы DMA тому или иному устройству назначаются путем перестановки перемычек или DIP-переключателей на плате (или автоматически при использовании технологии РпР). После монтажа платы в слот расширения (и включения компьютера) устанавливается ее соединение с выбранным каналом контроллера DMA. Как правило, в командной строке загрузки программного драйвера, обслуживающего устройство, должны быть вписаны ключи, соответствующие аппаратной настройке каналов DMA. Хотя теоретически один и тот же канал можно использовать для обслуживания нескольких устройств, реализовать это на практике чрезвычайно трудно. Если два устройства попытаются одновременно использовать один и тот же канал DMA, то возникнет конфликт.
47.Архитектура МВ для Pentium (Чипсет Intel 440BX) /!\
Смотрим лекцию про чипсеты (последняя)
48.Архитектура МВ для Pentium ( Intel 810) /!\
Смотрим лекцию про чипсеты (последняя)
49.Архитектура современных материнских плат. /!\
Смотрим лекцию про чипсеты (последняя)
50.Основные правила по сборки ПК и подключению его компонентов. /!\
Смотрим практическое занятие.
Дата: 2019-02-02, просмотров: 394.