Как кодируют сигнал. Open Library - открытая библиотека учебной информации. Дифференциальное манчестерское кодирование

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

Простейшим способом кодирования формы сигнала является так называемая импульсно-кодовая модуляция ИКМ (или PCM – Pulse Code Modulation), при использовании которой производятся просто дискретизация и равномерное квантование входного сигнала, а также преобразование полученного результата в равномерный двоичный код.

Для речевых сигналов со стандартной для передачи речи полосой 0,3 – 3,5 кГц обычно используют частоту дискретизации F дискр ³2F max = 8 кГц. Экспериментально показано, что при равномерном квантовании для получения практически идеального качества речи нужно квантовать сигнал не менее чем на ± 2000 уровней, иными словами, для представления каждого отсчета понадобится 12 бит, а результирующая скорость кода будет составлять

R = 8000 отсчетов/с * 12 бит/отсчет = 96000 бит/с = 96 кбит/с.

Используя неравномерное квантование (более точное для малых уровней сигнала и более грубое для больших его уровней, таким образом, чтобы относительная ошибка квантования была постоянной для всех уровней сигнала ), можно достичь того же самого субъективного качества восстановления речевого сигнала, но при гораздо меньшем числе уровней квантования – порядка ± 128 . В этом случае для двоичного представления отсчетов сигнала понадобится уже 8 бит и результирующая скорость кода составит 64 кбит/с.



С учетом статистических свойств речевого сигнала (вида распределения вероятностей мгновенных значений), а также нелинейных свойств слуха, гораздо лучше различающего слабые звуки, оптимальной является логарифмическая шкала квантования, которая и была принята в качестве стандарта еще в середине 60-х годов и сегодня повсеместно используется. Правда, в США и Европе стандарты нелинейного квантования несколько различаются (m-law companding и A-law compression), что приводит к необходимости перекодирования сигналов.

Таким образом, исходной для любого сравнения эффективности и качества кодирования речевых сигналов может служить скорость кода, равная 64 кбит/с.

Следующим приемом, позволяющим уменьшить результирующую скорость кода, может быть попытка предсказать значение текущего отсчета сигнала по нескольким предыдущим его значениям, и далее, кодирование уже не самого отсчета, а ошибки его предсказания – разницы между истинным значением текущего отсчета и его предсказанным значением . Если точность предсказания достаточно высока, то ошибка предсказания очередного отсчета будет значительно меньше величины самого отсчета и для ее кодирования понадобится гораздо меньшее число бит. Таким образом, чем более предсказуемым будет поведение кодируемого сигнала, тем более эффективным будет его сжатие.

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

x* i = x i –1 , e i = x i - x* I . (8.10)

Это так называемое предсказание нулевого порядка , самое простое, но и наименее точное. Более точным, очевидно, будет предсказание текущего отсчета на основе линейной комбинации двух предшествующих и т.д.:

x* i = å a k x i – k , e i = x i - x* I . (8.11)

К сожалению, точность предсказания не всегда растет с ростом порядка предсказания, поскольку свойства сигнала между отсчетами начинают уже изменяться, поэтому обычно ограничиваются предсказанием не выше 2 – 3-го порядка.

На рис. 8.16 и 8.17 приведены схемы ДИКМ кодера и декодера.

При кодировании речевых сигналов с учетом степени их кратковременной (на несколько очередных отсчетов) предсказуемости результирующая скорость кода для ДИКМ (DPCM ) обычно составляет 5 – 6 бит на отсчет или 40 – 48 кбит/с.

Эффективность ДИКМ может быть несколько повышена, если предсказание и квантование сигнала будет выполняться не на основе некоторых усредненных его характеристик, а с учетом их текущего значения и изменения во времени, то есть адаптивно. Так, если скорость изменения сигнала стала большей, можно увеличить шаг квантования, и, наоборот, если сигнал стал изменяться гораздо медленнее, величину шага квантования можно уменьшить. При этом ошибка предсказания уменьшится и, следовательно, будет кодироваться меньшим числом бит на отсчет. Такой способ кодирования называется адаптивной ДИКМ , или АДИКМ (ADPCM ). Сегодня такой способ кодирования стандартизован и широко используется при сжатии речи в междугородных цифровых системах связи, в системе микросотовой связи DECT , в цифровых бесшнуровых телефонах и т.д. Использование АДИКМ со скоростью кода 4 бита/отсчет или 32 кбит/с обеспечивает такое же субъективное качество речи, что и 64 кбит/с - ИКМ , но при вдвое меньшей скорости кода.

На сегодня стандартизованы также АДИКМ – кодеки для скоростей 40, 24 и 16 кбит/с (в последнем случае с несколько худшим, чем для 32 кбит/с – АДИКМ, качеством сигнала). Таким образом, видно, что сжатие речевых сигналов на основе кодирования их формы обеспечивает в лучшем случае двух - трехкратное уменьшение скорости кода. Дальнейшее снижение скорости ведет к резкому ухудшению качества кодируемого сигнала.

Описанные выше кодеры формы сигнала использовали чисто временной подход к описанию этого сигнала. Однако возможны и другие подходы. Примером может служить так называемое кодирование поддиапазонов (Sub-Band Coding - SBC ), при котором входной сигнал разбивается (или расфильтровывается) на несколько частотных диапазонов (поддиапазонов - sub-bands) и сигнал в каждом из этих поддиапазонов кодируется по отдельности, например, с использованием техники АДИКМ .

Поскольку каждый из частотных поддиапазонов имеет более узкую полосу (все поддиапазоны в сумме дают полосу исходного сигнала), то и частота дискретизации в каждом поддиапазоне также будет меньше. В результате суммарная скорость всех кодов будет по крайней мере не больше, чем скорость кода для исходного сигнала. Однако у такой техники есть определенные преимущества. Дело в том, что субъективная чувствительность слуха к сигналам и их искажениям различна на разных частотах. Она максимальна на частотах 1 - 1,5 кГц и уменьшается на более низких и более высоких частотах. Таким образом, если в диапазоне более высокой чувствительности слуха квантовать сигнал более точно, а в диапазонах низкой чувствительности более грубо, то можно получить выигрыш в результирующей скорости кода. Действительно, при использовании технологии кодирования поддиапазонов получено хорошее качество кодируемой речи при скорости кода 16 – 32 кбит/с. Кодер получается несколько более сложным, чем при простой АДИКМ, однако гораздо проще, нежели для других эффективных способов сжатия речи.

Упрощенная схема подобного кодера (с разбиением на 2 поддиапазона) приведена на рис. 8.18.

