Введение
Развитие вычислительных сетей потребовало при межмашинном обмене информацией передачи больших объемов цифровой информации с высокой скоростью и верностью.
Именно поэтому возникла проблема проектирования средств организации каналов передачи данных эффективно использующих пропускную способность существующих каналов электросвязи и базирующихся на современной технике и технологии цифровых интегральных схем.
Базовые функции по согласованию источников и приемников данных с непрерывными частотно-ограниченными каналами возложена на устройства преобразования сигналов (УПС), которые в значительной мере определяют такие характеристики цифровых каналов, как скорость и верность. Поэтому разработка УПС, обеспечивающих требуемые информационные характеристики систем передачи сигналов данных между территориально удаленными конечными пунктами, является одной из актуальных задач, входящих в комплекс проблем технического обеспечения межмашинного обмена информацией в вычислительных сетях.
Курсовая работа посвящена разработке модели устройства передачи данных по дискретному бинарному каналу связи.
В ходе работы производится моделирование датчиков, первичных преобразователей аналого-цифровых и цифроаналоговых преобразователей (АЦП — ЦАП), линий связи, кодирующих и декодирующих устройств, проектирование исправляющих ошибки кодов.
Моделирование системы будет производиться в пакете автоматизированного проектирования «MATLAB 6.1»
1. Расчетная часть .1 Инверсный код В основу построения инверсного кода положен принцип повторения исходной кодовой комбинации. В тех случаях, когда исходная кодовая комбинация содержит четное число «1», повторяемая комбинация в точности воспроизводит исходную. Если исходная кодовая комбинация содержит нечетное число «1», то повторение происходит в инвертированном виде. Проверка принятой кодовой комбинации Суммируются «1» в исходной комбинации, если их число четное, то элементы дополнительной комбинации принимаются в неизменном виде. После этого обе части кодовой комбинации сравниваются поэлементно. При обнаружении хотя бы одного несовпадения кодовая комбинация считается искаженной. Если количество «1» в исходной комбинации нечетное, элементы дополнительной комбинации инвертируются. После этого производится поэлементное сравнение обеих частей кодовой комбинации и выносится решение о наличии или отсутствии искаженной. 1.2 Код Хемминга Код Хемминга относится к исправляющим кодам и содержит k-информационных и p=n-k — избыточных (проверочных) символов, где n — значность кода. Избыточная часть кода строится таким образом, чтобы при декодировании можно было бы установить, не только факт наличия ошибки в принятой комбинации, но и указать номер позиции, в которой произошла ошибка. Эта цель достигается за счет многократной проверки принятой комбинации на четность, при этом, количество проверок равно р. Каждой проверкой охватываются часть информационных символов и один из избыточных. При каждой проверке получают двоичный контрольный символ, признак четности: если результат четный — контрольный символ = 0, если результат нечетный — контрольный символ = 1. В результате формируется р-разрядная контрольная комбинация, в двоичной форме указывающая десятичный номер позиции кодовой комбинации, в которой произошла ошибка. Для исправления ошибки необходимо инвертировать данный символ кодовой комбинации. Процедура построения кода 1. Определить р (или n) исходя из k информационных символов: 2k= N =< 2n/(1+n) . Разместить информационные символы в соответствующих позициях кодовой комбинации согласно таблице 1 проведения проверок (порядковые номера символов кодовой комбинации считаются слева направо).
Таблица 1 — Таблица проведения проверок
инверсный хемминг датчик кодирующий 3. Сформировать контрольные символы исходя из условия обеспечения четности контрольных сумм, разметив их в свободных позициях кодовой комбинации. С целью упрощения операции кодирования декодирования целесообразно выбирать такое размещение контрольных символов в кодовой комбинации, при котором каждый из них включается в минимальное число проверяемых групп символов. Таким образом, удобно размещать контрольные символы на позициях, номера которых встречаются только в одной из проверяемых групп: 1, 2, 4, 8 и т.д. Следовательно, в позициях 3, 5, 6, 7, 9 и т.д. должны располагаться информационные символы. . Провести проверку принятой кодовой комбинации на приемной стороне по следующим проверочным выражениям:
S1=a1a3a5a7a9,2=a2a3a6a7a10,3=a4a5a6a7a12,4=a8a9a10a11a12, где S1-S4 — результаты проверочных операций; а1-а12 — символы кодовой комбинации; -12 — номера позиций символов в кодовой комбинации. Полученное двоичное число S необходимо перевести в десятичный вид. Значение десятичного числа, отличное от «0», указывает номер позиции кодовой комбинации, в которой произошла ошибка. Для ее исправления данный символ необходимо инвертировать.
код команды — 1000
Коэффициент избыточности:
Информационные символы:
Проверочные символы:
Нужна помощь в написании курсовой?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.
— ми элементный код Хемминга
Создание ошибки в пятом разряде
Искаженная кодовая комбинация
Номер позиции искаженного разряда:
Восстановление разряда:
Восстановленная кодовая комбинация:
2. Структурная схема устройства передачи данных Структурная схема устройства передачи данных и команд показана на рисунке 2.1. На схеме приведены следующие обозначения: ДТ — датчик; НП — нормирующий преобразователь; АЦП — аналого-цифровой преобразователь; ЦАП — цифро-аналоговый преобразователь; КУ — кодирующее устройство; ДКУ — декодирующее устройство; ЛС — линия связи; И — индикатор.
Рисунок 2.1 — Структурная схема устройства передачи данных и команд Сигнал с датчика температуры поступает на вход аналого-цифрового преобразователя (АЦП), где подвергается преобразованию в цифровую форму. Далее преобразованный сигнал поступает на вход кодирующего устройства, где происходит кодирование сообщений. При передаче сигналы подвергаются воздействию помех. Принятые сигналы декодируются — приводятся к исходному виду. Цифро-аналоговый преобразователь производит преобразование принятого цифрового сигнала в аналоговый, который поступает на вход индикатора, информируя о состоянии системы. 3. Моделирование датчика температуры Принцип действия датчика заключается в изменении напряжения на выходе усилителя в зависимости от сопротивления терморезистора. С помощь пакета «MATLAB 6.1» бала спроектирована модель датчика температуры представленная на рисунке 3.1. Рисунок 3.1 — Модель датчика температуры Описание блоков использованных при построении модели приведены в таблице 3.1. Таблица 3.1 — Описание блоков модели датчика температуры
Параметры блоков, используемых для построения модели, приведены в таблицах 3.2 — 3.8.
Таблица 3.2 — Параметры блоков Inport
Таблица 3.3 — Параметры блока Outport
Таблица 3.4 — Параметры блока Ramp
Параметр slope (S, формула 3.1) блока Ramp Block Properties определяется как крутизна характеристики, которая позволяет получить необходимый диапазон изменения напряжения:
Нужна помощь в написании курсовой?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.
, (3.1)
где:
Tmax — максимальная температура;
Tmin — минимальная температура;
255 — количество шагов моделирования.
Таблица 3.5 — Параметры блока Constant
Таблица 3.6 — Параметры блока Fcn
Таблица 3.7 — Параметры блока Sum
Таблица 3.8 — Параметры блока Gain
Параметр Gain блока Gain выбирается таким образом, чтобы обеспечить необходимое изменение напряжения от 0 до 10 В и равен 0,3.
4. Моделирование АЦП и ЦАП
Для передачи сигналов по дискретному каналу необходимо будет преобразование сигнала в цифровую форму. При приеме цифрового сигнала его необходимо будут снова преобразовать в аналоговую форму. Для этого необходимо построить модели трехразрядных АЦП и ЦАП.
Нужна помощь в написании курсовой?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.
Схема модели трехразрядного АЦП приведена в приложении А. Параметры блоков, использовавшихся для построения модели, приведены в таблицах 4.1 — 4.5.
Таблица 4.1 — Свойства блока Inport
Таблица 4.2 — Свойства блоков Rouding
Таблица 4.3 — Свойства блоков Gain
Таблица 4.4 — Свойства блоков Sum
Таблица 4.5 — Свойства блоков Outport
Схема модели трехразрядного ЦАП приведена в приложении Б. Параметры блоков, использовавшихся для построения модели, приведены в таблицах 4.6 — 4.9.
Таблица 4.6 — Свойства блоков Inport
Таблица 4.7 — Свойства блоков Sum
Нужна помощь в написании курсовой?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.
Продолжение таблицы 4.7 — Свойства блоков Sum
Таблица 4.8 — Свойства блоков Gain
Таблица 4.9 — Свойства блока Outport
5. Модель устройства передачи данных
В модели использованы подсистемы датчика температуры, АЦП и ЦАП. Подсистемы АЦП и ЦАП должны содержать соответственно последовательный выход и последовательный вход. Блок Unbuffer применен для конвертирования векторного сигнала в дискретный скалярный. Оператор XOR (Logical operator) используется для реализации кода с проверкой на четность. Блоки G1, G2, G3 (Discrete Pulse Generator) используется для формирования маркеров каналов. Блок Buffer применен для формирования векторного сигнала из дискретного скалярного. Блок Selector (библиотека Signals & Systems) используется для разделения принятых сигналов. Модель устройства передачи данных приведена в приложении В
Параметры блоков примененных для построения модели приведены в таблицах 5.1 — 5.10.
Таблица 5.1 — Свойства блоков Constant
Таблица 5.2 — Свойства блоков DiscretePulseGenerator
Таблица 5.3 — Свойства блока Logical Operator
Таблица 5.4 — Свойства блоков Mux
Нужна помощь в написании курсовой?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.
Таблица 5.5 — Свойства блока Rouding
Таблица 5.6 — Свойства блока Selector
Таблица 5.7 — Свойства блоков ToWorkspace
Таблица 5.8 — Свойства блока Binary Symmetric Channel
По условиям задания курсовой работы вероятность возникновения ошибок в канале передачи данных составляет 0,03, соответственно параметр P равен 0,03.
Таблица 5.9 — Свойства блока Buffer
Таблица 5.10 — Свойства блока Unbuffer
Настройки окружения симуляции приведены в таблице 4.11.
Нужна помощь в написании курсовой?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.
Таблица 5.11 — Параметры симуляции
После выполнения симуляции передачи данных через канал были получены входные и выходные осциллограммы сигналов изображенные на рисунках 5.1 и 5.2, полученные при помощи блоков Source Output.
Рисунок 5.1 — Осциллограмма исходного сигнала
Рисунок 5.2 — Осциллограмма принятого сигнала
Для построения зависимость количества ошибок в канале связи от вероятности возникновения ошибки параметр Error probability блока Binary Symmetric Channel следует варьировать в диапазоне 0 до 0,1 с шагом 0,005. Для контроля возникновения ошибок используется переменная error, формируемая на нижнем выходе блока Binary Symmetric Channel. Для подсчета числа ошибок была использована следующая программа на языке MatLab:
clc;=0;=size(line);cRow=1:a(1);cCol=1:a(2);error (cRow, cCol)==1=eNumb+1;
end
end
eNumb
С помощью приведенной программы произвели подсчет ошибок. Для данной максимальной вероятности ошибок в бинарном канале связи Р=0.1 получили число ошибок:= 336
Переменная eNumb использована как счетчик числа ошибок. В результате выполнения программы в окне Command window выводится размер переменной error и количество ошибок, возникших при передаче сигнала по каналу связи. Последовательность моделирования следующая:
) задается параметр Error probability блока Binary Symmetric Channel и проводится моделирование работы системы;
) запускается на выполнение приведенная выше программа;
) полученное значение количества ошибок заносится в массив ERRORS, имеющий 2 столбца и 16 строк. В первом столбце записываются значения вероятностей ошибок, во втором — количество ошибок.
Последовательность 1-3 повторяется до достижения верхней границы диапазона варьирования параметра Error probability.
Таким образом, получили зависимость числа ошибок в канал