|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Скремблирование
Методы скремблирования заключаются в побитном вычислении результирующего кода на основании бит исходного кода и полученных в предыдущих тактах бит результирующего кода. Например, скремблер может реализовывать следующее соотношение: Bi = Ai Å Bi-3 Å B i-5, где Bi — двоичная цифра результирующего кода, полученная на i-м такте работы скремблера, Ai — двоичная цифра исходного кода, поступающая на i-м такте на вход скремблера, Bi-3 и B i-5 — двоичные цифры результирующего кода, полученные на предыдущих тактах работы скремблера, соответственно на 3 и на 5 тактов ранее текущего такта, Å — операция исключающего ИЛИ (сложение по модулю 2). Например, для исходной последовательности 110110000001 скремблер даст следующий результирующий код: B1 = A1 = 1 (первые три цифры результирующего кода будут совпадать с исходным, так как еще нет нужных предыдущих цифр) В2 = А2 = 1 В3 = А3 = 0 В4= А4 Å B1 = 1 Å 1 = 0 В5= А5 Å B2 = 1 Å 1 = 0 В6= А6 Å B3 Å B1 = 0 Å 0 Å 1 = 1 В7= А7 Å B4 Å B2 = 0 Å 0 Å 1 = 1 В8= А8 Å B5 Å B3 = 0 Å 0 Å 0 = 0 В9= А9 Å B6 Å B4 = 0 Å 1 Å 0 = 1 В10= А10 Å B7 Å B5 = 0 Å 1 Å 0 = 1 В11= А11 Å B8 Å B6 = 0 Å 0 Å 1 = 1 В12= А12 Å B9 Å B7 = 1 Å 1 Å 1 = 1 Таким образом, на выходе скремблера появится последовательность 110001101111, в которой нет последовательности из шести нулей, присутствовавшей в исходном коде. После получения результирующей последовательности приемник передает ее дескремблеру, который восстанавливает исходную последовательность на основании обратного соотношения: Сi = Вi Å Bi-3 Å B i-5 = (Ai Å Bi-3 Å B i-5) Å Bi-3 Å B i-5 = Ai. Существуют и более простые методы борьбы с последовательностями единиц, также относимые к классу скрэмблирования. Для улучшения кода AMI используются два метода, основанные на искусственном искажении последовательности нулей запрещенными символами. На рисунке 2 показано использование метода B8ZS (Bipolar with 8-Zeros Substitution) и метода HDB3 (High-Density Bipolar 3-Zeros) для корректировки кода AMI. Исходный код состоит из двух длинных последовательностей нулей: в первом случае - из 8, а во втором - из 5. Рис. 2 Коды B8ZS и HDB3. V - сигнал единицы запрещенной полярности; 1*-сигнал единицы корректной полярности, но заменившей 0 в исходном коде. Код B8ZS исправляет только последовательности, состоящие из 8 нулей. Для этого он после первых трех нулей вместо оставшихся пяти нулей вставляет пять цифр: V-1*-0-V-1*. V здесь обозначает сигнал единицы, запрещенной для данного такта полярности, то есть сигнал, не изменяющий полярность предыдущей единицы, 1* - сигнал единицы корректной полярности, а знак звездочки отмечает тот факт, что в исходном коде в этом такте была не единица, а ноль. В результате на 8 тактах приемник наблюдает 2 искажения - очень маловероятно, что это случилось из-за шума на линии или других сбоев передачи. Поэтому приемник считает такие нарушения кодировкой 8 последовательных нулей и после приема заменяет их на исходные 8 нулей. Код B8ZS построен так, что его постоянная составляющая равна нулю при любых последовательностях двоичных цифр. Код HDB3 исправляет любые четыре подряд идущих нуля в исходной последовательности. Правила формирования кода: каждые четыре нуля заменяются четырьмя сигналами, в которых имеется один сигнал V. Для подавления постоянной составляющей полярность сигнала V чередуется при последовательных заменах. Для замены используются два образца четырехтактовых кодов. Если перед заменой исходный код содержал нечетное число 1-ц, то используется последовательность 000V, а если число 1-ц было четным - последовательность 1*00V. Улучшенные потенциальные коды обладают достаточно узкой полосой пропускания для любых последовательностей единиц и нулей, которые встречаются в передаваемых данных. Задание Необходимо разработать программу для кодирования информации, используя код (по варианту), при этом для устранения последовательностей нулей использовать логическое кодирование (по варианту). Входную последовательность информации ввести с клавиатуры. Результаты работы отобразить в виде временной диаграммы, при этом на диаграмме должны быть: - входная последовательность в коде NRZ, - входная последовательность в виде самосинхронизирующегося кода (по варианту), - входная последовательность в логическом коде (по варианту).
4. Варианты задания:
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |