Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга бельфер.docx
Скачиваний:
228
Добавлен:
20.09.2019
Размер:
9.74 Mб
Скачать

21.3.2. Кодер канала

Основная задача кодека канала – помехоустойчивое кодирование/декодирование сигнала речи, т.е. такое кодирование которое позволяет обнаружить и в значительной мере исправить ошибки, возникающие на радиоучастке, т.е. между BTS и MS. Методы обнаружения ошибок применяются в протоколах управления каналами передачи данных, таких как HDLC, а также транспортных протоколах, таких как TCP. При этом имеется в виду повторная передача искаженных в канале блоков данных. Для беспроводных каналов характерен высокий уровень ошибок, в результате чего потребуется недопустимо большое число повторных передач, что для речевых сообщений недопустимо из-за больших задержек. Используемые в сотовой связи дециметровые волны, распространяются в основном по прямой, но испытывают многочисленные отражения от крупных объектов. При сложении нескольких сигналов, прошедших по разным путям и имеющих в точке приема в общем случае различные фазы, результирующий сигнал может быть как выше среднего уровня, так и заметно ниже. Образующиеся замирания сигнала (колебания уровня) бывают достаточно глубокими, и при этом отношение сигнал/шум падает настолько сильно, что полезная информация может существенно искажаться шумами, вплоть до полной ее потери. В сети GSM для борьбы с замиранием, а также с межсимвольной интерференцией может использоваться расширение спектра методом перескока частоты или скачков по частоте (frequency hopping). Метод скачков по частоте состоит в том, что несущая частота для каждого физического канала периодически переводится на новый частотный канал. При изменении частоты замирание с большей вероятностью не будет. Следовательно, при достаточно частых изменениях частоты существенно снижается вероятность длительных замираний и соответственно снижается вероятность групповых ошибок. С одиночными ошибками можно успешно бороться с помощью помехоустойчивого кодирования, о чем подробно будет изложено в настоящем разделе. По качеству речи, воспроизводимой с помощью кодека речи GSM, биты в 260-битовом блоке можно разделить на три класса:

  • Класс 1a: 50 бит, наиболее чувствительные к битовым ошибкам.

  • Класс 1b: 132 бита, умеренно чувствительные к битовым ошибкам.

  • Класс 2a: 78 бит, минимально чувствительные к битовым ошибкам.

Для защиты первых 50 бит используется 3-битовая проверка с помощью циклического кода. При обнаружении ошибки – весь блок 260 бит отбрасывается и заменяется предыдущим. Эти 53 бита при необнаруженной ошибке, 132 бита класса 1b, а также 4 - битовая остаточная последовательность нулей (т.е. всего 189 бит), затем защищаются сверточным кодом. Сверточный код используется для исправления одиночных ошибок. Коды с исправлением ошибок называются прямой коррекцией ошибок FEC (Forward Error Correction).

При сверточном кодировании (рис. 21.7) K последовательных символов входной информационной последовательности, по k бит в каждом символе участвуют в образовании n-битовых символов выходной последовательности, n > k, причем на каждый символ входной последовательности приходится по одному символу выходной.

Каждый бит выходной последовательности получается в результате суммирования по модулю 2 нескольких бит (от двух до Kk бит) K входных символов, для чего используются n сумматоров по модулю 2. Сверточный кодер с параметрами n, k, K обозначается (n, k, K).

Рис. 21.7. Схема сверточного кодера (4, 2, 5) (n = 4, k =2; R = k/n = ½)

Отношение R=k/n называется скоростью кодирования кодера. Параметр K называется длиной ограничения и определяет длину сдвигового регистра (в символах), содержимое которого участвует в формировании одного выходного символа. После того как очередной выходной символ сформирован, входная последовательность сдвигается на один символ вправо, в результате чего символ 1 выходит за пределы регистра, символы 2, 3, 4, 5 перемещаются вправо, каждый на место соседнего, а на освободившееся место записывается очередной символ входной последовательности, и по новому содержимому регистра формируется следующий выходной символ. Если k = 1, т.е. символы входной последовательности однобитовые, сверточный кодер называется двоичным. Сверточный кодер, схема которого приведена на рис. 21.7 не является двоичным, поскольку для него k = 2.

В случае GSM 189 бит речевого сигнала защищаются сверточным кодом (2, 1, 5), что в итоге составляет 456 бит (189*2 плюс 78 бит незащищенные). В результате на выходе кодера канала скорость потока данных увеличивается с 13 Кбит/с до 22.8 Кбит/с- (13 Кбит/с*456бит)/260бит На рис. 21.8 приведено описанное выше канальное кодирование 20-миллисекундного сегмента речи.

Рис. 21.8. Канальное кодирование 20-миллисекундного сегмента речи

