реклама на сайте
подробности

 
 
> Beek algoritm
Ivan55
сообщение Apr 11 2016, 17:52
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Есть вопрос к знатокам

Кто нибудь находил более эффективные методы синхронизации по циклическому префиксу, чем ML алгоритм?

Заранее спасибо
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KalashKS
сообщение Apr 12 2016, 09:04
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 236
Регистрация: 7-02-11
Пользователь №: 62 755



Смотря что считать эффективностью. Можно попрововать упростить реализацию.
В исходном варианте алгоритм требует знания ОСШ. Его мы, как правило, на этапе синхронизации знать не будем. Интересны два варианта: принять его равным бесконечности или нулю. В первом случае энергия сигнала входит в расчет метрики с единичным весом, во втором - с нулевым, то есть остается только коррелятор. Коррелятор сам по себе оказывется проще, но дает плохую точность временной синхронизации из-за непостоянства мощности сигнала, которая искажает форму корреляционного пика. Спастись от этого можно либо учетом измеренной энергии (в варианте с бесконечным ОСШ), либо применением знакового коррелятора, но только для временной синхронизации. Для частотной знаковый коррелятор неприменим.
Go to the top of the page
 
+Quote Post
Ivan55
сообщение Apr 12 2016, 09:40
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Цитата(KalashKS @ Apr 12 2016, 13:04) *
Смотря что считать эффективностью. Можно попрововать упростить реализацию.


Спасибо за ответ!
я считаю под эффективностью дисперсию оценки. Рассмотрел различные варианты: модуль разности циклического префикса (СP) и его копии, квадрат разности модулей СP и его комплексно сопряженной копии, а также корреляцию и алгоритм Beek

Beek дает хороший результат, но придумали его 20 лет назад! разве более эффективного(с точки зрения точности или вычислительных затрат) за 20 лет ничего не появилось? Или эта проблема исчерпала себя и ушли в использование тренировочных последовательностей и пилотов для синхры
Go to the top of the page
 
+Quote Post
andyp
сообщение Apr 12 2016, 11:16
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ Apr 12 2016, 12:40) *
Beek дает хороший результат, но придумали его 20 лет назад! разве более эффективного(с точки зрения точности или вычислительных затрат) за 20 лет ничего не появилось? Или эта проблема исчерпала себя и ушли в использование тренировочных последовательностей и пилотов для синхры



Еще один 20-ти летний алгоритм, основанный на автокорреляции, который можно рассмотреть - метрика Schmidl-Cox:
Robust frequency and timing synchronization for OFDM
http://ieeexplore.ieee.org/xpl/articleDeta...arnumber=650240

Я ее использовал для быстрого грубого детектирования наличия сигнала.

Методы Van De Beek до сих пор продолжают развивать трудолюбивые корейцы:
http://ieeexplore.ieee.org/xpl/abstractCit...mp;navigation=1

Например, одна их относительно свежих (2008) статей
http://ieeexplore.ieee.org/xpl/articleDeta...rnumber=4678083

Сообщение отредактировал andyp - Apr 12 2016, 14:03
Go to the top of the page
 
+Quote Post
Ivan55
сообщение Apr 13 2016, 16:31
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



andyp, спасибо за полезную информацию, кстати возник вопрос тоже рассматривал алгоритм SCA но ее метрика имеет неудобную форму, как вы по ней определяли начало полезной части символа? знаю что берут производную от метрики и там где идет плоская область производная близка к нулю, но при наличии шумов АБГШ там появляются искажения... как вы определяли? Буду благодарен за помощь в этом вопросе

Сообщение отредактировал Ivan55 - Apr 13 2016, 16:32
Go to the top of the page
 
+Quote Post
andyp
сообщение Apr 13 2016, 18:45
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ Apr 13 2016, 19:31) *
andyp, спасибо за полезную информацию, кстати возник вопрос тоже рассматривал алгоритм SCA но ее метрика имеет неудобную форму, как вы по ней определяли начало полезной части символа? знаю что берут производную от метрики и там где идет плоская область производная близка к нулю, но при наличии шумов АБГШ там появляются искажения... как вы определяли? Буду благодарен за помощь в этом вопросе


Я этот обнаружитель несколько не по прямому назначению использовал wink.gif - использовал с него грубую оценку частотного сдвига и собственно сам факт детекции периодического в моем случае сигнала. После него делал частотную коррекцию и искал известную преамбулу обычным согласованным фильтром вокруг позиции, найденной SCА.
Плюсы этого подхода
-Робастность SCA к многолучевости канала
-Это позволило сузить область неопределенности и вычислительные затраты при поиске.
-Улучшило статистику на выходе СФ, так как грубая оценка частотного сдвига у меня была до поиска СФ.
-Метрика SC не зависит от мощности сигнала на входе, что тоже удобно.

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

PS Кстати, анализ показывает, что метрика Van De Beek примерно также плоха, как и SCA в случае, если мощность принимаемого сигнала постоянна - в обоих случаях задача сводится к поиску максимума модуля корреляции двух повторяющихся кусков сигнала.

