exponenta event banner

bchgenpoly

Генераторный полином кода BCH

Синтаксис

genpoly = bchgenpoly(n,k)
genpoly = bchgenpoly(n,k,prim_poly)
genpoly = bchgenpoly(n,k,prim_poly,outputFormat)
[genpoly,t] = bchgenpoly(...)

Описание

genpoly = bchgenpoly(n,k) возвращает полином генератора узких чувств кода BCH с длиной кодового слова n и длина сообщения k. Длина кодового слова n должен иметь вид 2m-1 для некоторого целого числа m между 3 и 16. Продукция genpoly - вектор строки Галуа, который представляет коэффициенты полинома генератора в порядке степеней убывания. Многочленом генератора с узким смыслом является LCM [m _ 1 (x), m_2 (x),..., m_2t (x)], где:

  • LCM представляет наименьшее общее кратное,

  • m_i (x) представляет минимальный многочлен, соответствующий αi, α является корнем примитивного многочлена по умолчанию для поля GF (n+1),

  • и t представляет возможность исправления ошибок кода.

Примечание

Хотя bchgenpoly выполняет промежуточные вычисления в GF (n+1), конечный многочлен имеет двоичные коэффициенты. Выходные данные bchgenpoly является вектором Галуа в GF (2), а не в GF (n+1).

genpoly = bchgenpoly(n,k,prim_poly) является тем же, что и синтаксис выше, за исключением того, что prim_poly задает примитивный многочлен для GF (n+1), который имеет Альфа в качестве корня. prim_poly является либо вектором многочленов символов, либо целым числом, двоичное представление которого указывает коэффициенты примитивного многочлена в порядке степеней убывания. Использование примитивного многочлена по умолчанию для GF (n+1), комплект prim_poly кому [].

genpoly = bchgenpoly(n,k,prim_poly,outputFormat) совпадает с предыдущим синтаксисом, за исключением того, что outputFormat указывает тип выходных данных. Значение outputFormat может быть "gf«или»double«соответствует полям Галуа и двойным типам данных соответственно». Значение по умолчанию outputFormat являетсяgf'.

[genpoly,t] = bchgenpoly(...) прибыль t, способность кода исправлять ошибки.

Примеры

свернуть все

Создайте два многочлена генератора BCH на основе различных примитивных многочленов.

Установите длину кодового слова и сообщения, n и k.

n = 15;
k = 11;

Создайте полином генератора и верните возможность исправления ошибок. t.

[genpoly,t] = bchgenpoly(15,11)
 
genpoly = GF(2) array. 
 
Array elements = 
 
   1   0   0   1   1
t = 1

Создайте генераторный многочлен для (15,11) кода BCH, используя другой примитивный многочлен, выраженный в виде символьного вектора. Обратите внимание, что genpoly2 отличается от genpoly, который использует примитив по умолчанию.

genpoly2 = bchgenpoly(15,11,'D^4 + D^3 + 1')
 
genpoly2 = GF(2) array. 
 
Array elements = 
 
   1   1   0   0   1

Ограничения

Максимально допустимое значение n составляет 65535.

Ссылки

[1] Петерсон, В. Уэсли и Э. Дж. Уэлдон, младший, Коды исправления ошибок, 2-е изд., Кембридж, Массачусетс, MIT Press, 1972.

Расширенные возможности

.

См. также

| |

Представлен до R2006a