Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Основы вычислительной техники учебник

..pdf
Скачиваний:
50
Добавлен:
23.10.2023
Размер:
22.13 Mб
Скачать

двухадресных команд позволяют существенно уменьшить длину программы. Примерами двухадресных машин могут служить ЦВМ серин «Мп-нск» и «Днепр».

Трехадресная команда имеет операционную часть ш три адре­ са, из которых два используются дли записи адресов операндов, трений—для записи адреса результата операции. Возможности трехадресной команды шире, чем двухадресной, одтаако эффек­ тивность использования адресов ниже. Так при выполнении команды, когда в качестве одного из операндов берется резуль­ тат предыдущего действии, используются только два адреса, если же при этом запись в ЗУ не .производится, фактически используется только один адрес.

В современных машинах попользуются команды переменной адресности, которые позволяют сочетать в .себе достоинства одноадресных и многоадресным команд. Команды переменной адресности имеют несколько модификаций, называемых форма­ тами. .Применяются, например, такие форматы:

формат «регистр—регистр». Команды этого вида произ­ водят операции над операндами, записанными в регистрах АУ машины;

.формат «регистр—память». Команды этою формата про­

изводят операции над операндами, один из которых находится

врегистре АУ, а второй — в ячейке ОЗУ;

формат «регистр—регистр—память». В командах этого

формата указываются адреса (номера) двух регистров АУ и адрес ячейки ОЗУ;

— формат «память—память». Команды этого формата произ­ водят операции над операндами, записанными в ОЗУ.

Очевидно, что в машинах с переменной адресностью команд могут попользоваться и другие виды форматов. Длина и время выполнения команды переменной адресности! зависят от ее формата.

В процессе решения задачи устройство управлении после­ довательно переписывает команды из памяти машины в свой регистр команд и вырабатывает совокупность управляющих импульсов, обеспечивающих выполнение выбранной команды.

Вустройствах управления могут использоваться естествен­ ный и .принудительный порядок выполнения .команд. При при­ нудительном порядке выполнения команд адрес очередной команды указывается в выполняемой команде. Этот способ в чистом виде .практически не используется.

Вбольшинстве современных ЦВМ применяется естественный порядок выполнения команд, при котором устройство управ­ ления-выбирает команды из запоминающего устройства в той последовательности, в какой они записаны в ячейках ЗУ. Если

впроцессе решения задачи возникает необходимость изменить естественный порядок выполнения команд, используются силе-

4 5 0

цмальные команды условного и безусловного перехода, обеспе­ чивающие принудительную передачу управления требуемой команде. Безусловным переходом называется операция перехо­ да, в которой формирование адреса следующей команды про­ изводится всегда по одному и тому же фиксированному для данной операции правилу. Условным переходом называется операция перехода, в которой правило формирования адреса следующей команды выбирается в зависимости от выполнения некоторого условия.

Каждая команда выполняется в течение определенного ин­ тервала времени, который называется рабочим циклом ЦВМ. Длительность рабочего цикла Та зависит от структуры коман­ ды, вида выполняемой операции и быстродействия процессора и оперативного запоминающего устройства машины. В течение рабочего цикла устройство управления обеспечивает считыва­ ние команды и операндов из памяти, выполнение указанной в операционной части команды операции над операндами и запись, результата, в память машины. Таким образом, каждую команду можно рассматривать как некоторую последователь­ ность'микрокоманд, каждая из «отары» обеспечивает выполне­ ние определенной функционально законченной операции. В связи с этим рабочий цикл машины можно разделить на не­ сколько довольно самостоятельных интервалов, которые обычно называются тактами. Каждый такт обеспечивает выполнение одной микрокоманды. В общем случае рабочий цикл 7’ц вклю­ чает в свой состав: такт чтения команды Тк, такты чтения операндов Т0п, рабочий такт (такт выполнения указанной в команде операции) Тр и такт записи результата в запоминаю­ щее устройство машины Тзр.

Диаграммы рабочего цикла одно-, двух- и трехадресных ма­ шин приведены на рис. 17.1,а, б, в соответственно.

29*

451

