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

книги из ГПНТБ / Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие

.pdf
Скачиваний:
93
Добавлен:
27.10.2023
Размер:
29.24 Mб
Скачать

1. Набор триггерных регистров, в которых во время сеанса связи с периферийным устройством содержатся текущие параметры активного подканала (активным на­ зывается тот подканал, для которого производится дан­ ный сеанс связи). Регистр кода операции и указателей (РКОУ) содержит код и указатели операции ввода-вы­ вода. Регистр текущего адреса данных (РТАД) содер-

Рис. 9-2. Структурная схема мультиплексного канала.

жит адрес слова из ОЗУ, участвующего в данный мо­ мент в операции ввода-вывода. Текущий счетчик данных (ТСД) указывает количество единиц информации, кото­ рые осталось ввести в ОЗУ или вывести в данной опера­ ции. Регистр адреса управляющего слова (РАУС) опре­ деляет адрес очередного УС в цепи управляющих слов.

2. Память подканалов, представляющая собой внут­ реннее ЗУ канала и предназначенная для хранения те­ кущих параметров операций ввода-вывода, относящихся

кпассивным подканалам. Каждому подканалу отведен

впамяти участок, в котором хранится содержимое реги­ стров РКОУ, РТАД, ТСД, РАУС, соответствующее

510

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

3. Непосредственная связь с периферийными устрой­ ствами осуществляется через регистр связи с интерфей­ сом (РСИ), куда поступает информация, получаемая из периферийных устройств при вводе, и откуда в перифе­ рийные устройства выдается выводимая информация.

Обращение к оперативной памяти осуществляется через узел связи с ОЗУ. Этот узел в соответствии с алго­ ритмом выполняемой операции выбирает один из реги­

стров канала в качестве

источника

адреса,

другой ре­

гистр— в качестве источника или

приемника информа­

ции и вырабатывает все

необходимые для

обмена ин­

формацией с ОЗУ сигналы.

 

 

Обмен информацией канала с ОЗУ производится сло­ вами. Обмен с периферийными устройствами произво­ дится обычно более мелкими единицами информации, например байтами. Поэтому при вводе информации ка­ нал производит компоновку слова из поступающих в ка­ нал байтов, а при выводе — развертку слова в последо­ вательность выдаваемых в периферийное устройство байтов. Для определения конца компоновки или раз­ вертки слова используется счетчик ба,йтов (СБ), кото­ рый указывает номер последнего обработанного байта з текущем слове данных. Содержимое СБ и слово данных, участвующее в обмене информацией между каналом и периферийным устройством, запоминаются в соответст­ вующем участке памяти подканалов наряду с регистра­ ми РКОУ, РТАД и т. д.

4. Регистр команд ввода-вывода (РКВВ), предназ­ наченный для хранения кода команды, поступающей в канал из процессора, когда процессор в соответствии со своей программой запускает новую операцию ввода-вы­ вода.

Выполнение операции ввода-вывода в канале можно рассматривать как совокупность нескольких видов про-

511

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

Начальная выборка производится по инициативе процессора при пуске новой операции ввода-вывода. Процессор передает в канал код операции команды ввода-вывода, номер периферийного устройства и адрес первого УС. Эти параметры заносятся каналом в реги­ стры РКВВ, РНАП и РАУС. В тех машинах, где адрес первого УС не указывается в команде процессора, а со­ держится в специализированной ячейке ЗУ (в адресном слове канала), канал, заполнив РККВ и РНАП, сам считывает из ОЗУ адрес первого УС и заносит его в РАУС. После этого, используя содержимое РАУС как адрес, канал выбирает из ОЗУ первое УС, размещая его поля в регистрах РКОУ, РТАД, ТСД. К содержимому РАУС прибавляется число, равное длине управляющего слова, после чего РАУС указывает адрес следующего УС в цепи. В соответствии с выбранным в регистры уп­ равляющим словом канал запускает в работу требуемое периферийное устройство. Если устройство свободно н во время начальной выборки не обнаружены програм­ мные или аппаратные ошибки, считается, что пуск про­ изошел нормально. Канал сообщает об этом процессору, который переходит к выполнению следующей команды своей программы.

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

