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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Оценка канала в OFDM с использованием Винеровской интерполяции
serg1333
сообщение Jun 30 2013, 07:26
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 30-06-13
Из: Томск
Пользователь №: 77 321



Доброго времени суток!
Есть задача сделать эквалайзер для КВ канала на FPGA. Целевая система - SC-FDMA, соответсвенно предполагается использовать частотный эквалайзер (между большим и малым Фурье преобразованиями). Эквалайзер должен отрабатывать по одному короткому пакету (не более 40 ODFM символов), использование статистики по предыдущим суб-фреймам в общем случае не приветствуется. Для оценки канала используются 8 пилотных поднесущих на 64 поднесущих с данными. На интервале одного суб-фрейма канал считается квазистационарным (состав и мощность лучей не изменяются, но полюс замирания может перемещаться в спектре с некоторой скоростью).

В модели пробовал следующий метод:
- В пилотных позициях оценивается частотная характеристика канала (LS оценка)
- По полученным оценкам делается интерполяция фильтром Винера (64 комплексных фильтра 8 порядка на каждую поднесущую данных соответсвенно)
- Выравнивание OFDM символа с помощью полученных коэффициентов

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

По идее первый вариант должен был дать лучшее качество интерполяции, но я этого не заметил. Для рассчета автокорреляционной матрицы канала (в случае обновляющихся коэффициентов интерполятора) думал использовать первый OFDM символ, состоящий только из пилотов. Далее из этой матрицы строются автокорреляционная матрица и матрица взаимной корреляции, необходимые для рассчета интерполятора. Математика всей этой кухни есть например в Прикрепленный файл  ofdm_channel_estimation_01.pdf ( 241.58 килобайт ) Кол-во скачиваний: 425

Результат моделирования показал, что такая схема работает в случае плоских замираний, и в случае с замираниями до 10-15 дБ вполне удовлетворительно, не приводит к дополнительной деградации созвездия при низком SNR (как это может наблюдаться в случае LS оценки канала по всем поднесущим), НО при частотно-селективных замираниях 15-30 дБ (1-3 полюса) даже при высоких SNR не дает возможность работать на модуляциях выше BPSK.

Вопрос: тем кто сталкивался с Винеровской фильтрацией и OFDM эквалайзерами, в чем тут может быть принципиальная ошибка? Можно в данном случае найти оптимальный фильтр, который позволил бы работать на больших индексах модуляции в канале с частотно-селективными замираниями более 15 дБ? Если у кого уже был опыт борьбы с MMSE эквалайзерами, очень интересует способ оценки автокорреляционной матрицы канала и взаимо-корреляционной матрица, которые требуются для рассчета фильтра Винера. Может кто мог бы поделиться своими изысканиями в этой области rolleyes.gif
Это мой первый опыт построения эквалайзера, буду благодарен вашим советам! rolleyes.gif
Go to the top of the page
 
+Quote Post
petrov
сообщение Jun 30 2013, 09:25
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(serg1333 @ Jun 30 2013, 11:26) *
Есть задача сделать эквалайзер для КВ канала на FPGA.


Зачем FPGA для обработки сигнала с шириной полосы в несколько килогерц?

Цитата(serg1333 @ Jun 30 2013, 11:26) *
На интервале одного суб-фрейма канал считается квазистационарным (состав и мощность лучей не изменяются, но полюс замирания может перемещаться в спектре с некоторой скоростью).


Значит нестационарный.

Цитата(serg1333 @ Jun 30 2013, 11:26) *
Это мой первый опыт построения эквалайзера, буду благодарен вашим советам! rolleyes.gif


Может для начала попроще сделать? Имеем частотно-временную ленту канала, зондируем её пилотами, оцениваем и интерполируем 2D FIR ФНЧ, полосы по частоте и по времени определяются интервалами стационарности канала по частоте и по времени соответственно.

