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

 

Со:.оа Советских

Социалистических

Республик (61) Дополнительное к авт. свид-ву (22) Заявлено 22.10.75 (21) 2183490/24 (51) М. Кл. G 06F 3/04 с присоединением заявки ¹

Государственный комитет

Совета Министров СССР

f по делам изобретений; и открытий (23) Приоритет

Опубликовано 300877. Бюллетень № 32

Дата опубликования описания 08.09.77 (53) УДК 681.327.21 (088.8) (72) Авторы изобретения

P. И. Абражевич, В. А. Аверьянов, М. И. Коротченя и Ю. В, Тихович (71) Заявитель (54) СЕЛЕКТОРНЫЙ КАНАЛ

Изобретение относи; ся к ьычислптельной технике и может быть использовано для управления обменом информацией между внешними устройствами и процессором.

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

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

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

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

20 недостаточного быстродействия буферной памяти.

Цель изобретения — повышение быстродействия канала.

Это достигается тем, что в селекторный ка25 нал введен блок задания ускоренной работы буферной памя и, входы которого с первого по десятый соединены с соответствующими выходами блоков управления буферной памятью и управления каналом, первый и второй выходы

30 подключены к соответствующим входам бло570891

3 ков буферной памяти и управления буферной памятью.

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

На фиг. 1 представлена блок-схема селекторного канала; на фиг. 2 и 3 — структура блока управления буферной памятью; на фиг.

4 — структура разряда буферной памяти; на фиг, 5 — структура блока задания ускоренной работы буферной памяти; на фиг. 6 и 7 — соответственно диаграммы работы канала при операции считывания в случае отсутствия блока задания ускоренной работы буферной памяти и при наличии этого блока.

Селекторный канал (см. фиг. 1) содержит блок 1 управления каналом, буферные регистры 2 — 9 блока буферной памяти, блок 10 управления буферной памятью, блок 11 задания ускоренной работы буферной памяти.

На фиг. 1 обозначены: 12 — 18 — входы канала; 19, 20 — выходы канала; 21 — 24— выходы канала и буферных регистров 6 — 9 блока буферной памяти; 25 — 37 — выходы блока управления каналом; 38 — 60 — выходы блока 10 управления буферной памятью;

61 — 62 — выходы блока 11 задания ускоренной работы буферной памяти; 63 — бб — выходы буферных регистров 2 — 5 блока буферной памяти; 67 — 68 — входы блока 10 управления буферной памятью.

Блок 10 управления буферной памятью (см. фиг. 2 и 3) содержит триггеры 69 — 76 хранения буферных регистров 2 — 9 соответственно, триггеры 77 — 84 полных буферных регистров

2 — 9 соответственно, триггер 85 передачи буферного регистра 2 в буферный регистр 3, триггер 86 передачи буферного регистра 3 в буферный регистр 4, триггер 87 передачи буферного регистра 4 в буферный регистр 5, триггер 88 передачи буферного регистра 7 в буферный регистр 8, триггер 89 передачи буферного регистра 8 в буферный регистр 9, элементы И 90 — 132, элементы ИЛИ 133 — 144.

На фиг. 2 и 3 обозначены: 145 — единичный выход триггера 72 хранения буферного регистра 5; 146 — 151 — входы блока; остальные обозначения такие же, как на фиг. 1, Каждый разряд буферных регистров 2 — 9 (см. фиг. 4) включает в себя триггеры 152—

159 буферных регистров 2 — 9 соответственно, элементы И 160 — 174, элементы ИЛИ 175—

180. Остальные обозначения такие же, как на фиг. 1.

Блок задания ускоренной работы буферной памяти (фиг. 5) содержит триггер 181 передачи буферного регистра 4 и в буферный регистр 8, триггер 182 передачи буферного регистра 3 в буферный регистр 7, элементы HE

183 †1, элементы И 187 †1. Остальные обозначения такие же, как на фиг. 1, Селекторный канал предназначен для подключения к процессору (на фиг. 1 не показан) быстродействующих внешних устройств.

Предполагается, что процессор микропрограммной вычислительной машины имеет oIIeрати вную память, ар ифметическо-логическое устройство и блок микропрограммного управления.

Операция передачи данных в селекторном канале начинается по специальной команде процессора, которая задает адрес канала и устройства ввода — вывода и при помощи специальных управляющих слов указывает код команды, начальный адрес оперативной памяти, количество передаваемых байтов данных и другие управляющие признаки, которые располагаются в регистрах канала и в специальной управляющей памяти (не показанных на фиг. 1), образуя в совокупности управляющее слово канала. Связь канала с микропрограммным устройством управления осуществляется по входу 12 и выходу 19.

