Селекторный канал
Иллюстрации
Показать всеРеферат
О Л И С А Н И Е
ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
Союз Советских
Социалистических
Республик (61) Дополнительное к авт. свпд-ву (22) Заявлено 03.05.73 (21) 1917986, 24 с присоединением заявки № (23) Приоритет
Опубликовано 30.06.76. Бюллетень № 24
Дата опубликования описания 06.08.76 (51) М. Кл.- зG 06Г 3, 04
G 06I. 15/00
Государственный комитет совета Министров СССР до делам изобретений и открытий (53) УДК, 681.385 (088.8) (72) Авторы изобретения
В. П. Качков, С.
В. И. Овсян (71) Заявитель (54) СЕЛЕКТОРНЫЙ КАНАЛ
Изобретение относится к вычислительной технике, в частности к организации структуры селекторных каналов ввода-вывода электронных вычислительных машин с микропрограммным управлением.
Известны селекто р ные каналы, содержащис олок сборки регистров канала, счетчик адреса данных, счетчик байтов, блок запросов на конечное зацепление,по данным, блок запросов на предварительное зацепление по данным, элемент «ИЛИ», блок управления канала, блок анализа конечного состояния, регистр приз иаков запросов и блок управления интерфейсом. Первый уравляющий выход последнего подключен к первому входу блока анализа конечного состояния, первый выход блока анализа — соответственно к первым управляющим входам блока запроса на конечное зацепление по данным, блошка запроса на предварительное зацепление по данным, элемента «ИЛИ» и |регистра приз иаков запросов. Информационные входы и выходы регистра признаков запросов, а также информационные входы и выходы блока управления, блока управления интерфейсом, счетчика адреса данных и счетчика байтов соединены соответственно с входными инфо рмационными,шинами устройства и соответствующими информационными входами блока сборки регистров, канала. Управляющий вход последнего, а также управляющие входы счетчика байтов, счетчика адреса данных, блошка управления интерфейсом, вторые уlIравляющие входы блока запроса на конеч5 ное зацепление по данным, блока запроса на предварительное зацепление по данным, блока анализа конечного состояния и регистров признаков подключены к соответствующим первым управляющим выходам блока управ10 ления канала, первый, второй и третий управляющие входы которого соединены соответственно с входными управляющими шинами устройства, вторым управляющим выходом блока управления интерфейсом и управ15 ляющим выходом счетчика адреса данных.
Первый управляющий выход счетчика байтов связан с третьим управляющим входом блока запроса на предварительное зацепление по данным, а второй управляющий выход счет20 чика байтов — с четвертым управляющим входом блока управления канала и третьим управляющим входом блока запросов на конечное зацепление по данным, выход которого подключен к второму входу элемента
25 «ИЛИ», пятому управляющему входу блока управления, канала и третьему управляющему входу регистра признаков запросов. Четвертый управляющий вход последнего соединен с вторым выходом блока анализа конеч30 ното состояния, информационные и другиЕ
519703 управляющие выходы и входы блока сборки регистров канала, счетчика адреса данных, элемента «ИЛИ», блока управления канала и блока управления интерфейсом подключены к соответствующим информационным и управляющим входам и выходам устройства.
Недостатком известных селекторных каналов является их невысокое быстродействие при использовании режима зацепления по данным.
Цель изобретения — увеличение быс продействия селекторного канала в различных режимах.
Это достигается тем, что предлагаемый селекторный канал дополнительно содержит блок анализа частоты запросов внешнего устройства и элемент «И», выход которого связан с третьим входом элемента «ИЛИ» и пятым у правляющим входом регистра признаков запроса, а первый и второй входы элементы «И» подключены соответственно к выходам блока запросов:на предварительное зацепление по данным и блока анализа частоты запросов внешнего устройства, аервый и второй входы которого соединены соответственно с первым управляющим выходом блока управления канала и вторым управляющим выходом блока управления интерфейсом. Это позволяет увеличить скорость передачи данных с использованием режима зацепл ения по данным.
Блок-схема селекторного канала представлена на чертеже, где 1 — селекторный канал; 2 — процессор; 3 — быстродействующие внешние устройства; 4 — оперативное запоминающее устройство; 5 — а рифметическо-логическое устройство; 6, 7 — входные информационные шины; 8 — выходные информационные шины; 9 — блок микропрограммного управления; 10 — блок сборки регистров каналов; 11 — счетчик байтов; 12 — счетчик адреса данных; 13 — блок запроса на конечное. зацепление по данным; 14 — блок запроса на предварительное зацепление по данным; 15— элемент «ИЛИ»; 16 — блок управления канала; 17 — блок а нализа конечного состояния;
18 — регистр .п ризнаков запросов; 19 — блок у1правления интерфейсом; 20 — элемент «И»;
21 — блок анализа частоты запросов внешнего устройства; 22 — выходные управляющие шины; 23 — выходные адресные шины.
Селекторный канал работает следующим обр азам.
Операция передачи данных начинается,по специальной команде процессора, которая задает адрес канала, и устройства ввода-вывода и при помощи специальных управляющих слов у казывает код команды, начальный адрес оперативной памяти, количество передаваемых байтов данных и другие управляющие признаки, которые располагаются в регистрах канала и в специальной памяти, образуя в совокупности управляющее слова ,канала. Передача управляющей информации
65 ботку конечного состояния, который через элемент «ИЛИ» 15 и соответствующую шину запроса группы выходных управляющих шин
22 поступает блок 9 микропрограммного управления процессора, По этому сигналу запроса в зависимости от состояния регистра признаков операции в блоке 16 управления канала, состояния устройства и канала, а та|кже причины, вызвавшей формирование этого запроса, в регистре
18,признаков запросов устанавливается код соответствующей микропрограммы обработки.
По сигналу запроса на обработку в,процессоре прерывается выполнение текущей микропрограммы после завершения очередного цикла «чтение-обработка-...-запись» и промежду .процессором 2 и регистрами селекторного канала 1 проводится через блок 10 сборки регистров каналов, входные информационные шины 7 арифметическо-логического
5 устройства, арифметическо-логическое устройство 5 и выходные информационные, шины 8 арифметическо-логического устройства.
Получив необходимую управляющую информацию, канал осуществляет начальную
10 выборку устройства 3 ввода-вывода через блок 19 управления интерфейсом и освобождает процессор для выполнения других команд.
В зависимости от кода операции, установленного в блоке 16 управления канала, значения счетчика 11 байтов, состояния буфера ,данных в блоке 19 управления интерфейсом, а также четности адреса данных блок 16 управления канала формирует признаки аппа20 ратной приостановки (передача одного, двух и т. д. байтов) и сигнал запроса на передачу данных, который через шину запроса на передачу данных группы выходных управляющих шин 22 поступает в блок 9 микропрог25 раммного управления процессора. По этому запросу работа процессора по выполнению текущей микропрограммы после завершения очередного цикла «чтение-обработка-...-запись» приостанавливается на цикл передачи
30 данных между оперативной памятью и .каналом. Так как слово оперативной, памяти машины, к которой подключен рассматриваемый канал, состоит из нескольких байтов, то в зависимости от признаков аппаратной при35 остановки под управлением блока 16 канала происходят передача одного, двух и других байтов между блоком 19 управления интерфейсом и оперативным устройством 4 по входным или выходным информационным
40 шинам 7 или 8 арифметическо-логического устройства соответственно, а также передача адреса данных по выходным адресным шиным 23, выработка управляющих сигналов для выполнения необходимых тактов «чте45 ния-записи», модифицирование адреса данных и счетчика байтов.
Когда канал заканчивает передачу данных, в блоке 17 анализа конечного состояния вырабатывается сигнал запроса на обра519703
5 водится переключение на специальный такт, в котором адрес следующей микрокоманды, которая должна была выполняться, запоминается в специальном регистре (регистре возврата адреса) и формируется начальный адрес обрабатывающей микропрограммы. Эта микропрограмма запоминает содержимое регистров процессора в специальной части оперативной памяти и далее по коду микпоп рогпяммы обработки, уста нов.пенному в регистре
18 признаков запросов, осуществляет переход к начальному адрес микропрограммы, обрабатывающей данный признак. Происходят необходимые действия (окончание операции ввода-вывода, зацепление по команде и т. д.) и записывается модифицированное или вновь сформированное (при зацеплении) управ,чяющее слово в специальную часть опепэтивной памяти. После этого содепжимое регистров процессора восстанавливается из специальной части оперативной памяти и выполняется прерванная микро программа. начиная с адреса микпокоманды, запомненного в регистре возврата.
Выполнение 1 казанной последовательности действий требует сравнительно много времени. Если канал рассматриваемого типа и зацепление по данным исполняет таким же обпазом, то он не может обеспечить зацепление по данным при номинальной скорости передачи данных межд внешним стройством и каналом. Следовательно, канал такого типа имеет предельную с корость передачи данных с использованием режима зацепления по данным ниже номинальной скорости передачи .данных без зацепления.
Скорость передачи данных с использованием зацепления может быть увеличена, если некоторчю часть .действий, связанных с подготовкой новой управляющей информации при зацеплении по даниным, выполнять предварительно. В предлагаемом канале это организовано след ющим образом.
На этапе передачи данных, когда канал заканчивает передачс блока данных и в регистре признако|в операции блока 16 vnp BBления канала казан признак зацепления по данным, в блоке 14 заппоса на предварительное зацепление по данным формир .ется запрос на обработк, в тот момент, когда каналу остается пе редать под управлением текущего управляющего слова канала такое количество байтов, на передачч которых каналу потреб .ется время, необходимое для того, чтобы: переключиться на специальный такт, учитывая максимальное время цикла
«чтение-обработка-...-запись»; запомнить содержимое регистров процессора в специальной части оперативной .памяти; прочитать из специальной памяти и сформировать в регистрах процессора адрес последующего управляющего слова канала.
Запрос на обработку предварительного зацепления по данным через элемент «И» ?0. элемент «ИЛИ» 15, соответствующую шин запроса группы выходных управляющих п|ин
22 поступает в блок 9 микроппограммного управления процессора. По этому сигналу в процессоре выполняются действия, с же описанные. причем в регистре 18 признаков заппосов станавливается код предварительного зацепления. Затем проводятся разгрузка содержимого регистпов процессора и формирование адгеса послед югцего .правчяющего слова канала и организуется цикл ожидания н левого значения содепжимого счетчика 11 байтов. При нулевом счетчике байтов в блоке
13 зяппося на конечное зацепление по данным выпабатывается сигнал непосредственного зацепления, который поступает в блок
16 правления канала, где по этом сигналу запрешае ся выработка запроса на передач данных и признаков аппаратной п риостановки. В пегистрпе 18 ппизнаков запросов станявливяется код непоспечственного (конечного) зяпепления Tlo данным, по которомч ос шеств ляется пепехоч непоспедственно к микпоппогпамме зацепления по данным. Эта микропрограмма загружает в регистры канала новое ппяв.чяющее слово канала, адрес которого подготовлен при предварительном зацеплении.
Пос å загрузки нового управляющего слова канала. микпопрогПамма зацепления по чанным сбпясывает сигнал запроса на конечное зяпепление по данным, тем самым пазпешяя пепедач данных под тправчением нового управляющего слова канала, и восстанавливает содержимое пегистров ппоцессора v специа,чьной части оперативной памяти. После этого продолжается выпо,чнение препв анной микр опрогр эммы.
В сл чае, если с"стройство ввода-вывоча заканчивает операцию передачи данных паныче, чем содержимое счетчика 11 байтов станет паечным и лю, то блок 17 анализа конечного состояния возбуждает соответствуютций сигнал запроса, котопый блокирует выработк сигнала запрося предварительного зацепления и в регистре 18 ппизна ков запросов тстянавливяется соответствующий код микпопрогпяммы обработки, по которомс из цикла ожи яния проводится переход к соответств ющей части обрябатываюгцей микропрогп а ммы.
Если канал имеет «механизм» предварительного зацепления, работаюший постоянно и независимо от частоты поступления запросов внешнего т стройства на передачу данных, то при подключении к такому каналу внешних устройств, имеющих сравнительно невысок ю скорость передачи данных (меньше предельной скорости передачи данных с зацеп,чениеM nо даHíûì без предварительного зацепления), предварительное зацепление останавливает процессор на сравнительно большое время, при этом удовлетворение заппосов других одновременно работающих каналов задерживается.
519703
20
Для уменьшения влияния предварительного зацепления на работу других каналов в предлагаемом канале имеется блок 21 анализа частоты запросов внешних устройств, который постоянно сравнивает частоту запросов на передачу данных работающих в канале внешних устройств с предельной скоростью передачи данных канала с использованием зацепления по да иным без предварительного зацепления. Если скорость передачи данных внешнего устройства превышает предельную скорость передачи данных канала с зацеплением, то на выходе блок анализа частоты запросов формируется сигнал, разрешающийй сформированному в блоке 14 запросу на предварительное зацепление через элемент «И» 20 выполнить последовательность действия, рассмотренную выше. Если же скорость передачи данных внешнего устройства равна или меньшей предельной скорости передачи данных с зацеплением по данным, то выходной сигнал блока анализа частоты запросов запрещает предварительному зап росу поступать в процессор. В этом случае выполняется обычное зацепление.
Формула изобретения
Селекторный канал, содержащий блок сборки регистров канала, счетчик адреса данных, счетчик байтов, блок занросов на конечное зацепление по данным, блок -,àïðoсов на предварительное зацепление по данным, элемент «ИЛИ», блок управления канала, блок анализа конечного состояния, регистр признаков запросов и блок управления интерфейсом, первый управляющий выход которого соединен с первым входом блока анализа конечного состояния, первый выход которого подключен соответственно к первым управляющим входам блока запроса на конечное зацепление по данным, блока запроса на предварительное зацепление по данным, элемента «ИЛИ», регистра признаков запросов, информационные входы и выходы которого, а также информационные входы и выходы блока управления, блока управления интерфейсом, счетчика адреса данных и счетчика байтов соединены соответственно с входными информационными, шинами устройства и соответствующими информационными входами блока сбор ки регистров канала, управляющий вход которого, а также управляющие входы счетчика байтов, счетчика адреса данных, блока управления интерфейсом, вторые управляющие входы блока запроса на конечное зацепление по данным. блока запроса на предварительное зацепление по данным, блока анализа конечного состояния и регистров признаков подключены к соответствуюшим первым управляк.щим выходам блока .прявленття канала, первый, второй и третий упрявляюптие входы которого соедииены соответственно с вхо. ными пр являю щими IUpíaìè устройства, вторым управляющим выходом блока управления интерфейсом и управляющим выходом счетчика адреI.a ДатлттттХ, ПЕРВЫЙ ЧРаВЛЯЮЩИй ВЫХОД СЧЕТтика байтов по, тклточен к третьему управляющемуу вход блока заппося на предварительное зацепление по данным, а второй правляющий выход счетчика байтов соединен с четвертым 3 прявляютцим входом блока правления к на,! я и третьим A.ттравляюпги UI входом блока зяпоосов на конечное зацепление по данным, выход котопого подключен к втором . вход элемента «ИЛИ», пятом х IInaUляютттемт вхо, . блока i, правления каwaла и третьei!x прявлятсщемт. вход |регистра признаков запросов, четвертый мпрявляющий вход котопого соединен с вторым выходом блока анализа конечного состояния, выход блока сбовки регистров канала соединен с первым выходом у-. чойства, выход счетчиЗо . ка адреса .таиных — с вторым, выходы элементя «ИЛИ» и б.пока тправления канала— с третьим и блока .пяв.лент я интерт1тейсом— ! с твертым вь ходом A.стройства, соответствлотцие входы о o. ".. правления канала, блока;ппавления т;нтерт1тейса. счетчика байтов и я,лреся данных соединены с первым ттхо. ом .стройства, соответствующий вход блока пров,летття каня".а соединен с вторым входом устройства, а вход блока управления
40 интеттт1тейса с тоетьим входом устройства, отлича ющийся тем, что, с целью vaeличения быстродействия, он дополнительно
СОдЕржнт бЛО К ".II aË.тяа ЧяетОтЫ ЗаПрОСОВ внешнего устройства и элемент «И», выход
45 кототтог оелттттен с тпетьим входом элеменTR «ИЛИ» и пятым управляющим входом регистраа Un! aU a Ko!I за пттосов, а первый рой вхолт>т .÷åìo!òòa < И» одклточены соответственно и вттходям блока запросов на
50 ппедварительное зацепление по данным и блока анализа частоты запросов в нешнего мстройствя, первый и в орой входы кото рого соединены соответственно с первым управ,!!IIIoU!IIII выходом блока управления канала
55 и вторым управляющим выходом блока управления интерфейсом.
519703
21 !
1 !
Г ! ! !
1 !
1 ! ! ! !
1 ! ! ! ! ! ! !
/ !
Составитель И. Хазова
Техред А. Камышникова
Корректор Н. Аук
В. Каширин
Редактор
Типография, пр. Сапунова, 2
Заказ !591/12 Изд. М 1481 Тираж 864 Подписное
ЦНИИПИ Государственного комитета Совета Министров СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская нао., д. 4 5