Динамические элементы системы
Динамическими объектами системы являются требования (транзакты), которые
создаются и уничтожаются в определенные моменты времени моделирования той
или иной системы. Требования перемещаются от блока к блоку, которые имитируют реальные элементы моделируемой системы.
Поведение требования определяется его несколькими фазовыми переменными
(атрибутами, параметрами).
Параметры требования – это набор значений, связанных с требованием. Каждое требование может иметь любое число параметров. Каждый параметр имеет
номер – положительное целое число. Значение любого параметра активного требования может быть возвращено через стандартный числовой атрибут (StandardNumberAttribute, SNA) P<iiia. o.aaiaaiey> или P$<eiyo.aaiaaiey>. Необходимо создать параметры требования и присвоить им значения до того, как они
будут использоваться. Параметрами могут быть:
• приоритет, определяющий предпочтение, которое требование получает, когда оно вместе с другими требованиями ожидает один и тот же ресурс. Требования с более высокими приоритетными значениями получают предпочтение. Наиболее важные приоритетные очереди в моделировании – цепь текущих событий (Current Events Chain), цепи задержек каналов обслуживания (FacilityDelayChains) и цепи задержек накопителей (StorageDelay
Chains). Эффект приоритета заключается в том, что требование с более высоким приоритетом будет выбрано на обслуживание раньше требований
с низким приоритетом;
• метка времени – абсолютное время – с начала моделирования или с момента входа требования в блок MARK(Метка) без операнда А;
• номер ансамбля – положительное целое число, сохраняемое внутри каждого требования. Номера для ансамбля используются, чтобы синхронизировать требования в блоках ASSEMBLE(Объединить), GATHER(Со_
брать) и MATCH(Согласовать). Когда требование создается блоком
GENERATE, его номер для ансамбля устанавливается равным номеру
требования. Когда требование создается блоком SPLIT(Разделить), номер для ансамбля устанавливается равным номеру родительского требования. Можно изменить номер требования для ансамбля, используя блок
ADOPT(Принять);
• индикатор задержки – флажок, сохраняемый в каждом требовании, который
устанавливается при входе в любой блок и сбрасывается при входе в блок
TRANSFER SIM. Он используется блоками TRANSFER SIM, чтобы переадресовать требования;
индикатор трассировки – флажок, сохраняемый в требовании, который заставляет генерировать сообщение трассы каждый раз, когда требование, входит в любой блок. Индикатор трассировки устанавливается блоком TRACE
(Трассировать) и сбрасывается блоком UNTRACE(Не трассировать);
• текущий блок – номер блока, который содержит требование;
• следующий блок – номер блока, в который требование будет пытаться войти
далее;
• цепи состояния требования – в них требование постоянно находится. Считается, что требование может находиться в одном из нескольких состояний:
– активное требование – самое приоритетное требование в цепи текущих событий;
– приостановленное требование – оно ожидает в цепи будущих или текущих
событий, чтобы стать активным;
– пассивное требование – оно при моделировании временно находится
в цепи пользователя (User Chain), задержки (Delay Chain) или ожидания
(Pending Chain);
– удаленное требование – оно было удалено и больше не существует в системе моделирования.
Кроме того, имеются другие состояния, которые не являются взаимоисключающими с вышеуказанными:
• выгруженное требование, которое выгрузилось из канала обслуживания и находится в одной или большем числе цепей прерываний;
• в любой момент во время дискретной стадии моделирования одно какое либо
требование пытается войти в новый блок GPSS. Это требование является
активным. Вообще, активное требование перемещается настолько далеко,
насколько это возможно в процессе моделирования. Когда оно не может перемещаться дальше, активизируется другое требование. При этом может
быть только одно активное требование. Активное требование – самое высокое приоритетное требование в цепи текущих событий.
Можно выделить стандартные числовые атрибуты, связанные с требованиями:
• A1 – определяет объединенный набор активных требований;
• MB$<eiy> или MB<iiia.> – возвращает 1, если имеется требование в блоке,
которое находится в том же самом наборе, что и активное требование. Иначе
возвращается 0;
• MP$<eiy> или MP<iiia.> – определяет время прохождения требования с заданным параметром, то есть текущее абсолютное время моделирования системы;
• M1 – время прохождения требования. M1 возвращает абсолютное время моделирования системы минус метка времени требования;
• P$<eiy>, P<iiia.> или *<eiy> – возвращает значение параметра активного
требования;
• PR – приоритет активного требования;
• XN1 – возвращает номер активного требования.
Дата добавления: 2015-10-13; просмотров: 1068;