Передача управляющей информации между процессором (арифметическо-логическим устройством) и регистрами канала производится через вход 13 и выход 20, передача управляющей информации и данных между каналом и устройством ввода — вывода — через буферные регистры 2 — 9, вход 14 и выход 24, передача данных между каналом и процессором (оперативной памятью) — по входам 15 — 18 при операциях записи и выходам 21 — 24 при операциях считывания.

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

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

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

Рассмотрим выполнение операции записи в канале.

570891

Запрос на микропрограммное прерывание для выполнения микропрограммы обслуживания данных вырабатывается в блоке 1 управления каналом в тот момент, когда освобождаются четыре буферных регистра 2 — 5 или когда освобождаются любыетри буферных регистра 2 — 5 и хотя бы один буферный регистр

6 — 9, так как к моменту передачи байтов данных буферные регистры 2 — 5 становятся «пустыми». Микропрограмма обслуживания данных обеспечивает необходимую корректировку управляющего слова канала и по входам

15 †!8 передачу данных из оперативной памяти в канал. Если передается полное слово, то байты данных принимаются в буферные регистры 2 — 5, а если — неполное слово, например два байта, то в зависимости от адреса данных байты принимаются в буферные регистры 2 и 3, 3 и 4, 4 и 5. Таким образом, каждому байту слова памяти соответствует свое место в буферных регистрах 2 5. После приема из оперативной памяти в буферные регистры 2 — 5 байты данных сдвигаются до буферного регистра 9, откуда они выдаются в устройство ввода — вывода, после чего сбрасывается по выходу блока 1 управления ка налом регистр 9. Операция записи в канале обычно заканчивается тогда, когда счетчик байтов достигает нуля, после передачи всех байтов данных из буферных регистров 2 — 9 в устройство ввода — вывода.

При выполнении операции считывания, байты данных с входных шин интерфейса принимаются по входу 14 в буферный регистр 2 и продвигаются к буферным регистрам 9 — 6.

Если адрес данных соответствует границе слова (код состояния двух младших разрядов адреса равен 00) и счетчик байтов больше или равен четырем, то нулевой, первый, второй и третий байты данных продвигаются соответственно в буферные регистры 9, 7, 8 и 6. А если адрес данных соответствует границе слова и счетчик байтов меньше четырех, например два, то нулевой и первый байты данных продвигаются соответственно в буферные регистры 9 и 8, после чего на выходе 35 блока 1 управления каналом вырабатывается отрицательный сигнал полного слова в буферных регистрах б — 9, запрещающий продвижение байтов данных с буферных регистров 2 — 5 в буферные регистры 6 — 9.

Когда адрес данных не соответствует границе слова, т. е. код состояния двух младших разрядов адреса равен 01, 10 или 11, то первый продвигаемый байт данных располагается в соответствии с адресом в буферных регистрах 8, 7 или 6, для чего в блоке 1 управления каналом на выходах 32, 33 или 34 вырабатываются отрицательные сигналы, запрещающие продвижение байтов да нных соответственно в буферные регистры 9, 8 или 7. После заполнения необходимого количества буферных регистров, устанавливается на выходе 35 блока

1 отрицательный сигнал полного слова в бу5

З0

65 ферных регистрах 6 — 9, запрещающий продвижение байтов данных в регистры 6 — 9.

Запрос на микропрограммное прерывание для выполнения микропрограммы обслуживания данных при передаче в оперативную память полного слова вырабатывается при заполнении буферных регистров 7 — 9 и хотя бы одного буферного регистра 2 — 6, а при передаче неполного слова — при заполнении необходимого количества байтов в буферных регистрах 6 — 9. Микропрограмма обслуживания данных производит необходимую корректировку управляющего слова канала и по выходам

21 — 24 передачу байтов данных в оперативную память, после чего сбрасывает буферные регистры 6 †по выходу блока 1 управления каналом. Операция считывания в канале заканчивается, когда счетчик байтов становится равным количеству байтов в буферных регистрах

2 — 9.

Машинный такт процессора, в который входит предлагаемый канал, состоит из четырех основных тактовых спнхро импульсов (ТИь

ТИ, ТИз, ТИ4) и четырех задержанных тактовых синхроимпульсов (ТИ,, ТИ,, ТИ, ТИ,, ).

Рассмотрим работу буферных регистров при операции считывания (фиг. 2, 3, 4). По сигналу приема с входа 14 синхроимпульсом с входа 148 (ТИ, ) через элементы И 91, ИЛИ 133 устанавливается триггер 69 хранения буферного регистра 2, снимается сигнал с выхода 38 сброса буферного регистра 2, тем самым разрешая занесение байта данных с входа 14 через элементы И 161, ИЛИ 175 в буферный регистр 2. В конце такта синхроимпульсов с входа 149 (ТИ4) устанавливается через элемент