Сверточный код (2.1.5) используется для исправления одиночных ошибок. Кодированный блок сегмента речи подвергается перемежению. Примем в качестве меры избыточности, вносимую кодированием, отношение длины исходной информации к длине информации, передаваемой в канал. Будем называть это значение скоростью кодирования. В данном случае для сегмента речи эта величина равна 260/456, т.е. 0,57. Высокая избыточность кодирования при исправлении одиночной ошибки не позволяет использовать кодирование с большей исправляющей способностью (т.е. двойные и более ошибки). Перед выдачей в канал связи закодированная информация речи также подвергается перемежению. Перемежение представляет собой такое изменение порядка следования символов информационной последовательности, т.е. такую перестановку, или перетасовку, символов, при которой стоявшие рядом символы оказываются разделенными несколькими другими символами. Такая процедура предпринимается с целью преобразования групповых ошибок (пакетов ошибок) в одиночные с которыми легче бороться с помощью кодирования. Использование перемежения – одна из характерных особенностей сотовой связи, и это является следствием неизбежных глубоких замираний сигнала в условиях многолучевого распространения, которое практически всегда имеет место, особенно в условиях плотной городской застройки. При этом группа следующих один за другим символов, попадающих на интервал замирания (провала) сигнала, с большой вероятностью оказывается ошибочной. Если же перед выдачей информационной последовательности в радиоканал она подвергается процедуре перемежения, а на приемном конце восстанавливается прежний порядок следования символов, то пакеты ошибок с большой вероятностью рассыпаются на одиночные ошибки. Известно несколько различных схем перемежения и их модификаций – диагональная, блочная, сверточная и другие. Мы кратко рассмотрим первые две из них, лежащие в основе схем, применяемых в сотовой связи. При диагональном перемежении входная информация делится на блоки, а блоки – на субблоки, и в выходной последовательности субблоки, например, второй половины предыдущего блока чередуются с субблоками первой половины следующего блока. Такая схема иллюстрируется на рис. 21.9, где каждый блок состоит из шести субблоков, и субблоки первого блока обозначены ai, второго – bi, третьего – ci. Субблок может состоять из нескольких символов, или из одного символа, или даже из одного бита. Приведенная схема диагонального перемежения вносит малую задержку, но расставляет соседние символы лишь через один, т.е. рассредоточение ошибочных символов группы получается сравнительно небольшим.

Рис. 21.9. Пример схемы диагонального перемежения

При блочном перемежении входная информация также делится на блоки по n субблоков (или символов) в каждом, и в выходной последовательности чередуются субблоки k последовательных блоков. Работу этой схемы можно представить себе в виде записи блоков входной последовательности в качестве строк матрицы размерности k*n (рис. 21.10), считывание информации из которой производится по столбцам. Следовательно, если входная последовательность в этом примере имела вид a1,a2,...,an,b1,b2,...,bn,k1,k2,...,kn, то выходная будет такой: a1,b1,...,k1,a2,b2,...,k2,an,bn,...,kn. Субблоки, или символы, в частном случае здесь также могут состоять лишь из одного бита. Схема блочного перемежения вносит большую задержку, чем диагонального, но значительно сильнее рассредоточивает символы группы ошибок.

Рис. 21.10. Схема блочного перемежения

В стандарте GSM используется достаточно сложная и совершенная схема блочно- диагонального перемежения. 456 бит информации одного 20-миллисекундного сегмента речи разбиваются на 8 подсегментов. 57 бит одного подсегмента распределяются между смежными восемью подсегментами таким образом, что после перемежения смежными с каждым конкретным битом оказываются соответствующие ему по положению биты, отстоявшие от него до перестановки на 4 подсегмента, причем на четные и нечетные (после перестановки) битовые позиции подсегмента ставятся биты из смежных сегментов. Алгоритм перемежения обладает свойствами квазислучайности, так что смежные биты исходной последовательности оказываются разделенными непостоянным числом бит, что является преимуществом в борьбе с периодическим битовыми ошибками. Вносимая задержка речи составляет существенную величину порядка 70-80 мс и включает порядка 20 мс на кодек речи, 10-20 мс на кодек канала и 40 мс на перемежение/деперемежение. Информация каналов управления подвергается блочному и сверточному кодированию в полном объеме. Так, для кодирования информации каналов SACCH, FACCH, FCCH, PCH, AGCH, SDCCH используется блочный кодер (224, 184), сверточный кодер (2, 1, 5) и та же схема перемежения, что и для канала трафика. В каналах RACH, SCH используются другие схемы блочного кодирования, а также сверточные кодеры (2, 1, 5), отличающиеся от сверточных кодеров перечисленных ранее каналов управления. При передачи данных используются более сложные схемы сверточного кодирования и перемежения, обеспечивающие соответственно и более высокое качество передачи информации. На рис. 21.11 приведена схема кодирования блока сигналов управления между мобильной станцией MS и базовой станцией BTS. При передачи управляющих сообщений используется кодирование с более сильной коррекцией ошибок, чем при передаче речи. Управляющее сообщение состоит из 23 байт, т.е. 184 бит. При кодировании к управляющему сообщению (блоку данных) добавляется 40 бит контрольно-проверочной комбинации блочного циклического кода CRC. Скорость кодирования блоков символов управления равна 184/456=0,4. Это значит, что избыточность кодирования выше, чем в случае сегмента речи, схема которого приведена выше на рис. 21.10.

Рис. 21.11. Канальное кодирование блока символов управления