Что касается поднесущих попадающих в спектральные нули, то никакой информации там нет, тут надо не столько канал выравнивать, сколько правильно с помехоустойчивыми кодами работать.

Go to the top of the page
 
+Quote Post
Dr.Alex
сообщение Jun 30 2013, 12:08
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863



Надо же! Кто-то уже делает SC-FDMA. Прикольно.. :-))

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

Если предположить, что "большое" и "малое" Фурье на самом деле равны, то на выходе будет то же, что и на входе, и всё теряет смысл. Если между FFT и IFFT отсчёты как-то переставить, то на выходе конечно будет уже другое, но смысл такого действия не ясен.
Таким образом вроде бы выходит, что должно быть какое-то определённое соответствие между большим и малым Фурье, и определённая перестановка отсчётов/частот между ними. Какие?
Go to the top of the page
 
+Quote Post
serg1333
сообщение Jun 30 2013, 15:48
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 30-06-13
Из: Томск
Пользователь №: 77 321



2 petrov : вариант с проще я себе представляю уже как сделать, есть интерес, пока сроки не поджимают посмотреть как работает MMSE и в чем там выгода. Кстати если уж речь пошла об обычной LS оценке + интерполяция с постоянными коэффициентами: пробовал в канале без шумов, даже зная частотную характеристику канала, при определенном сложении лучей выравнивание далеко от полного. Я себе представлял, что если шума нет, то, беря обратную характеристику канала, всегда можно получить передаваемые символы, т.е. при бесконечном SNR LS оценка является оптимальной и дает минимальную ошибку. Вопрос: возможно ли найти такой фильтр, который бы полностью убирал бы эффект замирания (при условии, что нет шумов, разумеется)? Или есть какое то ограничение исправляющей способности, которое можно убрать только увеличивая базу, на которой производится оценка канала?

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

Спасибо за совет!


2 Dr.Alex : Секрет прост, все дело в том, что на передающем конце используются не все поднесущии большего преобразования Фурье. Например: если база большего Фурье равна 1024, то мы можем использовать 64, 128 или 256 поднесущих, остальные оставив нулями. Таким образом PAPR модулированного сигнала уменьшается (уменьшение тем больше чем больше поднесущих не используется). Таким образом даже в обычной OFDMA схеме есть выигрыш по снижению PAPR. Добавление малого Фурье - это "трюк", который позволяет дополнительно снизить PAPR.

Например, используется соотношение 1024/64. В случае обычного OFDMA это даст выигрыш порядка 3 дБ, т.е. PAPR = 12-3 = 9 дБ, если сделать SC-FDMA, то получим еще около 3 дБ, итого PAPR = 9-3 = 6 дБ. Это если на пальцах rolleyes.gif

Размещать данные на базе большего Фурье можно "кучкой" или распределенно, в чем соль распределенного размещения я не разобрался, если честно. Локализованное размещение вроде бы в LTE up-link применяют. Удачи в ваших начинаниях, там все довольно просто!
Go to the top of the page
 
+Quote Post
Dr.Alex
сообщение Jun 30 2013, 20:59
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863



Цитата(serg1333 @ Jun 30 2013, 18:48) *
2 Dr.Alex : Секрет прост


Окончательно всё запуталось.. :-))
Я-то думал, что от размера Фурье PAPR не зависит, а зависит именно от кол-ва ИСПОЛЬЗУЕМЫХ частот.
Вы же говорите, что (1024/64) будет иметь PAPR ниже, чем (64/64).
Пришлось проверять. Получилось почему-то ровно наоборот! :-//
Чтоб не быть голословным::

Код
1024 (1024 used)    PAPR = 8.75 dB

1024 (64 used)      PAPR = 7.59 dB

1024 (16 used)      PAPR = 6.24 dB

64 (64 used)        PAPR = 6.82 dB

16 (16 used)        PAPR = 5.44 dB


