Алгоритм Форни
В теории кодирования алгоритм Форни (или алгоритм Форни ) вычисляет значения ошибок в известных местах ошибок. Он используется как один из этапов декодирования кодов BCH и кодов Рида – Соломона (подкласс кодов BCH). Джордж Дэвид Форни-младший . Алгоритм разработал [ 1 ]
Процедура
[ редактировать ]- Необходимо ввести терминологию и настройку...
Кодовые слова выглядят как полиномы. По задумке генераторный полином имеет последовательные корни α с , а с +1 , ..., а с + д -2 .
Синдромы
Полином местоположения ошибки [ 2 ]
Нули Λ( x ) равны X 1 −1 , ..., Х н −1 . Нули являются обратными местами ошибок. .
Как только места ошибок станут известны, следующим шагом будет определение значений ошибок в этих местах. Значения ошибок затем используются для исправления полученных значений в этих местах для восстановления исходного кодового слова.
В более общем случае веса ошибок e j можно определить путем решения линейной системы
Однако существует более эффективный метод, известный как алгоритм Форни, основанный на интерполяции Лагранжа . Сначала вычислите полином оценщика ошибок. [ 3 ]
Где S ( x ) — полином частичного синдрома: [ 4 ]
Затем оцените значения ошибок: [ 3 ]
Значение c часто называют «первым последовательным корнем» или «fcr». Некоторые коды выбирают c = 1 , поэтому выражение упрощается до:
Формальная производная
[ редактировать ]Λ'( x ) является формальной производной полинома локатора ошибок Λ( x ): [ 3 ]
Обратите внимание, что в приведенном выше выражении i — целое число, а λ i будет элементом конечного поля. Оператор ⋅ представляет собой обычное умножение (повторяющееся сложение в конечном поле), которое совпадает с оператором умножения конечного поля, т.е.
Например, в характеристике 2 в зависимости от того, четный я или нечетный.
Вывод
[ редактировать ]Гилл (nd , стр. 52–54) дает вывод алгоритма Форни.
Стирания
[ редактировать ]Определите полином локатора стирания
Где места стирания заданы j i . Примените описанную выше процедуру, заменив Γ на Λ.
Если присутствуют и ошибки, и стирания, используйте полином локатора ошибок и стираний.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Форни 1965
- ^ Гилл н.д. , с. 24
- ^ Jump up to: а б с Гилл н.д. , с. 47
- ^ Джилл (nd , стр. 48)
- Форни, Г. (октябрь 1965 г.), «О декодировании кодов BCH», IEEE Transactions on Information Theory , 11 (4): 549–557, doi : 10.1109/TIT.1965.1053825 , ISSN 0018-9448
- Гилл, Джон (nd), Примечания EE387 № 7, Раздаточный материал № 28 (PDF) , Стэнфордский университет, стр. 42–45, заархивировано из оригинала (PDF) 30 июня 2014 г. , получено 21 апреля 2010 г.
- У. Уэсли Петерсона Книга