dma
Это старая версия документа!
Содержание
DMA
DMA (Direct Memory Access) - контроллер, позволяющий периферийным устройствам обмениваться данными с системной памятью напрямую, без прямого участия CPU. Процессор лишь настраивает регистры DMA, после чего контроллер забирает управление шиной. Это позволяет осуществлять асинхронный ввод/вывод, освобождая процессор для других задач, что особенно важно для программ реального времени.
Примеры использования DMA:
- Загрузка данных в видеопамять и отправка пакетов GPU
- Загрузка данных в память SPU
- Чтение с CD-ROM
Каналы 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
