420

Станция локальной вычислительной сети с маркерным способом доступа

Курсовая

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

Разработка структурной и принципиальной схемы станции локальной вычислительной сети (ЛВС). Разработка блок-схемы алгоритма работы станции в режиме ликвидации логического соединения. Написание программы в командах микропроцессорного комплекта серии PIC16C64.

Русский

2013-01-06

591.5 KB

64 чел.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное автономное образовательное учреждение
высшего профессионального образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КАФЕДРА 44

КУРСОВОЙ ПРОЕКТ
ЗАЩИЩЕН С ОЦЕНКОЙ

РУКОВОДИТЕЛЬ

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
К КУРСОВОМУ ПРОЕКТУ

Станция локальной вычислительной сети с маркерным способом доступа

по дисциплине: СЕТИ ЭВМ И ТЕЛЕКОММУНИКАЦИИ

РАБОТУ ВЫПОЛНИЛ

Санкт-Петербург

2012


Содержание

Список условных обозначений и сокращений

Введение

Технические условия

1. Описание принципов функционирования ЛВС с маркерным способом доступа на структуре МДШ

2. Описание микропроцессорного комплекта PIC16C64

3. Описание структурной схемы станции ЛВС, узлов приема и выдачи

4. Определение необходимого объема буферной памяти

5. Описание схемы заданного режима работы станции ЛЛС

6. Оценка эффективности

Заключение

Список использованной литературы

Приложение 1: Программа расчета эффективности метода доступа к среде

Приложение 2: Принципиальная электрическая схема станции

Список условных обозначений и сокращений

АО

адрес отправителя

АП

адрес получателя

КД

кадр данных

КМ

кадр маркера

ЛВС

локальная вычислительная сеть

МДШ

маркерный доступ на шине

НО

начальный ограничитель

УК

указатель кадра

КО

конечный ограничитель

КПК

контрольная последовательность кадра

УДС

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

КП

кадр прерывания

ТУМ

тайм-аут удержания маркера

ТЦМ

тайм-аут циркуляции маркера

ТОМ

тайм-аут отсутствия маркера

ДМК

дешифратор манчестерского кода

ФМК

формирователь манчестерского кода


Введение

Целью данного курсового проекта является:

  •  Разработка структурной и принципиальной схемы станции локальной вычислительной сети (ЛВС), удовлетворяющей требованиям, изложенным в техническом задании;
  •  Разработка блок-схемы алгоритма работы станции в режиме ликвидации логического соединения;
  •  Написание программы в командах микропроцессорного комплекта серии PIC16C64;
  •  Анализ эффективности работы станции.


Технические условия

  1.  Сетевая технология: МДШ.
  2.  Скорость передачи fd, Мбит/с: 16.
  3.  Структурная организация: шина.
  4.  Число станций в сети N, шт.: 200.
  5.  Длина сети L, км: 3.
  6.  Длина кадров b, байт: 2000.
  7.  Допустимая вероятность потери пакета из-за переполнения буфера Pпот = 10-7 при загрузке ρ = 0,2.  


1. Описание принципов функционирования ЛВС с маркерным способом доступа на структуре МДШ

При использовании маркерного доступа на структурной организации «шина» для обеспечения доступа станций к физической среде передачи необходимо передавать кадр маркера определенного формата. Передача маркера от одной станции к другой должна происходить в заданной последовательности. В стандарте 802.4 принята циклическая последовательность передачи маркера в порядке убывания адресов, когда станция со старшим адресом передает маркер станции с младшим, при этом станция с самым младшим адресом передает маркер станции с самым старшим. Циркуляция кадра маркера образует так называемое логическое кольцо физической шины, изображенное на рисунке 1.1:

 

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

В данной структурной организации нет станции-монитора, которая управляла бы работой логического кольца. Эти функции выполняет та станция, которая в настоящий момент является держателем маркера.

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

1.1. Тип и форматы кадров

Информация, передаваемая на уровне УДС, должна передаваться в виде кадров и заполнителей.

В данной структурной организации используются КД, КМ и КП, форматы которых представлены на рисунке 2. При этом приняты следующие обозначения: НО — начальный ограничитель, УК — указатель кадра, АП — адрес получателя, АО — адрес отправителя, КПК — контрольная последовательность кадра, КО — конечный ограничитель.

Все рассматриваемые кадры передаются, начиная с левого поля. В кадре данных число байтов (октав) между полями НО и КО не должно быть более 8181 байт.

Преамбула предшествует каждому передаваемому КД и КМ. Преамбула используется только в сетях, не имеющих постоянной битовой синхронизации. Длина преамбулы зависит от применяемой скорости передачи данных и используемого метода модуляции сигналов и составляет от  одного до нескольких байт символов-заполнителей. Преамбула обеспечивает битовую синхронизацию станции-приемника. Она обеспечивает минимально необходимый межкадровый промежуток времени для завершения обработки станцией ранее переданного кадра. Длительность преамбулы должна быть не менее 2 мкс.

