Перемежитель (Интерливер от англ. Interleaver) — блок, реализующий перемежение — один из способов борьбы с ошибками. Предназначен для борьбы с пакетированием ошибок путём их разнесения во времени. Использует перемешивание (перемежение) символов передаваемой последовательности на передаче и восстановление её исходной структуры на приёме. Может использоваться как самостоятельно, так и вместе с помехоустойчивым кодом, являясь в таком случае его составным компонентом.

Благодаря перемежению на входе декодера ошибки равномерно распределяются во времени, в идеале образуя поток независимых ошибок[1].

Классификация перемежителей править

Существует несколько типов устройств перемежения:

Периодические править

Относительно просты и используются в большинстве случаев. Подразделяются на блоковые и свёрточные.

Блоковые устройства являются двумерным массивом, запись данных в который осуществляется по столбцам, а считывание — по строкам. На приёме запись и считывание осуществляются в обратном порядке. Математически это соответствует транспонированию матрицы. Свёрточные устройства обычно реализуются в виде N регистров сдвига разной длины, в которые с помощью коммутатора последовательно записываются данные. Регистры сдвига обеспечивают задержку данных на величину M x n, где n = 0, 1, ..., N — порядковый номер ветви, M — параметр кодера. Декодер строится аналогичным образом, но с обратным порядком расположения ветвей, и синхронизируется с кодером. В результате пакетная ошибка длительностью менее N символов разбивается на ряд одиночных, разделенных интервалом M символов. Сверточное перемежение требует вдвое меньшего объема памяти, чем блоковое.

Псевдослучайные править

Сложнее в реализации, но обладают лучшими характеристиками. Используются в турбо-кодах, в них цель перемежителя состоит в том, чтобы предложить каждому кодеру некоррелированную или случайную версию информации, в результате чего паритетные биты каждого кодера становятся независимыми. Степень независимости этих паритетных битов является, по существу, функцией типа длины/глубины интерливера.

Применение править

Перемежители как отдельные устройства широко применяются во многих системах связи (например, GSM).

В качестве компонента помехоустойчивого кода перемежители используются в Турбо-кодах, кодах Рида-Соломона. В протоколе 3GPP Long Term Evolution (LTE), мобильный протокол передачи данных (3GPP technical specification 36.212 [2]), используется квадратичный полином перестановки (QPP) для системы перемежителя. Перемежение может использоваться в LDPC-кодах[3].

Недостатки править

Использование в системе перемежителя повышает её латентность, так как для обработки необходимо принять весь перемешанный блок данных.

Примечания править

  1. . Ю. Б. Зубарев, М. И. Кривошеев, И. Н. Красносельский. Цифровое телевизионное вещание. Основы, методы, системы. — М.: Научно-исследовательский институт радио (НИИР), 2001. — P. 127—129.
  2. 3GPP TS 36.212. Дата обращения: 18 декабря 2009. Архивировано 1 декабря 2008 года.
  3. Takeshita, Oscar (2005), A New Construction for LDPC Codes using Permutation Polynomials over Integer Rings, arXiv:cs/0506091

См. также править