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

книги из ГПНТБ / Журавлев, Ю. П. Системное проектирование управляющих ЦВМ

.pdf
Скачиваний:
15
Добавлен:
22.10.2023
Размер:
12.85 Mб
Скачать

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

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

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

Г Л А В А 3

ВОЗМОЖНОСТИ ТЕХНИЧЕСКОЙ РЕАЛИЗАЦИИ ПРИНЦИПОВ ОТНОСИТЕЛЬНОЙ АДРЕСАЦИИ

§ 3.1. ОСОБЕННОСТИ ЦВМ С ПЕРЕМЕННОЙ АДРЕСНОСТЬЮ

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

В той или иной степени способы кодирования программной информации, в которых частично использованы принципы относи­ тельной адресации, реализованы в некоторых существующих ЦВМ. Так, в ЦВМ «Днепр» (СССР) вместо полных 12-разрядных адресов применяются только 9-разрядные относительные адреса, которые указывают адрес операнда в пределах одного блока памяти. Стар­ шие три разряда полного адреса, определяющие номер блока, за­ даются программным путем и хранятся на регистре номера блока

(РЫБ).

Формирование полноразрядного кода адреса осуществляется путем пристыковки к 9-разрядному относительному адресу на место старших разрядов трехразрядного кода с РЫБ (сложение с по­ стоянной базой).

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

ВЦВМ 1ВМ/360 (США) полный адрес представляет собой 24-разрядный двоичный код. Однако при обращении к памяти за операндом его адрес в коде команды всегда задается 1 2 -разрядным

относительным адресом (смещением).

Формирование полноразрядного адреса осуществляется путем

.алгебраического суммирования трех слагаемых:

 

 

Ни —б + Ь+ с,

где

аи — 24-разрядный

код полного исполнительного адреса операн­

да;

6 1 2 -разрядный

код .относительного адреса (смешение); Ь

121

24-разрядный код; хранящийся в базовом регистре; с — 24-разряд ныи код, хранящийся в индексном регистре.

Содержимое базовых и индексных регистров меняется прогоаммным путем.

В списке команд 1ВМ/360, так же как и в списке команд ЦВМ «Днепр», отсутствуют цепочки последовательно выполняемых ариф­ метических и логических операций. Известны ЦВМ, список команд которых включает отдельные команды, по которым выполняются

цепочки

последовательных арифметических

и логических операций

п ТП™

°™0СЯТСЯнапРимер, ЦВМ серии

«Урал» (СССР) и др.'

В ЦВМ «Урал» по команде с кодом 05 выполняется цепочка двух последовательных арифметических операций вида «умножение — сло­

жение». Однако в этих ЦВМ в кодах команд используются только полные адреса. J

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

из-за присущих им недостатков, к числу которых относятся сле­ дующие:

1 . Относительные адреса (если они используются) имеют до­

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

2 . Базовые адреса формируются и изменяются программным

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

3. Длина цепочек операций, выполняемых по одной команде не превышает двух. Кодирование в одной команде цепочек длиной 3

и более элементарных операций позволит существенно сжать про­

граммы и уменьшить суммарные затраты времени на

обращение

к памяти за командами.

F

4.Не используются усеченные и относительные коды операций что существенно снижает возможности сжатия программ.

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

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

ности, блоков выработки исполнительных сигналов операций и ис­ полнительных адресов.

ппивечечкт11ТЬ«кСТ| о КТчР/1 УСТР0ЙС™ управления с подобными блоками

приведены в §§ 3.2—3.4 и дают обнадеживающие ответы на вопросы о степени усложнения УУ при широком использовании принципов относительной адресации (см. § 3.5). Вопрос о влиянии относитель

по^жителыю Па ВР6МЯ решеиия задач УпРавления также решается

Проведем сравнительную оценку времени решения одной и той

же задачи двумя различными ЦВМ, одна из которых имеет только основной список команд, а вторая - основной и дополнительш

В условиях одинаковой организации операционных устройств и

122

сйстемы оперативной памяти. При этом возможны различные случай, из которых для сравнения выберем два:

ЦВМ имеют один капал обращения к памяти;

ЦВМ имеют два канала обращения к памяти, причем число­ вая и программная информация хранится в различных блоках ОЗУ.

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

Пусть N — количество обращения к памяти, обусловленное ра­ ботой операционного устройства при решении задач управления ука­ занного класса;

N с — полное количество элементарных операций, выполняемых в операционном устройстве при решении задач управления;

То — цикл работы оперативной памяти; М, М* — полное количество обращений к ЗУ за кодами команд

соответственно первой и второй ЦВМ; Т, Т* — общее время решения задач управления без учета вре­

мени, затрачиваемого-на ввод — вывод информации и на осуществле­ ние групповых обменов между ступенями памяти;

tc — среднее время выполнения операции в процессоре.