Поле НО – это комбинация символов NN0NN000, где N – символ «не данные». Необходимо отметить следующее. В протоколе УДС используются следующие символы: 0 — нуль; 1 — единица; N - “не данные”; p – заполнитель; S – молчание; B – искаженный сигнал.

Поле УК кодируется в зависимости от передаваемого КД.  При этом различают кадры управления УДС, кадры данных и кадры специального назначения.

Подробная информация о кодировании поля УК в кадре «Управление УДС» представлена в таблице 1.1.

Таблица 1.1: Кодирование поля УК в кадра "Управление УДС"

Название кадра

Код

Режим работы сети

1

Заявка маркера

0000 0000

Инициализация логического кольца

2

Запрос преемника 1

0000 0001

Логическое подключение станции

3

Запрос преемника 2

0000 0010

Логическое подключение станции или восстановление после ошибок

4

Кто следующий

0000 0011

Восстановление после ошибок

5

Разрешение соперничества

0000 0100

Логическое подключение станции

6

Кадр маркера

0000 1000

Нормальное функционирование

7

Установить преемника

0000 1100

Логическое  подключение станции и восстановление после ошибок

Кадр «Заявка маркера» используется станциями для установления той станции, которая будет инициализировать логическое кольцо, т. е. будет генерировать маркер. Этот кадр содержит поле данных произвольной длины, которая должна быть кратна байту и равняться 0, 2, 4 или 6 интервалам ответа.

Кадр «Запрос преемника 1» формируется станцией-держателем маркера для ввода в логическое кольцо новых станций. В этом кадре АП содержит адрес следующей станции, отсутствует поле данных, и за этим кадром должно следовать одно окно ответа.

Кадр «Запрос преемника 2» формируется станцией держателеям маркера. Поле АП в этом кадре содержит адрес следующей станции. Кадр используется для ввода в логическое кольцо новых станций. Такой кадр передается, если нет ответа на кадр «Запрос преемника 1». Такая ситуация случится обязательно, если кадр «Запрос преемника 1» передает станция с наименьшим номером в логическом кольце. В кадре «Запрос преемника 2» отсутствует поле данных и за кадром должно следовать два окна ответа.

В кадре «Кто следующий» поле данных содержит адрес следующей станции. За этим кадром должно следовать 3 окна ответа. Кадр формируется станцией-держателем маркера. Кадр используется в режиме  восстановления после ошибок, если преемник не активен.

Кадр «Разрешение соперничества» передается станцией-держателем маркера, когда при опросе станций, желающих войти в логическое кольцо, ответ дали 2 или более станций. Кадр разрешает этим станциям начать соревнование за включение в логическое кольцо.  Этот кадр не содержит поля данных и за ним должно следовать 4 окна ответа.

Кадр «Установить преемника» может формироваться целым рядом станций в различных режимах. Поле АП содержит поле АО последнего принятого данной станцей кадра. Поле данных содержит адрес следующей станции (если станция-держатель маркера желает отключиться от логического кольца) или собственной станции (если станция, например, хочет войти в логическое кольцо).

В КД поле УК кодируется FFMMMPPP, где:

  •  FF = 01, если передается КД УЛЗ;
  •  FF = 10, если передается КД диспетчера;
  •  FF = 11 для кадров специального назначения;

МММ — биты запроса:

  •  MMM = 000 – запрос, не требующий ответа;
  •  MMM = 001 – запрос, требующий ответа;
  •  MMM = 010 – ответ на запрос;

PPP – биты приоритета:

  •  PPP = 000 – низший приоритет;
  •  PPP = 111 – высший приоритет.

Поле АО содержит индивидуальный адрес станции-отправителя данного кадра. Адрес АО не интерпретируется на уровне УДС.

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

Поле КПК служит для проверки правильности принятого кадра данных.

1.2. Тайм-ауты

В ЛВС с МДШ используется набор таймеров для управления различными режимами функционирования. При этом измеряются соответствующие интервалы (тайм-ауты).

Пять тайм-аутов оперируют с целыми числами, кратными интервалу ответа, и не используются одновременно. Рассмотрим их:

  •  Тайм-аут неактивности шины используется для инициализации логического кольца, т. е. для создания маркера. Он управляет интервалом времени, в течение которого станция прослушивает среду передачи до выдачи кадра «Запрос маркера». В станциях с наименьшим номером он равен 6 интервалам ответа, а в остальных станциях 7 интервалам. Запуск таймера производится в момент предыдущей передачи маркера следующей станции.
  •  Тайм-аут заявки маркера управляет длительностью интервалов времени между передачами кадров «Запрос маркера». Его длительность — 1 интервал ответа. Запускается таймер при выдаче кадра «Запрос маркера».
  •  Тайм-аут окна ответа используется в режиме передачи данных. Он управляет интервалами времени между передачами КД станций, имеющих открытое окно ответа (т. е. передающей станции нужен ответ на ее передачу). Длительность тайм-аута — 1 интервал ответа. Запускается таймер при выдаче станцией очередного кадра.
  •  Тайм-аут соперничества управляет интервалом времени, в течение которого станция прослушивает среду передачи после опознавания кадра «Разрешение соперничества», «Запрос преемника» или «Кто следующий». Запуск производится после опознавания соответствующего кадра и составляет 0, 1, 2, 3, 4 интервала ответа в зависимости от вида кадра и его отправителя.
  •  Тайм-аут передачи маркера управляет интервалом времени, в течение которого станция прослушивает среду передачи после передачи маркера своему преемнику с целью обнаружения его активности. Длительность тайм-аута — 1 интервал ответа. Запуск производится при выдаче маркера.