Близким к кодированию поддиапазонов является метод сжатия, основанный на применении к сигналу линейных преобразований, к примеру, дискретного косинусного или синусного преобразования. Для кодирования речи используется так называемая технология ATC (Adaptive Transform Coding), при которой сигнал разбивается на блоки, к каждому блоку применяется дискретное косинусное преобразование и полученные коэффициенты адаптивно, в соответствии с характером спектра сигнала, квантуются.

Чем более значимыми являются коэффициенты преобразования, тем большим числом бит они кодируются. Техника очень похожа на JPEG , но применяется к речевым сигналам. Достигаемые при таком кодировании скорости кодов составляют 12 – 16 кбит/с при вполне удовлетворительном качестве сигнала. Широкого распространения для сжатия речи этот метод не получил, поскольку известны гораздо более эффективные и простые в исполнении методы кодирования.

Рис. 8.18. Схема, поясняющая кодирование поддиапазонов

Следующим большим классом кодеров речевых сигналов являются кодеры источника.

Кодирование источника

В отличие от кодеров формы сигнала , вообще не использующих информацию о том, как был сформирован кодируемый сигнал, кодеры источника основываются именно на модели источника и из кодируемого сигнала извлекают информацию о параметрах этой модели. При этом результатом кодирования являются не коды сигналов, а коды параметров источника этих сигналов. Кодеры источника для кодирования речи называются вокодерами (VOice CODERS) и работают примерно следующим образом. Голосообразующий тракт представляется как линейный фильтр с переменными во времени параметрами, возбуждаемый либо источником белого шума (при формировании согласных звуков), либо последовательностями импульсов с периодом основного тона (при формировании гласных звуков) – рис. 8.19 .

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

Информация, которую получает вокодер в результате анализа речевого сигнала и передает декодеру, это параметры речеобразующего фильтра, указатель гласный/негласный звук, мощность сигнала возбуждения и период основного тона для гласных звуков . Эти параметры должны обновляться каждые 10 – 20 мс, чтобы отслеживать нестационарность речевого сигнала.

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

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

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

Для сегментов речи длиной примерно в 20 - 30 мс с помощью набора узкополосных фильтров определяется амплитудный спектр. Чем больше фильтров, тем лучше оценивается спектр, но тем больше нужно бит для его кодирования и тем больше результирующая скорость кода. Сигналы с выходов фильтров детектируются, пропускаются через ФНЧ, дискретизуются и подвергаются двоичному кодированию (рис. 8.20).

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

Канальный вокодер может быть реализован как в цифровой, так и в аналоговой форме и обеспечивает достаточно разборчивую речь при скорости кода на его выходе порядка 2,4 кбит/с.

Рис. 8.20. Схема начального вокодера

Декодер (рис. 8.21), получив информацию, вырабатываемую кодером, обрабатывает ее в обратном порядке, синтезируя на своем выходе речевой сигнал, в какой-то мере похожий на исходный.

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

Синтезированная речь

Гомоморфный вокодер. Гомоморфная обработка сигналов представляет собой один из нелинейных методов обработки, который может эффективно применяться к сложным сигналам, например к речевым.

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

