Турбокодер продукт кода (TPC)
Communications Toolbox/Обнаружение и исправление ошибок/Блокировка
Блок TPC Encoder выполняет 2-D turbo продукта кода (TPC) кодирование входа сообщения. Код продукта является 2-D конкатенацией линейных блочных кодов. Линейные блочные коды могут быть проверкой кода четности, кодом Хемминга или кодом BCH, способным исправить две ошибки. Расширенные и укороченные коды могут применяться независимо к каждой размерности. Описание кодирования 2-D TPC смотрите в Turbo Product Code Construction.
Для получения информации о допустимых парах кода и возможности исправления ошибок для каждой действительной пары кода, см. Раздел «Пары кода компонента».
In
- Сообщение для кодированияВходы биты сообщений для кодирования, заданные как вектор-столбец.
Для полноразмерных входных сообщений длина вектора-столбца должна быть продуктом количества строк в сообщении, Kr и количества столбцов в сообщении, Kc.
Для укороченных входов сообщений длина вектора-столбца должна быть продуктом количества строк в укороченном сообщении, Sr и количества столбцов в укороченном сообщении, Sc.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
Out
- Сообщение с кодировкой TPCСообщение с кодировкой TPC, возвращаемое как вектор-столбец с совпадающим типом данных, что и входной сигнал.
Для полноразмерных входных сообщений длина вектора-столбца является продуктом числа строк в коде, Nr и количества столбцов в коде, Nc.
Для сокращенных входов сообщений длина вектора-столбца является продуктом (N R- K R + S R) и (N C- K C + S C), где:
N R является значением числа строк в коде, Nr.
K R является значением числа строк в сообщении, Kr.
S R является значением числа строк в сокращенном сообщении, Sr.
N C является значением числа столбцов в коде, Nc.
K C является значением числа столбцов в сообщении Kc.
S C является значением числа столбцов в сокращенном сообщении Sc.
Extended codes
- Индикатор расширенных кодов для параметров строки TPCon
(по умолчанию) | off
Когда выбран Extended кодов, списки для Number of строк in code, Nr и Number of строк in message, Kr содержат допустимые значения для расширенных отдельных пар кода (N R, K R).
Когда Extended кодов очищается, списки для Number of строк in code, Nr и Number of строк in message, Kr содержат допустимые значения для невыданных отдельных пар кода (N R, K R).
Number of rows in code, Nr
- Количество строк в матрице кода продукта16
(по умолчанию) | целое числоКоличество строк в матрице кода продукта, N R. Список целочисленных значений изменяется в зависимости от значения параметра Extended codes.
Number of rows in message, Kr
- Количество строк в матрице сообщений11
(по умолчанию) | целое числоКоличество строк в матрице сообщений, K R. Список целочисленных значений изменяется в зависимости от настройки расширенных кодов и количества строк в коде, Nr.
Specify shortened message length
- Задайте укороченную длину сообщения для строкoff
(по умолчанию) | on
Выберите Specify shortened message length, чтобы задать значение для количества строк в сокращенном сообщении Sr.
Number of rows in shortened message, Sr
- Количество строк в сокращенной матрице сообщений9
(по умолчанию) | целое числоКоличество строк в укороченной матрице сообщений, S R, заданное в виде целого числа, меньше или равного K R. Когда вы задаете этот параметр, предоставьте полноразмерные N R и K значения R, чтобы задать пару кода (N R, K R). Затем эта пара кода сокращается до пары кода (N R- K R + S R, S R), где:
N R является значением числа строк в коде, Nr.
K R является значением числа строк в сообщении, Kr.
S R является значением числа строк в сокращенном сообщении, Sr.
Чтобы включить этот параметр, выберите Задать укороченную длину сообщения.
Типы данных: double
Extended codes
- Индикатор расширенных кодов для параметров столбца TPCon
(по умолчанию) | off
При выборе Расширенные коды, списки Количество столбцов в коде, Nc и Количество столбцов в сообщении, Kc содержат допустимые значения для расширенных отдельных пар кода (N C, K C).
Когда Расширенные коды очищены, списки Количества столбцов в коде, Nc и Количество столбцов в сообщении, Kc содержат допустимые значения для неэкструзионных отдельных пар кода (N C, K C).
Number of columns in code, Nc
- Количество столбцов в матрице кода продукта32
(по умолчанию) | целое числоКоличество столбцов в матрице кода продукта, N C. Список целочисленных значений изменяется в зависимости от значения параметра Extended codes.
Number of columns in message, Kc
- Количество столбцов в матрице сообщений26
(по умолчанию) | целое числоКоличество столбцов в матрице сообщений, K C. Список целочисленных значений изменяется в зависимости от настройки расширенных кодов и количества столбцов в коде, Nc.
Specify shortened message length
- Задайте укороченную длину сообщения для столбцовoff
(по умолчанию) | on
Выберите Specify shortened message length, чтобы задать значение для числа столбцов в сокращенном сообщении Sc.
Number of columns in shortened message, Sc
- Количество столбцов в сокращенной матрице сообщений22
(по умолчанию) | целое числоКоличество столбцов в сокращенной матрице сообщений, S C, заданное в виде целого числа. Когда вы задаете этот параметр, предоставьте полноразмерные N значений C и K C, чтобы задать пару кода (N C, K C). Затем эта пара кода сокращается до пары кода (N C- K C + S C, S C), где:
N C является значением числа столбцов в коде, Nc.
K C является значением числа столбцов в сообщении Kc.
S C является значением числа столбцов в сокращенном сообщении Sc.
Чтобы включить этот параметр, выберите Задать укороченную длину сообщения.
Типы данных: double
Simulate using
- Тип выполняемой симуляцииCode generation
(по умолчанию) | Interpreted execution
Тип выполняемой симуляции, заданный как Code generation
или Interpreted execution
.
Code generation
- Симулируйте модель при помощи сгенерированного кода C. Первый раз, когда вы запускаете симуляцию, Simulink® генерирует код С для блока. Код С повторно используется для последующих симуляций, если модель не меняется. Эта опция требует дополнительного времени запуска, но скорость последующих симуляций быстрее Interpreted execution
.
Interpreted execution
-- Моделируйте модель с помощью MATLAB® интерпретатор. Эта опция требует меньше времени запуска, чем Code generation
метод, но скорость последующих симуляций медленнее. В этом режиме можно отлаживать исходный код блока.
Типы данных |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
В этой таблице перечислены поддерживаемые пары кода компонента для параметров строка (N R, K R) и столбец (N C, K C ).
N R и K R представляют количество строк в матрице кода продукта и матрице сообщений, соответственно.
N C и K C представляют количество столбцов в матрице кода продукта и матрице сообщений, соответственно.
В рамках каждого типа кода любые две пары кода компонента могут сформировать 2-D код TPC. Таблица также включает возможность исправления ошибок для каждой пары кода.
Тип кода | Пары кода компонента (N R, K R) и (N C, K C) | Возможность исправления ошибок (T) |
Код Хемминга | (255,247) | 1 |
(127,120) | 1 | |
(63,57) | 1 | |
(31,26) | 1 | |
(15,11) | 1 | |
(7,4) | 1 | |
Расширенный код Хемминга | (256,247) | 1 |
(128,120) | 1 | |
(64,57) | 1 | |
(32,26) | 1 | |
(16,11) | 1 | |
(8,4) | 1 | |
Код BCH | (255,239) | 2 |
(127,113) | 2 | |
(63,51) | 2 | |
(31,21) | 2 | |
(15,7) | 2 | |
Расширенный код BCH | (256,239) | 2 |
(128,113) | 2 | |
(64,51) | 2 | |
(32,21) | 2 | |
(16,7) | 2 | |
Проверка кода четности | (256,255) | - |
(128,127) | - | |
(64,63) | - | |
(32,31) | - | |
(16,15) | - | |
(8,7) | - | |
(4,3) | - |
Турбокоды (TPC) продукта являются формой конкатенированных кодов, используемых в качестве кодов прямой коррекции ошибок (FEC). Два или более блочных кодов компонентов, таких как систематические линейные блочные коды, используются для создания TPC. Этот энкодер реализует кодирование кода 2-D продукта, как описано в [1], используя два линейных блочных кода.
Энкодер TPC принимает или полноразмерные, или укороченные сообщения.
Конструкция полноразмерных кодов продуктов сообщений
Полноразмерные входные сообщения кодируются с помощью заданных 2-D пар кода TPC. В строковой кодировке используется пара кода (N C, K C), а в столбцовой - пара кода (N R, K R). Вход вектора должна быть K R· K C. Вектор бит входного сообщения упорядочен в K R-by K C матрицу.
Строковая кодировка использует (N C, K C) систематический линейный блочный энкодер с K битами C на строку. Строковое кодирование приводит к K матрице R-by N C, которая включает биты четности, добавленные к каждой строке.
Затем в столбцовой кодировке используется (N R, K R) систематический линейный блочный энкодер на каждом из N C столбцов. Применение этой 2-D кодировки TPC к исходной матрице K R-by K C приводит к N матрице R-by N C, которая включает в себя биты четности, добавленные к каждой строке и столбцу.
Матрица 2-D TPC с полным кодом изменяется в вектор-столбец длины N R· N C и возвращается как выход с кодировкой TPC.
Конструкция сокращенных кодов продуктов сообщений
Укороченные входные сообщения кодируются с помощью заданных 2-D пар кода TPC. В строковой кодировке используется пара кода (N C, K C), а в столбцовой кодировке используется пара кода (N R, K R). Вход вектора должна быть S R· S C. Входной вектор укороченных бит сообщения упорядочен в S R-by S C матрицу. Сокращенная матрица сообщений заполняет две размерности, заполняя начало матрицы сообщений нулями. Получившаяся матрица является K R-by- K C-матрицей.
Строковая кодировка использует (N C, K C) систематический линейный блочный энкодер с K битами C на строку. Строковое кодирование приводит к K матрице R-by N C, которая включает биты четности, добавленные к каждой строке.
Затем в столбцовой кодировке используется (N R, K R) систематический линейный блочный энкодер на каждом из N столбцов C.
Применение этой 2-D кодировки TPC к исходной матрице K R-by K C и исключение заполненной нулями бит из выхода результатов в матрице (N R- K R + S R) -by- (N C- K C + S C). Эта матрица включает биты четности, добавленные к каждой строке и столбцу.
2-D матрица укороченного кода TPC переформатируется в вектор-столбец длины (N R- K R + S R)· (N C- K C + S C) и возвращается как выход с кодированием TPC.
[1] Pyndiah, R.M «. Near-Optimum Decoding of Product Codes: Block Turbo Codes». Транзакции IEEE по коммуникациям. Том 46, № 8, август 1998 года, стр. 1003-1010.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.