Тогда для режимов несовмещенных тактов работы сравниваемых ЦВМ можно записать:

Т Mxo+Nxo + N Цс, T* = M*xo+Nxo+Nctc,

откуда явствует, что выигрыш времени АТ при реализации задач управления ЦВМ с относительной адресацией всегда положителен;

Д Г = ( М — ЛГ*)т 0> 0 ,

поскольку всегда выполняется соотношение М—М*>0.

Для режимов частично или полностью совмещенных тактов име­ ет место соотношение Т^Т*, т. е. использование принципов отно­ сительной адресации экономии времени решения задач управления не дает.

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

§3.2. СТРУКТУРА БЛОКА ФОРМИРОВАНИЯ ИСПОЛНИТЕЛЬНЫХ АДРЕСОВ

Блок

формирования исполнительных адресов является

одним

из основных

функциональных узлов устройства

управления

адрес­

ной ЦВМ.

В

зависимости от признаков форматов

команд и способов

задания базовых адресов блок должен вырабатывать исполнитель­ ные адреса.

123

Рис. 3.1.

Рис. 3.2.

Рис. 3.3.

124

Общая структурная схема блока прёдставлёна на рйс. 3.1. Ус­ ловные обозначения, принятые в схеме, следующие:

2 — сумматор,

РА — регистр выдачи исполнительных адресов в адресную магистраль.

К — коммутатор, РБА — регистр базового адреса,

ИР — индексный регистр, ПРК, — приемный регистр команд.

Пусть на приемном регистре команд находится команда основ­ ного формата с полноразрядными фактическими адресами. Каждый из этих адресов через коммутатор в качестве слагаемого поступает на вход сумматора, где суммируется с содержимым индексного ре­ гистра, т. е. формирование исполнительных адресов в сумматоре осуществляется в соответствии с выражением

Й»и = 0,i ф + Jl;Cj.

Константа переадресации хранится в индексном регистре и исполь­ зуется только в тех случаях, когда в команде имеется признак пере­ адресации (я; = 1). С выхода сумматора исполнительный адрес через регистр адреса выдается в адресную магистраль.

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

 

 

a ill = 6i + b + jiiCi

 

и

в качестве очередных исполнительных адресов с выхода сумма­

тора через регистр адреса выдаются

в адресную

магистраль.

с

В схеме имеется

возможность

записывать

фактический адрес

выхода сумматора

в регистр базового адреса.

Это целесообразно

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

матора ( £ ' ) и тогда

общая

структурная схема блока формирова­

ния исполнительных

адресов

будет иметь вид, показанный на

рис. 3.2.

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

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

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

125

ttyctb на ttPK находится команда вида!

14 ОН 71!

Т12

П3

^4 3H)3i | Зн2й2 З н А Зн464

в которой КиП — код обобщенной операции: я* — признаки модефицирования адресов; Зщб; — относительные адреса со своими зна­ ками.

Для определенности выбраны следующие значения составных частей данной команды (адреса указаны в восьмеричной системе счисления):

JT1 — JT21,

Яз = Я4= О,

3 н161 = —5,

Зн3 бз=3.

Зн26 2 = 6 ,

ЗН4 64 — —7.

Базовый адрес и константа переадресации 1-го и 2-го адресов равны соответственно:

6 = 3555, ci = c2=0001.

Режим работы устройства управления задан так, что исполнительные адреса формируются в соответствии с выражением

Паи-—6 + 6i+Я4Сг*

Фактические адреса образуются путем алгебраического суммирова­ ния базового адреса с относительными адресами.

Для этой цели последние в формате команды записываются в обратном коде со своими знаками, а сумматор 2 ], предназначен­

ный для сложения обратных кодов, имеет цепь циклического пере­

носа из

старшего разряда

( 1 2 -го)

в младший разряд ( 1 -й).

Так

как относительный

адрес

представлен четырьмя двоичными

разрядами, из которых один знаковый, то на входы 4—12-го раз­ рядов сумматора подается значение знакового (4-го) разряда.

В этом случае относительные адреса, поступающие на вход сумматора, будут иметь следующие значения:

6i=7772 62=0006, 6з=0003, 64=7770.

Сумматор 2 будет выдавать сумму кодов относительного и базового адресов, т. е.

« 1 = 6 + 6 1 = 3555+7772= 3550,

а2 = 6 + 6 2= 3555+ 0006 = 3563,

Q-з= 6 + 6 3 = 35о5+0003 = 3560,

а4 = b + 6 4=3555 + 7770=3546.

Суммирование осуществляется по модулю, равному Л1=212— 1.

Исполнительные адреса формируются путем аналогичного суммиро­ вания в сумматоре 2 ' фактического адреса а; с константой пере­

адресации Сг, если в данном адресе имеется признак модификации.

126

