Устройство для сопряжения каналов ввода-вывода с устройством управления оперативной памятью
Иллюстрации
Показать всеРеферат
Изобретение относится к области вычислительной техники и может быть использовано в составе устройства управления памятью. Цель изобретения повышение быстродействия обработки запросов каналов ввода-вывода в устройстве управления памятью высокопроизводительной ЭВМ за счет использования эффективного алгоритма взаимодействия каналов ввода-вьшода сдвухГФ
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (дц 4 G 06 F 13/14
ОПИСАНИЕ ИЗОБРЕТЕНИЯ . К ABTOPCHOMV СВИДЕТЕЛЬСТЯУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
AO ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPblTHA (2)) 3803840/24-24 (22) 1 9 ° 10. 84 (46) 23. 10,86, Бюл, ¹ 39 (72) А. И, Слуцкий, В. В . Карпова, Е, Б. 10ркова, Н, Г. Радько и М.В, Макарова (53) 68).3(088.8) (56) Процессор ЕС2060. Техническое описание, Ц53, 057,006 ТОЗ °
Авторское свидетельство СССР ¹ 822168, кл. G 06 F 3/04, 1979.
Мультипроцессор ЕС2655, Техническое описание. Ц53,057.014 ТО, „„SU„„1265788 А 1 (54) УСТРОЙСТВО ДЛЯ СОПРЯЖЕНИЯ КАНАЛОВ ВВОДА-ВЫВОДА С УСТРОЙСТВОМ УПРАВЛЕНИЯ ОПЕРАТИВНОЙ ПАМЯТЪИ (57) Изобретение относится к области вычислительной техники и может быть использовано в составе устройства управления памятью. Цель изобретения— повышение быстродействия обработки запросов каналов ввода-вывода в устройстве управления памятью высокопроизводительной 3ВМ за счет использования эффективного алгоритма взаимодействия каналов ввода-вывода с двух)265788 уровневой оперативной памятью и максимального использования расслоения оперативной памяти, Поставленная цель достигнута с помощью введения в устройство, содержащее блок 1 приоритетов, селектор 2 входной информации и управляющих слов, блок 5 регистров адреса, блок 12 фиксации занятости входных регистров, блок 3 регистров управляющих слов, блок 6 триггеров управляющих признаков, блок
11 приема сопровождающей инфор" мации, блок 4 регистров управления, селектор 8 запросной информации, формирователь 10 адреса, шестую память
7 данных и регистр 9 считанной информации, блока 15 фиксации занятости регистров адреса и управляющих слов, блока 14 регистров приема управляющих слов, блока 25 регистров входной информации, блока 17 управления обслуживанием запросов, блока 13 формирования запросов, селектора 18 информации, регистров 19, 20, 22,1, 22,2 информации, блока 16 выдачи запросных слов, блока 26 триггеров разрешения, селектора 21 записываемой информации, селектора 23 выходной информации, регистра 29 выходной информации и дешифратора 27 номера канала, а также оригинальной организации связей между блоками .устройства. При обращении каналов ввода-вывода на запись или чтение в устройство управления памятью (УУП) предусмотрен эффективный алгоритм работы каналов-с двухуровневой оперативной памятью (ОП), при этом обеспечивается максимальное использование расслоения ОП,поскольку обмен информацией между ОП и УУП производится только блоками из четырех двойных слов в случае обращения от каналов. Кроме того, при обработке запросов от каналов в ОП производится только одна операция: чтение блока информации, что упрощает процедуру взаимодействия УУП с ОП. 2 з.п.ф- лы, 16 ил.
Изобретение относится к вычислительной технике и может быть использовано в системах для управления обменом информацией между процессорами и каналами ввода-вывода с оператив- 5 ной.памятью мультипроцессорной вычислительной машины.
Цель изобретения — повьппение быст- родействия обработки запросов каналов ввода-вывода. !О
На фиг.! представлена структурная схема устройства; на фиг.2 — структурная схема блока приоритетов; на фиг.3 — структурная схема блока фиксации занятости входных регистров; на фиг.4 — структурная схема блока регистров входной информации; на фиг.5 — структурная схема блока регистров управляющих слов,; на фиг.6— структурная схема блока формирования 20 запросов; на фиг,7 " структурная схема блока регистров управления; на фиг.8 — структурная схема блока фиксации занятости регистров адреса и управляющих слов; на фиг,9 — структурная схема блока регистров адреса; на фиг.10 — структурная схема блока
2. регистров приема управляющих слов; на фиг.11 — структурная схема блока . триггеров управляющих признаков; на фиг.12 — структурная схема блока управления обслуживанием запросов; на
Лиг.13 — структурная схема блока приема сопровождающей информации; на фиг,14 — структурная схема блока выдачи запросньж слов; на " фиг. 15— структурная схема формирователя адреса; на фиг.16 — структурная схема блока триггеров разрешения.
Устройство для сопряжения каналов ввода-вывода с устройством управления оперативной памятью (фиг.1) содержит блок 1 приоритетов, селектор 2 входной информации и управляющих слов, блок 3 регистров управляющих слов, блок 4 регистров управления, блок 5 регистров адреса, блок 6 триггеров управляющих признаков, местную память
7 данных, селектор 8 запросной информации, регистр 9 считанной информации, .формирователь 10 адреса, блок 11 приема сопровождающей информации, блок 12 фиксации занятости входных регистров, блок 13 формирования эап!
265788 росон, блок !4 регистров приема управляющих слон, блок 15 фиксации занятости регистров адреса и управляю" щих слов, блок 16 выдачи запросных слов, блок 17 управления обслужива- 5
- нием запросов, селектор !8 информации, первый регистр 19 информации, второй регистр 20 информации, селектор 21 записываемой информации, третий 22 и четвертый 22 регистры
1 L информации, селектор 23 выходной информации, регистр 24 выходной информации, блок 25 регистров входной информации, блок 26 триггеров разрешения, дешифратор 27 номера канала, 5 входы 28 запросов устройства (28.1 вход запросов, 28.2 — вход запросной информации), вход 29 приоритета устройства, первый выход ЗО информации. устройства !30,1 — выход первого зап- О роса, 30,2 — выход второго запроса, 30.3 — выход информации), вход 31 ответа устройства, второй выход 32 информации устройства, выход 33 ответа устройства, вход 34приоритета устройства, вход 35 приоритета устройства, . вход 36 управления устройства, первый вход 37 информации устройства 137.! вход приказа, 37.2 — вход адреса, 37.3 — вход управляющих слов, 37.4 — 30 вход информации), вход 38 сопровождающей информации устройства, выходы
39 адреса устройства (39 ° 1 — выход адреса, 39.2 — выход запроса), второй вход 40 информации устройства, выход 41 разрешения приоритета, выход 42 предварительного приоритета, выход 43 номера канала, вход 44 информации, первый вход 45 информации, первый выход 46 управления, второй 4р выход 47 управления, вход 48 адреса, выход 49 адреса, выход 50 управления запросом, выход 51 управления приемом адреса, выход 52 бита действительности запроса, выход 53 адреса, вы- 45 ход 54 кода операции, выход 55 управляющего слова, выход 56 управляющих признаков, выход 57 управления адресом, выход 58 управления и записью !
58.! — выход сравнения номера реги- 50 стра, 58.2 — выход управления запросом, 58,3 — выход управления записью, 58.4 — выход управления чтением, 58.5 — выход признаков работы), выход 59 сравнения, выход 60 адреса, выход 61 сопровождающей информации, выход 62 запросных слов, выход 63 адреса данных, выход 64 записи, второй вход 65 информации, выход 66 разрешения, выход 67 приоритета регистров (67 ° 1. — выход приоритета первому регистру, 67.2 - выход приоритета второму регистру, 67,3 — выход общего приоритета), выход 68 управления приемом (68.! — выход управления приемом на первый регистр, 68,2 — выход управления приемом на второй регистр), Блок 1 приоритетов (фиг.2) содержит регистр 69 входных запросов, шифратор 70 с приоритетом, дешифратор
71.
Блок 12 фиксации занятости входных регистров (фиг,З) содержит элемент
ИЛИ 72, сдвигающий регистр 73, элемент И 74, группу элементов И 75, группу элементов ИЛИ 76, группу триггеров 77, элемент И 78, элемент И 79, элемент ИЛИ 80, элемент HE 81, элемент И 82, сдвигающий регистр 83, элемент ИЛИ 84, элемент НЕ 85, элемент И 86, элемент НЕ 87, узел фиксации наличия одного запроса 88, элемент ИЛИ 89.
Блок 25 регистров входной информации (фиг,4) содержит группу регистров информации 90, Блок 3 регистров управляющих слов (фиг,5) содержит группу регистров 91 номера канала, группу регистров 92 адреса, маркеров, кода операции.
Блок 13 формирования запросов (фиг.б) содержит первый элемент ИЛИ
93, триггер 94, второй и третий эле-, менты И 95 и 96, элемент HE 97, первый элемент И 98, второй элемент
ИЛИ 99.
Блок - 4 регистров управления (фиг.?) содержит элемент И 100, элемент ИЛИ 101, сдвигающий регистр 102, элемент И 103, элемент НЕ 104, элемент И 105, сдвигающий регистр 106, группу элементов И 10?.
Блок 15 фиксации занятости регистров адреса и управляющих слов (фиг.8) содержит элементы И 108 и !09, элемент НЕ 110, группу регистров 111, группу элементов 112 И, группу регистров 113, группу элементов HE 114, группу регистров 115, Блок 5 регистров адреса (фиг.9) содержит группу регистров 116 адреса, группу селекторов 117 адреса, Блок !4 регистров приема управляющих слов (фиг.10) содержит группу регистров !18.
1265788
Блок 6 триггеров управляющих признаков (фиг.ll) содержит группу элементов И 119, группу элементов НЕ
120, группу элементов ИЛИ 121, группу регистров 122, элемент НЕ 123, элемент И 124, группу элементов ИЛИ
125, группу элементов И 126, элемент
ИЛИ 127, группу элементов ИЛИ 128, t ) триггеры 129, группу элементов И 130 группу элементов И 131, группу элеI0 ментов ИЛИ 132, группу элементов НЕ
133, группу регистров 134, Блок 17 управления обслуживанием .запросов (фиг. 12) содержит первую
15 и вторую группы схем 135 сравнения, первую и вторую группы элементов И
136, первый и второй элементы ИЛИ
)37 и 138, первый и второй элементы
И 139 и )40, регистр 141 сдвига, тре20 тий элемент ИЛИ 142, первый и второй элементы НЕ 143 и 144, третью группу элементов И 145, третий элемент И
146, группу элементов НЕ 147, четвертый элемент ИЛИ 148, регистр 149 сдвига, селектор 150, .пятый элемент
ИЛИ 151, третий элемент НЕ 152.
Блок 1) приема сопровождающей информации (фиг.13) содержит элемент
НЕ 153, селектор 154 сопровождающей информации, регистр 155 сопровождаю.—
30 щей информации.
Блок 16 выдачи запросных слов (фиг.14) содержит группу регистров
156 ошибок, селектор 157, Формирователь 10 адреса (локальной памяти) содержит (фиг.15) селекторы 158,è 159, счетчик 160, элемент НЕ 161, селектор 162, счетчик
163, селектор -164, элемент НЕ 165, группу элементов И 166, селекторы
167 и 168, селектор 169 маркера, восемь элементов НЕ 170, восемь элементов И 171, элемент И 172, селектор
173, элемент НЕ 174.
Блок 26 триггеров разрешения (фиг.16) содержит элемент И 175, два элемента ИЛИ 176, два триггера 177. занятости, элемент И 178, два элемента НЕ 179, элемент ИЛИ 180, два. элемента И 181, два элемента И 182, два элемента ИЛИ 183, два триггера 1 84 приоритета, триггер 185, элемент ИЛИ
186, элементы НЕ 187 и 188, триггер
)89, Устройство работает следующим образом.
При обращении каналов ввода-вывода на запись или чтение в устройство управления памятью (УП) предусмотрен эффективный алгоритм работы каналов с двухуровневой оперативной памятью, при этом обеспечивается максимальное использование расслоения оперативной памяти, поскольку обмен информацией между оперативной памятью и устройством управления памятью производится только блоками из четырех двойных слов в случае обращения от каналов.
Кроме того, при обработке запросов от каналов в оперативной памяти производится только одна операция, а именно чтение блока информации, что упрощает процедуру взаимодействия устройства управления памятью с оперативной памятью.
Сигналы запросов от ) каналов ввода-вывода (где К вЂ” целое число) поступают по входу 28 (фиг.l) в блоки 1 и 2, причем в блок 1 приоритетов по входу 28.! поступают собственно запросы, а в блок 2 по входам 28.2— запросная информация, в состав которой входят следующие сигналы: двойное слово данных (64 информационных разряда) при операции записи, адрес обращения в память, маркеры при операции записи неполного слова, код операции (чтение или запись), ключ защиты памяти.
Сигналы запросов, гоступающие по входу 28.1 в блок 1, записываются на регистр 69 (фиг,2) в случае, если есть разрешение приоритета, поступающее с выхода 41 (фиг,)) блока 12 °
Наиболее приоритетными запросами считаются запросы, записанные в старшие разряды регистра 69 (приоритетность запросов можно менять внешней коммутацией), Шифратор 70 (фиг.2) с приоритетом выявляет первый наиболее приоритетный запрос (т.е. определяет первую единицу в старших разрядах ре" гистра) и присваивает ему i — - разрядный номер (Х =log.К, где К вЂ” число эапросчиков ), соответствующий номеру канала, который по выходу 43 поступает в блок 3 регистров управляющих слов. Дешифратор 71 (фиг,2) дешифрует номер канала и присваивает предварительный приоритет. этому каналу, который говорит о том, что запрос от канала с некоторым номером принят на обслуживание. .Сигналы предварительного приоритета, поступающие из блока 1 (фиг.l) по выходу 42 управляет селектированием
7 1265788 8 входной информации и управляющих лей в остальные, Таким образом, по слов (адреса, ключей защиты памяти, сигналам управления, поступающим с маркеров и кода операции) в селекто- выхода 46, н блоке 25 происходит ре 2. прием записываемой информации. По тем
Информация из селектора 2 посту- 5 же сигналам управления 46 в блоке 3 пает по входу 44 в блок 25 регистров регистров упранляющих слов произновходной информации. Управляющее слово дится прием управляющего слова, поспо входу 48 поступает в блок 3 реги-; тупающего по входу 48, на один иэ рестров управляющих слов. Для обеспе- гистров 92 (фиг.5), и номера канала, чения максимального быстродействия 10 поступающего с выхода 43 иэ блока 1 приема запросов от каналов ввода-вы- приоритетов, на один из регистров 91, вода в блоках 25 и 3 предусмотрены Блок 12 фиксации занятости входных группы регистров, каждый из которых регистров отслеживает заполнение реможет принимать информацию в том слу- гистрон и выдает в блок-1 разрешение чае, если он свободен, При этом в 15 приоритета по выходу 4I„ если не все следующем машинном такте может быть входные регистры заняты. Разрешение произведен прием информации и уп ан» вырабатывается следующим образом. По ляющего слова от следующего запроса сигналам предварительного приоритета, на другой свободный регистр, Расче ы поступающим с выхода 42, сдвигающий показывают, что приреальной времень регистр 73 (фиг.3) начинает сдвигать
20 диаграмме работы с каналами ввода- комбинацию 100,...,0 вправо, при вывода достаточно двух регистров ин- этом триггер 77 (фиг.3) занятости усформации и управляющих слов. Блок 4 танавливается в единицу, если в данрегистров управления вырабатывает
25 ном такте был присвоен предварительсигналы управления приемом, которые ный приоритет. Как только все тригс выхода 46 поступают в блок 25 и геры 77 установятся в единичное сосразрешают прием информации на один тояние, перестает вырабатываться сигиз свободных регистров 90 (фиг.4) . нал разрешения приоритета на выходе
Блок 4 по сигналу предварительного 41. Для осуществления сброса триггеприоритета, поступающему с выхода 42 ров 77 служит сдвигающий регистр 83, 30 на элемент ИЛИ 101 1 фиг.7) переводит, который запускается по сигналу приосдвигающий регистр 102 в состояние ритета от УБП, поступающему по входу сдвига комбинации 100,...,0 вправо, 29, и сдвигает комбинацию 100,...,0
Разрядность сдвигающего регистра рав- вправо. Сигнал управления запросов наh, где h — целое число, равное 35 на выходе 50 вырабатывается аналочислу регистров 90 приема, В перво- гично разрешению приоритета 41. Разначальный момент, когда свободны все рядность регистров 73 и 83 равна и, регистры, разрешается прием на пер- По сигналам предварительного привый левый регистр 90. оритета, поступающим в блок 13 формиP аэрешение приема в этом случае 40 рования-запроса с УБП с выхода 42 представляет собой логическое произ- при наличии разрЕшения, поступающего ведение старшего разряда сдвигающего иэ блока 26 в блок 13, на выходе 66 регистра 102 на функцию ИЛИ от сиг-. вырабатывается собственно сигнал запналов предварительного приоритета, роса в устройство. управления буферЕсли заняты i левых регистров (i -, 45 ной памятью (УБП). Если разрешения 66 целое число, меньшее n) информации, нет, то триггер 94 (фиг.6) запроса в соответствующих предыдущим запросам, УБП вырабатывает запрос по сигналам то производится прием информации на предварительного приоритета позже, (1 + 1)-й незанятый регистр. Таким когда разрешение 66 появится. Сигнал образом, блок 4 позволяет принять на 50 запроса в УБП снимается, если в УБП обслуживание h запросов последова- этому запросу был присвоен приоритет тельно такт за тактом, При переходе и если этот запрос был один. логической "1" в сдвигающем регистре Сигнал о наличии одного обслужи102
02 в самый младшии разряд и при на- вающего запроса поступает в блок 13 личии сигнала предварительного прио- 55 с выхода 50 из блока 12. В последнем ритета на выходе 42 регистр 102 лере- этот сигнал нырабатывает узел 88 ходит н состояние записи логической (фиг.3) и и -нходовой элемент ИЛИ 89
1е1 н т в старшии разряд и логических ну- которые и выявляют факт наличия толь9 1265788 10 ко одного запроса (при этом взведен только один триггер 77 занятости).
Работу узла 88 можно описать следующим уравнением: пусть n — целое число, равное числу входов х., а
v, — i-й выход тогда I
У у.=х.(хvxv, ÷õ, vx vx), 1 l 1 Я -1 1+1
После присвоения приоритета блок
4 вырабатывает сигналы управления селектором 8 запросной информации, ко- 1О торые выдаются по выходу 47, При этом по сигналу приоритета начинается сдвиг вправо комбинации
100,...,0 в сдвигающем регистре 106 (фиг.7). Разрядность регистра равна 15
Конкретный разряд регистра 106 разрешает выдачу информации и адреса, поступающим по входам 45 из входных регистров информации и управляющих слов в селектор 8, В состав информа- 20 ции, поступающей.в СБП из селектора
8 по выходу 30.3, входят также маркеры, код операции, ключи защиты памяти и номер канала, т.е, все запросное слово, поступающее из блоков 3 и 25.
Приняв запрос от,канала вводавывода на обслуживание, устройство управления буферной памятью анализирует адрес обращения.
При этом наиболее частой являет,ся ситуация, когда данный адрес находится в матрице адресов СБП, т,е. операция будет выполняться на уровне буферной памяти, что требует двух машинных тактов, т.е. операция выпол-35 няется быстро, В этом случае, после того, как уже на уровне СБП закончено обслуживание запроса от канала ввода-вывода, устройство управления буферной памятью выдает сигнал отве- 44 та в канал в блок 26 по входу 31 и передает выходную информацию на регистры 22 информации, причем по входам 37.4 поступают данные, а по вхо. дам 37.3 — информация об ошибках и 45 номер канала. Наличие двух регистров
22 информации объясняется тем, что необходимо максимально ускорить процесс обслуживания запросов от каналов ввода-вывода. При этом, если один из 50 регистров уже занят, информация от следующего запроса записывается на другой регистр 22, а УБП может обслуживать другие запросы. Расчет показывает, что прн осуществлении ско- 55 рости работы достаточно двух таких регистров. Занятость регистров отслеживается в блоке 26 триггеров разрешения. При этом сигнал ответа в канал, поступая в блок 26, записывается на первый триггер 177, если он свободен. Управление записью на триггер
177 (фиг.161 осуществляется выходами элементов И 175, НЕ 179 и ИЛИ 176.
Выработанный на выходе элемента И 175 сигнал 68,1 управления приемом разрешает запись информации на первый регистр 22 информации. Если первый регистр 22, уже занят и соответствующий ему первый триггер 177 в единице, то производится запись на второй регистр 22 информации под управа лением сигнала на выходе 68.2 управления приемом, выработка которого аналогично происходит на втором триггере 177 и элементах И 178, ИЛИ 176, HE 179. Если хотя бы один из регистров 22 свободен, т,е. один из триггеров 177 в состоянии логического
"0", то вырабатывается сигнал разрешения, который по выходу 66 поступает в блоки 13 и 6.
Информация с регистров 22 (фиг.1) поступает на селектор 23, который сигналами приоритета, поступающими с выходов 67.1 и 67,2, открывает одно из двух своих направлений.
Сигналы приоритета вырабатываются следующим образом; если есть информация только на одном регистре 22, то соответствующий ему триггер 184 (фиг.16) приоритета срабатывает от выхода соответствующего элемента И
182. Если же есть информация на обоих регистрах 22, то приоритет на выдачу информации присваивается в соответствии со значением триггера 185 динамического приоритета, который может быть в двух состояниях: единичное означает, что в следующем такте необ° ) ходимо:присвоить; приоритет второму с регистру 22 ;нулевое означает, что в следующем такте необходимо присвоить приоритет первому регистру 22,, Обновление состояния триггера 185 происходит всякий раз после того, как первый триггер 184 изменяет свое состояние. В этом случае триггер 184 взводится от срабатывания элементов
И 181. Сигналы приоритета по выходам
67.1 и 67.2 поступают в селектор 23 выходной информации.
Выходная информация с выхода се-: лектора 23 (фиг.1) поступает на регистр 24 выходной информации и по выходу 32 передается в канал ввода-вы1265788
5 !
20 вода с сигналом сопровождения, соответствуннцего конкретному номеру канала, который вырабатывается на дешифраторе 27 номера канала под управлением сигнала на выходе 67.3, означающего, Что одному из регистров присвоен приоритет и идет выдача информации, На вход дешифратора 27 при этом поступает собственно номер канала из селектора 23, На этом процецедура обслуживания запроса канала ввода-вывода заканчивается.
Однако, могут быть ситуации, когда адрес обращения от канала вводавывода может быть таков, что потребуется обращение в оперативную память. Поэтому УБЛ в момент анализа адреса выдает сигнал приказа в предлагаемом устройстве для того, чтобы активизировать его работу в случае необходимости обработки запроса на уровне ОП, Независимо от того, будет ли найден адрес обращения от канала в матрице адресов СБП, по сигналу приказа, поступающему в блок 15 фиксации занятости регистров адреса и управляющих. слов по входу 34, вырабатываются сигналы управления приемом адреса в блок 5 регистров адреса и в блок 14 регистров приема управляющих слов из УБП. Блок 5 (фиг.9) состоит из группы регистров 116 адреса (при реальной временной диаграмме работы устройства достаточно двух таких регистров), Наличие группы регистров адреса позволяет максимально ускорить обслуживание последовательных . запросов от каналов ввода-вывода в оперативной памяти. Аналогично, и блок 14 состоит иэ группы регистров !
18 (фиг.18) для приема управляющих слов. В начальный после общего сброса момент регистры 115 (фиг ° 8), фиксирующие свободность регистров адреса, находятся в состоянии единицы и по сигналу приказа, поступающему из УБП по входу 34 в блок 15, на регистрах !Il вырабатывается сигнал приема на крайне левые регистры 116 и 118 (фиг,9 и !О). В случае, если несколько регистров 116 и 118 уже заняты, это отслеживается на соответствующих регистрах !15 и на регистрах 111 (фиг,8) вырабатывается соответствующий сигнал управления приемом адреса на первые левые свободные регистры 116 и 118.
В том случае, если адрес обращения не обнаружен в матрице адресов
CBII, в блок 15 по входу 37.1 приходит сигнал управления иэ УБП, который сигнализирует о том, что данный запрос должен быть обслужен на уровне ОП, При этом в блоке 15 на регистрах 113 (фиг.8) на основании работы элементов И 112 взводятся сигналы, называемые битами действительности запросов, которые означают, что адрес и управляющее слово, приняты на соответствующие этому биту регистры, действительны и должны быть обслужены.
Под управляющим словом, принимаемым иэ УБП в блок 14 на входе 37.3, понимается следующая информация: код операции (чтение или запись), маркеры (при операции записи неполного сло, ва),номер канала, информация обошибках.происшедших эа время обСлуживания . запроса. После того, как запрос принят на обслуживание и ему поставили в соответствии i-й бит действительности (i = 1,...,п) в блоке 6 триггеров управляющих признаков на i-м регистре
129 (фиг.ll) вырабатывается i-й запрос в адаптер памяти, который поступает на выход 39,2 устройства, Запрос íà i-м регистре 129 сбрасывается после того, как в. блок 6 по входу 35 поступил сигнал приоритета i-му эап" росу из адаптера памяти, Кроме того, для соответствующего бита действительности 1-го запроса в блоке 6, элементах ИЛИ 125. вырабатывается i-й признак записи информации в память 7.
Записываемая (или любая, в случае операции чтения) информация из УБП по входу 37.4 поступает на регистр
19 информации иэ СБП, Прием на регистр 19 происходит по сигналу приказа на входе 37!.
Необходимость записи информации в память 7 (в так называемую локальную память) объясняется тем, что. приоритет ОП 1 -му запросчику может быть присвоен не сразу в блоке адаптера памяти, а на обслуживание может быть å принят другой запрос от канала ввода-вывода, записываемая информация от которого поступает сначала в регистр 19 информации иэ СБП, а затем в память 7, Принцип промежуточной буферизации данных позволяет обеспечить обслуживание нескольких запросов одновременно.
1265788
Лдрес, по которому в память 7 записывается принятая из УБП информация, формируется в формирователе 10 адреса. Каждому регистру адреса и управляющих слов в блоке 7 ставится в соответствие соответствующая эона памяти, в которую можно записать блок информации (4 двойных: слова) ° Номер двойнбго слова в блоке определяется значениями 27 и 28 разрядов адреса 10 данного запроса, хранящегося на соответствующем регистре адреса. Номер зоны первоначально вырабатывается в .блоке 17 на селекторе 150 и равен признакам записи в локальную память, 15 поступающим в блок 17 с выхода 56 блока 6 ° В формирователе !О адреса на элементах 166 (фиг,15) и вырабатывается управление селектором 164 адреса локальной памяти, i-e направ- 20 ление в селекторе открывается в том случае, если нет управляющего сигнала от сдвигающего регистра 141(фиг.12) в блоке 17, поступающего в формирователь 10 с выхода 58.3, но есть один из признаков записи на выходе 56.
При этом значения 27-го и 28-ro разрядов адреса с i-го регистра 116 адреса в блоке 5 поступают на селектор !
64 блока 10 по выходу 60, Номер зо- ЗО ны поступает на селектор 164 с входа 58,5 блока 17 °
При этом в блоке 6 триггеров управляющих признаков на элементах И
126 (фиг,11) в момент возникновения
i-го бита действительности, поступаю щего по выходам 52, возникает единичный сигнал, который, проходя через элемент ИЛИ 127 (фиг.ll), на выходе
57 формирует сигнал управления адре- 40 сом. На этой стадии обслуживания запроса регистр 149 (фиг,12) в блоке 17 не работает, его нулевое состояние с входа 58.4 поступает в блок 6 на элемент НЕ 120 (фиг.11), выход которого 45 поступает на входы элементов И 126, тем самым подтверждая наличие на входах элементов И 126 > -ro бита действительности. В формирователе 10 адреса сигнал управления адресом по 50 входу 57 поступает на селектор 169 (фиг ° 15) управление которым осуществляется с помощью непрерывного синхросигнала, который в течение половины машинного такта равен единице, а 5S в течение другой половины равен нулю.
В положительный полутакт селектор пропускает сигнал управления адресом, Выход селектора 169 поступает на восемь элементов 171 И, где умножается на другой синхросигнал длительностью
1/8 машинного такта, формируя короткий сигнал, называемый строб записи, Строб записи вырабатывается на выходе 64 формирователя 10 (фиг,l) и поступает в блок 7 памяти данных, сигнализируя о том, что по адресу, поступающему по выходу 63, необходимо записать информацию, проходящую через селектор 21. Поскольку память
7 данных записывает информацию; принятую как из СБП, так и из ОП, селектор 21 необходим, Последний управляется также непрерывным синхросигналом, который первую половину такта положительной полярности, .а вторую— отрицательной, тем самым обеспечивая запись в память 7 как информации СБП (положительный полутакт), так и из
ОП (отрицательный полутакт), После того, как i-му запросу от канала ввода-вывода присвоен приоритет адаптера памяти на обслуживание в ОП, из блока 5 регистров адреса . адрес i-го регистра по выходу 39.1 поступает в адаптер памяти, При этом селектор 117 в блоке 5 под управлением сигналов приоритета АП, поступающим по входу 35, пропускает адрес только того регистра 116 (фиг.9), который соответствует запросу с приоритетом. устройство для сопряжения каналов ввода-вывода с устройством управления оперативной памятью многопроцессорной вычислительной машины выполняет на уровне ОП только одну стандартную операцию — чтение блока, независимо от кода операции. На выполнение операции чтение блока в ОП требует в среднем 12 машинных тактов, После окончания операции чтения адаптер памяти передает в предлагаемое устройство последовательно четыре двойных слова, т.е. блок информации по входу
40. Каждое слово данных снабжено сопровождающей информацией, поступающей по входу 38 также из адаптера памяти.
Под сопровождающей информацией здесь понимается следующая информация: сигнал сопровождения, номер регистра (т.е. запросчика1, на котором эаписан адрес, по которому производилось обращение в память, информация об ошибках, имеющих место.при обработке запроса в адаптере памяти и ОП (к 16 !
265?88 !
5 таким ошибкам можно отнести, например, корректируемую и некорректируемую ошибки хранения в ОП, а также различные ошибки управления).
Под номером регистра в общем случае можно понимать не только собственно номер регистра, но и условный номер устройства . Это необходимо, поскольку адаптер памяти ЛП может выдавать считанную из ОП информацию ив другие устройства (например,при обработ-е ке залpocoB от процессоров команд) .При этом сопровождающая информация должна !
5 точно идентифицировать запрос.С учетом сказанного, такой обобщенный номер, содержащий как номер устройства, так и номер конкретного регистра, по адресу которого было обращение, можно задать извне с помощью пульта управления, Номер регистра в составе сопровождаю1цей информации из АП, поступая на вход 38 номера регистра в блок
-l7 сравнивается на схемах 135 (фиг.l2) сравнения с номером регист25 ра, поступающего в блок 17 по входу
36 из пульта управления, Сигнал на выходе элемента И 136 говорит о том, что в данный момент пришла информация, считанная из ОП по адресу, соответствующему регистру 116 (фиг,9) в блоке 5. При этом результат сравнения на входах элемента 136 (фиг,12) действителен только в случае, если на другой вход тех же элементов пришел З5 сигнал сопровождения по входу 38 из
АП, Сигналы с выходов элементов И 136 поступают на входы элемента ИЛИ !37 и, если сравнение имело место, переводят регистр 141 (разрядность кото- 40 рого равна четырем) в состояние сдвига комбинации 1000 вправо. Регистр
141 выполняет функции управления записью в память 7 данных, считанных из
0Н. При этом регистр 141 работает че-45 тыре такта, что обеспечивается работой элементов ИЛИ 142, НЕ 143 и И
140. В первый такт работы регистра
141 на элементе И 139,вырабатывается сигнал управления запросом в УБП, ко-5О торый с выхода 58.2 поступает в блок
6 триггера управляющих признаков на входы элементов 130 И, на вторые входы этих же элементов приходят сигналы сравнения номера регистра. При 55 этом, если обслуживается запрос, то одиH из регистров 134 зафиксирует единицу, которая будет означать, что запрос уже обслужен в оперативной памяти, и необходимо обращение в СБП.
Принимаемая иэ АП сопровождающая информация по входу 38 поступает в блок Il приема сопровождающей информации через селектор 154 (фиг.13), управляемый сигналами сравнения номера регистра, поступающими с выхода
59 из блока 17, на регистр 155. Принимаемая из ОП считанная информация (4 двойных слова последовательно) через селектор !8 информации, который управляется также сигналами сравнения номера регистра, поступающими с выхода 59 из блока 17, записывается на регистр 20 информации из ОП, Запись на регистр 20 производится при наличии единицы на выходе элемента
ИЛИ 138 (фиг.12) в блоке 17.
Селектор 21 записываемой информации в тот момент, когда управляющий им синхросигнал находится "в отрицательном полутакте, пропускает информацию на вход памяти 7 данных.
В формирователе 10 адреса к этому моменту должен быть сформирован адрес записи. Адрес формируется следующим образом: на селектор 159 (фиг.15) формирователя 10 с выхода
60 поступают значения 27 и 28 разрядов адреса с регистров 116 (фиг,9) блока 5. При этом пропускается только тот адрес, для которого выработался сигнал сравнения номера регистра, проступающий с выхода 58.1, с выходов элементов И 136 в блоке 17. Номер зоны в памяти 7 данных определяется также сигналом сравнения номера регистра. Поскольку из ОП считан блок данных (4 двойных слова), то необходимо выработать адрес для всех четырех слов (номер зоны при этом остается неизменным) . Для этого с селектора 159 (фиг;15) значения 27-ro и 28-ro разрядов адреса поступают на вход четырехразрядного счетчика 163, который и вырабатывает адрес четырех слов блока. Полученный адрес поступает на вход селектора 167 (фиг.l5), который в отрицательный полутакт синхросигнала, поступаюшего по входу 36 на селектор 167, выдает этот адрес по выходу 63 в память 7 данных.
Поскольку в случае взаимодействия с ОП выполняется топько операция чтения блока, а возникает необходимость выполнения записи и записи неполного слова, то данные для записи (которая
1265788 н данном случае производится только в СБП)подготавливаются в памяти 7 данных. Ilри этом буферизация -считанных из OII данных при операции чтения происходит полностью, а именно в фор- 5 мирователе 10 адреса на селекторе 173 вырабатываются сигналы записи для всех байтов, так как с выхода 54 приходит логический "0", сигналиэирующий о том, что выполняется операция чтения, t0 выход элемента НЕ 174 при этом управляет работой селектора, который пропускает сигналы, поступающие по входу 58,3 из блока 17 со сдвигающего регистра 141 <фиг.12), В формирователе 10 селектор 169 (фиг.l5) пропускает полученные сигналы записи в отрицательный полутакт управляющего синхросигнала, поступающего по входу
36. На восьми элементах И 171 вырабатынаются восемь стробон записи для каждого байта каждого двоичного слова, В случае выполнения операции запи-, си (полного или неполного слона) стробы записи вырабатываются в соответствии с маркерами. При этом маркеры из блока 14 регистров приема управляющих слов с выхода 55 поступают в формирователь 10 адреса на селекторе )68 маркеров, который работает под управлением сигналов сравнения номера регистра, поступающим на селектор 168 маркеров по входу 58.1.
Поскольку на входе 54 логическая "1",З5 т.е. идет операция записи, то в момент э.аписи первого слова (который определяется первым тактом сдвигателя 141 в блоке 17, сигнал о записи первого слова блока поступает по вхо-40 ду 58,3) селектор 173 пропускает инверсные значения маркеров, которые, пройдя через селектор 169 в отрицательный полутакт, служат для выработки стробов записи на элементах И 171 45 только тех байтов, маркеры которых равны нулю, Для трех оставшихся слов блока вырабатываются стробы записи для всех байтов аналогично операции чтения. Таким образом, при операции 50 записи неполного слова в памяти 7 данных записано слово, состоящее из байтов, считанных иэ ОП и байтов, принятых иэ СБП, Одновременно с приемом и записью 55 считанной иэ ОП информации н блоке 6 триггеров управляющих признаков на регистрах 134 вырабатываются признаки запроса в УБП, При этом каждый из регистров 134 переходит н единичное состояние, если вырабатывается сигнал сравнения номера регистра, поступающий с выхода 58.1, и если есть сигнал управления запросов н УБП, поступающий с выхода 58 ° 2 из блока 17.
Первый из возникших признаков запроса в УБП (т,е. самый левый регистр
134, находящийся н единичном состоянии), пройдя в блоке 17 через элементы 144 — 148 (фиг.12), переводит регистр 149 в состояние записи комбинации 1000 в случае, если на входе
34 нет сигнала приоритета СБП, При этом первый такт регистра 149 по выходу 58 ° 4 в блоке 6, пройдя через элемент И 124 (фиг.11), вырабатывает сигнал запроса в УБП в том случае, если на выходе бб есть сигнал разрешения и нет приоритета УБП на входе
34. По запросу н УБП, поступающему в устройство управления буферной па,мятью по выходу 30.2, УБП присваивает предлагаемому устройству приоритет, который, поступая по входу 34, в блоке 1? переводит регистр 149 (фиг.12) в состояние сдвига комбинации 1000 вправо. При этом сигнал запроса в
УБП в блоке 6 снимается при наличии сигнала приорите