Сообщение отредактировал andyp - Apr 13 2016, 18:57
Go to the top of the page
 
+Quote Post
Ivan55
сообщение May 5 2016, 05:37
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Всем доброго дня!
Нашел одну интересную статью Прикрепленный файл  wen2008__1_.pdf ( 710.07 килобайт ) Кол-во скачиваний: 115

результат впечатляет, осталось тока понять что они делалиsm.gif кто может помочь?
попытался реализовать не получилось, смысл понял так что они делят символ на блоки по 16 отсчетов
и эти блоки коррелируют формула (7). Может в формуле чего то нехватает, например непонятно что за m=1,2,...
и в знаменателе второй корень почемуто без +N
Go to the top of the page
 
+Quote Post
andyp
сообщение May 5 2016, 08:38
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ May 5 2016, 08:37) *
Всем доброго дня!
Нашел одну интересную статью Прикрепленный файл  wen2008__1_.pdf ( 710.07 килобайт ) Кол-во скачиваний: 115

результат впечатляет, осталось тока понять что они делалиsm.gif кто может помочь?
попытался реализовать не получилось, смысл понял так что они делят символ на блоки по 16 отсчетов
и эти блоки коррелируют формула (7). Может в формуле чего то нехватает, например непонятно что за m=1,2,...
и в знаменателе второй корень почемуто без +N


Под корнем автор N похоже забыл. С помощью m=1,2,... автор попытался математическим языком выразить, сколько блочных корреляционных коэффициентов у него получается. Ну т.е. если разбить область его область поиска на блоки размером B (пусть N, L делится на B нацело), то у него всего (2N+L)/B блоков. Автор коррелирует блок с номером m с блоком с номером m+N/B. Итого у него получится (N+L)/B корр. коэффициентов.
Go to the top of the page
 
+Quote Post
Ivan55
сообщение May 5 2016, 09:09
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Цитата(andyp @ May 5 2016, 12:38) *
Под корнем автор N похоже забыл. С помощью m=1,2,... автор попытался математическим языком выразить, сколько блочных корреляционных коэффициентов у него получается. Ну т.е. если разбить область его область поиска на блоки размером B (пусть N, L делится на B нацело), то у него всего (2N+L)/B блоков. Автор коррелирует блок с номером m с блоком с номером m+N/B. Итого у него получится (N+L)/B корр. коэффициентов.

Ну вот смотрите я тут накидал код
Код
clear all; close all; clc;

%% Параметры модели
B = 16;
Nfft = 1024; Ng = Nfft/4; Nofdm = Ng+Nfft; % Параметры OFDM сигнала
nCar = 312;
Nbps = 4; M = 2^Nbps;
Nsym = 30;                % Колличество генерируемых OFDM символов
H_QAM4=modem.qammod('M',M,'PhaseOffset', 0, 'SymbolOrder',...
    'binary', 'InputType', 'bit');
Es = 1; A = (3/2/(M-1)*Es);

%% Формируем N символов OFDM сигнала
tx = [];

fft_in = complex(zeros(Nfft,Nsym),zeros(Nfft,Nsym));
QAM = zeros(Nsym,nCar);
In_Data = randi([0 1],Nsym,nCar*log2(M));
QAM = A*modulate(H_QAM4, In_Data');
fft_in(1:nCar/2,:) = QAM(1:nCar/2,:);
fft_in(end-nCar/2+1:end,:) = QAM(nCar/2+1:end,:);
fft_out = ifft(fft_in);
tx = [fft_out(end-Ng+1:end,:); fft_out]';
tx = reshape(tx', 1, Nsym*Nofdm);


sig=awgn(tx, 20, 'measured', 'dB');
BuffObserv = zeros(1, 2*Nfft+Ng);

buff1 = zeros(1,length(sig)-Nofdm);
P = [];
for num = 1:floor(length(sig)/(2*Nfft+Ng))
    BuffObserv = sig(1, (num-1)*(2*Nfft+Ng)+1:num*(2*Nfft+Ng));
    
    for d = 0:(Nfft+Ng)/B-1
        corr(d+1) = sum(BuffObserv(d*B+(1:B)).*conj(BuffObserv(d*B+(1:B)+Nfft)));
        energ(d+1) = sqrt(sum(abs(BuffObserv(d*B+(1:B)).^2))).*sqrt(sum(abs(BuffObserv(d*B+(1:B)+Nfft).^2)));
    end
    P = [P abs(corr./energ)];
    
end

plot(abs(P));

Правильно ли я реализовал то о чем там говорится?
Go to the top of the page
 
+Quote Post
andyp
сообщение May 5 2016, 09:19
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ May 5 2016, 12:09) *
Правильно ли я реализовал то о чем там говорится?


Да вроде похоже на правду - короткие (длиной в guard) места с высокой корреляцией, а между ними мусор.
Go to the top of the page
 
+Quote Post
Ivan55
сообщение May 5 2016, 09:30
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Цитата(andyp @ May 5 2016, 13:19) *
Да вроде похоже на правду - короткие (длиной в guard) места с высокой корреляцией, а между ними мусор.


тогда есть несколько вопросов:
1. почему через каждые три идет широкий пик?
2. как определять начало символьного интервала?

Сообщение отредактировал Ivan55 - May 5 2016, 09:34
Go to the top of the page
 
+Quote Post
andyp
сообщение May 5 2016, 09:48
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ May 5 2016, 12:30) *
тогда есть несколько вопросов:
1. почему через каждые три идет широкий пик?
2. как определять начало символьного интервала?



