AlexandrY (21.02.2010 22:18, просмотров: 110) ответил Evgeny_CD на Чет я в ступор впал. Торможу. ARM720: DMA и кеш - как их подружить?
Насколько видел то общепринят другой сценарий использования DMA. Т.е. DMA по сути медленный механизм и мало толка использовать DMA для доставки данных процессору.
Но DMA спасает разработчиков от проблем обмена в реальном времени с периферией с жесткими таймингами.
Это всяческие NAND флеши, SDIO, PCMCIA, CF, PCI, MII, MIPI и т.д.
Т.е. DMA не для того чтобы сделать быстро, а для того чтобы сделать надежно, учитывая всю кривизну с реальным временем у реальных операционок.
И переносит DMA данные в некэшируемую общую память, а уж от туда процессор рассылает данные куда надо.
Кэширование данных вообще процентов на 80 меньше дает прироста производительности чем кэширование кода с одной стороны.
С другой стороны контроллеры DDR нынче имеют собственную буфферизацию, что резко улучшает работу с блочными данными.
Вообщем двойная пересылка DMA->RAM->RAM совсем не такая тормозная как кажется
INDEMSYS