|
коды, исправляющие ошибки |
|
|
|
Jun 10 2010, 15:38
|
Знающий
   
Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119

|
Цитата(mluk @ Jun 10 2010, 19:03)  Что есть алфавит кодирования и количество исправляемых ошибок. Обычно под алфавитом понимается количество различных символов кода. В этих таблицах все коды двоичные. А количество исправляемых ошибок - это... количество исправляемых ошибок! Не знаю, как это можно сказать понятнее. Если можно, приведите английские фразы из ссылки, которые вызвали у Вас эти вопросы.
|
|
|
|
|
Jun 10 2010, 16:20
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 3-06-10
Пользователь №: 57 721

|
я не понял как таблицей пользоваться и совета прошу. Был бы благодарен если бы вы описали алгоритм поиска любого выбранного Вами кода по какой нибудь из приведенных там таблиц.
|
|
|
|
|
Jun 10 2010, 16:23
|
Знающий
   
Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119

|
Цитата(mluk @ Jun 10 2010, 19:48)  Скажем так, есть ли возможность найти по таблице укороченный код рида соломона изправляющий 2 байта из 12 при 8 информационных. Как это сделать  Не понял. Причем здесь РС-коды? Они же не двоичные. Их, конечно, можно рассматривать как двоичные, но двоичное минимальное расстояние у них плохое. Что-то около 5. Вместо 9 у эквивалентного по длине и скорости двоичного кода. Мы это обсуждали выше.
|
|
|
|
|
Jun 10 2010, 16:26
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(mluk @ Jun 10 2010, 20:20)  я не понял как таблицей пользоваться и совета прошу. Был бы благодарен если бы вы описали алгоритм поиска любого выбранного Вами кода по какой нибудь из приведенных там таблиц. n - длина блока (d-1)/2 количество ошибок исправляемых k - количество бит информационных В тех таблицах есть очень хорошие коды, но скорее всего их не так то просто будет сделать, в указанных статьях может не быть практического алгоритма декодирования. БЧХ же коды вдоль и поперёк изучены и расписаны и исходники и корки при желании найти можно.
|
|
|
|
|
Jun 10 2010, 16:36
|
Знающий
   
Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119

|
Цитата(petrov @ Jun 10 2010, 20:15)  Нету там хорошего кода 96,64. Там есть все лучшие известные двоичные коды длины до 512 и расстояния до 29. Надо только уметь пользоваться таблицами. В частности, там есть код 91,64,9. Код с расстоянием 11 имеет уже параметры 98,64,11. Так что для длины 96 и 64-х информационных символов нет известного кода с мин. расст. 11. Следовательно, нужно ориентироваться на расстояние 9 (или 10 - это не принципиально). А такие коды есть среди укороченных БЧХ кодов над GF(2^7), о чем я и писал ранее.
|
|
|
|
|
Jun 11 2010, 05:53
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 3-06-10
Пользователь №: 57 721

|
Спасибо, все прояснилось. А нет ли таких же таблиц для бчх кодов (в том числе и укороченных).
|
|
|
|
|
Jun 11 2010, 07:32
|
Знающий
   
Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119

|
Цитата(mluk @ Jun 11 2010, 09:53)  Спасибо, все прояснилось. А нет ли таких же таблиц для бчх кодов (в том числе и укороченных). Для укорочения БЧХ кода достаточно вырезать в нем несколько (сколько надо) информационных символов. Их можно считать нулевыми при кодировании и декодировании. Например. Есть БЧХ код 127,120,3 , исправляющий одну ошибку (он же - код Хемминга). Укорачиваем его на 5 инф. символов - получаем 122,115,3 код. Относительно таблицы кодов, то мне всегда хватало таблицы из книжки Питерсона и Уэлдона, но там все кончается длинами 63. Поищите таблицы в И-нете. И еще совет - поковыряйтесь в последних версиях МатЛаба. Там, кажется, есть библиотеки для постоения БЧХ-кодов. И еще маленький совет. Проще всего взять примитивный код БЧХ длины 127 с расстоянием 9. И укоротить его до нужной длины. Должно получится что-то вроде 127,99,9, а после укорочения- 96,68,9. Любой другой способ построения БЧХ кода даст вам, возможно, пару лишних инф. символов, но не увеличит мин. расстояние, как мы это выяснили выше.
|
|
|
|
|
Jun 11 2010, 08:21
|
Знающий
   
Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119

|
Цитата(petrov @ Jun 11 2010, 11:50)  Цифровая связь - Скляр, есть таблица до 255. Мой совет все равно короче Набираем в МатЛабе: >> genpoly = bchpoly(127,99) и имеем счастье  Все счастье можно посмотреть здесь: http://www.nsu.ru/matlab/MatLab_RU/communi...bchpoly.asp.htm
|
|
|
|
|
Apr 20 2011, 07:15
|
Группа: Новичок
Сообщений: 8
Регистрация: 19-04-11
Пользователь №: 64 469

|
народ, помогите пожалуйста, мне надо сделать программку для компа для турбокодов на кодах Хемминга, информация после демодулятора с жестким решением поступает. Пробовал табличным методом (т.е. каждую строку и каждый столбец декодирую незавизимо), но для скоростей 7/8 например блоков (128,120)х(128,120) очень неэффективно работает. Продумывал алгоритм Чейза2, но если я все правильно понял, то он хорошо работает с поступающей мягкой информацией, т.к. ему тогда легче расставить надежность бит , а в данном случае получается . что надежность у всех одинаковая и ему легко ошибиться с выявлением ненадежных бит. Продумывал LLR, наверно это даже самое надежное средство было бы. Но как я понял по Скляру где пример приводится с двумя инфо битами и битом четности, и по приложению 8A в книге вывел формулу для четырех инфо бит и одной проверки (для примера), уже получается довольно большое уравнение, а для 127 инфо бит(блок выше ), вообще нереальная формула будет. Подскажите, или я что то не правильно понимаю или может другие алгоритмы эффективные есть для данной задачи?
|
|
|
|
|
Apr 20 2011, 07:30
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(valera1234 @ Apr 20 2011, 10:15)  народ, помогите пожалуйста, мне надо сделать программку для компа для турбокодов на кодах Хемминга, информация после демодулятора с жестким решением поступает. Пробовал табличным методом (т.е. каждую строку и каждый столбец декодирую незавизимо), но для скоростей 7/8 например блоков (128,120)х(128,120) очень неэффективно работает. Продумывал алгоритм Чейза2, но если я все правильно понял, то он хорошо работает с поступающей мягкой информацией, т.к. ему тогда легче расставить надежность бит , а в данном случае получается . что надежность у всех одинаковая и ему легко ошибиться с выявлением ненадежных бит. Продумывал LLR, наверно это даже самое надежное средство было бы. Но как я понял по Скляру где пример приводится с двумя инфо битами и битом четности, и по приложению 8A в книге вывел формулу для четырех инфо бит и одной проверки (для примера), уже получается довольно большое уравнение, а для 127 инфо бит(блок выше ), вообще нереальная формула будет. Подскажите, или я что то не правильно понимаю или может другие алгоритмы эффективные есть для данной задачи? Лучше, чем алгоритм MAP ( с использованием алгебры отношения правдоподобия - LLR), на данный момент не существует, но для этого необходим мягкий выход демодулятора, для Чейза тоже нужен мягкий выход.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|