Begin
D:= 1
IF D = 1 THEN GO TO P6 ELSE IF D = 2 THEN GO TO P7 ELSE
IF D = 3 THEN GO TO P8 ELSE IF D = 4 THEN GO TO P9 ELSE
END
Программы:
P6 – формирование принятого кадра “REJ”, требующего передачу на противоположную сторону кадров “I” с очереди повтора Оповт;
P7 – запись этого кадра “REJ”, с контрольно-проверочной комбинацией КПК в первый массив блока очереди Освоб. Проверка безошибочного приема кадра REJ с канала связи;
P8 – перенос кадра REJ (без КПК), поступившего неискаженным, из Освоб в очередь принятых с канала кадров Окпм. Установление режима передачи в канал информационного кадра “I” c очереди повтора Оповт.;
P9 - поставить кадр REJ с начальным адресом массива из очереди принятых с канала кадров Окпм А(N2+1) в конец очереди свободных блоков Освоб.
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вх)
Биты | 16 бит КПК | ||||||||
Значения | старший байт – все нули младший байт - 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 бит | ||||||||
Значения |
.…адр. часть……..... ….кадр REJ ………………
Рис. 2. Кадр REJ в массиве очереди свободных блоков Освоб
Откорректировать поля характеристики очереди Нсвоб очереди свободных блоков Освоб, (т.е. снять свободный блок с начальным адресом массива по А(N2+1) из очереди свободных блоков Освоб (рис. 3).
АНсвоб
А(N2+2) | А(N1) | N1- N2 -1 |
Рис. 3. Характеристика Нсвоб
Установить в ноль первое адресное поле первого массива свободного блока очереди свободных блоков Освоб с начальным адресом А(N2+2).
D:=D+1
GO TO DISP4
4.3. Программа P8
Переписать из очереди свободных блоков Освоб кадр REJ (без КПК), поступивший неискаженным, в очередь принятых с канала кадров Окпм.(для упрощения рассматривается исходное состояние отсутствия очереди Окпм.):
- выделить память под характеристику Hкпм.. очереди принятых кадров Окпм.. с начальным адресом АHкпм;
- установить поля характеристики Hкпм (рис. 4);
- поставить в очередь Окпм массив кадра с начальным адресом А(N2+1);
АHкпм
А(N2+1) | А(N2+1) |
Рис. 4. Характеристика Hкпм
– установление режима передачи в канал информационного кадра “I” c очереди повтора Оповт и параметра CN(R), равного N(R) в принятом кадре REJ.
REGIM:=2 (передача в канал кадра “I” ” c очереди повтора Оповт.)
CN(R):=N(R)
D:=D+1
GO TO DISP4
4.4. Программа P9
Поставить кадр REJ с начальным адресом массива из очереди принятых с канала кадров Окпм А(N2+1) в конец очереди свободных блоков Освоб. Откорректировать поля характеристики очереди Нсвоб. (рис. 5).
АНсвоб
А(N2+2) | А(N2+1) | N2-N1 |
Рис. 5. Характеристика Нсвоб
Установить А(N1) в первое адресное поле и ноль во второе адресное поле в массиве с начальным адресом А(N2+1) очереди свободных блоков Освоб.
Установить А(N2+1) во второе адресное поле в массиве с начальным адресом А(N1) очереди свободных блоков Освоб.
Откорректировать поля характеристики очереди Hкпм (рис. 6).
АHкпм
Рис. 6. Характеристика Hкпм
D:=D+1
GO TO DISP4