У GPSS World здійснюється послідовне проходження транзактів у блоках. Але у процесі моделювання реальних систем потік транзактів може затримуватися, або змінювати свій напрям руху до блоку з вказаним номером залежно від різних умов. До групи зміни маршрутів транзактів в GPSS World входять блоки GATE (Впустити)і TEST.
Блок GATE використовується для керування рухом транзактів залежно від стану пристроїв. Формат запису:
GATE X А,[В]
Блок GATE працює у двох режимах:
· режим відмови на вході;
· режим дозволу на вході й альтернативному виході.
Під час роботи в режимі відмови блок GATE не пропускає транзакти, якщо відповідний об'єкт не перебуває в необхідному стані. Якщо ж поставлена в блоці GATE умова виконується, тоді активний транзакт входить унього й потім переходить до наступного блоку. Операнд А визначає назву або номер ОКП, для якого перевіряється умова.
Операнд В містить номер наступного блоку для вхідного транзакта, коли умовний оператор має значення “неправда”. Операнди А і В можуть бути назвою, додатним цілим числом, виразом у дужках, СЧА, СЧА*параметр. Якщо операнд В не використовується, то перевірка здійснюється в режимі відмови. Якщо результат цієї перевірки не буде “істина”, то транзакт потрапить в список повторних спроб об'єкта, що перевіряється. Коли стан кожного з об'єктів змінюється, заблокований транзакт знову активізується, повторюється перевірка заданої блоком GATE умови. Якщо ця умова виконується, транзакт входить у блок GATE і далі переходить до наступного за чергою блоку.
|
|
Для ОКП умовний оператор Х приймає такі значення для перевірки стану:
· NU – ОКП, заданий операндом А, вільний;
· U – ОКП, заданий операндом А, зайнятий.
Застосування інших логічних операторів блоку GATE для перевірки об'єктів апаратної категорії у станах переривання і недоступності розглядається у розділах 5.7 і 5.8.
Також існують логічні оператори, пов’язані з транзактами:
· М – блок GATE перевіряє виконання умови синхронізації у вказаному блоці моделі;
· NM – блок GATE перевіряє невиконання умови синхронізації у вказаному блоці.
Логічними операторами, що пов’язані з логічними ключами, є:
· LS – логічний ключ, заданий операндом А, у стані “включений”;
· LR – логічний ключ, заданий операндом А, у стані “виключений”.
Логічні ключі у GPSS використовуються для опису елементів системи, які можуть знаходитися у вище наведених двох станах – LR i LS (L – “ LOGIC ”, R – “ RESET ”, S – “ SET ”). Статистичні дані про роботу ключів не збираються. Для встановлення станів логічних ключів використовується блок LOGIC (Змінити),який має такий формат: