Устройство для обмена данными между группой каналов ввода- вывода и оперативной памятью
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано при разработке процессоров , оборудование которых используется для передачи данных между каналами ввода - вывода и оперативной памятью . Целью изобретения является увеличение пропускной способности устройства за счет организации возможности присвоения любого приоритета любому каналу ввода - вывода из группы на момент выполнения этим каналом операции вв ода - вывода в зависимости от того, с каким периферийным устройством канал организует передачу данных. Это дает возможность с максимальной эффективностью использовать менее приоритетные каналы за счет возможности подключения к ним тех же периферийных устройств, которые могут подключаться к самому приоритетному каналу ввода - вывода.Устройство содержит блок микропрограммного управления, входной и выходной регистры, две группы элементов И-ШШ, два элемента И, три триггера, два элемента И-НЕ, элемент ИЛИ, коммутатор , две группы регистров, блок управления , блок приоритета запросов, группу блоков согласования, группу регистров фиксации, регистр отбора, блок дешифрации приоритета. 9 tm. с & (Л с ю | 00 00 о
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (su 4 0 06 F 13/00
Я
""1,,; . 4"., Ф
ОПИСАНИЕ ИЗОБРЕТЕНИЯ "
И АВТОРСКОМУ СВИДЕТЕЛЬСТВУГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (61) 1190385 (21) 3908709/24-24 (22) 07.06.85 (46) 23.12.86. Бюл. Р 47 (72) В.M. Пронин, В,Я. Пыхтин, Б.В. Мазикин и В.С. Хамелянский (53) 681.325(088.8) (56) Авторское свидетельство СССР
Ф 1190385, кл. G 06 F 13/00, 1984. (54) УСТРОЙСТВО ДЛЯ ОБМЕНА ДАННЫМИ
МЕЖДУ ГРУППОЙ КАНАЛОВ ВВОДА — ВЫВОДА
И ОПЕРАТИВНОЙ ПАМЯТЬЮ (57) Изобретение относится к вычислительной технике и может быть использовано при разработке процессоров, оборудование которых используется для передачи данных между каналами ввода — вывода и оперативной памя° тью. Целью изобретения является увеличение пропускной способности устройства за счет организации возможности присвоения любого приоритета
„„SU„„ i278S67 А2 любому каналу ввода — вывода из группы на момент выполнения этим каналом операции ввода — вывода в зависимости от того, с каким периферийным устройством канал организует пере- . дачу данных. Это дает возможность с максимальной эффективностью использовать менее приоритетные каналы за счет воэможности подключения к ним тех же периферийных устройств, которые могут подключаться к самому при1 оритетному каналу ввода — вывода.устройство содержит блок микропрограммного управления, входной и выходной регистры, две группы элементов И-ИЛИ, два элемента И, три триггера, два элемента И-НЕ, элемент ИЛИ, коммутатор, две группы регистров, блок управления, блок приоритета запросов, группу блоков согласования, группу регистров фиксации, регистр отбора, блок дешифрации приоритета. 9 ил.
1278867
Изобретение относится к вычислительной технике, может быть использовано при разработке процессоров, оборудование которьгх используется для передачи данных между каналами 5
\ ввода. — вывода и оперативной памятью, и является усовершенствованием устройства по авт. св. У 1190385.
Цель изобретения — увеличение пропускной способности устройства за
fO счет организации возможности присвоения любого приоритета любому каналу ввода — вывода иэ группы на момент выл полнения этим каналом операции вводавывода в зависимости от того, с каким периферийным устройством канал организует передачу данных.
Ввведение в устройство для обмена данными между группой каналов ввора — вывода оперативной памятью группы регистров фиксации позволяет задавать для каждого канала ввода — вывода такой приоритет, который определяется тем периферийным устройством, 25 с которым канал ввода — вывода организует связь.
Разрядность регистра фиксации определяется количеством каналов в группе. Например, для четырех каналов в группе регистр фиксации должен содержать два разряда.
Максимальное количество регистров фиксации, которое должно быть в каждом канале, в общем случае определяется количеством периферийных устройств, которое может быть подключенр к каналу ввода — вывода. Однако ко-; личество регистров фиксации может быть значительно уменьшено, если один 40 регистр фиксации использовать для группы периферийных устройств со смежными адресами, быстродействие которых по обмену данными с каналом вво- да — вывода составляет один порядок,, 45
ВвеДение в устройство регистра выбора дает возможность выбора самого приоритетного канала с целью организации передачи данных в первую очередь между этим каналом и оператив50 ной памятью.
Разрядность регистра выбора определяется разрядностью регистра фиксации и количеством каналов ввода— вывода в группе, Например, для четырех каналов ввода — вывода в группе регистр выбора должен содержать восеьр- вазрядов.
Введение в устройство блока дешифрации приоритета позволяет выбрать самый приоритетный канал для организации передачи данных между этим каналом и оперативной памятью.
На фиг, 1 изображена схема устройства для обмена данными между группой каналов ввода — вывода и оперативной памятью; на фйг. 2 — схема блока микропрограммного управления; на фиг.3 схема блока управления; на фиг. 4 схема блока согласования; на фиг. 5— схема блока приоритета запросов; на фиг, б — схема блока дешифрации приоритета; на фиг. 7 — временная диаграмма выполнения микрокоманды Память" при обращении к ней процессора; на фиг. 8 — временная диаграмма выполнения микрокоманды Память" считывания .из оперативной памяти в каналы; на фиг. 9 — временная диаграмма выполнения микрокоманды "Память" записи в оперативную память из каналов.
Устройство для обмена данными между группой каналов ввода — вывода и оперативной памятью (фиг. 1) содержит блок 1 микропрограммного управления, входной регистр 2, оперативную память 3, выходной регистр 4, первую группу 5 элементов И-ИЛИ, первый элемент И б,первый триггер 7, первый
Г / элемент И-НЕ 8, третий триггер 9, второй элемент И-НЕ 10, второй триггер 11, элемент ИЛИ 12, второй элемент И 13, коммутатор 14, первую 15 и вторую 16 группы регистров, блок
17 управления, блок 18 приоритета запросов, группу блоков 19 согласования, вторую группу 20 элементов ИИЛИ, синхровход 21 устройства, груп1 пу информационныхвходов — выходов 22 устройства, группу регистров 23 фиксации, регистр 24 выбора, блок 25 дешифрации приоритета.
Блок 1 микропрограммного управления (фиг. 2) содержит память 26 микрокоманд, регистр 27 адреса, регистр
28 микрокоманд, дешифратор 29, местную память 30, первый 31 и второй
32 регистры, арифметико-логический узел 33, регистр 34 результата, первую 35 и вторую 36 группы элементов
И-ИЛИ, элемент И 37, элемент И-НЕ 38, первый 39 и второй 40 информационные входы блока, вход 41 режима блока, стробирующий вход 42 блока, вход 43 разрешения блока, синхровход 44 блока, стробирующий выход 45 блока, ап)278867 ресный выход 46 блока, первый информационный выход 47 блока, с первого по третий управляющие выходы 48-50 блока соответственно, выход 51 выборки блока, второй информационный выход э
52 блока, третий информационный вход
53 блока.
Блок управления (фиг, 3) содержит триггер 54 передачи данных, группу триггеров 55 и 56 передачи данных каналов, первую группу элементов И
57 и 58, второй 59 и первый 60 элементы ИЛИ, первый 61 и второй 62 элементы И, элемент НЕ 63, триггер 64 запроса передачи данных, триггер 65 первого цикла передачи, триггер 66 промежуточного. цикла передачи, триггер 67 второго цикла передачи, группу триггеров 68 и 69 второго цикла передачи каналов, вторую группу элементов И 70 и 71, группу элементов
И-ИЛИ-НЕ 72 и 73, первый 74 и второй
75 элементы И-ИЛИ, первую группу элементов И-ИЛИ 76 и 77, вторую груп25 пу элементов И-ИЛИ 78 и 79, первую
80, вторую 81, третью 82 и четвертую 83 группы входов блока, первый 84 и второй 85 входы блока, с первого по пятый входы 86-90 блока соответственно, с первой по третью группы выходов 91-93 соответственно.
Блок согласования (фиг. 4) содер,жит регистр 94 данных, буферную память 95 данных, триггер 96 обращеL ния интерфейса, триггер 97 выбора буфера интерфейса, счетчик 98 адреса байтов, триггер 99 выбора буфера процессора, триггер 100 номера слова, счетчик !01 двойных слов, первый
102 и второй 103 узлы. синхронизации, коммутатор 104„ узел 105 обмена по интерфейсу, триггер 106 занятости регистра данных, триггер 107 занятости группы регистров, регистр 108 кода операции, дешифратор 109, первую 110 и вторую ill группы элементов И-ИЛИ, с первого по шестой элементы И-ИЛИ
112-117 соответственно, элемент ИИЛИ-НЕ 118, первый 119 и второй 120 информационные входы блока, информа\ ционный вход — выход 121 блока, вход
122 разрешения блока, синхровход )23 блока, информационный выход 124 блока, первый 125 и второй 126 синхровыходы блока, выход 127 запроса блока, выход 128 записи блока, выход 129 чтения блока.
Блок приоритета запросов (фиг, 5) содержит с первого по четвертый триггеры 130-133 соответственно, приоритетный шифратор 134, регистр 135 хранения, информационный вход 136 и вы-, ход 137 блока, групповой управляющий вход 138 блока, через который по линиям )39-142 информационные входы триггеров 130-!33 соединены соответственно с входом 138 блока, группо вой управляющий выход 143; с которым первый, второй и третий выходы при" оритетного шифратора соединены соответственно линиями 144-146, групповой вход -147 запросов и групповой выход
148 запросов блока.
Блок 18 приоритета запросов работает следующим образом. Группу запросов, принятую из группы блоков 19 согласования на групповой вход 147 запросов блок 18 приоритета запросов транслирует йа групповой выход 148 запросов блока.
Группа приоритетных сигналов, поступающая с группового входа 138 блока на информационные входы триггеров 130-133, устанавливает эти триггеры в соответствующие состояния.Причем сигнал, поступающий по линии 39 на информационный вход триггера 130, является самым приоритетным. Так как сигналы, снятые с группового управляющего входа 138 блока, поступают асинхронно на информационные входы триггеров 130-133, то для одновременной установки этих триггеров используется подсинхронизация путем подачи на синхровходы триггеров 130-133 синхроимпульса с синхровхода 21 блока. Выходы триггеров )30-133 подключены к входам (с первого по четвертый) приоритетного шифратора 134, на первом 144 и втором 145 выходах которого формируется двухразрядный код, который является адресом самого приоритетного сигнала четырехразрядного слова, которое поступает на входы триггеров 130-133, Например, если триггер 130 установлен, то с первого и второго выходов приоритетного шифратора по линиям 144 и 145 будет выдан код 00, т.е. адрес первого разряда четырехразрядного слова. Если ни один триггер 130133 не введен, то возбуждается третий выход приоритетного шифратора по линии 146, что говорит о том, что ни один триггер 130-133 не взведен. Ре1278867 гистр 135 хранения используется для приема соответствующим синхроимпульсом с синхровхода 21 информации, поступающей с информационного входа
136 блока, и выдачи информации с вы- 5 хода регистра 135 хранения на информационный выход 137 блока, Блок дешифрации приоритета (фиг,6) содержит шесть мультиплексоров 149154, элемент НЕ 155, дешифратор 156, 10 информационный вход 157 блока, содержащий линии 158-165.
Кроме того, блок микропрограммного управления содержит (фиг. 2) выход
166 занесения.
Блок формирования работает следующим образом. На первые информационные входы с первого по четвертый мультиплексоры 149-152 поступает. с группового входа 148 запроса блока
20 сигнал запроса от первого канала группы, На второй, третий и четвертый информационные входы с первого по четвертый мультиплексоры 149-152 поступают с группового входа 148 запроса блока сигналы запросов от второго, третьего и четвертого каналов соответственно.
На первый и второй адресные входы первого мультиплексора 149 с информационного входа 157 блока по линиям 158 и 159 поступает с первого и второго выходов регистравыбора двухразрядный код номера канала, для которого установлена самая высокая приоритетность.
На первые и вторые адресные входы второго, третьего и четвертого мультиплексоров 150-152 с информационного входа 157 блока по линиям 160 и 161, 162 и 163, 164 и 165 поступают с тре40 тьего и четвертого, с пятого и шестого, с седьмого и восьмого выходов р гистра выбора соответственно двухрчзрядные коды номеров каналов, для которых установлены второй, третий и четвертый приоритеты соответственно, Таким образом, с выхода мультиплексора 149 по линии 139 на групповой управляющий вход 138 выделяется самый приоритетный сигнал, который может принадлежать первому, второму, третьему или четвертому каналам ввода-вывода. С выхода мультиплексора
152 по линии 142 на групповой управляющий выход 138 выдается сигнал самой низкой приоритетности. Сигналы с выходов мультиплексоров 149-152 по линиям 139-142 соответственно поступают на групповой управляющий вход
138 блока и далее через групповой управляющий вход 138 блока 18 приоритета запросов на информационные входы триггеров 130-133, Таким образом, на первом и втором выходах приоритетного шифратора 134 на линиях 144 и 145 получается двухразрядный код номера самого приоритетного сигнала, который сформирован по сигналам запросов от группы каналов, поступивших на информационные входы мультиплексоров 149-152 ° Первый, второй и третий выходы приоритетного шифратора 134 по линиям 144146 соответственно через групповой управляющий выход 143 блока поступает на групповой управляющий вход 143 блока 25 формирования. Сигнал по линии 146 поступает на элемент НЕ 155, сигнал с которого поступает на управляющие входы пятого 153 и шестого
154 мультиплексоров, разрешая работу этих мультиплексоров. Сигналы по линиям 144 и 145 поступают на двухразрядные адресные входы пятого 153 и шестого 154 мультиплексоров.
На первые информационные входы пятого 153 и шестого 154 мультиплексоров поступают по линиям 158 и 159 соответственно сигналы с первого и второго выходов регистра 24 выбора.
На вторые, третьи и четвертые информационные входы пятого 153 и шестого
154 мультиплексоров поступают по линиям 160 и 161, 162 и 163, 164 и 165 сигналы с третьего и четвертого, пятого и шестого, седьмого и восьмого выходов регистра 24 выбора соответственно. Выходы пятого 153 и шестого
154 мультиплексоров подключены к первому и второму входам дешифратора 156.
Таким образом, на одном из выходов дешифратора 156 появляется сигнал адреса. Сигнал на первом выходе дешифратора 156 - запрос от первого канала; на втором — от второго канала; на третьем - от третьего канала; на четвертом — от четвертого канала. Полученная с выходов дешифратора 156 информация принимается по синхросигналу в регистр 135 хранения и далее эта информация выдается через информационный выход 137 в блок 17 управления.
Устройство работает следующим образом.
1278867
Имеется блок 19 согласования, буферная память 95 данных, которая имеет две зоны заполнения данными. Емкость каждой из зон соответствует разрядности оперативной памяти. В рассматриваемом случае она равна, двойному слову. Бирина разрядности буферной памяти соответствует разрядности информационного тракта процессора, который в рассматриваемом случае равен одному слову и через тракты которого канал обменивается данными с оперативной памятью.
Код операции, выполняемой блоком
19 согласования, находится в регистре 108 кода операции. Сигнал с второго выхода дешифратора 109 определяет, что в блоке согласования выполняется операция записи. Сигнал с
20 первого выхода дешифратора определяет, что в блоке согласования выполняется операция чтения.
При выполнении чтения данные из периферийного устройства побайтно с информационного входа — выхода блока 19 согласования через коммута тор 104 поступают в регистр 94 данных. Из регистра 94 данных через первую группу 110 элементов И-ИЛИ дан30 ные записываются в буферную память
95 данных по адресу с выхода второй группы 111 элементов И-ИЛИ.
Если триггер 107 занятости группы сброшен, то после накопления двойного слова памяти производится сначала считывание первого слова из буферной памяти и передача его через информационный выход блока согласования, вторую группу 20 .элементов
И-ИЛИ, первую группу 15 регистров во вторую группу 16 регистров, затем считывание второго слова и передача его в первую группу 15 регистров.
После заполнения регистров устанавливается в единичное состояние триг.— гер 107 занятости группы регистров.
Для определения чтения в этом случае третьим элементом И-ИЛИ 114 вырабатывается запрос на передачу данных, который через выход запроса блока 19 согласования поступает на вход блока
18 приоритета запросов. При операции записи во время второго цикла передачи данных соответствующего канала по сигналу, поступающему на вход разрешения блока согласования, устанавливается триггер 107 занятости группы регистров, фиксирующий наличие данных, принятых из оперативной памяти в первый 15 и второй 16 регистры соответствующего канала. Если в буферной памяти 95 данных одна из зон свободна, то происходит передача сначала первого слова данных из второй группы регистров 16, а затем второго слова данных через второй информационный вход блока 19 согласования, первую группу 110 элемента И-ИЛИ в буферную память 95 данных.
Данные из буферной памяти 95 данных через второй информационный вход коммутатора 104 поступают в регистр
94 данных, откуда выдаются на информационный выход блока согласования под управлением узла 105 обмена по интерфейсу и триггера 106 занятости регистра данных. При операции записи запрос на передачу данных устанавливается с помощью третьего элемента
И-ИЛИ 114, если триггер 107 занятости группы регистров сброшен. Сигнал операции чтения с первого выхода дешифратора 109 и сигнал операции записи с второго выхода дешифратора
109 подаются соответственно через выходы 129 чтения и 128 записи блока
19 согласования на группу 20 эле ентов И-ИЛИ, управляющие направлением загрузки первой 15 и второй 16 групп регистров, и на блок 17 управления.
Для управления адресацией буфера данных используется триггер 96 о6ращения интерфейса. Если триггер 96 обращения интерфейса сброшен, то выполнение обмена данными между буферной памятью данных и группой регистров адресации, буферной памятью до эоны двойного слова происходит с помощью триггера 99 выбора буфера процессора, а до слова — с помощью триггера 100 номера слова. Триггер 100 номера слова во время передачи двойного слова переключается. Если триггер 96 обращения интерфейса установлен, то может выполняться обмен между буферной памятью 95 данных и регистром 94 pàíных. При этом адресация зоны происходит с помощью триггера 97 выбора буфера интерфейса, а слова и байта внутри слова — с помощью трехразрядного счетчика 98 адреса байтов. Двухразрядный счетчик 101 двойных слов указывает количество двойных слов в буферной. памяти 95 данных. Во время операции записи он показывает количество незаполненных двойных снов
1278867 .
10 в буферной памяти 95 данных, во время операции чтения - количество заполненных двойных слов, B начале операции записи счетчик устанавливается на "2" (два двойных слова не эапол- 5 нено) и во время передачи двойного слова из групп 15 и 16 регистров уменьшается. После передачи двойного слова через интерфейс счетчик 101 двойных слов увеличивается. В начале
10 операции чтения счетчик устанавлива-
\ ется в "0" и при обмене данными соответственно модифицируется.
Управление последовательностью
15 работы оборудования блока 19 согласования во время передачи данных между буферной памятью 95 данных и регистром 94 осуществляется с помощью второго синхронизатора 103. Управление
20 передачей между буферной памятью 95 данных и группами 15 и 16 регистров производится первым синхронизатором
102. Первый синхронизатор 102 вырабатывает стробы загрузки первой 15 и второй 16 групп регистров соответствующего канала, которые поступают соответственно при передаче данных в буферную память или из буферной памяти на первый и второй синхровходы блока 19 огласования. Запуск второго синл о. иэатора 103 производится через з. .,ент И-ИЛИ-НЕ 118, а запуск пе, го синхронизатора 102 через пя: и элемент И ИЛИ 116. Запросы от вс .х блоков 19 согласования поступают на блок 18 приоритета запросов и далее при помощи регистра
24 выбора, блока 25 формирования определяется наиболее приоритетный
40 из них и из блока 18 передается в блок 17 управления, в котором устанавливается триггер 54 передачи данных и один нз группы триггеров 55 н 56 передачи данных каналов, кото45 рые указывают, какой блок 19 согласования будет производить обмен данными.
На вход блока 17 управления на вторую группу входов из блоков 19 согласования поступает код операции, 50 который используется для аппаратурного формирования микрокоманды обращения к оперативной памяти на первой группе элементов И 57 и 58 и втором элементе ИЛИ 59, с выхода второ- 55 го микрокоманда поступает на вход режима блока 1 микропрограммного управления, в регистр 28 микрокоманд через первую группу 35 элементов
И-ИЛИ. При этом потенциалом с триггера 55 передачи данных блока 17 управления блокируется прием микрокоманд из памяти 26 микрокоманд блока 1 микропрограммного управления на первой группе 35 элементов И-ИЛИ и пропускается команда из блока 17 управления, в ходе выполнения которой должен производиться обмен данными между оперативной памятью и первой 15 и второй 16 группами регистров через внутренние тракты процессора. Для управления прохождением данных блок 17 управления вырабатывает последовательность сигналов с выхода триггера 64 запроса передачи данных, триггера 65 первого цикла передачи, триггера 66 промежуточного цикла передачи, триггера 67 второго цикла передачи, а для управления первой
15 и второй 16 группами регистров с выходов первой группы элементов
И-ИЛИ 76 и 77 и второй группы элементов И-ИЛИ 78 и 79.
Микрокоманда Память выполняется в два цикла. В первом цикле памяти готовятся адрес - данных и в случае записи в память записываемые данные.
Чтение и запись производятся в паузе между первым и вторым циклами. Длительность паузы зависит от времени обращения к памяти. Это время намного превосходит первый и второй циклы памяти, Во втором цикле памяти в случае считывания выбираются данные из памяти и пересылаются через внутренние тракты процессора в первую 15 и вторую 16 группы регистров. Триггер
64 запроса передачи данных блока 17 используется для запуска циклов аппаратурно сформированной микрокоманды
"Память", Блок 18 приоритета запросов, а также регистр 24 выбора и блок 25 формирования предназначены для выбора наиболее приоритетного из каналов.
Коммутатор 14 предназначен для выбора данных иэ оперативной памяти или регистра 34 результата блока 1 микропрограммного управления и представляет собой группу элементов ИИЛИ.
На временной диаграмме (фиг. 7) работы устройства для обмена данными между группой каналов ввОда — вывода и оперативной памятью для выполнения микрокоманды "Память" при обращении
1278867
12 к ней процессора приняты следующие обозначения: д — синхронизация; прием в первый регистр 31 адреса оперативной памяти; Ь- прием двойного слова данных в выходной регистр 4; 5 запись в местную память 30 модифицированного адреса оперативной памяти; д — выдача первого слова данных с первой группы 5 элементов
И-ИЛИ; e - выход третьего триггера 9; . 0 с — выдача второго слова данных с первой группы 5 элементов И-ИЛИ; управление коммутатором 14 на вь|бор данных из оперативной памяти; и — запись первого слова данных; к — запись второго слова данных.
Устройство для обмена данными между группой каналов .ввода — вывода и r оперативной памятью для выполнения микрокоманды "Память" при обращении к ней процессора работает следующим образом. Из памяти 26 микрокоманд блока 1 микропрограммного управления по адресу из регистра 27 адреса через
25 первую группу 35 элементов И-ИЛИ в регистр 28 микрокоманд заносится микрокоманда, поступающая на дешифратор
29, с седьмого выхода которого в местную память 30 подается адрес, по которому на первый регистр 31 считывается адрес данных оперативной памяти, который через адресный выход
46 блока 1 микропрограммного управления подается на адресный выход оперативной памяти. Двойное слово данных
35 из оперативной памяти заносится в выходной регистр 4, из которого с помощью первой группы 5 элементов И-ИЛИ на коммутатор 14 подается первое сло-4 во данных.
Управление выбором нового слова осуществляется первым элементов И-НЕ
8 по установленному первому триггеру 7, который устанавливается через первый элемент И 6, по младшему биту адреса двойного слова из первого регистра 31 блока 1 микропрограммного управления. Адрес данных оперативной памяти подается также на арифметико-логический узел 33, где он модифицируется и через регистр
34 результата и коммутатор 14 записывается в местную память 30. После этого управление коммутатором 14 по выходу второго элемента И 13 переключается на выбор первого слова данных из оперативной памяти. После записи первого слова данных по второму выходу дешифратора 29 блока 1 устанавливается третий триггер 9, который инверсным выходом на первом элементе
И 6 изменяет младший бит адреса one 1 ративной памяти, который запоминается в конце выполнения микрокоманды
"Память" на первом триггере 7 и через первый элемент И-НЕ 8 изменяет управление первой группы 5 элементов И-ИЛИ на выдачу второго слова данных из выходного регистра 4 на коммутатор 14, а прямой выход третьего триггера 9 управляет передачей этого слова данных через коммутатор
14 на фоне выполнения следующей микропрограммы.
На временной диаграмме (фиг. 8) работы устройства для обмепа даníûìn между группой канапов ввода — вывода и оперативной памятью для выполнения апларатурно сформированной микрокоманды Память считывания из оперативной памяти приняты следующие обозначения: a — - синхронизация; 6 — выход триггера 65 первого цикла передачи; — выход триггера 66 промежуточного цикла передачи; z — выход триггера 67 второго цикла передачи; д— прием в первый регистр 31 адреса оперативной памяти и счетчика байтов;
 — прием двойного слова данных в выходной регистр 4; эю — выдача первого слова данных с первой группы 5 элементов И-ИЛИ; ) — выдача в горого слова данных с первой группы 5 элементов И-ИЛИ;,ч — выход второго триггера 11; к — управление коммутатором
