des00 25 27 октября, 2009 Опубликовано 27 октября, 2009 · Жалоба Добрый день! Появилась у меня вот такая бредовая идея: есть опорный генератор на 96МГц и АЦП на 100MSp. Желаемая частота для обработки составляет 179.2МГц (8sps). Хочу нарезать поток на 96МГц (4.286sps) и сделать ресамплер на основе интерполятора Farrow и на нем изменить частоту дискретизации до 8sps (частоты получены с одного PLL). По идее ничего сложного. Начал с примера отсюда, но в этом примере изменение частоты дискретизации производиться в оффлайне. Попробывал сделать этот пример в матлабе, при работе в онлайне (в аттаче). Суть метода вот в чем, временную расстройку между генераторами 20/24 получаю собрав NCO на 24КГц и отсчитывая на нем 20КГц (расстройки совпадают один в один с теми, что получаются в си файле примера). Затем беру фарроу, запускаю линии задержки на 20КГц, а сам полином считаю на 24КГц. Но получается бред какой-то. Такое ощущение что либо матлаб неправильно переносит данные между доменами 20/24 КГц, либо метод, который я использую, не подходит для работы онлайн. Вопрос собственно простой : можно ли сделать дробный ресамплер, на основе интерполятора, работающий онлайн (т.е. без промежуточного буфера) ? Если да то как правильно это делать? Спасибо. third_order_farrow_resample_r14.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 27 октября, 2009 Опубликовано 27 октября, 2009 · Жалоба отвечаю сам себе, на лету, без буфера не получиться. в моем случае кратность частот 15/28, небольшой буфер поставить таки придеться. Тему можно прикрывать %) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться