Стандартные числовые атрибуты
В GPSS могут использоваться числа и переменные, значениями которых являются числовые характеристики состояния модели и ее элементов.
Общее название СЧА
Системные СЧА
AС1 – абсолютное модельное время;
С1 – относительное модельное время;
TG1 – значение счетчика завершений
СЧА транзакта
M1 – время нахождения в системе,
MP1 – транзитное время
PR – приоритет.
Pимя – значение параметра имя
СЧА устройства
Fимя – состояние занятости устройства имя
1 – занято, 0 – свободно
FVимя – состояние доступности устройства имя
1 – доступно, 0 – недоступно
СЧА многоканального устройства
Rимя – число свободных каналов
Sимя – число занятых каналов
SEимя – состояние незанятости устройства имя
1 – свободно, 0 – иначе
SFимя – состояние занятости устройства имя
1 – занято, 0 – иначе
СЧА очереди
Qимя – текущая длина очереди имя
QMимя – максимальная длина очереди имя
QTимя – среднее время пребывания в очереди имя
СЧА логического переключателя
LSимя – состояние переключателя имя
1 – установлен, 0 – сброшен
СЧА генератора случайных чисел
GNимя – случайное целое число от 0 до 999 при
при использовании в качестве аргумента
функции – дробное число от 0 до 0.999999
СЧА функции
FNимя – значение функции имя
СЧА переменной
Vимя – значение арифметической переменной имя
BVимя – значение логической переменной имя
СЧА сохраняемой величины
Xимя – значение сохраняемой величины имя
имя - имя объекта;
номер;
$символьное имя.
служит для задержки или изменения маршрутов транзактов в зависимости от соотношения двух СЧА
TEST X A,B,C
A, B ‑ сравниваемые СЧА.
X ‑ условие сравнения СЧА
o L (меньше);
o LE (меньше или равно);
o E (равно);
o NE (не равно);
o GE (больше или равно);
o G (больше).
Если проверяемое условие выполняется, то TEST пропускает транзакт в следующий блок. Если же это условие не выполняется, то транзакт переходит к блоку, указанному в поле C, а если оно пусто, то задерживается перед блоком TEST.
Например
TEST LE P$TIME,C1
не пропускает транзакты, у которых значение параметра с именем TIME больше текущего модельного времени.
TEST L Q$LINE,5, OUT
направляет транзакты в блок с именем OUT, если текущая длина очереди LINE больше либо равна 5.
Пример 4
Управляющая ЭВМ обрабатывает пакеты сигналов, поступающие с контроллера каждые 20 мсек. Время обработки равномерно распределено в интервале от 10 до 40 мсек. Максимальное количество пакетов, которое можно сохранить в ожидании обработки – 2, максимальное время ожидания пакетом начала обработки – 40 мсек.
нет место в буфере?
да
Буфер
нет
ЭВМ свободна? время превышено?
нет
да
да
ЭВМ
transit TABLE M1,8,4,20
GENERATE 20
TEST L Q$wait,2,out1
QUEUE wait
again GATE U proc,work
TEST LE M1,40,out2
ADVANCE 1
TRANSFER,again
work SEIZE proc
DEPART wait
ADVANCE 25,15
RELEASE proc
TABULATE transit
TERMINATE 1
out1 TERMINATE
out2 DEPART wait
TERMINATE