Кроме перечисленных тайм-аутов используется ряд тайм-аутов, кратных октетному (байтовому) интервалу:

  •  Тайм-аут удержания маркера  (ТУМ) определяет время, в течение которого станция может передавать КД соответствующего приоритета. Число таких тайм-аутов определяется типом станции.
  •  Тайм-аут циркуляции маркера (ТЦМ) (класс доступа) определяет минимальный интервал времени, за который должен быть получен маркер для передачи кадров соответствующего класса доступа. Число таких тайм-аутов определяется типом станции.

Время задержки кадра τ на 1 км равняется:

Время записи кадра B определяется формулой:

,

где:

  •  b – длина кадра;
  •  fd – скорость передачи.

Тайм-аут удержания маркера (ТУМ) рассчитывается по формуле:

,

где k – количество пакетов в группе.

Тогда минимальный ТУМ (k = 1) будет равен:

Согласно /1/, рекомендуемое значение ТУМ равняется 10 мс.

Тайм-аут отсутствия маркера (ТОМ) определяется следующим выражением:

,

где:

  •  K – коэффициент, определяющий число активных станций;
  •  N – число станций в сети;
  •  L – длина сети.

Для K = 0,5 значение ТОМ будет равно 1000,03 мс.

ТОМ предназначен для обнаружения различного рода ошибок, которые возникают в кольце при передаче кадра. Запуск тайм-аута производится при выдаче маркера следующей станции. Если за время тайм-аута маркер не был получен, то это говорит о том, что кольцо или станции работают с ошибками.

2. Описание микропроцессорного комплекта PIC16C64

Американская фирма Microchip Technology Inc. в течении двух последних десятилетий является одной из ведущих фирм по разработке и производству 8-разрядных КМОП МК. Помимо МК фирма выпускает также МС электрически перепрограммируемой последовательной памяти емкостью от 1 до 64К, а также целый ряд ПУ и прикладных продуктов, как, например, кодеры с динамическим кодом серии HCS300, микросхемы управления ЖКИ дисплеями AY0438 и многое другое.

МК PIC (Peripheral Interface Controller) имеют RISC-архитектуру (Reduced Instruction Set Computer). Использовать эти МК рекомендуется во всех случаях, когда критично энергопотребление, габариты и стоимость устройства.

В зависимости от производительности и функциональных возможностей МК серии PIC16/17 подразделяются на 3 семейства:

  •  PIC16C5X – базовое семейство с 12-разрядными командами;
  •  PIC16C6X/7X/8X – расширенное семейство с 14-разрядными командами;
  •  PIC17CXX – высокопроизводительное семейство с 16-разрядными командами;

В данном курсовом проекте разработка станции ЛВС ведется на микропроцессорном комплекте PIC16C64.Условное графическое изображение микроконтроллера PIC16C64 приведено на рисунке 2.1:

Описание выводов PIC16C64 приведено в таблице 2.1:

Таблица 2.1: Выводы PIC16C64

PIN

Наименование

DIP No.

PLCC No.

MQFP тип

I/O/P тип

Тип буфера

Описание

RD0/RSP0

19

21

38

I/O

ST/ TTL3

PORTD двунаправленный порт ввода-вывода

RD1/RSP1

20

22

39

I/O

ST/ TTL3

RD2/RSP2

21

23

40

I/O

ST/ TTL3

RD3/RSP3

22

24

41

I/O

ST/ TTL3

RD4/RSP4

27

30

2

I/O

ST/ TTL3

RD5/RSP5

28

31

3

I/O

ST/ TTL3

RD6/RSP6

29

32

4

I/O

ST/ TTL3

RD7/RSP7

30

33

5

I/O

ST/ TTL3

RE0/RD

8

9

25

I/O

ST/ TTL3

PORTE двунаправленный порт ввода-вывода.

RE1/WR

9

10

26

I/O

ST/ TTL3

RE2/CS

10

11

27

I/O

ST/ TTL3

Vss

12,31

13,34

6,29

P

Vdd

11,32

12,35

7,28

P

Положительное напряжение на контактах.

NC

1,17,28,40

12,13,33,34

Эти выводы должны быть оставлены не соединенными.

OSC1/CLKIN

13

14

30

I

ST/CMOS4

OSC2/CLKOUT

14

15

31