§ 3.3. СТРУКТУРА БЛОКА ВЫРАБОТКИ СИГНАЛОВ ОПЕРАЦИЙ

Для выработки

сигнала операции команды как основного, так

и дополнительного

форматов используется регистр кода операции

сдешифратором.

В§ 2.2 были приведены три способа кодирования последова­ тельных цепочек операций для команд с относительными адресами. Различия в технической реализации блоков выработки сигналов операций для этих способов в основном сводятся к различным

способам формирования сигналов на входах регистра кода опера­ ции.

Общая структурная схема блока формирования исполнительных кодов операций с использованием базовых и относительных кодов операций приведена на рис. 3.4.

Дополнительно к введенным ранее условным обозначениям до­ бавлены следующие:

ДшКОП — дешифратор кодов операций, РгКОП — регистр кодов операций, РгБКОП — регистр базового кода операции,

РгКОП — регистр относительных кодов операции, В качестве регистра относительных кодов операций выступают

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

Общая структурная схема блока формирования исполнительных кодов операций с использованием «усеченных» кодов операций по­ казана на рис. 3.5.

В данной схеме приняты следующие дополнительные условные

обозначения:

 

 

 

 

 

 

 

РгКОП — регистр усеченных ко­

 

дов операций,

 

 

 

 

 

 

 

ДшКОП — дешифратор

усе­

 

ченных

кодов

операций.

 

 

 

 

При наличии на приемном ре­

 

гистре команд команды дополни­

 

тельного

формата

усеченный

код

 

операции

с

регистра

усеченного

 

кода операции

через

коммутатор

 

подается на дешифратор усечен­

 

ного кода операции.

Каждому усе­

 

ченному коду операции соответ­

 

ствует

вполне

определенный

код

 

операции

команд основного

фор­

 

мата. Поэтому появление сигна­

 

ла на выходе дешифратора усе­

 

ченных

кодов

операций

позволяет

 

записать

в

регистр

кодов

опера­

 

ций требуемый код. Этот процесс

Рис. 3.4.

повторяется

столько

раз,

сколько

Рис. 3.5.

Рис. 3.6.

 

усеченных кодов операций содержится в коде команды дополни­ тельного формата.

Если на регистре

команд находится команда

основного

форма­

та, то

код операции

непосредственно

поступает

через коммутатор

на регистр кодов операций.

 

 

3

F

На рис. 3.6 приведена общая структурная схема блока форми­

рования

сигналов операций для такого

способа кодирования

 

когда

каждой конкретной цепочке ставится в соответствие обобщенный код операции (КОП).

Условные обозначения, принятые в схеме, следующие:

РгКОП

регистр кодов обобщенных операций,

 

" п ^ т 9 ^

дешифратор кодов обобщенных операций,

ДшДЦ — дешифратор длительности цепочки,

 

СчДЦ — счетчик длительности цепочки,

 

 

ДКОП — датчик кодов операций.

 

 

В соответствии

с обобщенным кодом

операций,

находящимся

на ^регистре

кодов

обобщенных операций,

на одном

из выходов

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

няе тетИЖп?Т0Т К0Д постУпаеТ

па регистр кода операций и далее

на дешифратор кодов операции.

 

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

об окончании этой

операции.

Измененное состояние

счетчика дли-

^ тГ ж СТИ цепочки

вызывает

появление сигнала на

другом выходе

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

128

следней операции из цепочки операций счетчик длительности це­ почки не выдаст сигнал переполнения, который свидетельствует об окончании выполнения этой цепочки операций. Если па регистре

команд находится

команда

основного формата,

то

код операции

через коммутатор

поступает

непосредственно

на

регистр кодов

операций.

 

 

 

 

На рис. 3.7 приводится один из возможных вариантов техни­ ческой реализации блока формирования сигналов операций. Схема блока составлена для случая, когда код обобщенной операции ко­ дируется четырьмя двоичными разрядами и длительность цепочки не превышает 8 операций.

Роль датчика кодов операций выполняет числовая линейка по­ стоянного запоминающего устройства совместно с формирователями опросных импульсов —Ф4).

Работа блока заключается в следующем. Пусть на регистре

кодов обобщенных операций РгКОП находится код, соответствую­ щий цепочке из пяти последовательных операций. В этом случае на выходе 3 дешифратора кодов обобщенных операций появляется сиг­ нал и одновременно с ним в счетчик длительности цепочки сигналом Qi заносится дополнительный код длительности цепочки. Для рас­ сматриваемого примера при длительности цепочки, равной 5, до­ полнительный код будет равен 3. Дешифратор длительности цепочки в соответствии с записанным в счетчик кодом на выходе 3 сформи­ рует сигнал, который совместно с опросным импульсом на выходе формирователя обеспечит выбор двенадцатой наборной шины через открытый диод 12.

9— 458

129

Соседние файлы в папке книги из ГПНТБ