log(|S(e jw)|) = log(|P(e jw)|) + log(|V(e jw)|, (8.12)

где S(e jw) - спектр речи, P(ejw) спектр сигнала возбуждения и V(ejw) - частотная характеристика голосового тракта.

Если теперь выполнить над log(|S(e jw)|) обратное преобразование Фурье (ОПФ ), то получим так называемый кепстр сигнала. Параметры голосового тракта изменяются во времени сравнительно медленно (их спектр находится в области низких частот - НЧ), тогда как сигнал возбуждения – быстроосциллирующая функция (ее спектр сосредоточен в области высоких частот - ВЧ). Поэтому в кепстре речевого сигнала эти составляющие разделяются (рис. 8.22) и могут быть закодированы по отдельности.

Рис. 8.22. Представление речевого сигнала в виде НЧ и ВЧ составляющих

Схема гомоморфного кодера/декодера речи приведена на рис. 8.23, с его использованием можно получить скорость кода порядка 4 кбит/с.

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

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

Рис. 8.23. Схема гомоморфного кодера/декодера

В ЛПК-вокодере речевой сигнал делится на блоки длиной около 20 мс, для каждого из которых определяются коэффициенты предсказывающего фильтра. Эти коэффициенты квантуются и передаются декодеру. Затем речевой сигнал пропускается через фильтр, частотная характеристика которого обратна частотной характеристике голосового тракта. На выходе фильтра получается ошибка предсказания. Назначение предсказателя – устранить корреляцию между соседними отсчетами сигнала. В результате гораздо отчетливее проявляется долговременная корреляция в сигнале, что позволяет точнее определить частоту основного тона и выделить признак гласный/согласный звук.

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

Методы кодирования цифровых сигналов

Форматы кодов

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

  • Формат БВН (без возвращения к нулю) естественным образом соответствует режиму работы логических схем. Единичный бит передается в пределах такта уровень не меняется. Положительный перепад означает переход из 0 к 1 в исходном коде, отрицательный - от 1 к 0. Отсутствие перепадов показывает, что значения предыдущего и последующего битов равны. Для декодирования кодов в формате БВН необходимы тактовые импульсы, так как в его спектре не содержится тактовая частота. Соответствующий коду формата БВН сигнал содержит низкочастотные компоненты (при передаче длинных серий нулей или единиц перепады не возникают).
  • Формат БВН-1 (без возвращения к нулю с перепадом при передаче 1) является разновидностью формата БВН. В отличие от последнего в БВН-1 уровень не передает данные, так как и положительные и отрицательные перепады соответствуют единичным битам. Перепады сигнала формируются при передаче 1. При передаче 0 уровень не меняется. Для декодирования требуются тактовые импульсы.
  • Формат БВН −0 (без возвращения к нулю с перепадом при передаче 0) является дополнительным к БВН-1 (перепады соответствуют нулевым битам исходного кода). В многодорожечных системах записи цифровых сигналов вместе с кодом в формате БВН надо записывать тактовые импульсы. Возможным вариантом является запись двух дополнительных сигналов, соответствующих кодам в форматах БВН-1 и БВН-0. В одном из двух сигналов перепады происходят в каждом такте, что позволяет получить импульсы тактовой частоты.
  • Формат ВН (с возвращением к нулю) требует передачи импульса, занимающего только часть тактового интервала (например, половину), при одиночном бите. При нулевом бите импульс не формируется.
  • Формат ВН-П (с активной паузой) означает передачу импульса положительной полярности при единичном бите и отрицательной - при нулевом бите. Сигнал этого формата имеет в спектре компоненты тактовой частоты. Он применяется в ряде случаев для передачи данных по линиям связи.
  • Формат ДФ-0 (двухфазный со скачком фазы при передаче 0) соответствует способу представления, при котором перепады формируются в начале каждого такта. При единичных битах сигнал в этом формате меняется с тактовой частотой, то есть в середине каждого такта происходит перепад уровня. При передаче нулевого бита перепад в середине такта не формируется, то есть имеет место скачок фазы. Код в данном формате обладает возможностью самосинхронизации и не требует передачи тактовых сигналов.

Направление перепада при передаче сигнала единицы не имеет значения. Поэтому изменение полярности кодированного сигнала не влияет на результат декодирования. Он может передаваться по симметричным линиям без постоянной составляющей. Это также упрощает его магнитную запись. Этот формат известен также под названием «Манчестер 1». Он используется в адресно-временном коде SMPTE, широко применяющемся для синхронизации носителей звуковой и видеоинформации.

By Northwest (Serov, CMT)

Бинарное кодирование

Без возврата к нулю

Потенциальное кодирование, также называется кодированием без возвращения к нулю (NRZ). При передаче нуля он передает потенциал, который был установлен на предыдущем такте (то есть не меняет его), а при передаче единицы потенциал инвертируется на противоположный. Этот код называется потенциальным кодом с инверсией при единице (NRZI).

NRZ

Потенциальный код NRZ (перевёрнутый)

Для передачи единиц и нулей используются два устойчиво различаемых потенциала:
NRZ (прямой) :

  • биты 0 представляются нулевым напряжением 0 (В);
  • биты 1 представляются значением U (В).

NRZ (перевёрнутый):

  • биты 0 представляются значением U (В);
  • биты 1 представляются нулевым напряжением 0 (В).

NRZI

Потенциальный код NRZI

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

Достоинства метода NRZ:

Простота реализации.

Метод обладает хорошей распознаваемостью ошибок (благодаря наличию двух резко отличающихся потенциалов).

Основная гармоника f0 имеет достаточно низкую частоту (равную N/2 Гц, где N - битовая скорость передачи дискретных данных [бит/с]), что приводит к узкому спектру.

Недостатки метода NRZ:

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

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

Манчестерское кодирование

Манчестерское кодирование

При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала в середине каждого такта. Единица кодируется перепадом от низкого уровня сигнала к высокому, а ноль - обратным перепадом (по стандарту IEEE 802.3, хотя по Д.Е. Томасу кодирование происходит наоборот). В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколько единиц или нулей подряд. Так как сигнал изменяется по крайней мере один раз за такт передачи одного бита данных, то манчестерский код обладает хорошими самосинхронизирующими свойствами. У манчестерского кода нет постоянной составляющей (меняется каждый такт), а основная гармоника в худшем случае (при передаче последовательности единиц или нулей) имеет частоту N Гц, а в лучшем случае (при передаче чередующихся единиц и нулей) - N/2 Гц, как и у NRZ. В среднем ширина спектра при манчестерском кодировании в два раза шире чем при NRZ кодировании.

Дифференциальное манчестерское кодирование

Дифференциальное манчестерское кодирование

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

Тринарное кодирование

(c возвратом к нулю)

То есть каждый бит передается 3-мя уровнями напряжения. Поэтому требует в 2 раза больше скорости по сравнению с обычной скоростью. Это квазитроичный код, то есть изменение сигнала происходит между 3-мя уровнями.

Биполярный код AMI

Биполярный код AMI

AMI-код использует следующие представления битов:

  • биты 0 представляются нулевым напряжением (0 В);
  • биты 1 представляются поочерёдно значениями -U или +U (В).

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

HDB3

Код HDB3 исправляет любые 4 подряд идущие нули в исходные последовательности. Правило формирования кода следующее: каждые 4 нуля заменяются 4 символами в которых имеется хотя бы один сигнал V. Для подавления постоянной составляющей полярность сигнала V чередуется при последовательных заменах. Для замены используются два способа: 1)если перед заменой исходный код содержал нечётное число единиц то используется последовательность 000V, если чётное то 100V

V-cигнал единицы запрещённого для данного сигнала полярности

Тоже что и AMI, только кодирование последовательностей из четырех нулей заменяется на код -V, 0, 0, -V или +V, 0, 0, +V - в зависимости от предыдущей фазы сигнала.

MLT-3

MLT-3 Multi Level Transmission - 3 (многоуровневая передача) - метод кодирования, использующий три уровня сигнала. Метод основывается на циклическом переключении уровней -U, 0, +U. Единице соответствует переход с одного уровня сигнала на следующий. Так же как и в методе NRZI при передаче «нуля» сигнал не меняется. В случае наиболее частого переключения уровней (длинная последовательность единиц) для завершения цикла необходимо четыре перехода. Это позволяет вчетверо снизить частоту несущей относительно тактовой частоты, что делает MLT-3 удобным методом при использовании медных проводов в качестве среды передачи. Метод разработан Cisco Systems для использования в сетях FDDI на основе медных проводов, известных как CDDI. Также используется в Fast Ethernet 100BASE-TX.

Тетрарное кодирование

Потенциальный код 2B1Q

Потенциальный код 2B1Q

Код 2B1Q передает пару бит за один битовый интервал. Каждой возможной паре в соответствие ставится свой уровень из четырех возможных уровней потенциала. Паре
00 соответствует потенциал −2.5 В,
01 соответствует −0.833 В,
11 - +0.833 В,
10 - +2.5 В.

В процессе кодирования амплитуда каждого квантованного по уровню АИМ отсчета представляется в виде двоичной последова­тельности, содержащей символов (-разрядной кодовой ком­бинации). Для определения структуры комбинации в простейшем случае нужно в двоичном коде записать амплитуду АИМ от­счета " , выраженную в шагах квантования. В этом случае можно воспользоваться соотношением.

где а,= {0, 1}-состояние соответствующего разряда комбинации; - вес соответствующего разряда в условных шагах квантования.

Например, если =5, а = 26, то кодовая комбинация будет иметь структуру 11010 (первый разряд--старший по весу), так ак. Последовательность-разрядных кодовых комбинаций представляет собой груп­повой сигнал с ИКМ, называемый также цифровым.

На рис. 5.16 приведены временные диаграммы, поясняющие процесс кодирования при использовании пятиразрядного двоич­ного кода. Амплитуда отсчетов, поступающих на вход кодера, в данном случае может принимать значения в диапазоне = 0-31 условных шагов квантования, а на выходе кодера форми­руется цифровой сигнал с ИКМ, представляющий собой последо­вательность пятиразрядных кодовых комбинаций.

Как было показано выше, для качественной передачи телефон­ных сигналов при неравномерном квантовании необходимо исполь­зовать восьмиразрядный код (=8, а при равномерном- 12-раз­рядный (=12). На практике находят применение двоичные коды следующих типов: натуральный двоичный, код, симметричный двоичный код, рефлексный двоичный код (код Грея).

Симметричный двоичный код в основном исполь­зуется при кодировании двуполярных сигналов (например, телефонных). На рис. 2.17 показаны структура кода и кодовая таблица, соответствующая данному коду. Для всех положительных I отсчетов знаковый символ имеет значение 1, а для отрицатель-I ных 0. Для положительных и отрицательных отсчетов, равных по I амплитуде, структуры кодовых комбинаций полностью совпадают I (за исключением знакового разряда), т. е. код является симметричным. Например, максимальному положительному сигналу ответствует код 11111111, а максимальному отрицательному-01111111. Абсолютное значение шага квантования■ Натуральный двоичный код в основном используется I при кодировании однополярных сигналов. На рис. 2.18 показаны структура кода и кодовая таблица, соответствующая данному коду (при =8).

Рис. 2.17. Формирован ие симметричного двоичного кода

Очевидно, что число комбинаций различной структуры равно 256, причем минимальному сигналу соответствует комбинация 00000000, а максимальному-11111111, Абсолютное значение шага квантования

С помощью натурального двоичного кода можно кодировать и-двуполярные сигналы, обеспечив предварительно их смещение, как. показано на рис. 5.17. В этом случае, очевидно, изменяется ампли­туда кодируемых отсчетов, причем переход от амплитуды от­счета, выраженной в шагах квантования, при использовании симметричного кода к амплитуде этого же отсчетапри исполь­зовании натураль-ного кода и наоборот можно осуществить сле­дующим образом (рис. 2.17 и 2.18):



Натуральный и симметричный двоичные коды являются наи­более простыми. Как для натурального, так и для симметричного кода ошибка в одном из символов может привести к значительным искажениям сигнала. Если, в кодовой комбинации вида 11010011 ошибка произошла в пятом разряде; т. е. принята комбинация 11000011, то амплитуда отсчета будет меньше истин­ного значения на =16 условных шагов квантования. Рассмотрим принципы построения кодирующих и декодирую­щих устройств, которые могут быть линейными и нелинейными. Линейным кодированием называется кодирование равномерно квантованного сигнала, а нелинейным - неравномерно кван­тованного сигнала. Код, формируемый в кодере, называется параллельным, если сигналы, входящие в со­став m-разрядной кодовой группы, появляются на разных выхо­дах кодера одновременно, причем каждому выходу кодера соот­ветствует сигнал определенного разряда. Код называется после­довательным, если все сигналы, входящие в состав т-раз рядной кодовой группы, появляются на одном выходе кодера поочередно со сдвигом по времени,

Рис. 2.18. Формирование натурального двоичного кода

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

Рис. 2.19. Принципы преобразования па- Рис. 2.20. Линейный кодер поразряд-раллельного кода в последовательный ного взвешивания (а) и наоборот (б)


Запись и считывание инфор­мации из регистра осуществляется под управлением сигналов, поступающих от генераторного оборудования.

По принципу действия кодеры делятся на кодеры счетного типа, матричные, взвешивающего типа и др. В ЦСП чаще всего используются кодеры взвешивающего типа, среди которых про­стейшим является кодер поразрядного взвешивания (рис. 2.20), на выходах которого формируется натуральный двоичный код. Принцип работы таких кодеров заключается в уравновешивании кодируемых отсчетов суммой эталонных токов (напряжений) с оп­ределенными весами. Схема линейного кодера поразрядного взве­шивания содержит восемь ячеек (при =8), обеспечивающих формирование значения соответствующего разряда (1 или 0). В со­став каждой ячейки (за исключением последней, соответствующей младшему по весу разряду) входят схема сравнения СС (компа­ратор) и схема вычитания (СВ).

Схемы сравнения обеспечивают сравнение амплитуды посту­пающего АИМ сигнала с эталонными сигналами, амплитуды ко­торых соответствуют весам соответствующих разрядов (= =. Если амплитуда сигнала на входе СС, равна или превышает , то на выходе форми­руется 1 (импульс), виз сигнала вычитается , после чего он поступает на вход следующей ячейки. Если амплитуда сигнала на входе меньше , то на выходеформируется 0 (про­бел) и сигнал проходит через без каких-либо изменений. После окончания процесса кодирования данного отсчета на выхо­дах кодера получают восьмиразрядный параллельный код, кодер устанавливается в исходное положение и начинается процесс ко­дирования следующего отсчета. Таким образом, процесс кодиро­вания соответствует операции взвешивания (амплитуда кодируе­мого отсчета в процессе кодирования уравновешивается суммой эталонных значений соответствующих разрядов).

Если, например, на вход кодера поступает отсчет с амплиту­дой , то ССб формирует = 1 и на вход седьмой ячейки поступит сигнал с амплитудой. На выходеполучим=0, и на вход третьей ячейки кодера посту­пит сигнал с той же амплитудой. На выходе СС 6 полу­чим= 1, и на вход следующей ячейки поступит сигнал с= 1 =и т. д. В результате будет сформирована кодовая комбинация вида 10101110 (первый разряд - старший по весу).

При кодировании двуполярных сигналов в кодере необходимо иметь две схемы формирования эталонов, (ФЭ) для кодирования положительных и отрицательных отсчетов.

В процессе декодирования сигнала-разрядные кодовые ком­бинации преобразуются в АИМ отсчеты с соответствующими ам­плитудами. Сигнал на выходе декодера может быть получен в результате суммирования эталонных сигналов () тех разрядов кодовой комбинации, значение которых равно 1. Так, если на вход декодера поступает кодовая комбинация 10101110, то амплитуда АИМотсчета на выходе декодера =174δ


Рис. 2.21 Линейный декодер взвеши- Рис. 2.22 Линейный кодер
вающего типа с обратной связью

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

соответствуют разрядам, имеющим значение 1. В результате на вход сумматора от формирователя эталонных сигналов (ФЭ) по­ступают соответствующие эталонные сигналы, в результате чего на выходе сумматора формируется АИМ отсчет с определенной амплитудой.

Очевидно, что если в процессе передачи цифрового сигнала по линейному тракту в одном (или больше) разряде кодовой комби­нации произойдет ошибка, то амплитуда отсчета на выходе деко­дера будет отличаться от истинного значения. Если, например, в комбинации 10101110 произойдет ошибка в Р 6 , т. е. на вход де­кодера поступит комбинация 10001110, то амплитуда отсчета на i выходе декодера , т. е. на меньше истинной амплитуды отсчета, равной Рассмотренная схема кодера поразрядного взвешивания содержит большое число схем сравнения, которые являются относительно сложными устройствами. На практике чаще используется I кодер взвешивающего типа с использованием одной схемы сравнения и цепи обратной связи, содержащей декодер (рис. 5.22). Под I воздействием управляющего сигнала (), поступающего от генераторного оборудования, на вход декодера от схемы управления в каждом такте последовательно подается с каждого из выходов, начиная со старшего разряда. На выходе декодера В формируется уравновешивающий АИМ сигнал (), который

В поступает на вход СС, где сравнивается с входным АИМ сигналом. В В зависимости от результата сравнения на выходе СС формируется значение текущего разряда: 1 (при) или О (при ).

Рис. 2.23. Принцип формирования эталонных сиг­налов

Этот сигнал поступает на выход декодера и по цепи обратной связи - на вход схемы управления, при­чем при поступлении 1 состояние соответствующего выхода схе­мы управления остается неизменным (1), а при поступлении О также изменяется на 0. В результате через тактов на выхо­дах схемы управления будет сформирована комбинация, для ко­торой (с учетом ошибки квантования).

При построении кодеров и декодеров (см. рис. 5.20 и 5.21) необ­ходимо использовать ФЭ, формирующие набор эталонных сигна­лов, причем соотношение между значениями двух соседних этало­нов равно . Общая идея построения таких устройств заключается в использовании одного высокостабильного эталонного источника сигнала и цепочки схем, имеющих коэффи­циент передачи(Р ис - 5.23). Такие схемы обычно имеют вид матрицы, реализуемой на прецизионных сопротивлениях двух но­миналов ().

В современных ЦСП применяются нелинейные кодирующие и декодирующие устройства (нелинейные кодеки), обеспечивающие кодирование и декодирование сигналов с неравномерной шкалой квантования при восьмиразрядном коде (=8). Для кодирования с неравномерной шкалой квантования могут использоваться сле­дующие способы:

аналоговое компандирование , характеризующееся компрессией динамического диапазона сигнала перед линейным ко­дированием, и экспандированием динамичес- кого диапазона сигнала после линейного декодирования;

нелинейное кодирование , характеризующееся кодированием сигнала в нелинейных кодерах, сочетающих функции аналого-цифрового преобразования и компрессора;

цифровое компандирование , характеризующееся кодированием сигнала в линейном кодере с большим числом разрядов с после­дующей нелинейной цифровой обработкой результата кодирования.

При аналоговом компандировании (рис. 2.24) на входе линей­ного кодера (ЛК) и выходе линейного декодера (ЛД) включаются соответственно аналоговые компрессор (АК) и экспандер (АЭ), обеспечивающие соответствующее нелинейное преобразование ана­логового сигнала (см. рис. 2.15). В качестве базового элемента для построения АК. и АЭ двуполярных сигналов может использо­ваться двухполюсник (рис. 2.25).

Рис. 2.24. Принцип аналогового Рис. 2.25 Нелинейный двухполюсник компандирования анало­говых компандеров

С помощью резисторов обеспе­чиваются выбор нужного режима работы и выравнивание пара­метров схемы для положительных и отрицательных сигналов. Су­щественный недостаток данного способа заключается в том, что очень сложно добиться полностью взаимообратных амплитудных характеристик компрессора и экспандера, вследствие чего суммар­ная амплитудная характеристика системы компрессор-экспандер будет отличаться от линейной (см. рис. 2.15). Это неизбежно при­ведет к нелинейным искажениям передаваемых сигналов. Анало­говое компандирование использовалось на первых этапах разви­тия ЦСП, а в настоящее время не применяется.

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

На рис. 2.26 приведена сегментированная А-характеристика компрессии для положительных сигналов (для области отрица­тельных значений сигнала она имеет аналогичный вид). Формаль­но общее число сегментов на полной характеристике (для отри­цательных и положительных сигналов) составляет 16, однако четыре центральных сегмента (по два в положительной и отрица­тельных областях) фактически образуют один сегмент, вследствие чего фактическое число сегментов равно 13. Поэтому такую харак­теристику называют характеристикой компрессии типа . Каждый из сегментов характеристики (см. рис. 5.26) содержит 16 шагов квантования, а их общее число равно 256 (по 128 для каждой полярности сигнала). При этом принята сле­дующая нумерация сегментов и шагов квантования N m внутри каждого сегмента: =0,1,2,... ,7 и =0, 1, 2,..., 15. Очевидно, что внутри каждого сегмента шаг квантования оказывается по­стоянным, т. е. осуществляется равномерное квантование, а при переходе к сегменту с большим порядковым номером шаг кванто­вания увеличивается в 2 раза, так как наклон сегмента умень­шается вдвое. Самый маленький шаг квантования () соответ­ствует двум первым сегментам (=0, 1) и оказывается равным . Для определения шага квантования в i-м сегмента можно пользоваться соотношением

Таким образом, максимальный шаг квантования (в седьмом сегменте) , т. е. в 64 раза превышает минимальный шаг.

Таким образом, коэффициент компандирования, определяемый как отношение наибольшого шага квантования к наименьшему, ра­вен , а выигрыш в помехозащищенности для слабых сигналов равен

Рис. 2.26. Характеристика компандирования типа А = 87,6/13

Типичная зависимость защищенности от шумов квантования от уровня сигнала (при гармоническом сигнале) для ха­рактеристики /1 = 87,6/13 приведена на рис. 2.27. Для слабых сиг­налов, не выходящих за пределы нулевого и первого сегментов, как видно из рис. 2.27, осуществляется равномерное квантование с минимальным шагом квантованияувеличивается с ростом, При переходе к второму сегменту шаг квантования уве­личивается в 2 раза, т. е. становится равным , вследствие чегорезко уменьшается, а затем в пределах данного сегмента возрастает с ростом, поскольку внутри сегмента осуществляется, равномерное квантование. Такой характер изменениянаблюдается и при переходе ко всем последующим сегментам. После попадания сигнала в зону ограничения защищенность резко па­дает за счет перегрузки кодера.

Структура кодовой комбинации, формируемой на выходе ко­дера с характеристикой А = 87,6/13, имеет вид PXYZABCD, где Р - знаковый символ (1-для положительных сигналов, 0 - для отрицательных); XYZ - символы кода номера сегмента N c \ ABCD - символы кода номера шага внутри сегмента (см. рис. 2.26). Если, например, положительный отсчет на входе кодера имеет амплитуду, соответствующую девятому шагу квантования в шестом сегменте, то на выходе кодера будет сформирована ком­бинация 11101001 (P=l, XYZ=110, так как=6, ABCD = 1001, так как =9).

Рис. 2.27. Зависимость Рис. 2.28. Нелинейный кодер

взвешивающего типа

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

Для кодирования сигнала одной полярности в формирователе эталонных сигналов кодера необходимо формировать 11 эталон­ных сигналов. На рис. 2.28 представлена упрощенная структурная схема нелинейного кодера взвешивающего типа, содержащая схему сравнения (СС), схему переключения и суммирования эталонов (СПСЭ), две схемы формирования эталонных сигналов ( и ) для положительных и отрицательных отсчетов, управляю­щую логическую схему (УЛС). Кодирование осуществляется в те­чение восьми тактов, в каждом из которых формируется один из символов кодовой комбинации. При этом можно выделить три следующих этапа:

формирование знакового символа Р (такт 1);

формирование.кода номера сегмента XYZ (такты 2-4);

формирование кода номера шага внутри сегмента ABCD (так­ты 5-8).

В первом такте определяется знак поступившего на вход ко­дера очередного о.тсчета. Если отсчет положительный, то форми­руется Р=1 и к схеме подключается, а в противном случае формируется Р = 0 и к схеме подключается ФЭ 2 .

Формирование кода номера сегмента осуществляется следую­щим образом (рис. 2.29).

Во втором такте УЛС с помощью СПСЭ обеспечивает подачу на вход СС эталонного сигнала , соответствующего нижней границе четвертого сегмент Если ампли­туда отсчета, то принимается решение, что от­счет попадает в один из четырех старших сегментов (=4 ...7), формируется очередной символ Х=1, который по цепи обратной связи поступает на вход УЛС. Если же, то при­нимается решение, что отсчет попадает в один из четырех младших сегментов (=0... 3), и формируется символ Х = 0, который по цепи обратной связи поступает на вход УЛС.

В третьем такте формируется третий символ комбинации (Y). В зависимости от значения предыдущего символа (X) уточняется номер сегмента, в который попадает кодируемый отсчет. Если Х=1, то УЛС с помощью СПСЭ обеспечивает подачу на вход СС эта­лонного напряжения , соответствующего нижней гра­нице шестого сегмента (см. табл. 5.1). Если , то принимается решение, что отсчет попадает в один из двух старших сегментов (=6 или=7), и формируется очередной символ Y=l, который по цепи обратной связи поступает на вход УЛС. Если , то принимается решение, что отсчет попадает в четвертый или пятый сегмент, и формируется Y = 0. Если Х = 0, то УЛС с помощью СПСЭ обеспечивает по­дачу на вход СС эталонного напряжения, соответствую­щего нижней границе второго сегмента.

Если ,. то принимается решение, что отсчет попадает во второй и третий сегменты, и формируется Y=l. Если, то прини­мается решение, что отсчет попадает в один из двух младших сегментов, и формируется Y = 0.

В четвертом такте кодирования формируется символ Z, т. е. по­следний символ в коде номера сегмента. В зависимости от значе­ний предыдущих символов (XY) окончательно устанавливается номер сегмента, соответствующего данному отсчету. Так, если Х=1 и Y = 0, то включается эталонное напряжение, соответствующее нижней границе пятого сегмента. Если ==, то принимается решение, что отсчет попадает в пятый сегмент, формируется символ Z=l и эталонное напряжение= =остается включенным до конца процесса кодирования данного отсчета. Если , то принимается решение, что отсчет попадает в четвертый сегмент, формируется Z = 0 и до конца процесса кодирования включается, соответствующее нижней границе четвертого сегмента.

Рис. 2.29. Алгоритм формирования кода номера

сегмента

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

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

Так, если на вход кодера поступил положительный отсчет с амплитудой, то после первых четырех тактов сформируются символы PXYZ= 1110 и к СС подключится эталонное напряжение, соответствующее нижней границе шестого сегмента. В пятом такте к этому эталонному сигналу добавится максимальное эталонное напряжение , соответствующее старшему символу (А) в коде номера шага квантования для шестого сегмента. Так как , то формируется символ А = 0 и вместо "" ~~ в шестом такте подключается эталонное напряжение следующего разряда = =. Поскольку, то на выходе СС формируется символ В=1, эталонное напряжение не из­меняется и в следующем седьмом такте подключается эталонное напряжение очередного разряда .

Так как ==, формируется символ С = 0 и эталонное напряжение данного разряда () отключается.

В последнем такте подключается эталонное напряжение младшего символа (D) . Поскольку +-, формируется символ D = l и процесс кодирования данного отсчета заканчивается. Таким образом, на выходе кодера будет сформирована кодовая комбинация 11100101.

Как отмечалось выше, в процессе кодирования могут исполь­зоваться 11 эталонных сигналов, однако к моменту завершения процесса кодирования любого отсчета окажутся включенными не более пяти эталонных сигналов (один из них соответствует ниж­ней границе сегмента, не более четырех - эталонным сигналам в пределах соответствующего сегмента).

Рис. 2.30. Принцип цифрового компандирования

В рассмотренном случае окажутся включенными только три эталонных сигнала (512δ 0 ,128 δ 0 и 32 δ 0). Следует иметь в виду, что амплитуда кодируемого отсчета не всегда может быть точно уравновешена эталонными сигналами, как 1 в рассмотренном примере. В общем случае неизбежно будет возникать ошибка квантования £/ ош.кв, максимальное значение ко­торой равно половине шага квантования в пределах соответствую­щего сегмента, т. е. для нулевого и первого сегмен­тов (для слабых сигналов) идля седьмого сегмента (сильный сигнал).

Рассмотрим особенности третьего способа кодирования с нерав­номерной шкалой квантования, т. е. цифрового компандирования.

При цифровом компандировании (рис. 2.30) осуществляется линейное (равномерное) кодирование (ЛК) с большим числом разрядов (например,=12) с последующим цифровым преобра­зованием (цифровым компрессированием ЦК) с помощью логиче­ских устройств в восьмиразрядный нелинейный код, имеющий ту же структуру, что и при использовании нелинейного кодера с ха­рактеристикой компрессии типа (см. рис. 5.26). Способ преобразования 12-разрядных кодовых комбинаций линейного кода в 8-разрядные комбинации нелинейного кода показан в- табл. 5.2. Первый разряд (Р) остается без изменений и несет информацию о полярности сигнала. Значение символов XYZ, определяющих но­мер сегмента N c , соответствует числу нулей (/) в 12-разрядной комбинации между символом Р и символами АВСД (фактически символы XYZ представляют собой инверсированный натуральный трехразрядный.двоичный код величины ).

После формирования символов XYZ в восьмиразрядном коде символы ABCD переписы­ваются без изменений, а все остальные символы 12-разрядной комбинации отбрасываются вне зависимости от их значения, опре­деляя ошибку квантования.

Таблица 2.2

После формирования символов XYZ в восьмиразрядном коде символы ABCD переписы­ваются без изменений, а все остальные символы 12-разрядной комбинации отбрасываются вне зависимости от их значения, опре­деляя ошибку квантования. На приеме восстановление АИМ сиг­нала осуществляется с помощью цифрового экспандера (ЦЭ) и линейного декодера (ЛД).

Нелинейное декодирование осуществляется аналогично линей­ному с учетом отмеченных особенностей нелинейного кодирования. Так, в процессе нелинейного декодирования, т. е. формирования АИМ отсчета с определенной амплитудой, по структуре кодовой комбинации (PXYZABCD) определяются знак отсчета и но-, мер сегмента (), после чего находится значение (с учетом того, что к декодированному сигналу с целью уменьшения ошибки квантования добавляется напряжение, равное половине шага кван­тования в данном сегменте):

где -эталонное напряжение, соответствующее нижней границесегмента;

Шаг квантования всегменте.

Если, например, на вход декодера поступает кодовая комби­нация 01010110 (т. е. Р = 0, =5, А = 0; В=1; С = 1, D = 0), то на выходе декодера будет сформирован АИМ отсчет с амплитудой +)_" =

Таким образом, в декодере в данном случае суммируются эта­лонные напряжения, равные.

Литература: Осн. 3 [ 8-21 ]

Доп. 6 [ 102-104 ]

Контрольные вопросы:

1.Симметричный и натуральный двоичный код

2.Нелинейное кодирование. Характеристика компандирования типа А=87,6/13. Схема нелинейного кодера.

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

4.Дельта-модуляция

1.1 ОСНОВНЫЕ ПОНЯТИЯ

Кодирование – преобразование элементов дискретного сообщения в последовательности кодовых символов. Обратное преобразование – декодирование .

Устройства, осуществляющие эти операции автоматически, называются соответственно кодером и декодером . Кодек – устройство, объединяющее кодер и декодер.

Код – алгоритм (правило), по которому осуществляется кодирование.

Кодовая комбинация (слово) – последовательность кодовых символов, соответствующая одному элементу дискретного сообщения.

Кодовый алфавит – весь набор кодовых символов.

Основание кода m – число символов в кодовом алфавите. Если m=2 код называется двоичным , m>2 – многопозиционным (недвоичным) .

Разряд – значащая позиция кодового слова.

Разрядность (значность) кода n – число символов в кодовой комбинации. Если n=const, то код называется равномерным , n≠const – неравномерным .

Кодеры и декодеры легче сделать для равномерных двоичных кодов.

1.2 СИСТЕМА ПЕРЕДАЧИ ДИСКРЕТНЫХ СООБЩЕНИЙ

Рисунок 1.1 – Структурная схема системы передачи дискретных сообщений.

Источник выдает дискретное сообщение. Для формирования дискретного сообщения из непрерывного используется дискретизация по времени и по уровню.

Кодирование источника (сжатие данных) применяется для снижения технических затрат на хранение и передачу информации.

Криптографическое кодирование (шифрование) применяется для предотвращения несанкционированного доступа к информации.

Кодирование канала (помехоустойчивое кодирование) применяется для повышения достоверности передачи информации по каналу с помехами.

1.3 СЖАТИЕ ДАННЫХ

Сжатие возможно, т.к. данные на выходе источника содержат избыточную и/или плохо различимую информацию.

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

Приемы, применяемые в алгоритмах сжатия с потерями:

Использование модели – подбор параметров модели и передача только одних параметров;

Предсказание – предсказание последующего элемента и передача величины ошибки;

Дифференциальное кодирование – передача изменений последующего элемента при сравнении с предыдущим.

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

Приемы, применяемые в алгоритмах сжатия без потерь:

Кодирование длин последовательностей – передача числа повторяющихся элементов;

Кодирование словаря – использование ссылок на переданные ранее последовательности, а не их повторение;

Неравномерное кодирование – более вероятным символам присваиваются более короткие кодовые слова.

1.4 КОДИРОВАНИЕ СЛОВАРЯ

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

1.5 НЕРАВНОМЕРНОЕ КОДИРОВАНИЕ

Позволяет уменьшить избыточность, вызванную неравной вероятностью символов. Идея неравномерного кодирования состоит в использовании коротких кодовых слов для часто встречающихся символов и длинных – для редко возникающих. Данный подход основан на алгоритмах Шеннона-Фано и Хаффмана.

Коды Шеннона-Фано и Хаффмана являются префиксными. Префиксный код – код, обладающий тем свойством, что никакое более короткое слово не является началом (префиксом) другого более длинного слова. Такой код всегда однозначно декодируем. Обратное неверно.

Код Шеннона-Фано строится следующим образом. Символы источника выписываются в порядке убывания вероятностей (частот) их появления. Затем эти символы разбиваются на две части, верхнюю и нижнюю, так, чтобы суммарные вероятности этих частей были по возможности одинаковыми. Для символов верхней части в качестве первого символа кодового слова используется 1, а нижней – 0. Затем каждая из этих частей делится еще раз пополам и записывается второй символ кодового слова. Процесс повторяется до тех пор, пока в каждой из полученных частей не останется по одному символу.

Пример1.1:

Таблица 1.1 – Построение кода Шеннона-Фано.

Вероятность

Этапы разбиения

Алгоритм Шеннона-Фано не всегда приводит к построению однозначного кода с наименьшей средней длиной кодового слова. От отмеченных недостатков свободен алгоритм Хаффмана.

Код Хаффмана строится следующим образом. Символы источника располагают в порядке убывания вероятностей (частот) их появления. Два самых последних символа объединяют в один вспомогательный, которому приписывают суммарную вероятность. Полученные символы вновь располагают в порядке убывания вероятностей, а два последних объединяют. Процесс продолжается до тех пор, пока не останется единственный вспомогательный символ с вероятностью 1. Для нахождения кодовых комбинаций строится кодовое дерево. Из точки, соответствующей вероятности 1, направляются две ветви. Ветви с большей вероятностью присваивается символ 1, с меньшей – 0. Такое ветвление продолжается до достижения вероятности каждого символа. Двигаясь по кодовому дереву сверху вниз , записывают для каждого символа кодовую комбинацию.

Пример1.2:

Таблица 1.2 – Построение кода Хаффмана.

Рисунок 1.2 – Кодовое дерево для кода Хаффмана.

Общие сведения

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

Основными задачами кодирования являются повышение помехоустойчивости передаваемых сообщений, удаление избыточности из закодированных сообщений и защита информации от несанкционированного доступа (постороннего прослушивания).

Автоматическое кодирование осуществляется в устройстве называемом кодером , а обратный процесс декодирование происходит в декодере . Устройство, объединяющее кодер и декодер называется кодек .

Система передачи сообщений с кодированием представлена на рисунке 1.

Рисунок 1 - Структурная схема системы передачи с кодированием сигналов

Источник сообщения (ИС) формирует сообщение, которое преобразуется в сигнал в преобразователе сообщения в сигнал (ПСС1). Аналоговый сигнал из ПСС1 поступает в аналого-цифровой преобразователь (АЦП) где аналоговый сигнал преобразуется в цифровой. Цифровой сигнал поступает в кодер источника. В кодере источника из закодированного сообщения удаляют избыточность, что позволяет увеличить скорость передачи информации в канале. Полученная на выходе кодера кодовая последовательность Аi поступает в кодер канала. В кодере канала осуществляется кодирование с целью повышения помехоустойчивости сигнала. Для этого кодирования используются корректирующие (помехоустойчивые) коды. Полученная в кодере канала последовательность Bip поступает в канал связи. Под действием помех N(t), воздействующих в канале возможны искажения принимаемого сигнала, проявляющиеся в изменении элементов кодовой последовательности. Принимаемая из канала последовательность Bip’ поступает в кодер канал. В нем осуществляется декодирование и исправление (коррекция) ошибок. Полученная на выходе последовательность Ai’ поступает в декодер источника, в котором восстанавливается избыточность закодированного сообщения. Затем сигнал поступает в цифро-аналоговый преобразователь (ЦАП), где осуществляется преобразование цифрового сигнала в аналоговый. Затем сигнал поступает в преобразователь сигнала в сообщение (ПСС2), где он преобразуется в форму удобную для получателя. Полученное сообщение воспринимается получателем (ПС).

Параметры кодов

Основание кода (m ) — соответствует количеству элементов, из которых состоит вторичный алфавит, соответствует системе счисления. Например в двоичном коде символы могут принимать два значения «0» и «1» или «.» и «-».

Разрядность кодовой комбинации (n ) — соответствует количеству элементов, из которых состоит кодовая комбинация. Например, для кодовой комбинации 100110 разрядность составляет 6.

Емкость кода (N 0 ) — соответствует количеству возможных кодовых комбинаций при заданном основании и разрядности:

N 0 = m n .

Данный показатель применяют к равномерным кодам.

Количество сообщений, которые необходимо закодировать N а — соответствует количеству символов первичного алфавита. Например для русского алфавита N а = 33.

Для корректирующих кодов вводятся следующие параметры.

Вес кодовой комбинации (W ) — соответствует количеству ненулевых элементов в кодовой комбинации. Например, для кодовой комбинации 11011 вес равен W = 4.

Расстояние Хэмминга (d ij ) — показывает, на сколько разрядов одна кодовая комбинация отличается от другой. Данный параметр определяется как вес кодовой комбинации полученной в результате сложения по модулю два двух рассматриваемых комбинаций

Кодовое расстояние (d 0) — это наименьшее расстояние Хэмминга для заданного кода. Для его определения d 0 производится определение расстояния Хэмминга для всех возможных пар кодовых комбинаций кода, после чего выбирается наименьшее. Например, для кода состоящего из трех кодовых комбинаций 100101, 011010, 100011 кодовое расстояние будет равно

Относительная скорость кода (R к) — показывает относительное число разрешенных комбинаций кода.

R к = log 2 Na / log 2 N 0 .

Избыточность кода (c к ) — показывает относительное число запрещенных комбинации кода.

c к = 1 – R к.

Корректирующая способность кода — определяется кратностями обнаруживаемых (q о ош) и исправляемых (q и ош) ошибок, под которыми понимают гарантированное число обнаруживаемых и исправляемых ошибок в кодовых комбинациях кодом. Например, если q о ош = 1, то код способен обнаружить ошибку в любом разряде принятой комбинации, при условии, что она одна, а если q и ош = 1 то код способен исправить одну ошибку в любом разряде принятой комбинации, при условии, что она одна.

Классификация кодов

Общая классификация кодов представлена схемой (рисунок 2).

Двоичные — это коды, основание которых равно двум (m=2), примерами таких кодов может являться код Морзе, линейный двоичный код.

Многопозиционные — это коды, основание которых больше двух (m>2).

Равномерные — это коды, все кодовые комбинации которых имеют одинаковую разрядность (n=const), примерами таких кодов могут являться циклические коды, МТК-3.

Неравномерные — это коды, кодовые комбинации которых имеют различную разрядность (n?const), примерами таких кодов могут являться код Шеннона-Фано, код Хафмена, код Морзе.

Простые — это коды, в которых все возможные кодовые комбинации используются для передачи сообщения (N 0 =N a). Такие коды не обладают способностью обнаруживать и исправлять ошибки в кодовых комбинациях.

Рисунок 2 - Классификация кодов

Избыточные — это коды, в которых часть кодовых комбинаций используется для передачи сообщений (разрешенные комбинации ), а остальные комбинации не используется для передачи сообщений (запрещенные комбинации ), т. е. у таких кодов N 0 >N a . Такие коды способны обнаруживать и исправлять ошибки в кодовых комбинациях.

Последовательные — это коды, разряды кодовых комбинаций которых передаются последовательно друг за другом. Такие коды используются для передачи сообщений в каналы связи (код Морзе, МТК-3, HDB-3).

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

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то