Radioscanner.Ru Radiosignals
Логин  Пароль   Регистрация   
Начало раздела
English version
Versión en Español
Все про SA
Скачать демо
Сигналы
Форум
Поиск
E-mail
Обновление SA до версии 6.1.0.0/1
Модуль анализа OFDM, первая часть
Начало » Руководство пользователя SA
Разместил (Author): SergUA6 6.0
Авторские права © http://www.radioscanner.ru
Текст
Обновление SA до версии 6.1.0.0/1


В версии 6.1.0.0 анонсируется модуль анализа OFDM сигналов.



Прежде чем перейдем к описанию самого модуля и методов работы с ним, нам так или иначе необходимо затронуть основы анализа OFDM. Дело в том, что если, например, модуль Phase plane не является чем то сильно новым и для большинства вещь достаточно понятная по определению. В том или ином виде это присутствует во многих программах и многим знакомо, и принципы которые используются понятны, то анализ OFDM достаточно малоизвестная область и насколько мы в курсе, на текущий момент вообще не представлен ни в одном анализаторе подобного уровня как SA. Необходимость базовых знаний и принципов анализа OFDM обусловлена тем, что некоторые понятия потребуют осмысления и к ним нужно просто привыкнуть, только в этом случае работа в этом модуле будет иметь хоть какой-то смысл.

Рассмотрим в общем виде последовательность символов OFDM. Напомню, что символом в OFDM называют один такт сигнала или отрезок времени в течении которого фаза и амплитуда поднесущих/каналов постоянна и не меняется, у каждого канала разумеется своя. Смена символа происходит с тактовой частой манипуляции. У разных символов, амплитуды и фазы поднесущих/каналов могут, и как правило различаются(зависит от вида модуляции поднесущих), но в пределах символа они постоянны. В OFDM символ, вводят так называемый циклический префикс(CP), просто копируя некоторую часть символа из конца в начало, это решает массу проблем по помехоустойчивости. Схематично это выглядит примерно так.



Изначально, на этапе формирования, OFDM символ состоит только из LU, это "чистый" OFDM символ, и на приеме стоит задача получить именно его. При введении CP получают реальный OFDM символ, тот который физически передается, как нетрудно заметить, реальный символ имеет длительность LS = LU + LG и эта длительность больше исходного символа, что на практике приводит к снижению фактической скорости передачи OFDM от максимально достижимой. Получить из LS требуемый LU в общем случае достаточно просто, нужно из принятой серии отсчетов сигнала просто выбросить первые, в количестве LG, оставшаяся часть отсчетов, в случае точной синхронизации по времени будет содержать только LU.
Все это хорошо, когда точно известны LS и LG, в случае анализа возникает задача в определении и нахождении LS и LG, это очень не простая и в вычислительном отношении крайне емкая проблема. Давайте посмотрим, какие механизмы можно использовать для нахождения и определения величин LS и LG в условиях полной неопределенности по умолчанию, именно так задача и выглядит с точки зрения анализа.
Не секрет, и это очевидно, что LG, в случае точного определения его длинны, точного определения длительности и начала LS, будет иметь однозначную корреляцию с концом LS, так как LG есть копия конца LS. Начнем решать задачу с конца, допустим мы каким-то образом определили величины LS и LG, как теперь определить точное положение LS в исследуемом потоке отсчетов?
Вообще это довольно просто, нужно взять выборку отсчетов длинной LS и вычислить корреляцию отрезка LG с концом отрезка LS, сдвинуть выборку на один отсчет и снова вычислить корреляцию, и сделать это нужно LS количество раз. В результате получим LS количество корреляций, максимальная из которых и будет точной позицией начала LS. Фактически это довольно стандартная задача вычисления корреляции, но специфика конкретных условий приводит к довольно интересным теоретическим и практическим результатам. Можно сказать, что мы ищем корреляционную функцию двух одинаковых прямоугольников, и результат этой функции хорошо известен, это треугольник вершина которого точно показывает момент совпадения этих прямоугольников. Выглядит это примерно так.