O

MCLR/Vpp

1

2

18

I/P

ST

RA0

2

3

19

I/O

TTL

PORTA двунаправленный порт ввода-вывода.

RA1

3

4

20

I/O

TTL

RA2

4

5

21

I/O

TTL

RA3

5

6

22

I/O

TTL

RA4/T0CKI

6

7

23

I/O

ST

RA5/SS

7

8

24

I/O

TTL

RB0/INT

33

36

8

I/O

TTL/ST1

PORTB двунаправленный порт ввода-вывода.

RB1

34

37

9

I/O

TTL

RB2

35

38

10

I/O

TTL

RB3

36

39

11

I/O

TTL

RB4

37

41

14

I/O

TTL

RB5

38

42

15

I/O

TTL

RB6

39

43

16

I/O

TTL/ST2

RB7

40

44

17

I/O

TTL/ST2

RC0/T1OSI/T1CKI

15

16

32

I/O

ST

PORTC двунаправленный порт ввода-вывода.

RC1/T1OSO

16

18

35

I/O

ST

RC2/CCP1

17

19

36

I/O

ST

RC3/SCK/SCL

18

20

37

I/O

ST

RC4/SDI/SDA

23

25

42

I/O

ST

RC5/SDO

24

26

43

I/O

ST

RC6

25

27

44

I/O

ST

RC7

26

29

1

I/O

ST

2.1. Описание команд PIC16C64

Каждая команда PIC16C64 представляет собой четырнадцатибитное слово, состоящее из кода операции (КОп), который соответствует типу операции и одного или более операнда.

Форматы команд для различных видов операций представлены на рисунке 2.2:

Ниже, в таблице 2.2, представлены описания поля кода команды:

Таблица 2.2: Описание поля кода команды

Значение

Описание

f

Адрес файлового регистра

w

Аккумулятор

b

Адрес бита в регистре

k

Литерал, константа или метка

x

Ассемблер сгенерирует код, когда x = 0. Это рекомендуемая форма использования для совместимости со всеми программными средствами.

d

D=0 результат хранится в регистре W

D=1 результат хранится в регистре f

По умолчанию d=1

label

Имя метки

TOS

Вершина стека

PC

Программный счетчик команд

PCLATH

Программный счетчик

GIE

Общее разрешение прерываний

WDT

Сторожевой счетчик времени

TO

Тайм-аут

PD

Выключение питания

Описание системы команд PIC16C64 приведено в таблице 2.3:

Таблица 2.3: Описание команд PIC16C64

Мнемоника команды

Описание

Циклы

Код команды

 

Прим

ADDWF f, d

сложение W c f

1

00 0111 dfff ffff

C,DC, Z

1,2

ANDWF f, d

логическое И W и f

1

00 0101 dfff ffff

Z

1,2

CLRF f

сброс регистра f

1

00 0001 lfff ffff

Z

2

CLRW

сброс регистра W

1

00 0001 0xxx xxxx

Z

 

COMF f, d

инверсия регистра f

1

00 1001 dfff ffff

Z

1,2

DECF f, d

декремент регистра f

1

00 0011 dfff ffff

Z

1,2

DECFSZ f, d

декремент f, пропустить команду, если 0

1(2)

00 1011 dfff ffff

 

1,2,3

INCF f, d

инкремент регистра f

1

00 1010 dfff ffff

Z

1,2

INCFSZ f, d

инкремент регистра f, пропустить, если 0

1(2)

00 1111 dfff ffff

 

1,2,3

IORWF f, d

логическое ИЛИ W и f

1

00 0100 dfff ffff

Z

1,2

MOVF f, d

пересылка регистра f

1

00 1000 dfff ffff

Z

1,2

MOVWF f

пересылка W в f

1

00 0000 lfff ffff

 

 

NOP

холостая команда

1

00 0000 0xx0 0000

 

 

RLF f, d

сдвиг f влево через перенос

1

00 1101 dfff ffff

C

1,2

RRF f, d

сдвиг f вправо через перенос

1

00 1100 dfff ffff

C

1,2

SUBWF f, d

вычитание W из f

1

00 0010 dfff ffff

C, DC,Z

1,2

SWAPF f, d

обмен тетрад в f

1

00 1110 dfff ffff

 

1,2

XORWF f, d

Исключающее ИЛИ W и f

1

00 0110 dfff ffff

Z

1,2

Команды работы с битами регистров (бит-ориентированные)

BCF f, b

сброс бита в регистре f

1

00 00bb bfff ffff

 

1,2

BSF f, b

Установка бита в регистре f

1

01 01bb bfff ffff

 

1,2

BTFSC f, b

Пропустить команду, если бит равен 0

1(2)

01 10bb bfff ffff

 

3

BTFSS f, b

Пропустить команду, если бит равен 1

1(2)

01 11bb bfff ffff

 

3

Команды работы с константами и операции перехода

ADDLW k

Сложение константы с W

1

11 111x kkkk kkkk

C, DC, Z

 