И 112 триггер 77 полного буферного регистра 2.

В следующем машинном такте, если код состояния двух младших разрядов адреса равен

00, синхроимпульсами с входов 146, 151 (THI или ТИ,, ТИ, или ТИ2) устанавливаются через элементы И 94, 98, 102, 105, 107, 109, 111 поочередно триггеры 70 — 76 хранения буферных регистров 3 — 9, снимаются поочередно сигналы с выходов 39, 41, 43, 45, 47, 49, 51 сброса буферных регистров, тем самым разрешая сдвиг байта данных с буферного регистра 2 в буферные регистры 3 — 9, если перед этим они были «пусты». Сдвиг байта данных осуществляется по управляющим сигналам с выходов 40, 42, 44, 46, 48, 50, 52, вырабатываемым блоком 10. Последующим тактовым синхроимпульсом с входа 147 (ТИ2) сбрасывается через элементы И 93, 96, 100, 104, 106, 108, 110 каждый предыдущий триггер хранения по последующему пустому буферному регистру, В конце такта синхроимпульсом с входа

149 (ТИ4) устанавливается через элемент И

130 триггер 84 полного буферного регистра 9 и сбрасывается через элемент И 113 триггер

77 полного буферного регистра 2. А если код состояния двух младших разрядов равсн 01, 570891

10, 11, то байт данных сдвигается соответственно до буферных регистров 9, 8, 7, так как на выходе блока 1 устанавливаются соответственно отрицательные сигналы с выходов

32, 33, 34, запрещающие установку последующего триггера 76, 75, 74 хранения и сброс предыдущего триггера 7, 74, 73.

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

6 — 9, устанавливается на выходе 35 блока 1 отрицательный сигнал полного слова, который запрещает установку триггера 73 хранения буферного регистра 6 и сброс триггера 72 хранения буферного регистра 5. Одновременно с установкой отрицательного сигнала с выхода

35 всегда устанавливается отрицательный сигнал с выхода 34.

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

Когда условия цепочки данных нет, то в конце микропрограммы обслуживания данных сбрасываются отрицательные сигналы с выходов 35, 34 и последующи е байты данных сдвигаются к буферным регистрам 6 — 9. Если условие зацепления по данным выполняется, то микропрограмма обслуживания данных не заканчивается, а сигнал с выхода 35 снимается и производится загрузка нового управляющего слова (адреса данных, счетчика байтов и других признаков) в канал, после чего осуществляется возврат к прерванной микропрограмме. Таким образом за время выполнения зацепления по данным следующий байт данных продвигается только до буферного регистра 7, так как отрицательный сигнал с выхода 34 остается включенным. После зацепления байты данных располагаются в буферных регистрах

6 — 9 в соответствии с состоянием младших разрядов в адрес данных.

При операциях записи отрицательные сигналы с выходов 32 — 35 не включатся и на работу блока 10 управления буферной памятью не влияют.

Блок 11 задания ускоренной работы буферной памяти(фиг. 5) работает следующим образом.

Когда освобождаются или свободны буферные регистры 6 — 9 и заполнены буферные регистры 4 и 5 в случае отсутствия отрицательного сигнала с выхода 34, то включается элемент И 187 и синхроимпульсом с выхода 36 (ТИ ) через элемент И 188 устанавливается триггер 181 передачи буферного регистра 4 в буферный регистр 8. А если заполнен буферный регистр 3, то через элемент И 189 одновременно устанавливается регистр 182 передачи буферного регистра 3 в буферный ре5

50 гистр 7. Таким образом в одном машинном такте производится сдвиг содержимого буферного регистра 5 в буферный регистр 9 и передача буферных регистров 4, 3 соответственно в буферные регистры 8, 7. Отметим, что передача буферного регистра 3 в буферный регистр

7 возможна только тогда, когда заполнены,регистры 4 и 5, а буферного регистра 4 в регистр 8, когда заполнен буферный регистр 5.

Указанные передачи буферных регистров позволяют быстрее освобождать буферные регистры 2 — 5 при операциях считывания и быстрее загружать эти же регистры в операциях записи или, другими словами, блок задания ускоренной работы буферной памяти включается в работу, когда устройство ввода «опережает» канал или когда канал «отстает» от устройства вывода. Поэтому при относительно малой скорости передачи данных в операциях считывания блок 11 не включается в работу вообще, а в операциях записи включается только в начале передачи блока данных, когда буферные регистры 6 — 9 не заполнены, после передачи байтов данных из оперативной памяти в буферные регистры 2 — 5.

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

34 блокирует включение элемента И 187.