14 на выбор данных из оперативной памяти; л — запись в местную память 30 модифицированного адреса оперативной памяти и счетчика байтов; м — строб первой группы 15 регистров; и — строб второй группы 16 регистров, Устройство для обмена данными между группой каналов и оперативной памятью для считывания данных из оперативной памяти в первую 15 и вторую .16 группы регистров работает следующим образом. Из блока 17 управления в блок 1 микропрограммного управления в регистр 28 микрокоманд заносится аппаратурно сформированная микрокоманда, которая поступает на дешифратор 29, с седьмого выхода которого в местную память 30 подается адрес, по которому на первый регистр 31 в первом цикле памяти считывается адDeñ данных оперативной памяти, кото1278867
13
14 рый подается на адресный вход оперативной памяти и на арифметико-логический узел 33, на котором он модифицируется. Из оперативной памяти в выходной регистр 4 считывается двой- 5 ное слово данных. Младший бит адреса оперативной памяти, адресующий первое слово данных из первого регистра 31 блока 1 через первый элемент И 6, устанавливает первый триггер 7, кото10 рый через первый элемент И-НЕ 8 управляет выбором на первой группе 5 элементов И-ИЛИ первого слова данных, которое поступает на коммутатор 14, С выхода триггера 54 передачи данных !
5 блока 17 управления на информационный вход второго триггера 11 подается сигнал, который устанавливает этот триггер в начале первого цикла микрокоманды "Память". Второй триггер 11 управляет передачей через коммутатор
14 первого слова данных оперативной памяти, которое проходит через вторую группу 20 элементов И-ИЛИ под управлением выхода записи блока 19 согласования и через первую группу 15 регистров, так как на синхронизирующий вход подается постоянный строб и защелкивается во второй группе 16 регистров по стробу, сформированному на первой группе элементов И-ИЛИ 76 и 77 блока 17 управления по сигналам с выхода группы триггеров 55 и 56 передачи данных каналов триггера 67 второго цикла передачи и синхросигна- 35 ла.
Из местной памяти 30 блока 1 микропрограммного управления во втором цикле памяти на первый регистр 31 40 считывается счетчик байтов, который указывает то количество байтов, которое осталось передать из оперативной памяти в каналы. Счетчик байтов передается на арифметико-логический узел 33, на котором он модифицируется. После сброса второго триггера 11 управление коммутатором 14 переключается на выдачу из регистра 34 результата модифицированного адреса, кото50 рый записывается в местную память 30.
Затем на втором элементе И-НЕ 10 по сигналу с выхода триггера 67 второго цикла передачи блока 17 и сигналу с синхровхода 21 устройства вырабатывается сигнал, который поступает на второй вход первого элемента И-HE 8 и инвертирует выходы этого элемента.
Таким образом, первая группа 5 элементов И-ИЛИ выбирает второе слово данных, которое через коммутатор 14 под управлением сигнала с выхода второго элемента И 13 поступает через вторую группу 20 элементов И-ИЛИ на первую группу 15 регистров, где оно и защелкивается по стробу, сформированному на второй группе элементов
И-ИЛИ 78 по сигналам с выхода группы триггеров 55 и 56 передачи данных каналов, синхросигнала и сигнала с, выхода группы триггеров 68 и 69 второго цикла передачи каналов, Запись модифицированного счетчика из регистра 34 результата блока 1 в местную память 30 выполняется на фоне выполнения следующей микрокоманды.
На временной диаграмме (фиг. 9) работы устройства для обмена данными между группой каналов ввода — вывода и оперативной памятью для выполнения аппаратурно сформированной команды
"Память" записи в оперативную память приняты следующие условные обозначения: .a — синхронизация; 8 в выход триггера 65 первого цикла передачи; б- выход триггера 66 промежуточного цикла передачи; г " прием в первый регистр 31 адреса оперативной памяти; д - прием во второй регистр 32 данных из второй группы 16 регистров; е — прием данных чо входной регистр
2; ж- строб второй группы 16 регистров; — запись в оперативную память °
Устройство для обмена данными между группой каналов ввода — вывода и оперативной памятью для записи данных из первой 15 и второй 16 групп регистров в оперативную память работает следующим образом. Со второго информационного выхода группы 16 регистров в блок микропрограммного управления во второй регистр 32 через вторую 36 группу элементов И-ИЛИ под управлением сигнала с выхода триггера 54 передачи данных блока 17 управления принимается первое слово данных по стробу с выхода первого элемента И-ИЛИ 74 блока 17 управле-. ния, который перерабатывается по синхросигналу, После приема первого слова во второй регистр 32 блока 1 данные через первый информационный выход 47 блока 1 подаются на входной регистр 2, где они принимаются по стробу, сформированному на втором элементе И-ИЛИ 75 блока 17, который
15 !
1278867 в рабатывается по синхросигналу и третьему управляющему выходу блока 1 °
После приема первого слова данных во входной регистр 2 второе слово данных из первой группы 15 регистров 5 переписывается во вторую группу 16 регистров по стробу с выхода первой группы элементов И-ИЛИ 76 и 77 блока !7 сформированного по сигналам с выхода группы триггеров 55 и 56 пе!
О редачи данных каналов триггера 65 первог цикла передачи и синхросигнала. С выхода второй группы 16 регистров второе слово данных записывается во второй регистр 32 блока 1 через вторую группу 36 элементов
И-ИЛИ по стробу с выхода первого элемента И-ИЛИ 74 блока 17, сформированного по сигналам с выхода триггера 54 передачи данных, триггера 65
20 первого цикла передачи и синхросигнала, С выхода второго регистра 32 бло» ка 1 второе слово данных поступает на регHcTp 2» HG I
30 блока 1 считывается адрес, который через первый регистр 31 передается на адресный выход оперативной памяти.
По первому выходу дешифратора 29 блока 1 на элементе И 37 вырабатывается строб записи в оперативную память, который подае:ся в оперативную память 3
Устройство для обмена данными между группой каналов ввода. — вывода и
40 оперативной памятью для выбора и назначения соответствующего приорите Ià каналу вводч — выводаиз группы каналов, выставивших запросы на организацию передачи данных между груп45 пой каналов и оперативной памятью, работает следующим образом. При подключении определенной конфигурации периферийных устройств к группе каналов ввода-вывода на группе регистров
23 фиксации вручную,(или каким-либо другим способом) при помощи коммутационных переключателей для каждого периферийного устройства, подключенного к соответствующему каналу вводавывода, устанавливается информация, 55 которая в рассматриваемом случае характеризуется двухразрядным словом и которая определяет приоритетность канала ввода-вывода, если этот канал организовывает связь для обмена байтами данных с периферийным устройством. Например, если принять в качестве приоритета 1 (высший приоритет) комбинацию двух разрядов слово 00, а в качестве приоритета 4 (низший)
11, тогда если для связи периферийного !6-го устройства с адресом с
1-м каналом высший приоритет необходим по отношению к другим каналам из группы каналов, то в шестнадцатом двухразрядном регистре 23 фиксации, принадлежащего 1-му каналу, фиксируется двухразрядный код 00. Это значит, если 1-й канал начинает связь для обмена данными с периферийным
16-м устройством, то для 1-го канала устанавливается высший приоритет.
Установка соответствующего приори тета для любогоканала ввода — вывода. из группы каналов выполняется следующим образом. В процессе выполнения команды ввода — вывода до организации логической связи канала с периферийным устройством) микропрограммным путем определяется приоритет того канала, по которому необходимо выполнить команду ввода — вывода,и анаг.изируются установленные приоритеты всех ранее запущенных каналов из группы каналов ввода — вывода, которые еще не закончили связь с периферийными устройствами.
Если приоритет вновь запускаемого канала не пересекается с приоритетами ранее запущенных каналов, то: если приоритет вновь запускаемого канала свободен и если этот канал не работает, приоритет для данного канала присваивается и выполнение команды ввода — вывода продолжается стандартным образом; если приоритет вновь запускаемого канала ниже или равен приоритету этого же ранее запущенного канала, то старый приоритет этого канала сохраняется ивыполнение командыввода -вывода продолжается стандартным образом. если приоритет вновь запускаемого канала вьппе приоритета этого же ранее запущенного канала, то для данного канала устанавливается новый приоритет и.выполнение команды ввоI да — вывода продолжается стандартным образом.
Если приоритет вновь запускаемого канала ввода — вывода пересекается с
1278867
18 приоритетом одного чз запущенных ранее каналов ввода — вывода, то: если есть свободный более высокий приоритет, то этот приоритет присваивается вновь запускаемому каналу и выполнение команды ввода †. вывода продал>кается. стандартным образом; если все более высокие приоритеты заняты, то выполнение команды ввода—
f0 вывода прекращается и формируется признак результата, который говорит о том, что канал занят. При этом запоминается условие, по которому после того, как канал ввода — вывода, приоритет которого оказался таким же, который требовался для вновь запус- . каемого канала, закончит начатую связь со всеми периферийными устройствами, будет организовано повторное выполнение команды ввода — вывода по ранее неудачно запускавшемуся каналу ввода - вывода, При повторном выполнении команды ввода — вывод