Anton1990 0 13 июня, 2017 Опубликовано 13 июня, 2017 · Жалоба Всем добрый день. Те кто занимался приемом DVB-S2 поясните, пожалуйста, следующий момент: В статьях и рекомендациях есть схема приемника (фреймовая синхронизация). Текущий комплексный отсчет умножается на комплексно-сопряженный следующий отсчет. В результате получаем комплексное число. Далее по схеме отводы сдвигового регистра умножаются на значения SOF 25 бит. И тут вопрос: а как комплексные числа умножаются на биты SOF? Или каждый бит SOF нужно представить комплексным числом? Тогда как это сделать? И далее нужно сложить все 25 комплексных чисел? Или я ошибаюсь и в какой-то момент комплексные числа выраждаются в битовую последовательность? Те кто понял о чем я хочу спросить пожалуйста проясните. Заранее спасибо за ответы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serg76 0 13 июня, 2017 Опубликовано 13 июня, 2017 · Жалоба Используйте для синхронизации согласованный фильтр, ИХ которого строится на основе SOF последовательности. Для этого надо битовую последовательность SOF преобразовать в эталонную последовательность комплексных отсчетов в соответствии с применяемым манипуляционным кодом, другими словами надо просто промодулировать SOF последовательность по правилам pi/2 BPSK модуляции и тем самым получите эталонную последовательность комплексных отсчетов, она же и является искомой ИХ согласованного фильтра. Далее входную последовательность подаете на этот фильтр и отлавливаете начало фрейма по порогу. Как-то так. P.S. SOF последовательность имеет длину 26 символов (битов) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anton1990 0 13 июня, 2017 Опубликовано 13 июня, 2017 · Жалоба Используйте для синхронизации согласованный фильтр, ИХ которого строится на основе SOF последовательности. Для этого надо битовую последовательность SOF преобразовать в эталонную последовательность комплексных отсчетов в соответствии с применяемым манипуляционным кодом, другими словами надо просто промодулировать SOF последовательность по правилам pi/2 BPSK модуляции и тем самым получите эталонную последовательность комплексных отсчетов, она же и является искомой ИХ согласованного фильтра. Далее входную последовательность подаете на этот фильтр и отлавливаете начало фрейма по порогу. Как-то так. P.S. SOF последовательность имеет длину 26 символов (битов) Интересный подход. То есть я модулирую последовательность SOF тем самым получаю комплексную SOF. которую и сравниваю с принимаемым сигналом? По отдельности с мнимой и действительной составляющей? А нужно ли перед этим принимаемый отсчет сигнала умножать на комплекcно-сопряженный следующий отсчет? (как это приводиться в схемах фреймовой синхр.). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dr.Alex 0 13 июня, 2017 Опубликовано 13 июня, 2017 · Жалоба Всем добрый день. Вы чё-то перепутали. Умножив отсчёт на к.с. самого себя (пусть даже всё это повёрнуто на произвольный угол из-за фазовой неопределённости), вы уничтожили всю инфу о передаваемых битах и получили одинаковые вектора с точностью до шума. Никакой последовательности в этом уже не найти. Интересный подход. Это не подход, а обычное дело: корреляция. которую и сравниваю с принимаемым сигналом? По отдельности с мнимой и действительной составляющей? Не сравниваете, а коррелируете (корреляция комплексная). Не по отдельности, а как раз с к.с. сигналом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serg76 0 13 июня, 2017 Опубликовано 13 июня, 2017 · Жалоба В статьях и рекомендациях есть схема приемника (фреймовая синхронизация). нашел, похоже, эту статью F._W._Sun_Y._Jiang_and_L._N._Lee_Frame_synchronization_and_pilot_structure_for_second_generation_via_satellites.pdf, о которой Вы упоминаете. просмотрел бегло, интересная схема синхронизации, по времени синхронизации получается более "скоростная", но в то же время и более сложная, нежели упомянутая мною, классическая. на досуге надо будет разобраться более детально. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anton1990 0 14 июня, 2017 Опубликовано 14 июня, 2017 · Жалоба Вы чё-то перепутали. Умножив отсчёт на к.с. самого себя (пусть даже всё это повёрнуто на произвольный угол из-за фазовой неопределённости), вы уничтожили всю инфу о передаваемых битах и получили одинаковые вектора с точностью до шума. Никакой последовательности в этом уже не найти. равниваете, а коррелируете (корреляция комплексная). Не по отдельности, а как раз с к.с. сигналом. По схеме умножение происходит текущего отсчета на комплексно-сопряженный следующий отсчет. Ну так покрайней мере нарисовано на схеме. нашел, похоже, эту статью F._W._Sun_Y._Jiang_and_L._N._Lee_Frame_synchronization_and_pilot_structure_for_second_generation_via_satellites.pdf, о которой Вы упоминаете. просмотрел бегло, интересная схема синхронизации, по времени синхронизации получается более "скоростная", но в то же время и более сложная, нежели упомянутая мною, классическая. на досуге надо будет разобраться более детально. Еще раз для закрепления. Я модулирую SOF (26 бит) по правилу pi/2 bpsk тем самым получаю 26 комплексных чисел - это отводы фильтра. Отсчеты сигнала на тактовой частоте подаю на этот фильтр. (все операции умножения и сложения) выполняю в комплексном виде. Когда на выходе фильтра выскачил максимум (модуль комплексного числа), ну или был превышен некий порог считаю началом заголовка фрейма физического уровня. Я все верно понимаю? Следовательно умножение отсчета на комплексно сопряженное значение следующего отсчета (эта операция приведена в статье) не требуется. И еще резонный вопрос: а какую разрядность im и re выбрать. Можно ведь взять вообще один знак: (1+j), (1-j), (-1+j), (-1-j). И вообще схема с использованием фильтра будет ли работать при отстройке по несущей частоте (когда на фазовой плоскости круг)? Ведь именно это наиболее интересно. В противном случае можно просто принимать решения в режиме ФМ4. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masverter 0 14 июня, 2017 Опубликовано 14 июня, 2017 · Жалоба Проделайте действия (умножение комплексно-сопряженного текущего отсчета на предыдущий), описанные в статье, для 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-коррелятора (с учетом инверсии спектра) - наличие/отсутствие пилотов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serg76 0 15 июня, 2017 Опубликовано 15 июня, 2017 · Жалоба Еще раз для закрепления. Я модулирую SOF (26 бит) по правилу pi/2 bpsk тем самым получаю 26 комплексных чисел - это отводы фильтра. Отсчеты сигнала на тактовой частоте подаю на этот фильтр. (все операции умножения и сложения) выполняю в комплексном виде. Когда на выходе фильтра выскачил максимум (модуль комплексного числа), ну или был превышен некий порог считаю началом заголовка фрейма физического уровня. Я все верно понимаю? Да, я имено так и делал, правда обработка у меня ведется на двойной тактовой И еще резонный вопрос: а какую разрядность im и re выбрать. Можно ведь взять вообще один знак: (1+j), (1-j), (-1+j), (-1-j). И вообще схема с использованием фильтра будет ли работать при отстройке по несущей частоте (когда на фазовой плоскости круг)? Ведь именно это наиболее интересно. В противном случае можно просто принимать решения в режиме ФМ4. По рязрядности в данном случае можно ограничится и знаком в эталонной последовательности, в своей модели я использую плавучку. Насчет отстройки: прежде чем Вы начнете запускать коррелятор, все равно придется предварительно оценить начальную отстройку и устранить ее, иначе при значительной начальной отстройке коррелятор не сработает. При принятии решения в режиме ФМ4 вместо ФМ2 будете терять 3 дб в помехоустойчивости, хотя изначально всю обработку PL Header я тоже выполнял в режиме ФМ4))). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anton1990 0 15 июня, 2017 Опубликовано 15 июня, 2017 · Жалоба Проделайте действия (умножение комплексно-сопряженного текущего отсчета на предыдущий), описанные в статье, для 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-коррелятора (с учетом инверсии спектра) - наличие/отсутствие пилотов. Ответ исчерпывающий. Прям руководство к действию. А подскажите приведенная последовательность im это правильная SOF ?, т.е. я могу ее прям и использовать (просто у меня есть подозрение что я неправильно понимаю принцип модуляции pi/2 bpsk), а Вы приводите прям готовый результат. Подводя итог: спасибо всем откликнувшимся, пойду реализовывать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masverter 0 18 июня, 2017 Опубликовано 18 июня, 2017 · Жалоба А подскажите приведенная последовательность im это правильная SOF ?У себя такую использую. Но лучше, конечно, проверить. у меня есть подозрение что я неправильно понимаю принцип модуляции pi/2 bpskИспользуйте указания из стандарта: 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 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anton1990 0 18 июня, 2017 Опубликовано 18 июня, 2017 · Жалоба У себя такую использую. Но лучше, конечно, проверить. Используйте указания из стандарта: 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 я это уже примерно понял и проделал. И я так понял следующие 32 бита (вид модуляции) нужно сначала закодировать ридом-маллера, потом заскремблировать, потом замодулировать, потом умножить на компл.- сопр. след. отсчет. И вот эту полученную последовательность уже искать в принятом сигнале. причем таких вариантов будет 32 для каждого вида модуляции в режиме ACM. Однако, без подсказок до этого дойти как-то сложно, хотя вроде все в стандарте описано. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masverter 0 19 июня, 2017 Опубликовано 19 июня, 2017 · Жалоба причем таких вариантов будет 32 для каждого вида модуляции в режиме ACM.Для задачи определения начала кадра (вид модуляции и скорость кода не определяем) используется то, что в 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 без пилотов, а друг от друга они будут отличаться только тем, что их мнимые значения будут иметь противоположный знак. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anton1990 0 19 июня, 2017 Опубликовано 19 июня, 2017 · Жалоба Для задачи определения начала кадра (вид модуляции и скорость кода не определяем) используется то, что в 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 без пилотов, а друг от друга они будут отличаться только тем, что их мнимые значения будут иметь противоположный знак. Т.е. Вы имеете ввиду что все кодовые комбинации (вид модуляции+скремблер+модуляция+умножение на компл. сопря) будут одинаковыми для одного вида модуляции с различными скоростями кодирования? Ну тогда коррелировать можно не с 32-я комбинациями векторов, а только с 7-ю 32-битными векторами (QPSK, PSK8, APSK16, APSK32, 2 резервных и пустой кадр). Я правильно понял? Просто я еще не написал программу для всего этого. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masverter 0 21 июня, 2017 Опубликовано 21 июня, 2017 · Жалоба Т.е. Вы имеете ввиду что все кодовые комбинации (вид модуляции+скремблер+модуляция+умножение на компл. сопря) будут одинаковыми для одного вида модуляции с различными скоростями кодирования? Ну тогда коррелировать можно не с 32-я комбинациями векторов, а только с 7-ю 32-битными векторами (QPSK, PSK8, APSK16, APSK32, 2 резервных и пустой кадр). Я правильно понял? Просто я еще не написал программу для всего этого.Нет, я имею ввиду, что 32-битные векторы будут одинаковыми для различных видов модуляции и различных скоростей кодирования. Поэтому коррелятором ищется только одна (не 32, и не 7) последовательность. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anton1990 0 21 июня, 2017 Опубликовано 21 июня, 2017 · Жалоба Нет, я имею ввиду, что 32-битные векторы будут одинаковыми для различных видов модуляции и различных скоростей кодирования. Поэтому коррелятором ищется только одна (не 32, и не 7) последовательность. Уже понял. Написал программу которая кодирует ридом-маллера, скремблирует, модулирует, умножает текущий на компл.сопр. следующий отсчет. В итоге получил одинаковую последовательность для всех видов модуляции. Все поддтвердилось. Для определения кода вида модуляции предполагаю следующее: закодировать все виды модуляции кодом рида-маллера, заскремблировать, получить 64 последовательносnb по 64 бита, далее замодулировать PI/2BPSK, получить 64 последовательности из 64-х комплексных чисел. Взять каждый второй отсчет. Это и будут отводы коррелятора для определения PLS. Т.е. параллельно работают 64 коррелятора по 32 комплексных отвода. Там где определяется максимум есть код вида модуляции + пилот. Мои соображения насчет определения PLS верны? И еще: описаная схема довольно громоздка. Может есть какой способ ее сократить о котором я не догадываюсь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться