|
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?
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 26)
|
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 символов, то что то я в этой методике недопонимаю.
|
|
|
|
|
Sep 23 2011, 10:07
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Alex65111 @ Sep 23 2011, 08:42)  Хм, во-первых, что бы у ВКФ преамбулы были боковые лепестки, то преамбула должна быть что из серии периодической. Если преамбула периодическая (или по другим причинам есть относительно хорошо видимые боковые лепестки у ВКФ), тогда она не совсем здорово будет работать при определении с достаточной точностью начала пакета/фрейма. И если работаем по отношению амплитуд то там при неастрономических сигнал/щум можно много чего наизмерять. Да и если обратиться к современным размерам преамбул, которые вообще пытаются минимизировать 10-40 символов, то что то я в этой методике недопонимаю. Сдвинуться надо на полтакта вправо-влево от главного максимума, т.е. на один отсчет при 2sps. Цитата(Alex65111 @ Sep 23 2011, 08:42)  И если работаем по отношению амплитуд то там при неастрономических сигнал/щум можно много чего наизмерять. По данному алгоритму чувствительность демодулятора в общем не хуже Eb/No=1 дБ (QPSK) при длине преамбулы 64 бита.
|
|
|
|
|
Sep 23 2011, 18:41
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(Serg76 @ Sep 23 2011, 14:07)  Сдвинуться надо на полтакта вправо-влево от главного максимума, т.е. на один отсчет при 2sps. Так это типо как в Гарднере получается?
|
|
|
|
|
Sep 25 2011, 08:21
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(Serg76 @ Sep 25 2011, 11:37)  Причем здесь Гарднер? Вроде о ВКФ говорим. В чистом виде не причем. Просто у Гарднера при 2х отсчетах на символ на основе трех отсчетов по выходу СФ, который в общем виде имеет вид треугольника расчитывается ошибка по фазе. Здесь же по выходу ВКФ, которая также по общему виду имеет вид треугольника рассчитывается фазовая ошибка, но не по трем точкам, а по двум.
|
|
|
|
|
Sep 26 2011, 17:58
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(petrov @ Sep 25 2011, 23:42)  для АБГШ канала нужно просто положение максимума найти. Имеется ввиду что, для АБГШ только максимум нашли, сфазировались, получили либо мягкое решение, либо жесткое, далее коды и т.д., а для многолучевого нашли максимум, сфазировались, эквалайзер и т.д. или при многолучевом канале при определении фазы такта для правильной фазы недостаточно найти максимум?
|
|
|
|
|
Sep 26 2011, 18:23
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Alex65111 @ Sep 26 2011, 21:58)  Имеется ввиду что, для АБГШ только максимум нашли, сфазировались... да Цитата(Alex65111 @ Sep 26 2011, 21:58)  а для многолучевого нашли максимум, сфазировались, эквалайзер и т.д. или при многолучевом канале при определении фазы такта для правильной фазы недостаточно найти максимум? Для многолучёвого точно определять максимум бессмысленно, их несколько может быть, какая-то произвольная ИХ канала, тут синхронизацию лучей делает эквалайзер.
|
|
|
|
|
Sep 26 2011, 18:45
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(petrov @ Sep 26 2011, 22:23)  Для многолучёвого точно определять максимум бессмысленно, их несколько может быть, какая-то произвольная ИХ канала, тут синхронизацию лучей делает эквалайзер. Если много лучей, то синхронизацию по фазе такта не сделать, должен работать эквалайзер, но для работы эквалайзера требуется предварительно затактироваться, а правильно затактироваться мы не можем, потому что максимум не один, замкнутый круг? Или при многолучевом канале делается двойной такт без фазировки (как получится), потом идем с двойным тактом на эквалайзер и окончательное тактирования уже после отработки эквалайзера? Но с другой стороны часто пишут про то, что делают тактирование один сэмпл на символ и затем эквалайзер, но если я не могу правильно выставитть отсчет относительно символа (например, из-за множества максимумов), то что потом будет эквалайзер востанавливать?
Сообщение отредактировал Alex65111 - Sep 26 2011, 18:51
|
|
|
|
|
Sep 27 2011, 17:28
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Alex65111 @ Sep 26 2011, 22:45)  Если много лучей, то синхронизацию по фазе такта не сделать, должен работать эквалайзер, но для работы эквалайзера требуется предварительно затактироваться, а правильно затактироваться мы не можем, потому что максимум не один, замкнутый круг?
Или при многолучевом канале делается двойной такт без фазировки (как получится), потом идем с двойным тактом на эквалайзер и окончательное тактирования уже после отработки эквалайзера? Если многолучёвость не сильная, например имеется прямая видимость и отражённые лучи меньшей мощности, то символьная синхронизация может работать независимо перед эквалайзером, выдавая например 2 отсчёта на символ, последующий дробный эквалайзер компенсирует ошибки символьной синхронизации. При сильной многолучёвости например можно при обнаружении преамбулы запускать символьный генератор с местной частотой, расстройку между генераторами компенсирует дробный эквалайзер, для чего необходимы дополнительные коэффициенты эквалайзера, чтобы он как FIFO не опустошился и не переполнился до конца пакета или следующей синхронизирующей последовательности.
|
|
|
|
|
Sep 29 2011, 08:25
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729

|
Цитата(petrov @ Sep 27 2011, 21:28)  ...дробный эквалайзер... Щас не помню где, но по поводу дробных эквалайзеров. Если у сигнала коэффициент скругления достаточно большой, то соответственно спектр ужее и при двойной тактовой (что необходимо при дробном эквалайзере) возникает достаточно большая неравномерность спектра (что на матерном языке называют eigenvalue spread), что сильно затрудняет работу эквалайзера. Соответственно вопрос, как быть в условиях нехорошей многолучевости (когда вначале тактироваться сложно) и при малых албфа (менее 0.3), когда работа дробного эквалайзера проблематична?
|
|
|
|
|
Sep 29 2011, 09:19
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Alex65111 @ Sep 29 2011, 12:25)  Щас не помню где, но по поводу дробных эквалайзеров. Если у сигнала коэффициент скругления достаточно большой, то соответственно спектр ужее Наоборот коэффициент ската больше - спектр шире. Цитата(Alex65111 @ Sep 29 2011, 12:25)  и при двойной тактовой (что необходимо при дробном эквалайзере) возникает достаточно большая неравномерность спектра (что на матерном языке называют eigenvalue spread), что сильно затрудняет работу эквалайзера. Соответственно вопрос, как быть в условиях нехорошей многолучевости (когда вначале тактироваться сложно) и при малых албфа (менее 0.3), когда работа дробного эквалайзера проблематична? С чего она проблематична то? Если канал такое большое доплеровское расширение спектра даёт, что при больших коэффициентах ската двух отсчётов недостаточно, берите больше, котельникова никто не отменял. При большим разбросе собственных значений например для для обычного LMS вам придётся mu уменьшать для сохранения устойчивости и соответственно скорость сходимости уменьшится, не устраивает, используйте другие более быстрые алгоритмы адаптации и структуры фильтров.
|
|
|
|
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|