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

Viber OUT 27.04.2019
Viber OUT
5.3. Кодирующее и декодирующее устройства (КОДЕК). Устройство и работа ИКМ-30

5.3. Кодирующее и декодирующее устройства (КОДЕК)

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

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

Технические данные

Входным сигналом кодера является последовательность биполярных АИМ-сигналов с максимальной амплитудой 1,0 В и длительностью 2,0 мкс. поступающая с индивидуального оборудования.

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

  • максимальный положительный сигнал кодируется как - 11111111;
  • минимальный положительный – 10000000;
  • максимальный по величине отрицательный – 01111111;
  • минимальный по величине отрицательный – 00000000.

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

Частота повторения кодовых групп - 256 кГц.

Входным сигналом декодера, является вышеуказанный восьмиразрядныйдвоичный код.

Выходной сигнал декодера - последовательность АИМ-сигналов с максимальной амплитудой 2,0 В.

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

Закон компандирования – логарифмический, А-87,6

; ;

; .

где ; .

А=87,6 – параметр компрессирования;

Входной кодируемый сигнал;

Его максимальное амплитудное значение;

N – номер шага квантования, считая от середины характеристики;

N МАКС – число шагов в каждой половине характеристики;

Шаг квантования – интервал между двумя дискретными уровнями квантования.

Указанный закон аппроксимирован 13-сегментной характеристикой с отношением наклонов характеристики на соседних сегментах равным двум.

Полная характеристика содержит 256 шагов квантования. Отношение величин шагов на соседних сегментах равно двум. В пределах сегмента шаг является равномерным. На рисунке 16 приведена характеристика кодирующего устройства (участок, соответствующий положительным сигналам). Указанная нелинейная характеристика квантования обеспечивает по сравнению с равномерной характеристикой с таким же числом шагов расширение динамического диапазона на величину

Рабочая точка кодера находится на границе между шагами квантования.

В процессе кодирования кодер определяет шаг, в пределах которого находится данный входной сигнал, и выдает на выходе номер этого шага в виде 8-разрядного двоичного кода.

На приемной стороне декодер выполняет обратную операцию в соответствии с поступившим кодом номера шага квантования восстанавливает амплитуду АИМ - сигнала.

Каждому из 256 интервалов амплитуд (шагов), подлежащих кодированию на передающей стороне, должен соответствовать на приемной стороне такой же интервал амплитуд на шкале выходных напряжений, подлежащих воспроизведению. Всевозможные амплитуды сигнала, заключенные в пределах одного интервала, должны воспроизводится одним дискретным,уровнем декодера. Наилучшее воспроизведение обеспечивает уровень декодера, находящийся на середине этого-интервала. При таком размещении всех 256 уровней декодера погрешность воспроизведения любой амплитуды внутри интервала не превосходит половины шага квантования на сегменте. Из этого следует различие в шкалах уровней кодера и декодера, т.е. уровни декодера должны быть смещены на 1/2 шага на сегменте по отношению к уровням кодера.

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

Рисунок 16. Характеристика компандирования.

Структурная схема кодера

Кодер аппаратуры ИКМ-30 по принципу действия представляет собой аналого-цифровой преобразователь последовательного взвешивания с обратной связью.

Структурная схема кодера приведена на рисунке 17 . Она содержит следующие функциональные части:

Последовательность работы кодера

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

Кодируемый сигнал представлен неизменным по величине в течение цикла кодирования током Is, который пропорционален отсчету мгновенного значения напряжения на огибающей входного АИМ – сигнала. Отсчеты (выборки) мгновенных значений напряжения входного сигнала берутся с частотой временной дискретизации 256 кГц (8 кГц для телефонных каналов, 32 кГц для канала вещания). Для формирования токовогосигнала Is входной АИМ - сигнал поступает на устройствовыборки и хранения, производящее фиксацию мгновенного значения входного сигнала путем кратковременного заряда накопительной емкости до напряжения поступающего АИМ - сигнала и последующего хранения напряжения на ней. С выхода устройства выборки и хранения усиленный соответствующим образом сигнал выборки поступает на вход усилителя ввода. Усилитель ввода представляет собой управляемый напряжением генератор тока, вырабатывающий токи Is и –Is, которые затем подаются в точки суммирования А и В.

В одну из точек суммирования в зависимости от полярности входного сигнала на последующих этапах процесса кодирования подаются суммы эталонных токов I , вычитаемые из тока, кодируемого сигнала Is. Разность токов Is-I в общей точке суммирования и ток -Is в другой точке создадут на выходных сопротивлениях БЭК падения напряжения Us-U и Us соответственно. Компаратор, входы которого подключены к точкам суммирования, производит операцию вычитания:

(Us- U )-(-Us)=2Us-U

и вырабатывает сигнал “0”, если 2Us>U и сигнал “I”, если 2Us

В рассматриваемой процедуре поиска необходимой суммы эталонов, уравновешивающих входной сигнал, переход к следующему эталону производится на основании всех предыдущих решений компаратора, хранящихся в регистре памяти. На выходах 8 триггеров регистра памяти по мере записи в него решений компаратора формируется 8-резрядный параллельный код Q 1 ….Q 8 преобразуемого сигнала.

Первый разряд Q 1 кода регистра памяти содержит информацию о полярности входного сигнала. Определение полярности производится без подачи в точки суммирования эталонных токов (I ). Вторым, третьим и четвертым разрядами кода кодируются номер сегмента характеристики, которому соответствует входной сигнал. В связи с этим во время поиска сегмента посредством трех взвешиваний среди эталонных токов с весами 2 10 , 2 9 , 2 8 , 2 7 , 2 6 , 2 5 , 2 4 и 0 условных единиц отыскивается ближайший ко входному сигналу меньше его по величине (условная единица - ток соответствующий наименьшему шагу характеристики кодера). Указанные эталоны соответствуют граничным точкам сегментов. Поиск начинается со среднего по номеру сегмента - с входным сигналом сравнивается эталон 2 7 у.е. В соответствии с решением компаратора“0” или “1” производится переход к эталону 2 9 у.е. либо к эталону 2 5 у.е,; далее - обусловленный следующим решением компаратора переход к одному из эталонов – 2 10 , 2 8 , 2 6 , 2 4 у.е. и т.д.

Разрядами с 5-го по 8-й кодируется номер одного из 16 шагов на сегменте, в пределах которого находится входной сигнал. Определение номера шага на сегменте ведется начиная со старшего по весу для данного сегмента эталона к младшему.

Включение эталонных токов производится с помощью логики управления БЭК. Входными сигналами логики являются 8 разрядов кода (Q 1….. Q 8) поступающие с выходов триггеров регистра памяти. Логика преобразует 7 разрядов (0 2 ….. Q 8) этого линейного кода в II разрядов линейного кода для управления БЭК. От состояния триггера первого разряда (Q 1) зависит подключение БЭК соответствующей полярности для формирования биполярной характеристики квантования.

На каждое из 8 взвешиваний отводится время равное полупериоду частоты 2048 кГц.

Выходной сигнал кодера формируется последовательным считыванием кода (Q 1…… Q 8) с выходов триггеров регистра памяти.

Четные разряды кода считываются с инверсных выходов триггеров.

В кодирующем устройстве предусмотрена автоматическая коррекция "нуля" кодера, которая осуществляется во время 0 и 16 канальных интервалов. В эти моменты на входе кодера отсутствует АИМ-сигнал. В схеме выборки и хранения фиксируется напряжение выборки, которое принимается за “нуль”. Далее, компаратор определяет знак смещения на своих входах по отношению к "нулевому" входному сигналу. Смещение обусловлено разбросом и дрейфом параметров элементов устройства выборки и хранения, схемы ввода и компаратора. На основании решения компаратора в узле управления работой кодера определяется сигнал коррекции соответствующего знака и корректор нуля производит изменение напряжения на накопительной емкости. Напряжение на накопительной емкости определяет, в свою очередь, начальный ток схемы ввода, причем, изменение начального тока схемы ввода уменьшает смещение на входах компаратора.

Структурная схема декодера

Структурная схема декодера приведена на рисунке 18 и включает в себя следующие узлы:

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

Преобразование кодовой группы в АИМ-сигнал (декодирование) происходит следующим образом.

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

Логика управления БЭК в соответствие с информацией о полярности и амплитуда закодированного данной группой сигнала включает в одном из БЭК необходимые для формирования выходного уровня эталонные точки.

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

Кодер: Кодер программист, специализирующийся на кодировании написании исходного кода по заданным спецификациям. Кодер одна из двух компонент кодека (пары кодер декодер). «Кодер» фантастический фильм режиссёра Винченцо Натали. «Кодеры»… … Википедия

кодер - КОДЕР, а, м. Программист, занимающийся написанием программного кода, а также пренебр. о посредственном, бездарном программисте. Типичный совковый кодер. Из речи программистов … Словарь русского арго

