Файл: Судовые системы автоматического контроля (системный подход к проектированию)..pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.10.2024

Просмотров: 150

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

должно содержать адрес того ПСИ, которому предназначено сооб­ щение, а также, в зависимости от ситуации, индекс срочности (не­ медленное прерывание, прерывание при подходе очереди, прерыва­ ние по приоритету и т. п.). Кроме того, в сообщении указывается адрес параметра, на который надо воздействовать (может быть косвенный

адрес), и данные о воздействии (массив сообщения). Структура ре­ акции-приказа выглядит следующим образом:

I:1. Заявка на прерывание.

2.Индекс срочности.

II:Адрес воздействия.

1.Номер ПСИ.

2.Адрес параметра. Содержимое индекса кос­ венной адресации при передаче нескольких воздействий сразу в разные адреса.

3. Признак реакции.

III: Объем реакции (описание массива).

1.Признак, показывающий вид реакции (либо

передаются полные данные о реакции, либо

только адрес стандартной реакции, содержа­ щейся в ПЗУ того ПСИ, в который поступает сообщение).

2.Число воздействий, содержащихся в ре­ акции-приказе (или адрес стандартной

реакции).

3.Реальное время начала воздействия

(или пустое слово).

IV: Реакция (массив данных).

1.Признак начала массива (или пустое слово).

2. Массив (включая пустой).

3. Признак конца.

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

адрес стандартной реакции и после этого адреса сразу поступает

признак конца массива. Использование такой формы сообщения су­ щественно экономит время на передачу реакции.

САК реагирует на возникновение стандартной ситуации следу­ ющим образом: подается заявка на обслуживание, формируется и передается сообщение о типовой ситуации, формируется и пере­ дается реакция на сообщение с учетом состояния всей контролируе­

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

ПСИ проходят сообщения одинаковой структуры, что позволяет унифицировать входные и выходные части всех ПСИ. Читатель

может самостоятельно убедиться, что такая структура сообщения

позволяет использовать ее и в нормальных режимах циклического опроса всех ПСИ вахтенной службой, и при формировании резерв­

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

жуточного ПСИ.

Формирование алгоритмов реакции на типовые ситуации. Если число типовых ситуаций невелико, то обычно алгоритмы разрешения этих ситуаций формируются заранее и хранятся в ПЗУ. Обращение

171


к ПЗУ происходит по признакам ситуации, а выбор программы производится постранично, т. е. для ПЗУ в этом случае принимается страничная организация памяти [89]. Таким образом, ситуация (сопутствующие ей признаки) действует как макрокоманда, вызы­ вающая страницу ПЗУ. Если же типовых ситуаций очень много,

а любая сложная реакция может быть представлена в виде компо­

зиции конечного числа элементарных реакций, то метод жестких

программ не совсем удобен. Эффективность его также низка вслед­ ствие больших затрат памяти. В этом случае элементарные реакции

можно рассматривать в качестве элементарных операторов. Каждому оператору соответствует своя страница памяти ПЗУ. В операцион­ ном устройстве САК должен быть регистр стандартных реакций. Программа-диспетчер, периодически проверяя содержание регистра,

при обнаружении признака возникновения ситуации начинает анализ

слова,

хранящегося

в

этом регистре.

 

В

зависимости

от

содержимого

последовательностей разрядов

(начиная с признака)

программа-диспетчер формирует последова­

тельность адресов

страниц ПЗУ с

элементарными операторами.

К концу такого анализа в ячейках ОЗУ, отведенных для хранения реакции, размещается обобщенная реакция на типовую ситуацию. Обобщенная программа-реакция обращается к страницам ПЗУ как к стандартным программам. Некоторые страницы ПЗУ при

этом могут использоваться неоднократно, что обеспечивает значи­

тельную экономию памяти ПЗУ.

Как бы ни был тщателен анализ типовых ситуаций, при большом

количестве всегда имеется вероятность пропуска какой-либо из них.

Сложность САК заставляет содержать вахтенную службу (опера­

торов). Поэтому для принятия решений в нестандартной ситуации

можно использовать оператор. Следовательно, программа-диспетчер

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

на нестандартную ситуацию. Для этой цели в САК должна суще­ ствовать развитая система связи с вахтенной службой (обозначенная в структуре САК ПУОИ). Другое решение связано с использованием самонастраивающихся и распознающих программ самопроверки и восстановления (ПСВ) или персептронных устройств, построенных

из

формальных

нейронов

[36, 37,

56, 58,

78, 93].

 

Выбор рациональной

системы

адресации.

Ранее упоминалось

о

рациональном

использовании

длины

слова

в судовых САК.

В главе 3 при выборе длины слова использовался 8-критерий, назы­

ваемый необходимой точностью представления операнда. Разработ­ чик математического обеспечения — системный программист обязан

учитывать технико-экономические требования, которые выражаются

в том, что конструкция памяти всегда должна быть унифицирована как по длине слова, так и по объему. Число разрядов в слове обычно

составляет 12, 16, 32, 36. Две первые цифры характерны для спе­

циализированных малых вычислительных устройств (ВУ), входя­

щих в состав САК, а две последние — для больших машин универ­ сального назначения. Если разработчик системы выбрал, например, по соображениям точности 12-разрядное слово, то увеличение раз­

172


рядов до 16 может быть обосновано только резким увеличением эффективности САКЭто объясняется тем, что расходы на оборудо­ вание в САК, при всех прочих равных условиях, растут пропор­

ционально числу разрядов. Слова в ВУ САК предстает всегда как операнд и как команда. Как команда оно налагает определенные требования на свою длину. Если рассматривать последовательно

все функции, выполняемые САК, то эти требования формируются

следующим образом:

— слово-команда (С) должно делиться на слоги (рис. 4.11): код операции (КОп), признаки операций и адресов (Пр), адресную

часть (А);

— длина адресной части N (А) должна быть не меньше эффек­

тивного множества точек, тяготеющих к какому-либо ПСИ

N (А)

> log2 «*;

 

 

С

•— объем памяти т 0 прямого (не

 

 

№п

ПР

А

страничного)

обращения в этом

случае не может превышать

Рис. 4.11.

т 0< 2 ^ > - 1 ;

— чтобы использовать память большего объема, необходимо

один разряд отдать под признак;

— ввиду того, что для САК характерна мультипроцессорность,

каждому процессору должна соответствовать своя интерпретация КОп, а число N (Пр) разрядов в Пр, определяющих выбор процес­

сора, не должно быть меньше, чем число

процессоров, т. е.

N (Пр) > log2 k +

1,

набор операций при этом будет, очевидно, определяться числом

лоп = k2 N(КОп).

Эти требования учитываются следующим образом. Пусть из соображений точности при заданной макроструктуре САК и струк­

туре ПСИ выбрана стандартная длина слова N (С). Так как известна структура ПСИ, то известно и число k. Далее, пусть расчеты струк­

турных

характеристик показали,

что

объем памяти должен быть

т = т 0

+ т с (т с — объем

страничной памяти). Тогда

 

N (А)

= log2 (m0 + 1);

 

N (А) =

log2 /г*;

 

т * = п * {-% *)’

а

 

 

 

 

 

N (КОП) = N (С)

(А) — N (Пр)

 

N (КОП) =

N о +

Ne — logs k — 1 —

 

