Главная страницаОбратная связьКарта сайта

Системные ресурсы :Каналы прямого доступа к памяти

Каналы прямого доступа к памяти (DMA)Такие каналы используются устройствами, осуществляющими высокоскоростной обмен данными. Последовательный и параллельный порты, например, не используют каналы прямого доступа к памяти (DMA), в отличие от звуковой платы и адаптера SCSI. Один канал DMA может использоваться разными устройствами, но не одновременно. Например, канал DMA 1 может использоваться как сетевым адаптером, так и накопителем на магнитной ленте, но вы не сможете записывать информацию на ленту при работе в сети. Для этого каждому адаптеру необходимо выделить свой канал DMA.

Примечание

В современных компьютерах существует несколько типов каналов DMA. Каналы, рассматриваемые в настоящем разделе, связаны с шиной ISA. Другие шины, такие как ATA/IDE, предназначенная для дисковых устройств, несколько по-другому используют эти каналы. Таким образом, материал, представленный в настоящем разделе, не относится к устройствам ATA/IDE, даже если в них используется режим DMA или Ultra DMA.

Каналы DMA 8-разрядной шины ISAВ этой шине для скоростной передачи данных между устройствами ввода-вывода и памятью можно использовать четыре канала DMA. Стандартное распределение этих каналов приведено в табл. 4.80.

Таблица 4.80. Функции каналов DMA в 8-разрядной шине ISA Канал DMA

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

Каналы DMA 16-разрядной шины ISA

С появлением процессора 286 количество каналов DMA в шине ISA было доведено до восьми, причем семь из них доступны платам адаптеров, устанавливаемым в слоты. Как и дополнительные линии IRQ, эти каналы DMA подключены с помощью второго контроллера, имеющего каскадное подключение к первому.

Канал DMA 4 используется для подключения к процессору каналов DMA 0–3. Каналы 0–3 доступны для 8-разрядных обменов данными, а каналы 5–7 — только для 16-разрядных. Стандартное распределение каналов DMA приведено в табл. 4.81.

Таблица 4.81. Функции каналов DMA в 16-разрядных шинах ISA, EISA и MCA



Следует отметить, что адаптеры PCI не используют каналы прямого доступа к памяти ISA, данные каналы доступны только для плат ISA. Однако некоторые платы PCI (например, звуковые) эмулируют эти каналы DMA для работы со старым программным обеспечением.

Из всех каналов DMA стандартное назначение во всех компьютерных системах имеет только канал DMA 2, который используется контроллером гибких дисков. Канал DMA 4

не используется и не представлен в слотах шины. Каналы DMA 1 и DMA 5 обычно используются в звуковых платах, например в Sound Blaster 16. Для скоростной передачи информации эта плата использует как 8-, так и 16-разрядный канал. Канал DMA 3 используется в том случае, если для параллельного порта задан режим ECP или EPP/ECP. Некоторые нестандартные системы, например старые компьютеры Packard Bell, при работе с параллельным портом по умолчанию используют канал DMA 1, а не DMA 3. В этом случае канал DMA 3 можно назначить параллельному порту с помощью переключателей на системной плате, что позволит избежать конфликтов со звуковыми платами, использующими канал DMA 1.

Примечание

Заметьте, что хотя канал DMA 0 представлен в слотах расширения 16-разрядного разъема и поэтому может использоваться только 16-разрядными адаптерами, работает он, как 8-разрядный. Поэтому часто контакты канала DMA 0 не представлены на 16-разрядных платах, которые не могут нормально работать в 8-разрядном режиме. На таких 16-разрядных платах (наподобие адаптера стандарта SCSI), которые используют каналы DMA, представлены контакты каналов 5 -7.

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

В отличие от прерываний IRQ и каналов прямого доступа к памяти, в персональных компьютерах существует великое множество портов ввода-вывода. Существует 65535 портов, пронумерованных от 0000h до FFFFh, и это, пожалуй, самый удивительный артефакт в процессоре Intel. Хотя многие устройства используют до восьми портов, все равно их доступного количества более чем достаточно. Самая большая проблема состоит в том, чтобы двум устройствам случайно не назначить один и тот же порт.

Современные системы, поддерживающие спецификацию Plug and Play, автоматически разрешают любые конфликты из-за портов, выбирая альтернативные порты для одного из конфликтующих устройств.

Хотя порты ввода-вывода обозначаются шестнадцатеричными адресами, подобными адресам памяти, они не являются памятью, они — порты. Различие состоит в том, что данные, отправленные по адресу памяти 1000h, будут сохранены в модуле памяти SIMM или DIMM. Если вы отсылаете данные по адресу 1000h порта ввода-вывода, то они попадают на этот канал” шины, и любое устройство, прослушивающее канал, может их принять. Если никакое устройство не прослушивает этот адрес порта, то данные достигнут конца шины и будут поглощены ее нагрузочными резисторами.

Специальные программы — драйверы — взаимодействуют с устройствами, используя различные адреса портов. Драйвер должен знать, какие порты использует устройство, чтобы работать с ним. Обычно это не составляет проблемы, поскольку и драйвер, и устройство, как правило, поставляются одним и тем же производителем.

Системная плата и набор микросхем системной логики обычно используют адреса портов ввода-вывода от 0h до FFh, а все другие устройства — от 100h до FFFFh. В табл. 4.82 приведены адреса портов ввода-вывода, обычно используемые системной платой и набором микросхем системной логики.

Чтобы выяснить, какие адреса порта используются в конкретной системной плате, загляните в прилагаемую к ней документацию или же воспользуйтесь диспетчером устройств Windows.

Устройства на шине, как правило, используют адреса, начиная с 100h. В табл. 4.83 приведены адреса, обычно используемые устройствами на шине и адаптерами.



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

Практически все устройства на системных шинах используют адреса портов ввода-вывода. Большинство из них стандартизировано, поэтому, как правило, каких-либо конфликтов или проблем с адресами портов для этих устройств не возникает.





Обсудить статью на форуме


Если прочитаная статья из нашей обширной энциклопедия компьютера - "Системные ресурсы :Каналы прямого доступа к памяти", оказалась полезной или интересной, Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по статье через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2021 Дискета.info