_WELCOMETO Radioland

Главная Схемы Документация Студентам Программы Поиск Top50  
Поиск по сайту



Навигация
Главная
Схемы
Автоэлектроника
Акустика
Аудио
Измерения
Компьютеры
Питание
Прог. устройства
Радио
Радиошпионаж
Телевидение
Телефония
Цифр. электроника
Другие
Добавить
Документация
Микросхемы
Транзисторы
Прочее
Файлы
Утилиты
Радиолюб. расчеты
Программирование
Другое
Студентам
Рефераты
Курсовые
Дипломы
Информация
Поиск по сайту
Самое популярное
Карта сайта
Обратная связь

Студентам


Студентам > Курсовые > Моделирование систем и сетей связи на GPSS

Моделирование систем и сетей связи на GPSS

Страница: 2/12

нятия определенных решений.

     Статистические объекты  GPSS/PC  служат  для сбора и обработки

статистических данных о функционировании модели.  К  ним  относятся

 1очереди  0и  1таблицы 0.

     Каждая очередь обеспечивает сбор и обработку данных о транзак-

тах, задержанных в какой-либо точке модели,  например перед однока-

нальным устройством.  Таблицы используются для получения выборочных

распределений некоторых случайных величин,  например времени пребы-

вания транзакта в модели.

     К вычислительным  объектам GPSS/PC относятся  1переменные  0(ариф-

метические и булевские) и  1функции 0.  Они используются для вычисления

некоторых величин, заданных арифметическими или логическими выраже-

ниями либо табличными зависимостями.

     Запоминающие объекты GPSS/PC обеспечивают хранение в памяти ПК

отдельных величин,  используемых в модели,  а также массивов  таких

величин. К ним относятся так называемые  1сохраняемые величины  0и  1мат-

 1рицы сохраняемых величин.

     К объектам  группирующего класса относятся  1списки пользователя

и  1группы.  0Списки пользователя используются для организации очередей

с  дисциплинами,  отличными  от  дисциплины "раньше пришел - раньше

обслужен". Группы в данном издании рассматриваться не будут.

     Каждому объекту  того  или иного класса соответствуют  1числовые

 1атрибуты 0, описывающие его состояние в данный момент модельного вре-

мени.  Кроме того,  имеется ряд так называемых  1системных атрибутов,

относящихся не к отдельным объектам,  а к модели в целом.  Значения

атрибутов всех объектов модели по окончании моделирования выводятся

в стандартный отчет GPSS/PC. Большая часть атрибутов доступна прог-

раммисту  и составляет так называемые  1стандартные числовые атрибуты

 1(СЧА),  0которые могут использоваться в качестве операндов операторов

исходной программы. Все СЧА в GPSS/PC являются целыми числами.

     Каждый объект GPSS/PC имеет  1имя  0и  1номер 0. Имена объектам даются

в различных операторах исходной программы, а соответствующие им но-

мера транслятор присваивает автоматически. Имя объекта представляет

собой начинающуюся с буквы последовательность букв латинского алфа-

вита, цифр и символа "подчеркивание". При необходимости имени любо-

го объекта, кроме имени блока, можно поставить в соответствие любой

номер с помощью оператора описания EQU, имеющего следующий формат:

                         1имя 0    EQU     1номер

Блокам присваиваются  их порядковые номера в исходной программе (не

путать с номерами строк!).

 

                              - 7 -

 

     Для  1ссылки   0на какой-либо стандартный числовой атрибут некото-

рого объекта соответствующий операнд оператора  исходной  программы

записывается одним из следующих способов:

        Ш1

                               1СЧА 0$ 1имя 0                      ;

        Ш1.5

                               1СЧАj 0                         ,

где  1СЧА  0- системное обозначение (название) конкретного стандартного

числового атрибута данного объекта;   1имя  0- имя объекта;   1j  0-  номер

объекта; $ - символ-разделитель.

      1Прогон  0текущей модели, т.е. собственно моделирование, выполня-

ется с помощью специальной управляющей программы,  которую называют

симулятором (от английского SIMULATE - моделировать,  имитировать).

Работа GPSS-модели под управлением симулятора заключается в переме-

щении транзактов от одних блоков к другим,  аналогично тому,  как в

моделируемой СМО перемещаются заявки, соответствующие транзактам.

     В начальный момент времени в GPSS-модели нет ни  одного  тран-

закта.  В  процессе  моделирования симулятор генерирует транзакты в

определенные моменты времени в соответствии с теми логическими пот-

ребностями,  которые возникают в моделируемой системе.  Подобным же

образом транзакты покидают модель в определенные моменты времени  в

зависимости от специфики моделируемой системы. В общем случае в мо-

дели одновременно существует большое  число  транзактов,  однако  в

каждый момент времени симулятор осуществляет продвижение только ка-

кого-либо одного транзакта.

     Если транзакт начал свое движение,  он перемещается от блока к

блоку по пути, предписанному блок-схемой. В тот момент, когда тран-

закт входит в некоторый блок, на исполнение вызывается подпрограмма

симулятора,  соответствующая типу этого блока,  а после ее выполне-

ния, при котором реализуется функция данного блока, транзакт "пыта-

ется" войти в следующий блок. Такое продвижение транзакта продолжа-

ется до тех пор, пока не произойдет одно из следующих возможных со-

бытий:

     1) транзакт входит в блок, функцией которого является удаление

