|
Мягкое декодирование кода Голея (24, 12, 8), Возможно ли? И какой профит может это дать? |
|
|
|
Sep 5 2018, 09:47
|
Профессионал
Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942
|
Цитата(soldat_shveyk @ Sep 5 2018, 11:57) И возможно ли в принципе мягкое декодирование для кода Голея? Возможно. Цитата(soldat_shveyk @ Sep 5 2018, 11:57) Что это может дать в конкретных цифрах, будет ли стоить игра свеч? Правильнее будет в матлабе набросать на стандартных функциях скрипт и посчитать выигрыш. Погуглите по словам: extended Golay code soft decoding https://ieeexplore.ieee.org/document/5450028/https://pdfs.semanticscholar.org/a562/14de7...0425fd42d50.pdfи т.п.
|
|
|
|
|
Sep 5 2018, 10:25
|
Местный
Группа: Свой
Сообщений: 454
Регистрация: 3-07-07
Из: С-Петербург
Пользователь №: 28 859
|
Цитата Правильнее будет в матлабе набросать на стандартных функциях скрипт и посчитать выигрыш. Вот именно это и хотелось бы сделать, чтобы сравнить с тем, что сейчас работает. Но для этого надо написать модель мягкого декодера. Написать не проблема, но алгоритм мне пока что не известен. За ссылки спасибо, попробую скачать. А может существуют хотя бы приблизительные оценки прироста SNR для мягкого декодирования блочного кода? Что-то типа для блочного кода 1/2 длиной 24 бита мягкое декодирование обеспечит выигрыш 2 дБ (ли 3, или 0.2). Было бы интересно.
|
|
|
|
|
Sep 5 2018, 11:25
|
Профессионал
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775
|
Для кода Голея (24,12) алгоритм Чейза дает следующие характеристики
Алгоритмы 1 и 2: Pb Eb/No, dB 1e-3 3,7 1e-4 4,7 1e-5 5,4
Алгоритм 3: Pb Eb/No, dB 1e-3 4,3 1e-4 5,3 1e-5 6,0
Сравнивайте с вашим жестким декодером
|
|
|
|
|
Sep 5 2018, 12:22
|
Местный
Группа: Свой
Сообщений: 454
Регистрация: 3-07-07
Из: С-Петербург
Пользователь №: 28 859
|
Спасибо, скачал, изучаю. Промоделировал свой декодер в мталабе, получил следующие цифры: SNR 6 dB, BER = 2.5e-4 SNR 5 dB, BER = 1.7e-3 SNR 4 dB, BER = 1.1e-2 SNR 3 dB, BER = 2.4e-2 SNR 2 dB, BER = 5.7e-2 SNR 1 dB, BER = 1.1e-1 SNR 0 dB, BER = 1.4e-1
По сравнению с этим, алгоритм Чейза 1 и 2 дает неплохой профит. Попробую разобраться с реализацией.
|
|
|
|
|
Sep 5 2018, 12:33
|
Местный
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163
|
Цитата(soldat_shveyk @ Sep 5 2018, 15:22) По сравнению с этим, алгоритм Чейза 1 и 2 дает неплохой профит. Попробую разобраться с реализацией. Если в вычислительной дури не сильно ограничены, то можно декодер максимального правдоподобия реализовать - потребуется вычисление 4096 сверток длиной 24 и выбор максимума. Писать там мало, а работать будет чуть лучше самого хорошего Чейза.
|
|
|
|
|
Sep 5 2018, 12:44
|
Местный
Группа: Свой
Сообщений: 454
Регистрация: 3-07-07
Из: С-Петербург
Пользователь №: 28 859
|
Цитата можно декодер максимального правдоподобия реализовать - потребуется вычисление 4096 сверток длиной 24 и выбор максимума У меня QPSK, и один код длиной 24 имеет укладывается 12 символов - комплексных отсчетов. Я попробовал сделать 4096 dot product с выбором максимума на модели в матлабе - получил такой же результат, как и в моем декодере с жестким решением. Это максимальное правдоподобие или нет? Я брал принятые 12 символов QPSK и делал скалярное произведение с каждым из 4096 кодом, который тоже был модулирован QPSK. B процессе умножения выбирал код с максимальным результатом dot.
|
|
|
|
|
Sep 5 2018, 12:55
|
Местный
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163
|
Цитата(soldat_shveyk @ Sep 5 2018, 15:44) У меня QPSK, и один код длиной 24 имеет укладывается 12 символов - комплексных отсчетов. Я попробовал сделать 4096 dot product с выбором максимума на модели в матлабе - получил такой же результат, как и в моем декодере с жестким решением. Это максимальное правдоподобие или нет? Я брал принятые 12 символов QPSK и делал скалярное произведение с каждым из 4096 кодом, который тоже был модулирован QPSK. B процессе умножения выбирал код с максимальным результатом dot. Это максимальное правдоподобие для binary symmetric channel . А Вам на входе декодера "мягкий" демодулятор нужен, оценивающий LLR принятых бит. Но тут с Чейзом никакой разницы нет. У него на входе тоже мягкие решения должны быть.
|
|
|
|
|
Sep 5 2018, 13:10
|
Местный
Группа: Свой
Сообщений: 454
Регистрация: 3-07-07
Из: С-Петербург
Пользователь №: 28 859
|
Цитата Вам на входе декодера "мягкий" демодулятор нужен Мягкий демодулятор у меня есть. После установления синхронизации, я получаю по 12 комплексных отсчетов - символов, в которых лежит 24-битный код Голея. Сейчас я каждый символ жестко интерпретирую в два бита [00], [01]... [11] и получаю 24 бита, которые идут на декодер. Чтобы перейти на мягкое решение, я должен каждый комплексный отсчет символа интерпретировать на некое малоразрядное число, и подавать эти числа на алгоритм Чейза? Цитата Это максимальное правдоподобие для binary symmetric channel Понятно. Это только для BPSK будет работать. А как тогда для QPSK реализовать максимальное правдоподобие?
|
|
|
|
|
Sep 5 2018, 13:30
|
Местный
Группа: Свой
Сообщений: 454
Регистрация: 3-07-07
Из: С-Петербург
Пользователь №: 28 859
|
Цитата Или на мп-декодер. Если я правильно понял, то таким образом можно 12 комплексных отсчетов преобразовать в 24 вещественных для реализации максимального правдоподобия?
|
|
|
|
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|