При выполнении микрокоманды ЦВМ выполняет .несколько элементарных операций (установка нуля в регистрах, прием числа в .регистр, сдвиг числа в регистре и т. ш.), называемых микрооперациями. Время выполнения одной микрооперации обычно называют машинным тактом Тм. Импульсы, определяю­ щие машинный такт, называют тактовыми или тактирующими импульсами. Частота следования тактирующих импульсов FT 'определяет быстродействие машины и называется тактовой частотой ЦВМ. Каждый интервал рабочего цикла состоит из нескольких машинных тактов Гм. Например, такты чтения команды .]»операндов машины «Мпнск-22» состоят из шести ма­ шинных тактов длительностью Гм = 4 мкс.

Длительность тактов (интервалов) чтения команды Тк и операндов Топ и записи результата 7зр не зависит от вида выполняемой операции', в то же время длительность рабочего такта Гр; в основном, определяется видом выполняемой опера­ ции. Времена выполнения арифметических операций обычно намного превосходят время чтения команды и операндов и могут различаться между собою в десятки раз. Например, для машины «Мпнок-22» длительность Тк и Топ составляет 24 мкс, а времена выполнения арифметических операций суммирования

и деления с фиксированной и плавающей

запятой лежат в

пределах: г‘слф=24 мкс, Цел ф =644 мкс,

Цлпл =98-г-238 мкс,

Цел пл =520 ~ 528 мкс.

Чтобы обеспечить в течение рабочего такта Гр выполнение любой операции, необходимо его 'длительность выбирать не менее времени выполнения самой долгой операции, либо делать его переменным по длительности. Машины, в которых исполь­ зуется постоянный рабочий такт, называются (машинами с по­ стоянным циклом; ЦВМ, использующие переменный рабочий ■такт, называют машинами с плавающим циклом.

В процессе решения задачи устройство управления обеспе­ чивает согласованную работу всех устройств и отдельных узлов ЦВМ. По способу временного согласования работы устройств ЦВМ устройства управления делятся на синхронные, асинхрон­ ные и'Синхронно-асинхронные (смешанные).

Синхронной называется вычислительная машина, в которой начало и конец выполнения операций задаются устройством управления. Количество тактирующих' импульсов в цикле в синхронных машинах постоянно и не зависит от вида выполня­ емой команды. Естественно, что при выполнении'некоторых ко­ манд часть машинных тактов не используется. Очевидный недо­ статок .синхронных машин -^низкое быстродействие, которое обуславливается потерей машинного времени при выполнении «коротких» операций (сложение, вычитание). Основным досто­ инством синхронных машин является простота устройств управ­ ления. Поэтому синхронный способ управления машины .может

452

оказаться целесообразным в последовательных опецмализиро­ ванных ЦВМ, в которых не предъявляются высокие требования к быстродействию.

Асинхрани ой ЦВМ называется вычислительная машина, в ■которой начало вытол1Н|е,Н|||,я каждой последующей операции определяется по сипнал-у фактического окончания выполнения предыдущей операции'. Синхронизация работы узлов и устройств асинхронной ЦВМ осуществляется автономно местными уст­ ройств ами yinpasлейия.

Каждый блок местного управления (БМУ) строится по схеме синхронного управления. Согласование работы блоков местного управления отдельных устройств .'производится цент­ ральным устройством управления но принципу «Ответ—За­ пуск». После окончания работы соответствующего устройства ЦВМ его БМУ формирует импульс «Ответ», который поступает в центральный блок управления. Этот импульс попользуется для формирования импульса запуска блока местного управле­ ния следующего устройства ЦВМ. В принципе импульс «Ответ» может непосредственно поступать на БМУ требуемого устрой­ ства ЦВМ, и, следовательно, центральный блок управления может отсутствовать.

Формирование управляющих импульсов в асинхронных ма­ шинах в принципе не связано с тактирующими импульсами. Вследствие этого временные интервалы между соседними управляющими импульсами могут быть независимыми и опре­ деляться только временем, необходимым для выполнения оче­ редной микрооперации пли микрокоманды. В асинхронных ма­ шинах непроизводительные затраты времени сведены к мини­ муму, благодаря чему эти машины имеют высокое быстродей­ ствие. Основным недостатком асинхронных машин является сложность устройства управления.

В синхронно-асинхронных машинах используются достоин­ ства синхронного и асинхронного способов управления. Цикл работы этих машин состоит из нескольких подготовительных' стандартных тактов, в течение которых управление произво­ дится по синхронному (принципу управления, и «растянутых» тактов, в течение которых арифметическое устройство, .внешняя память, устройства ввода- и вывода работают по импульсу за­ пуска от центрального блока управления, автономно осуществ­ ляя синхронизацию работы блоков и узлов внутри себя, с по­ мощью местных блоков управления.