транзакта из модели;

     2) транзакт входит в блок, функцией которого является задержка

транзакта на некоторое определенное в модели время;

     3) транзакт "пытается" войти в  следующий  блок,  однако  блок

"отказывается"  принять его.  В этом случае транзакт остается в том

блоке,  где находился, и позднее будет повторять свою попытку войти

в следующий блок.  Когда условия в модели изменятся,  такая попытка

может оказаться успешной, и транзакт сможет продолжить свое переме-

щение по блок-схеме.

 

                              - 8 -

 

     Если возникло одно из описанных выше условий, обработка данно-

го  транзакта прекращается,  и начинается перемещение другого тран-

закта.  Таким образом, выполнение моделирования симулятором продол-

жается постоянно.

     Проходя через блоки модели, каждый транзакт вносит вклад в со-

держимое   1счетчиков блоков 0.  Значения этих счетчиков доступны прог-

раммисту через СЧА блоков: W - текущее содержимое блока и N - общее

количество входов в блок.

     Каждое продвижение транзакта в модели является событием, кото-

рое должно произойти в определенный момент модельного времени.  Для

того,  чтобы поддерживать правильную  временную  последовательность

событий, симулятор имеет  1таймер  0модельного времени, который автома-

тически корректируется в соответствии с логикой,  предписанной  мо-

делью.

     Таймер GPSS/PC имеет следующие особенности:

     1) регистрируются  только целые значения (все временные интер-

валы в модели изображаются целыми числами);

     2) единица модельного времени определяется разработчиком моде-

ли,  который задает все временные интервалы в одних и тех же,  выб-

ранных им единицах;

     3) симулятор не анализирует состояние модели в каждый  следую-

щий момент модельного времени (отстоящий от текущего на единицу мо-

дельного времени),  а продвигает таймер к  моменту  времени,  когда

происходит ближайшее следующее событие.

     Значения таймера доступны программисту через системные СЧА  C1

( 1относительное время 0) и AC1 ( 1абсолютное время 0).

     Центральной задачей, выполняемой симулятором, является опреде-

ление того, какой транзакт надо выбрать следующим для продвижения в

модели, когда его предшественник прекратил свое продвижение. С этой

целью симулятор рассматривает каждый транзакт как элемент некоторо-

го списка.  В относительно простых моделях  используются  лишь  два

основных списка:  1список текущих событий  0и  1список будущих событий 0.

     Список текущих событий включает в себя те транзакты, планируе-

мое  время продвижения которых равно или меньше текущего модельного

времени (к последним относятся  транзакты,  движение  которых  было

заблокировано ранее).  Он организуется в порядке убывания приорите-

тов транзактов,  а в пределах каждого уровня приоритета - в порядке

поступления транзактов.

     Список будущих событий включает в себя транзакты,  планируемое

время  продвижения которых больше текущего времени,  т.е.  события,

связанные с продвижением этих транзактов,  должны произойти в буду-

 

                              - 9 -

 

щем.  Этот  список  организуется в порядке возрастания планируемого

времени продвижения транзактов.

     Симулятор GPSS/PC  помещает транзакты в зависимости от условий

в модели в тот или иной список и переносит транзакты  из  списка  в

список,  просматривает списки, выбирая следующий транзакт для обра-

ботки,  корректирует таймер модельного времени после обработки всех

транзактов в списке текущих событий.

 

       2. ОСНОВНЫЕ БЛОКИ GPSS/PC И СВЯЗАННЫЕ С НИМИ ОБЪЕКТЫ

 

                2.1. Блоки, связанные с транзактами

 

     С транзактами  связаны блоки создания,  уничтожения,  задержки

транзактов, изменения их атрибутов и создания копий транзактов.

     Для создания   транзактов,  входящих  в  модель,  служит  блок

GENERATE (генерировать), имеющий следующий формат:

                    1имя 0    GENERATE    A,B,C,D,E

     В поле A задается среднее значение интервала времени между мо-

ментами поступления в модель двух последовательных транзактов. Если

этот интервал постоянен,  то поле B не используется. Если же интер-

вал поступления является случайной величиной,  то в поле B указыва-

ется модификатор среднего значения, который может быть задан в виде

модификатора-интервала или модификатора-функции.

     Модификатор-интервал используется,  когда интервал поступления

транзактов является случайной величиной с равномерным законом расп-

ределения вероятностей. В этом случае в поле B может быть задан лю-

бой  СЧА,  кроме ссылки на функцию,  а диапазон изменения интервала

поступления имеет границы A-B, A+B.

     Например, блок

                        GENERATE    100,40

создает транзакты  через  случайные  интервалы времени,  равномерно

распределенные на отрезке [60;140].

     Модификатор-функция используется, если закон распределения ин-

тервала поступления отличен от равномерного. В этом случае в поле B

должна  быть записана ссылка на функцию (ее СЧА),  описывающую этот

закон,  и случайный интервал поступления  определяется,  как  целая

часть произведения поля A (среднего значения) на вычисленное значе-

ние функции.

     В поле C задается момент поступления в модель первого транзак-

та.  Если это поле пусто или равно 0,  то момент появления  первого

транзакта определяется операндами A и B.

 

                              - 10 -

 

     Поле D задает общее число транзактов, которое должно быть соз-

дано блоком GENERATE. Если это поле пусто, то блок генерирует неог-