— [шах (log2(m0+

1) | V log2я*]-

173


Нсли^теперь по законам функционирования САК выбрать число операций поп, то решение об увеличении длины слова можно принять лишь при выполнении условия

non> k - 2 " < ‘<оп>.

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

необходимость размещения на одной странице как сообщения о ти­ повой ситуации, так и реакции-ответа на это сообщение.

Иерархичность программы-диспетчера. При блочно-иерархиче-

скои структуре САК структура программы-диспетчера должна

иметь иерархическую структуру. Причем, в отличие от универсаль­ ных вычислительных систем, большая часть алгоритмов диспетче­ ризации в LAK зафиксирована структурно.

Блоки, входящие в состав программы-диспетчера, обрабатывают всю информацию о прерывании и исполнении специальных программ

внутри того или иного ПСИ. При поступлении заявок, обработка которых не может быть организована средствами одного ПСИ,

подпрограмма-диспетчер обращается к программе-диспетчеру (ОП).

Структура такой программы приведена на рис. 4.12.

174

Таким образом, специфика математического обеспечения САК

отражается не только в специальной части, но и в структуре общей

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

математического обеспечения САК.

§ 4.5

КОЛИЧЕСТВЕННЫЕ ХАРАКТЕРИСТИКИ АЛГОРИТМА КОНТРОЛЯ

Для выбора того или иного варианта алгоритма решения задачи

и оценки его влияния на эффективность САК целесообразно ввести

некоторые количественные характеристики алгоритмов. В частности,

для оценки длительности вычислений по данному алгоритму и тре­

буемого объема памяти могут быть приняты такие показатели, как

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

Под трудоемкостью алгоритма контроля Qa следует понимать количество стандартных операций, которые необходимо выполнить при его реализации. Под связностью алгоритма контроля S a следует понимать максимальное количество данных, которое необходимо запоминать при реализации данного алгоритма.

Вычисление этих характеристик можно произвести следующим образом. Оператор, реализующий какой-либо вычислительный уча­

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

 

A i( x J ,... ,

хп, г/х,...,

yk, QiSt),

 

(4.5.1)

а логическое условие qj в виде

 

 

 

 

<7/ =

Уj (•*!• • • >

Уъ

• •,

Ук, Д, Qj,

Sj),

(4.5.2)

где Q[ — трудоемкость

оператора; S i — связность

оператора;

индекс оператора

или

логического

условия.

 

 

Так как в алгоритме контроля встречаются четыре вида арифме­ тических и три вида логических операций, то трудоемкость опера­

тора определяется по выражению

 

« i = A f + + W _ . i + JVx i + J V , A ,

(4.5.3)

а логическое условие

 

вд =«;+ л' у - ^ + л'А т г + л'®щ'

<4-5-4>

где Qa — число и трудоемкость арифметических операций

в логи­

ческом условии; А +; А_; А х ; N/ — количество операций сложения,

вычитания, умножения и деления соответственно в данном опера­

торе или логическом условии; A v ; А Л; А ® — количество логиче­

ских

операций сложения, умножения и сравнения в данном логи­

ческом условии;

t+\ t_\ lx\ t/\

tv ; tA\

— время, затрачиваемое

на выполнение арифметических

и логических операций.

В

формулах (4.5.3—4.5.4) за стандартную принята операция

арифметического

сложения (самая короткая операция).

175


Если сделать допущение, что длительность выполнения одних и тех же операций в САК одинакова и не зависит от исходных дан­ ных (например, для САК с регулярной процедурой обслуживания),

то отношения t jt +;

. . %/£+ можно заменить постоянными

коэф­

фициентами.

 

 

 

 

В этом случае выражения 4.5.3 и 4.5.4 запишутся в виде:

 

Qa =

N+ +

+

NXKX + В Д ;

(4.5.5)

Q a =

Qa +

A ^ v K v +

Л ^ д К N®K®л + .

( 4

Для алгоритма контроля справедливо равенство

пт

Qa = X

Qa;+ X Q a / ,

1= 1

j = 1

где n — количество операторов; т — количество логических условий. Алгоритмы решения задач контроля судовых технических средств

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

причем как выбор той или иной ветви для данной реализации алго­

ритма, так и число циклов могут зависеть от непредвиденных обстоя­ тельств, например, от случайных значений входных параметров, используемых в данной реализации алгоритма. Поэтому вели­ чина Qa также может быть случайной и должна определяться с по- 1

мощью выражения

пт

Q a X Л -Qai +

X Дa -/>Q

/==1

/=1

где Pt — вероятность реализации £-го оператора; Р — вероятность реализации /-го логического условия.

Рассмотрим методику оценки трудоемкости алгоритмов контроля на примере алгоритма представления информации, реализованного

на УВМ типа УМ1—НХ.

Время выполнения арифметических и логических операций

УВМ УМ1—НХ: сложение— 130, вычитание— 150, умножение — 300 деление— 1000, логическое сравнение— 150 и посылка кодов—• 130 мкс.

Трудоемкость алгоритма представления информации при допу­ щении, что состояние объекта контроля определено в каждый мо­

мент времени, будет равна

 

 

 

Q .= tf+ + t f _ ^

+ tfe

=11, 6

(4.5.9)

ч

ч

ч

 

без учета операций, выполняемых с целью обнаружения и исправ­

ления происшедших в процессе реализации алгоритма сбоев и отка­

зов в самой УВМ,

176