На фиг. 6 представлена диаграмма работы канала при операции считывания в случае отсутствии блока 11 задания ускоренной работы буферной памяти в канале, а на фиг. 7 — с блоком 11. Внешнее устройство (ВУ) передает байты в канал со скоростью 650 кб/с. Длительность машинного такта равна 600 нс, длительность микропрограммы обслуживания данных — 6 тактам, время ожидания освобождения оперативной памяти — 4 тактам. Как видно из фиг. 6, канал не успевает очищать буферные регистры 6 — 9 и сдвигать байты с регистров 2 — 5 с такой скоростью передачи данных. Очевидно, что для обеспечения такой скорости канала необходимо было бы увеличить количество буферных регистров, что привело бы к увеличению оборудования, усложнению схемы счета байтов в буферных регистрах, усложнению схемы формирования запроса.

Введение блока 11 задания ускоренной работы буферной памяти позволяет увеличить пропускную способность канала ЭВМ ЕС-1022 с 500 — 550 кб/с до 650 — 700 кб/с при машинном также соответственно 600 — 650 нс. Этот же результат можно было бы получить введя в канал дополнительно два буферных регистра. Но это в свою очередь не увеличило бы более пропускную способ ность канала 650—

700 кб/с даже при сокращении микропрограммы обслуживания данных до цикла оперативной памяти (4 такта), что обеспечивает блок

11 задания ускоренной работы буферной памяти.

570891

Прп необходимости аналогичным образом можно сделать передачу буферного регистра 2 в буферный регистр 6.

Формула изобретения

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

2. Селекторный канал по п. 1, о т л и ч а юшийся тем, что блок задания ускоренной работы буферной памяти содержит два триггера, выходы которых подключены соответственно к первому и второму выходам блока, единичные входы — соответственно к выходам первого и второго элементов И, первые входы

10 которых соединены с выходом третьего элемента И, входы которого подключены соответственно через элементы НЕ к входам блока с первого по четвертый и к пятому, шестому и восьмому входам блока, девятый вход кото15 рого соединен с вторыми входами первого и второго элементов И, седьмой вход — с третьим входом первого элемента И, десятый вход — с нулевыми входами триггеров.

20 Источники информации, принятые во внимание при экспертизе

1. Патент США № 3400371, кл. 340 — 172.5, 1968.

2. Патент Великобритании № 1048525, кл. G

25 4А, 1966.

570891 л

1/,,

Ю,!

/ ..У J .. — ) ) )7

1 (5"

Г ) J

L. ф j

ФУ д /.,v - - — — —;- ++

77 !, —,- à I (— — a J

" 7! УТ

> г — !, 1

J . .,:— ,г:i!

-,-;т.гг 3 ч

/,7. Ф2 — г

570891

1@епопнеиио 6 конипе бтры юУ 0 1 2 Х Ф о 6 7 8 0 10

1 Z Р r/ 6 о 7 6 5 1011/2D/rr 15/617 1613202/22272УЛ2627

Rrrmr r

777

000

/йнропрогран/а ооаоухгидания донных оан юц ла

Л мю ,гоняла

diwmudy

0 1 2 У r/ 6 6 7 6 Я 10

1 2 У Ф,5 6 7 6 У /О 1/121714 /6 /6/7/8/0202/22272r/262627

Termer

2 2

222

/11

00

000

//ихропрогранна одояумидаданных

unumr ,/аняп/а

arran лала

Риг. 7

Составитель А. геренов

Техред И, Карандашова

Редактор И. Грузова

Корректор Л. Котова

Подписное

Типография, пр. Сапунова, 2

Заказ 1942/1 Изд. № 711 Тираж 818

НПО Государственного комитета Совета Министров СССР по делам изобретений и открытий

1!3035, Москва, /К-35, Раушская наб., д. 4/5

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

 

Похожие патенты:

Изобретение относится к измерительной технике и предназначено для определения плотности жидкости

Изобретение относится к устройствам телевизоров, имеющих формат изображения широкоэкранного соотношения сторон

Изобретение относится к различным вариантам схем автоматического переключения входного сигнала монитора

Изобретение относится к области компьютерной техники, преимущественно к ручному вводу данных в компьютер

Изобретение относится к области вычислительной техники, в частности к конструкции клавиатур для ввода информации

Изобретение относится к устройствам многоцелевых оптических клавиатур, представляющим широкое разнообразие вводов клавиш

Изобретение относится к осуществлению виртуальной реальности или телереальности

Изобретение относится к устройству и способу управления работой канала данных отображения (ДДС) монитора

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

Изобретение относится к вычислительной технике и может быть использовано в информационно-управляющих автоматизированных системах
Наверх