Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Построение группового корректирующегоий кода объёмом 9 слов

Тип Реферат
Предмет Информатика и программирование
Просмотров
828
Размер файла
133 б
Поделиться

Ознакомительный фрагмент работы:

Построение группового корректирующегоий кода объёмом 9 слов

Индивидуальное задание по Теории информации

Подготовил В.С. Прохоров


Построить групповой корректирующий код объёмом 9 слов. Код должен обеспечивать исправление одиночных и обнаружение двойных ошибок.

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

Определим число информационных разрядов кода из соотношения

,

где Q – требуемый объём кода. В нашем случае Q=9, поэтому

Отсюда получаем .

Далее находим число nиз неравенства

Подставляем и подбором находим минимальное n, удовлетворяющее неравенству. В нашем случае .

Далее мы должны составить таблицу опознавателей. Для этого необходимо ввести понятие вектора ошибок и опознавателя. Вектор ошибок это n-разрядная двоичная последовательность, имеющая единицы во всех разрядах, подвергшихся искажению, и нули в остальных разрядах. (Пример: искажению подверглись два младших разряда 6-разрядного сообщения - тогда вектор ошибки будет выглядеть как 000011), а опознаватель – некоторая сопоставленная этому вектору контрольная последовательность символов. В нашем случае векторы ошибок имеют разрядность 7 бит, так как , опознаватели имеют разрядность 3 бит, так как . Опознаватели рекомендуется записывать в порядке возрастания (нулевую комбинацию не используем).

Векторы ошибокОпознаватели
10000001001
20000010010
30000100011
40001000100
50010000101
60100000110
71000000111

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

Выбираем из таблицы строки, где опознаватели имеют в первом (младшем) разряде единицу. Это строки 1, 3, 5 и 7. Тогда первое проверочное равенство будет выглядеть так:

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

Это строки 2, 3, 6, 7.

Тогда второе проверочное правило выглядит так:

И, наконец выбираем строки, где опознаватели имеют единицу в третьем разряде. Это строки 4, 5, 6, 7. Следовательно третье проверочное равенство выглядит так:

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

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

Мы получили окончательные правила построения кода, способного исправлять все одиночные и обнаруживать двойные ошибки:

Используя правила построения корректирующего кода (*), построим таблицу разрешённых комбинаций группового кода объёмом 9 слов, способного исправлять все одиночные и обнаруживать двойные ошибки. В колонку «безызбыточный код» записываем девять (по заданию Q=9) комбинаций по возрастанию (нулевую комбинацию не используем).

(*)

Все колонки, кроме , , и , содержимое которых определяется формулами (*), заполняем цифрами из безызбыточного кода:

словобезызбыточный кодкод
00010001
00100010
00110011
01000100
01010101
01100110
01110111
10001000
10011001

Чтобы заполнить колонки , , и , подставляем значения необходимых переменных в соответствующие уравнения из (*). Например, для строки 9 (слово ) получаем следующее:

словобезызбыточный кодизбыточный код
000110000111
001010011001
001100011110
010010101010
010100101101
011000110011
011110110100
100001001011
100111001100

Перейдём к построению функциональной схемыкодирующего устройства (см. соответствующий рисунок ниже). Назначение кодирующего устройства – внесение избыточности в код по заданным нами правилам. Схему строим на основании равенств (*). На схеме используется логический элемент «сумматор по модулю два», обозначенный М2. На схеме имеются два регистра, построенные на D-триггерах. Один из них содержит безызбыточный код и имеет разрядность 4 бит, так как , а другой содержит избыточный код и имеет разрядность 8 бит, так как . Принцип работы схемы таков: по сигналу синхронизации на k-разрядный регистр поступает кодовая комбинация, подлежащая кодированию. Затем с помощью сумматоров эта комбинация кодируется (вносится избыточность). Сумматор С1 реализует первое равенство из (*), сумматор С2 – второе, С3 – третье, а С4 – четвёртое. И, наконец, по сигналу синхронизации полученный избыточный код записывается в 8-разрядный регистр. Далее начинается кодирование следующей комбинации.

Далее рассмотрим функциональную схему декодирующего устройства (см. соответствующий рисунок ниже). В ней также используются два регистра на D-триггерах. Один из них содержит переданное слово и имеет разрядность 8 бит, так как , а другой содержит декодированные информационные символы и имеет разрядность 4 бит, так как . Для построения схемы вспомним проверочные равенства, найденные ранее:

(**)

Обозначим буквой признак одиночной ошибки. Если , то имела место одиночная ошибка, если же , то одиночной ошибки не было. Через обозначим результат общей проверки на чётность.

Запишем алгоритм декодирования, пренебрегая возможностью возникновения ошибок кратности 3 и выше.

Вывод
00ошибок нет
01ошибка в 8-ом разряде
10двойная ошибка (повторная передача)
11одиночная ошибка (исправление)

Принцип работы дешифратора таков. На приёмный регистр поступает кодовая комбинация, которая может содержать ошибку. Сумматор С1 реализует первое равенство из (**), С2 – второе, а С3 – третье. Если ошибок не было, то на выходах этих трёх сумматоров будут нули. Если же имела место ошибка, то в этом случае на выходах сумматоров появится опознаватель ошибки. Этот опознаватель передаётся в дешифратор ошибок ДС, который на основании переданного в него опознавателя выдаёт соответствующий вектор ошибки. Его схема строится по следующей таблице истинности:

Вход (опознаватель)Выход (вектор ошибки)
1230123456
0000000000
0011000000
0100100000
0110010000
1000001000
1010000100
1100000010
1110000001

Чтобы восстановить верный сигнал нам необходимо сложить по модулю два сигнал дешифратора с соответствующим разрядом кодовой комбинации. Эта операция выполняется на сумматорах С5-С8. Таким образом мы исправляем одиночные ошибки.

Чтобы обнаружить двойную ошибку, мы предусматриваем следующее. Сумматор С4 проверяет последнее равенство из (**) – на его выходе мы имеем . В случае возникновения двойной ошибки на выходе этого сумматора появится ноль, так как две единицы не изменят чётности (). Элемент ИЛИ проверяет признак одиночной ошибки (). На этот элемент подаётся вектор ошибки с дешифратора. А если вектор ошибки содержит хотя бы одну единицу (а это значит, что имела место ошибка), то на выходе элемента ИЛИ появится единица. Таким образом, если на выходе С4 мы получили ноль, а на выходе элемента ИЛИ единицу, мы можем говорить, что имела место двойная ошибка. В этом случае блокируем генератор тактовых импульсов, триггеры устанавливаются в ноль, а на специально предусмотренный выход ER подаём единицу.

Функциональная схема кодирующего устройства


Функциональная схема декодирующего устройства

Далее по функциональным схемам строим принципиальные электрические схемы. Для построения принципиальных схем используем программный пакет Multisim.

Начнём со схемы кодирующего устройства. Сначала расположим источник питания и генератор тактовых импульсов. Установим значение напряжения 15В, а частоту импульсов – 1Гц. Затем поместим на схему D-триггеры. Нам требуется 4 триггера на вход и 8 триггеров на выход – всего 12. Мы можем использовать 3 микросхемы 74175N, каждая из которых содержит по 4 D-триггера. Помещаем триггеры на схему, к входу CLR подключаем источник питания, ко входу CLK – генератор тактовых импульсов. Для выходных триггеров сигнал от генератора необходимо пропустить через инвертор, так как для формирования выходных импульсов необходимо время и мы должны «задержать» импульс синхронизации. Далее нам необходимы три трёхвходовых элемента для сложения по модулю два. Эти элементы можно синтезировать с помощью двухвходовых элементов 7486N так, как показано на рисунке. Семивходовый элемент для сложения по модулю два также можно синтезировать с помощью двухвходовых элементов 7486N. Теперь просто соединяем полученные части в соответствии с функциональной схемой. Получаем принципиальную электрическую схему кодирующего устройства. Для проверки правильности работы схемы на вход можно направить данные из WordGenerator’а, который будет по очереди генерировать все 9 слов, а на выходы подключить 8 сигнализаторов. Принципиальную схему смотри на развороте.

