
книги из ГПНТБ / Журавлев, Ю. П. Системное проектирование управляющих ЦВМ
.pdfРис. 5.1.
Задача совмещения во времени следующих непосред ственно друг за другом групповых передач сводится к задаче совмещения во времени встречной передачи одной пары чисел. В общем случае алгоритм передачи одного числа из ОЗУ в ВЗУ представляет собой после довательность следующих микроопераций:
'а:фРг1, Фг1=>Рг2, 'Рг2 гф Л,
а алгоритм передачи одного числа из ВЗУ и ОЗУ —
'А гфРг2, 'Рг2гфРг1, 'Prl ф>а,
где 'а, 'А — содержимое ячеек ОЗУ и ВЗУ с адресами соответственно а и Л; Фг1, Фг2 — содержимое регистров Prl и Рг2 соответственно; ;ф — направление передачи кода числа.
Если совместить во времени процесс передачи числа из ОЗУ в ВЗУ и из ВЗУ в ОЗУ, то алгоритм обмена од ной пары чисел между ОЗУ и ВЗУ может быть записан
следующим образом: |
|
|
|
|
1) |
'агф Prl, |
1*) |
'А гф Рг2, |
|
2) |
Фг1гфРг2, |
2*) |
Фг2гфРг1, |
(5Л) |
3) |
Фг2гфЛ, |
3*) |
Фг1 гфа, |
|
где для упрощения рассуждений полагается, что встреч ная передача одной пары чисел заключается в обмене информацией между ячейками а и Л.
Микрооперации 1, 1*, 3 и 3* могут быть выполнены независимо друг от друга, поскольку требуют для своей реализации различных функциональных узлов. Микро операции 2 и 2* одновременно требуют для своей реа лизации одних и тех же функциональных узлов, поэто му задача совмещения по времени встречной передачи
220
одной пары чисел требует возможности одновременного обмена информацией между двумя регистрами. Такой обмен возможен, если информация с регистра на регистр переписывается по двум входам каждого разряда с за держкой во времени (рис. 5.2).
Обозначим микрооперации, участвующие в группо вых передачах:
А — расшифровка адреса и считывание информации из ячейки а ОЗУ;
В — запись (восстановление) информации в ячейку а
ОЗУ; |
на Рг2; |
С1 — перепись информации с Рг1 |
|
С2 — перепись информации с Рг2 |
на Рг 1; |
G — расшифровка адреса и считывание информации |
|
из ячейки А ВЗУ; |
|
Е — запись |
(восстановление) информации в ячейку |
А ВЗУ. |
|
Для случаев наиболее полного совмещения микро |
|
операций при |
односторонних передачах минимальное |
время, приходящееся на передачу одного числа, опреде ляется в соответствии с табл. 5.1, в которой приняты обозначения:
Т{, Т2— время передачи одного числа из ОЗУ в ВЗУ и из ВЗУ в ОЗУ соответственно;
221
ГД! = 1,2)
хл + хв
XG + ХЕ
*
тс
Т а б л и ц я 5.1
Условия
ХЛ+ 'в > XG + ХЕ ХА + ТВ > ТС
У? + ХЕ > ХА + ХВ
XG + ХЕ > ХС
ХС > ХА + ХВ ХС> XG + ХЕ
тf — время |
выполнения |
микрооперации F |
(F = A, |
В, |
||
G, Е)\ |
|
выполнения |
микрооперации |
встречного |
||
Тс* — время |
||||||
обмена Ci или С2 (тс* = хс , XCJ- |
|
|
||||
Время То, требуемое для выполнения встречной пере |
||||||
дачи одной пары чисел, определяется соотношениями: |
|
|||||
Т0 = |
тс* + тд + тв, |
если Тл+Тв>гв + ТЕ, |
|
|||
Гс* + ХА + Хв, |
если t g + t b > T a + T b . |
|
||||
|
|
|||||
Пусть М, N — количество |
чисел, передаваемых |
из |
ОЗУ в ВЗУ и из ВЗУ в ОЗУ соответственно, и D = tijt%—
выигрыш времени, достигаемый за счет совмещения ре жимов групповых передач, где
и = МТ1+ЫТъ
(min{М, М})То+ \ М—/V| Г*.
Конкретные значения Т* определяются направлением передачи | М-—У| чисел, характером совмещения микро операций, зависящим от конкретной реализации схемы управления групповыми передачами, и могут принимать любые из значений:
Ti, Т2, Т 1 + Т лз, |
Т 'а+т.из, То. |
Поскольку Г0= тах { Г Ь Т2, П + |
Тлз, Г2+ Тлз, То), то |
D3s>(M7\ + W7,s)/7’e(max{Af, У}).
222
Можно |
показать, |
что если |
Туфъ„, |
Т2ф х „, |
то |
77 = |
||||
|
|
|
|
|
|
L1 |
|
Са |
|
|
= 7'2=Г. |
В существующих |
ЦВМ ТХФ%С1 |
(7=1,2), |
по |
||||||
этому |
|
|
|
|
|
|
|
|
|
|
|
|
D > 1 |
(М-\-N)!T0(maii{M, N}). |
|
|
(5.2) |
||||
Соотношение |
(5.2) дает нижнюю границу Da выигрыша. |
|||||||||
Верхняя |
граница |
Da определяется |
с помощью |
выра |
||||||
жения |
|
|
|
|
|
|
|
|
|
|
|
|
п |
= |
т(м + *0________ |
‘ |
|
|
|||
|
|
|
в |
Г0 пип{/И, |
.V} + |
?|Л7 — N\ |
|
|
||
Пусть М> N, |
тогда |
|
|
|
|
|
|
|||
|
|
|
— Р(1 + а)> п в — |
3(1 -f- а) |
|
|
|
|||
где |
a = NfM- |
а + р ( 1 _ а ) |
|
|
|
|||||
р= 7'/7‘ |
|
|
|
|
|
|
||||
На |
рис. |
5,3 и 5.4 |
приведены |
зависимости |
D = f(a), |
D = |
= ср(Р). Аналогичная картина получается, если положить
N > M (a = M/ N) .
Анализ графиков (рис. 5.3, 5.4) приводит к следую щим замечаниям:
1. Нецелесообразно применять совмещение групповых передач, если р^0,5.
2. При фиксированном [С
выигрыш увеличивается при увеличении а и дости гает максимума при а=1 (M = N) /
2 2 3
•— совмещение |
групповых передач для случая, когда |
||||
Т* — То и |5>0,5, |
целесообразно только |
при выполнении |
|||
соотношения |
а > ( 1 - Р ) / р . |
|
|
||
|
|
|
|
||
Пример. |
Для |
одной |
конкретной |
ЦВМ |
известно: |
7 ’ i = 7 ’2 = 1 3 |
мкс, т |
= z c ^ = |
0 , 7 мкс. Если т Л з = |
0 , 7 мкс, то |
Э= 0 , 9 . Требуется оценить ожидаемый выигрыш време ни D при применении различных способов совмещенного обмена информацией между ОЗУ и ВЗУ.
1. Г* = Го.
Тогда
7У=0,9(1 + а ); D'max= l , 8 ; £>'< 1 при а<с;0,11.
2. Т* = Т.
Тогда
D" = 0,9 (1 + а) /{а+ 0,9 (1—а) ],
Ц"тах=1,8; D">1 для всех а # 0 .
В некоторых случаях линии задержки не применяют ся, поскольку их функции могут быть выполнены сами ми элементами соответствующих разрядов регистров чи сел, конструкция которых вносит известную естествен ную временную задержку.
Так, например, эксперимент, проверяющий возмож ность одновременного обмена информацией между реги страми рассматриваемой ЦВМ, показал, что необходи мости в применении специальных линий задержки здесь нет. Поэтому для рассматриваемого примера
Т л з = 0 ; р = 0,97; £>'=0,97(1+ а);
D'max= Д "тах= 1,94; £>"=0,97(1 + а)Д а+ 0,97(1—а)].
D's^ 1 при «5^0,031.
Применение различных способов одновременного об мена информацией между ОЗУ и ВЗУ с целью повыше ния производительности ЦВМ приводит к увеличению оборудования за счет добавления линий задержки, если таковые требуются, и дополнительных цепей управления. В общем балансе оборудования машины такое увеличе ние незначительно.
Как указывалось выше, рассмотрение различных ре жимов одновременного обмена информацией между ОЗУ
и ВЗУ проводилось для схемы, приведенной на рис. 5.1.
224
Функции регистра Рг2 (рис. 5.1) можно распределить между двумя регистрами чисел различных ВЗУ, одно из которых на каком-то участке решения задачи является только «отправителем» информации в ОЗУ, а другое — только «получателем» информации из ОЗУ. Тогда сов
мещенный |
обмен |
может |
|
|||
быть |
распространен |
на |
|
|||
систему |
запоминающих |
|
||||
устройств, |
|
приведенную |
|
|||
на рис. 5.5. |
|
|
|
|
||
В |
целом |
по |
выбо |
|
||
ру способов |
организации |
|
||||
обменов |
информацией |
|
||||
между |
запоминающими |
|
||||
устройствами |
ЦВМ мож |
|
||||
но сделать следующие за |
|
|||||
мечания: |
|
|
|
|
Рис. 5,5. |
|
1. Циклы |
работы |
опе |
ративных и внешних запо минающих устройств не только не всегда отличаются на
порядок, примером чему могут служить машины, стоя щие в контурах управления сложными системами, но уже достаточно четко вырисовывается тенденция ко все мерному выравниванию этих порядков. Заметим, что в некоторых современных отечественных машинах, обла дающих достаточно сложной организацией, циклы рабо ты оперативного накопителя и магнитного барабана,
играющего роль внешнего накопителя, имеют одинако вый порядок.
2. В тех случаях, когда циклы работы ОЗУ и ВЗУ отличаются на порядок, запись во внешний накопитель со скоростью работы оперативного накопителя невоз можна, однако в этом нет никакой необходимости. Дей ствительно, если Tz=kTi, где Ti — время одного цикла работы оперативного накопителя, Тг — время цикла внешнего накопителя, то в течение (k—1 ) тактов оператив ный накопитель обслуживает арифметическое устрой ство, после чего следует обмен одной парой чисел и т. д.
3. Встречный обмен информацией между различны ми зонами внешних запоминающих устройств затруднен,
если |
оба накопителя циклические |
и |
имеют различное |
быстродействие. Однако если один |
из |
внешних накопи |
|
телей |
с произвольной выборкой, |
то все, сказанное вы |
|
ше, справедливо и в этом случае. |
|
|
15—458 |
225 |
4. Ожидаемое в перспективе широкое развитие логи ческих структур цифровых машин и их возможностей, применение в них большого количества оперативных и внешних запоминающих устройств с собственным управ лением, связь машин с большим количеством внешних источников информации посредством быстродействую щих специализированных буферных накопителей и не обходимость реализации различных режимов обмена информацией между всеми накопителями позволяют по вышать производительность машин за счет совмещения во времени групповых передач.
§ 5.5. ВЫБОР ЕМКОСТИ И СТРУКТУРЫ ПАМЯТИ УПРАВЛЯЮЩЕЙ ЦВМ
В первом приближении общая емкость Qo памяти управляющей ЦВМ может быть определена как сумма необходимых количеств ячеек, предназначенных для хра нения информации различных типов:
Qo= Nnp+ М)+ Ni + N%+ Л^з + N4,
где iVnp— количество ячеек, необходимое для хранения программ, No — количество ячеек, необходимое для хра нения констант, предназначенных для обработки внеш
ней информации, Ni — количество |
ячеек, необходимое |
|||
для приема внешней информации; |
N2— количество яче |
|||
ек, необходимое для |
хранения |
результатов |
обработки |
|
внешней информации, |
N3— количество рабочих ячеек, |
|||
Nit — дополнительные |
ячейки, |
необходимость |
использо |
вания которых объясняется спецификой работы системы управления и характером циркулирующей в ней инфор мации.
Массив iVnp ячеек предназначен для размещения про грамм реализации собственно алгоритмов управления, программы контроля процесса вычислений и функциони рования машины, программ прерывания, программы-дис петчера и транслятора, если последние используются в системе, а также констант, необходимых для обеспе чения работы самих программ: модификаторов, услов ных единиц для организации программных счетчиков, логических шкал и их указателей и т. п. Значение вели чины Nnp может быть определено после составления и отладки программ с учетом выбранного внутреннего язы ка и системы контроля проектируемой машины.
226
Массив N0 ячеек предназначен для размещения и хранения констант, необходимых для переработки внеш ней информации. К ним относятся наиболее употреби
тельные числа, например, л, е, |/2 , ]/3 ит. д. Количе
ство таких констант определяется характером алгорит мов управления и в каждом конкретном случае может быть подсчитано достаточно точно. Необходимо, однако, заметить, что в целях повышения производительности машин с переменной относительной адресацией величи на No может превосходить общее количество различных констант за счет того, что некоторые из них могут рас полагаться в нескольких ячейках, разнесенных по раз личным зонам памяти. Уточненное значение величины No с учетом этого обстоятельства может быть получено после распределения зон памяти под массивы исходной внешней информации, массивы рабочих ячеек и массивы выходной информации.
Массив Nx ячеек предназначен для приема и хране ния внешней информации, поступающей от объектов в течение одного цикла управления. Величина этого мас сива зависит от количества объектов управления, коли чества чисел, поступающих от каждого объекта в одном цикле управления, а также от способов организации про граммного управления процессов переработки внешней информации. В простейшем случае, когда зоны памяти, предназначенные для приема информации от каждого объекта, не перекрываются, можно записать
= S N ii> i — l, 2 , ..., п. i=i
где Nu — количество ячеек, необходимых для хранения чисел, поступающих от i-ro объекта в течение одного цикла управления; п — количество объектов управления. Каждая «порция» числовых кодов, поступающая от объ екта управления, должна храниться в памяти машины до тех пор, пока результаты ее обработки не будут использованы для выдачи управляющих сигналов в со ответствующий канал связи с объектом, либо в дальней шем процессе обработки внешней информации. Это не обходимо для повторных просчетов тех участков алго ритмов, при реализации которых возникнут обнаружен ные системой контроля сбои.
15* |
227 |
Величины Na для подавляющего большинства слож ных систем с большим количеством объектов управления имеют вероятностный характер и зависят от большого числа случайных аргументов. Поэтому с некоторым при ближением можно считать величину Ni распределенной по нормальному закону:
g{Ni)= |
exp |
(М - M \ N r]Y |
2 з 2 |
где M[Ni], а — математическое ожидание и среднеквад ратическое значение величины А^. Если в каком-либо цикле управления количество поступающих от всех объ ектов числовых кодов превысит величину Nь то произой дет потеря части информации. Это может привести к ухудшению показателя качества управления системы. При большой частоте таких событий увеличивается опас-
.ность различного рода аварийных ситуаций. Поэтому расчет величины Nt следует проводить по допустимой частоте потери информации. В данном случае частота потери информации отождествляется с вероятностью Р возникновения такой ситуации, когда количество посту пающих кодов превышает величину Ый
СО
Р = J giN JdN ,.
Л',
Определение значения величины N4 в соответствии с при веденным выражением не составляет большого труда.
Часто в сложных системах за счет соответствующего диспетчирования программной работы управляющей ЦВМ информация, поступающая от какого-либо источ ника, заносится на место уже обработанной в этом цик ле управления информации от других источников. Пере крытие зон памяти, предназначенных для приема и хра нения внешней информации, позволяет уменьшить расчетное значение Л/ 4 в к раз. Величина коэффициента перекрытия у. может быть определена для каждой кон кретной системы на основе вероятностных методов.
Массив Nz ячеек служит для храпения числовых ко дов, предназначенных для выдачи на объекты управле ния системы. В простейшем случае, когда зоны памяти, предназначенные для выдачи информации на различные
228
объекты, не перекрываются, можно записать
т
=И 0 = 1 . 2,..., т), /=1
где Nzj — количество ячеек, предназначенных для вре
менного хранения информации, |
подлежащей выдаче |
на |
|
/-й объект управления; т — количество |
объектов, полу |
||
чающих информацию. |
|
|
|
В общем случае количество п объектов, выдающих |
|||
информацию в управляющую |
ЦВМ, |
и количество |
т |
объектов, потребляющих информацию |
от ЦВМ, могут |
||
не совпадать, поэтому индексы |
i и / в последних выра |
жениях имеют различный смысл. В сложных системах управления величина iV2 зависит от большого количества различных случайных факторов и поэтому к ней в рав ной степени относятся все соображения, приведенные выше при рассмотрении возможностей расчета значений величины Ni.
Массив N3 ячеек предназначен для размещения про межуточных результатов, возникающих при реализации различных алгоритмов управления. Величина этого мас сива определяется связностью каждого из алгоритмов и способом реализации последних в каждом цикле управ ления. Если же алгоритмы реализуются последовательно в каждом цикле управления, то величина этого массива определяется максимальной связностью алгоритмов. Если в системе предусмотрено совмещение во времени некоторых алгоритмов или система прерывания по прио ритетам, то подход к расчету величины JV3 мало чем от личается от подхода к расчету величин М и N%.
Что касается массива М4 ячеек, то здесь необходимо отметить следующее. Возможно построение таких си стем, в которых на управляющую ЦВМ от некоторого объекта будет поступать не только числовая информа ция, подлежащая обработке, но и представленное в тер минах какого-нибудь алгоритмического языка описание условий задачи, которую необходимо решить. В подоб ных случаях управляющая ЦВМ должна иметь соот ветствующий транслятор и рабочее поле, на котором бу дет размещена оттранслированная программа нужной задачи. Величина рабочего поля в данном случае и определяет массив АЦ
2 2 9