Процедура обслуживания производится по инициати­ ве периферийного устройства, которое посылает в канал требование обслуживания, после того как устройство готово к передаче очередной порции информации (на­ пример, байта). Канал, восприняв это требование, полу­ чает из интерфейса номер периферийного устройства, пересылает его через РСИ в РНАП и в соответствии с содержимым РНАП считывает из памяти подканалов участок, соответствующий активному подканалу. Теку­ щие параметры операции из памяти подканалов разме­ щаются в регистрах РКОУ, РТАД, ТСД, вводимое (или

512

выводимое) слово — в регистре

РСИ,

номер текущего

байта — в СБ.

 

 

В случае операции ввода из периферийного устройст­

ва принимается байт данных,

который

размещается в

РСИ на месте, определяемом счетчиком байтов. При вы­ воде байт данных из РСИ посылается в периферийное устройство. Содержимое СБ увеличивается на единицу, содержимое ТСД уменьшается на единицу.

Если СБ указывает, что компоновка (или развертка) слова данных окончена, то канал осуществляет связь с ОЗУ и в соответствии с адресом, размещенным в РТАД, записывает в ОЗУ введенное в РСИ слово, или считыва­ ет из ОЗУ в РСИ новое слово для вывода. Содержимое РТАД увеличивается на единицу (или уменьшается при обратном вводе); СБ гасится.

Если содержимое счетчика данных в ТСД не равно нулю, то канал запоминает в памяти подканалов новые значения параметров из РТАД, ТСД, СБ, РСИ и закан­ чивает сеанс связи с периферийным устройством.

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

Селекторный канал (рис. 9-3). Селекторный канал содержит набор триггерных регистров, большинство из которых по своим функциям аналогичны соответствую­ щим регистрам в вышеописанном примере мультиплек­ сного канала (регистры РКВВ, РК.ОУ, РТАД, ТСД, РАУС, РСИ, СБ).

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

Процедуры работы селекторного канала во многом похожи на процедуры мультиплексного канала. Основ­

33-333

513

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

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

Интерфейс

Р и с .

9-3.

С т р у к т у р н а я

с

х е м а

с е л е к т о р н о г о

 

 

к а н а

л а .

 

 

При вводе информации поступающие из периферий­ ного устройства данные компонуются в регистре РСИ в слово. Как только слово данных сформировано, оно пе­ редается в РД и канал начинает связываться с ОЗУ для записи слова в памяти. Параллельно с обращением к ОЗУ канал может производить накопление байтов сле­ дующего слова в РСИ.

Аналогичным образом совмещаются связь с ОЗУ и с периферийным устройством при выводе. Канал засы­ лает в РСИ через РД очередное слово, выбранное из ОЗУ, и пока это слово развертывается в последователь-

614

'ность байтов, посылаемых в периферийное устройство, канал связывается с ОЗУ для выборки следующего слова.

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

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

Обычно вычислительные машины имеют один муль­ типлексный канал и от двух до шести селекторных ка­ налов. Основными характеристиками каналов являются: а) количество подканалов, б) скорость передачи данных

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

вмонопольном режиме.

Для ориентации в численных значениях этих харак­ теристик приведем в качестве примера данные для ка­ налов ЦВМ ЕС-1030. Машина содержит один мульти­ плексный и три селекторных канала.

Мультиплексный канал: количество подканалов — 256;

скорость передачи в мультиплексном режиме — 40

кбайт/сек\

скорость передачи данных в монопольном режиме — 300 кбайт/сек.

Селекторный канал:

количество периферийных устройств, подключаемых к селекторному каналу — до 64;

скорость передачи данных — 800 кбайт/сек.

33*

515

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