Разница конечно маленькая (а я думал что её вообще не будет), но она не в ту сторону!!
PAPR считал как среднее за 1024 случайных блоков.
(Если в качестве пикового значения выбрать максимальное среди всех блоков, то картинка несколько меняется, но я думаю так делать не стоит.)
Неужто я считаю неправильно?


Цитата(serg1333 @ Jun 30 2013, 18:48) *
Добавление малого Фурье - это "трюк", который позволяет дополнительно снизить PAPR.


Вот! В этом с самого начала и была главная засада в понимании. Ну до этого позже доберёмся. Может быть.
Go to the top of the page
 
+Quote Post
KalashKS
сообщение Jul 1 2013, 08:28
Сообщение #6


Местный
***

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



Цитата(serg1333 @ Jun 30 2013, 11:26) *
По идее первый вариант должен был дать лучшее качество интерполяции, но я этого не заметил. Для рассчета автокорреляционной матрицы канала (в случае обновляющихся коэффициентов интерполятора) думал использовать первый OFDM символ, состоящий только из пилотов. Далее из этой матрицы строются автокорреляционная матрица и матрица взаимной корреляции, необходимые для рассчета интерполятора. Математика всей этой кухни есть например в Прикрепленный файл  ofdm_channel_estimation_01.pdf ( 241.58 килобайт ) Кол-во скачиваний: 425

Результат моделирования показал, что такая схема работает в случае плоских замираний, и в случае с замираниями до 10-15 дБ вполне удовлетворительно, не приводит к дополнительной деградации созвездия при низком SNR (как это может наблюдаться в случае LS оценки канала по всем поднесущим), НО при частотно-селективных замираниях 15-30 дБ (1-3 полюса) даже при высоких SNR не дает возможность работать на модуляциях выше BPSK.

Вопрос: тем кто сталкивался с Винеровской фильтрацией и OFDM эквалайзерами, в чем тут может быть принципиальная ошибка? Можно в данном случае найти оптимальный фильтр, который позволил бы работать на больших индексах модуляции в канале с частотно-селективными замираниями более 15 дБ? Если у кого уже был опыт борьбы с MMSE эквалайзерами, очень интересует способ оценки автокорреляционной матрицы канала и взаимо-корреляционной матрица, которые требуются для рассчета фильтра Винера. Может кто мог бы поделиться своими изысканиями в этой области rolleyes.gif
Это мой первый опыт построения эквалайзера, буду благодарен вашим советам! rolleyes.gif


Посмотрите на обратимость оценки автокорреляционной матрицы. При адаптивной фильтрации она может оказаться вырожденной.
Вообще, так ли нужна адаптивная фильтрация в вашем случае? Насколько несогласованный ФВ проигрывает оптимальному в ОСШ?
Go to the top of the page
 
+Quote Post
serg1333
сообщение Jul 1 2013, 09:03
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 30-06-13
Из: Томск
Пользователь №: 77 321



Матрица обратима, даже кажется доказывалось где-то, что в данном алгоритме сингулярная матрица не получится, но утверждать не буду. По поводу проигрыша несогласованного ФВ: вот этот вопрос меня как раз очень интересует, так как я не уверен, что вообще получил оптимальный фильтр Винера. Возможно я не правильно составляю автокорреляционную матрицу или матрицу взаимной корреляции. Если кто-то делал оценку матрицы канала по известным оценкам частотной характеристики в пилотных точках, было бы интересно узнать как это делается "по науке". Тогда можно было бы провести адекватное сравнение согласованной и несогласованной фильтрации и решить как реализовать это в железе.
Go to the top of the page
 
+Quote Post
KalashKS
сообщение Jul 1 2013, 09:28
Сообщение #8


Местный
***

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



