Скачиваний:
9
Добавлен:
28.03.2019
Размер:
123.39 Кб
Скачать

GPSS (General Purpose Simulation System) - система моделирования общего назначения.

Пример программы на GPSS:

Операторы

Операнды (A))

Описание

 

 

 

GENERA)TE

5

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

 

 

 

 

 

Свободно ли устройство. Если устройство занято, программа

SEIZE

USTR

остаётся на текущей строке, пока устройство не

 

 

освободится.

A)DVA)NCE

2

Пользователь занимает устройство на 2 минуты.

 

 

 

RELEA)SE

USTR

Освобождение устройства.

 

 

 

TERMINA)TE

 

Удаление заявки из системы.

 

 

 

GENERA)TE

120

Остановка по времени.

 

 

TERMINA)TE

1

GENERA)TE 120: прошло 2 часа — вырабатывается заявка.

 

 

STA)RT

1

 

 

 

 

GENERA)TE A), [B], [C]1.

Рис.1. Схема примера программы

 

Рис.2. Временная шкала примера программы

Задание 1: Смоделировать процесс обработки 500 заданий.

GENERA)TE

5

 

SEIZE

USTR

 

A)DVA)NCE

2

 

RELEA)SE

USTR

 

TERMINA)TE

1

1 пользователь освободил устройство — из 500

STA)RT

500

вычитается 1, пока не станет STA)RT 0, программа

 

 

будет выполняться.

1[ ] - необязательно

 

Рис.3. Временная шкала к заданию 3

GENERA)TE

5

 

QUEUE

OCHER

Занятие очереди.

SEIZE

USTR

 

DEPORT

OCHER

Выход из очереди.

A)DVA)NCE

7

 

RELEA)SE

USTR

 

TERMINA)TE

1

 

STA)RT

500

 

Рис.4. Схема к заданию 1 (с очередью)

TRA)NSFER, MET1 (что угодно)

TRA)NSFER BOTH (рис. 5)

Рис.5

GENERA)TE

5

QUEUE

OCHER1

TRA)NSFER

BOTH, CHA)N1, CHA)N2

CHA)N1

SEIZE 1

DEPA)RT

OCHER1

A)DVA)NCE

5,3 (5 ± 3)

RELEA)SE

1

TRA)NSFER

,EXIT

CHA)N2

SEIZE 2

DEPART

OCHER1

A)DVA)NCE

7,2

RELEA)SE

2

EXIT TERMINA)TE 1

STA)RT

100

Статистический режим

GENERA)TE

5

QUEUE

OCHER1

TRA)NSFER

0.7, CHA)N1, SBOI

CHA)N1

SEIZE 1

DEPA)RT

OCHER1

A)DVA)NCE

5,3 (5 ± 3)

RELEA)SE

1

TRA)NSFER

,EXIT

SBOI TERMINA)TE

DEPA)RT

OCHER1

A)DVA)NCE

7,2

RELEA)SE

2

EXIT TERMINA)TE 1

STA)RT

100

Режим A)LL

 

 

 

 

 

К1

 

 

 

 

 

 

К2

 

 

 

К3

 

 

 

К4

 

 

 

Рис.6

GENERA)TE

5

QUEUE

OCHER1

TRA)NSFER

A)LL, MET1, MET4, 5

MET1

SEIZE 1

DEPA)RT

OCHER1

A)DVA)NCE

5,3

RELEA)SE

1

EXIT

TERMINA)TE 1

MET2

SEIZE 2

DEPA)RT

OCHER1

A)DVA)NCE

10,2

RELEA)SE

2

TRA)NSFER

,EXIT

MET3

SEIZE2

DEPA)RT

OGHER1

A)DVA)NCE

7,1

RELEA)SE

3

TRA)NSFER

,EXIT

STA)RT

100

GENERA)TE

5

TRA)NSFER

A)LL, MET1, MET5, 4

MET1

SEIZE 1

A)DVA)NCE

5,3

RELEA)SE

1

TRA)NSFER

,EXIT

MET2

SEIZE 2

A)DVA)NCE

10,2

RELEA)SE

2

TRA)NSFER

,EXIT

MET3

SEIZE 2

A)DVA)NCE

3,2

RELEA)SE

2

TRA)NSFER

,EXIT

 

MET4

SEIZE 4

A)DVA)NCE

4,2

RELEA)SE

4

EXIT

TERMINA)TE 1

MET5

TERMINA)TE