Сущ., кол во синонимов: 6 it шник (6) айтишник (10) информатик (6) … Словарь синонимов

кодер - Устройство, осуществляющее кодирование. [Сборник рекомендуемых терминов. Выпуск 94. Теория передачи информации. Академия наук СССР. Комитет технической терминологии. 1979 г.] Тематики теория передачи информации EN coder …

кодер - kodavimo įtaisas statusas T sritis automatika atitikmenys: angl. code device; coder; coding device; encoder vok. Codierer, m; Kodierer, m; Kodierungseinrichtung, f; Kodierungsgerät, n; Verschlüßler, m; Verschlüsseler, m rus. кодер, m; кодирующее… … Automatikos terminų žodynas

кодер - к одер, а … Русский орфографический словарь

кодер - Syn: шифратор … Тезаурус русской деловой лексики

кодер - а, ч., спец. Пристрій, який виконує кодування … Український тлумачний словник

кодер - Устройство, осуществляющее кодирование … Политехнический терминологический толковый словарь

кодер ИКМ - кодер Устройство, предназначенное для осуществления квантования и кодирования отсчетов сигнала электросвязи при ИКМ. Примечание Аналогично кодеру ИКМ получают свои названия и определения другие кодеры, например кодер ДИКМ. [ГОСТ 22670 77]… … Справочник технического переводчика

Книги

  • Электроника: логические микросхемы, усилители и датчики для начинающих , Платт Чарльз. Обучение в ходе экспериментов. В книге "Электроника для начинающих" был представлен мир электроники и изложены его основные понятия. Теперь вы готовы перейти к следующему этапу - разработке…
  • Электроника. Логические микросхемы, усилители и датчики для начинающих , Платт Ч.. Обучение в ходе экспериментов. . В книге "Электроника для начинающих" был представлен мир электроники и изложены его основные понятия. Теперь вы готовы перейти к следующему этапу -…

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

Предпосылка

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

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

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

Два лагеря

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

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

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

Универсальность

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

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

Оскорбление

Конечно, глупо было бы полагать, что форумчане и завсегдатаи интернета идеально поделились на два лагеря. Были и те, кто выдвигал свои безумные теории. О них стоит вкратце упомянуть. Итак, в погоне за единым определением появлялись обидные и не очень толкования.

Кодер - это быдлокодер. Вот такое странное мнение удалось найти в сети. Не трудно догадаться, что объяснение этой специальности довольно оскорбительное. Некоторые посчитали, что кодер - это не профессионал своего дела. Он лишь «страдает» над неоптимизированным кодом, который пишет с ошибками. У кодера нет опыта, он - возомнивший себя программистом неуч.

Творчество

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

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

Происхождение

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

Оказывается, английский не очень помогает в решении этого вопроса. Будь-то «programmer», «coder» или «developer», в русском все равно оказывается, что это программист. То есть с лингвистической точки зрения это синонимы.

Есть предположение, что изначально слово «кодер» стали использовать, потому что оно короче и его легче и быстрее писать. А мы знаем, что русский язык стремится стать проще. Так понятия «кодер» и «программист» в один момент слились.

Необходимость

Вообще, проблема русского языка состоит как раз в том, что часто в нем появляются слова, которые не имеют практического смысла. То есть, был себе программист, никого не трогал, и вдруг, слово стало трудно писать, и решили использовать его синоним «кодер». Это простая замена слов, которая не принесла в язык нового понятия, а лишь упростила имеющееся.

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

Уровень квалификации

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

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

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

Вообще, кодировщик и кодер - это не просто синонимы. Это одно и то же понятие, поскольку первое и второе на английском будет «coder». Так, мы возвращаемся снова к тому, что кодер - это просто исполнитель, а программист - идейный вдохновитель и в некоторых случаях руководитель.

Линейные и нелинейные кодеры и декодеры. Виды линейных кодеров: - счетного типа, взвешивающего типа, матричные. Структурные схемы линейного кодера взвешивающего типа для однополярного и двухполярного сигналов. Структурные схемы нелинейного кодера идекодера. Характеристика компрессии типа А-87,6/13.

Кодер с линейной шкалой квантования называется линейным, а с нелинейной шкалой квантования – нелинейным.


Вх АИМ сигн.

Рисунок 2. Структурная схема линейного кодера взвешивающего типа для вдух-полярного сигнала.