Здесь есть смысл сначала записать автокорреляционную матрицу для всего символа. Ее элементы - значения АКФ канала в частотной области. Пример с АКФ вида sin(x)/x есть в прикрепленной Вами статье. АКМ для пилотных поднесущих получается вычеркиванием строк и столбцов, соответствующих поднесущим с данными. ВКМ - вычеркиванием только столбцов. Если есть усиление пилотов, то ВКМ умножается на коэффициент усиления, а АКМ - на его квадрат.
В теории если фильтр настроен на многолучевой профиль канала, больший чем есть на самом деле, рабочие характеристики будут определяться именно фильтром и практически не будут зависеть от действительного многолучевого профиля. Если же задержка в канале неодоценена, то произойдет радикальное снижение точности оценки.

Сообщение отредактировал KalashKS - Jul 1 2013, 09:28
Go to the top of the page
 
+Quote Post
petrov
сообщение Jul 1 2013, 09:36
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(serg1333 @ Jun 30 2013, 19:48) *
2 petrov : вариант с проще я себе представляю уже как сделать, есть интерес, пока сроки не поджимают посмотреть как работает MMSE и в чем там выгода. Кстати если уж речь пошла об обычной LS оценке + интерполяция с постоянными коэффициентами: пробовал в канале без шумов, даже зная частотную характеристику канала, при определенном сложении лучей выравнивание далеко от полного. Я себе представлял, что если шума нет, то, беря обратную характеристику канала, всегда можно получить передаваемые символы, т.е. при бесконечном SNR LS оценка является оптимальной и дает минимальную ошибку. Вопрос: возможно ли найти такой фильтр, который бы полностью убирал бы эффект замирания (при условии, что нет шумов, разумеется)? Или есть какое то ограничение исправляющей способности, которое можно убрать только увеличивая базу, на которой производится оценка канала?


Как вы будете обращать спектральный ноль? На бесконечность умножать? Вообще не очень понятно вы говорите о OFDM или SC. Для SC потребуется эквалайзер бесконечной длины чтобы полностью спектральный ноль компенсировать, нужно как минимум думать о DFE. Непонятно зачем нужна реализация эквалайзера в частотной области для КВ.
Go to the top of the page
 
+Quote Post
serg1333
сообщение Jul 1 2013, 09:44
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 30-06-13
Из: Томск
Пользователь №: 77 321



Цитата
Здесь есть смысл сначала записать автокорреляционную матрицу для всего символа. Ее элементы - значения АКФ канала в частотной области.

А в случае если пилоты/данные занимают не всю полосу Фурье, как например в случае множественного доступа, матрица включает только канал, определенный на поднесущих данного пользователя? Т.е. например, если Фурье 1024 точки, а нас интересует только 64 поднесущие, то матрица составляется как 1024х1024 или как 64х64? Или это не имеет значения?

Еще интересует такой вопрос: АКФ зависит только от профиля канала, но не зависит от фазы, в которой приходят лучи, т.е. в случае если полюс замирания "перемещается" по спектру в процессе приёма суб-фрейма, то АКФ фактически таже самая?

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


Т.е., если использовать несогласованный ВФ, то его надо выбирать исходя из самого худшего ожидаемого профиля канала? Что-то такое упоминалось в прикрепленной статье и в каком-то другом источнике...
Спасибо за советы!


2petrov :
у меня модем сделан по схеме SC-FDMA, т.е. фактически OFDM, соответственно эквалайзер в частотной области. Согласен, что в спектральных нулях данные теряются, их можно вытянуть только декодированием, либо в случае SC-FDMA попробовать синтерполировать... Речь тут скорее идет об ухудшении выравнивания в окрестностях спектрального нуля. В некоторых случаях при моделировании видел, что выпадает до 8-10 поднесущих из 64.

Сообщение отредактировал serg1333 - Jul 1 2013, 09:48
Go to the top of the page
 
+Quote Post
petrov
сообщение Jul 1 2013, 10:07
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(serg1333 @ Jul 1 2013, 13:44) *
у меня модем сделан по схеме SC-FDMA, т.е. фактически OFDM, соответственно эквалайзер в частотной области. Согласен, что в спектральных нулях данные теряются, их можно вытянуть только декодированием, либо в случае SC-FDMA попробовать синтерполировать... Речь тут скорее идет об ухудшении выравнивания в окрестностях спектрального нуля. В некоторых случаях при моделировании видел, что выпадает до 8-10 поднесущих из 64.


Фактически это SC а не OFDM и не получается у вас элементарный линейный эквалайзер по критерию пикового искажения, начните с азов, глядишь и SC-FDMA не понадобится.
Go to the top of the page
 
+Quote Post
serg1333
сообщение Jul 1 2013, 10:15
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 30-06-13
Из: Томск
Пользователь №: 77 321



Цитата
Фактически это SC а не OFDM и не получается у вас элементарный линейный эквалайзер по критерию пикового искажения


Да нет, это как раз OFDM, SC-FDMA надстройка над OFDMA и почти вся обработка делается в частотной области, как и в OFDM... В SC-FDMA действительно есть возрат к временной области после малого Фурье, но делать TD эквалайзер, когда частотная область предполагается физикой приёма-передачи, не резонно, т.к. он априори сложнее.
Go to the top of the page
 
+Quote Post
KalashKS
сообщение Jul 1 2013, 10:56
Сообщение #13


Местный
***

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



Цитата(serg1333 @ Jul 1 2013, 13:44) *
А в случае если пилоты/данные занимают не всю полосу Фурье, как например в случае множественного доступа, матрица включает только канал, определенный на поднесущих данного пользователя? Т.е. например, если Фурье 1024 точки, а нас интересует только 64 поднесущие, то матрица составляется как 1024х1024 или как 64х64? Или это не имеет значения?

В этом случае вычеркиваете (или сразу не пишете) элементы, соответствующие неиспользуемым несущим.

Цитата(serg1333 @ Jul 1 2013, 13:44) *
Еще интересует такой вопрос: АКФ зависит только от профиля канала, но не зависит от фазы, в которой приходят лучи, т.е. в случае если полюс замирания "перемещается" по спектру в процессе приёма суб-фрейма, то АКФ фактически таже самая?

Цитата(serg1333 @ Jul 1 2013, 13:44) *
Т.е., если использовать несогласованный ВФ, то его надо выбирать исходя из самого худшего ожидаемого профиля канала? Что-то такое упоминалось в прикрепленной статье и в каком-то другом источнике...

Да.
Go to the top of the page
 
+Quote Post
serg1333
сообщение Jul 1 2013, 11:16
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 30-06-13
Из: Томск
Пользователь №: 77 321



Ну теперь вроде бы понятнее rolleyes.gif
В MMSE еще используется такая оценка как дисперсия шума/SNR. Я правильно понимаю, что этот параметр нужен только при решении задачи MMSE оценки (в данном случае оценки канала в пилотных позициях), и не важен в задаче MMSE интерполяции? Потому, как в рассмотренных статьях/книгах в рассчете интерполятора дисперсия шума не присутствует.
Go to the top of the page
 
+Quote Post
KalashKS
сообщение Jul 1 2013, 11:24
Сообщение #15


Местный
***

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



Цитата(serg1333 @ Jul 1 2013, 15:16) *
Ну теперь вроде бы понятнее rolleyes.gif
В MMSE еще используется такая оценка как дисперсия шума/SNR. Я правильно понимаю, что этот параметр нужен только при решении задачи MMSE оценки (в данном случае оценки канала в пилотных позициях), и не важен в задаче MMSE интерполяции? Потому, как в рассмотренных статьях/книгах в рассчете интерполятора дисперсия шума не присутствует.


При MMSE-интерполяции вместо дисперсии шума у Вас будет дисперсия ошибки оценки. В приведенной выше статье, кстати, она в формуле присутствует.
Go to the top of the page
 
+Quote Post

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

 


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


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