книги из ГПНТБ / Основы вычислительной техники учебник
..pdfВ современных машинах Индексные регистры широко исполь зуются для формирования адресов слов (элементов) массива информации. Адрес любого слова массива в общем случае можно представить в виде базового (базисного) и относитель ного адресов.
Базовый адрес В (рис. 17.4) указывает расположение мае- ■сива в памяти машины иди, точнее, адрес первого слова мас сива. Относительный адрес R является номером слова массива, т. е. является текущим адресом слова внутри рассматриваемого массива.
.'Tr.Vj/v а д р ес 70
~С£ £3 |
) У/ 72 |
73 |
74 ~7S |
~7S 77 78 |
T f sO |
|
^От носит ельныйадрес |
7 |
|
||
|
_________________ :____ 1 |
|
|||
|
Рис. |
17.4. |
|
|
|
Исполнительный |
-адрес, |
соответствующий |
абсолютному |
||
адресу А ячейки памяти, в которой находится подлежащий вы зову операнд или команда, формируется по зависимости
A = B + R .
Gnoeo6, при котором исполнительный адрес определяется в соответствии с этим выражением, называется относительной адресацией, а процедура определения исполнительного адре са — переадресацией команды.
Наряду с массивами, зависящими от одного параметра,
которым |
является |
номер слова массива, в ЦВМ |
используются |
■массивы с более |
сложной структурой, зависящие |
от двух, трех |
|
и более |
параметров (определители, матрицы и |
др.). Форми |
|
рование |
адреса в двухмерном массиве показано |
на рис. 17.5. |
|
Для того чтобы найти адрес элемента, необходимо указать два относительных адреса, один из которых определяет номер стро
ки, а второй — номер |
колонки; на |
их пересечении находится |
|
отыскиваемый элемент |
двухмерного |
массива. Для |
описания |
этих адресов необходимо иметь два |
индексных’ регистра. |
||
Содержимое индексного регистра колонок должно увеличи |
|||
ваться на единицу при переходе от |
одного элемента |
массива |
|
к другому; содержимое индексного регистра строк изменяется иа число элементов в строке при переходе от одной строки мас
сива к другой. При обработке |
я-мерных |
массивов |
потребуется |
я индексных регистров. |
, |
|
f |
460
При решении многих задач используется т массивов, ко торые в процессе решения задачи .перемещаются определенным образом .как один большой массив. Каждый из массивов опи
сывается |
своим |
индексным |
Ba3oBbti а&рес jo" |
|
|
|
|||
регистром. Чтобы .обеспечить |
|
|
|
||||||
перемещение массивов, не |
|
|
|
|
|
||||
обходимо . изменять началь |
O n н о с и н , |
а д р е с |
к о л о н к и |
|
|||||
ные значения всех индекс |
|
|
|
i -- |
|
||||
ных регистров, что потребу |
|
|
|
|
|||||
ет выполнения |
т |
команд |
|
|
75 |
7 ? |
75 |
||
изменения. Более рациональ |
|
|
О |
|
О |
||||
но в этом случае использо |
|
|
85 |
8 4 |
8 5 |
||||
вать принцип относительной |
|
|
|
О |
|
||||
адресации, |
при |
|
котором |
|
|
О |
О |
||
|
|
|
35 |
94 |
3 5 |
||||
один ,из индексных регистров |
1.5 |
|
|
|
|
||||
отводится для хранения ба- |
— |
о |
—>-( О )— О |
||||||
зового |
адреса, |
общего для |
' 5 |
юг юз |
Ю4 Ю5 |
||||
всей группы массивов. Такой |
|
|
|
|
|
||||
регистр |
называется |
общим |
|
|
|
|
|
||
базовым 'индексным регист |
|
|
|
|
|
||||
ром. При |
.решении |
задачи |
|
Рис. 17.5. |
|
|
|||
адреса ячеек массивов дол жны модифицироваться в ' соответствии с оодержимьим общего
базового и своих индексных регистров. Такая переадресация называется многоступенчатой, для ее реализации попользуются команды специального формата.
§ 17.3. Способы повышения быстродействия ЦВМ
Быстродействие ЦВМ является одним из наиболее важных показателей машины. Быстродействие v cp оценивается средне статистическим числом операций, выполняемых машиной в еди ницу времени. Быстродействие зависит от скорости выполнения каждой операции v t и частоты .появления этой операции q-t и определяется по формуле
k
0сР =
i = i
где k — общее количество различных операций, выполняемых машиной .при решении .совокупности задач.
Различают .номинальное о„ и эффективное v 3 быстродействие ЦВМ. Быстродействие машины без учета затрат времени на вы полнение операций ввода, вывода, обращения к внешним ЗУ называется номинальным быстродействием. Эффективное быст родействие определяется числом приведенных операций, выпол няемых машиной за единицу времени с учетом затрат времени
461
■на ввод, вывод информации, обмен информацией между -опера тивной и внешней памятью, контроль вычислений и устранение последствий сбоев.
Увеличение быстродействия может идти за счет применения более быстродействующих элементов, что позволяет увеличить скорость выполнения операций v t и, следовательно, увеличить номинальное быстродействие машины. Кроме этого, повысить
можно за счет структурного и схемного улучшении машин.
Одним из важных резервов увеличения номинального быст родействия является ускорен не доставим информации для вы числения. Быстродействие современных ОЗУ уступает быстро действию основных1логических элементов, на которых .построен процессор, .поэтому ОЗУ заметно ограничивает номинальное быстродействие машины. Для уменьшения времени доставки информации в состав ЦВМ включают сверхоперативные ОЗУ (•СОЗУ) с небольшим объемом, но очень высоким быстродейст вием. Обычно в качестве сверхоперативной памяти используют ся регистры или ЗУ на магнитных пленках. Информация, необ ходимая для вычислений за)ранее записывается .в регистры ООЗУ, и дальнейшие вычисления п р о и з в о д я т с я только над этой информацией без обращения к ОЗУ. В этом случае устройство управления использует короткие команды формата «регистр— регистр». Очередной массив информации, необходимый для вы числения. вводится в регистры СОЗУ одновременно с обработ кой предыдущего массива.
Заметного увеличения быстродействия .машины1 можно достичь за счет сокращения времени простоя различных уст ройств. Анализ рабочего цикла машины (рис. 17.1) показывает, что загрузка устройств машины внутри рабочего цикла далека от оптимальной: напоимер. в тактах чтения команды и операн дов простаивает арифметическое устройство, в рабочем такте — оперативное запоминающее устройство.
Эффективность попользован ия устройств машины н быстро действие ЦВМ можно существенно повысить за счет совмещения рабочих циклов машины. Совмещение может осуществляться
по одному |
или нескольким |
тактам. В |
простейшем случае |
(рис. 17.6.а) |
совмещаются рабочий Тр такт i-й команды и такт |
||
чтения 7\.(£+1)-й команды. |
В мвшинах, |
у которых такты чте |
|
ния команды и операндов намного короче такта выполнения операции, ,в течение рабочего такта Тр возможно выполнить такт выборки команды и один—два такта чтения 'операндов Т оп (рис. 17.6 6). В этом случае процессор машины должен иметь в своем составе регистры сверхоперативной памяти для записи операндов. Если в ЦВМ имеются отдельные ОЗУ для хранения команд и исходных данных, то возможно такт чтения (£+1)-й команды Тк совместить с тактом чтения операнда Топ £-й
462
команды, (рис. 17.6,б) . Такое .совмещение тактов называется пол ным. Оно обеспечивает наибольшее сокращение непроизводи тельных затрат машинного времени.
|
|
Т« , |
Топ |
Топ |
i |
|
Тр |
|
i |
|
|
|
|
|
|
|||
|
|
1 |
1 |
i |
|
|
|
|
|
Топ |
7--;. |
Тр |
- |
|
||||
|
|
1 |
1 |
|
1 |
|
|
|
ти I |
|
||||||||
|
|
; |
Ч |
1 |
|
I />/ i |
|
■“ |
j |
|
i |
|
1 |
' ч |
||||
|
|
1 |
i |
1 |
i |
! |
t |
|
I |
|
|
|||||||
|
|
j_ |
1 |
i |
|
|
|
|
|
t |
|
i |
|
1 |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
' |
|
г |
_______________L-щтХ |
|||
|
L |
г« |
, |
Топ, |
Топ, |
|
Тр |
|
|
|
• |
\ |
|
V |
|
|||
|
|
„ |
1 |
|
|
|
|
|
|
|||||||||
|
|
1 |
1 |
|
1 |
Тр |
|
|
Топ. |
Тр |
|
|
|
|||||
б\ |
|
| |
1 |
! |
. 1 |
|
|
Топ\ |
|
|
|
|||||||
|
1 |
1с +/ 1----- 1 |
|
Г- |
1 |
|
|
1 |
|
|
||||||||
|
|
|
| |
I |
1 |
I |
1 |
1 |
|
1 |
|
|
|
|
||||
|
|
|
1 |
1 |
|
|
1 |
|
1 |
|
|
! |
. |
+ |
||||
’ |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
• |
|
: |
|
|
|
& |
|
Тк |
1 |
Топ |
Топ |
|
|
Тр |
|
|
|
* |
|
|
||||
|
|
1 . |
|
т« ! тм, |
|
Топ\ |
гр |
|
; |
|
|
|
||||||
|
|
11. / ] |
|
|
|
|
|
|||||||||||
|
|
_L , |
1 |
1 |
|
|
1 |
|
J |
|
|
1 |
|
|
1 |
|
|
|
|
|
л----- 1-----__________ k |
|
■1 |
. ■ 1■,,] |
------ |
|
|
||||||||||
|
|
|
|
|
|
|
|
Рис. |
1!7\6. |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
Номинальное быстродействие характеризует быстродействие машины без учета времени работы внешних устройств. Для практики же более важной характеристикой является эффек тивное быстродействие, для повышения которого необходимо увеличить скорость работы внешних устройств или же совмес тить решение одной задачи с вводом в т о р о й и выводом резуль татов решений третьей. В этом случае ЦВМ одновременно ре шает несколько задач. .Принцип одновременного выполнения нескольких программ на одной вычислительной машине, п р и котором не требуется окончания ни одной из программ для пуска или продолжения другой, называют мультипрограмми рованием.
§ 17.4. Устройства управления мультипрограммных ЦВМ
. ■ Цифровую вычислительную машину, позволяющую одновре менно .использовать разные ее устройства для выполнения не скольких ппоооам)м, называют мультипрограммной (многопро граммной) ЦВМ.
В aaencHiMOiCTU. от •используемьих для орта,низа,п.ии мульти программной работы средств различают машины е пред,вар,и- тельным (ручным) и машины с автоматическим планированием. , • В машинах! с предварительным планированием распределе ние памяти! и внешних устройств между программами, а также
463
разработку алгоритма смены программ выполняет программист. Результаты распределения доводятся до пользователей, которые на основе этих указаний приступают к программированию своих задач. Очевидным недостатком ручного планн-ро-вамня является сложность отыскания оптимального решения заданного набора программ, так как эта задача целиком возлагается на програм миста.
В машинах с автоматическим планированием распределение машинного времени внешних устройств и места в памяти ме жду пользователями производится самой вычислительной ма шиной. Автоматическое планирование может обеспечиваться аппаратными и аппаратно-программными средствами.
В машинах с аппаратными средствами организация муль типрограммного процесса выполняется встроенной в машину динаратурой. Основными недостатками аппаратной органи зации планирования является жесткая фиксация места и вре мени для каждой программы и примитивность алгоритма че редования программ. В связи с этими недостатками аппарат ные методы планирования применяются радко.
Машины с аппаратно-программным планированием имеют
•внутреннюю управляющую программу,-. которая организует мультипрограммный режим работы машины и -называется су первизором. В функции супервизора -входят: обработка преры ваний, удовлетворение запросов к основной памяти машины, передача управления очередной программе, завершение задачи, обеспечение службы времени и т. и.
В процессе работы машины супервизор обеспечивает пере запись программ решаемых задач из внешней памяти машины или устройств ввода в оперативную память машины, передаст управление целевой программе, которая по принятой очеред ности (порядку приоритетов) имеет наибольшее право на испол нение. Бели выполняемая целевая программа подошла к этапу вывода результатов или ввода очередной порции входной инфор мации или поступила заявка на исполнение программы, имею щей более высокий приоритет, супервизор передает управление новой программе и организует при необходимости работу внеш ней памяти, устройств ввода—вывода и других! устройств ма шины.
Управление мультипрограммным процессом требует разра ботки сложных управляющих программ, создаваемых разработ чиками машины и системы математического обеспечения маши ны. Эти затраты, однако, окупаются облегчениемтруда про граммистов, составляющих программы так как программирова ние для мультипрограммной машины ведется так же, как и для однопрограммной, в принципе программист может и не знать, что он готовит задачу для Мультипрограммной машины. Кроме того, на супервизор можно возложить обеспечение контроля
464
ввода н |
вычислений, использование стандартных подпро |
грамм и т. |
п. |
Среди машин с автоматическим планированием различают машины с простым обменом и машины с разделением опера тивной памяти. В оперативной памяти машин с простым обме ном размещается только одна выполняемая в данный момент времени программа, остальные целевые программы хранятся во внешней памяти машины. Дли смены программ прерываемая программа отсылается во внешнее ЗУ, а в ОЗУ вызывается новая целевая .программа, которой супервизор отдает управле ние. Достоинством этого способа является простая организа ция супервизора, основным недостатком — большие потери вре мени на обмен между ОЗУ и ВЗУ. В машинах с разделением оперативной памяти в ОЗУ одновременно находится несколько целевых программ, поэтому переход от одной программы к дру гой происходит без больших потерь времени. При необходимости обмен между ОЗУ и ВЗУ производится заранее во время выпол нении процессором предыдущей программы. Машины с разде лением ОЗУ являются наиболее совершенными но они предъяв ляют более жесткие требования к аппаратным средствам, обеспечивающим мультипрограммный режим работы.
При мультипрограммной работе машины устройство управ лении ЦВМ должно обеспечить:
—организацию совмещения обмена информацией с вычисле ниями;
—защиту памяти;
— л р е р ы в а н и е л р о г р а м м ;
— динамическое распределение 'памяти.
Для решения этих задач в состав устройства управления мультипрограммных машин включаются: блок управления внеш ними устройствами (БУВУ), блок защиты адресов (БЗА), блок прерывания программ (БПП). блок управлении распределением памяти (БУРИ). Структурная схема устройства управления мультипрограммной ЦВМ приведена на рис. 177.
При мультипрограммной работе ЦВМ одновременно выпол няется несколько программ. Размещение всех .выполняемых про грамм в оперативной памяти, как правило, невозможно, поэто му распределение ячеек оперативной и внешней памяти между
•программами производится в процессе их выполнении и назы вается динамическим распределением памяти. . Динамическое распределение памяти обеспечивает блок управления распреде лением памяти.
Блок улвавления внешними устройствами обеспечивает ра боту соответствующего внешнего устройства - (ввода, вывода, внешней памяти) параллельно с работой процессора, т. е. уп равляет совмещением обмена информацией с вычислениями.
30 ЗаК . 18, |
465 |
Блок защиты1 адресов включается в цепь передачи адресов с регистра команд .на адресный регистр. Если очередной адрес выходит за пределы выделенного для выполнения данной про граммы массива адресов, блок защиты адресов останавливает выполнение программы и передает управление блому прерыва ния программ. В мультипрограммных машинах может приме няться несколько степеней защиты:
С х е м а
Рис. 17.7.
— постоянная зашита управляющей области памяти; т а нины и коитерий защиты этой области могут изменяться только супервизором;
—защита программных " инсЬор.манионных массивов, кото рая обеспечивается программно или супервизором;
—защита массивов обмена оперативной и внешней .памяти, которая снгэнизуется, в основном, нооиоаммно.
Блок прерывания программ обеспечивает автоматическое прерывание выполняемой программы и переход к-выполнению очередной программы. На вход БЛП подаются сигналы со всех устройств машины, которым предоставлена возможность произ водить прерывания. Блок прерывания определяет приоритет команды прерывания и сравнивает его с приоритетом защиты выполняемой программы. Если приоритет прерывания выше, то БПП останавливает выполнение программы и отдает управление супервизору. Прерывание может обеспечиваться автоматичес ким или программным способом. Программное прерывание осу-
466
щеетвляется супервизором с помощью команд прерывания, предусмотренных в программе. Автоматическое прерывание обеспечивается сигналами ер еры.вания, поступающими от уст ройств машины '(сбой, окончание работы, нуск внешнего устрой ства и т. д .).
Рассмотрим более подробно организацию мультипрограм мной р.аботы ЦВМ.
Организация совмещения обмена с вычислениями. Для обес печения параллельной работы внешних устройств и .процессора необходимо обесценить совмещение .во времени обмена инфор мацией между процессорам и внешними1устройствами с прово димыми в процессоре вычислениями. Для решения этой задачи из состава процессора выделяются схемы управления внешними устройствам,и с предоставлен нем этим схемам необходимой сте пени автономности. Многие функции управления .внешними уст ройства,ми1 ,не зависят от их типа и могут быть возложены на устройства управления, общие для нескольких внешних уст ройств.
Совокупность таких устройств управления вместе со связан ными с ними магистралями, имеющими возможность переклю
чаться от |
одного |
внешнего устройства |
к другому, |
называют |
||
кавалями |
обмена |
или |
устройствами обмена, |
однако |
наиболее |
|
распространен' термин |
«канал обмена» |
или |
.просто |
«канал». |
||
Конкретные внешние устройства связываются с каналом обмена через устройства сопряжения, которые преобразуют стандартные сигналы, вырабатываемые каналом, в форму, необходимую для нормальной работы внешнего устройства, или, наоборот, преобразуют специ'фи'чеакие сигналы внешних устройств в стан дартные сигналы, воспринимаемые процессором Мишины.
Цифровая машина может иметь несколько каналов, это по зволяет обеспечить параллельное выполнение нескольких обме нное. По виду связи канала с .внешними устройствами .различают
селекторные и мультиплексные каналы. |
из подключенных |
Селекторный канал связывается с любым |
|
к нему внешних устройств на все время, в |
течение которого |
осуществляется обмен с этим устройством. Он может быть под ключен к другому внешнему устройству лишь после полного выполнения заданного обмена. Селекторный принцип целесо образно использовать для связи с быстродействующими устрой ствами, .например, запоминающими устройствами на лентах или дисках. ,
В мультиплексном канале связь с внешним устройством осу ществляется лишь на время, необходимое для передачи одного слева, после чего канал связывается с другим внешним уст ройством. Этот способ используется для связи процесоопа с медленнодействующими устройствами, например, с устройства ми печати, ленточной или карточной перфорации.
3 0 * |
467 |
Селекторные и мультиплексные каналы, используемые в ма шинах' ЕС ЭВМ, различаются между собою скоростью передачи информации, которая колеблется от 25 кбайт,ic до 1,3 Мбайт/с. Младшие машины ЕС ЭВМ имеют 1—3 селекторных и один мультиплексный каналы. В старших моделях (ЕС-1050, ЕС-1060) попользуется до шести селекторных и одинмультиплексный -ка нал, который имеет группу подканалов. Например, мультиплекс ный канал ЕС-40'12 имеет пять подканалов, из них один — -муль типлексный, к нему могут подключаться дю 192 .внешних уст ройств, и четыре селекторных подканала, к каждому из кото рых .может подключаться до 16 внешних устройств.
Защита памяти. Размещение в памяти ЦВМ нескольких не зависимых программ требует принятия специальных мер, пред отвращающих' разрушение одних программ другими. Защита программ может организовываться различными способами, из которых наиболее часто применяется защита по граничным адресам, по признакам, .по ключу.
Защита по граничным адресам является наиболее простой формой зашиты. Граничные адреса Ami„ и Ami,x- указывающие' верхний и -нижний адреса выделенного для программы массива ячеек памяти, записываются в регистрах Ап„п и АП1ах. Схема защиты памяти с помощью граничных регистров приведена на
Dис. 17.8. |
|
ВВПП |
£ БЛП |
Рис. 1.7.8.
При каждом обращении к ОЗУ адреса А операндов и команд соавниваются на схемах сравнения с адресами Ат|П и Атах. Если адрес А .выходит за границы диапазона Ат1п-^- Атах, фор мируется сигнал -прерывания программы, который .поступает
468
■на супервизор. Диапазон Лт,пч -Л тах для каждой целевой программы устанавливается супервизором.
Способ защиты памяти :по признакам основан на том, что память разделяется на ряд блоков, каждый из которых отмечен своим признаком. Обычно этим признаком служит состояние соответствующего разряда регистра защиты .памяти РгЗП. Если разряд находится в .нулевом состоянии, то обращение к соответ ствующему блоку памяти запрещено. Схема защиты ;пз призна кам приведена- -на ри.с. 17.9. Перед включением целевой про граммы в работу на регистр РгЗП заносится код, определяющий ■доступные для этой программы блоки памяти. При выполнении пропраммы адреса, к которым производится обращение, сопо ставляются с состоянием регистра защиты. Номер блока па мяти записывается старшими (<k+ 1 -4-т) разрядами адреса, по даваемыми на дешифратор Дш, выходные шины которого под ключены к конъюнкторам, обеспечивающим доступ к соответст вующему блоку памяти.
Рг А - Память ЦВМ
Рис. 1'7.9.
Дальнейшим развитием способа защиты по .признакам явля ется защита по ключу, при этом каждому блоку памяти ста вится в соответствие двоичный код — замок памяти. Аналогич ные коды присваиваются супервизору и целевым программам, причем каждой .программе выделяется определенное число ко дов, называемы» ключами. Программа имеет доступ только к тем блокам памяти, к замкам которых подходят ее ключи. Обычно принимается, что замок с нулевым номером доступен любому ключу, а нулевой ключ может открыть любой замок. Тогда блок памяти с замком 00 ... 0 доступен любой программе, а программы имеющие ключ 00 ... 0, могут обратиться к любому блоку памяти. Привилегия владеть ключом 00* ... 0 обычно предоставляется только супервизору.
469
