Общие вопросы по эквалайзеру CMA


10

Поэтому я недавно внедрил эквалайзер CMA в MATLAB, который использует метод наискорейшего спуска, чтобы приблизиться к минимальной стоимости. (Я на выпивке реализации эквалайзера).

Мои вопросы следующие:

1) Мне кажется, что алгоритм CMA хорош только для каналов, где они относительно «плоские». Другими словами, не ожидается, что он будет работать для каналов с глубокими замираниями / нулями? Это вообще правда?

2) Я использую сигнал BPSK, и мы можем видеть из первого рисунка, что после многолучевых эффектов у меня есть размытие в комплексной плоскости моего сигнала BPSK - нет двух хороших кластеров, как можно было бы ожидать. Вместо этого мы видим 4 красных скопления. Мой вопрос: как получилось, что после эквалайзера CMA у меня все еще есть 4 кластера? (Я покрасил эти синие). Я полагаю, в этом есть какой-то смысл, потому что CMA просто заставляет конверты равняться 1, и не заботится о том, о каком кластере вы говорите. Я слышал, что CMA может страдать от локальных минимумов проблем. Будет ли это примером? (т.е. получить 4 кластера вместо 2, так как это BPSK). Если нет, что с этим можно сделать?

введите описание изображения здесь

3) Как будто отвечая на вопрос 2, я пошел дальше и изменил постоянный модуль, против которого стараюсь свести ошибку к минимуму. Вместо того, чтобы выбрать 1 (как предполагается, для BPSK), я выбрал 0.25 в качестве модуля. Это созвездие, которое я получил:

введите описание изображения здесь

Проблема в том, что даже если это «решение», как узнать, априори, какой модуль выбрать? Причина, по которой я считаю это проблемой, заключается в том, что если у меня есть 4 кластера вместо 2, это усложняет оценку / коррекцию сдвига фазы / сдвига частоты после символа, особенно когда ожидается 2 кластера из-за сигнализации BPSK.

(Для полноты я приложил те же графики, но когда я добавил сдвиги частоты)

введите описание изображения здесь

введите описание изображения здесь

Заранее спасибо за любые идеи, которые вы можете дать в этот эквалайзер!


Никто, правда? :-)
Spacey

2
Это очень специфичный для конкретной области вопрос, поэтому, пока кто-то, имеющий время и опыт работы с CMA, не придет и не решит проблему, вы, вероятно, не получите хорошего ответа. Я реализовывал алгоритм в прошлом и помню, что видел похожее поведение, но не помню, в каких сценариях. Возможно, опубликуйте свой код MATLAB, чтобы мы могли на него посмотреть.
Джейсон Р

Ответы:


3
  1. В общем, выравнивание канала с глубокими замираниями является проблемой для всех эквалайзеров. Эквалайзер CMA не является исключением. Отсутствие тренировочного сигнала ухудшает ситуацию.

  2. Это, очевидно, пример CMA, застрявшего в локальном минимуме. Начальное состояние эквалайзера CMA, вероятно, находилось вблизи локального минимума. Фильтр эквалайзера, к которому сходился CMA, свернутый с каналом, не дает импульсного общего отклика.

  3. Помните, что функции стоимости эквалайзеров CMA являются нелинейными. Модификация модуля не оказывает «линейного» влияния на функцию стоимости. Вероятно, произошло то, что ваше начальное состояние (идентичное тому, которое было в предыдущем случае) эквалайзера CMA с «модифицированным модулем» теперь упало в окрестности глобального минимума. Это «красота» нелинейности!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.