[an error occurred while processing this directive]
Какой процессор?
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено AntZ 25 сентября 2004 г. 06:07
В ответ на: DMA + McBSP отправлено Juri 24 сентября 2004 г. 17:32

1) Оптимальный вариант с точки зрения расхода памяти - два буфера,
один заполняется DMA другой обрабатывается, потом меняются. В схеме из трех буферов один обычно "отдыхает", если памяти море - не проблема, но выгоды по сравнению с двумя буферами я не вижу.

2) Если самплы следуют очень быстро, то могут возникнуть проблемы рестартануть DMA в промежутке между самплами. Я использую автоматический перезапуск DMA трансфера, следующий DMA трансфер программируется еще до того как закончился предыдущий. Это на 55xx, на 54xx используется более убогая схема с ABU или один буффер с прерыванием на середине и конце блока (эдакие "виртуальные" два буфера).

Я использую API с четырьмя основными вызовами
ADC_Start() - стартануть получение буферов от ADC
ADC_GetBuffer() - запросить полный буфер от ADC, если есть
ADC_PutBuffer() - вернуть обработанный буфер драйверу ADC
ADC_Stop() - остановить ADC

У меня самплы шли со скоростью 1,562,000-2,048,000 SPS
с ADC который висел McBPS. Опыт у меня в этом деле богатый, раза три переделывал пока наконец не вышел драйвер ADC который мне самому нравится, спрашивайте - помогу.



Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru