книги из ГПНТБ / Оперативные графические системы в автоматизации проектирования
..pdfРис. 3.4. Схема информационных потоков в ОГС
чсппя проекций, выполнения операции масштабирования элементов изображения, попадающих в «окно», и стира ния элементов вне «окна». Процедура МАРКЕР заклю чается в генерировании координат нового положения следящего символа для работы светового пера в режиме трассировки или светового маркера, управляемого кнюпельным механизмом согласно поступающей с пульта информации. Процедура ОБРАБОТКА СТРУКТУРЫ ДАННЫХ состоит в выполнении ряда операций над структурой данных, которые заключаются в обработке адресов связи отдельных блоков структуры, записи или чтении данных из блоков. Процедура ФОРМИРОВА НИЕ МАССИВА КОМАНД ОТОБРАЖЕНИЯ строит программу отображения для графического процессора, содержащую графические команды и команды управле ния. Процедура АНАЛИЗ IT ОПТР1МИЗАЦИЯ заклю чается в проведении ряда вычислительных операций по решаемой проблеме (проведение анализа электрических цепей, получение физических параметров и др.). Назна чением процедуры ФОРМИРОВАНИЕ СООБЩЕНИЯ ОПЕРАТОРУ является подготовка управляющей ин формации для пользователя. Вслед за ней выполняется процедура ВЫВОД СООБЩЕНИЯ ОПЕРАТОРУ (ВСО), которая состоит в том, что печатается текстовое сообщение на пишущей машинке, засвечиваются ин дикаторы клавиш ФК и табло оператора, подается зву ковой сигнал и др. Процедура ФОРМИРОВАНИЕ КО МАНД ВВОДА ИЗ ГП заключается в подготовке ин формации, управляющей вводом из ГП. Процедура ВВОД ИНФОРМАЦИИ ИЗ ГП (ВИГП) осуществляет считывание служебной информации (символа состояния, указателей причин прерывания и др.), а также графиче ской информации (содержимое регистров отклонения X, Y, область памяти ГП и т. д.). Процедура ВЫЧЕРЧИ ВАНИЕ ИЗОБРАЖЕНИЯ (BIT) заключается в преоб разовании цифровой информации, содержащейся в гра фических командах, в сигналы, управляющие яркостью луча и его перемещением иа экране ИН. По окончании выполнения процедур ВЫВОД СООБЩЕНИЯ ОПЕРА ТОРУ, ВВОД ИНФОРМАЦИИ ИЗ ГП, ВЫЧЕРЧИВА НИЕ ИЗОБРАЖЕНИЯ требование является обрабо танным и система ждет последующих требований пользователя.
61
Все множество процедур обработки требований X —
= {л'Д, (k = \, N) (где N — число процедур в множестве) можно разбить на три подмножества процедур Хцп, Хгп, ХПвв2> выполняемых соответственно в ЦП, ГП и ПВВ2. Очевидно, что для этих подмножеств должны соблюдаться следующие условия:
Дцп П ^-гп = 0 ; ^гпП X ПВВ2 = 0 ;
(3.33)
ДцП П Л'пвВ2 = 0 ; ДцП U A'm U ^ПВВ2 = X.
Каждая из процедур, входящих в подмножества АЦп, ХГп и А'пипг. может быть реализована программным, микропрограммным или аппаратурным способами, а так же смешанным способом, состоящим в произвольной комбинации любых двух либо всех трех предыдущих. Способ реализации k-i\ процедуры оказывает существен ное влияние па математическое ожидание времени ее однократного выполнения п„ которое является важней шим параметром процедуры. Для расчетов модели ОГС необходимо знать для всех процедур значения тл, т. е. следует определить компоненты вектора
т |
{tv т , , . . . , Тд,}. |
(3.34) |
Приведем ряд расчетных соотношений, позволяющих найти некоторые значения т/,.
Для процедур хп £ХцП и реализуемых программным способом тд определяется по формуле:
тк |
'/.•ЦП |
(3.35) |
|
Я ЦП |
|||
|
|
||
где Л’/,-цп— среднее число команд ЦП, |
реализующих |
/г-ю процедуру, с учетом многократного повторения ко манд в циклах; Яцп •— производительность ЦП, выра женная в командах в секунду.
Для процедур Xk 6 ^цп п реализуемых микропро граммным способом хи определяется выражением
М *цп |
(3.36) |
|
Я ЦП |
||
|
где М/,цп — среднее число микрокоманд ЦП, реализую щих k-io процедуру, с учетом многократного повторения
62
микрокоманд в циклах. Производительность ЦП в дан ном случае выражается в микрокомандах в секунду.
Аналогичные выражения можно записать для сред них времен выполнения программных п микропрограмм ных процедур, выполняемых в ГП:
М-ГП тк (3.37)
"гп ’
где А/, гп— среднее число команд ГП, реализующих /г-го процедуру, с учетом многократного повторения команд
вциклах; Пт — производительность ГП, выраженная
ккомандах в секунду;
тк |
ЛДгП |
(3.38) |
|
"гп |
|||
|
|
где M/irri — среднее число микрокоманд ГП, реализую щих k-ю процедуру, с учетом многократного повторения микрокоманд в циклах. В данной формуле Ягп выра жается в микрокомандах в секунду.
• Величина ги для аппаратных процедур определяется ■конструкцией и алгоритмом функционирования блока, реализующего процедуру. Разумеется, что конструкции блоков весьма разнообразны, поэтому дать общую фор мулу для вычисления т/( не представляется возможным. Покажем порядок определения тк для аппаратурно реа лизованной процедуры МАРКЕР в ОГС, описанной
в[6].
Вэтой системе периодически, с частотой регенерации
изображения, содержимое регистров кнюпельного меха низма, определяющее координаты положения светового маркера на экране, передается в регистры отклонения индикаторного устройства. После установления луча в заданной точке отображается специальный символ. Тогда
Tft = Tn .« + Tу + то |
(3-39) |
где Тп.к — среднее время передачи кода из РгКМ в РгХ, PrY; Ту — среднее время установления луча в заданную точку экрана; тс—среднее время вычерчивания символа.
Для рассматриваемой |
системы |
тп.к=1 |
мксек, |
ту= |
= 50 мксек, То = 30 мксек, тогда т/[= 81 мксек. |
на этапы, |
|||
Смешанные процедуры |
можно |
разбить |
||
каждый из которых реализуется либо программно, |
либо |
ИЗ
микропрограммно, либо аппаратурно. Тогда хи для сме шанной процедуры является суммой средних времен реа-
лнзацин отдельных этапов процедуры. |
значения /;„ |
/5, |
|
Определив все компоненты вектора т, |
|||
/ 6 можно найти по формулам: |
|
|
|
1ь= |
2 Р л ; |
(3.40) |
|
h = |
2 Р л ; |
(3.41) |
|
|
AVi6'Yrri |
|
|
г= |
.2 Р/А/е |
(3.42) |
|
|
л';Кл’пвв2 |
|
|
где P/i — коэффициент, показывающий, |
сколько раз |
в |
среднем потребуется выполнить /е-ю процедуру по обра ботке требования за одно прохождение его через про цессор, в котором реализуется данная процедура.
Для определения Рд необходимо провести анализ схемы информационных потоков с целью определения рациональных вариантов размещения процедур по про цессорам ОГС. Для некоторых процедур очевидно место их размещения. Так, процедура РАБОТА С Вн ПА МЯТЬЮ может быть реализована только в ПВВ2, а про цедуры ВЫВОД СООБЩЕНИЯ ОПЕРАТОРУ, ВВОД ИНФОРМАЦИИ ИЗ ГП, ВЫЧЕРЧИВАНИЕ ИЗОБРА ЖЕНИЯ — только в ГП. Такие процедуры, как МОНИ ТОР, АНАЛИЗ И ОПТИМИЗАЦИЯ, ОБРАБОТКА. СТРУКТУРЫ ДАННЫХ И ФОРМИРОВАНИЕ МАС СИВА КОМАНД ОТОБРАЖЕНИЯ, необходимо реали зовывать в ЦП, так как размещение их в ГП может при вести к превращению его в универсальную ЭВМ. Для процедур ТЕКСТ, МАРКЕР, ГЕОМЕТРИЧЕСКИЕ ПРЕОБРАЗОВАНИЯ существует альтернатива в выборе места их размещения—ЦП или ГП. С целью нахождения оптимальной структуры ОГС следует перебрать все воз можные варианты размещения этих процедур и выбрать паилучший с помощью целевой функции.
Для каждого варианта размещения необходимо по строить информационные модели обработки требований в ГП или ЦП, из которых можно определить [Ц.
Информационная модель состоит из блоков, отражаю щих процедуры, реализуемые в данном процессоре, и на
64
правленных связей между ними. Эта модель представляет собой конечный ориентированный связный граф Г(Х, U),
где X = {хк} — множество вершин графа (k - 1 , т), a U — = {ик к,} — множество ориентированных дуг (/е'= 1 , т),
выходящих из вершины хк и заканчивающихся в вершине X/;'. Дугам графа поставим в соответствие вероятности переходов из вершины xh в вершину хк>, которые обозна чим Gkk'.
Для Gkw справедливо |
|
|
0 < G ^ < 1 ; 2 |
G*fc' = 1- |
(3.43) |
Согласно данному условию, |
граф является |
марковским |
с состояниями X = {х);} и матрицей вероятностей перехода
м 2 = ||0И1
Построим информационные модели для ГП и ЦП для одного из возможных вариантов размещения процедур. При этом в ГП, кроме выполнения обычных функций (вычерчивание изображения, вывод управляющей инфор мации оператору), осуществляется реализация таких процедур, как генерирование символов и редактирование текстовой информации, перемещение светового маркера. Данный вариант является наиболее распространенным в графических системах, так как позволяет получить при емлемое время реакции системы при незначительных стоимостных затратах.
Информационная модель ЦП приведена на рис. 3.5. Матрица М2 для этого графа имеет вид:
0 G01
о |
О |
о |
|
оG S1
0 0
0 0
00
С90 о
G10-0 0
Gn .o 0
0 |
0 |
0 |
0 |
0 |
0 |
0 |
g12 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
C 25 |
G2C G29 G2-10 |
Ga.ll |
||
0 |
0 |
|
0 |
G40 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Gb.11 |
0 |
0 |
0 |
0 |
0 |
0 |
Gg.ii |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
5. Зак. 218 |
65 |
З а п и ш е м т р а н с п о н и р о в а н н у ю м а т р и ц у D J д и н а м и ч е с к о й м а т р и ц ы D m
—1 |
G io |
0 |
U 0 |
0 |
G oo |
G 10 .O |
G n . o |
|
G(n |
—1 |
G 21 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
G,2 — 1 |
0 |
0 |
0 |
0 |
0 |
0 |
|
0 |
0 |
G-24 |
- 1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
g 25 |
g 45 — 1 |
0 |
0 |
0 |
0 |
|
0 |
0 |
G oo |
0 |
0 - -1 |
0 |
0 |
0 |
|
0 |
0 |
Go.j |
G .w |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
G o . io |
0 |
0 |
0 |
0 |
- -1 |
0 |
0 |
0 |
G2.u |
0 |
G 5 .11 |
G o . 11 0 |
0 |
- 1 |
|
|
|
|
|
|
|
|
|
(3.45) |
Из матрицы D£ следует система |
уравнений, где через |
|||||||
озл. обозначена интенсивность |
потока |
требований |
через |
А’-ю процедуру; соцп=7,5, т. е. интенсивности потока тре бований, поступающих в ЦП:
—“ цп + “ А 0 -f togGS0+ |
co10G10.0 + <buGu .0 = 0; |
||
®unG01 — ю1 -f- (o2G3i = 0; |
|
||
W1^12 — |
co2 = |
0; |
|
^ 2^24 — |
co4 = |
0; |
|
^ 2^25 + |
® 4°15 |
— co5 = 0 |
(3.46) |
g)2G 20 — co6 = 0;
co2G 29 + ® 4G
49
1
II 0 3 |
О |
^Ga.io оз10 —0,
l co^Go.!! -f- co5G5.u -\- coeG6Л1 co11 = 0.
Учитывая, что G0, = G90= G,0>0= Gu .0= G5.M= ],
чим из системы уравнений:
со, = |
“ ЦП |
|
-------------1 6 ц @21 |
||
|
полу-
(3.47)
66
|
CO., = |
^Д-гСОцп |
|
(3.48) |
||||
|
1 — G12G2l |
|
||||||
|
|
|
|
|
|
|||
|
C04 —G10^21 |
|
Juri |
|
(3.49) |
|||
|
|
■GinG.?, |
|
|||||
|
|
|
|
|
|
|
|
|
|
®5 — (GijGjj |
|
1“ ^12^24^45) ' |
; ЦП |
(3.50) |
|||
|
|
|
||||||
|
COq—G42G2g ' |
Jun |
|
(3.51) |
||||
|
1 — G12G21 |
|||||||
|
|
|
|
|
|
|
||
|
COg -- (G|<}G-K) |
|
I ^12^ |
24^49) |
Jun |
(3.52) |
||
|
|
G,,G, |
||||||
|
|
|
|
|
|
|
|
|
|
®io — ^ 12^2.10 |
|
ицп |
|
(3.53) |
|||
|
|
G12G2x |
|
|||||
|
|
|
|
|||||
|
|
|
|
|
|
|||
cou = (G12G2 1 1 + G12G25 -f G12G2iG45 •+ G12G26)—j— ЦП |
||||||||
|
|
|
|
|
|
|
|
Gj2G21 |
|
|
|
|
|
|
|
|
(3.54) |
|
|
|
|
|
|
|
|
co. |
Коэффициент (3/t определим как отношение —- - , тогда |
||||||||
|
|
|
|
|
|
|
|
“ цп |
P i = ------ ------- |
|
|
|
|
|
__ |
GlaG24 |
|
Ря = - 1 |
|
G12G21 ; |
1 — G,„G,12u 21 |
|||||
1 |
i - g12g21 ; |
|
5* |
67 |
Р _ |
^12^25 |
Г GioGq.|G|5 , |
р |
_ |
G12G2S . ^ gg^ |
||||
|
|
1““ ^[2^21 |
|
|
|
1 |
^12^°1 |
||
_ _ |
^ 1 2 ^ 2 0 ~ Г |
^ 1 2 ^ 2 1 ^ - 1 9 . |
О |
____ |
^ 1 2 ^ 2 . 1 0 |
||||
Р9 |
|
I |
С Г' |
|
’ |
*19 |
|
I |
/•» г> |
|
|
1 |
^12^21 |
|
|
|
1— ^12^21 |
||
Ри= |
^12^2.11 + |
^12^25 + |
^12^2-1^15 “1 ^12^20 |
||||||
|
|
|
— G1„G21 |
|
|
Рис. 3.6. Информационная модель ГП
Определим р^ для процедур, реализуемых в ГП. Информационная модель этого процессора приведена на рис. 3.6.
Запишем матрицу вероятностен перехода М3:
0 |
G«v G08 Gy.12 Gy.13 Go.i-i |
|
||||
0 |
0 |
0 |
0 |
0 |
G7.11 |
|
0 |
0 |
0 |
0 |
0 |
Ge.ii |
(3.56) |
GlJ.o |
0 |
0 |
0 |
0 |
0 |
|
^13.0 |
0 |
0 |
0 |
0 |
0 |
|
Gh.o 0 |
0 |
0 |
0 |
0 |
|
6S
З н а я M 3, с о с т а в и м д и н а м и ч е с к у ю м а т р и ц у D 3
D
— 1 |
|
0 |
0 |
G 12.0 |
G 13.0 |
G 14.0 |
G()7 |
— |
1 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
G os |
|
0 |
— 1 |
0 |
0 |
0 |
|
|
|
|
|
(3.57) |
|
|
|
|
|
|
|
|
G q.12 |
|
0 |
0 |
— 1 |
0 |
0 |
|
|
|
|
|
|
|
G o. 13 |
|
0 |
0 |
0 |
— 1 |
0 |
|
|
|
|
|
|
|
G q.14 |
|
G7.14 |
G 3.14 |
0 |
0 |
— 1 |
Запишем систему уравнений, где согп=Оч, т. е. интен сивности потока требований, поступающих в ГП:
С О гп - j - ® 12^ 12.0 “ I" ^ 1 3 ^ 1 3 .0 “Ь ^ 1 4 ^ 1 4 .0 =
®rnG0v — “ 7 = 0 ;
©rnG08 |
®8 = 0, |
|
^2 ,-g^ |
®rnG0.12 — со12 = |
0; |
|
|
“rnG0.13 — и13 = |
0; |
|
|
I, COrnGg |
JX ~ г ©7.14 G7.14 ~ г ^ 8 ^ 8 .1 4 |
©14 = |
Учитывая, что Gi2.o= Gi4.o= Gi3.o= G7.i4 = C?s.i-i= 1, по лучаем из системы уравнений:
© 7 = |
Gn7corn; |
(3.59) |
со8 = |
Goscorn ; |
(3.60) |
0)42 = |
Gу . ! ’ |
(3.61) |
© 1 3 ~ |
G0.x3Wj-n, |
(3.62) |
“ 4 = (Gq? + |
G08 -}- G0.14) Шгп. |
(3.63) |
Тогда
Р? = Gn7, Р8= Gq8, Pi2~G0,j2, Pi3 ~G0.13, Pu =.G07-|- Gos-| G01i. (3.64)
Для ПВВ2 нецелесообразно составлять информаци онную модель, так как в нем выполняется только одна процедура РАБОТА С Вп ПАМЯТЬЮ и для нее Рз=1.
G9