|
STM32F407 Непонятки с SAI |
|
|
|
 |
Ответов
|
Nov 4 2015, 10:42
|
Участник

Группа: Участник
Сообщений: 15
Регистрация: 13-07-10
Пользователь №: 58 429

|
sgpio в lpc полная порнография, хотя сами процы вполне ничего хоть и не без багов. что касается самого i2s я сам сейчас нахожусь в процессе спрыгивания с lpc4357 в пользу stm32f7xx. и только потому что несмог путью прикрутить плиску к 43хх, в которой как раз похожий многоканальный i2s и реализован. а вот в 32f7хх есть qspi с ddr обменом в обе стороны. sgpio в 43xx полусофтварный и если пользовать его то получается что часть мощности самого проца уходит на вывод данных
|
|
|
|
|
Nov 4 2015, 14:25
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
QUOTE (alexandermas @ Nov 4 2015, 12:42)  sgpio в lpc полная порнография Что значит "полная порнография"? Можно плиз подробнее и более техническими терминами обрисовать ситуацию. QUOTE (alexandermas @ Nov 4 2015, 12:42)  я сам сейчас нахожусь в процессе спрыгивания с lpc4357 в пользу stm32f7xx. и только потому что несмог путью прикрутить плиску к 43хх в которой как раз похожий многоканальный i2s и реализован. Что такое "похожий многоканальный i2s"? В LPC есть I2S и SGPIO. Судя по описанию, на последнем можно делать всевозможные серийные синхронные / асинхронные шины и заниматься ногодрыжеством. Для этого он и задумывался, и как любое универсальное решение обладает избыточностью. У меня руки до него еще не дошли, если у вас есть конкретная информация об отрицательных свойствах этого модуля, поделитесь информацией, это будет всем интересно QUOTE (alexandermas @ Nov 4 2015, 12:42)  sgpio в 43xx полусофтварный и если пользовать его то получается что часть мощности самого проца уходит на вывод данных В чем заключается полусофтварность? Ну и как бы для юсб аудио интерфейса особо то и заниматься нечем. Например взять LPC17. Если бы DMA было бы поумнее ( что то типа 2D) или I2S модуль оптимальнее спроектирован, то весь аудио стрим для некоторых режимов мог бы передаваться без участия CPU.
|
|
|
|
|
Nov 4 2015, 17:02
|
Участник

Группа: Участник
Сообщений: 15
Регистрация: 13-07-10
Пользователь №: 58 429

|
Цитата(ig_z @ Nov 4 2015, 18:25)  Что значит "полная порнография"? Можно плиз подробнее и более техническими терминами обрисовать ситуацию.
Что такое "похожий многоканальный i2s"? В LPC есть I2S и SGPIO. Судя по описанию, на последнем можно делать всевозможные серийные синхронные / асинхронные шины и заниматься ногодрыжеством. Для этого он и задумывался, и как любое универсальное решение обладает избыточностью. У меня руки до него еще не дошли, если у вас есть конкретная информация об отрицательных свойствах этого модуля, поделитесь информацией, это будет всем интересно
В чем заключается полусофтварность? Ну и как бы для юсб аудио интерфейса особо то и заниматься нечем. Например взять LPC17. Если бы DMA было бы поумнее ( что то типа 2D) или I2S модуль оптимальнее спроектирован, то весь аудио стрим для некоторых режимов мог бы передаваться без участия CPU. Начну с конца.... Для юсб аудио, не спорю, заниматься действительно нечем, но вот когда распаковываешь .ape или многоканальный .flac то мегагерцы становятся совсем не лишними. полусофтварность заключается в том что приходится соотв. образом подготавливать буфера для вывода, лить их по дма без участия ядра тоже не выходит (приходится проверять опустошение) это про sgpio. что касается i2s лично мне для моего проекта 2 набортных i2s мало, да и заставить их синхронно работать я не представляю как. С дма (касается lpc43xx, у 17хх вроде все нормально) тоже аппаратный косяк - при работе со связанными списками наблюдается выпадение 1 семпла из каждых 2-3 блоков по 4090 семплов, (тоже не особо удобно, т.к. фреймы в lossless форматов обычно 4096 семплов или больше) при работе на набортный i2s. плюс ко всему если вы делаете действительно высококлассную аудио систему, напомню что сами порты вывода (те к которым посредством матриц подключается встроенная переферия) тактируются совсем не от того клока что сам i2s. поэтому имеем резкое увеличение джиттера как результат(проверено опытным путем). Далее в своих мытарствах решил уйти на плис, подумал что от вышеописаных трудностей уйду... Прицепил плис, на тот момент по spi, все вроде ничего, и играло лучше чем с набортного, но только на 2х каналах, для большего невытянул spi по скорости(максимум выжал 50м/бит). решил повесить плис на EMC а вот тут была действительно засада, изза встроенных неотключаемых буферов на шине emc (даже флаг гады сделали, но нерабочий) если писать по 1 адресу я еще как то мог, то вот последовательное чтение по 1 адресу стабатывало только 1 раз, на второй логика emc считала что данные не изменились и выдавала результат из буфера. сейчас в плис находится 8 однотипных контроллеров которые я могу по своему усмотрению конфигурировать и настраивать выводя некоторые каналы хоть по i2s в разных форматах, хоть по spdif. Обмен с камнем планирую сделать по qspi.
|
|
|
|
Сообщений в этой теме
Tarbal STM32F407 Непонятки с SAI Nov 2 2015, 18:46 Genadi Zawidowski В STM32F407/STM32F405 контроллера SAI нет. совсем.... Nov 2 2015, 18:55 alag57 Цитата(Tarbal @ Nov 2 2015, 23:46) Вроде ... Nov 2 2015, 18:57 Tarbal Спасибо за подсказку. В Юзер Референс Мануал описа... Nov 3 2015, 02:39 ig_z QUOTE (Tarbal @ Nov 3 2015, 04:39) Значит... Nov 3 2015, 13:34  Tarbal Цитата(ig_z @ Nov 3 2015, 17:34) Слегка о... Nov 3 2015, 14:31 Genadi Zawidowski Как раз в DM00037051.pdf даже слова такого нет...
... Nov 3 2015, 08:32 Tarbal Кто-нибудь использовал SAI На STM32F429 или похож... Nov 7 2015, 17:20 Genadi Zawidowski А какие регистры интересуют?
Вот тут https://188.1... Nov 7 2015, 18:21 Tarbal Цитата(Genadi Zawidowski @ Nov 7 2015, 21... Nov 7 2015, 22:40 Genadi Zawidowski Вот подробности:
Вот выдача:
Кодhardware_sai1_... Nov 8 2015, 00:25 Tarbal Спасибо, уже дышит.
Насколько я понял клок не разр... Nov 8 2015, 01:47  Genadi Zawidowski Цитата(Tarbal @ Nov 8 2015, 04:47) Спасиб... Nov 8 2015, 11:10   Tarbal Цитата(Genadi Zawidowski @ Nov 8 2015, 15... Nov 8 2015, 12:48 Genadi Zawidowski Посмотрите как я делаю... первый буфер подставляет... Nov 8 2015, 14:10 Tarbal Цитата(Genadi Zawidowski @ Nov 8 2015, 18... Nov 8 2015, 14:21 Tarbal Добавил старт ПДП (DMA) и все начало работать. Поя... Nov 8 2015, 16:36 Tarbal Наконец дошел до организации потока данных через S... Feb 28 2016, 21:04 Tarbal Решил несколько проблем. Осталась по видимому одна... Mar 1 2016, 12:21 Genadi Zawidowski В stm32f429 нет data cache, который было бы нужно ... Mar 1 2016, 22:26 Tarbal Цитата(Genadi Zawidowski @ Mar 2 2016, 02... Mar 2 2016, 14:53  Tarbal Цитата(Tarbal @ Mar 2 2016, 18:53) Спасиб... Mar 3 2016, 06:05   Genadi Zawidowski Цитата(Tarbal @ Mar 3 2016, 09:05) Не дов... Mar 3 2016, 14:28    Tarbal Цитата(Genadi Zawidowski @ Mar 3 2016, 17... Mar 3 2016, 19:51 Genadi Zawidowski А Вы в референс мануал вообще заглядывали? Mar 3 2016, 19:54 Tarbal Цитата(Genadi Zawidowski @ Mar 3 2016, 22... Mar 3 2016, 19:58 Tarbal Разобрался что происходит, но не было времени разо... Mar 18 2016, 14:35 Allregia Коллеги, просветите по поводу этого SAI - пытаюсь ... Apr 30 2016, 13:43 Genadi Zawidowski Цитата(Allregia @ Apr 30 2016, 16:43) Кол... Apr 30 2016, 17:58 Allregia Версии 2-х месячной давности годятся?
Но вообще, я... Apr 30 2016, 19:47 Genadi Zawidowski Должно быть так:
Код#define SAI_xCR1_MCKDIV ... May 1 2016, 00:48 Allregia Цитата(Genadi Zawidowski @ May 1 2016, 01... May 1 2016, 05:26
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|