Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Приложение. Блок TRANSFER изменяет маршрут движения транзактов в зависимости от значения первого операнда (в основном или альтернативном направле­нии) при определенном






Блок TRANSFER изменяет маршрут движения транзактов в зависимости от значения первого операнда (в основном или альтернативном направле­нии) при определенном состоянии оборудования: обслуживающих уст­ройств, очереди, логических ключей и т.п.:

TRANSFER [A], B, [C], [D]

А - режим перехода;

В - метка первого альтернативного блока;

С - метка второго альтернативного блока;

D - константа, используемая для относительной переадресации транзак­тов.

Если операнд А блока TRANSFER отсутствует, то транзакт, поступив­ший в блок TRANSFER, безусловно отправляется в блок с меткой, указан­ной в операнде В.

Если операнд А - число от 0 до 1, то он определяет вероятность перехода транзакта по адресу С. При этом операнд В определяет альтернативный ад­рес.

Если операнд А равен «ВОТН», то транзакт делает попытку перемеще­ния в блок с меткой В. При невозможности войти в блок с адресом В, тран­закт перемещается в блок с меткой, указанной в операнде С.

Если операнд А равен «ALL», то транзакт делает попытку перемещения в блок с меткой В. При невозможности войти в данный блок, транзакт дела­ет попытку перемещения в блок, следующий за блоком с адресом В через D блоков, если и эта попытка безуспешна - то в блок, следующий за блоком с адресом В через 2D блоков. Адрес последнего блока, в который может пе­ремещаться транзакт, записывается в операнде С.

 

 

Блок TEST определяет направление движения транзакта в зависимости от выполнения условия, заданного алгебраическим соотношением: TEST XX А, В, [С]

Блок GATE разрешает движение транзактам (в основном или альтерна­тивном направлении) при определенном состоянии оборудования: обслужи­вающих устройств, очереди, логических ключей и т. п. Блок имеет следую­щий формат:

GATE XXX А, [В]

XXX - логический указатель (определяется таблицей 2);

А - имя или номер оборудования;

В - метка альтернативного блока.

Таблица 2 - Значения логического указателя блока GATE

 

 

При выполнении условия, записанного в логическом указателе XXX, транзакт переходит в следующий за GATE блок. В противном случае он на­правляется в блок с меткой, содержащейся в операнде В. Если операнд В не задан, то транзакт задерживается в блоке GATE до выполнения условия, определяемого указателем XXX. Например:

GATE SNF OTK, LABELl; транзакт переходит к следующему блоку, если многоканальное устройство ОТК не заполнено. В противном случае транзакт направляется в блок с меткой LABEL1; транзакт перемещается в блок с меткой KASSA2,

если одноканальное устройство 0KN01 занято; транзакт переходит к следующему блоку, если логический ключ KEY1 установлен в единицу. В противном случае транзакт задерживается в блоке GATE

Для изменения в ИМ значений логических ключей используется блок LOGIC, который имеет следующий формат: LOGIC X А

X - указатель операции с логическим ключом: S - установить (единица), R - сбросить (обнулить), I - инвертировать; А - имя или номер логического ключа.

Например:

LOGIC S KEY1; установить единичное значение ключа с именем KEY1 LOGIC R 2; обнулить значение второго ключа, определенного в

модели

LOGIC I KEY2; инвертироватв значение ключа с именем KEY2

Для организации циклов перемещения транзактов используется блок LOOP А, В

А - номер параметра транзакта, используемого в качестве счетчика цик­ла с указанием формата: «слово» (PF), «полуслово» (РН), «байт» (РВ);

В - метка блока, являющегося начальным в повторяющейся группе бло­ков.

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

Например:

ASSIGN 5, 3,, РН; присвоитв 5-му параметру текущего тран­закта значение 3 и формат «полуслово»

LABEL1 ADVANCE 15, 10; выполнение задержки транзакта на 15±10

единиц моделвного времени

LOOP PH5, LABEL1; организация цикла (многократной задержки транзакта), число повторений равно 3

Для синхронизации движения двух транзактов из семейства используют­ся два сопряженных блока MATCH,

например:

LABELl MATCH LABEL2; транзакт, вошедший в блок с меткой LABEL1,

будет ожидатв в этом блоке прихода транзакта того же семейства в блок с меткой LABEL2

LABEL2 MATCH LABELl; транзакт, вошедший в блок с меткой LABEL2,

будет ожидатв в этом блоке прихода транзакта того же семейства в блок с меткой LABELl

 

 







© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.