9-6. К Р И Т Е Р И И О Ц Е Н К И ЭФ Ф Е К Т И В Н О СТ И К А Н А Л О В

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

«макс', б)

коэффициент

работоспособности

программы

R, показывающий, какая

доля

машинного времени мо­

жет быть

использована

процессором

для

выполнения

программы

при одновременной

работе

данного количе­

ства

периферийных

устройств;

в) время

ожидания т,

под

которым будем

понимать

максимальный интервал

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

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

516

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

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

Будем считать, что:

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

2)время обработки принятой от периферийных уст­ ройств информации относится к полезной части про­ граммы;

3)время, на которое обслуживание запроса перифе­ рийного устройства может быть задержано (для кана­

лов с задержанным доступом — длительность команды, для каналов с немедленным доступом — длительность цикла памяти), считается постоянным и равным до­

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

Обозначим для г-го периферийного устройства время

сеанса для

передачи одной порции информации через

U, длительность цикла подготовки одной порции инфор­

мации через

Ті. Считая, что при каждой передаче ин­

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

517

доля составит (tQ-\-ti)/Ті. Для п устройств суммарное время обслуживания за единицу времени

П

 

 

t = У л‘ ± 1 і - '

(9-1)

2 jLi

Ті

 

i-=1

Условие временного баланса: Следовательно,

нагрузочная способность канала нМако должна удовлет­ ворять уравнению

^макс £ ^ = 1 . (9-2)

і=і

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

Уравнение (9-2) представляет собой среднюю оцен­ ку эффективности унифицированного канала за рас­ сматриваемый интервал времени без учета совпадения запросов от многих периферийных устройств внутри рас­ сматриваемого интервала. Задержки в обслуживании, связанные с совпадением запросов, накладывают на «макс дополнительные ограничения, определяемые мак­ симально допустимой величиной времени ожидания т*.

Время ожидания зависит от приоритета, присвоенно­ го данному периферийному устройству. Будем считать, что приоритет определяется номером периферийного ус­ тройства, причем младшим номерам соответствует бо­ лее высокий приоритет. Рассматривая наихудший слу­ чай распределения запросов во времени (рис. 9-4), ког­ да периферийное устройство должно ожидать выполне­ ния передач информации от всех устройств с большим приоритетом, получаем, что для г'-го периферийного уст­ ройства

г—1

 

Ті = <0 + £ */.

(9-3)

/=і

 

где tj — время сеанса связи для /-го периферийного уст­ ройства.

518

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

 

 

m

і

*4

*£-2 |4'-/i ti

 

I

I I

I

 

 

m e x j/ u / e d

|

.

 

 

 

п р о г р а м

м б / 1>-----1-----\

 

 

/ / е а с / л З о

1

ts

N '

1

§

1

2 - е е е т

д о й -

 

с т З е

 

 

3 - е і/ с / л р е й -

 

е / л З о

 

 

( 2 - / J - e j/ e / r j-

1

/ е о и е / п З е

j/ c m

p ü u -

 

\ e m ß e

— r—

 

 

 

 

 

>-

 

Р и с .

9-4. Н а и х у д ш и й

с л у ч а й

р а с п р е д е л е н и я

з а п р о с о в

п е р и ф е ­

 

 

р и й н ы х

у с т р о й с т в .

 

 

ством Ті по крайней мере на величину цикла передачи информации ti\

тг < Т, — tt

или

£—1

to + ti+ tj T t.

/ - 1 Вводя ti под знак 2, получаем:

і

*о + Е * /< 7 \(» = 1,2.....пмакс).

(9-4)

/=і

 

Количество устройств в системе должно быть тако­ во, чтобы удовлетворялись как уравнение (9-2), так и система неравенств (9-4). В общем случае при произ­ вольном присвоении приоритета оба эти условия неэк­ вивалентны. Для Пмакс, удовлетворяющего условию ба­ ланса времени (9-2), неравенства (9-4) могут и не соб­ людаться, если, например, устройствам с малым циклом

519

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