Таким образом, синхронно-всинхронные машины имеют цент­ ральный блок управления, который часто называют просто уст­ ройством управления, и блоки местного управления АУ, УВД, УВР, внешней памяти. В связи с этим .синхронно-асинхронные машины часто называют машинами со смешанным управлением.

4 5 3

Примером синхронно-асинхронных машин являются ЦВМ «БЭСМ-6», «Минск-22» и др.

§ 17.2. Устройства управления машин общего назначения

Цифровые вычислительные машины общего назначения предназначены для решении широкого круга задач. Для реше­ ния каждой задачи составляется своя 'программа. Программы различаются между собою как количеством команд в програм­ ме, так и видом команд, выполняемых в определенных циклах. Поэтому в устройствах управления ЦВМ общего назначения используется при-нцтго непосредственного управления по реали­ зуемой команде, предусматривающий выработку управляющих сигналов на основе анализа адресной и операционной частей вы­ полняемой команды.

В общем случае в течение рабочего цикла устройство управ­ ления производит:

чтение очередной команды из запоминающего устройства

ихранение ее в течение рабочего цикла;

выборку из запоминающего устройства операндов н по­

сылку результата решения в запоминающее устройство;

преобразование операционной части команды, т. е. выра­ ботку управляющих сигналов, обеспечивающих выполнение за­ данной операции;

формирование адреса очередной команды;

автоматическое изменение (модификацию) определенных команд.

Кроме этого, устройство управления обеспечивает .выполнение ряда операций, которые не входят в рабочий цикл: ввод исход­ ных данных и программы, выдача результатов решения, пуск и останов -машн-ны. контроль работы машины и т. п.

Структурная .схема устройства управления приведена на рис. 17.2. В соответствии с выполняемыми функциями устройство управления в общем случае имеет в своем составе:

датчик рабочего цикла (ДЦ), который вырабатывает со­ вокупность тактирующих импульсов, определяющих рабочий цикл вычислительной машины и обеспечивающих синхрониза­ цию работы всех ее узлов и устройств;

счетчик команд (СчК), предназначенный для формиро­ вания номера ячейки памяти, подлежащей вызову в регистр

команд;

регистр -команд (РгК), обеспечивающий прием и хранение,

втечение рабочего цикла подлежащей выполнению команды;

дешифратор (коммутатор) операций (ДшОп), .предназна­

ченный для преобразования кода операции в управляющий сигнал, обеспечивающий автоматическое выполнение операции;

454