STA)RT

100

Режим PICK

 

GENERA)TE

5

TRA)NSFER

PICK, 3, 6

TRA)NSFER

,MET1

TRA)NSFER

,MET2

TRA)NSFER

,MET3

TRA)NSFER

,MET4

MET1

SEIZE 1

A)DVA)NCE

12

RELEA)SE

1

TRA)NSFER

,VYHOD

...

 

MET4

SEIZE 4

A)DVA)NCE

8

RELEA)SE

4

VYHOD

TERMINA)TE 1

STA)RT

100

Блок STORA)GE

 

NA)K1 STORA)GE 3

 

QUEUE

ENTER NA)K1

DEPA)RT

LEA)VE NA)K1

Блок GA)TE

SNF (накопитель не заполнен)

NA)K1

STORA)GE 3

GENERA)TE

2

GA)TE

SNF NA)K1, UDA)L

ENTER

NA)K1

SEIZE

1

LEA)VE

NA)K1

A)DVA)NCE

10

RELEA)SE

1

TERMINA)TE

1

UDA)L

TERMINA)TE

STA)RT

100

SF (накопитель заполнен)

NA)K1

STORA)GE 3

GENERA)TE

5

GA)TE

SF NA)K1, MET2

SEIZE

1

A)DVA)NCE

13

RELEA)SE

1

TRA)NSFER

,VYHOD

MET2

ENTER NA)K1

SEIZE

2

LEA)VE

NA)K1

A)DVA)NCE

9

RELEA)SE

2

TERMINA)TE

1

VYHOD

TERMINA)TE 1

STA)RT

100

Псевдослучайные последовательности

Обладают всеми свойствами случайных последовательностей, но получены по алгоритму (детерминированы).

Способы получения ПСП:

аппаратный

программный Генератор ПСП (ГПСП)

ГПСП на линейных регистрах сдвига (ЛРС).

Основой для задания ГПСП на ЛРС является характеристический многочлен

(полином), степень которого указывает разрядность ГПСП, а ненулевые коэффициенты — наличие связи между разрядами ЛРС и сумматорами по модулю два.

 

Пример 1 (Рис.7):

 

 

Пример 2:

 

 

 

 

 

 

 

 

 

 

 

f (x)=x5 +x2+1

f (x)=x4 +x3+x+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

2

3

4

5

 

 

 

 

1

2

3

4

 

1

1

0

0

0

0

 

 

1

 

1

0

0

0

 

 

2

0

1

0

0

0

 

 

2

 

1

1

0

0

 

 

3

0

0

1

0

0

 

 

3

 

1

1

1

0

 

 

4

1

0

0

1

0

 

 

4

 

0

1

1

1

 

 

5

0

1

0

0

1

 

 

5

 

0

0

1

1

 

 

6

1

0

1

0

0

 

 

6

 

0

0

0

1

 

 

7

1

1

0

1

0

 

 

7

 

1

0

0

0

 

 

8

0

1

1

0

1

 

 

 

 

 

T = 6

 

 

 

9

0

0

1

1

0

 

 

 

 

1

1

1

1

 

 

10

1

0

0

1

1

 

 

1

 

1

0

1

1

 

 

11

1

1

0

0

1

 

 

2

 

1

1

0

1

 

 

12

1

1

1

0

0

 

 

3

 

0

1

1

0

 

 

13

1

1

1

1

0

 

 

4

 

1

0

1

1

 

 

14

1

1

1

1

1

 

 

 

 

 

T = 3

 

 

 

15

0

1

1

1

1

 

 

1

 

1

0

0

1

 

 

16

0

0

1

1

1

 

 

2

 

0

1

0

0

 

 

17

0

0

0

1

1

 

 

3

 

0

0

1

0

 

 

18

1

0

0

0

1

 

 

4

 

1

0

0

1

 

 

19

1

1

0

0

0

 

 

 

 

 

T = 3

 

 

 

20

0

1

1

0

0

 

 

1

 

0

0

0

0

 

 

21

1

0

1

1

0

 

 

 

 

 

T = 1

 

 

 

22

1

1

0

1

1

 

 

1

 

1

0

1

0

 

 

23

1

1

1

0

1

 

 

2

 

0

1

0

1

 

 

24

0

1

1

1

0

 

 

3

 

1

0

1

0

 

 

25

1

0

1

1

1

 

 

 

 

 

T = 2

 

 

 

26

0

1

0

1

1

 

 

 

 

 

 

 

 

 

 

27

1

0

1

0

1

 

 

 

 

 

 

 

 

 

 

28

0

1

0

1

0

 

 

 

 

 

 

 

 

 

 

29

0

0

1

0

1

 

 

 

 

 

 

 

 

 

 

30

0

0

0

1

0

 

 

 

 

 

 

 

 

 

 

31

0

0

0

0

1

 

 

 

 

 

 

 

 

 

 

32

1

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T = 31.

 

 

 

 

 

 

T = 15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00000 — запрещённая комбинация.

Рис.7

Если f(x) является примитивным, то ПСП будет иметь период T = 2n – 1.

f(x) = x3 + x + 1

Если f(x) – примитивный, то последовательность называется M(max)- последовательностью.

T = 2n – 1

Задание:

f1(x) = x4 + x3 + 1 f2(x) = x4 + x + 1

Рис.8

Рис.9

Рис.10

1

1

0

0

0

 

1

1

0

0

0

2

1

1

0

0

 

2

0

1

0

0

3

1

1

1

0

 

3

0

0

1

0

4

1

1

1

1

 

4

1

0

0

1

5

0

1

1

1

 

5

1

1

0

0

6

1

0

1

1

 

6

0

1

1

0

7

0

1

0

1

 

7

1

0

1

1

8

1

0

1

0

 

8

0

1

0

1

9

1

1

0

1

 

9

1

0

1

0

10

0

1

1

0

 

10

1

1

0

1

11

0

0

1

1

 

11

1

1

1

0

12

1

0

0

1

 

12

1

1

1

1

13

0

1

0

0

 

13

0

1

1

1

14

0

0

1

0

 

14

0

0

1

1

15

0

0

0

1

 

15

0

0

0

1

16

1

0

0

0

 

16

1

0

0

0

T = 15

 

 

 

 

T = 15

 

 

 

Если сложить по модулю 2 две сдвинутые копии M-последовательности, получится эта же M-последовательность.

1111 0101 1001 000

0111 1010 1100 100

1000 1111 0101 100

Данное свойство M-последовательностей представляет собой интерес по той причине, что именно оно обеспечивает такие функции авто- и взаимной корреляции, которые напоминают корреляционные функции шума и делает M-последовательности полезными для измерения параметров движения и передачи информации.

Свойства M-последовательности:

1.Период T = 2n – 1

2.Вероятность P(1) = 2n-1/(2n – 1)

P(0) = (2n – 1 - 1)/(2n – 1)

3.Количество серий. Серия — идущие подряд одинаковые цифры. В периоде n последовательностей из общего числа 2n-1 серий 2n-2 содержит 1 символ, 2n-3 — 2 и т. д., пока это число не станет равным одному.

4.Автокорреляционная функция. Имеются две M-последовательности, сдвинутые друг относительно друга на некоторое число тактов %Тау (кроме %Тау = 0 и %Тау = 2n - 1). АКФ — разность между числом позиций, на которых эти последовательности совпадают, и числом позиций, на которых символы отличаются, отнесённая к общему числу позиций.

1111 0 1 0 11 00 1 000 n = 4 0111 1010 1100 100 1000 1111 0101 100

8 серий:

4 серии — 1 символ

2 серии — 2 символа

1 серия — 3 символа

1 серия — 4 символа

Задание:

f1(x) = x2 + x + 1 f2(x) = x3 + x + 1

 

 

 

 

Рис.11

 

Рис.12

 

 

 

 

 

 

 

 

 

 

 

 

1

1

0

0

 

 

 

 

 

2

1

1

0

 

 

 

 

 

3

1

1

1

 

 

 

 

 

4

0

1

1

 

1

1

0

 

5

1

0

1

 

2

1

1

 

6

0

1

0

 

3

0

1

 

7

0

0

1

 

4

1

0

 

8

1

0

0

 

T = 3

 

 

T = 7

 

 

 

1101 1011 0110 1101 1011 0

1011 1001 0111 0010 1110 0

0110 0010 0001 1111 0101 0

При сложении двух M-последовательностей различного периода получается периодичная последовательность, причём длина периода равна наименьшему общему кратному исходных последовательностей.

f1(x) * f2(x) = (x2 + x + 1) * (x3 + x + 1) = x5 + x3 + x2 + x4 + x2 + x + x3 + x + 1 = x5 + x4 + 1 f(x) = x5 + x4 + 1