
Компандирование по µ-закону
Этот закон отличается большим числом дискрет для кодирования сигнала. Их 8159, что позволяет более точно кодировать слабые сигналы. По статистике таковых больше, чем сигналов с большой амплитудой. Это обстоятельство повышает качество речи (но, как показала практика, незначительно). При этом шаги квантования меняются в каждом сегменте и равны 1, 2, 4, 8, 16, 32, 64, 128, 256. Ниже приводится таблица кодирования (табл. 8.4).
Таблица 8.4. Кодирование-декодирование согласно µ-закону |
||||
Диапазон входных амплитуд |
размер шага |
код сегмента |
код шага квантования |
Амплитуда на выходе декодера |
0-1 |
1 |
|
0000 |
0 |
1-3 3-5 • • • 29-31 |
2 |
000 |
0000 • • • • 1111 |
2 4 • • • 30 |
31-35 • • • 91-95 |
4 |
001 |
0000 • • • • 1111 |
33 • • • • 93 |
95-103 • • • 215-223 |
8 |
010 |
0000 • • • • 1111 |
99 • • • • 219 |
223-239 • • • 463-479 |
16 |
011 |
0000 • • • • 1111 |
231 • • • • 471 |
479-511 • • • 959-991 |
32 |
100 |
0000 • • • • 1111 |
495 • • • • 975 |
991-1055 • • • 1951-2015 |
64 |
101 |
0000 • • • • 1111 |
1023 • • • • 1983 |
2015-2143 • • • 3935-4063 |
128 |
110 |
0000 • • • • 1111 |
2079 • • • • 3999 |
4063-4319 • • • 7903-8159 |
256 |
111 |
0000 • • • • 1111 |
4191 • • • • 8031 |
При передаче все биты инвертируются.
Алгоритм определения составляющих формата компандирования по рис. 8.6 для числа иллюстрируется таблицей 8.5 и выполняется в следующем порядке.
Таблица 8.5. Таблица линейных кодов и соответствующих номеров сегментов µ-закону |
||||
кодовая линейная комбинация |
Начальные точки следующего сегмента |
Величина шага квантования |
Десятичный номер сегмента |
Двоичный номер сегмента |
00000000wxyz- |
|
|
|
000 |
0000001wxyz- |
|
|
|
001 |
000001wxyz--- |
|
|
|
010 |
00001wxyz--- |
|
|
|
011 |
0001wxyz---- |
|
|
|
100 |
001wxyz----- |
|
|
|
101 |
01wxyz------- |
|
|
|
110 |
1wxyz--------- |
|
|
|
111 |
Знак определяется согласно знаку заданного числа и кодируется:
2 — положительная величина отсчета;
3 — отрицательная величина.
Номер сегмента
— Находится
такое минимальное из возможных чисел
,
что
(точнее,
).
— Номер сегмента определяется как
.
Номер шага
Номер шага квантования может быть определен несколькими способами.
1-й способ. После определения номера сегмента вычисляется следующая разность:
.
Эта
разность переводится в двоичную форму
длиной
,
и в конце двоичной комбинации удаляются
или
младших
разрядов.
2-й способ. Определяются разряды номера шага, а именно wyxz.
w определяется следующим образом. Сравниваются числа и .
Если
,
то
устанавливается
новое число
и
выполняется шаг
этого
алгоритма, в другом случае (
)
,
вычисляется
и
выполняется пункт b этого алгоритма.
Далее сравниваются числа и .
Если
,
то
устанавливается новое число
и
выполняется следующий шаг этого
алгоритма, в другом случае (
)
и
вычисляется
и
выполняется следующий шаг этого
алгоритма.
Далее аналогичная процедура выполняется на следующих шагах для и .
Рассмотрим несколько примеров компандирования отсчетов.
Предположим, нам надо получить все характеристики значения отсчета 68.
Минимальное число, удовлетворяющее условию
,
это .
Тогда
десятичный номер сегмента равен
(или
двоичное значение 001). Далее вычисляем
остаток:
или
двоичное значение семи (
)
оставшихся разрядов равно 000100.
Вычислим
номер разряда первым способом. Поскольку
,
исключаем 2 последних разряда в двоичном
представлении, получаем код шага
квантования
.
Полный восьмиразрядный формат равен 0
010 0001.
Вычислим номер разряда вторым способом.
;
;
;
;
.
Полный восьмиразрядный формат равен 0 010 0001.
Рассмотрим число 125.
Из
неравенства
получаем
.
Номер
сегмента
.
Номер шага квантования
Остаток
1-й способ.
Семиразрядное
(
)
Двоичное представление остатка —
0011110. Исключая последние два знака,
получаем код шага квантования
.
2-й способ.
,
тогда
;
,
то
;
,
то
;
,
то
;
.
Полный восьмиразрядный формат равен 0 010 0011.