— блок выработки управляющих сигналов (БВУС), обеспе­ чивающий -выработку пространственно-временной последова­ тельности управляющих сигналов с требуемьимн параметра ми (длительность, |фор.ма, амплитуда, мощность и т. д.) и их по­ дачу ,в АУ, ЗУ и внешние устройства (У'ВВ, ВЗУ) машины;

Рис. 17.2».

узел пуска—останова (УПО), обеспечивающий пуск ма­ шины, требуемый режим -работы (автоматический, по циклам.' по тактам) и останов машины по команде, «три переполнении разрядной сетки, выходе из строя машины и т. д.;

пульт управления, позволяющий оператору задавать тре­ буемые режимы работы машины и осуществлять над ней необ­ ходимый контроль.

Для удобства изложения работы схемы блок выработки управляющих ситиалов разделен на две части: БВУС арифме­ тического устройства и БВУС запоминающего устройства. БВУС АУ вырабатывает управляющие сигналы, обеспечиваю­ щие работу арифметического устройства, а также устройств ввода и вывода.

455

Генератор синхронизирующих импульсов (ГСИ) вырабаты­ вает непрерывную последовательность импульсов с периодом следования, равным машинному такту Гм. Эт,п импульсы через узел пуска—останова поступают на датчик цикла. Датчик цикла .имеет ряд выходных шин, на которых сигналы появляют­ ся последовательно во времени и с периодом, кратным машин­ ному такту Тм. Таким образом, датчик цикла преобразует вре­ менную последовательность синхронизирующих импульсов в пространственно-временную совокупность управлающих импуль­ сов, которые поступают в блоки выработки управляющих сиг­ налов и в счетчик команд.

Блоки выработки управляющих сигналов вырабатывают управляющие сигналы (импульсы и потенциалы), каждый из которых обеспечивает выполнение одной микрооперации. Управ­ ляющие сигналы различаются между собою двумя основными признаками: временным положением внутри такта (цикла) н пространственным положением, т. е. видом шины, на которой они появляются. Таким образом, управляющие сигналы разне­ сены между собою во времени и в пространстве.

Адрес первой команды программы записывается в счетчике команд оператором с пульта управления, затем этот адрес автоматически переписывается в адресный регистр РгА, свя­ занный с запоминающим устройством ЦВМ.

В такте чтения команды Тк этот адрес подается в ОЗУ. Кроме того, в этом такте БВУС ЗУ формирует и подает в ОЗУ управляющие импульсы чтения, под действием которых очеред­

ная

команда выбирается

из памяти машины

и записывается

в регистре команд. Разряды

регистра

команд,

на

которых

записывается код операции

(операционные

разряды

коман­

ды),

подключаются

к

дешифратору

операций,

адресные

разряды регистра

команд,

в которых

записан

адрес

первого операнда, подключаются к адресному регистру. В ре­ зультате в РгА окажется записанным адрес первого операнда, а на выходе дешифратора операций возбудится шина, сигнал на выходе которой соответствует выполняемой операции. Этот сигнал поступает в БВУС АУ.

В такте чтения первого операнда Тол адрес первого операнда подается в запоминающее устройство, БВУС ЗУ формирует и подает в ОЗУ импульсы чтения. В результате этого первый операнд выбирается из памяти и записывается в соответствую­ щем регистре арифметического устройства. В конце такта адрес второго операнда записывается в адресный регистр.

Втакте чтения второго операнда в арифметическое устрой­ ство записывается второй операнд.

Втакте выполнения операции Тр БВУС АУ по сигналу кода операции, поступающему из дешифратора операций, вырабаты­ вает совокупность управляющих сигналов, которые поступают ,

456

в АУ и обеспечивают выполнение заданной операции. В синхрошн'Ых машинах выработкой всех управляющих сигналов управляет датчик цикла. В ои1н!хронно-!а'синх|р.с:нных м'ашинах датчик цикла .посылает в БВУС АУ только импульс -начала такта Гр, а все управляющие импульсы вырабатываются БВУС АУ самостоятельно-.

В такте записи -результата Тзр блоки БВУС АУ и БВУС ЗУ производят запись результата в память машины. В трехадрес­ ных ма1ш-инах адрес ячейки памяти для записи результата ука­ зывается в третьем адресе команды, который к началу такта Гзр переписывается из регистра команд .в адресный регистр. В двухадресных командах запись результата ведется по адресу второго операнда. Этот адрес к началу такта Гзр сохраняется в адресном регистре.

По команде выдачи результатов ,на печать БВУС АУ по­ дает управляющие импульсы на устройство вывода ЦВМ, обеспечивающие регистрацию результата вычисления.

В конце цикла в счетчик команд с датчика цикла подается импульс для изменения адреса -команды на единицу. После выполнения команды с выхода БВУС АУ или с выхода БВУС ЗУ при записи результата в ОЗУ подается импульс конца рабочего цикла. Этот импульс используется в датчике цикла для формирования импульса начала следующего цикла, кото­ рый начинается с подачи на БВУС ЗУ и адресный регистр им­ пульса начала такта Тк чтения очередной -команды.

Для выполнения команд условного -и безусловного перехо­ дов .в схеме управления предусматривается передача адресной части регистра команд в счетчик команд. При выполне­ нии операции безусловного перехода в счетчике -команд запи­ сывается адрес команды, указанный в команде безусловной передачи управления. При выполнении операции условного пе­ рехода в счетчике команд записывается адрес команды, которнй отвечает определенному условию. Например, по команде «—32» условной передачи управления по знаку устройство управления ЦВМ «Минск-22» отдает управление команде, адрес которой в регистре команд записан по первому адресу, если результат предыдущего действия 5> 0, и команде, запи­ санной по второму адресу, если 5< 0 .

Функциональные схемы устройств управления реальных ма­ шин могут отличаться от рассмотренной обобщенной схемы, представленной .на рис. 17.2. В зависимости от типа -машины, ее адресности, формы представления чисел в состав устройства управления могут включаться дополнительные узлы, например, регистр кода операции. В других случаях, наоборот, устройство управления может быть сокращено за счет исключения из его состава отдельных узлов или их объединения в один общий узел.

457

Проанализируем обобщенную структурную схему устройства управления. В двухадресных ЦВМ регистр команд занят толь­ ко первые два такта и к началу третьего такта (чтение второго операнда) освобождается. Это позволяет использовать в ка­ честве регистра команд один' из регистров арифметического устройства. Например, в машине «Минск-22» роль регистра ■команд выполняет сумматор АУ. Если в ЦВМ используется отдельный регистр команд, то сокращение схемы устройства управления можно осуществить за счет исключения из ее со­ става адресного регистра, функции которого можно возложить на регистр команд. В этом .случае необходимо обеспечить, чтобы ОЗУ .машины в соответствующем такте подключалось непо­ средственно к разрядам репистра команд, в которых записан адрес команды и адреса операндов.

Способы адресации в ком андах '

В цифровых вычислительных машинах1используется несколь­ ко способов адресации к ячейкам памяти.

Простейшим способом адресации является способ, при ко­ тором в адресной части команды записывается исполнительный адрес, т. е. адрес фактического обращения к .памяти. Такая адресация называется прямой или абсолютной адресацией, так как в команде записыв'ается номер, присвоенный ячейке памяти, который является абсолютным адресом этой ячейки. Прямая адресация широко использовалась в машинах второго поколения. В современных ЦВМ прямая адресация применяется только для записи адресов регистров в форматах команд, не­ которые адреса которых используются для указания номеров регистров, например, в форматах «регистр—регистр», «ре­ гистр—память» и т. п.

Для уменьшения длины программы с большим количеством изменяемых адресов в современных малых и мини. ЦВМ исполь­ зуется способ косвенной адресации. .При косвенной адресации в адресной части команды указывается адрес ячейки памяти, хранящей искомый исполнительный адрес операнда или коман­ ды. При косвенной адресации в команде имеется специальный

разряд, в котором записывается

признак косвенной

адресации.

В некоторых' случаях адресная часть команды может исполь­

зоваться непосредственно для

'представления кода

операнда.

Такой способ адресации называется непосредственной адреса­ цией, а операнд, записанный в адресной части, называется не­ посредственным операндом.

На практике часто встречаются задачи, в которых вычисле­ ния ведутся по одним и тем же формулам, но при .различных входных данных. В этом случае исходные данные можно пред­ ставить в виде массива (списка) информации. Для решения

458

задачи в полном объеме в этом случае необходимо после вы­ полнения каждого цикла программы засылать в ячейки памяти, указанные в адресной части команд, новые исходные данные и затем производить вычисления снова. Если .массив имеет большую длину, пересылка чисел занимает значительную долю машинного времени. Более удобно в этом случае изменять адре­ са операндов. Эта операция называется переадресацией коман­ ды или модификацией адресов.

|Пвреадресацию можно производить чисто программным спо­ собом, однако это требует введения большого числа дополни­ тельных команд, что ведет к усложнению программы и увели­ чению машинного времени. Поэтому переадресация в современ­ ных ЦВМ производится программно-аппаратурным способом, при котором изменение адресов производится специальными узлами устройства управления ЦВМ .по указанию программы. Для обеспечения переадресации команд в устройство управле­ ния ЦВМ включается сумматор адресов hi группа индексных регистров.

Индексным per,метром называется узел устройства управле­ ния, предназначенный для приема, хранения и выдачи кодов, используемых при автоматическом изменении команд. В каче­ стве индексного регистра может использоваться специальный триггерный регистр или ячейка памяти машины.

Необходимость модификации адреса указывается специаль­ ным признаком модификации (ПМ), который записывается в специальных разрядах команды. Записанное в разрядах при­ знака модификации двоичное число определяет номер индекс­ ного регистра. Если это число равно нулю, то адрес команды

не изменяется. Схема блока модификации адресов

приведена

на рис. 17.3. В такте Тк

модифицируемая

команда

переписы­

вается из памяти машины в

 

 

регистр

команд.

Если

в

 

 

команде

имеется

признак

 

 

модификации, то

команда

 

 

передается в сумматор .адре­

 

 

сов. Затем устройство управ­

 

 

ления из индексного ре­

 

 

гистра, номер которого ука­

 

 

зан в разрядах, ПМ коман­

 

 

ды, подает

в

сумматор

 

 

адресов код (индекс),

ис­

 

 

пользуемый

дли

изменения

Рис. 117.3.

 

■адресов команды. Сумматор

разрядов

команды

адресов

суммирует содержимое адресных

с индексом, ,в результате чего формируется новая команда, ко­ торая затем переписывается в регистр команд, и устройство ■управления приступает к ее (выполнению,