Собственно на поисках этого "волшебного треугольника" и основан анализ OFDM. Конечно, если мы будем искать корреляцию в пределах одного символа, шансы обнаружить ее весьма не велики. Причина в том, что даже у идеально синтезированных сигналов, при больших LS и относительно коротких LG, масса ложных выбросов, и сам треугольник выражен не так ярко как хотелось бы. Однако в статистически крупном пространстве, если суммировать корреляцию по нескольким сотням или хотя бы десяткам символов, этот треугольник выражен достаточно ярко и выразительно.

Таким образом, алгоритм анализа OFDM в общей форме может выглядеть следующим образом. Берется достаточно крупная выборка сигнала, в которой должны поместиться несколько сотен или десятков(уже плохой случай) ожидаемых максимальных значений LS, и далее, начиная от какого-то мнимального значения LS последовательно вычисляется корреляция для всех LG этого LS, результат анализируется на предмет "волшебного треугольника" или просто выводится на экран после предварительной грубой оценки. И так для всех значений LS от минимального до максимального. Если сигнал действительно классический OFDM с CP, и минимальное и максимальное значения расчетных LS выбраны правильно, то есть характеристики сигнала попадают в эти границы, то треугольник будет обнаружен. Правда есть одна очень серьезная проблема, вопрос когда? При всей своей теоретической обоснованности и правильности, этот алгоритм в общем случае требует грандиозных вычислений. Достаточно небольшие максимальные длительности LS, например порядка 300-400 при лобовом решении требуют времени от часа и больше, и ситуация усугубляется тем, что зависимость очень нелинейна, и если к примеру максимальная длительность LS = 400 занимает час на анализ, то длительность в 500-600 уже несколько часов, и асимптотически стремится к бесконечности при величинах под 2000-3000. Немного утрировано конечно, но проблема поиска "волшебного треугольника" упирается только во время. В анализе OFDM это самая затратная и плохо оптимизируемая в вычислительном отношении процедура.
Как только найдено LG и позиционировано LS, формально можно считать задачу анализа OFDM выполненой, так как LU = LS - LG, а LU позволяет точно демодулировать символ просто проведя над ним FFT. Так же LS однозначно определяет скорость манипуляции как Fd(частота дискретизации сигнала)/LS, а LU разнос между поднесущими/каналами как Fd/LU, количество каналов определяют по результатам FFT.
Теоретическую часть обновления можно считать законченой, по крайней мере вы знаете на чем основн анализ OFDM, и вид "волшебного треугольника" не будет вызвывать недоумений. :) На самом деле конечно, проблем больше чем может показаться на первый взгляд, и хотя скорость вычислений одна из этих проблем, она далеко не единственная, тем более, что нам удалось поднять ее более чем в 30 раз, и похоже есть еще резерв, мы полагаем можно вырвать еще один порядок, хотя и это не решит проблемы, просто снизит остроту. Тем не менее, уже сейчас, на реальном сигнале DRM программа определяет и находит нужные параметры за время порядка 12 минут при 40 символах в сумме, и за время около 2 минут при 10.





Текущая реализация модуля OFDM в SA, решает только задачи поиска LS и LG. Дело в том, что если мы выложим сразу все, то разобраться в работе модуля будет весьма не просто, особенно человеку не сильно подготовленному, это просто первый шаг в анализе OFDM, который нужно хорошо освоить, так как на этом завязано все остальное и возвращаться к основам мы уже не будем. Даже в таком виде, это чрезвычайно мощный инструмент, по крайней мере то, на что мы потратили месяцы, с его помощью становится понятно за считанные минуты.

Общий вид модуля и описание.



