Дифференциальная импульсно–кодовая модуляция

В простейшем варианте передачи цифровой информации по каналу связи передаются значения цифрового кода каждого отсчета сигнала в виде последовательности импульсов. Такой способ передачи называется импульсно–кодовой модуляцией (И К М).

Если между отдельными отсчетами имеется корреляционная связь, то количество передаваемой информации можно сократить. Большая группа методов сокращения статистической избыточности основана на разностном кодировании телевизионного сигнала. Наиболее распространенным методом разностного кодирования является дифференциальная импульсно–кодовая модуляция (ДИКМ), при которой по каналу связи передается разность между действительным значением текущего отсчета сигнала и значением этого же отсчета, предсказанным по предыдущим отсчетам. Такой метод кодирования называется еще кодированием с предсказанием.

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

Для предсказания значения отсчета можно использовать корреляционные связи между отсчетами одной строки, соседних строк и следующих друг за другом кадров. При этом в кодере и декодере должны быть запоминающие устройства на несколько элементов, на несколько строк или на несколько кадров, соответственно.

Ознакомимся сначала с основными принципами ДИКМ. Структурная схема простейшего варианта системы с ДИКМ приведена на рис.6.1.

кванто
-
ватель
канал
связи
)
(
n
x
t
t
)
(
n
y
)
(
n
x
)
(
n
S
)
(
'
n
S
)
(
'
'
n
S
)
(
n
y
 

Рис.6.1. Структурная схема системы с ДИКМ без обратной связи в кодере

В этом устройстве в качестве блока предсказания используется блок задержки на Δt. Если Δtравно периоду дискретизации, то в качестве предсказанного значения текущего отсчета используется значение предыдущего отсчета. Если Δtравно периоду строчной развертки, предсказанное значение берется равным значению соответствующего отсчета предыдущей строки. Если же Δtравно периоду кадровой развертки, предсказанное значение берется равным значению соответствующего отсчета предыдущего кадра.

Система состоит из кодирующей части (кодера), канала связи и декодирующей части (декодера). На вход кодера поступает последовательность отсчетов входного сигнала х(п). Входной сигнал может быть как в цифровой форме, так и в дискретно–аналоговой. При величинах Δt, равных периоду строчной или кадровой развертки, входной сигнал, как правило, цифровой.

В вычитателе определяется разность предсказанного и действительного значений текущего сигнала, равная S(n) = х(п) · х(п–1) в случае задержки на один отсчет. Затем эта разность поступает в квантователь. Так как величина S(n), как правило, невелика, то для передачи ее значений по каналу связи требуется меньше разрядов квантования, чем для передачи значений отсчетов исходного сигнала. Например, для непосредственной передачи телевизионного сигнала требуется 8 бит на отсчет, а для передачи его приращений достаточно от 3 до 5 бит на отсчет. За счет этого и достигается уменьшение скорости передачи двоичных символов и, следовательно, уменьшение требуемой ширины полосы канала связи. Таким образом, в квантователе осуществляется уменьшение количества двоичных разрядов величины S(n), в результате чего получается передаваемый по каналу связи сигнал S'(n).

На вход приемной части системы поступает сигнал S"(n), прошедший канал связи. В декодере происходит формирование выходного сигнала y(n) в соответствии с соотношением y(n) = у(п –1) + S"(n). Получим общее выражение для выходного сигнала у(п), учитывающее ошибки, возникающие в системе передачи с ДИКМ. Будем считать, что ошибок в самом канале связи нет, то есть S"(n) = S(n). Тогда источником ошибок е(п) в системе будет квантователь

S′(n) = S(n) + e(n) .(6.1)

Выходной сигнал имеет вид

n n

Y(n) = y(0)+∑S ' (k) =y(0)+∑[S(k)+e(k)]=

k=1 k=1

n n n

= y(0) + ∑ [x( k)–x(k−1)] +∑e(k)=y(0) -x(0)+x (n)+ ∑+e(k). (6.2)

k=1 k=1 k=1

Следует отметить, что выходной сигнал у(п) обычно имеет столько же разрядов квантования, как и входной сигнал х(п). Требуемое количество разрядов квантования восстанавливается в накапливающем сумматоре в декодере.

Начальные значения x(0) и y(0) могут быть установлены равными между собой. В этом случае выходной и входной сигналы будут различаться между собой на сумму ошибок, вносимых квантователем за все время передачи сигнала.

Причины появления ошибок и их влияние на входной сигнал поясняются с помощью таблицы 6.1 значений отсчетов входного сигнала х(n), передаваемого разностного значения S'(n) и выходного сигнала у(n).

Табл.6.1

n
x(n)
S'(n) –3 –1
y(n)

Предполагается, что отсчеты сигналов х(п) и у(п) представляются 8-разрядными двоичными словами. То есть в десятичной форме их значения представляются числами от 0 до 255. Разность S'(n) представляется 5-разрядными двоичными числами, причем старший бит дает информацию о знаке, так как приращение сигнала может быть и положительным, и отрицательным. Поэтому передаваемые значения разности S'(n) могут быть от –15 до 15. Предполагается также, что шаг квантования S'(n) такой же, как х(п).

Из табл. 6.1 видно, что при п=1...5 модуль приращения х(п) за один период дискретизации не превышает 15, и выходной сигнал y(n) точно повторяет х(п). При n=6 приращение х(п) равно 30, а по каналу связи передается максимально возможное значение S'(n)=15. В результате в выходном сигнале возникает ошибка, которая в дальнейшем не компенсируется, а остается во всех отсчетах у(п). При n = 9 возникает еще одна ошибка, которая складывается с первой.

Таким образом, в выходном сигнале происходит накопление ошибок.

Для повышения точности системы с ДИКМ в кодер вводят обратную связь (рис. 6.2).

кванто
-
ватель
канал
связи
)
(
n
y
предска
затель
предска
затель
)
(
'
'
n
р
)
(
'
n
р
)
(
n
x
)
(
n
S
)
(
'
n
S
)
(
'
'
n
S
)
(
'
n
x

Рис.6.2. Структурная схема системы с ДИКМ с петлей обратной связи в кодере

Вычитатель в кодере формирует разность входного значения х(п) и предсказанного значения p '(n) :S(n)=x(n)–p’(n).

Квантователь преобразует значения S(n) в значения S'(n) с меньшим количеством бит на отсчет, которые передаются по каналу связи. Декодер принимает значения сигнала S"(n).

Предсказатели в кодере и декодере работают по идентичным алгоритмам. Кроме того, в кодере появился сумматор, выполняющий накопление поступающих на него разностных значений, аналогичных сумматору в декодере. Пусть в качестве предсказанного значения пользуется предыдущее значение сигнала на входе блока предсказателя.

Тогда для сигналов в кодере можно записать следующие соотношения:

S(n) = x(n) − p′(n) = x(n) − x′(n −1) , (6.3)

X′(n)= S′(п) +p′(п) =S′(n) +x′(п-1). (6.4)

При появлении приращения S(n), выходящего за пределы диапазона допустимых значений S'(n), возникает ошибка.

E (n) = S′(n) –S(n).− (6.5)

Предположим, что до n–го такта ошибок не было. Тогда для всех k<n имеем: S'(k) = S(k);x′(k) <x(k) . Так как предполагается, что в канале связи ошибок также нет, то и х"(k) = х( k). Пусть в n–м такте возникла ошибка (6.5). Эта ошибка приводит к появлению неправильного значения x′(n) в накопителе.

x′(n) = x′(n −1) + S′(n) = x(n −1) + S(n) + e(n).(6.6)

В следующем такте эта ошибка попадает в контур обратной связи в кодере:

x′(n +1) = x′(n) + S′(n +1) = x(n −1) + S(n) + e(n) +[x(n +1) − x′(n)]=

= x(n −1) + S(n) + e(n) +[x(n +1) − x(n −1) − S(n) −e(n)] . (6.7)

Штрих у квадратных скобок означает, что величина, заключенная в них, проходит квантователь, в котором преобразуется в число с меньшим количеством двоичных разрядов.

Если величина в квадратных скобках в (6.7) не выходит за пределы диапазона возможных значений S'(n), то операция квантования не изменяет ее значения (естественно, с точностью до одного уровня квантования входного цифрового сигнала х(n)). Тогда получаем x′(n +1) = x(n +1),

то есть ошибка скомпенсировалась. Так как в декодере сигнал у(n) формируется по тому же алгоритму, что и сигнал х'(n) в кодере, то компенсация ошибки будет иметь место и на выходе системы с ДИКМ.

В случае, если сразу ошибка не компенсируется, происходит постепенная коррекция ошибки путем передачи увеличенных значений разности S(n) в нескольких следующих периодах дискретизации. Резкие перепады в передаваемом сигнале в такой системе могут несколько сглаживаться, но накопление ошибки не происходит. В табл. 6.2 показано действие обратной связи в кодере в системе ДИКМ для того же входного сигнала, что и в табл. 6.1. Из приведенной таблицы видно, что ошибка, возникшая из–за перегрузки квантователя в такте 6, компенсируется за 2 такта, а ошибка, возникшая в такте 9, за I такт.

Табл.6.2

n
x(n)
S'(n) –3 –1
y(n)

Еще одна причина появления ошибок, распространяющейся на ряд отсчетов выходного сигнала у(n) – помехи в канале связи. По аналогии с (6.2) можно получить соотношение, из которого будет ясно, что ошибки, возникшие в канале связи, накапливаются в выходном сигнале декодера, если не принять мер для их коррекции.

Один из наиболее универсальных методов коррекции ошибок, возникших в канале связи, это использование обратной связи, охватывающей этот канал. В такой системе требуется два канала связи: прямой и обратный. В телевизионном вещании такой подход сопряжен со значительными трудностями и не применяется.

Распространенным методом борьбы с ошибками в канале связи системы с ДИКМ является кодирование с утечкой. В этом случае накапливающие сумматоры в кодере и в декодере работают по алгоритму, аналогичному интегрирующей RC–цепи. Для декодера такой алгоритм может иметь вид

Дифференциальная импульсно–кодовая модуляция - student2.ru ,

где обозначения соответствуют рис. 6.2, постоянная m показывает скорость спада в интеграторе вклада ранее принятых значений. Если в каком–то такте в канале связи возникла ошибка, то примерно через 3m тактов вклад этой ошибки в выходной сигнал спадет до нуля. Так как в кодере сигнал х(n) в цепи обратной связи формируется аналогично (3.8), выходной сигнал у(n) будет близок к передаваемому сигналу y(n).

Можно показать, что введение утечки в накапливающих сумматорах снижает эффективность ДИКМ, то есть требует увеличения скорости передачи двоичных символов в канале связи. Как следует из общих теорем теории связи, такова плата за всякий способ увеличения помехоустойчивости.

Еще один распространенный способ повышения помехоустойчивости систем с ДИКМ – передача с определенной периодичностью опорных отсчетов с использованием обычной ИКМ. После приема каждого такого отсчета в декодере формирование выходного сигнала по принимаемым разностным значениям начинается заново. Все накопившиеся к этому моменту ошибки аннулируются. В телевидении этот метод согласуется с необходимостью периодически передавать опорный кадр без межкадрового предсказания, чтобы можно было начинать прием передачи в любой момент времени. Конкретная реализация такого подхода в системах цифрового телевидения будет рассмотрена позже.

Наши рекомендации