Перейти к содержанию
    

структура модема при 8psk

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

 

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

ссори.

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

краткое описание типов сигнала в таблице TABLE C-III. Burst waveform characteristics. ст.284. разумеется, наибольший интерес вызывает BW2...

Изменено пользователем Виктор39

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ссори.

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

краткое описание типов сигнала в таблице TABLE C-III. Burst waveform characteristics. ст.284.

 

Есть быстрое преобразование Уолша-Адамара.

 

разумеется, наибольший интерес вызывает BW2...

 

Этот документ видели?

http://www.radioscanner.ru/files/download/...stanag_4285.pdf

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть быстрое преобразование Уолша-Адамара.

спасибо. буду копать в эту сторону.

Этот документ видели?

http://www.radioscanner.ru/files/download/...stanag_4285.pdf

спасибо за документ. я его впервые вижу. только он полезной информации практически никакой не дал. в документе описывается стандарт, когда передаваемые данные, действительно, делятся на кадры по 48 символов (32 неизвестных/16 известных). только вот в отличие от моего стандарта, где данные могу таким образом передаваться достаточно большой промежуток времени (FIGURE C-9. ст. 303 в доке MIL_STD_188_141B), в данном документе рассматривается случай, когда через каждые 4 кадра передается синхронизирующая последовательность состоящая из 80 символов. конечно, 80 символов им вполне достаточно, чтобы обучать эквалайзер снова и снова. как быть в случае, когда нет этих 80-ти символьных известных последовательностей, а только 16-ти символьные.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

спасибо. буду копать в эту сторону.

 

спасибо за документ. я его впервые вижу. только он полезной информации практически никакой не дал. в документе описывается стандарт, когда передаваемые данные, действительно, делятся на кадры по 48 символов (32 неизвестных/16 известных). только вот в отличие от моего стандарта, где данные могу таким образом передаваться достаточно большой промежуток времени (FIGURE C-9. ст. 303 в доке MIL_STD_188_141B), в данном документе рассматривается случай, когда через каждые 4 кадра передается синхронизирующая последовательность состоящая из 80 символов. конечно, 80 символов им вполне достаточно, чтобы обучать эквалайзер снова и снова. как быть в случае, когда нет этих 80-ти символьных известных последовательностей, а только 16-ти символьные.

 

16 символов недостаточно для коррекции. У Вас очень узкая полоса для такой скорости передачи данных (я так понимаю 1200*3=3600). Из-за это предыдущее фазовое состояние влияет на следующее. Нужно иметь перебор парных состояний фазы. Это где-то 70... 80 символов.

 

По минимуму надо иметь пары переходов дающие артефакты в виде выхода сигнала за полосу при мгновенной фазовой коммутации. Это сочетания символов состоящие из +90, -90, +45, -45 и 0 градусов (любое после любого).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

только он полезной информации практически никакой не дал.

 

То есть SECOND EXAMPLE OF DEMODULATION TECHNICUE вы уже сделали?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть SECOND EXAMPLE OF DEMODULATION TECHNICUE вы уже сделали?

 

Спасибо за этот документ. Теперь стало понятно что и как... Какой город? Пиво пьете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть SECOND EXAMPLE OF DEMODULATION TECHNICUE вы уже сделали?

не заметил сразу. прочитал в начале FIRST EXAMPLE OF DEMODULATION TECHNICUE и подумал, что нет ничего нового под солнцем.

после прочтения у меня остались некоторые вопросы по алгоритму. основная система уравнений, которую предстоит решать ?(W2^HW2)B = [W2^H(R-W1A)]

где ?R - принятые дынные (т.е. они известны);

?A - известные передаваемые данные;

?B - неизвестные данные, которые предстоит найти;

?W1 и ?W2 - канальные веса.

Не понятно, откуда брать значения ?W1 и ?W2 и каким образом их разделить на две части, две матрицы? в начальный момент я их могу рассчитать по преамбуле, с помощью адаптивного фильтра, а дальше как быть? в алгоритме описывается, что они каким-то образом должны обновляться, но не понятно каким.

 

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

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

не заметил сразу. прочитал в начале FIRST EXAMPLE OF DEMODULATION TECHNICUE и подумал, что нет ничего нового под солнцем.

после прочтения у меня остались некоторые вопросы по алгоритму. основная система уравнений, которую предстоит решать ?(W2^HW2)B = [W2^H(R-W1A)]

где ?R - принятые дынные (т.е. они известны);

?A - известные передаваемые данные;

?B - неизвестные данные, которые предстоит найти;

?W1 и ?W2 - канальные веса.

Не понятно, откуда брать значения ?W1 и ?W2 и каким образом их разделить на две части, две матрицы? в начальный момент я их могу рассчитать по преамбуле, с помощью адаптивного фильтра, а дальше как быть? в алгоритме описывается, что они каким-то образом должны обновляться, но не понятно каким.

 

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

