Селекторный канал
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике, может быть использовано в вычислительных комплексах и является усовершенствованием известного селекторного канала по авт. св. N 1103218. Введение блока формирования предварительного запроса в известный селекторный канал по авт. св. N 1103218 повышает его производительность, что позволяет подключать более быстродействующие устройства ввода - вывода и вести обмен данными со специализированными устройствами передачи данных с большей скоростью и повысить производительность вычислительных комплексов при связи двух ЭВМ через адаптеры канал - канал. 1 с., 1 з.п. ф-лы. 17 илл.
СОЮЗ СО8ЕТСНИХ соцИ листических
РЕСПУБЛИК
0% (И) (51)5 G 06 Г 13/12
А2
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТ8ЕННЫЙ КОМИТЕТ
IlQ ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР
1 (61) 1103218 (21) 4404696/24-24 (22) 04.04.88 (46, 07.0!.90. Бюл. Г 1 (72) П.И.Антоник, О.В.Кулаго и 10.B.Тихович (53) 681 ° 325 (088,8) (56) Авторское свидетельство CCCP
tt 1103218, кл. G 06 Г 13/12, 1983. (54) сглекторний кАнАл (57) Изобретение относится к вычислитепьной технике, может быть использова.,о в вычислительных комплексах и является
Изобретение относится к вычислительной технике, может быть использовано для управления обменом информацией между устройством ввода-вывода и процессором и является усовершенствованием известного селекторного канала по авт.св. Г I!03218.
Целью изобретения является повышение быстродействия канала.
Иа фиг.! представлена блок-схема селекторного канала; на фиг.2-13 примеры функциональных схем блока подсчета байт, блока буферной памяти данных, регистра команд, блока подсчета байт в буферной памяти, регистра масок, счетчика младшего адреса, одного (нулевого) байта регистра данных и мультиплексора этого байта, блока выборки байт, блока контроля байт, блока завершения выборки байт, блока управления интерфейсом 4 блока формирования предварительного запро2 усовершенствованием известного селекторного канала по авт.св. t" 1103218.
Введение блока формирования предварительного запроса в известный селекторный канал по авт.св. t" 11032I8 повышает его производительность, что позволяет подключать более быстродействуюцие устройства ввода-вывода, вести обмен данными со специализированными устройствами передачи данных с большей скоростью и повысить производительность вычислительных комплексов при связи двух ЭВИ через адаптеры канал — канал. 1 з.п. ф-лы, 17 ил. са соответственно; на фиг.14 - временная диаграмма работы канала для операций записи устройство ввода-вывода; на фиг.l5 — временная диаграмма для операций считывания с устройства ввода-вывода; на фиг.16 — алгоритм выполнения микропрограммы передачи данных между каналом и оперативной памятью; на фиг.17 - временная диаграмма работы канала при передаче данных.
Селекторный канал 1 (фиг.l) предназначен для подключения быстродействующих периферийных устройств к процессору 2, который содержит блок
3 микропрограммного управления, ариометическо-логическое устройство
4, локальную память 5, оперативную ЬД память 6, блок 7 сопряжения с оперативной памятью. Селекторный канал 1 содержит регистр 0 данных, блок 9 подсчета байт, счетчик IO младшего адреса, регистр 11 команд, блок 12
1534465 буферной памяти данных, регистр 13 масок, блок 14 подсчета байт буферной памяти, блок 15 управления интерфейсом, блок 16 выборки байт, блок 17 завершения выборки байт, блок 18 контроля байт, мультиплексор 19, дешифратор 20, блок 21 формирования предварительного запроса, шины 22 и 23 второго и первого входов канала 1, шины 24 и 25 выходов блока 9 и регистра 11, шины 26 первого выхода канала 1, шины 27 счетчика, шины 23 четвертого входа канала 1,. шины 29 выхода мультиплексора 19, шины 30 третьего выхода канала 1, шины 31 второго выхода блока 12, шины
32-34 шестого и третьего входов и второго выхода канала 1, шина 35 и 36 второго и первого выходов регистра 20
13, шины 37 седьмого входа канала 1, шины 38-41 первого -.четвертого выходов блока 16, шины 42 и 43 выходов блока 17, шины 44 выхода блока 18, шины 45 и 46 второго и третьего вы- 25 ходов блока 15, шины 47 и 48 четвертого выхода и пятого входа канала 1, шины 49 выхода блока 14, шины 50 выхода дешифратора 20, шины 51 первого входа блока 21 и шины 52 выхода бло- З0 ка 21.
Операция передачи данных в канале
1 начинается по специальной команде процессора 2, которая задает адрес селекторного канала 1 и устройства ввода- вывода, и при помощи специальных управляющих слов указывает код команды, начальный адрес. оперативной памяти, количество передаваемых байт данных и другие управляющие признаки, 40 которые располагаются в регистрах канала 1 и в локальной памяти 5, об- разуя в совокупности управляющие слова канала. В локальной памяти 5 размецается адрес следующего командного слова канала, адрес данных, ключи защиты, признаки и отметки, используемые в микропрограммах канала 1. Счетчик байт размещается в блоке 9, младший адрес - в счетчике 10, команда
50 в регистре 11, Регистры загружаются по шинам 22 из локальной памяти 5 пропроцессора 2 по управляющим сигналам на шинах 23 с блока 3.
Блок 12 буферной памяти данных вы- полнен в виде стековой памяти. ЗаI гружаетсл по шинам 28 из устройства ввода-вывода и по шинам 29 с выхода мультиплексора 19 и раэгружается по шинам 30 в регистр 8 или в устройство ввода-вывода.
Регистр 8 данных канала хранит
8-байтовое слово, которым обменивается канал 2 с оперативной памятью 6 в процессе передачи данных.
Регистр 13 масок хранит 8-разрядную маску слова для операции считывания с устройства ввода-вывода. Управляют примером байт данных в регистр 8 с шин 33, Блок 16 выборки байт управляет передачей байт из регистра 8 в блок 12 буферной памяти данных через мультиплексор 19 для операции записи на устройство ввода-вывода и выборкой байт с блока 12 буферной памяти дан- . ных в регистр 8 для операций считыва-, ния из устройства ввода-вывода.
Блок 17 завершения выборки байта определяет момент выключения из раГюты блока 16, формирует признак (НПолное-неполное слово") завершения выборки байт с блока 12 буферной памяти данных в регистр 8, определяет момент выхода на микропрограммную приостановку для обслуживания данных и состояния.
Блок 2 (предварительного запроса формирует предварительный признак
"Полное-неполное .слово" и предварительный запрос на микропрограммную приостановку для обслуживания данных.
Блок 18 контроля осуществляет .контроль выбираемых байт из регистра
8 или блока 12, Блок 15 управления интерфейсом осуществляет, загрузку блока 12 в операциях считывания с устройства вводавывода и разгрузку блока 12 в операциях записи на устройство ввода-вывода. Под управлением блока 15 осуществляются начальная выборка устрой" ства ввода-вывода, завершения операции ввода-вывода на интерфейс и дру- гие функции.
Блок 9 подсчета байт (фиг.2) содержит счетчики 53-56 (синхронные реверсивные двоичные 4-разрядные), элементы ИЛИ 57-65, элементы И 66-68, линии 69 входа и линии 70-77 выхода блока, загружается по шинам 22 вторым - третьим байтом слова локальной памяти 5 по отрицательному управляющему сигналу в линии 69 на шинах 23.
Вычитание из счетчиков 53-56 производится отрицательным сигналом"на
5 1534 шине 39. Блок 9 вырабатывает на шинах
24 сигналы равенства счетчика 1,0,15более 2 и более 3 (сигналы в линиях
70-77) °
Блок 12 буферной памяти данных (фиг.3) содержит триггеры (регистры)
78-85, триггеры (флажки) 86-93, элементы ИЛИ 94-102, элементы И 103-111, 10 элементы ИЛИ 112,113 и линии 114- l17 выхода блока, управляется вторым синхросигналом по шинам 38. Нулевые выходы триггеров 86-93 соединены с
С-входом соответствующих регистров 15
78-85 (на фиг.3 представлены только
- два.разряда каждого буферного регистра). Если блок 12 отключен, то все триггеры 86-93 сброшены и регистрах 78-85 присутствует нулевая 20 информация, так как элементы ИЛИ 112113 выключены, а сигналы на С-входах регистрбв 78-85 включены. При загрузке блока 12, например, из регистра
8 по шинам 29, когда включается сиг" 25 нал загрузки на шинах 38 и если загружается "1", включаются элементы
ИЛИ 112-113 и байт данных поступает в регистр 78 и последующие регистры, В конце такта загрузки по заднему 30 фронту синхросигнала на шинах 38 устанавливается триггер 86 полного буферного регистра 78 через элемент ИЛИ
94, выключается синхросигнал на
С-входе регистра 78 и байт данных . записывается в регистр 78. В последующем такте канала через элементы "
ИЛИ 95-100 и элемент И 109 устанавливается триггер 93 полного буферного .регистра 85 и сбрасывается триггер 40
86, так как триггер 87 выключен, и байт данных из регистра 78 переписывается в регистр 85. В последующих тактах при загрузке через регистр 78 аналогичным образом байт данных записывается в регистр 84, устанавлива- ется триггер 92, так как включен триггер 93, и т.д.
При разгрузке блока 12 буферной памяти данных, например, на устройст- 50 во ввода-вывода по шинам 30 по сигналу сброса регистра 85 на шинах 45 триггер 93 сбрасывается и байт данных из регистра 04 передается в регистр
85, так как включается сигнал на
С-входе регистра 85, а в следующем (третьем, включая такт сброса) такте устанавливается триггер 93 и сбрасывается триггер 92 °
465 6
Блок 12 буферной памяти вырабатывает сигнал в линии 114 пустого регистра 78, сигнал в линии 115 пустых буферных. регистров 78-80 или 78,79 и
81 одновременно, сигнал в линии 116 пустого блока 12 и сигнал в линии 117 полного регистра 85.
Регистр 11 команд (фиг.4) содержит триггер 118 записи, триггер 119 обратного считывания, триггер 120 опе- рации данных, триггер 121 блокировки записи в оперативную память, элементы И 122-124, линии 125- 127 входов и линии 128 и 129 выхода, за1 гружается по шине 22 входа канала нулевым байтом слова локальной памяти по управляющим сигналам в линиях
69 и 125 на шине 23 входа канала.
Причем, если включен седьмой разряд нулевого байта слова локальной памяти, то устанавливается триггер 118 записи, а если седьмой, шесто" разряды нулевого байта слова локальной памяти выключены и включен четвертый разряд, то через элемент И 122 устанавливается триггер 119 обратного считывания. Триггер 120 операции данных устанавливается микропрограммой канала после успешной начальной вы— борки устройства ввода-вывода сигналом в линии 126 на шине 23 входа канала, когда устройство ввода-вывода в ответ на команду от канала присылает нулевой байт состояния и сбрасывается сигналом в линии 127 на шинах 23, когда завершена передача данных и устройство ввода-вывода присылает конечный байт состояния. Триггер 120 разрешает обмен данными между каналом и устройством ввода-вывода посредством включения команды записи в линии 128 или считывания в линии 129 через элементы И 123 и 124.
Триггер 121 загружается третьим разрядом нулевого байта слова локальной памяти 5 на шинах 22 по управляющему сигналу в линии 69 на шинах 23.
Триггер 121 запрещает запись в оперативную память байт данных, считываемых из устройства ввода-вывода.
Блок 14 подсчета байт в буферной памяти (фиг.5) содержит счетчик 130 (синхронный реверсивный двоичный
4-разрядный), элементь1 И-НЕ 131 и
132, элемент И 133, элемент ИЛИ 134 и линии 135-139 выхода блока, используется только в командах считывания из устройства ввода-вывода. Добавле1534465 ние "1" в счетчик 130 производится в момент действия синхросигнала на шинах 38 канала по управляющему сигналу на шинах 44 во время загрузки буферного регистра 78 с шин 28, а вычитание "1" — по управляющему сигналу на шинах 38 в конце передачи из регистра 85 по шинам 30 в регистр
8 данных канала. Если указанные и уп- равляющие сигналы присутствуют одновременно, то счетчик 130 не считает.
Регистр 13 масок (фиг.6) содержит триггеры 140-147 масок соответственно нулевого — седьмого байт регистра
8, элементы И 140-164 и линии 165, Триггеры 140-147 масок устанавливаются по сигналу загрузки регистра
85 в регистр 8 на шинах 38 в момент действия второго синхросигнала на шинах 38, в зависимости от содержимого счетчика 10 младшего адреса через дешифратор 20 (выходы 166-173).
Регистр 13 масок сбрасывается сигналом на шинах 37 с блока 7 после передачи данных из регистра 85 в оперативную память 6. В регистре 13 формируется через элемент И 164 на шину
36 сигнал полного слова в регистре 8.
Счетчик 10 младшего адреса с входной линией 165 (фиг.7) выполнен как синхронный двоичный реверсивный
4-разрядный счетчик. Регистр 11 загружается по шине 22 одна младшими разрядами третьего байта слова ло" кальной памяти 5 по управляющему сигналу в линии 165 на шинах 23. добавление "1" в счетчик 10 производится по отрицательному сигналу на шинах 40, а вычитание " 1" - по отрицательному сигналу на шинах 41. Выходы
166-173 дешифратора 20 подаются на входы регистра 13 (фиг.7), селекторы-мультиплексоры 178-180 с тремя устойчивыми состояниями по выходу и элемент НЕ 181. Мультиплексоры
178-180 переключаются из третьего (высокоимпедансного) состояния сигналом в линии 166 на шинах 50 с выхода дешифратора 20 через элемент
НЕ 181. Одноименные выходы мультиплексоров 19 всех байтов (например, вторые разряды мультиплексора нулевого - седьмого байта) объединены.
Таким образом, при модификации счетчика 10 посредством дешифратора 20 выбирается через мультиплексоры 178180 один из байтов регистра 8.
Блок 16 выборки байт (фиг.9) содержит элементы И 182-185, ИЛИ 186188, ИЛИ-HE 189 190, И-НЕ!91 и 192,. линии 193- t.96 шин 38 первого выхода
25 блока 16.
Блок 18 контроля байт (фиг.10) содержит триггер 197 задержки сигнала в линии 194 загрузки регистра 85 в регистр 8, триггер 198 модификации регистра 11, триггер 199 ошибки данных в регистре 8, дешифратор 200 четности, элемент И 201, линии 202 и 203 шины 44 выхода блока.
Блок 17 завершения .выборки байт (фиг. 11) состоит из узла 204 формирования запроса данных, узла 205 формирования запроса состояния и узла 206 формирования признака полного слова.
Узел 204 содержит триггер 207.запроса данных триггер, 208 ненулевой мас- ки слова и коммутатор сигналов запро" са данных, включающий элементы И-НЕ
209 и 210, И 211-219, ИЛИ 220-222.
Узел 205 представляет собой коммутатор сигналов состояния, выполненный на элементах И 223-225 и элементе
ИЛИ 226. Узел 206 содержит триггер
227 полного слова, элемент И 228, ИЛИ 229, линии 230 и 231 шины 51, ли-, нии 232-234 шины 42.
Регистр 8 данных (фиг.8) может быть выполнен на селекторах-мультиплексорах 174-176 с запоминанием и элементе И-ИЛИ-HE 177, загружается по переднему фронту второго синхросигнала на шинах 38 с регистра 85 с шин 30 по управляющему сигналу на шинах 38, если включен сигнал в линии
166 на выходе дешифратора 20, из оперативной памяти 6 (нулевого байта слова) по шинам:33 по управляющему сигналу на шине 32, если триггер 140 нулевого байта регистра 8 сброшен, На фиг.8 представлен только нулевой байт восьмибайтного регистра 8, Остальные байты регистра 8 идентичны нулевому.
Мультиплексор 19 (для нулевого байта) содержит (фиг.8) 4-разрядные
Блок 15 управления интерфейсом (фиг.12) содержит триггеры 235-241, элемент 242 сравнения двух чисел,. элементы И 243-246; И-НЕ 247-248, И-ИЛИ 249, ИЛИ 250, линии 251 и 252 шины 45. Сигнал в линии 253 на шинах
48 устанавливает триггер 235, сигнал в линии 254 на шинах 48 - триггер 241, 9 1534
Блок 21 Формирования предварительного запроса (Фиг. 3) содержит триггер 255 предварительного запроса данных, триггер 256 предварительного полного слова, элементы И 257-263, ИЛИ 264-265, линии 266 и 267 шины 52.
На Фиг. 14 и 15 обозначены С! и С2тактовые синхросигналы соответственно первой и второй серией канала, а также указаны справа позиции линий, шин и триггеров, взаимодействующих с сигналами, приведенными слева.
Селекторный канал 1 работает следующим образом. 15
Иашинный такт процессора, в который входит предлагаемый канал, состоит из первого — четвертого тактовых синхросигналов (СИ1, СИ2, СИ3, СИ4) длительностью каждый, например, 50 нс.20
Длительность такта равна, например, 400 нс. Для увеличения быстродействия работы канала 1 на этапе передачи данных такт канала 1 выбран длительностью 200 нс, т.е. s 2 раза меньше 25 длительности машинного такта процессора. С этой целью в блоке 16 по шинам 23 через элемент ИЛИ 186 из пер" вого и третьего синхросигналов (СИ1, СИ3) формируется первый синхросигнал в линии 195 (СИ1), а через элемент
ИЛИ 187 из второго и четвертого син хросигналов (СИ2, СИ4) — второй синхросигнал в линии 196 (СИ2), которые по шинам 38 поступают в блоки канала 1.
Операция записи.
После загрузки управляющей информации в канал 1 и успешной начальной выборки устройства ввода-вывода мик" 4р ропрограммой канала по сигналам в ли" нии 126 на шинах 23 устанавливается триггер 120 и одновременно в блоке 17 через элемент И-НЕ 210 устанавливается триггер 207.
4Б
Запрос данных через элемент ИЛИ 222 по шине 42 поступает в процессор 2, где вызывается микропрограмма передачи данных канала, которая выполняет« ся за три микрокоманды процессора 2: разгрузка регистров процессора 2, используемых в микропрограмме передачи данных, в локальную память 5 (фиг. 16); чтение адреса данных из локальной памяти 5 в блок 7 и на вход 55 арифметического-логического устройст.ва 4; модификация адреса данных на
"+8" через устройство 4 и запись его в локальную память 5.
465 10
В этом же такте запускается блок
7 для чтения данных из оперативной памяти 6 в регистр 8. Третья микрокоманда не выполняется до завершения чтения данных из оперативной памяти
6. Когда данные из оперативной памяти 6 прочитаны, то блок 7 выдает в канал сигнал загрузки слова оперативной памяти 6 в регистр 8, который по шине 32 поступает в канал 1. Последний принимает полное слово с шин
33 в регистр 8, так как регистр 13 в операциях записи выключен. Через элемент И 216 блока 17 сбрасывается триггер 207, тем самым включая в работу блок 16 по шине 42 ° Допускается на выполнение третья микрокоманда: загрузка регистров процессора 2 из локальной памяти 5.
В блоке 16, если регистр 78 пустой, через элемент И 182 выдается сигнал в линию 193 на шину 38 загрузки регистра 78 из регистра 8. Соответствующий байт регистра 8 через мультиплексор 19 передается в регистр
78. В конце передачи счетчик в блоке
9 уменьшается по шине 39 на "1", а счетчик 10 увеличивается по шине 40 на "+1", Через один такт канала 1, если регистр 78 освободится, предыдущие действия повторяются °
Когда. состояние счетчика 10 достигает границы слова (111), то в момент передачи последнего байта из регистра 8 (байт 7) через элемент
И 2!4 блока 17 устанавливается триггер 207 и вызывается микропрограмма передачи данных, после выполнения которой включается блок 16. Начало временной диаграммы на Фиг.14.соответствует моменту, когда в блоке 12 находятся байты 4-7 регистра 8 в регистрах 84, 02, 80 и 78 и очередное слово данных читается в регистр
8 из оперативной памяти 6, Во втором такте канала производится загрузка прочитанного слова (байт О) в блок
12.
Если в момент передачи последнего байта регистра 8 (байта 7) содержимое счетчика 56 равно "1", то по шине 24 сигнала в линии 70 блокируется установка триггера 207 через элемент
И 214 в блоке 17.
Если счетчик 56 после очередной выборки байта из регистра 8 достигает нуля, то сигналом в линии 71 по
11 15344 шине 24 через элемент ИЛИ-НЕ 109 блок
16 выключается из работы, Таким образом, байты данных счи- тываются из оперативной памяти .6 в
5 регистр 8, передаются в блок 12, где продвигаются к регистру 85, откуда выдаются на устройство ввода-вывода.
Когда устройство ввода-вывода требует очередного байта данных, то îíî !О устанавливает в линию 253 шины 48 сигнал информации от абонента, поступающий в блок 15 (фиг.!2). Если регистр 05 загружен, то по сигналу в линии 117 на шине 31 через элемент
И 245 по заднему фронту синхросигнала в линии 193 (Сl) на шинах 38 устанавливается триггер 238 информации от канала (фиг.14) и через элемент ИЛИ
250 по шине 47 выдается сигнал ин- 2п формации от канала. Устройство вводавывода принимает байт с шин 30 и снимает сигнал в линии 253, указывая каналу 1, что байт данных принят.
В канале 1 через элемент И 246 по 25 заднему фронту синхросигнала в линии
193 (Сl) на шинах 30 устанавливается триггер 239, по которому через шину
45 сбрасывается триггер 93 и очередной байт данных сдвигается. в регистр 30
85. По установленному триггеру 239 через элемент И-НЕ 247 в момент действия второго синхросигнала 8 линии
l96 (С2) по шине 30 сбрасывается триггер 239 информации от канала, что, в свою очередь, приводит к сбросу триггера 239 в момент действия первого синхросигнала в линии 193 (Сl) через элемент И-НЕ 248. Если устройство запросит очередной байт„ то все предыдущие действия повторяются.
Операция передачи данных на интерфейс ввода-вывода обычно заканчивается, когда счетчик 56 достигает ну- 45 ля и все байты данных с блока 12 переданы в устройство ввода-вывода.
Если это происходит, то по шинам 24 и 31 через элемент И-ИЛИ 249 по заднему фронту второго синхросигнала в БО ! линии 196 (С2) на шинах 38 устанав- ливается триггер 240 конца операции, который блокирует установку триггера
238 информации от канала через элемент И 245. В ответ на сигнал информации от абонента выдается сигнал управления от канала 1 (на фиг.12 не показан), что является признаком останова для устройства ввода-вывода.
65 t2
Устройство ввода-вывода на этом заканчивает обмен данными и присылает по линии 254 шин 48 сигнал управления от абонента, по которому в канале 1 устанавливается триггер 241, сигнал с выхода которого по шине 46 поступает в блок 17, где через элемент И 225 в линию 233 вырабатывается запрос обслуживания состояния, который вызывает в процессоре 2 выполнение микропрограмм обслуживания состояния устройства ввода-вывода.
Операция считывания.
Операция считывания с устройства ввода-вывода начинается после загрузки информации в канал 1 и успешной начальной выборки устройства вводавывода, когда микропрограммой канала по сигналу s лини 126 на шинах 23 устанавливается триггер 120 операции данных в регистре 11 команд. Устройство ввода-вывода помещает на шины
28 байт данных и устанавливает в линии 253 сигнал информации от абонента, что приводит к установке в блоке !
5 триггера 235 информации от абонента по переднему фронту синхросигнала (С2) в линии 196 (Сl на шинах 38, (фиг.12 и 15). Если регистр 78 пуст, то через элемент И 244 устанавливается. по заднему фронту синхросигнала (С2) в линии 196 триггер 236, сигнал с выхода которого по шине 45 (линия
251) поступает в блок 12. Байт данных принимается в регистр 78.Следующим синхросигналом в линии 196 устанавливается триггер 237 информации от канала и через элемент ИЛИ 250 выдается в интерфейс сигнал информации от канала, указывающий устройству ввода-вывода, что байт данных.с шин
28 принят. Сбрасываются триггеры 235 и 236. Устройство ввода-вывода снимает сигнал с линии 253, что приводит к сбросу триггера 237 информации от канала. Все последующие байты с шин
28 принимаются аналогичным образом.
При каждом приеме байта данных с шин
28 производится добавление "+1" в блок 14 сигналом в линии 251 на шине 45 через элемент И-HE 131, если выключен сигнал в линии 194.
Как только первый байт данных достигает регистра 85, то включается в работу блок 16. Сигналом в линии 117 через элемент И 183 выдается сигнал в линии 194 для загрузки регистра 8 из регистра 85. Байт данных принима465
14 микрокоманды (фиг. 16): разгрузка регистров процессора 2 в локальную память 5 и ветвление по триггеру 119 и признаку в линии 234 полного слова; прямое и обратное считывание полного слова, чтение адреса данных из локальной памяти 5 в блок 7 на вход арифметико-логического устройства 4, модификация адреса данных соответственно на "+8" или "-8" через устройство 4 и запись его в локальную память 5.
В этом же такте запускается блок
7 для записи данных из регистра 8 по шинам 34 в оперативную память 6.
Третья микрокоманда не выполняется до завершения передачи и записи переданных данных из регистра 8 в оперативную память 6. Когда данные иэ регистра 8 переданы, то блок 7 выдает в канал 1 сигнал свободного регистра 8, который по шине 37 поступает в блок 17 и регистр 13. Регистр
13 сбрасывается и через элемент И
217 сбрасываются триггеры 207 и 208 вторым синхросигналом по линии 196 (С2), тем самым включая в работу блок
16. Запускается после записи в оперативную память 6 данных третья микрокоманда (загруэка регистров процес-. сора 2 из памяти 5).
Прямое или обратное считывание неполного слова.
Эта микрокоманда аналогична второй микрокоманде в операциях записи за исключением того, что адрес данных не модифицируется, данные с шин 33 принимаются в регистр 8 по маске слова в регистре 13, сигналом загрузки слова оперативной памяти 6 в регистр 8 на шинах 32 через элемент И 228 устанавливается триггер 227, триггеры 207 и
208 не сбрасываются. Это дает возможность повторно войти в микропрограмму передачи данных, но уже для записи полного слова, после выполнения третьей микрокоманды, как описано.
Операция передачи данных на интерфейс ввода-вывода обычно заканчивается, когда содержимое счетчика 130 в блоке 14 становится равным содержимому счетчиков 53-56 s блоке 9.
В этом случае через элемент 242 сравнения (фиг.12) устанавливается триггер 240 конца операции, который через элемент И 244 блокирует установку триггера 236. Дальнейшие действия на!
3 1534 ется в соответствующий байт регистра
8 (согласно состоянию счетчика 10 на входе дешифратора 20), устанавливается в регистре 13 триггер маски соответствующего байта регистра Я.
В конце такта загрузки по шине 39 производится вычитание "1" с блока 9, модификация на "1" счетчика 1О (на
"+1" для операции считывания через !О элемент ИЛИ-НЕ 190 по шине 40, на
"1" для операций обратного считывания через элемент И-НЕ 192-, по шине
41), производятся вычитание "!" с блока 14 через элемент И-HE 132 по !5 сигналу s линии 194 и сброс регистра
85 по сигналу в линии 194. При загрузке хотя бы одного байта в регистр
8 всегда устанавливается триггер
208 через элемент И 219 в блоке 17, При последующих загрузках байтов данных с шин 28 описанные действия повторяются.
Блок 17 выключает блок 16 и формирует запрос данных для выполнения 25 микропрограммы передачи данных в следующих случаях; когда в процессе выборки байт достигается граница слова в регистре 8, в этом случае для команды считывания устанавливается триггер 208 через элемент И 212, а для команды обратного считываниячерез элемент И 211; когда выбирается последний байт с блока !2, то по шине 24 через элемент И 213 устанавливается триггер 207; когда с устройства ввода считывается блок данных длинной, меньшей, чем указано в счет- . чике 56, в этом случае устройство ввода вместо запроса на линии 253 присылает сигнал по линии 254, который устанавливает триггер 241, сигнал с единичного выхода которого по шине 46 поступает в блок 17. Если условия, описанные в первом случае, не соблюдаются, то после выборки всех байтов данных с блока 12 в регистр
8 сигналом в линии 116 (пустой буфер) через элемент И 215 устанавливается триггер 207 запроса данных. Сигнал запроса состояния в линии 233 блокируется по сигналу на шинах 46 на элементах и 223 и 224 низким уровнем сигнала с нулевого выхода триггера 208.
Запрос данных по шине 42 посту,.пает в процессор 2, где вызывается микропрограмма передачи данных ка" нала, которая выполняется за три
1534465
15 интерфейсе аналогичны действиям в операциях записи.
Сигнал запроса состояния в линии
233 вырабатывается по сигналу управления от абонента на шине 46 в блоке
17 через элемент И 244, если имеется сигнал равенства нулю счетчика байт в линии 71 и выключен триггер 208 ненулевой маски; через элемент И 223, если имеется сигнал пустого блока буферной памяти данных в линии 1!6 и выключен триггер 208 ненулевой маски.
При считывании байт данных с устройства ввода-вывода с блокировкой записи в оперативную память 6 установлен триггер 121 в регистре 11. Это вызывает блокировку установки триггера 207 через элемент И-НЕ 209. Микропрограмма передачи не выполняется, а все описанные действия в канале выполняются.
Начало временной диаграммы на фиг.14 соответствует моменту, когда в микропрограмме передачи панных освобождается регистр 8 (в такте 1), в блоке 12 накоплены 4 байта (байты
0-3), которые расположены в регистрах 82-85. Контроль выбираемых байт осуществляется в блоке 18. При выполнении операции выбранный байт из регистра 8 поступает через мультиплексор 19 в блок 18 на дешиФратор 200.
Если байт имеет неправильную четность, то через элемент И 201 сигналом в .линии 193 загрузки регистра 8 в регистр 78 в линии 194 устанавливается триггер 199 ошибки в момент действия второго синхросигнала s линии 196 (С2) ° При выполнении операции считывания выбранный байт из регистра 85 поступает в соответствующий байт регистра 8 и через мультиплексор 19 на дешифратор 200. Если байт имеет неправильную четность, то при выключении триггера 198 устанавливается триггер 199. Адрес данных в операциях считывания модифицируется посредством триггеров 197 и 198 с задержкой по отношению к сигналу за- з грузки регистра 85 в регистр 8 линии
194, чтобы иметь возможность контроля загруженного байта в регистр 8 через мультиплексор 19.
Таким образом, с помощью одного дешифратора 200 четности осуществляется контроль всех выбираемых байт данных в канале.!
Установка триггера 199 блокирует по шине 44 загрузку буферного регистра 85 в регистр 8 данных канала и вызывает установку триггера 240 конца операции в блоке 15 управления интерфейсом. . Блок 21 начинает работать при обмене .данными с высокоростными уст10 ройствами ввода-вывода, когда канал отстает от устройства в операциях записи и когда устройство опережает канал в операциях считывания, При выполнении операции записи байты данных, загруженные в регистр
8 выдаются по шинам 34 в блок 12, а затем по шинам 30 - s устройство ввода-вывода.
По мере того, как регистр разгружается, его загружают новыми байтами данных с блока 7. Если к моменту передачи пятого байта слова (сигнал в линии 171 на шинах 50) из регистра
8 в регистр 78 блока 12 по управляющему сигналу в линии 193 на шинах
38 в блоке !2 уже имеются два пустых регистра из регистров 79-8! (сигнал в линии 115 на шинах 3 1) и состояние
53-56 байт блока 9 больше двух (сигнал в линии 74 на шинах 24), через элемент И 258 устанавливается триггер
255 и вызывается микропрограмма передачи данных, I . моменту обращения к памяти через время выполнения первой микрокоманды на фиг.17) регистр 8 уже пере-. дает оставшиеся два байта данных в блок 12 и готов к приему нового слова данных.
При выполнении операции "Считать" блок 12 быстро загружается из устройства ввода-вывода, а затем передается в регистр 8. Когда пятый байт слова данных для команд считывания или обратного считывания соответственно передается с блока 12 в регистр 8 по управляющему сигналу в линии 194 на шинах 38, состояние счетчиков 53-56 байт блока 9 более двух (сигнал в линии 72 на шинах 24) и в блоке 12 имеется более двух байт (сигнал в линии
135 на шинах 49), то через элемент
И 259 или 260 устанавливается триггер
255 предварительного запроса и вызывается микропрограмма передачи данных, как было описано.
1534
Формула изобретения
2. Канал по п.1, о т л и ч а ю— шийся тем, что.блок формирования предварительного запроса содержит два триггера, два элемента ИЛИ, семь элементов И,. причем первый вход первого элемента И является вторым входом признаков состояния блока, второй вход первого и,первый вход второго элементов И образуют второй
35
1. Селекторный канал по авт. св.
Г 1103218 отличающийся
5 тем, что, с целью повышения быстродействия канала, в него введен блок формирования предварительного запроса, причем первый, второй и третий входы признаков состояния блока формирования предварительного запроса соединены соответственно с вторым выходом блока буферной памяти данных, с с выходом блока подсчета байт в буферной памяти и вторым выходом регистра масок, а установочный, разрешающий и пусковый входы - соответственно с третьим выходом блока завершения выборки байт, выходом регистра команд и выходом дешифратора, выход и первый, второй синхронизирующие входы блока формирования предварительного запроса подключены соответственно к одиннадцатому входу блока завершения выборки байт, перво- 25 му выходу блока выборки байт и выходу блока подсчета байт.
465 18 вход синхронизации блока, второй вход второго элемента И является первым входом признаков и состояния блока, третий вход второго и первые входы третьего и четвертого элементов И образуют пусковой вход блока, вторые входы третьего и четвертого элементов И являются разрешающим входом блока, четвертый вход второго И, третьи входы третьего и четвертого элементов и синхровходы триггеров образуют первый синхронизирующий вход блока, первые входы пятого и шестого элементов И образуют третий вход признаков состояния блока, первый вход седьмого элемента И и K-входы первого и второго триггеров являют ся установочным входом блока, выход первого элемента И соединен с четвертыми входами третьего и четвертого элементов И, выходы которых соединены соответственно с первым, вторым входами первого элемента ИЛИ и с вторыми входами пятого и шестого элеI ментов И, выход второго элемента И соединен с третьим входом первого элемента ИЛИ, выход которого соединен с вторым входом седьмого элемента И, выход которого соединен с J-входом первого триггера, выходы пятого и шестого элементов И соединены соответственно с первым и вторым входами второго элемента ИЛИ, выход которого соединен с J-входом второго триггера, . выходы триггеров образуют выход бло ка.
1534465
Фиг.
1534465 г2
2Э
22
33
ЭФ фиг.8,534465
3f
36
44
И
ЧРиг. Q
3В
У
>gy446g
gal
И
48
fl
Щ08. 0
1анпэи 1
11—
111
1/Ф фамй бадщ7 ЩКФ d
Е gf
llaw
7l: Ф у ф д ще я! ж И м а и баб 7
Саню У тб
1tuwtqi бвь1б Х гщ 7
Феей а м
%май Сааю аа Ьэб tuun 7 бг
ttukuut у, бЬнна Щв luetuf
И
uuuþá б6
Вевий luCki 6 аб
-1 иерее Я
° Ю ° ° «ЙО тт
luuu — Веем — -ю еврее. У
l4ispngat ю айеэаа еенФар11еция е1и иииеии
hei реб. бб
Sutp, снеФа енератибнвй ниленти S рее. а
1СС
«т
1 бр
1И. е1 с В аюаяие Iwt сЕа 10 ю Ыию адреса 47ннюи
Фие.16 тие1ни о
Ю в, юав tuf
Инфернауне ow I u нт
Грииер иииормащщ т Щиунти, 3utp,рее. 7Ю с шин. 7Þ гбб
Трипер иначрюаиии бт «аналс банный Хайу
71
Пеянь и бт
6авннй бнйн1 3 бг
Ъянии бнйн1 г
И
Нееный
14
Ilgwu Кагюд
Ь
Оюйднщ Яд,Ю
Ф: gj нц8б Рай» ндвюРдне рду бе г Й1йн ЮааН Д. Щ н1
Юб
t9 (бстояние бемсиниамера гб ruudutnu илеса
Юаннэа е1 8рп 16
-tu) рее t4
it Срее tD
-1ю атее.б
Иасна 6 Сайта басни t ййнм р7асна г duumu
ЯЫт
ЩщюД Каан б,нищ ЛАЗ вию В ВЯ " мт
141
1бб й) ебт л
15341165 (читы дание ((РУ) Ластись ((ед! раьаруька роюис рад кроиассара д лалапьную
rraudmg () раааруэла
„pecrccrrrpod л/тацассорсс окааьную пакаmu(d/. янопиа оарасттноео crrurrrrrdairrurr(rr и лаанага coed где/ ддралтнаа
//рокот снислыдалиа(ар:о) снилььтданиа (ттР т) ноанага спада гд хr лаана а саада(1 драною и odporrrrree. cvu.
rrrrrdanue кестапнаюа
cnoda (таь "0/
nrr! ue адроса данных ud nnreer. юан лак оп(/3&. 1
menue adpeca данных иь пслапьиайлакати(d с(а у lmeuue адреса данных иь nrronr.
«ай какали(б/ д&.1
Ултснис адраса данных ur norerrr. наи панасян/Я36
3атруиа crtoda ояероггг udrroc(rrorcenru
d ратас данных ланапа (Р) О ч
1с
Иоохаат(ьси ьоегистпр 8
Загрудка peevcp рад прас(Радара иь аоаааьиай патаяти ($) Загрубаа peducp род протьассора ч
rcd лолааьносб паасятттсс (о) Щид. f6
Т5 Тдеd ТУ)д ТО(Р
Предбо шпеяьныб запросИ5
Люрекс 8Р7
@uz 17
Составитель В. Вертлиб
Техред И.Дидык
Корректор И.Кучерявая
Редактор О.Ирковецкая, Заказ 42
Тираж 555
Подписное
В1ЫИ1!И 1 огударственного комитета по изобретениям и открытиям при ГКНТ СССР
11303S, Москва, Ж-35, Раушская наб., д. 4/5 эе 11
Произв щ< твенно-издательский комбинат Патент, г. Ужгород, ул. Гагарина, 101 кадарикоаца на ад адреса данн чрртю oprrcrrrenruurr
«а-латиаасхае ус райстаа(Ь/. далась
per ucòðà данных канапе(д/ d errc
rrrudrr и какалть падщзихаииа на-Р адоаса даихнс veper арафлалтинссхаrervvecroe Нслуаа с леа(а/. Jccnrrcr
Расислра davvvr налила() d алара пиа цм лола..ль
Ч полис далхыа иб олсраппсбнай лакаюи(Б/d pezrcmp данных лакана(Р) ла каска спада
d peevcnrpe(rg) Ьланиа даннur ur алоратоднас палата (d/ d регистр дан. нюсю rouane ® кодификацию на d аараса дохлых redrr орнфкосла наслаааюитоскаа скис юла Сь