1 - Рабочее окно для графиков и вывода другой информации
2 - Результаты поиска программой подходящих LS и LG
3 - Минимальная тактовая частота на которой заканчивается анализ, только целые числа!
4 - Минимальная тактовая частота пересчитанная в отсчеты, просто для информации
5 - Максимальное количество символов которые могут анализироваться
6 - Максимальная тактовая частота с которой начинается анализ, только целые числа!
7 - Максимальная тактовоая частота пересчитанная в отсчеты, просто для информации
8 - Ход процесса, отображатеся длинна текущего LS анализ которого производится
9 - Запуск/остановка процесса анализа
10 - Количество символов по которым считается корреляция, если меньше 40 то окно 4 будет красным, что говорит о низкой достоверности результатов
11 - Навигация по фрагменту файла, который загружен в модуль при вызове, левое положение начало фрагмента, правое конец
12 - Имя файла фрагмент которого загружен.

С учетом предварительного знакомства с теорией, особых вопросов быть не должно.

Как выглядит работа с модулем?

Выделив интересующий участок OFDM сигнала на спектре, в рабочем окне, вызываете модуль OFDM.

Устанавливаете нижнюю границу ожидаемой частоты манпуляции в окне 3. Если вообще нет предположений, то сразу скажу, что меньше 20 герц встречается крайне редко, но вообще ориентируйтесь на окно 4, количество отсчетов за 1000 грозит длительным временем расчетов, а за 2000 или 3000 шансов дождаться конца вообще у вас нет, не злоупотребляйте, максимум 1200 и то нужно крепко подумать нужно ли оно вам.
Верхняя граница тактовой частоты - окно 6, на время расчета влияет слабо, главное что бы она не оказалось ниже реальной, иначе программа просто не найдет ничего, обычно ставлю 300-400 герц, но зависит от записи конечно.
Выставляете количество символов которые программа будет анализировать одновременно, меньше 10 выставить нельзя, максимально возможное количество отображается в окне 5. Программа контролирует количество символов, и если их меньше 40, то считает это силшком малым для надежной статистики, при этом окно 4 будет красным. На самом деле брать количество символов далеко за 40 так же плохо, время расчетов резко возрастает, а в большинстве случаев и 10 вполне приличные результаты дают, но если есть возможность то лучше брать 40 или около этого. Все!

Нажимаете Go! и если у вас было установлено 1000 отсчетов в LS и более 40 символов, спокойно можно покурить и выпить кофе. Процесс можно прервать в любое время, однако изменить параметр в окне 3 вы не сможете, для этого нужно сбросить все результаты двойным щелчком мыши в окне 3.


Что получается в результате работы программы.

Программа выводит список сочетаний LS и LG, которые могли бы быть по ее мнению интересны аналитику. Критерии отсева довольно мягкие, так как риск пропустить действительно важный момент при жестких условиях существует и мы попадались на этом неоднократно. Обычно, в подавляющем большинстве случаев "волшебный треугольник" обнаруживается довольно легко по внешнему виду и амплитуде, она максимальная. Но иногда, и такие сигналы рано или поздно вам встретятся, треугольников будет несколько и выбор того или иного как единственно верного, окажется весьма не простой задачей.

Выбор той или иной позиции в окне 2, выводит график в окно 1 с текущими для этой позиции тактовой частотой, частотой разноса сетки каналов и амплитудой пика. Сам график нормирован и по виду определить какой из них больше, а какой меньше нельзя.

Перемещение по файлу слайдером, происходит в двух режимах, по отсчетам - если нажимать на указатели слайдера, и по символам если нажимать между самим слайдером и указателями. Двигая за слайдер, вы перемещаетесь случайными шагами.

Как я уже говорил, в дальнейшем мы расширим этот модуль до логического завершения, до получения созвездия отдельного канала, до компенсации неточностей частоты дискретизации и смещения по частоте, до возможно полной автоматизации приведения параметров записи в порядок.

Вообще же по работе с этим модулем, в том виде какой он сейчас, планируется написать статью, так как возможности достаточно широки и часть спорных вопросов обсуждаемых на форуме, можно достаточно легко разрешить с его помощью.


Удачи.
Добавлять комментарии могут только зарегистрированные, активировавшие регистрацию и не ограниченные в доступе участники сайта!
Файл создан: 16 Oct 2009 20:47, посл. исправление: 18 Oct 2009 22:21
© www.radioscanner.ru, 2009-2012; ©miniBB Site Engine | загрузка: 0.017сек.