ANDLW k

Логическое И W и f

1

11 1001 kkkk kkkk

Z

 

CALL k

вызов подпрограммы

2

10 0kkk kkkk kkkk

 

 

CLRWD

сброс сторожевого таймера WDT

1

00 0000 0110 0100

TO, PD

 

GOTO k

переход по адресу

2

10 1kkk kkkk kkkk

 

 

IORLW k

Логическое ИЛИ константы и W

1

11 1000 kkkk kkkk

Z

 

MOVLW k

пересылка константы в W

1

11 00xx kkkk kkkk

 

 

RETFIE

возврат из прерывания

2

00 0000 0000 1001

 

 

RETLW k

возврат из подпрограммы с загрузкой константы в W

2

11 01xx kkkk kkkk

 

 

RETURN

возврат из подпрограммы

2

00 0000 0000 1000

 

 

SLEEP

переход в режим SLEEP

1

00 0000 0110 0011

TO, PD

 

SUBLW k

вычитание W из константы

1

11 110x kkkk kkkk

C,DC, Z

 

XORLW k

Исключающее ИЛИ конс-танты и W

1

11 1010 kkkk kkkk

Z

 

Примечание:

  1.  Во всех командах операнд f принимает значения от 0 до 127, а операнд d значения 0 или 1.
  2.  В бит-ориентированных операциях операнд b принимает значения от 0 до 7.
  3.  В литеральных операциях и операциях управления, кроме оговоренных случаев, операнд k принимает значения от 0 до 255.

Обозначения:

  •  C (Carry bit) – бит переноса /заема (для команд ADDWF, ADDLW, SUBLW, SUBWF).
    (для заема полярность инверсная):
    •  1 — В результате операции имеет место выход переноса из наиболее значащего бита результата;
    •  0 — Нет переноса из старшего бита результата;
  •  DC (Digit Carry bit) – бит десятичного переноса/заема (для команд ADDWF, ADDLW, SUBLW, SUBWF).
    •  1 — Выход переноса из 4-го младшего бита результата;
    •  0 — Отсутствие переноса из 4-го младшего бита результата;
  •  Z (Zero bit) – флаг нулевого значения результата:
    •  1 — Результат арифметической или логической операции равен нулю;
    •  0 — Результат не равен нулю.

3. Описание структурной схемы станции ЛВС, узлов приема и выдачи

Схемы приема и выдачи представлены на рисунках 3.1 и 3.2, структурная схема — на рисунке 3.3.

Ниже описывается схема приема кадров в МДШ, изображенная на рисунке 3.1. Через линию связи на приемник поступает сигнал. ДМК вырабатывает два типа сигналов — RxC (Receive Clock – синхросигнал) и RxD (Receive Data – информационный сигнал), который поступает на вход конъюнктора. Также на вход конъюнктора поступает разрешающий сигнал от начального ограничителя и запирающий — от конечного. С выхода конъюнктора данные побитно поступают на вход сдвигового регистра приема, который формирует байты информации и передает их далее. Первый байт при этом обязательно будет записан в ОЗУ приема, остальные же могут быть и не записаны, если адрес получателя, пришедший на схему сравнения не будет равен собственному адресу (СА). Если же адрес получателя равен СА, то срабатывает выход «равно», ТГА устанавливается в «1», на конъюнктор выдается разрешающий сигнал, и пакет будет передан в ОЗУ ПР станции.

Далее представлено описание работы схемы выдачи кадров в МДШ. Из ОЗУ ПД данные передаются на вход конъюнктора, с выхода которого они попадают в Рг ПД, который в свою очередь передает их на вход ФМК, на который также подается синхросигнал TxC. С выхода ФМК информация поступает на передатчик, на который также приходят сигнал с формирователя НО, разрешающий передачу, и сигнал с формирователя КО, «закрывающий» передачу пакета.

В состав станции входят следующие устройства:

  •  Постоянное запоминающее устройство (ПЗУ);
  •  Центральный процессорный элемент (ЦПЭ);
  •  Системное ОЗУ;
  •  Контроллеры прерываний (Прер.);
  •  Контроллер прямого доступа к памяти (КПДП);
  •  ОЗУ для приема (ОЗУ ПР) и выдачи пакетов (ОЗУ ПД);
  •  Схема синхронизации (СИ);
  •  Схема сравнения адресов (Ср. А.);
  •  Регистр приема;
  •  Регистр передачи (Рг ПД);
  •  Схема дешифрации манчестерского кода (ДМК);
  •  Схема формирования манчестерского кода (ФМК);
  •  Порт ввода-вывода информации;
  •  Регистр собственного адреса (Рг СА);
  •  Начальный ограничитель (НО);
  •  Конечный ограничитель (КО).

Работает схема следующим образом. Данные поступают в ОЗУ ПР под управлением КПДП. ОЗУ ПД пакетов предназначено для временного хранения пакетов, сформированных станцией и предназначенных для выдачи в среду.

Схема  синхронизации (СИ) предназначена для выработки серий импульсов синхронизации и обеспечения возможности внешней синхронизации с принимаемой информацией.

Схема дешифрации манчестерского кода обеспечивает выделение информационных разрядов «данные» и «не данные» из манчестерского кода принимаемого кадра и синхронизацию станции с принимаемыми кадрами.

Порт ввода-вывода станции обеспечивает сопряжение станции с абонентом, которого данная станция обслуживает.

4. Определение необходимого объема буферной памяти

Объем буферного накопителя должен выбираться, исходя из условия обеспечения заданной вероятности потери пакета. Воспользуемся формулой, описанной в /2/:

,

где:

  •  N – емкость накопителя буфера (в числе пакетов);
  •  ρ – загрузка системы;
  •  Pпот — допустимая вероятность потери пакета из-за переполнения буфера.

Вероятность потери определяется по формуле:

При Pпот = 10-7 и ρ = 0,2 имеем:


Исходя из того, что максимальный размер пакета, используемого данной станции равен 2000 , получаем требуемый объем ОЗУ:

5. Описание схемы заданного режима работы станции ЛЛС

Блок-схемы алгоритма работы станции в фазе ликвидации логического соединения представлены на рисунках 5.1 и 5.2 для инициирующей и принимающей стороны соответственно.

Опишем работу этих блок-схем. Ликвидация логического соединения может быть осуществлена по инициативе любой из взаимосвязанных станций. Инициирующая станция посылает команду DISC(Disconnect разъединение) и запускает таймер T1. После получения ответа UA или DM(Disconnect Mode  - режим разъединения, используется для сообщения удаленной станции о статусе местной станции, если она логически отсоединена от ЗПД и находится в фазе разъединения) от удаленной станции таймер T1 выключается, и процедура переходит в фазу разъединения. Если время таймера T1 истекло, то инициирующая станция повторяет передачу команды DISC до N2 раз.

Фаза разъединения заканчивается:

  •  у инициирующей станции после получения ответа UA или DM;
  •  у удаленной станции после отправки согласия UA на разъединение.

Функционирование станции в режиме разъединения:

В режиме разъединения станция должна отвечать на команды обычным образом и посылать ответ DM при получении DISC. При получении любой команды с битом P = 1 станция посылает ответ DM с битом F = 1.

Все другие команды, принимаемые станцией по логическому каналу, игнорируются.

Ниже представлена программа, реализующая алгоритм ликвидации логического соединения.

5.1. Программа ликвидации логического соединения

Title “Ликвидация ЛС”

List p=16C64

ErrorLevel 0 ; вывод всех ошибок при компиляции

N2 equ H’A’ ; число попыток разъединения

N equ H’1’ ; начальное значение счетчика

Tzad equ H’FF’ ; заданное значение таймера

Org 0 ; вектор сброса

Clrf IntCon ; очистка регистра IntCon

Clrf PCLath ; очистка регистра хранение старших бит для PC

Clrf Status ; очистка регистра состояния

Call InitPort ; инициализация портов

Goto Begin

 

InitPort

Bsf Status, RP0 ; выбор банка 1

Clrf PortC ; инициализация порта С

MovLW 0хFF ; значение, используемое для инициализации

; направления обмена данными

MovFW TrisC ; установка RC <7:0> как входов

Clrf PortD ; инициализация порта D

MovLW 0х00 ; значение, используемое для инициализации

; направления обмена данными

MovWF TrisD ; установка RD <7:0> как выходов

Bсf Status, RP0 ; выбор банка 0

Return ; возврат из подпрограммы

; Для инициирующей станции:

Begin

Call P_DISC ; передача команды DISC

Bsf Status, RP0 ; выбор банка 1

Clrf TMR0 ; сброс таймера

MovLW B’00000101’ ; выбор TMR0, новой величины

; предделителя, источника синхронизации

MovWF Option

Bсf Status, RP0 ; выбор банка 0

 

L1: MovF PortC, 0 ; чтение порта С ( UA или DM )

SubLW H’C8’, 0 ; сравнение значения с протокольным значением

Btwss Status, 2 ; проверка результата

GoTo LLS ; если UA то LLS

MovF TMR0, 0 ; иначе проверяем таймер

SubLW Tzad, 0 ; сравниваем с заданным

Btwss Status, 2 ; проверка результата

GoTo L1 ; если время не истекло, то опять

; получаем кадр

Incf N, 1                  ; иначе N:=N+1

Movf N, 0 ; N в аккумулятор

SubLW N2, 0 ; W:=W-N2

Btwss Status, 2 ; сравниваем N и N2

GoTo Begin ;если N < N2 идем на начало

GoTo Error ; иначе ошибка

LLS:Clrf TMR0 ; сброс таймера

Call Ust_R_Raz ; вызов процедуры “установление режима

; разъединения “

GoTo End

End: Nop

 

; Для приемной станции:

 

Begin: Movf PortC, 0 ; чтение порта С