Я так понимаю это т.н. DDA, или NDDA.

http://www.docshut.com/ktrtih/data-directe...-hf-modems.html

W2 это матрица свертки сделанная из ИХ каналa. А вот что такое W1?...

p.s. почему-то статья на радиосканере недоступна.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

после прочтения у меня остались некоторые вопросы по алгоритму.

 

http://www.freepatentsonline.com/4365338.pdf

 

Вообще пробегитесь по патентам, иногда там стоящие вещи можно найти.

 

 

p.s. почему-то статья на радиосканере недоступна.

 

http://www.n2ckh.com/MARS_ALE_FORUM/s4285.PDF

 

Ещё

 

http://www.google.com/patents/?vid=USPAT67...&output=pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

http://www.freepatentsonline.com/4365338.pdf

Вообще пробегитесь по патентам, иногда там стоящие вещи можно найти.

 

Весьма занятная статья. Дополнительный обработчик (считай коррелятор) выделяет известные последовательности и по ним обучает основной обработчик. А патентов с непрерывным самообучением Вам не попадалось?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

добрый день.

могли бы вы мне подсказать, что в данном алгоритме не так?! почему-то не работает... спасибо.

вот, что я делаю:

1) принимаю очередных 48 символов R, 32 неизвестных B и 16 известных A2.

 

2) по формуле Bestim = inv(W2^H*W2)*(W2^H(R-W1*A)) вычисляю 32 неизвестных значений(Bestim), где H - комплексно-сопряженное транспонирование; A - вектор состоящий из известных данных(A1) предыдущего кадра и текущего (A2)

 

3) рассчитываю ошибку, для обновления коэффициентов входного фильтра (weight), для этого от вектора принятых 48 символов R, отнимаю вектор состоящий из 32 оцененных значений(Bestim) и 16 известных(A2): errors = R - [bestim A2];

 

4) суммирую элементы вектора ошибок, и усредняю.

E = sum(errors )/length(errors );

 

5) обновляю весовые коэффициенты(weight) фильтра с учетом заранее подобраного коэффициента усиления К, который определяет скорость обновления коэффициентов. делаю это следующим образом:

weight = weight + K*E;

 

6)далее принимаю решение относительно первого оцененного значения неизвестных данных, т.е. выбираю его как ближайшее значение Bestim(1) к одной из 8 -ми точек 8psk созвездия

 

7) алгоритм повторяю (пункт 2 - 6) уже для 31 -ого неизвестного данного., и так пока не станет неизвестных данных.

 

вопросы:

а) в чем ошибка данного алгоритма? он не работает правильно.

б) может быть входной сигнал реально нужно пропускать через входной фильтр с коэффициентами weight, т.е. принимаемый сигнал R брать как свертку weight с входными данными? вот этот я момент не понял. нужен ли этот фильтр, либо все фильтрация и исправление происходит в формуле Bestim = inv(W2^H*W2)*(W2^H(R-W1*A))?

в) как мне знать в начальный момент весовые коэффициенты weight ? нужно какое-то обучение? либо по нескольким кадрам с помощью уравнения weight = weight + K*E эти коэффициенты подбираются?

 

спасибо

вот я быстро код набросал для данного алгоритма, чтобы можно было посмотреть, как все работает.

data_directed_equalizer.rar

Изменено пользователем Виктор39

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5) обновляю весовые коэффициенты(weight) фильтра с учетом заранее подобраного коэффициента усиления К, который определяет скорость обновления коэффициентов. делаю это следующим образом:

weight = weight + K*E;

 

 

Кажется здесь ошибка. Должно быть что-то вроде weight = weight + K * E .* conj ( R ) ;

Т.е если у нас идеальные веса weight то ошибка ортогональна принятым данным R и подстройка

weight не происходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кажется здесь ошибка. Должно быть что-то вроде weight = weight + K * E .* conj ( R ) ;

Т.е если у нас идеальные веса weight то ошибка ортогональна принятым данным R и подстройка

weight не происходит.

 

только вот не понятно. у меня вектор весов weight состоит из 17 коэффициентов. вектор принятых данных R из 48 символов. каким образом я смогу к 17-ти разрядному вектору прибавить 48-ми разрядный?!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

только вот не понятно. у меня вектор весов weight состоит из 17 коэффициентов. вектор принятых данных R из 48 символов. каким образом я смогу к 17-ти разрядному вектору прибавить 48-ми разрядный?!

Ну очевидно тут блочная разновидность LMS алгоритма имеет место быть.

 

Обычный LMS см. формула 1

http://www.arpapress.com/Volumes/Vol7Issue...RRAS_7_1_05.pdf

 

Блочная версия - это тоже самое , только произведение e( n ) * x( n ) усредняется в течении

блока и веса обновляются один раз на блок. x - вектор размером равный размеру весом, e - скаляр.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...