Автор работы: Пользователь скрыл имя, 18 Октября 2011 в 22:31, курсовая работа
Коды Хэмминга являются самоконтролирующимися кодами, то есть кодами, позволяющими автоматически обнаруживать ошибки при передаче данных. Для их построения достаточно приписать к каждому слову один добавочный (контрольный) двоичный разряд и выбрать цифру этого разряда так, чтобы общее количество единиц в изображении любого числа было, например, четным. Одиночная ошибка в каком-либо разряде передаваемого слова (в том числе, может быть, и в контрольном разряде) изменит четность общего количества единиц.
Введение
Основная часть
Схема формирования кода Хэмминга (без ошибок), спроектированного в программе Electronics Workbench
Схема формирования кода Хэмминга (с ошибкой), спроектированного в программе Electronics Workbench
Осциллограмма
Вывод
Список использованной литературы
Гр. 03-320
Преподаватель:
Чугаев Б.Н.
Москва
2011
Содержание:
Введение…………………………………………………………
Основная часть…………………………………………
Схема формирования
кода Хэмминга (без ошибок), спроектированного
в программе Electronics Workbench………………………………………………………
Схема формирования
кода Хэмминга (с ошибкой), спроектированного
в программе Electronics Workbench………………………………………………………
Осциллограмма……………………………………………
Вывод…………………………………………………………………
Список использованной
литературы……………………………………………………
Введение.
Коды Хэмминга являются самоконтролирующимися кодами, то есть кодами, позволяющими автоматически обнаруживать ошибки при передаче данных. Для их построения достаточно приписать к каждому слову один добавочный (контрольный) двоичный разряд и выбрать цифру этого разряда так, чтобы общее количество единиц в изображении любого числа было, например, четным. Одиночная ошибка в каком-либо разряде передаваемого слова (в том числе, может быть, и в контрольном разряде) изменит четность общего количества единиц. Счетчики по модулю 2, подсчитывающие количество единиц, которые содержатся среди двоичных цифр числа, могут давать сигнал о наличии ошибок.
При этом невозможно узнать, в каком именно разряде произошла ошибка, и, следовательно, нет возможности исправить её. Остаются незамеченными также ошибки, возникающие одновременно в двух, в четырёх или вообще в четном количестве разрядов. Впрочем, двойные, а тем более четырёхкратные ошибки полагаются маловероятными.
Логика этого кода для четырехразрядных слов может быть рассмотрена с помощью диаграмм Венна на рис0:
Рис0. Иллюстрация кода Хемминга для четырехразрядного слова.
Три пересекающиеся
окружности образуют семь сегментов. Четырем
битам данных назначаются внутренние
сегменты(рис0, а), а остальные сигменты
заполняются битами паритета(добавочный
бит к каждому биту информации). Биты паритета
выбираются таким образом, чтобы общее
число единиц в каждой окружности было
четным(рис0, б). Так, поскольку окружность
А содержит одну единицу, бит паритета
для неё принимается равным 1. Теперь, если
в результате ошибки изменится один из
битов данных(рис0, в), это легко выявить.
Путем проверки паритета обнаруживаются
несоответствия в окружностях А и В. Для
окружности Б несоответствия нет. Только
один из семи сегментов присутствует в
окружностях А и В и не присутствует в
б, и ошибка может быть исправлена за счет
изменения бита в этом сегменте.
Основная часть.
Структура одного из
вариантов построения устройства для
обнаружения одинарных и
Рис1. Схема обнаружения
одинарных и двойных ошибок с коррекцией
одинарных.
Таблица1. Схема размещения основных и контрольных разрядов :
Номер позиции | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 |
Биты данных | D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | D7 | ||
Контрольные биты | P5 | P4 | |||||||||
Номер позиции | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
Биты данных | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Контрольные биты | P3 | P2 | P1 | P0 |
Контрольные разряды P4…P0 вычисляются по стандартной схеме кода Хемминга:
Особенность рассматриваемой
схемы состоит в способе
При чтении из памяти формирователем синдрома вычисляется синдром S4…S0.
Здесь P4…P0 – контрольные разряды, вычисленные генератором контрольных разрядов на основании информационных битов считанного из памяти кода (MD15…MD0). MP5…MP0 – такие же контрольные разряды, полученные тем же генератором, но перед записью информации в память и хранившиеся там вместе с основной информацией. Если синдром не равен нулю, то он указывает на позицию исказившегося бита при одиночной ошибке. С учетом контрольного разряда Р5 возможны 4 ситуации, показанные на таблице2:
Таблица2. Обнаружение ошибок
Сигнал Чт/Зп на схеме определяет выполняемую операцию. Чт/Зп=1 означает чтение из памяти, а Чт/Зп=0 – запись в память.
Проанализировав полученный
синдром и разряд Р5, обнаружитель
формирует двухразрядный код ошибки E1E0(таблица3)
Таблица3. Кодирование ошибок
Пристейшие ПЛИС - программируемые логические микрицы (ПЛМ). Программируемые логические матрицы - наиболее традиционный тип ПЛИС, имеющий программируемые матрицы "И" и "ИЛИ". Посторение ПЛМ основано на том, что любая комбинационная функция может быть представлена в виде логической суммы (операция ИЛИ) логических произведений (операций И). Тогда схема реализующая комбинационную функцию может быть представлена а следующем виде:
Недостаток такой
архитектуры - слабое использование
ресурсов программируемой
Вывод:
Был изучен код Хэмминга,
спроектирована схема формирования этого
кода для обнаружения двойной и исправления
одиночной ошибки(Двойная показывается
на Р5, а одинарная на S0-S4(в каком разряде)
) на примере слова длинной 2 байта(16 бит)
и на элементной базе ИС серии К155. Показаны
2 варианта- с ошибками и без. Применять
ПЛИС для создания разработанной схемы
возможно-надо только изменить умножение
по модулю два на «И» и «ИЛИ» по формулам
перехода:
или
Список использованной литературы: