Перейти к содержанию
    

masverter

Свой
  • Постов

    73
  • Зарегистрирован

  • Посещение

Весь контент masverter


  1. LMS7002M

    Здравствуйте! Помогите, пожалуйста, с терминами разобраться. Согласно datasheet'у, имеем: 160MHz RF modulation bandwidths (equivalent to 80MHz baseband IQ bandwidth). Имеется ввиду - на каждом канале фильтр с частотой среза 80 МГц? Соответственно, через цифровой интерфейс имеем RF Modulation Bandwidth 96 МГц. Максимальный samplerate также 96 МГц будет? LMS7002M-Data-Sheet-v3.1r00.pdf
  2. Собрал две модели. В первой для восстановления фазы несущей используется пилот-символ, идущий через 31 такт. Во второй известные символы расположены как в сигналах стандарта DVB-S2, т.е. один слот PLHEADER, затем через каждые 16 слотов пилот-вставка из 36 символов. psk8_pilot_phase_sync.mdl apsk16_pilot_phase_sync.mdl Надеюсь, для кого-то модели окажутся полезными. Версия матлаба - R2018a.
  3. Обработанный файл. Сигнал со срывами. Спасибо, обязательно попробую. Да, должно быть лучше. По крайней мере, стоит реализовать и сравнить результаты.
  4. у меня, в принципе, получаются сравнимые с Вами результаты. Для такого сигнал/шума у ФМ8 много ошибок. Конкретно в этом сигнале ФАПЧ не срывается, для сигналов с SNR около 14 дБ и ниже начинает. Именно так. У меня FIR вариант. Вот, например, результат (4-я гармоника и созвездие) демодуляции ФМ4 без петли подавления джиттера (сверху) и с ней (снизу): FIR на 7 тапсов. Уровень боковых гармоник понизился с 12 дБ до 19 дБ. Хотелось бы в simulink'е модель погонять. Можно ли простыми средствами смоделировать подобные искажения?
  5. Подробнее опишу, что меня интересует и что я делаю. Интересует надежный прием широкого диапазона спутниковых сигналов. Встретился сигнал, который я здесь выкладывал, - заинтересовали способы повышения качества его приема. Приведенный сигнал не единственный в своем роде. Встречался, например, и такой. Из собственных (разработанных) средств - аппаратный приемник (фактически - средство оцифровки сигналов без демодуляции) и программный демодулятор. То, что шумит не приемник проверили, оцифровав сигнал качественным сторонним аппаратным средством. Были подозрения на часть приемного тракта от антенны до приемника - также сделали запись, используя другое оборудование - результат аналогичный. Т.е. с большой долей вероятности проблема в передающем тракте. Более широкая полоса, по сравнению с той, что используется у меня по умолчанию, в принципе улучшает ситуацию в плане срывов ФАПЧ, однако битовых ошибок все равно очень много.
  6. Записали альтернативным приемником - результат тот же. Приемник отпадает, а повлиять на то, что происходит раньше, мы не можем. То есть, фактически, имеем сигнал уже с помехой. Можно ли в такой ситуации улучшить качество демодуляции?
  7. Оцифровывали своим устройством. Насчет 50 Гц просто предположение? Спасибо.
  8. При возведении в 8-ю степень проявляются NFFT = 32768; NAVG = 10; nsamples = NFFT*NAVG; fin = fopen('rcv_iq16'); N = nsamples * 2; d = fread(fin, N, 'int16', 0, 'l'); re = d(1:2:N); im = d(2:2:N); x = complex(re,im); fclose(fin); y = zeros(NFFT,1); for i=1:NAVG y = y + abs(fft(x((i-1)*NFFT+1:i*NFFT).^8)); end yout = zeros(NFFT,1); yout(1:NFFT/2) = y(NFFT/2+1:NFFT); yout(NFFT/2+1:NFFT) = y(1:NFFT/2); plot(yout);
  9. Оцифрованный принимаемый сигнал (комплексный, 2 байта на отсчет). Исходных данных до модуляции, к сожалению, нет.
  10. Доброго времени суток! Столкнулся со следующей проблемой. Имеется сигнал ФМ8, отношение сигнал/шум порядка 17 дБ. На 8 гармонике в районе несущей частоты присутствуют довольно сильные помехи: . В итоге на приемной стороне имеем нестабильное удержание несущей: . Можно ли фильтровать подобные помехи и как делать это наиболее эффективным образом? Хотелось бы узнать опыт сообщества по данному вопросу. Заранее спасибо. P.S.: сам пробовал использовать схему из работы cupo1989.pdfВ данной работе адаптивная фильтрация фазового шума выполняется после ФАПЧ, что не позволяет устранить частые "срывы" в самой ФАПЧ.
  11. Смотрите Вашу предыдущую тему Делаете все в точности, как описал Amurak 1. По SOF заголовку определяете начало фрейма и, соответственно, начало PLS фрейма 2. Далее то, что Вы написали: Демодуляция pi/2 BPSK; далее следующие 64 бита дескремблирую; из этих 64-х дискремблированных бит беру каждый второй; эти 32 бита декодирую из кода Рида-Маллера; получаю 5 бит - MODCOD и один бит поля TYPE - этот бит соответствует типу фрейма (short/normal) 3. Еще один бит декодируется мажоритарно из исходных дескремблированных 64-х бит и соответствует наличию/отсутствию пилотов Все, ничего там коррелировать с PLS фреймом не надо. Сам PLS заголовок можно декодировать корреляционно, т.к. код РМ ортогонален Сейчас Вы выполнили пункт 1, только для определения начала фрейма использовали SOF+PLSC. Более того, (т.е. таким образом можно выполнить пункт 3)
  12. Нет, я имею ввиду, что 32-битные векторы будут одинаковыми для различных видов модуляции и различных скоростей кодирования. Поэтому коррелятором ищется только одна (не 32, и не 7) последовательность.
  13. Для задачи определения начала кадра (вид модуляции и скорость кода не определяем) используется то, что в PLSC (z[2i] xor z[2i+1]) = const A very useful property of the code for frame synchronization is that z[2i] xor z[2i+1] is constant for i = 0, 1, ... , 31. <...> Therefore, in the modulated domain, the differential z[2i]z[2i+1] is equal to a constant. Соответственно, вариант будет один. Проделав описанные Вами действия, Вы получаете для каждого вида модуляции/скорости кода последовательности из 64 значений. Исключаете из полученных последовательностей значения под номерами 0,2,4,...30. Убеждаетесь, что последовательности из 32-значений для всех видов модуляции и скорости кода совпадают. Для всех PLSC с пилотом последовательность будет одинаковой, также, как и для PLSC без пилотов, а друг от друга они будут отличаться только тем, что их мнимые значения будут иметь противоположный знак.
  14. У себя такую использую. Но лучше, конечно, проверить. Используйте указания из стандарта: The PLHEADER, represented by the binary sequence (y1, y2,...y90) shall be modulated into 90 π/2BPSK symbols according to the rule: I[2i-1] = Q[2i-1] = (1/√2) (1-2y[2i-1]), I[2i] = - Q[2i] = - (1/√2) (1-2y[2i]) for i = 1, 2, ..., 45
  15. Проделайте действия (умножение комплексно-сопряженного текущего отсчета на предыдущий), описанные в статье, для SOF, модулированного PI/2-BPSK. Получите комплексную последовательность: re = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} im = { 1, 1, 1, 1,-1,-1,-1,-1, 1,-1,-1,-1, 1,-1,-1, 1, 1,-1, 1, 1,-1, 1,-1,-1, 1} Мнимая часть кодирует направления переходов на PI/2 между символами. Эти значения и будут "25 coef. SOF", показанные на рисунке в статье. Проделываете тоже самое (умножение комплексно-сопряженного текущего отсчета на предыдущий) со входным сигналом и коррелятором ищете указанную выше последовательность. Для PLSC делаем аналогично, только берем в качестве коэффициентов половину значений, как указано в статье. В этом случае для всех PLSC с пилотом последовательность будет одинаковой, также, как и для PLSC без пилотов, а друг от друга они будут отличатья только тем, что их мнимые значения будут иметь противоположный знак. Теперь, если Вы определили пик, то, помимо начала кадра, можно определить: по знаку суммы с выхода SOF-коррелятора - наличие/отсутствие инверсии спектра, а по знаку суммы с выхода PLSC-коррелятора (с учетом инверсии спектра) - наличие/отсутствие пилотов.
  16. Точно, скремблированы. Прошу прощения.
  17. Знак XlpI(t) у Вас будет меняться, это влияет на вычисляемое среднее, поэтому совсем не обязательно, что |teta3|=|teta1|.
  18. Думаю, используемой разрядности должно хватить (моделирую на C). Прошелся по схеме в отладке - уровень сигнала на входах и выходах элементов нормальный. ИХ канала не меняется (либо меняется незначительно). По фильтру - измерил rolloff по спектру, выбрал наиболее близкий по стандарту. Эквалайзер symbol spaced. Делал так, чтобы не увеличивать задержку в петлях символьной синхронизации и восстановления несущей (не устраивала меня полоса и скорость захвата петли восстановления несущей частоты). Попробовал fractionaly spaced. Стало лучше (не только визуально, но и по объективным показателям ). Спасибо. Не разъясните подробнее? Не понятно, чем такое решение лучше - ведь в целом потребуется больше кадров, чтобы адаптивный фильтр настроился, чем при подстройке по всему кадру.
  19. Моделирую. В качестве исходных данных использую записи реальных сигналов. Ниже пример выходных созвездий АФМ-32, соответственно, полученных мной и другим демодулятором на одном и том же входном файле. Видно, что шумов у меня больше.
  20. Добрый день! Подскажите, пожалуйста, какой адаптивный эквалайзер будет лучше использовать в приемнике DVB-S2? Использую LMS-эквалайзер с обратной связью по решению и меня не устраивает, как на данный момент принимаются кадры с высокой кратностью модуляции (АФМ-16, АФМ-32). Предполагаю, что использование другого алгоритма может улучшить ситуацию. Вообще, наличие в сигнале кадров с высокой кратностью модуляции влияет на выбор эквалайзера?
  21. Спасибо. Перевел первоначально термин "frequency recovery" как восстановление несущей частоты и не смог понять что к чему.
  22. Поясните, пожалуйста, момент из Незами: Непонятно, почему можно использовать фильтр первого порядка в петле тактовой синхронизации.
  23. Ура, настроил! Большое спасибо. Нужно принять сигнал с конкретного передатчика, не DVB-S2-ного.
×
×
  • Создать...