MovWf R1 ; значение в R1

Decfsz R1, 1 ; сравнение с протокольным значением

GoTo UA ; if <> 0, то передача UA

GoTo DM ; передача DM

 

UA: Call F_Reg ; процедура формирования КД для UA

Movf R_Apr ; адрес приемной стороны загруж-ся в ак-

MovWf PortD ; кумулятор и передается в порт D

 

Movf R_APer ; адрес передающей стороны

MovWf PortD

 

Movf R_DSAP ; запись команды DSAP

MovWf PortD

 

Movf R_SSAP ; запись команды SSAP

MovWf PortD

 

Movf R_UA ; запись команды UA

MovWf PortD

GoTo End

 

DM: Call F_Reg ; процедура формирования КД для DM

Movf R_Apr ; адрес приемной стороны загруж-ся в ак-

MovWf PortD ; кумулятор и передается в порт D

Movf R_APer ; адрес передающей стороны

MovWf PortD

 

Movf R_DSAP ; запись команды DSAP

MovWf PortD

 

Movf R_SSAP ; запись команды SSAP

MovWf PortD

 

Movf R_DM ; запись команды DM

MovWf PortD

End: Call Ust_R_Raz ; вызов процедуры “установление режима ; разъединения"

6. Оценка эффективности

Эффективность методов доступа к среде определяется как среднее время задержки, зависящее от коэффициента загрузки среды передачи. Модель сети на структуре «шина» приведена на рисунке 6.1:

Пусть имеется N узлов с очередями, подключенных к общей среде передачи. На каждый узел от абонента поступает пуассоновский поток пакетов с интенсивностью λ0 [пакетов/c]. Эти пакеты обслуживаются с интенсивностью μ0 [пакетов/с]. Пусть известны времена  распространения сигналов τij между узлами  i и j и максимальное время распространения сигналов в среде τm. Пусть заданы средняя длина пакета Tp и скорость передачи в среде fd [бит/с].

Необходимо определить зависимость среднего времени задержки пакетов в узле τ (от момента поступления пакетов от абонента в узел до передачи его в среду) от коэффициента использования среды передачи:

(6.1)

, где S – средняя (эффективная) скорость передачи информации в среде (бит/c).

Предполагаем, что коэффициент загрузки каждого узла  равен ρ0, среднее время передачи пакета  активным узлом, получившим управление равно Tp, среднее время передачи управления от пассивного узла составляет , среднее время передачи управления от активного узла равно .

Имеем следующие зависимости для коэффициента использования среды и среднего времени задержки пакетов в узле:

                                                              (6.2)

(6.3)

В этом случае среднее время передачи между парой узлов определяется следующей формулой:

(6.4)

Отсюда следует, что

(6.5)

С учетом этого выражения и формул (7.2) и (7.3) получим:

Рассматриваемая ЛВС в соответствии с техническим заданием имеет следующие параметры:

  •  Скорость передачи fd, Мбит/с: 16;
  •  Число станций в сети N, шт.: 200;
  •  Длина сети L, км: 3;
  •  Длина кадров b, байт: 2000.

Рассчитаем отношение :

Будем полагать, что длительность маркера составляет 5% от средней длины пакета, т. е.:

Программа оценки эффективности приведена в Приложении 2. По полученным результатам было построено несколько кривых, которые приведены на рисунке 6.2:

Так как для расчетов использовался крайне маленький шаг для абсциссы (коэффициента использования среды), представить всю расчетную таблицу, по которой строился график, видится сложным. В таблице представлены расчеты для первых десяти точек каждого графика:

Таблица 6.1: Фрагмент расчетных данных, использованных для построения графика оценки эффективности.

Из анализа графиков следует, что:

  •  при увеличении коэффициента загрузки канала задержки начинают расти;
  •  также задержки растут при увеличении размера передаваемых пакетов.

Заключение

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

По заданной блок-схеме алгоритма работы станции была написана программа на языке ассемблера для микроконтроллера PIC16C64. Программа представляет собой набор ассемблерных команд для принимающей и передающей станций. Количество команд в программе — 68, объем памяти, необходимый для ее работы -  154 байта.

Была проведена оценка эффективности и получены графики зависимости среднего времени задержки от коэффициента использования среды. Эти графики позволяют сделать выводы о том, что, к примеру, для пакетов размером 2000 байт при коэффициенте использования среды η = 0,2 среднее время задержки будет равно 0,9.

Также была разработана принципиальная электрическая схема самих станций.

Список использованной литературы

  1.  Щербо В. К. и др. Стандарты по локальным вычислительным сетям: Справочник. М.: Радио и связь, 1990. 304 с.
  2.  Крылов Ю. Д. Вычислительные сети. Уч. пособие. ГУАП. СПб.,  2006. 124 с.
  3.  Олифер В. Г., Олифер Н. А., Компьютерные сети: принципы, технологии, протоколы. СПб: Питер, 2006, 958 с.


Приложение 1: Программа расчета эффективности метода доступа к среде

