Инструменты пользователя

Инструменты сайта


dma

Это старая версия документа!


DMA

DMA (Direct Memory Access) - контроллер, позволяющий периферийным устройствам обмениваться данными с системной памятью напрямую, без прямого участия CPU. Процессор лишь настраивает регистры DMA, после чего контроллер забирает управление шиной. Это позволяет осуществлять асинхронный ввод/вывод, освобождая процессор для других задач, что особенно важно для программ реального времени.

Примеры использования DMA:

Каналы DMA

Контроллер поддерживает 7 каналов, каждый из которых жестко привязан к конкретному устройству:

  • 0x1F80108x DMA0/MDECin - передача данных в декодер макроблоков
  • 0x1F80109x DMA1/MDECout - чтение данных из декодера макроблоков
  • 0x1F8010Ax DMA2/GPU - передача списков команд и данных изображений в графический процессор
  • 0x1F8010Bx DMA3/CDROM - передача данных с привода CD-ROM в память
  • 0x1F8010Cx DMA4/SPU - передача данных в звуковой процессор
  • 0x1F8010Dx DMA5/PIO - обмен данными через параллельный порт
  • 0x1F8010Ex DMA6/OTC - специальный программный канал, не связанный с физическим устройством; используется для быстрой очистки таблицы упорядочивания.

Регистры DMA

  • 0x1F8010F0 DPCR - контрольный регистр
  • 0x1F8010F4 DICR - регистр прерываний
dma.1792687984.txt.gz · Последнее изменение: — gecko

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki