Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Опишу проблему Как понятно из заголовка пытаюсь сделать символьную синхронизацию для QPSK системы Основываясь на информации из книги "Michael Rice - Digital Communications: A Discrete-Time Approach", символьную синхронизацию делал по принципу: 1) Interpolator - Piecewise структура фильтра Фарроу 2) Timing Error Detector - Детектор Гарднера 3) Loop Filter 4) Interpolation Control - структура "Modulo-1 Counter" В чем проблема ? Проблема в том, что система символьной синхронизации одновременно работает и нет, то есть периодически повторяется следующий процесс: 1) Система находит оптимальный момент выборки (максимального раскрытия глазка) 2) Система теряет оптимальный момент выборки На осциллограмме input и output фильтра Фарроу наблюдается картина как на скриншоте ниже Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Вопрос то в чем? почему не работает? Ну думаю в левом верхнем углу модели у вас буквы не хватет) А если без шуток выкладывайте модель. Может у вас там просто петля не настроена Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Хорошо, я делал это все на версии 20a Для какой версии сохранять? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба 1 час назад, des00 сказал: Вопрос то в чем? почему не работает? Ну думаю в левом верхнем углу модели у вас буквы не хватет) А если без шуток выкладывайте модель. Может у вас там просто петля не настроена Прикрепил модель для 20a и для 18b qpsk_electronix.slx qpsk_electronix_18b.slx Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 (изменено) · Жалоба Выскажу небольшое предположение Возможно вся система работает некорректно по причине того, что используемый детектор Гарднера работает на скорости 2 выборки на символ, а SRRC на модуляторе и демодуляторе выдают 10 выборок на символ Может ли быть в этом проблема или нет, как думаете? 1 час назад, des00 сказал: Вопрос то в чем? почему не работает? Ну думаю в левом верхнем углу модели у вас буквы не хватет) А если без шуток выкладывайте модель. Может у вас там просто петля не настроена Изменено 24 ноября, 2020 пользователем Zalman_ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
petrov 7 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Zalman_ Вот буквально в предыдущей теме ссылка на модельку где все это работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба 4 минуты назад, petrov сказал: Zalman_ Вот буквально в предыдущей теме ссылка на модельку где все это работает. Вопрос, а можете сказать как тема называется или же ссылку дать? Буду очень признателен (над неработающей STS сижу уже не первый день) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
petrov 7 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Zalman_ Прямо под вашей темой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Только что, petrov сказал: Zalman_ Прямо под вашей темой. Большое спасибо Буду разбираться Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба 1 hour ago, Zalman_ said: Большое спасибо Буду разбираться покрутил немного вашу модель. странно. взял заглушил систему синхронизации. включил ручное управление. при прогоне по диапазону созвездие не собирается и вместо квадратрого оно прямоугольное. я бы начал с новой модели, собрал идеальную с ручной синхронизацией, потом уже стал добавлять все остальное. да, посмотите у @petrov в модели, у него проще и нагляднее это место сделано. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 24 ноября, 2020 Опубликовано 24 ноября, 2020 · Жалоба Спасибо за советы, буду ковыряться 1 минуту назад, des00 сказал: покрутил немного вашу модель. странно. взял заглушил систему синхронизации. включил ручное управление. при прогоне по диапазону созвездие не собирается и вместо квадратрого оно прямоугольное. я бы начал с новой модели, собрал идеальную с ручной синхронизацией, потом уже стал добавлять все сотальное. да, посмотите у @petrov в модели, у него проще и нагляднее это место сделано. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 25 ноября, 2020 Опубликовано 25 ноября, 2020 · Жалоба 24.11.2020 в 14:15, petrov сказал: Zalman_ Прямо под вашей темой. Добрый вечер! Копаюсь с Вашей моделью Мне непонятны следующие моменты (я новичок в этой тематике и многих вещей еще не знаю) 1) У Вас модулятор создает 8PSK, затем в канале перед АБГШ стоит downsample (в нем значение 2) и по факту из 8PSK делаете QPSK. Зачем так делать и что это дает? 2) В модуляторе SRRC имеет значение wc = 1/4, а в приемнике стоит wc = 1/2. Понятно, что тот самый блок downsample снизил значение sps в 2 раза и теперь вместо 4 sps у вас 2sps, но зачем так было сделано? Знаю, что SRRC на передающей и приемной стороне должны быть идентичны, но у Вас они различны. Можете объяснить ? 3) Рассматривая систему STS есть - Interpolator, TED, Loop Filter, Interpolation Control. Мне непонятно вот что, что конкретно нужно крутить и менять, чтобы адаптировать систему под свою задачу, то есть если я в лоб выставлю значения 4sps (на обеих SRRC) и уберу блок downsample (чтобы значение sps было неизменным в канале), а также в NCO поменяю значение константы у блока Math Function (операция mod) на 4, то ничего не работает, хотя больше в модели ничего не меняю. Сразу отвечу на вопрос по поводу Loop Filter, в нем я тоже пытался крутить параметры, а результат все равно был отрицательным. Под отрицательным результатом я понимаю следующее. В процессе работы Вашей модели я вижу 4 точки для QPSK, но через время происходит рассинхронизация и эти точки превращаются в мешанину, после чего проходит какой-то интервал времени и вновь эти 4 точки находятся. Я не знаю, что скрывается за этой проблемой, так как не делая свою модель, а используя Вашу как эталон, получаю отрицательный результат даже казалось бы в настолько правильно сделанной модели. Можете объяснить где я ошибаюсь и что не до конца понимаю в этом всем? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
petrov 7 25 ноября, 2020 Опубликовано 25 ноября, 2020 · Жалоба Zalman_ Попробуйте отличия поискать. qpsk_8_sps_fb_sync_2020_11_25.mdl Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 26 ноября, 2020 Опубликовано 26 ноября, 2020 · Жалоба 10 hours ago, Zalman_ said: 2) В модуляторе SRRC имеет значение wc = 1/4, а в приемнике стоит wc = 1/2. Понятно, что тот самый блок downsample снизил значение sps в 2 раза и теперь вместо 4 sps у вас 2sps, но зачем так было сделано? Знаю, что SRRC на передающей и приемной стороне должны быть идентичны, но у Вас они различны. Можете объяснить ? Идентичны должны быть частотные характеристики по скруглению, полосе. А на какой частоте они реализованы дело десятое. Можно сделать передатчик с интерполяцией 100, а приемник 2.5 и это будут согласованные приподнятые косинусы) Quote 3) Рассматривая систему STS есть - Interpolator, TED, Loop Filter, Interpolation Control. Мне непонятно вот что, что конкретно нужно крутить и менять, чтобы адаптировать систему под свою задачу, то есть если я в лоб выставлю значения 4sps (на обеих SRRC) и уберу блок downsample (чтобы значение sps было неизменным в канале), а также в NCO поменяю значение константы у блока Math Function (операция mod) на 4, то ничего не работает, хотя больше в модели ничего не меняю. Детектор гарднера работает только при двух отсчетах на символ. И только при двух. По выходу интерплятора должен быть сигнал децимированный до 2двух отсчетов на символ и сигналы 2sps, 1sps. Сами эти сигналы вырабатываются в NCO. На входе приемного интерплятора может быть любое спс больше двух(пока считайте что это так). Вот исходя из этой парадигмы и проанализируйте будет ли работать та модель если вы просто поменяете константы или ее надо кардинально переделать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zalman_ 0 26 ноября, 2020 Опубликовано 26 ноября, 2020 · Жалоба 3 часа назад, des00 сказал: Идентичны должны быть частотные характеристики по скруглению, полосе. А на какой частоте они реализованы дело десятое. Можно сделать передатчик с интерполяцией 100, а приемник 2.5 и это будут согласованные приподнятые косинусы) Детектор гарднера работает только при двух отсчетах на символ. И только при двух. По выходу интерплятора должен быть сигнал децимированный до 2двух отсчетов на символ и сигналы 2sps, 1sps. Сами эти сигналы вырабатываются в NCO. На входе приемного интерплятора может быть любое спс больше двух(пока считайте что это так). Вот исходя из этой парадигмы и проанализируйте будет ли работать та модель если вы просто поменяете константы или ее надо кардинально переделать. Про SRRC понял, спасибо Да, я заметил, что во всех моделях есть тот самый переход на 2 и 1 sps, однако не понимал, что и где копать То есть по факту тактирование детектора Гарднера и тактирование интерполятора должно быть в одном clock domain, то есть в 2sps. Понятно, что на выходе интерполятора будет 2sps, а вот откуда и зачем нам нужен 1sps? 8 часов назад, petrov сказал: Zalman_ Попробуйте отличия поискать. qpsk_8_sps_fb_sync_2020_11_25.mdl Хорошо, спасибо, буду искать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться