Страница 1 из 1

Передискретизация в DSPL

Добавлено: 04 апр 2019, 14:04
kaa
Я немного посмотрел на передискретизацию в DSPL.
Методы, которые используются дают ошибку почти до 10% по амплитуде.
Правильно ли я понимаю, что передискретизация с использованием ФНЧ и вставкой нулей и прореживанием будет точнее при "хороших" фильтрах? А при использование полифазной фильтрации еще и довольно эффективной. Если да, то почему этот вариант не реализован в DSPL, хотя расчет фильтров в ней есть?

Re: Передискретизация в DSPL

Добавлено: 04 апр 2019, 21:17
Бахурин Сергей
да вставка нулей с фильтрацией будет точнее, потому что высоким порядком фильтра можно обеспечить заданный уровень подавления копий спектра и неравномерность по амплитуде. Но это хорошо работает когда надо изменить частоту в P/Q раз когда P и Q относительно небольшие.

Если надо сделать передискретизацию скажем в 1000/1001 раза, то придется делать интерполяцию в 1000 раз и децимацию в 1001 раза. КИХ Фильтры которыми это можно будет сделать будут просто чудовищными. А полиномиальная интерполяция справится с такой задачей легко. Область применения данных ресамплеров это цифровые модемы и системы временной синхронизации, где не требуется большого подавления.

в DSPL не реализовано из-за нехватке времени. Библиотека открытая, можете добавить самостоятельно (КИХ фнч реализован), окажете большую помощь ))). Со своей стороны всю помощь при возникновении вопросов окажу.

Re: Передискретизация в DSPL

Добавлено: 05 апр 2019, 19:15
kaa
Было бы очень здорово попробовать!
Но опыта мало(

Можно в этой теме просить помощи?

Вопрос номер 0
На картинке ошибка компиляции DSPL.
Что-то я сделал не так?
make.png

Re: Передискретизация в DSPL

Добавлено: 06 апр 2019, 08:26
Бахурин Сергей
У вас нормально работает gcc и библиотека собралась. Это хорошая новость.

Но при попытке копирования хидера и dspl.c файла проблема. Надо проверить unix утилиты, в частности команду cp .

Если установлена gnu octave или gnu plot или ещё какая то гну программа, то возможная проблема в том, что мэйк пытается использовать входящую в них cp утилиту и она не работает. Надо установить unxutils и прописать пути к ним в переменной path обязательно до путей гнушных программ, потому что система будет брать утилиту которую найдет первой.

Подробнее
http://ru.dsplib.org/dspl/getting_start ... s_gcc.html

Re: Передискретизация в DSPL

Добавлено: 05 июл 2019, 10:43
kaa
Я потихоньку пытаюсь сделать передискретизацию в DSPL c КИХ фильтрами и полифазной фильтрацией.
Но есть трудности с отладкой без среды. Как вы отлаживаете? Если через gdb, то надо менять make фалы?

Re: Передискретизация в DSPL

Добавлено: 05 июл 2019, 11:04
Бахурин Сергей
Ну это довольно творческий процесс :)
Для начала формирую тестовый сигнал и прлсчитываю все точки в октаве матлабе или питоне. Потом функцию отлаживаю до полного совпадения. Промежуточные данные через printf на печать поточечно.

Это небыстро. Но зато погружает в структуру функции.