Для примера рассмотрим работу кодера при кодировании отсчета с отрицательной амплитудой - 105.3 Δ. Кодируемый отсчет подается на первый вход (I) компаратора, а цикл начинается с установки первого выхода ЛУ в состояние 1. В этом случае за--мыкается ключ Кл + источника положительных эталонных токов (напомним, что выходы 2,..8 ЛУ при этом находятся в состоянии. О, т, е. Кл(- Кл? и Кл[-Кл-/ разомкнуты, на втором входе компаратора, Iэт = 0). Поскольку отсчет имеет отрицательную поляр--ность, т. е. Iс<0, то в первом такте кодирования на выходе компаратора будет сформирована 1 и состояние первого выхода ЛУ ста­нет 0, Тогда Кл+ будет разомкнут, а через инвертор DD 2 будет включен Кл - . Единица на выходе инвертора DD 2 изменит и положение ключа КлК на выходе компаратора и к нему подключится. инвертор. Необходимость такой операции пояснялась ранее. Таким образом, согласно полярности амплитуды входного сигнала включен ГЭТ отрицательных эталонных токов и схема готова к следующим этапам кодирования, для чего переводятся в состояние 1 второй выход ЛУ. Перевод в состояние 1 второго выхода ЛУ обеспечивает подключение через Кл - , эталонного тока-64Δ в точку суммирования этапов Вх2 компаратора и т.д..

Рисунок 3. Характеристика компрессии типа А-87,6/13

В системах ИКМ-ВРК вместо плавной амплитудной характе­ристики, которую имеют аналоговые_компандеры, применяются сегментные характеристики. Они представляют собой кусочно-ломаную аппроксимацию плавных характеристик, при которой изменение крутизны происходит дискретными ступенями. Два в положительной и два в отрицательной областях объединяются в один центральный сегмент, поэтому общее число сегментов на двухполярной характеристике равно 13. Каждый из 16 сегментов характеристики содержит по 16 шагов (уровней), квантования, а общее число уровней равно 256, из них 128 поло­жительных и 128 отрицательных.

Каждый сегмент начинается с определенного эталона, назы­ваемого основным – 16, 32, 64, 128, 256, 512, 1024, 2048.

Кодирование осуществляется за восемь тактов и включает три основных этапа:

1 - определение и кодирование полярности вход­ного сигнала;

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

3 - определение и кодирование номера уровня квантования сегмента, в зоне кото­рого заключена амплитуда кодируемого отсчета. Первый этап кодирования осуществляется за 1-й такт, второй этап - за 2...4-й такты, третий этап - за 5.,.8-й такты кодирования.

Вх АИМ
Вых ИКМ
ГО
ГО
ГО
ПК
ЦР
ГЭТ1
ГЭТ2
БКЭ

Рисунок 4. Структурная схема нелинейного декодера

Целесообразность использования регистров сдвига для построения циклических кодеров и декодеров объясняется структурой циклических кодов. При несистематическом кодировании циклических кодов для формирования кодового слова с надо соответствующий информационный многочлен умножить на фиксированный порождающий многочлен Эту операцию можно реализовать на КИО-фильтре над Такой кодер для (15, 11)-кода Хэмминга представлен на рис. 6.1.3. Для кодирования непрерывного потока информационных битов последовательностью слов (15, 11)-кода Хэмминга информационная последовательность просто разбивается на блоки но 11 битов, каждый блок дополняется «прокладкой» из четырех нулей, а результирующий поток битов пропускается через КИО-фильтр. На выходе получается последовательность непересекающихся 15-битовых слов кода Хэмминга Такой кодер, показанный на рис. 6.14, очень прост, но кодовые слова оказываются несистематическими.

Для получения слов кода в систематическом виде надо воспользоваться другим кодером. Поместим информационные биты в старшие разряды кодового слова и подберем проверочные символы так, чтобы получить допустимое кодовое слово. Кодовое слово записывается в виде

Для реализации систематического кодера используется цепь деления на Для (15, 11)-кода Хэмминга

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

Рис. 6.13. Несистематический кодер для (15, 11)-кола Хэмминга.

Рис. 6. 14. Кодирование длинного потока битов.

Рис. 6.15. Систематический кодер для (15, 11)-кода Хэмминга.

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

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

Рис. 6.16. Другой систематический кочер для (15, 11)-кода Хэмминга.

Теперь обратимся к декодеру. В канал поступаю! коэффициенты многочлена с К ним прибавляется многочлен ошибок На выходе канала принимаемся многочлен

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



Рекомендуем почитать

Наверх