Файл: Судовые системы автоматического контроля (системный подход к проектированию)..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