Перейти к содержанию
    

MCASP + EDMA + многоканальность

Добрый день.

 

Моя ситуация такова: есть плата с DSP Ti c6747. В DSP заходит 3 аудио входа и выходит один аудиовыход. Все каналы заведены на разные передатчики (serializers) MCASP. Однако, насколько я понял, MCASP генерит только два прерывания для EDMA, одно на прием и одно на передачу. Возможно ли настроить EDMA таким образом, чтобы обеспечить одновременные трансферы по 4 MCASP каналам? И как этим дирижировать? Может быть вообще не стоит связываться с EDMA?

 

Буду очень признателен за помощь.

 

P.S. Вот мой вопрос на форуме TI :

https://e2e.ti.com/support/dsp/tms320c6000_...1699526#1699526

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 аудио входа и выходит один аудиовыход. Все каналы заведены на разные передатчики (serializers) MCASP.

там всего ТРИ McASP! А по вашим словам выходит ЧЕТЫРЕ. Что-то у Вас не так

 

Возможно ли настроить EDMA таким образом, чтобы обеспечить одновременные трансферы по 4 MCASP каналам

У этого DSP 32+8 каналов DMA. Что Вам мешает использовать ШЕСТЬ отдельных каналов для ТРЕХ McASP ( (прием+передача) * 3 = 6)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Моя ситуация такова: есть плата с DSP Ti c6747. В DSP заходит 3 аудио входа и выходит один аудиовыход. Все каналы заведены на разные передатчики (serializers) MCASP. Однако, насколько я понял, MCASP генерит только два прерывания для EDMA, одно на прием и одно на передачу. Возможно ли настроить EDMA таким образом, чтобы обеспечить одновременные трансферы по 4 MCASP каналам? И как этим дирижировать? Может быть вообще не стоит связываться с EDMA?

Я уже давно работал с McASP (OMAP-L137), тонкостей всех не помню, но у меня как раз такая-же ситуация как у Вас и была:

3 сериализатора McASP1 использовал для ввода с 3-х АЦП и один сериализатор этого-же McASP1 - для вывода на аудио-ЦАП. Работало всё как раз через EDMA в непрерывном режиме (DMA-передача связным закольцованным списком).

Там вроде ничего особо сложного, при приёме чтение идёт из MCASP[1].DATA.DATA_PORT, в котором данные от отдельных сериализаторов чередуются по порядку номеров сериализаторов.

Для вывода на передающий сериализатор - другой канал EDMA (тоже через MCASP[1].DATA.DATA_PORT). Итого нужно два EDMA-канала.

В даташите это всё хорошо описано.

 

там всего ТРИ McASP! А по вашим словам выходит ЧЕТЫРЕ. Что-то у Вас не так

ТС пишет о разных сериализаторах одного McASP, а не о разных McASP.

Прочитайте что такое McASP. Они обычно имеют более одного сериализатора.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, jcxz, направление совершенно правильное. Действительно есть у McASP еще так называемый DMA порт, в котором можно последовательно читать/писать значения всех активных сериализаторов-приемников/передатчиков.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...