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

    

Маршрутизация цифрового звука в процессоре iMX6

Ввиду молчания в другом разделе спрошу здесь.

 

Имеется процессор семейства iMX6 к которому на один из портов SAI будет подключен цифровой звук GSM-модема в формате PCM по шине I2S и на второй порт SAI будет подключен аудио-кодек, также в формате PCM по I2S (предположительно W681310).

Есть задача передавать звук с GSM на аудио-кодек и обратно через процессором с обработкой и записью звука им (схоже с п. 3.3 AN2628). В AN2628 для п.п. 3.3 и 3.5 описание идет для SSI-устройств с управлением тайм-слотами, а PCM это просто поток.

Собственно вопрос: эта задача вообще реализуема, с учетом того что GSM-модем и кодек работают с звуком в формате PCM?

 

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


Ссылка на сообщение
Поделиться на другие сайты
Собственно вопрос: эта задача вообще реализуема, с учетом того что GSM-модем и кодек работают с звуком в формате PCM?

 

А в чем проблема-то? Быстродействия проца более чем достаточно, есть каналы ДМА, осталось только прогу писать :biggrin:

Изменено пользователем mantech

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


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

Ну это то все понятно что и быстродействия вагон и DMA есть.

Разобью на вопросы:

Как правильно будет настроить AUDMUX?

Можно одновременно скоммутировать 2 внешних порта на 2 внутренних (например "Peripheral Port 1" (SAI1) коммутировать на "Host Port 1", а "Peripheral Port 2" (SAI2) коммутировать на "Host Port 2")?

Или настраивать в режиме "Internal Network Mode" п. 3.5 AN2628? В данном режиме идет управление по тайм-слотам, PCM-устройства же не будут адекватно работать, или я не прав?

Или придется просто по очереди "подключать" разные PCM устройства к внутреннему порту процессора (например "Host Port 1") и надеяться что FIFO у внешних портов хватит?

 

Вообще мне кажется оптимальным первый вариант с одновременной коммутацией, но возможен ли он мне непонятно. В аппноуте либо примеры одного подключения точка-точка либо режим сети, но для SSI-устройств.

 

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


Ссылка на сообщение
Поделиться на другие сайты
Ну это то все понятно что и быстродействия вагон и DMA есть.

Разобью на вопросы:

Как правильно будет настроить AUDMUX?

Можно одновременно скоммутировать 2 внешних порта на 2 внутренних (например "Peripheral Port 1" (SAI1) коммутировать на "Host Port 1", а "Peripheral Port 2" (SAI2) коммутировать на "Host Port 2")?

Или настраивать в режиме "Internal Network Mode" п. 3.5 AN2628? В данном режиме идет управление по тайм-слотам, PCM-устройства же не будут адекватно работать, или я не прав?

Или придется просто по очереди "подключать" разные PCM устройства к внутреннему порту процессора (например "Host Port 1") и надеяться что FIFO у внешних портов хватит?

 

Вообще мне кажется оптимальным первый вариант с одновременной коммутацией, но возможен ли он мне непонятно. В аппноуте либо примеры одного подключения точка-точка либо режим сети, но для SSI-устройств.

с sai основная проблема откуда вы сигнал frame sync возьмете

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


Ссылка на сообщение
Поделиться на другие сайты
Можно одновременно скоммутировать 2 внешних порта на 2 внутренних (например "Peripheral Port 1" (SAI1) коммутировать на "Host Port 1", а "Peripheral Port 2" (SAI2) коммутировать на "Host Port 2")?

 

Не разбирался в тонкостях аудиопорта в этом камне, но "Есть задача передавать звук с GSM на аудио-кодек и обратно через процессором с обработкой и записью звука" разве это не подразумевает ввод звука, обработку полученного процом и вывод звука в другой порт. Зачем тогда всякие транзиты и коммутации? Просто настройка 2х портов, одного на ввод, другого на вывод, или как?

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


Ссылка на сообщение
Поделиться на другие сайты
с sai основная проблема откуда вы сигнал frame sync возьмете

Не понял в чем проблема. Я не смогу выдавать FS с процессора на два порта сразу? Поясните если можно.

 

Не разбирался в тонкостях аудиопорта в этом камне, но "Есть задача передавать звук с GSM на аудио-кодек и обратно через процессором с обработкой и записью звука" разве это не подразумевает ввод звука, обработку полученного процом и вывод звука в другой порт. Зачем тогда всякие транзиты и коммутации? Просто настройка 2х портов, одного на ввод, другого на вывод, или как?

Ну вот структура AUDMUX (правда для i.MX21, но сути не меняет).

AUDMUX.jpg

AN2628_Programming_Audio_Applications_in_the.pdf

Для моего применения звук так и так надо будет перекидывать с внешнего порта AUDMUX на внутренний и обратно.

 

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация