книги из ГПНТБ / Журавлев, Ю. П. Системное проектирование управляющих ЦВМ
.pdfИзвестны попытки создания систем управления, в ко торых программы реализации отдельных алгоритмов или их частей хранятся в памяти в «сжатой» форме и перед работой перекодируются в терминах внутреннего языка управляющей ЦВМ на специально отведенном рабочем поле. Возможны и другие особенности построе ния систем управления и способов организации процес сов обработки информации с помощью управляющей ЦВМ, когда возникает необходимость выделить в па мяти машины массив N4 ячеек.
Анализ слагаемых общей емкости памяти позволяет сделать следующие выводы.
1. Сумма Мдр+ М) является для конкретной системы управления величиной постоянной.
2 . Для простейших систем управления можно при нять, что емкость памяти Q, предназначенная для хране ния входной информации, промежуточных и окончатель ных результатов, может быть подсчитана в соответствии с выражением
Q = Mi + М2 + N3 .
В случае более сложных систем управления с диспет чированием, прерываниями по приоритетам, перекрыти ем зон памяти для хранения различных потоков инфор мации величина Q может быть существенно уменьшена за счет использования наиболее эффективной системы диспетчирования, причем
g(Q) = |
(Q-M[Qj)«- |
2ог |
где M[Q], а — математическое ожидание и среднеквад ратическое значение величины Q.
3. Общая информационная емкость памяти / может быть определена с помощью выражения
I = (-Апр+No) RK-\- N^Ro' + N%R+ .Аз^?оп, |
|
||||
где RK— разрядность |
команд, R0' — разрядность |
исход |
|||
ной числовой информации, R0п — разрядность операци |
|||||
онного устройства, |
R — разрядность |
выходной |
инфор |
||
мации. |
|
|
|
|
|
Коэффициент |
Yj |
использования |
информационной |
||
емкости одной ячейки |
запоминающего устройства /-го |
||||
типа зависит от |
ее |
фактической разрядности RHj и от |
230
разрядности R i i-го типа элементов информации, разме щаемого в этой ячейке:
yi=Ri/Rnj-
Коэффициент у использования информационной емко сти всей памяти определяется отношением
у — 1Пф>
где /ф — фактическая информационная емкость памяти. Очевидно
Т = £ |
NiRiJI^= Yi NiRmbfU’ |
(О |
(«) |
X NiRn{U < /ф, Ь < 1•
(»)
Стремление повысить коэффициент использования ин формационной емкости памяти при минимальном значе нии 1ф приводит к различным вариантам организации структуры памяти машины. Значение коэффициента у, близкое к единице, можно получить за счет такой орга низации памяти, когда последняя состоит из нескольких запоминающих устройств различной разрядности, при чем каждое из них предназначено для хранения вполне определенных типов информации. Это значит, что необ ходимо иметь ЗУ для программ, ЗУ для исходных чисел, ЗУ для хранения промежуточных результатов и, нако нец, ЗУ для хранения результатов обработки исходной информации. Недостатки такой организации памяти оче видны:
—необходимость использования ЗУ различных ти
пов,
—невозможность перекрытия зон для хранения ин формации различных видов, что в некоторых случаях может привести к увеличению общей емкости памяти.
Стремление к унификации ЗУ приводит к такой орга низации структуры памяти, когда для хранения число вой информации используются ячейки одинаковой раз рядности. При этом коэффициент использования инфор мационной емкости памяти несколько снижается за счет того, что уменьшаются значения коэффициентов угОднако возможность перекрытия зон хранения числовой информации может привести к уменьшению необходимой
231
емкости ЗУ для хранения числовой информации на ве личину
(1—к) (Ni + N2 + Ns) ячеек.
Следует, однако, помнить, что эта экономия ячеек ча стично или полностью аннулируется, поскольку сама программа увеличивается за счет включения в состав ее дополнительных блоков программы-диспетчера. Таким образом, при обосновании этого варианта построения структуры памяти необходимо учитывать эти факторы.
Относительная независимость программной информа ции от внешней числовой во многих случаях приводит к целесообразности использования для ее хранения от дельных односторонних запоминающих устройств. Это позволяет повысить надежность считывания команд и констант за счет форсирования токов чтения и повысить скорость работы таких ЗУ. Использование односторон них ЗУ для хранения программной информации оправ дано для сравнительно небольших программ из-за боль шой трудоемкости прошивки програм,м и констант.
В сложных системах управления программную ин формацию не всегда удается «зашить» в односторонние
запоминающие |
устройства, поэтому |
ее размещают |
в ОЗУ. В таких |
случаях разрядность |
чисел и команд |
должна быть обязательно согласована. |
|
|
В современных многопрограммных |
вычислительных |
системах с разделением времени экономически нецеле сообразно, а подчас и невозможно хранить в ОЗУ все программы и обслуживающие их константы, поскольку их объем может быть весьма большим, а емкости ОЗУ ограничены возможностями технологии производства. В этой связи возникают сложные вопросы распределе ния памяти, когда приходится решать, какие участки
программы должны |
размещаться |
в ОЗУ, |
а какие — |
в ВЗУ. В идеальном |
случае в ОЗУ |
следует |
оставлять |
те участки программы, вероятность использования ко торых максимальна. В результате количество обменов между ОЗУ и ВЗУ сократится. Для определения опти мальных вариантов распределения программ между ОЗУ и ВЗУ, а также для определения оптимальной ве личины массива ячеек, отведенных под рабочее поле, применяются байесовы алгоритмы [63], которые учиты вают предысторию работы программ и их приоритеты.
232
Ограничения, налагаемые lid емкость ОЗУ, по-вйдй- мому, через 5—10 лет могут быть сняты с внедрением в производство микроминиатюрных ЗУ сверхбольшой емкости. Уже появились в печати сообщения о том, что ведущие специалисты ряда фирм США занимаются ис следованиями так называемых «пузырьковых» магнит ных запоминающих и переключающих устройств [64].
«Пузырьки» представляют собой магнитные домены, которые способны распространяться по кристаллам орто ферритов и под воздействием управляющего электро магнитного поля контролируемо выполнять различные логические операции, а также функции запоминания. Уже имеются 100-разрядные регистры сдвига на квад ратной пластине из кристалла ортоферрита со стороной 6,35 мм и планируется создать регистр сдвига на 1,5 млн. двоичных разрядов на квадратном кристалле ортофер рита со стороной 2,5 см. Считается, что теоретический предел плотности «пузырьков» составляет около 108 дво ичных разрядов на площади 6,452 см2. Для имеющихся уже «пузырьковых» схем скорость передачи данных со ставляет 1—3 млн. двоичных разрядов в секунду при потреблении мощности, примерно в 100 раз меньшей в сравнении с существующим ЗУ такой же емкости.
§5.6. РАСЧЕТ ОПТИМАЛЬНОГО СООТНОШЕНИЯ ЕМКОСТЕЙ ОПЕРАТИВНОГО И ВНЕШНИХ ЗУ
Емкость Qо оперативного запоминающего устройства в значительной степени влияет на производительность цифровой вычислительной машины и является одним из основных ее технических параметров.
Емкость оперативных запоминающих устройств универсальных цифровых вычислительных машин, пред назначенных для решения разнообразных задач в вычис лительных центрах, может быть выбрана на основе неко торых умозрительных соображений технико-экономиче ского характера. В случае управляющих цифровых машин, работающих в реальном масштабе времени и пред назначенных для решения вполне определенного класса задач управления объектами некоторой автоматизиро ванной системы, возникает задача определения опти мальной с точки зрения производительности машины емкости ОЗУ.
2 3 3
Одна нз возможных Методйк выбора оптимальной емкости оперативного запоминающего устройства проек тируемой ЦВМ заключается в следующем.
Выбор емкости ОЗУ управляющей ЦВМ в соответст вии с выражением Q0 = Qa не всегда является оправдан ным, поскольку с увеличением параметра Qo увеличива ется время то обращения к памяти, что само по себе увеличивает время выполнения операции. Кроме того, объем ОЗУ часто ограничивается сверху возможностями технологии производства.
С точки зрения повышения производительности про ектируемой ЦВМ желательно выбирать емкость опера тивного запоминающего устройства таким образом, что бы время решения задачи было минимальным.
Емкость оперативного запоминающего устройства су щественно влияет на составляющую Т* общего времени
функционирования управляющей ЦВМ, |
определяемую |
в соответствии с выражением |
|
Т* = ТС+ ТГ> |
(5.4) |
где Тс — время реализации собственно вычислительного процесса, Гг— время, необходимое для групповых пере дач при обменах информацией между ОЗУ и ВЗУ в тех случаях, когда емкость оперативного запоминающего устройства недостаточна для решения задачи.
Очевидно, что
если
Qo—Qs-
Выше отмечалось, что
Tc = Nc/V,
(»)
Поскольку
(см. определение быстродействия ЦВМ), то
Tc= Mc Y,Pj'i).
(/)
2 3 4
Последнее выражение по смысловому содержанию экви валентно выражению
Тс, — NстТст»
где Л^ст — количество операций, требуемое для реализа ции заданного алгоритма, в пересчете на стандартные операции; тст — время выполнения стандартной опера ции.
Поскольку
|
Тст —"Р ст + ЯстТо, |
|
где т'ст — время |
выполнения стандартной |
операции |
в арифметическом |
устройстве; «ст — среднее |
количество |
обращений к ОЗУ, приходящееся на одну стандартную операцию, то
Тс —А + £то.
Здесь
A — 'NcтТ ст> B = NcTtlcT- |
(5.6) |
Увеличение емкости ОЗУ приводит к усложнению коммутации, увеличивающему время переходных про цессов в цепях управления и, следовательно, увеличи вает время обращения к оперативному запоминающему устройству.
Пусть то есть некоторая функция от емкости ОЗУ:
T0 = |
cp(Qo). |
|
|
Тогда |
|
|
(5.6) |
Тс=А + B(p(Q0) . |
|
||
В § 1.5 указывалось, что |
|
|
|
Z u = (Q3~Qo) £ |
Z2 = |
Q „S |
(5.7) |
(*v ) |
|
( S \ ) |
|
С учетом соотношений (1.9), (5.6) и (5.7) выражение (5.4) можно записать следующим"образом: <
Т* = А + S<p(Q0) + £ |
(Qa Qo) 2 |
+ |
(*)(s, )
+ Q,• S |
^cukv1 1 |
(5.8) |
**..] \ + (Cv+ c*,) “ i s ; |
||
(S\ ) |
J |
|
Оптимальная с точки зрения производительности ЦВМ емкость оперативного запоминающего устройства опре
235
деляется па основе соотношения |
|
dT*/dQ0 = 0 |
(5.9) |
при условии, что найденное значение Q0 обращает вре мя Т* в минимальное. В противном случае оптимальную емкость ОЗУ следует искать на граничных точках воз можного диапазона изменения параметра Qo. Для того чтобы решить уравнение (5.9) относительно параметра Qo, необходимо знать характер решаемой задачи и стро ение ее программы, способы первоначального размеще ния информации в оперативном и внешних запоминаю щих устройствах, а также методы организации группо вых передач при осуществлении обменов информацией между ЗУ, т. е. необходимо предварительно выявить ха рактер функциональной зависимости величин /?s, tcSv>
tc*Sv, cv> c*v от параметра Qo. Кроме того, необходимо
установить вид функции <p(Qo).
По этим причинам решить уравнение (5.9) в общем виде относительно параметра Qo не представляется возможным, поэтому его анализ целесообразно провести в предположении, что в ЦВМ используется только одно ВЗУ, емкость, которого достаточна для хранения Q3 чи сел. При этом предположим, что
Тогда
Г» = Л + £?№ ,) + (Qэ — Qo)
В выражении (5.10) приняты следующие обозначе
ния: |
т — время |
выборки (записи) одного числа |
в ВЗУ; |
|
|
||||
Тож — время ожидания числа в ВЗУ; |
|
|
||
s, |
s* — текущий номер обращения к ВЗУ соответст |
|||
с, |
венно при считывании и при записи; |
к |
ВЗУ |
|
с* — соответственно количества обращений |
||||
|
при считывании и при записи. |
|
по |
|
Емкость ОЗУ |
не может быть меньше единицы, |
скольку в качестве этой единственной ячейки выступает тот регистр операционного устройства или устройства
1*36
управления, который воспринимает из запоминающего устройства очередное число или команду. Выбрать па раметр Q0 большим по сравнению с величиной Q3 также нецелесообразно по соображениям надежности и эконо мического характера. Поэтому оптимальное значение емкости ОЗУ следует искать, варьируя параметр Q0 в пределах
l< Q o < Q 3.
Рассмотрим граничные случаи:
1) Qo=Q3. Для этого случая имеем
Т* = А + Вф (Qo) = Л^стТ^ст+ -УстШстф (Qo) I
поскольку
Т = Тож = Тг—0.
2) Qo—1. Для этого случая имеем
'/'•=;л+ в< р'((3,)4-|Г ((з
+ £ ’ * • ] '+ (с+ с* ) т ! -о- |
(5.11) |
|
|
(S*) |
|
Проанализируем величины, входящие в выражение
(5.11).
а) Величина (Q3— l ) S ^ s по 'своему смысловому со-
( S )
держанию означает общее количество Z4 чисел и команд, пересылаемых из ВЗУ. В это количество входят все вы зываемые в процессе вычислений команды, исходные числа и промежуточные результаты.
Величина S 1t*s есть не чтоПшоеДкак общее количе-
( S * )
ство промежуточных результатов, засылаемых на ВЗУ:
z 2 = £ **8.
(«•)
Совокупность (Zi+Zt) обращений к ВЗУ охватывает весь процесс решения задачи и предназначена для обслу живания всех машинных операций. Поскольку общее число выполняемых в ходе вычислений операций (в пе ресчете на стандартные) мы обозначили через Nст и на каждую стандартную операцию приходится в среднем
237
яст обращений к запоминающему устройству, то должно соблюдаться равенство
Z\-\-Z%=NсуПст- |
(5.12) |
б) Для этого случая справедливость равенства
с-I- с* — Z i Z i — NСуПсч |
(5.13) |
очевидна.
в) Коэффициент D принимает здесь значение, равное единице, поскольку групповые обмены информацией между ОЗУ и ВЗУ, емкость которого равна единице, не осуществляются.
г) Функция cp(Qo) в предположении, что роль ОЗУ выполняет регистр команд устройства управления или соответствующий регистр операционного устройства, при нимает значение, равное нулю, поскольку обращения к этому регистру специально для переписи из него ин формации на другой регистр не производится:
ф(1) =0. |
(5.14) |
Из (5.5), (5.11) — (5.14) следует |
|
Т* — NстХ'с’г+ Уст^ст (т “ЬДож/З) . |
(5.15) |
В выражении (5.15) величина, стоящая в скобках, озна чает фактически среднее время обращения к ВЗУ. Срав нивая выражения для времени Т*, полученные при рас-» смотрении граничных случаев, нетрудно убедиться, что последний из них отражает такую ситуацию, когда функ ции ОЗУ переходят к ВЗУ.
Оптимальное значение емкости ОЗУ может находить
ся не только |
на |
граничных |
точках рассматриваемого |
||
диапазона |
изменения параметра |
Q0, но и между ними. |
|||
Предположим, |
что характер зависимости величин /? |
||||
тс > тс* * с . |
с* |
от |
параметра |
Q0 известен: |
|
|
|
|
= |
ф, = |
?3 (Qo); |
|
Qo^ \ ' = ? 2(Qo); |
c*v= |
? t (Qo). |
Тогда уоавнение (5.8) может быть представлено следую щим образом:
В d<? (Qp)~ |
|
ФрЛС») |
i v i df2(Qo) |
dQ 0 |
(«V) |
dQo |
dQ0 |
<*) |
|
<s\ ) |
238
+ ^ t l ' M Qo) + (MQo)]-!f L | z r = 0 - |
(5-16) |
Для цифровой машины с одним ОЗУ и одним ВЗУ это
уравнение |
имеет |
вид |
|
|
|
|
|
п Д (Qo) |
V |
rfQo |
I |
V I |
rf<M Q o) |
|
|
dQo |
2j |
' |
Zj |
rf(3o |
|
||
|
|
(.5) |
|
|
(s*) |
|
|
|
+ ^ 1 Т- № ) + ? * № )1 ^ 5 - = 0' |
(5.17) |
|||||
Здесь |
|
||||||
|
|
|
|
|
|
|
|
Ti(Qo) — Q o S ^ ; |
<P2(Qo)^QoH |
?,(Q0) = c; |
|||||
|
( S ) |
|
|
(s*) |
|
|
|
|
|
|
(Qo) = |
c*. |
|
|
|
Уравнения |
(5.16) |
и (5.17) и являются основными расчет |
ными соотношениями, используемыми при выборе опти мальной емкости ОЗУ.
Рассмотрим несколько подробнее случай, когда ЦВМ имеет в своем составе одно ОЗУ и одно ВЗУ, поскольку к этому случаю другие ситуации могут быть приведены тем или иным способом.
Предположим для определенности, что характер за дач, подлежащих решению на ЦВМ известен, и, в част ности, указано, что:
— содержимое ОЗУ периодически полностью обнов ляется за счет информации, вызываемой с ВЗУ, причем
с~ Qэ/Qo>
—промежуточные результаты и участки программы
из ОЗУ в ВЗУ не выводятся
|
2 * * . = 0; с* = 0; D = 1; |
|
|
|||
|
(«*) |
|
|
|
|
|
— одна |
и та |
же ^информация из ВЗУ в ОЗУ вызы |
||||
вается не |
более |
одного |
раза |
]£its= l . |
|
|
|
|
|
|
( ® ) |
следующие ра- |
|
При таких предположениях имеют место |
||||||
венства: |
|
(Qo) |
i |
d<f2 (Qo) |
r> |
|
|
2j |
(5.18) |
||||
|
d Q 0 |
|
2 j d Q a |
— u |
||
|
|
|
||||
|
(s) |
|
|
is*) |
|
|
|
~ |
(Qo)+ |
(Qo)] |
|
|
2 3 9