Скрипт написан на языке системы для научных расчетов SciLab:

format ('v', 15);

v = 4.33e-9;// задержка распространения сигнала

L = 3000;// длина кабеля, м

dp = [512,1024,2000];// длина пакета, бит

fd = 16e6;// скорость передачи, bit/с

N = 200;// число узлов в сети

taum = v * L;// задержка распространения по всей сети

tp = dp * 1 / fd;// время передачи пакета

tm = 64 / fd ;// время передачи маркера

i = 1;

for ro0 = 0.001:0.005:0.9,

   a1 = taum / tp(1);

   b1 = tm / tp(1);

   a2 = taum / tp(2);

   b2 = tm / tp(2);

   a3 = taum / tp(3);

   b3 = tm / tp(3);

   // расчет параметров для маркерного доступа на шине с произвольным расположением узлов.

   tet1(i) = ro0 / (ro0 + a1/2 + b1);

   tet2(i) = ro0 / (ro0 + a2/2 + b2);

   tet3(i) = ro0 / (ro0 + a3/2 + b3);

   tau1(i)=(1 + ro0 * (N-1) + N * ( a1/2 + b1 )) / ( 1 - ro0 );

   tau2(i)=(1 + ro0 * (N-1) + N * ( a2/2 + b2 )) / ( 1 - ro0 );

   tau3(i)=(1 + ro0 * (N-1) + N * ( a3/2 + b3 )) / ( 1 - ro0 );

   i = i + 1;

end;

// вывод графиков на экран

clf;

plot2d1("gll", tet1, tau1, logflag = "ll");

plot2d1("gll", tet2, tau2, logflag = "ll");

plot2d1("gll", tet3, tau3, logflag = "ll");

legend("2000", "1024", "512", 3);

xgrid;

title('Оценка эффективности МДШ','fontsize', 4) ;

xlabel('Коэффициент использования среды', 'fontsize', 3) ; // название оси абсцисс

ylabel('Среднее время задержки','fontsize', 3) ; // название оси ординат


 

А также другие работы, которые могут Вас заинтересовать

72722. Творожные шарики, жареные «фри» 56 KB
  Творог протирают, добавляют яичные желтки, растертые с сахаром, картофельный крахмал, подготовленный обсушенный изюм и все тщательно перемешивают. Затем в массу осторожно вводят взбитые беки и еще раз перемешивают. Из полученной массы формуют шарики, панируют в муке и жарят во фритюре.
72724. Курс химии: Учебно-методическое пособие 1.44 MB
  В практикуме представлены лабораторные работы для тринадцати лабораторных работ студентам МГУПИ, изучающим курс химии по всем формам обучения на всех специальностях, на которых это предусмотрено учебным планом в соответствии с Государственным стандартом на специальность.
72725. ТРЕХФАЗНЫЙ АСИНХРОННЫЙ ДВИГАТЕЛЬ С КОРОТКОЗАМКНУТОЙ РОТОРНОЙ ОБМОТКОЙ 96.5 KB
  Цель работы: изучение устройства, способов пуска, опытное определение параметров и исследование рабочих характеристик асинхронного двигателя. Программа работы Ознакомление с заданием. Исследование пусковых режимов работы двигателя: при прямом пуске; с переключением статорной обмотки...
72726. ИССЛЕДОВАНИЕ ХАРАКТЕРИСТИК СИНХРОННОГО ГЕНЕРАТОРА 93 KB
  Цель работы: Изучение конструкции синхронного генератора и экспериментальное определение его характеристик и параметров. Программа работы Ознакомиться с конструкцией генератора и схемой испытательного стенда. Снять характеристику холостого хода генератора...
72727. ДВИГАТЕЛЬ ПОСТОЯННОГО ТОКА С ПАРАЛЛЕЛЬНЫМ И СМЕШАННЫМ ВОЗБУЖДЕНИЕМ 298.5 KB
  Изучение устройства двигателя постоянного тока, условий его пуска, реверсирования и исследование эксплуатационных свойств. Ознакомиться с лабораторной установкой. Записать паспортные (номинальные) данные электродвигателя.
72728. ИССЛЕДОВАНИЕ ПОЛУПРОВОДНИКОВОГО СТАБИЛИЗАТОРА НАПРЯЖЕНИЯ 290.5 KB
  Полупроводниковые стабилизаторы напряжения используются в основном для питания электронной аппаратуры. При их разработке нужно обеспечить две группы показателей: 1 максимальное выходное напряжение заданный диапазон регулирования выходного напряжения допустимую относительную...
72730. Создание простейшего прикладного приложения: калькулятор, просмоторщик рисунков, графический редактор, текстовый редактор, медиаплеер 4.9 MB
  Цель работы. Разработка приложений использующих главное меню формы всплывающего меню строки состояния панели инструментов быстрых кнопок с картинками подсказок к кнопкам а также стандартных диалогов открытия и сохранения файлов на примере создания приложения для просмотра графических файлов точечных рисунков.