Главная » Просмотр файлов » Исследование помехоустойчивых кодов

Исследование помехоустойчивых кодов (1151931), страница 3

Файл №1151931 Исследование помехоустойчивых кодов (Исследование помехоустойчивых кодов (лабораторная работа №3)) 3 страницаИсследование помехоустойчивых кодов (1151931) страница 32019-07-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

В результате в регистре записывается остаток, представляющий собойпроверочные символы. Ключи K1 и K2 перебрасываются в положение 2, и в течение трехпоследующих тактов содержащиеся в регистре символы поступают в канал.Циклический код может быть задан проверочным многочленом h(x): кодоваякомбинация В принадлежит данному циклическому коду, если b(x)h(x) = 0 mod (xn  1).Проверочный многочлен связан с порождающим соотношениемh(x) = (xn  1)/p(x).Заданиекодапроверочныммногочленомэквивалентнозаданиюкодасистемойпроверочныхуравнений (9.13).ХарактернойособенностьюциклическогоРис.

4. Схемы умножения (а) и деления (б) многочленов (частный случай)кода является то,чтовсепроверочныеуравнения можно получить из одного путем циклического сдвига индексов символов,входящих в исходное уравнение. Например, для кода (7, 4) с порождающим многочленомp(x) = x3  x2  1 проверочный многочлен имеет вид h(x) = x4  x3  x2  1. Проверочныеуравнения получаются из условияb(x)h(x) = 0 mod (x7  1) .Осуществив умножение и приравняв коэффициенты при х4, х5 и х6 нулю, получимследующие уравнения, разрешенные относительно проверочных символов:b2 = b6  b4  b3,b1 = b5  b3  b2,b0 = b4  b2  b1.(9.16)В качестве примера нарис. 9.26показанасхемакодерациклического1 T1T2T3T4В ы хо дкода(7,4),задаваемогопроверочным2432многочленом h(x) = x  x x  1, или, что тожесамое,проверочнымисоотношениямиm2m2(9.16). В исходном состоянииключ находится вположении 1.

В течениечетырех тактовимпульсы поступают в регистр,после чего ключРис. 5. Структурная схема кодерапереводится в положение 2. циклического кода, задаваемогоПриэтом43обратная связь замыкается. проверочным многочленом h(x) = x  x Начиная с пятоготакта,формируются x2  1проверочныесимволы в соответствии ссоотношениями(9.16). После седьмого такта все проверочные символы оказываются сформированными,ключ вновь переключается в положение 1. Кодер готов к приему очередного сообщения.Символы кодовой комбинации поступают в канал, начиная с пятого такта.Корректирующая способность кода зависит от порождающего многочлена р(х).Поэтому его выбор очень важен при построении циклического кода.

Необходимо помнить,что степень порождающего многочлена должна быть равна числу проверочных символов.Кроме того, многочлен р(х) должен делить двучлен xn  1.Обнаружение ошибок при использовании таких кодов заключается в делениимногочлена b'(х) = b(x) + e(x), соответствующего принятой комбинации B%  B  e, на р(х).Если остаток s(x) оказывается равным нулю, то считается, что ошибки нет, в противномслучае фиксируется ошибка.Пусть необходимо построить код, обнаруживающий все одиночные ошибки. В этомгдеi=0,случаемногочленошибокимеетвиде(х)=хi,1, …, n – 1.

Решение задачи заключается в нахождении такого многочлена р(х), чтобымногочлен е(х) не делился на р(х). Наиболее простым, удовлетворяющим этомутребованию, является многочлен р(х) = х  1.Аналогично можно построить код, обнаруживающий ошибки большей кратности.Многочлен s(x) = (b(x)  e(x)) mod (p(x)) = e(x) mod (p(x)) зависит только отмногочлена ошибок е(х) и играет ту же роль, что и вектор-синдром. Поэтому в принципеошибки можно исправлять на основе таблицы соответствий между е(х) и s(x), хранящейсяв памяти декодера, как при линейных нециклических кодах. Однако свойство цикличностипозволяет существенно упростить процедуру декодирования.Один из алгоритмов исправления ошибок основан на следующих свойствах синдромациклического кода. Пусть имеется циклический код с кодовым расстоянием d, исправляющийвсе ошибки до кратности l = [(d – 1)/2] включительно, где [(d – 1)/2] — целая часть числа (d– 1)/2.

