Блок LINK може використовуватися у двох режимах — умовному та безумовному. При використаннi умовного режиму спочатку перевiряється наявність доступного для транзакту пристрою. Якщо такий пристрiй знайдеться, транзакт передається на цей пристрiй. У противному разі транзакт перемiщується в ланцюг користувача. У безумовному режимi транзакт відразу перемiщується в ланцюг користувача.
Операнд В блоку LINK дозволяє використовувати три можливостi для розмiщення транзактiв у ланцюгу користувача:
FIFO — вiдправити транзакт у кiнець ланцюга користувача;
LIFO — вiдправити транзакт у початок ланцюга користувача;
Pj — помiстити транзакт у ланцюг користувача, безпосередньо перед транзактом, у якого значення j-го операнда бiльше.
Ім’я оператора LOGIC.
Роль у моделі: Змінює стан логiчного перемикача.
Значення операндів:
Операнд |
Значення |
Значення за
замовчуванням |
A |
Номер або iм’я логiчного перемикача |
Помилка |
Х |
Допоміжний оператор, що задає умову роботи |
Нуль |
Зауваження: Допомiжний оператор Х може набувати таких значень:
R — скинути логiчний перемикач;
S — установити логiчний перемикач;
I — iнвертувати логічний перемикач.
Ім’я оператора LOOP.
Роль у моделі: Зорганізовує цикл.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Номер параметра транзакту |
Помилка |
B |
Мiтка блока, на який буде передано транзакт |
Нуль |
Ім’я оператора MARK.
Роль у моделі: Визначає час перебування транзакту в частині моделі.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Номер параметра транзакту, куди потрібно записати значення абсолютного модельного часу |
Див. примітку |
Зауваження: Значення номера транзакту може не задаватися в блоці MARK, тоді відмітка часу записуватиметься у СЧА М1.
Ім’я оператора MATCH.
Роль у моделі: Синхронiзує рух транзактiв у моделі.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
А |
Мітка спряженого блока |
Помилка |
Ім’я оператора MSAVEVALUE.
Роль у моделі: Задає або змінює значення одного з елементiв матрицi.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Номер або iм’я матрицi, у якiй потрiбно змiнити елемент |
Помилка |
B |
Номер рядка |
Помилка |
С |
Номер стовпця |
Помилка |
D |
Величина, що використовується у процесі модифікації |
Помилка |
Зауваження: Блок може використовуватись як у режимi додавання або вiднiмання значень, так i в режимi замiни.
Ім’я оператора PREEMPT.
Роль у моделі: Моделює захоплення пристрою.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Iм’я пристрою, який буде захоплений |
Помилка |
B |
Необов’язковий операнд. Використовується для того, щоб зазначити умову захоплення |
Пояснення наведено
далі |
С |
Iм’я блока, куди буде передано транзакт, обробка якого перервалася |
Помилка |
D |
Номер параметра транзакту, куди буде записано час, що лишився до закiнчення обробки |
— |
E |
Указується, чи виконуватиме транзакт і далі обробку на цьому пристрої. Літери RE вказують, що транзакт буде знятий з обслуговування |
Обробка триватиме |
Зауваження: Блок обов’язково використовується в парi з блоком RETURN. Операнд В блоку PREEMPT може не використовуватися. У такому разі захоплення виникає, коли транзакт, що обслуговується, сам не є захоплювачем. У противному разі в операндi В зазначаються лiтери PR, i захоплення відбувається, якщо захоплювач має вищий пріоритет, нiж транзакт, що обслуговується на пристрої.
Ім’я оператора PRIORITY.
Роль у моделі: Змiнює значення рівня прiоритету транзакту.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Константа. Значення рівня пріоритету |
Помилка |
Зауваження: Значення рiвня прiоритету може становити вiд 0 до 127.
Ім’я оператора QUEUE.
Роль у моделі: Виконує автоматичне збирання статистики про очiкування.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Назва черги |
Помилка |
Зауваження: Блок обов’язково використовується в парi з блоком DEPART.
Ім’я оператора RELEASE.
Роль у моделі: Моделює завершення роботи на пристрої.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Ім’я приладу |
Помилка |
Зауваження: Блок обов’язково використовується в парi з блоком SEIZE.
Ім’я оператора RETURN.
Роль у моделі: Моделює вихід пристрою з режиму переривання.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Ім’я приладу |
Помилка |
Зауваження: Блок обов’язково використовується в парi з блоком PREEMPT.
Ім’я оператора SAVEVALUE.
Роль у моделі: Змiнює значення збережуваної величини.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Номер або iм’я збережуваної величини |
Помилка |
B |
Величина, що використовується у процесі модифікації |
Помилка |
Ім’я оператора SEIZE.
Роль у моделі: Моделює початок роботи на пристрої.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Ім’я приладу |
Помилка |
Зауваження: Блок обов’язково використовується в парi з блоком RELESE.
Ім’я оператора SELECT.
Роль у моделі: Використовується з метою перегляду багатьох елементiв однiєї групи, щоб з’ясувати, чи задовольняє стан якогось із них зазначену умову.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Номер параметра, у який записується номер члена групи |
Помилка |
B
С |
Найменший і найбiльший номери з множини блоків, які переглядаються |
Помилка |
Х |
Допомiжий оператор. У режимi порiвняння визначає спосiб порівняння значень, які вказанi в операндах D та Е. У режимi мiнiмуму та максимуму слова MIN або MAX |
|
D |
У режимi порiвняння — значення, з яким порiвнюється атрибут, що його вказано в операндi Е. У режимi мiнiмуму та максимуму не використовується |
Помилка |
E |
Значення СЧА, з яким відбувається порівняння |
Помилка |
Зауваження: Значення операнда Х.
Операнд Х у режимi порiвняння може набувати таких значень:
G — операнд D більший за операнд Е;
GE — операнд D більший або дорiвнює операнду Е;
E — операнд D дорiвнює операнду Е;
NE — операнди D та Е не рiвнi;
LE — операнд D менший або дорiвнює операнду Е;
Е — операнд D менший за операнд Е.
Блок SELECT може працювати в одному з таких режимiв:
порiвняння із заданим значенням;
режим MIN або MAX.
Ім’я оператора SPLIT.
Роль у моделі: Використовується для введення в модель додаткових транзактiв, якi мають тi самі властивостi, що й транзакт-батько.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
А |
Число додаткових транзактiв, що ввiйдуть до моделі |
Помилка |
В |
Iм’я блока, куди прямуватимуть нащадки |
Помилка |
С |
Номер параметра упорядкування |
Упорядкування не вiдбувається |
D |
Кiлькiсть параметрiв, що їх повинен мати кожний нащадок |
Та сама кiлькiсть, що й у батька |
Зауваження: Операнди C, D є необов’язковими.
Ім’я оператора TABULATE.
Роль у моделі: Записуються в таблицю значення вибірки в той момент, коли транзакт входить до блока.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Iм’я (символічне або числове) таблицi, у якій використовується вiдповiдне значення |
Помилка |
Зауваження: Одну й ту саму таблицю можна використовувати в кiлькох блоках TABULATE, якщо в цьому є логiчна потреба.
Ім’я оператора TERMINATE.
Роль у моделі: Знищує транзакти.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Значення, на яке зменшується лічильник завершень |
Нуль |
Ім’я оператора TEST.
Роль у моделі: Перевiряє умову для визначення напряму руху транзактiв.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Iм’я першого СЧА |
Помилка |
B |
Iм’я другого СЧА |
Помилка |
С |
Необов’язковий. Мiтка, на яку переходить транзакт у разi невиконання умови |
Помилка |
Х |
Допоміжний оператор, який зазначає умову для перевірки |
Значення наведено далі |
Зауваження: Операнд С є необов’язковим. Якщо присутнi лише операнди А та В, то перевiрка виконується у режимi вiдмови. Під час використання операнда С перевірка відбувається у режимi умовної передачi.
Значення операнда Х блока TEST:
G — операнд А бiльший за операнд B;
GE — операнд А бiльший або дорiвнює операнду B;
E — операнд А дорiвнює операнду B;
NE — операнд А не дорiвнює операнду B;
LE — операнд А бiльший за операнд B;
L — операнд А бiльший за операнд B.
Ім’я оператора TRANSFER.
Роль у моделі: Змінює напрямок руху транзактів. Може використовуватися у таких режимах: безумовної передачi, умовної передачi, BOTH, ALL, PICK, FN, SBR, SIM.
Значення операндів (приведені для перших чотирьох режимiв):
Режим |
Операнд |
Значення |
Значення за
замовчуванням |
Безумовний
Статистичний
BOTH
ALL |
А |
Не використовується
Частота передавання
Слово BOTH
Слово ALL |
Помилка
Помилка |
Безумовний
Статистичний
BOTH |
В |
Мiтка блока, куди передається транзакт |
Помилка |
ALL |
В |
Мiтка першого блока, куди робить спробу ввійти транзакт |
Помилка |
Безумовний |
С |
Не використовується |
|
Статистичний
BOTH |
С |
Мітка альтернативного блока |
Помилка |
ALL |
С |
Мiтка останнього блока, куди робить спробу ввійти транзакт |
Помилка |
Лише
ALL |
D |
Крок переходу |
Одиниця |
Ім’я оператора UNLINK.
Роль у моделі: Виводить один з транзактiв з ланцюга користувача та перемiщує його до списку поточних подiй.
Значення операндів:
Операнд |
Значення |
Значення за замовчуванням |
A |
Номер або iм’я ланцюга користувача |
Помилка |
B |
Мiтка блока, куди передається транзакт |
Помилка |
С |
Число транзактiв, якi виводяться. Може бути СЧА, константою або символом ALL |
Помилка |
D
Е |
Визначається, з якого краю виводитимуться транзакти |
Транзакти виводитимуться з початку ланцюга |
F |
Необов’язковий операнд, задає мiтку блока, на яку перемiщується транзакт, що ініціював вивід |
Транзакт безумовно перемiщується у наступний блок |
Зауваження: Під час використання блока існують двi можливостi:
1. Транзакти можуть бути взятi з початку або з кiнця ланцюга користувача. Щоб указати, з якого боку ланцюга користувача виводитимуться транзакти, використовуються операнди D та E. Якщо ці два операнди порожні, транзакти виводитимуться з початку ланцюга користувача. Якщо в операндi D міститься BACK, а операнд Е порожній, транзакти виводяться з кiнця списку користувача.
2. Транзакти можуть бути виведені з будь-якого місця моделi залежно вiд умови, що задається користувачем. Умова задається таким чином: в операнд D записується номер параметра транзакту, який буде порівнюватися із значенням, записаним в операнді Е. |