Перейдём к схеме декодирующего устройства.

Сначала, так же, как и в схеме кодирующего устройства, располагаем источник питания и генератор. Устанавливаем для них те же параметры. Устанавливаем те же D-триггеры. Здесь нам понадобится 8 триггеров для входа, и 4 для выхода. Также используем 3 микросхемы 74175N, каждая из которых содержит по 4 D-триггера. Триггеры подключаем аналогично. Нам потребуются 3 четырёхвходовых и один восьмивходовый элемент для сложения по модулю 2. Их синтезируем так же, как и при составлении схемы кодирующего устройства. Семивходовый элемент ИЛИ синтезируем по тому же принципу. Теперь по известной нам схеме истинности необходимо синтезировать схему дешифратора ошибок. Её можно синтезировать, используя такой логический элемент, как дешифратор. В нашем случае мы можем использовать микросхему 74154N. Эта схема является дешифратором-мультиплексором с 4-мя входами и 16-ю выходами. Её подключаем так, как показано на рисунке (к выходам подключены инверторы 7404N). При таком подключении мы получим схему дешифратора ошибок. Внимание! Использовать нужно именно те входы, которые показаны на рисунке. Далее просто соединяем полученные части согласно функциональной схеме. Принципиальную схему смотри на развороте.


Нет нужной работы в каталоге?

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

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
63 457 оценок star star star star star
среднее 4.9 из 5
ИжГТУ имени М.Т.Калашникова
Сделала все очень грамотно и быстро,автора советую!!!!Умничка😊..Спасибо огромное.
star star star star star
РГСУ
Самый придирчивый преподаватель за эту работу поставил 40 из 40. Спасибо большое!!
star star star star star
СПбГУТ
Оформил заказ 14 мая с сроком до 16 мая, сделано было уже через пару часов. Качественно и ...
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

Решить задачи по математике

Решение задач, Математика

Срок сдачи к 14 дек.

только что

Чертеж в компасе

Чертеж, Инженерная графика

Срок сдачи к 5 дек.

только что

Выполнить курсовой по Транспортной логистике. С-07082

Курсовая, Транспортная логистика

Срок сдачи к 14 дек.

1 минуту назад

Сократить документ в 3 раза

Другое, Информатика и программирование

Срок сдачи к 7 дек.

2 минуты назад

Сделать задание

Доклад, Стратегическое планирование

Срок сдачи к 11 дек.

2 минуты назад

Понятия и виды пенсии в РФ

Диплом, -

Срок сдачи к 20 янв.

3 минуты назад

Сделать презентацию

Презентация, ОМЗ

Срок сдачи к 12 дек.

3 минуты назад

Некоторые вопросы к экзамену

Ответы на билеты, Школа Здоровья

Срок сдачи к 8 дек.

5 минут назад

Приложения AVA для людей с наступающим слуха

Доклад, ИКТ

Срок сдачи к 7 дек.

5 минут назад

Роль волонтеров в мероприятиях туристской направленности

Курсовая, Координация работы служб туризма и гостеприимства

Срок сдачи к 13 дек.

5 минут назад

Контрольная работа

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

Срок сдачи к 30 дек.

5 минут назад
6 минут назад

Линейная алгебра

Контрольная, Математика

Срок сдачи к 15 дек.

6 минут назад

Решить 5 кейсов бизнес-задач

Отчет по практике, Предпринимательство

Срок сдачи к 11 дек.

7 минут назад

Решить одну задачу

Решение задач, Начертательная геометрия

Срок сдачи к 7 дек.

9 минут назад

Решить 1 задачу

Решение задач, Начертательная геометрия

Срок сдачи к 7 дек.

10 минут назад

Выполнить научную статью. Юриспруденция. С-07083

Статья, Юриспруденция

Срок сдачи к 11 дек.

11 минут назад

написать доклад на тему: Процесс планирования персонала проекта.

Доклад, Управение проектами

Срок сдачи к 13 дек.

11 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно