И в продолжение... офигеть оно работает)))
Работает ПЛЛ-ка-синронизатор, берет плавающий синус и его устаканивает не просто вот так более-менее стабильно, она его дотягивает до стабильности, пригодной для когерентного сэмплирования!))
Правда конвертирует широкополосный амплитудный шум в фазовый, т.к. нет фильтра несущей у детектора фазы.
Сам фазовый детектор работает в итоге с оверсэмплингом х4 фиром, затем бинарным поиском нахожу ближайшие токи к пересечению нуля (еще х256 эффективного оверсэмплинга), и в конце интерполирую линейно) точность перехода весьма приятная, хз как оно поведет себя в присутствии НЧ дрифта (нужно бы проверить).
Картинки))
Без ПЛЛки, много ФШ
ПЛЛка включена, не когерентно
Включена еще и когерентность, выключена оконная функция. Только юбка дрожит, нужно думать чего ей мешает)
Без ФШ, с ПЛЛкой и когерентностью
ну и ПЛЛка сильно облегчает жизнь синхронному аверейджингу. Ресемплер работает незаметно, все утыкается в 32F FTT-шку, наверное пора бы ее проапгрейдить, бо 160дБ SFDR процессинга как-то мало, хотя с дизерингом сигналом наверняка будет лучше.
В итоге получилось сделать когерентность как предложили в начале темы, но блин через задний проход и ваще пофиг какая там частота, ген, клок... хоть свисти в микрофон, всеравно получится 1КГц)))
Не, ну не совсем, а только для синусов, но уже приятно. Для полноценной когерентности (вместе с которой можно делать всякие прикольные штучки с генераторо-синтезаторами) всеравно придется использовать один и тот-же клок-домейн... хотя... могу дать тонкую подстройку ASRC, если клоки гена и АЦПшки стабильны относительно друг-друга, то работать будет безпроблем. Например мне удалось голый синус, с когерентной 48-ой сетке частот сгенерировать на 44.1, ресемплуть до 48 и получить шумовую полку в -300дБ)) (почти полное совпадение будто я его не ресемплил а генерил в 48к). Благодать))
Ы, ~30-60дБ подавление ФШ на 0.1..10Гц отстройках)
Работает ПЛЛ-ка-синронизатор, берет плавающий синус и его устаканивает не просто вот так более-менее стабильно, она его дотягивает до стабильности, пригодной для когерентного сэмплирования!))
Правда конвертирует широкополосный амплитудный шум в фазовый, т.к. нет фильтра несущей у детектора фазы.
Сам фазовый детектор работает в итоге с оверсэмплингом х4 фиром, затем бинарным поиском нахожу ближайшие токи к пересечению нуля (еще х256 эффективного оверсэмплинга), и в конце интерполирую линейно) точность перехода весьма приятная, хз как оно поведет себя в присутствии НЧ дрифта (нужно бы проверить).
Картинки))
Без ПЛЛки, много ФШ
ПЛЛка включена, не когерентно
Включена еще и когерентность, выключена оконная функция. Только юбка дрожит, нужно думать чего ей мешает)
Без ФШ, с ПЛЛкой и когерентностью
ну и ПЛЛка сильно облегчает жизнь синхронному аверейджингу. Ресемплер работает незаметно, все утыкается в 32F FTT-шку, наверное пора бы ее проапгрейдить, бо 160дБ SFDR процессинга как-то мало, хотя с дизерингом сигналом наверняка будет лучше.
В итоге получилось сделать когерентность как предложили в начале темы, но блин через задний проход и ваще пофиг какая там частота, ген, клок... хоть свисти в микрофон, всеравно получится 1КГц)))
Не, ну не совсем, а только для синусов, но уже приятно. Для полноценной когерентности (вместе с которой можно делать всякие прикольные штучки с генераторо-синтезаторами) всеравно придется использовать один и тот-же клок-домейн... хотя... могу дать тонкую подстройку ASRC, если клоки гена и АЦПшки стабильны относительно друг-друга, то работать будет безпроблем. Например мне удалось голый синус, с когерентной 48-ой сетке частот сгенерировать на 44.1, ресемплуть до 48 и получить шумовую полку в -300дБ)) (почти полное совпадение будто я его не ресемплил а генерил в 48к). Благодать))
Ы, ~30-60дБ подавление ФШ на 0.1..10Гц отстройках)
Аминь.