Опубликован: 26.10.2007 | Доступ: свободный | Студентов: 2313 / 752 | Оценка: 4.04 / 3.76 | Длительность: 17:47:00
ISBN: 978-5-94774-810-9
Лекция 8:

Импульсно-кодовое преобразование

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >

Компандирование по µ-закону

Этот закон отличается большим числом дискрет для кодирования сигнала. Их 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 для числа N иллюстрируется таблицей 8.5 и выполняется в следующем порядке.

Таблица 8.5. Таблица линейных кодов и соответствующих номеров сегментов µ-закону
кодовая линейная комбинация Начальные точки следующего сегмента Величина шага квантования Десятичный номер сегмента Двоичный номер сегмента
00000000wxyz- 2^{6} - 33 = 31 2^{0} = 0 6 - 6 = 0 000
0000001wxyz- 2^{7} - 33 = 95 2^{1} = 1 7 - 6 = 1 001
000001wxyz--- 2^{8} - 33 = 233 2^{2} = 4 8 - 6 = 2 010
00001wxyz--- 2^{9} - 33 = 479 2^{3} = 8 9 - 6 = 3 011
0001wxyz---- 2^{10} - 33 = 991 2^{4} = 16 10 - 6 = 4 100
001wxyz----- 2^{11} - 33 = 2015 2^{5} = 32 11 - 6 = 5 101
01wxyz------- 2^{12} - 33 = 4063 2^{6} = 64 12 - 6 = 6 110
1wxyz--------- 2^{13} - 33 = 4096 2^{7} = 128 13 - 6 = 7 111
  • Знак определяется согласно знаку заданного числа N и кодируется:

    2 — положительная величина отсчета;

    3 — отрицательная величина.

  • Номер сегмента

    — Находится такое минимальное из возможных чисел C, что N < 2^{C} - 33 (точнее, 2^{C-1} < N < 2^{C} ).

    — Номер сегмента определяется как

    S = C - 6.

  • Номер шага

    Номер шага квантования может быть определен несколькими способами.

    1-й способ. После определения номера сегмента вычисляется следующая разность:

    R = N - (2^{C-1} - 33).

    Эта разность переводится в двоичную форму длиной С - 1, и в конце двоичной комбинации удаляются S + 1 или S + 1 = С - 5 младших разрядов.

    2-й способ. Определяются разряды номера шага, а именно wyxz.

    w определяется следующим образом. Сравниваются числа N и 2^{C-2}.

    Если N < 2^{C-2}, то w = 0 устанавливается новое число N_{1} = N и выполняется шаг b этого алгоритма, в другом случае ( N > 2^{C-2} ) w = 1, вычисляется N_{1} = N - 2^{C-2} и выполняется пункт b этого алгоритма.

    Далее сравниваются числа N_{1} и 2^{C-3}.

    Если N_{1} < 2^{C-3}, то y = 0 устанавливается новое число N_{2} = N_{1} и выполняется следующий шаг этого алгоритма, в другом случае ( N1 > 2^{C-3} ) w = 1 и вычисляется N_{2} = N_{1} - 2^{C-3} и выполняется следующий шаг этого алгоритма.

    Далее аналогичная процедура выполняется на следующих шагах для x и z.

Рассмотрим несколько примеров компандирования отсчетов.

Предположим, нам надо получить все характеристики значения отсчета 68.

Минимальное число, удовлетворяющее условию

x < 2^{C} = 2^{7} – 33 = 95,

это C=7.

Тогда десятичный номер сегмента равен S = С – 6 = 1 (или двоичное значение 001). Далее вычисляем остаток:

r = 67 – 61 = 4

или двоичное значение семи ( C - 1 ) оставшихся разрядов равно 000100.

Вычислим номер разряда первым способом. Поскольку S = 1, исключаем 2 последних разряда в двоичном представлении, получаем код шага квантования wxyz = 0001. Полный восьмиразрядный формат равен 0 010 0001.

Вычислим номер разряда вторым способом.

N = 4 < 2^{C-2} = 2^{5}, тогда\ w = 0 ;

N_{1} = 4 < 2^{4}, то\ y = 0 ;

N_{2} = 4 < 2^{3}, то\ x = 0 ;

N_{3} = 4 = 2^{2}, то\ z = 1 ;

wxyz = 0001.

Полный восьмиразрядный формат равен 0 010 0001.

Рассмотрим число 125.

Из неравенства x < 223 получаем C = 8.

Номер сегмента S = 8 – 6 = 2.

Номер шага квантования

Остаток 125 – 95 = 30

1-й способ.

Семиразрядное ( C – 1 = 7 ) Двоичное представление остатка — 0011110. Исключая последние два знака, получаем код шага квантования wxyz = 0011.

2-й способ.

N = 30 < 2^{C-2} = 2^{6}, тогда w = 0 N_{1} = N = 30 ;

N_{1} = 30 < 2^{5}, то y = 0 N_{2} = N_{1} = 30 ;

N_{2} = 30 > 2^{4}, то x = 1 N_{3} = N_{2} - 23 = 30 - 16 = 14 ;

N_{3} = 14 > 2^{3}, то z = 1 ;

wxyz = 0011.

Полный восьмиразрядный формат равен 0 010 0011.

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >
Павел Ковалёв
Павел Ковалёв
Кристина Руди
Кристина Руди