Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга бельфер.docx
Скачиваний:
228
Добавлен:
20.09.2019
Размер:
9.74 Mб
Скачать

4.1. Программа p6

Выделение памяти для формирования принятого кадра REJ, требующего передачу с очереди Оповт переданных на противоположную сторону кадров “I” (лаб. работа 3). Эта передача должна начинаться с кадра “I” в очереди Оповт, в заголовке которого N(S) = N(R), где N(R) – параметр принятого кадра REJ. В случае, если в очереди Оповт имеются кадры с N(S) < N(R), то они должны быть сняты с Оповт и поставлены в очередь свободных блоков Освоб. На рис. 1 приведен кадр REJ, включающий байт кадра REJ и 2 байта КПК этого кадра. Начальный адрес этого кадра с КПК - A(RGвх). Он имитирует входной регистр с канала RGвх, в котором в действительности аппаратным образом проверяется с помощью КПК был ли искажен кадр в канале. A(RGвх)

A(RGвх)

Биты

8

7

6

5

4

3

2

1

16 бит КПК

Значения

0

1

1

0

0

1

0

1

старший байт – все нули

младший байт - 01100101

…..N(R)… …тип кадра…

……………..кадр……………..

Рис. 1. Формат принятого кадра REJ с КПК во входной регистр с начальным адресом A(RGвх)

- установить тип кадра REJ: биты кадра <1-4>:= 0101

- установить N(R):=Z3 в биты <6-8> кадра REJ. Это значение N(R) равно значению N(S)= Z3, переданного ранее кадра “I” и находящегося в очереди Оповт. Параметр Z3 для разных вариантов и контрольного примера приведен в исходных данных (разд. 4.5.). Для контрольного примера N(S)= Z3=3, т.е.

<6-8>:=011 в кадре REJ, что отражено на рис. 1. Это означает, что для контрольного примера в лаб.3 первый и третий кадры “I” соответственно с N(S)=2 и 4 были приняты противоположной стороной правильно, второй кадр был отброшен на приеме из-за искажения в канале (с помощью механизма проверки КПК).

- установить КПК (старший байт равен нулю, младший байт – значение кадра REJ (01100101). Это означает, что кадр REJ принят с канала неискаженным.

D:=D+1

GO TO DISP4

4.2. Программа p7

Записать в массив по адресу А(N2+1) очереди свободных блоков Освоб принятый с канала связи неискаженным кадр REJ (без КПК) (рис.2).

А(N2+1)

Биты

16 бит

16 бит

8

7

6

5

4

3

2

1

Значения

0

0

0

1

1

0

0

1

0

1

.…адр. часть…… ….кадр REJ …………..

Рис. 2. Кадр REJ в массиве очереди свободных блоков Освоб

- откорректировать поля характеристики очереди Нсвоб очереди свободных блоков Освоб, (т.е. снять свободный блок с начальным адресом массива по А(N2+1) из очереди свободных блоков Освоб (рис.3).

АНсвоб

А(N2+2)

А(N1)

N1- N2 -1

Рис.3. Характеристика Нсвоб

- установить в ноль первое адресное поле первого массива свободного блока очереди свободных блоков Освоб с начальным адресом А(N2+2).

D:=D+1

GO TO DISP4