
книги из ГПНТБ / Дроздов Е.А. Основы построения и функционирования вычислительных систем
.pdfПервичная |
командная |
информация представляется |
||
в виде иерархии трех |
основных |
командных |
слов: |
|
К В В ^ А С К ^ У С К . |
|
|
|
|
КВВ — это |
команда ввода-вывода, |
включаемая |
в ос |
новную программу, выполняемую процессором. Она, кро ме кода операции, обязательно содержит помер «ли ад
рес канала |
и |
номер |
или |
адрес внешнего |
устройства, |
|
с которым |
устанавливается |
связь для |
обмена информа |
|||
цией. Адресное |
слово |
канала (АСЮ |
обычно |
располага |
ется в фиксированной ячейке оперативной памяти и определяет адрес следующего слова в иерархии команд ных слов. АСК представляет собой как бы вспомогатель ное командное слово, жестко связанное с данной коман дой ввода-вывода. Управляющее слово канала (УСК), занимающее нижнюю ступеньку иерархии командных слов, представляет собой своеобразную команду, непо средственно реализуемую каналом и выбранным ВнУ. По УСК организуется вся работа по выполнению задан ной команды ввода-вывода.
Собственно команда ввода-вывода дает указания ка налу начать операцию обмена информацией между ОЗУ и заданным ВнУ по УСК, выбираемому по АСК, связан ным с данной КВВ. Процессор затрачивает свое время только на передачу в канал адресной информации, за писанной в КВВ, и организацию выдачи АСК. Если данная КВВ выполнена, то процессор продолжает счет по основной программе параллельно с выполняемой в канале операцией ввода-вывода. При этом считается, что КВВ выполнена, если канал, подканал и заданное ВнУ доступны в данный момент времени для обмена инфор мацией с ОЗУ. В противном случае КВВ считается невы полненной и происходит приостановка выполнения основ ной рабочей программы процессора до освобождения канала, подканала или заданного внешнего устройства.
Непосредственная реализация команды ввода-вывода в канале обеспечивается той информацией, которая со держится в УСК. Обычно каждое управляющее слово содержит код команды канала, номер первой ячейки поля ОЗУ, выделенного для обмена информацией с ВнУ, код количества слов, которое должно быть передано при
выполнении |
данной команды, а также признаковую |
|||
часть. Основная часть |
командной информации |
УСК |
||
реализуется |
в процессе |
работы оборудованием |
канала. |
|
Код команды |
канала всегда полностью выдается |
в |
уст* |
}50
ройство управления ВнУ, номер которого задан КВВ Основными командами капала считаются команды запи си и выборки информации. Кроме них могут использо ваться команды управления, по которым осуществляют ся такие действия, как установка в требуемое положение магнитных головок в НМД или подвод соответствующей зоны ленты .в НМЛ, формирование кода состояния ка нала, переход к новому УСК или новой последователь ности УС К и т. д.
При выполнении команды записи информации, полу чаемой от заданного ВнУ, в оперативную память обору дование канала формирует адреса ячеек ОЗУ и веде г счет переданных из ВнУ слов. Для этого используются счетчики адресов и количества переданных слов. В счет чик адресов заносится заданный УСК адрес первой ячей ки выделенного поля ОЗУ; после передачи каждого сло ва содержимое этого счетчика увеличивается на единицу. В счетчик количества слов заносится соответствующий код, также содержащийся в УСК; после передачи каж дого слова содержимое этого счетчика уменьшается на единицу. При выполнении команды выборки информации из ОЗУ с передачей ее в заданное ВнУ счетчики работа ют так же, как и при выполнении команды записи. Обратный порядок работы счетчика адресов использует ся только при выполнении команды записи в ОЗУ из НМЛ в случае обратного движения магнитной ленты.
Окончание операции s вода-вывод а обычно произво дится по установлении счетчика количества слов в нуле вое состояние. В этом случае вырабатывается сигнал о завершении выполнения КВВ в канале.
Прерывание выполнения КВВ осуществляется про граммным путем, а также при 'возникновении неисправ ностей в канале и ВнУ. Действительное состояние ВнУ, подканалов и канала всегда отмечается специальными поизнаковыми сигналами.
Для правильной организации обмена информацией между ядром системы и внешними устройствами управ ляющие органы ВС всегда должны иметь свдения о со стоянии всех каналов и внешних устройств. Эти сведения формируются в ССК — словах состояния каналов. Каж дый канал характеризуется своим ССК, хранимым в фиксированной ячейке оперативной памяти ВС. В лю бом ССК содержится адрес ячейки, в которой хранится выполняемое в данный момент УСК, признаки состояния
151
канала, подканалов и ВнУ, а также начальное содержи мое счетчика количества слов. Изменение ССК осущест вляется при каждом изменении состояния канала, под каналов и ВнУ.
Устройства общего доступа и счетчики времени, выполняемые в виде автономных узлов, подключаются к центральному ядру системы через мультиплексные ка налы; в отдельных случаях счетчики времени составляют
часть аппаратуры ЦП. |
Для устройств |
общего доступа |
и счетчиков времени |
характерно их |
расположение |
в одном помещении с ЦП или вообще центральным яд ром системы. Обращение к ним производится только по командам управляющих органов ВС или оператора системы.
4-2. М У Л Ь Т И П Л Е К С Н Ы Е КАНАЛЫ СИСТЕМ ОБЩЕГО НАЗНАЧЕНИЯ
Ввычислительных системах общего назначения
мультиплексные каналы служат для организации об мена информацией между устройствами центрального ядра ВС и медленнодействующими внешними устройст вами, причем все ВнУ не имеют непосредственных свя зей с ЦП и оперативной памятью системы. Функции мультиплексного канала сводятся к обеспечению выпол нения операций ввода-вывода и контролю состояний всех подключенных к нему внешних устройств. Основные действия, которые должен производить канал, заключа ются в приеме команд ввода-вывода, выборке УСК из оперативной памяти системы, расшифровке управляющей информации, содержащейся в УСК, выработке управля ющих сигналов для своих узлов и ВнУ, формировании и промежуточном хранении информационных слов, прие ме от ВнУ, хранении и выдаче в центральное ядро системы кодов состояний внешних устройств и самого канала.
Все необходимые действия канал может произвести только при организации надлежащих связей с ЦП, ОЗУ, ВнУ и достаточно сложной внутренней структуре, во многом аналогичной структурам обычных малых процес соров. Действительно, канал должен иметь операцион ное устройство, собственное запоминающее устройство и устройство управления. Его связи с ЦП, ОЗУ и ВнУ обеспечиваются системой шин по схеме на рис. 4-3.
152
Мультиплексный канал МК обменивается информа
цией с центральным процессором ЦП, |
оперативным |
за |
|||||||
поминающим устройством ОЗУ и внешними |
устройства |
||||||||
ми ВнУ |
через |
их |
устройства |
или узлы |
управления |
УУ. |
|||
Из ЦП в канал |
поступают коды операций |
команд ввода- |
|||||||
вывода, |
адреса |
внешних |
устройств |
|
и |
некоторые |
|||
управляющие |
сигналы |
запросного и |
запускающего |
||||||
видов; |
эта командная |
информация является первичной |
|||||||
jm ЦП- |
|
|
шпп |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
* ЦП* |
|
|
|
|
|
|
|
|
|
|
мк. |
УУ |
ВнУ, |
УУ ВнУг |
• |
• • |
УУ |
|
|
от ОЗУ • |
|
|
|
|
|
|
|
|
X ОЗУ -
шоп
Рис. 4-3. Основные связи мультиплексного канала ВС общего на значения.
для канала. В центральный процессор канал выдает только слова, характеризующие состояние его и ВнУ, а также сигналы прерываний и ответов на отдельные запросы ЦП. С оперативной памятью системы канал связан информационными и адресными шинами. Посред ством информационных шин осуществляется передача всех слов, вводимых для записи в ОЗУ и выводимых из него для дальнейшей передачи во внешние устройства. По адресным шинам из канала в ОЗУ передаются адре са івсех слов, записываемых в ОЗУ или выбираемых из
ОЗУ.
Шины, связывающие мультиплексный канал с внеш ними устройствами, разделяются на две большие группы: шины прямой передачи информации ШПП и шины об ратной передачи информации ШОП, причем и те и дру гие могут включать в свой состав необходимые узлы для формирования стандартных для данного сопряжения электрических сигналов, представляющих информацион ные символы. По шинам прямой передачи в общем случае передаются номера внешних устройств, запросыприказы и информационные посылки в виде байтов или полных слов. Номер ВнУ выдается каналом в ШПП при возбуждении сеанса связи с ним, запросы-приказы озна чают включение ВнУ, перевод его в требуемый режим
153
или требуемое состояние ті т. д. По шипам ШОП пере даются номера -внешних устройств, коды состояний и информационные посылки также в виде байтов или полпых слов. Номер ВнУ, передаваемый по ШОП, представ ляет собой своеобразный ответ данного ВнУ о его готовности начать выдачу или прием информации: код состояния выдается в капал из ВнУ по соответствующе му запросу-приказу и характеризует значениями своих разрядов состояния ВнУ в данный момент времени.
Количество единичных шин в |
каждой группе, т. е. |
в ШПП и ШОП, может изменяться |
в довольно широких |
пределах. Принципиально возможно использование од ной шипы для связи капала с внешними устройствами, однако в этом случае быстродействие канала ввода-вы вода чрезвычайно мало, что сводит на нет все использу емые приемы повышения производительности ВС. В другом предельном случае каждый сигнал передается но отдельной шине, что обеспечивает максимальное быстродействие канала ввода-вывода, но увеличиваем
объем аппаратуры. |
Поскольку многие |
посылки никогда |
не совмещаются по |
времени, возможно |
объединение шин |
без сколько-нибудь заметного уменьшения быстродейст вия канала. Поэтому ШПП и ШОП обычно представля ют собой набор шин, определяемый главным образом, форматом информационных посылок. Формат информа ционной посылки в большинстве случает отвечает одному байту (восемь двоичных разрядов), дополненному одним разрядом для осуществления контрольной проверки на четность или нечетность. В систему шин, связывающих канал с внешними устройствами, могут включаться от дельные цепи для передачи синхронизирующих сигналов.
Последовательность передачи различных посылок при выполнении операции ввода-вывода принимается следу ющей. По специальному управляющему сигналу из ЦП, означающему начало выполнения операции ввода-выво да, канал принимает код операции КВВ и адрес, т. е. номер внешнего устройства, которое участвует в работе по выполнению данной операции. Далее канал посылает в центральный процессор ССК и в случае возможности выполнения операции осуществляет выборку из ОЗУ со ответствующего управляющего слова. По ШПП посыла ется номер ВнУ; он воспринимается УУ всех внешних устройств, но подключение к шинам производится толь ко в одном ВнУ, номер которого совпадает с заданным.
154
В канал посылается |
сигнал о готовности ВнУ к |
работе. |
||||
Далее |
канал |
организует обмен |
информацией |
между |
||
ВнУ и |
ОЗУ. |
Если |
одновременно |
поддерживается |
связь |
|
капала |
с несколькими внешними |
устройствами, |
то |
обо |
рудование канала обеспечивает разделение времени между работающими ВнУ и их приоритетное обслужи
вание по соответствующим |
запросам. |
03S/X |
ОУК |
Рис. 4-4. Структурная схема мультиплексного капала.
Мультиплексный канал, выполняемый в виде специ ализированного процессора для реализации команд вво да и вывода информации, включает в свой состав четыре основных устройства, как это показано на рис. 4-4. Опе ративное запоминающее устройство канала ОЗУК есть не что иное как его оперативная память. Операционное устройство канала ОУК может рассматриваться как своеобразное арифметическое устройство, а устройство управления канала УУК, как и обычное УУ, обеспечива ет преобразование первичной командной информации и кодов признаков, формируемых в процессе работы дру гими устройствами, в необходимые наборы управляющих сигналов УС. Четвертое устройство канала — устройство анализа запросов УАЗ — представляет собой дополнение УУК и обеспечивает поочередное или в соответствии
155
с приоритетами обслуживание всех внешних устройств, участвующих в обмене информацией с центральным яд ром системы; иначе говоря, УАЗ обеспечивает разделе ние времени между отдельными внешними устройствами, обменивающимися информацией с центральным ядром системы в течение данного временного цикла.
Оперативное запоминающее устройство канала слу жит для хранения, приема и выдачи в другие устройства символьной информации, используемой в канале при выполнении операций ввода-вывода. По принципам по строения оно обычно не отличается от ОЗУ системы и имеет ту же разрядность при времени обращения поряд ка 1—2 мксек. Емкость 03 УК определяется в основном количеством подканалов, выделяемых в данном МК. Для каждого подканала отводится отдельное поле па мяти, включающее в свой состав до 8—16 ячеек. Кроме того, одно поле используется для хранения информации, относящейся к работе канала в целом; здесь могут раз мещаться списки заявок, очереди заявок на обслужива ние и т. п. В ячейках поля подканала хранятся слова, относящиеся к нему и необходимые для организации его работы в процессе обмена информацией между ОЗУ и ВнУ. Если подканал отвечает только одному ВнУ, то не обходимая емкость соответствующего поля ОЗУК ока зывается минимальной. Пусть ѳ составе мультиплексного канала имеется п простых подканалов; тогда общая ем
кость ОЗУК |
должна быть |
не меньше, |
чем |
8n+N, если |
N — количество ячеек, необходимых |
для |
размещения |
||
информации, |
относящейся |
к работе канала |
в целом. |
В каждом поле подканалов всегда выделяются ячей ки, в которых размещаются четыре основных слова: адресное слово канала АСК, управляющее слово канала УСК, информационное слово ИС и слово состояния ка нала ССК. Все эти слова относятся только к данному подканалу, т. е. используются и формируются в процес се работы только с одним ВнУ, номер, или адрес кото рого задан в команде ввода-вывода центрального про цессора. Ввод АСК в память подканала производится по КВВ, определяющей" начало выполнения операции ввода или вывода. По АСК осуществляется выборка из ОЗУ системы УСК и размещение его также в памяти подка нала. В процессе работы выбранного ВнУ управляющее слово канала, как правило, модифицируется в операци онном устройстве; промежуточное хранение модифициро-
156
ванного УСК обеспечивается той же ячейкой или теми же ячейками памяти подканала, что и начального, полу
чаемого из ОЗУ |
системы, УСК. Ячейка |
информационного |
||
слова частично |
выполняет |
функции |
«собирателя» |
ИС |
при выполнении |
операций |
записи и |
«разделителя» |
ИС |
при выполнении операций выборки. Действительно, если в каждом сеансе связи ВнУ может выдавать или вос принимать только один байт, то передаваемое в ОЗУ системы информационное слово составляется в течение нескольких сеансов и окончательно формируется в ячей ке ИС подканала, а слово, передаваемое во внешнее устройство, разделяется на байты, причем нереализован ные после очередного сеанса связи байты сохраняются в ячейке ИС подканала.
Связь оперативного запоминающего устройства кана ла с его другими устройствами и ОЗУ системы осущест вляется через группы вентилей и кодовые шины канала КШК. На рис. 4-4 показана только одна группа входных вентилей ВІ для ОЗУК; очевидно, что она должна разде ляться на две части, одна из которых служит для ввода адреса, а вторая — для ввода соответствующего записы ваемого в ОЗУК слова. К кодовым шинам канала под ключены группы вентилей В7 и В&, обеспечивающие связь с ОЗУ системы, и ВІ% через которые в централь ный процессор выдаются слова состояний канала. Непо средственно в устройство управления канала из ОЗУК через вентили ßg передаются коды признаков. Непосред ственно из УУК в ОЗУК поступают управляющие сигна лы, определяющие порядок действий, выполняемых этим устройством.
Операционное устройство канала представляет собой набор регистров, счетчиков, дешифраторов, групп вентилей и некоторых других узлов, служащих для временного хра нения и преобразования символьной информации, выра жаемой словами или их частями. Набор узлов ОУК обеспечивает выполнение действий над словами, относя щимися только к одному подканалу. Поэтому, когда действия по обслуживанию некоторого подканала закап чиваются, все модифицированные слова из ОУК пересы лаются в ячейки ОЗУК этого подканала, после чего в операционное устройство принимаются слова, относя щиеся к подканалу, который является очередным по обслуживанию. Связь ОУК с кодовыми шинами канала осуществляется посредством групп входных и выходных
157
вентилей В3 и Bt соответственно. Коды признаков выда ются в устройство управления канала через группу вен
тилей |
Вт. Регистры |
операционного |
устройства, |
||||
обеспечивающие |
промежуточное |
хранение |
байтов |
||||
информационных |
слов, |
через |
группы |
|
вентилей |
||
Вц и |
Bis |
связаны |
посредством |
кодовых |
шин ШПП |
||
и ШОП с |
внешними |
устройствами. Вся работа |
ОУК про |
исходит под воздействием управляющих сигналов, полу чаемых из устройства управления канала.
Устройство анализа запросов представляет собой комплекс узлов, обеспечивающих поочередное подключе ние работающих внешних устройств к каналу и далее к ОЗУ системы. Каждое ВнУ посылает в УАЗ сигнал за проса СЗ по мере своей готовности к приему или выдаче очередного байта информации (или полного информа ционного слова). В УАЗ осуществляются последователь ное формирование адресов ВнУ и выдача их во внешние устройства в порядке поступления сигналов запросов; одновременно с адресами выдаются сигналы, вызываю щие соответствующие действия ВнУ. В состав УАЗ мо жет включаться регистр состояний, в котором формиру
ются коды |
состояний |
для |
всех ВнУ. |
Рассматриваемое |
||||
устройство |
связано с КШК |
группами |
входных |
и выход |
||||
ных вентилей В5 |
и Вй |
соответственно. Выдача |
информа |
|||||
ции в УУК |
осуществляется |
через |
группу вентилей Вц. |
|||||
Все процессы в устройстве |
анализа запросов |
происходят |
||||||
под воздействием |
управляющих |
сигналов, |
получаемых |
из устройства управления канала. Отметим, что в от дельных случаях УАЗ может включать в свой состав схему приоритетов при разделении всех внешних уст ройств на несколько уровней по срочности обслуживания.
Устройство управления канала реализует все основ ные микропрограммы операций, непосредственно выпол няемых в канале. От центрального процессора через группу вентилей Ві3 оно получает коды операций вводавывода, а также управляющие сигналы, по которым осу ществляется пуск отдельных микропрограмм. В качестве дополнительной первичной командной информации з УУК используются коды признаков, поступающие от от дельных устройств канала. Реализация микропрограмм приводит к формированию наборов управляющих сиг
налов, посредством |
которых обеспечивается |
необходимая |
координация работы устройств канала. До |
поступления |
|
из ЦП сигналов |
начала обмена информацией между |
158
ОЗУ системы и внешними устройствами |
УУК работает |
по так называемому внутреннему циклу, |
управляя функ |
ционированием других устройств, которое 'СВОДИТСЯ, главным образом, к формированию слов состояний для подканалов и канала в целом. С поступлением первого сигнала от ЦП о начале обмена с заданным ВнУ уст ройство управления формирует УС, обеспечивающие реализацию последовательности действий по выполнению команды ввода-вывода. Если параллельно выполняется несколько таких команд, то УУК вырабатывает управ ляющие сигналы циклически, что и приводит в конечном итоге к поочередному подключению соответствующих внешних устройств через канал к оперативной памяти системы.
Параллельное выполнение нескольких операций вво да-вывода в мультиплексном канале производится в по следовательности, отвечающей разделению времени между работающими, т. е. заданными соответствующими КВВ, внешними устройствами. При рассмотрении этой последовательности полагаем, что все необходимые для выполнения операций УСК уже выбраны из оперативной памяти системы и размещены в ячейках подканалов ОЗУК. Примем также, что ВнУ осуществляют побайто вый обмен информацией с каналом и что каждое инфор мационное слово состоит из четырех байтов. Работаю щие внешние устройства посылают запросы на обслу живание в канал в том случае, когда в их выходных регистрах зафиксирован очередной байт выдаваемой информации или они готовы для приема очередного бай та. Все запросы анализируются в УАЗ канала, которое совместно с УУК обеспечивает поочередное обслужива ние внешних устройств.
При обслуживании одного ВнУ в канале производят ся следующие действия. По номеру данного внешнего устройства, формируемого в УАЗ, из ОЗУК выбирается отвечающее ему УСК и пересылается в операционное устройство. Реализация управляющего слова произво дится в каждом сеансе связи в основном узлами ОУК. Каждое УСК содержит код команды (записи, выборки, управления и т. д.) КК, код адреса КА, код признаков КП и код количества слов ККС. Код команды и код признаков не изменяются в течение реализации данного УСК. Поэтому они размещаются в соответствующих ре гистрах ОУК- Код адреса после передачи очередного
159