Проектирование RRC для QPSK в MATLAB (Filter Designer)
Добавлено: 21 сен 2020, 11:55
Добрый день!
Перед началом работы в этом направлении изучил Вашу статью http://ru.dsplib.org/content/signal_isi/signal_isi.html
После изучения понял, что RRC фильтр необходим и перешел к его реализации с помощью Filter Designer
В общем суть проблемы в следующем
Есть Filter Designer У него есть несколько параметров:
- Specify Order - порядок фильтра (в моем случае 118);
- Window - выбор окна (по умолчанию оставил Kaiser, у которого параметр Beta = 1)
- Fs - частота дискретизации (частота, на которой работает RRC, в моем случае - 1.6 МГц)
- Fc - частота среза (согласно Вашей статье, она должна быть в 2 раза меньше, чем скорость передачи информации Br, то есть в моем случае Br = 50 кбит/с, следовательно Fc = 25 кГц)
- Rolloff - параметр, позволяющий определить ширину полосы перехода. Например, Fc * Rolloff = Bandwidth. (25000 * 0.25 = 6250, то есть полоса перехода будет от 18750 Гц до 31250)
На этом параметры FD заканчиваются
При реализации данного фильтра я получаю следующую ИХ
Так как делаю модулятор QPSK на FPGA, то далее полученный фильтр переводится в Verilog код, компилируется и проходит этап симуляции в ModelSim, скриншот приложил
У меня ранее получалось то, что описано у Вас в статье для случая BPSK сигнала, то есть фильтр имел такой же отклик (синяя полоса на 3 и 4 графике на "Рисунок 15: Поясняющие осциллограммы BPSK модулятора"). Однако параметры этого фильтра я не сохранил, и после этого не могу вновь привести фильтр к виду, показанному на рисунке "Рисунок 15: Поясняющие осциллограммы BPSK модулятора".
Собственно говоря, вопрос - Где ошибся?
На втором рисунке (результате симуляции) видно, что фильтр "подает признаки жизни", однако обратив внимания на последовательность входных импульсов видно, что все же фильтр отрабатывает некорректно Заранее спасибо!
Перед началом работы в этом направлении изучил Вашу статью http://ru.dsplib.org/content/signal_isi/signal_isi.html
После изучения понял, что RRC фильтр необходим и перешел к его реализации с помощью Filter Designer
В общем суть проблемы в следующем
Есть Filter Designer У него есть несколько параметров:
- Specify Order - порядок фильтра (в моем случае 118);
- Window - выбор окна (по умолчанию оставил Kaiser, у которого параметр Beta = 1)
- Fs - частота дискретизации (частота, на которой работает RRC, в моем случае - 1.6 МГц)
- Fc - частота среза (согласно Вашей статье, она должна быть в 2 раза меньше, чем скорость передачи информации Br, то есть в моем случае Br = 50 кбит/с, следовательно Fc = 25 кГц)
- Rolloff - параметр, позволяющий определить ширину полосы перехода. Например, Fc * Rolloff = Bandwidth. (25000 * 0.25 = 6250, то есть полоса перехода будет от 18750 Гц до 31250)
На этом параметры FD заканчиваются
При реализации данного фильтра я получаю следующую ИХ
Так как делаю модулятор QPSK на FPGA, то далее полученный фильтр переводится в Verilog код, компилируется и проходит этап симуляции в ModelSim, скриншот приложил
У меня ранее получалось то, что описано у Вас в статье для случая BPSK сигнала, то есть фильтр имел такой же отклик (синяя полоса на 3 и 4 графике на "Рисунок 15: Поясняющие осциллограммы BPSK модулятора"). Однако параметры этого фильтра я не сохранил, и после этого не могу вновь привести фильтр к виду, показанному на рисунке "Рисунок 15: Поясняющие осциллограммы BPSK модулятора".
Собственно говоря, вопрос - Где ошибся?
На втором рисунке (результате симуляции) видно, что фильтр "подает признаки жизни", однако обратив внимания на последовательность входных импульсов видно, что все же фильтр отрабатывает некорректно Заранее спасибо!