Тогда можно показать [133], что:— если исправляемый вектор ошибок искажает только проверочные символы, то вессиндрома будет меньше или равен l, а сам синдром будет совпадать с вектором ошибок;— если вектор ошибки искажает хотя бы один информационный символ, то вессиндрома будет больше l;— если s(x) — остаток от деления многочлена b(х) на р(х), то остатком от делениямногочлена b(x)xi на р(х) является многочлен s(х)xi mod [p(x)], другими словами, синдромнекоторого циклического сдвига многочлена b(х) является соответствующим циклическимсдвигом синдрома исходного многочлена, взятого по модулю р(х).В качестве примера на рис. 9.27 представлена схема декодера для кода (7, 4) спорождающим многочленом p(x) = x3  x2  1.

Код имеет кодовое расстояние d = 3, чтопозволяет ему исправлять все однократные ошибки.Принятая кодовая комбинация одновременно поступает в буферный регистр сдвига,служащий для запоминания кодовой комбинации и ее циклического сдвига, и на устройстводеления на многочлен р(х) для вычисления синдрома. В исходном состоянии ключнаходится в положении 1. После семи тактов буферный регистр оказывается загруженным,а в регистре устройства деления будет вычислен синдром. Если вес синдрома большеединицы, то декодер начинает проводить циклические сдвиги комбинации в буферномрегистре при отсутствии новой комбинации на входе и одновременно вычислять ихсиндромы s(x)xi mod (p(x)) в устройстве деления. Если на некотором i-м шаге вес синдромаокажется меньше двух, то ключ переходит в положение 2, обратные связи в регистределения разрываются.

При последующих тактах ошибки исправляются путем подачисодержимого регистра деления на вход сумматора по модулю 2, включенного в буферныйрегистр. После семи тактов работы декодера в автономном режиме исправленнаякомбинация в буферном регистре возвращается в исходное положение (информационныесимволы будут занимать старшие разряды).Существуют и другие, более универсальные, алгоритмы декодирования.К циклическим кодам относятся коды Хэмминга, которые являются примераминемногих известных совершенных кодов. Они имеют кодовое расстояние d = 3 иисправляют все одиночные ошибки. Длина кода выбирается из условия 2n–k – 1 = n, котороеимеет простой смысл: число различных ненулевых синдромов равно числу символов вкодовой последовательности. Так, существуют коды Хэмминга (2r – 1, 2r – r – 1), вчастности коды (7, 4), (15, 11), (31, 26), (63, 57) и т.

д.Заметим, что ранее использованный многочлен p(x) = x3  x2  1 являетсяпорождающим для кода Хэмминга (7, 4).Рис. 6. Структурная схема декодера циклического кода спорождающим многочленом p(x) = x3  x2  1ПРАКТИЧЕСКАЯ ЧАСТЬ4. Описание программного обеспечения, используемого в работеЛабораторный стенд состоит из персонального компьютера с установленной на немсистемой компьютерной математики (СКМ) MATLAB версии не ниже R2009b.СКМ MATLAB R2009b имеет средства для анализа характеристик систем передачиинформации. Эти средства сведены в пакет Communications System Toolbox.

В частности,в этот пакет входит мастер построения характеристик помехоустойчивости системпередачи информации, носящий название Bit Error Rate Analysis Tool. Этот мастер можетбыть запущен командой bertool, набранной в командном окне СКМ MATLAB. Опишемосновные приемы работы с ним.На рис. 7 показан вид окна мастера Bit Error Rate Analysis Tool. Окно мастера имееттри вкладки: Teoretical, Semianalytic и Monte Carlo, в которых при моделированиивводятся исходные данные для расчета характеристик помехоустойчивости.

Лабораторнаяработа будет вестись во вкладке Teoretical.Рис. 7. Вид окна мастера построения характеристик помехоустойчивости BERToolРассмотрим назначение полей ввода исходных данных для расчета.В поле Eb/N0 range (dB) вводится диапазон изменения отношения энергии сигнала,приходящейся на один бит Eb, к спектральной плотности мощности белого гауссовскогошума N0 (в децибелах), в котором необходимо построить характеристикупомехоустойчивости.В поле Channel type выбирается вид канала, для которого необходимо построитьхарактеристику помехоустойчивости. Доступны следующие виды каналов: AWGN(Additive White Gaussian Noise) — канал, в котором действует только помеха типааддитивный белый гауссовский шум; Rayleigh — канал, в котором наряду с аддитивнымбелым гауссовским шумом действуют рэлеевские замирания; Rician — канал, в которомнаряду с аддитивным белым гауссовским шумом действуют райсовские замирания.Поле Modulation type позволяет выбрать вид модуляции сигнала (PSK (Phase ShiftKeying) — фазовая манипуляция, FSK (Frequency Shift Keying) — частотная манипуляция,QAM (Quadrature Amplitude Modulation) — квадратурная амплитудная манипуляция и т.п.).При этом в поле Modulation order указывается порядок манипуляции.

