Импульсно-кодовое преобразование
Алгоритм компандирования по A-закону
Процесс компандирования при современных параметрах микросхем может осуществляться с помощью постоянных запоминающих устройств прямым табличным преобразованием. Однако существуют алгоритмы, позволяющие делать другое преобразование путем несложного пересчета.
Алгоритм определения составляющих формата компандирования по рис. 8.6 для числа иллюстрируется таблицей 8.3 и выполняется в следующем порядке.
В таблице показана линейная комбинация, содержащая старшие разряды величины отсчета. указывает номер шага квантования, прочерки указывают на те разряды, которые могут быть пропущены в связи с уменьшением точности для данной величины отсчета.
- Знак определяется согласно знаку заданного числа N и кодируется следующим образом:
0 — положительная величина отсчета,
1 — отрицательная величина.
- Номер сегмента
Находится такое минимальное из возможных число
, что
(точнее,
).
Номер сегмента определяется как
.
- Номер шага
Номер шага квантования может быть определен несколькими способами.
1-й способ. После определения номера сегмента вычисляется следующая разность:
.
Эта разность переводится в двоичную форму, содержащую
разряд, и в конце двоичной комбинации удаляются
младших разрядов. Что дает
.
2-й способ. Определяются разряды номера шага, а именно
.
определяется следующим образом.
a. Сравниваются числа и
.
Если , то
. Устанавливается новое число
и выполняется шаг
этого алгоритма, в другом случае (
)
, вычисляется
и выполняется пункт
этого алгоритма.
Далее сравниваются числа и
.
Если , то
. Устанавливается новое число
и выполняется следующий шаг этого алгоритма, в другом случае (
)
и вычисляется
и выполняется следующий шаг этого алгоритма.
Далее аналогичная процедура выполняется на следующих шагах для и
.
Рассмотрим несколько примеров компандирования отсчетов.
Предположим, нам надо получить все характеристики значения отсчета 68.
Минимальное число, удовлетворяющее условию:
это .
Тогда десятичный номер сегмента равен (или двоичное значение 010). Далее вычисляем остаток:
.
Вычислим номер разряда первым способом. Двоичное значение для 6
оставшихся разрядов равно 000011, поскольку
. Исключаем два последних разряда в двоичном представлении, получаем код шага квантования
. Полный восьмиразрядный формат равен 0 010 0000.
Вычислим номер разряда вторым способом.
.
Рассмотрим число 125.
Из неравенства получаем
.
Номер сегмента .
Остаток .
Первый способ.
Двоичное представление остатка . Исключая последние два знака, получаем код шага квантования
.
Второй способ.
.
.