1. Видимо, надо блоки (те что Observation Interval называются) с перекрытием Nfft брать.
2. Сравнивать с порогом если охота с точностью до длины блока, ну или по нескольким блокам усреднять, как авторы советуют, а потом сравнивать с порогом.
Go to the top of the page
 
+Quote Post
Ivan55
сообщение May 5 2016, 11:16
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Цитата(andyp @ May 5 2016, 13:48) *
2. Сравнивать с порогом если охота с точностью до длины блока, ну или по нескольким блокам усреднять, как авторы советуют, а потом сравнивать с порогом.

т.е. точность оценки будет равна длинне блока? если блок равен 16 то с точностью 16 отсчетов?
Go to the top of the page
 
+Quote Post
andyp
сообщение May 5 2016, 11:36
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ May 5 2016, 14:16) *
т.е. точность оценки будет равна длинне блока? если блок равен 16 то с точностью 16 отсчетов?


Так в статье написано. Между блоками оценок корреляции нет.
Go to the top of the page
 
+Quote Post
Ivan55
сообщение May 5 2016, 11:41
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



Цитата(andyp @ May 5 2016, 15:36) *
Так в статье написано. Между блоками оценок корреляции нет.

хм... странно, к чему тогда рисунок 6 в статье?
Go to the top of the page
 
+Quote Post
andyp
сообщение May 5 2016, 11:52
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163



Цитата(Ivan55 @ May 5 2016, 14:41) *
хм... странно, к чему тогда рисунок 6 в статье?


Понятия не имею. Оценка корреляции получается одна на блок B. О том, где закоррелировало можно судить с точностью до плюс-минус B/2.

PS Картинка от работы скрипта в приложении.

Сообщение отредактировал andyp - May 5 2016, 11:54
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Ivan55   Beek algoritm   Apr 11 2016, 17:52
- - KalashKS   Аннотация в последней ссылке напомнила, что при ра...   Apr 13 2016, 13:22
- - serjj   Если нетрудно, киньте пару графиков, которые строи...   May 5 2016, 11:46
|- - Ivan55   Цитата(serjj @ May 5 2016, 15:46) Если не...   May 5 2016, 12:27
|- - Ivan55   Есть у кого какие идеи?   May 10 2016, 03:24
|- - Ivan55   как оценить SNR для расчета метрики Beek?   Nov 30 2016, 09:18
- - KalashKS   Большого смысла оценивать ОСШ нет, кроме того алго...   Dec 1 2016, 10:45
|- - Ivan55   Цитата(KalashKS @ Dec 1 2016, 13:45) Боль...   Dec 1 2016, 12:08
|- - KalashKS   Реализованный алгоритм следит за частотой, а не за...   Dec 1 2016, 12:32
||- - Ivan55   Цитата(KalashKS @ Dec 1 2016, 15:32) Реал...   Dec 1 2016, 12:43
||- - KalashKS   Да. Главное, чтобы колебания фазы на интервале оце...   Dec 1 2016, 12:52
||- - Ivan55   Цитата(KalashKS @ Dec 1 2016, 15:52) Да. ...   Dec 1 2016, 12:56
||- - KalashKS   Цитата(Ivan55 @ Dec 1 2016, 15:56) это ск...   Dec 1 2016, 13:05
||- - Ivan55   Цитата(KalashKS @ Dec 1 2016, 16:05) Наст...   Dec 1 2016, 13:09
||- - petrov   Цитата(Ivan55 @ Dec 1 2016, 16:09) у меня...   Dec 1 2016, 13:56
|- - quato_a   Цитата(Ivan55 @ Dec 1 2016, 15:08) Резуль...   Dec 3 2016, 06:28
|- - Ivan55   Цитата(quato_a @ Dec 3 2016, 09:28) Чем м...   Dec 5 2016, 08:26
|- - quato_a   Цитата(Ivan55 @ Dec 5 2016, 11:26) Длин п...   Dec 5 2016, 16:42
|- - Ivan55   Цитата(quato_a @ Dec 5 2016, 20:42) Вот п...   Dec 6 2016, 09:44
|- - quato_a   Цитата(Ivan55 @ Dec 6 2016, 12:44) что за...   Dec 6 2016, 13:44
- - KalashKS   Пилоты для оценивания канала как размещены?   Dec 1 2016, 13:10
|- - Ivan55   Цитата(KalashKS @ Dec 1 2016, 16:10) Пило...   Dec 1 2016, 13:22
- - KalashKS   Если на периоде размещения пилотов фаза не будет у...   Dec 1 2016, 15:30


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 16:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.01553 секунд с 7
ELECTRONIX ©2004-2016