Если используетсяотносительная ФМ, необходимо отметить поле Differential encoding.При моделировании систем с частотной манипуляцией (FSK, MSK) в полеDemodulation type есть возможность выбрать вид приема (когерентный илинекогерентный).Ниже имеются поля, позволяющие моделировать системы, в которых используетсяпомехоустойчивое кодирование (Channel coding). Так, если отмечено поле None, этоозначает, что кодирование не используется, поле Convolutional означает использованиесверточного, а поле Block — блочного кодирования.Для некоторых наборов исходных данных доступны поля Synchronization,позволяющие задать настройки, учитывающие неидеальность работы системысинхронизации модема. Так, отметив поле Normalized timing error, можно задатьнормированную ошибку работы тактовой синхронизации (вводя значения от 0 до 0,5),которая представляет собой среднеквадратическое отклонение (СКО) момента началатакта, отнесенное к длительности символа.

При этом считается, что ошибка синхронизациираспределена по нормальному закону. В поле RMS phase noise (rad) задается ошибкаработы системы фазовой синхронизации в виде СКО фазы опорного генератора приемнойчасти модема, указанного в радианах. Эта ошибка также полагается нормальнораспределенной.При необходимости более подробно познакомиться с различными вариантамизадания исходных данных на моделирование, можно обратиться к описанию мастераBERTool, открыв меню Help в окне мастера.Построенные зависимости вероятности ошибки на бит (BER — bit error rate),появляются в отдельном окне, при этом в окне мастера в верхней части появляются строчкис описанием параметров построенных зависимостей. При построении каждой зависимостина графике присваивается имя по умолчанию.

Имя зависимости можно редактировать,дважды щелкнув левой кнопкой мыши в графе BER Data Set нужной строчки. Далеевведенное Вами имя зависимости будет отображаться и в легенде на графике.5. Порядок выполнения работыПоследовательность действий при выполнении практической часть работыследующая.1. Запустить MATLAB.2. В командном окне (Command Window) MATLAB набрать команду bertool инажать «Ввод». При этом откроется окно мастера построения характеристикпомехоустойчивости Bit Error Rate Analysis Tool (рис. 7).3. Руководствуясь приведенным выше описанием построить характеристикипомехоустойчивости для канала без замираний и без использования кодированиядля следующих видов манипуляции:— фазовой — ФМ-2 (с ОФМ-кодеком и без), -4, -8, -16 на одном графике;— амплитудно-фазовой — QAM-16, -32, -64, -256 на одном графике;— построить отдельный график, на котором сравнить ФМ-16 (PSK-16) и QAM16;— частотной — FSK-2 (со значением коэффициента взаимной корреляции 0), -4,-16, -32 при когерентном приеме;— построить отдельный график, на котором сравнить FSK-2 со значениямикоэффициента взаимной корреляции 0 и -0,21 при когерентном приеме и FSK2 со значением коэффициента корреляции 0 при некогерентном приеме.4.

Изучить влияние замираний на помехоустойчивость, для чего на одном графикепостроить кривые помехоустойчивости для ФМ-2 при отсутствии замираний ипри наличии рэлеевских замираний при одиночном приеме и с использованиемразнесенного приема на 2 и на 3 ветви (поле Diversity order).5. Изучитьвлияниеканальногокодированиянахарактеристикипомехоустойчивости. Для этого на одном графике построить зависимостивероятности ошибки для ФМ-2 в канале без замираний при отсутствиикодирования, при использовании кодов Хэмминга (7,4) и (31,26), прииспользовании сверточного кода с относительной скоростью ½ и длинойкодового ограничения 7 при использовании жесткого и мягкого правил принятиярешения (поля Hard и Soft соответственно).6.

Провести расчеты, аналогичные п. 5 для случая канала с рэлеевскимизамираниями при одиночном приеме.7. По графикам, построенным в п.п. 5 и 6 определить величину энергетическоговыигрыша,обеспечиваемогоиспользованиемразличныхвариантовпомехоустойчивого кодирования..

Характеристики

Список файлов лабораторной работы

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее