|
Data-aided timing |
|
|
|
Sep 21 2011, 19:59
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Data-aided (DA) вроде бы еще иногда называют Minimum Mean-Square-Error timing recovery scheme.
Как я понял, в основе лежит перебор фазы такта и выбор фазы, при которой разница между принятым и известным (опорным) минимальна. Далее у меня непонятки. Для того что бы сравнивать, я должен быть уверен, что принятый фрагмент содержит опорный сигнал, т.е. должна быть выполнена некоторая предварительная синхронизация (по началу пакета, фрейма, ...). Но если смотреть синхронизацию (по началу пакета, фрейма, ...), то вроде бы предварительно должна быть выполнена тактовая, т.е. получается замкнутый круг. Как вообще правильно работает DA?
|
|
|
|
|
Sep 21 2011, 20:41
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Alex65111 @ Sep 21 2011, 22:59)  Data-aided (DA) вроде бы еще иногда называют Minimum Mean-Square-Error timing recovery scheme.
Как я понял, в основе лежит перебор фазы такта и выбор фазы, при которой разница между принятым и известным (опорным) минимальна. Далее у меня непонятки. Для того что бы сравнивать, я должен быть уверен, что принятый фрагмент содержит опорный сигнал, т.е. должна быть выполнена некоторая предварительная синхронизация (по началу пакета, фрейма, ...). Но если смотреть синхронизацию (по началу пакета, фрейма, ...), то вроде бы предварительно должна быть выполнена тактовая, т.е. получается замкнутый круг. Как вообще правильно работает DA? Так можно сначала коррелятором по известной преамбуле найти начало пакета, выделить его (пакет), тактовая в этом случае не нужна. Затем по полученной ВКФ рассчитать начальную расстройку по фазе тактов и затем "довернуть" фазу на длине всего пакета с помощью того же полифазного фильтра.
Сообщение отредактировал Serg76 - Sep 21 2011, 20:42
|
|
|
|
|
Sep 21 2011, 20:54
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(Serg76 @ Sep 22 2011, 00:41)  Так можно сначала коррелятором по известной преамбуле найти начало пакета, выделить его (пакет), тактовая в этом случае не нужна. Затем по полученной ВКФ рассчитать начальную расстройку по фазе тактов и затем "довернуть" фазу на длине всего пакета с помощью того же полифазного фильтра. Так для нахождения ВКФ предварительной тактовой синхронизации не надо разве?
|
|
|
|
|
Sep 21 2011, 21:46
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(Serg76 @ Sep 22 2011, 01:36)  да нет, и так все отлично обнаруживалось. я делал так: основным ресамплером преобразовывал сигнал к двойной символьной скорости (2 отсчета на тактовый интервал), затем коррелятором обнаруживал преамбулу, выделял пакет, ну т.д. как писал выше, т.е. вся обработка на двойной символьной. А несущую перед коррелятором не надо в ноль выставлять? И еще, насколлько необходимо опорный сигнал коррелятора прогонять через тот же сгаживающий фильтр, что и принимаемый?
Сообщение отредактировал Alex65111 - Sep 21 2011, 21:50
|
|
|
|
|
Sep 21 2011, 21:55
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Alex65111 @ Sep 22 2011, 00:46)  А несущую перед коррелятором не надо в ноль выставлять? перед ресамплером сношу в ноль несущую. но небольшая расстройка может присутствовать, все будет зависеть от длины преамбулы и дополнительного набега фазы, вызванного расстройкой по несущей. Цитата(Alex65111 @ Sep 22 2011, 00:46)  И еще, насколлько необходимо опорный сигнал коррелятора прогонять через тот же сгаживающий фильтр, что и принимаемый? А зачем, ничего не надо прогонять. главное, чтобы у вас спектральная маска основного фильтра демодулятора была согласована с формирующим фильтром в модуляторе. Обычно это приподнятый косинус или корень квадратный от него с соответствующим к-ом сглаживания (roll-off)
Сообщение отредактировал Serg76 - Sep 21 2011, 22:02
|
|
|
|
|
Sep 21 2011, 22:03
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Итого по первой части. Чтоб применять подход DA необходимо в начале выполнить снесение в ноль, чего например не надо при Gardnere (а в ряде случаев, например, в КВ несущую без предварительного тактирования на зацепить), и выполнить пакетную, фреймовую синхронизацию и только потом уже фазироваться по информации.
И еще что непонятно. Как я писал в начале, у меня сложилось впечетление, что по известным символам фазу такта ищут иттерационно по минимуму ошибки, а Вы предлагаете не итерационно, а простым вычислением угла опорного и прнятого сигналов. Это эквивалентно?
|
|
|
|
|
Sep 21 2011, 22:16
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Alex65111 @ Sep 22 2011, 01:03)  Итого по первой части. Чтоб применять подход DA необходимо в начале выполнить снесение в ноль, чего например не надо при Gardnere (а в ряде случаев, например, в КВ несущую без предварительного тактирования на зацепить), и выполнить пакетную, фреймовую синхронизацию и только потом уже фазироваться по информации. Вот с оценкой расстройки по несущей (НЕ фазы) в пакетном режиме действительно беда, особенно в каналах со слабой энергетикой и при малой длине преамбулы и самого фрейма. Фазу по самой несущей можно оценить также по найденной ВКФ. Цитата(Alex65111 @ Sep 22 2011, 01:03)  И еще что непонятно. Как я писал в начале, у меня сложилось впечетление, что по известным символам фазу такта ищут иттерационно по минимуму ошибки, а Вы предлагаете не итерационно, а простым вычислением угла опорного и прнятого сигналов. Это эквивалентно? Ну конечное решение я думаю будет эквивалентно.
Сообщение отредактировал Serg76 - Sep 21 2011, 22:27
|
|
|
|
|
Sep 22 2011, 07:52
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(des00 @ Sep 22 2011, 06:47)  хмм, гарднер не требует снесения в 0 и работы в домене 2sps (отчета на символ) ? Если учесть что он работает по переходам (по частотам в районе Fверхнее спектра), то как то сомнительно ваше заявление ЗЫ. BPSK преамбулу можно и некогерентно выцепить, при относительно длинных преамбулах даже при слабой энергетике находится с высокой достоверностью. Во многих источниках в том или ином виде встречается Gardner’s algorithm locks the timing recovery loop regardless of carrier frequency offset recovery, thus the GA is insensitive to carrier signal synchronization. И все таки что то не пойму по преамбуле. Предположим преамбула 1-1 1 -1. Я ее при двух отсчетах на символ как должен задавать 1 1 -1-1 1 1 -1-1 или 1 0 -1 0 1 0 -1 0? А принимаемый сигнал (с выхода согласованного фильтра) при невыставленной фазе такта будет иметь значения, например, 0.1 0.9 -0.1 -0.9 0.1 0.9 -0.1 -0.9. А с учетом несфазированности несущей, МСИ вообще абракодабра будет. И что корреляция срастется?
|
|
|
|
|
Sep 22 2011, 08:36
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(Alex65111 @ Sep 22 2011, 02:52)  Во многих источниках в том или ином виде встречается Gardner’s algorithm locks the timing recovery loop regardless of carrier frequency offset recovery, thus the GA is insensitive to carrier signal synchronization. Ну, ну, вот дать ему расстройку по частоте в половину спектра, посмотрим что он на восстанавливает.... Вот что пишет про это сам автор : Цитата It is desirable that the timing loop be capable of acquiring lock without depending upon prior lock of the carrier loop. In this section we show that the proposed algorithm of (1) provides the same timing-error information irrespective of carrier phase. Therefore, timing can be established prior to carrier phase lock. он действительно не чувствителен к ошибкам петли по несушке, но нечувствителен к ошибке по фазе несущей, но не по ее расстройке. Поэтому многие источники мягко говоря недоговаривают. Цитата И все таки что то не пойму по преамбуле. Предположим преамбула 1-1 1 -1. Я ее при двух отсчетах на символ как должен задавать 1 1 -1-1 1 1 -1-1 или 1 0 -1 0 1 0 -1 0? А принимаемый сигнал (с выхода согласованного фильтра) при невыставленной фазе такта будет иметь значения, например, 0.1 0.9 -0.1 -0.9 0.1 0.9 -0.1 -0.9. А с учетом несфазированности несущей, МСИ вообще абракодабра будет. И что корреляция срастется? правильная корреляция срастается, но 3 символа это слишком мало %)
--------------------
|
|
|
|
|
Sep 22 2011, 20:52
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(Serg76 @ Sep 22 2011, 00:41)  Затем по полученной ВКФ рассчитать начальную расстройку по фазе тактов и затем "довернуть" фазу на длине всего пакета с помощью того же полифазного фильтра. op=[1 1 -1 -1 1 1 -1 -1]; Опорный сигнал-преамбула, 2 отсчета на символ Принятый сигнал 2 отсчета на символ (сигнал с выхода СФ в виде треугольника) s1=[0.5 0.5 -0.5 -0.5 0.5 0.5 -0.5 -0.5]; вариант начальной фазировки 1 s2=[0.1 0.9 -0.1 -0.9 0.1 0.9 -0.1 -0.9]; вариант начальной фазировки 2 sum(op.*s1)=4 sum(op.*s2)=4 Т.е. при разных исходных фазировках принятого сигнала, корреляция показывает одно и тоже значение как по полученной ВКФ рассчитать начальную расстройку по фазе тактов?
|
|
|
|
|
Sep 23 2011, 05:42
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(Serg76 @ Sep 23 2011, 08:15)  Разница амплитуд в первых боковых лепестках ВКФ и будет эквивалентна начальной фазе по тактам. Хм, во-первых, что бы у ВКФ преамбулы были боковые лепестки, то преамбула должна быть что из серии периодической. Если преамбула периодическая (или по другим причинам есть относительно хорошо видимые боковые лепестки у ВКФ), тогда она не совсем здорово будет работать при определении с достаточной точностью начала пакета/фрейма. И если работаем по отношению амплитуд то там при неастрономических сигнал/щум можно много чего наизмерять. Да и если обратиться к современным размерам преамбул, которые вообще пытаются минимизировать 10-40 символов, то что то я в этой методике недопонимаю.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|