Устройство для обмена данными между группой каналов ввода вывода и оперативной памятью
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1278867
Авторы: Мазикин, Пронин, Пыхтин, Хамелянский
Текст
СОЮЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН 278867 4 0 06 Г 13/О ОСУДАРСТВЕННЫИ НОМИТЕТ СССР ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТ ЗОБРЕТЕНТЕЛ ЬСТВУ(56) Авторское свидетельство СССР У 1190385, кл. О 06 Г 13/00, 1984, (54) УСТРОЙСТВО ДЛЯ ОБМЕНА ДАННЫМИ МЕЖДУ ГРУППОЙ КАНАЛОВ ВВОДА - ВЫВОДА И ОПЕРАТИВНОЙ ПАМЯТЬЮ(57) Изобретение относится к вычислительной технике и может быть использовано при разработке процессоров, оборудование которых используется для передачи данных между каналами ввода - вывода и оперативной памятью. Целью изобретения является увеличение пропускной способности устройства за счет организации возможности присвоения любого приоритета ОПИСАНИЕ АВТОРСКОМУ СВ любому каналу ввода - вывода иэ группы на момент выполнения этим каналомоперации ввода - вывода в зависимостиот того, с каким периферийным устройством канал организует передачу данных. Это дает возможность смаксимальной эффективностью использовать менее приоритетные каналы засчет воэможности подключения к нимтех же периферийных устройств, которые могут подключаться к самому приоритетному каналу ввода - вывода.устройство содержит блок микропрограммного управления, входной и выходнойрегистры, две группы элементов И-ИЛИ,два элемента И, три триггера, дваэлемента И-НЕ, элемент ИЛИ, коммутатор, две группы регистров, блок управления, блок приоритета запросов,группу блоков согласования, группурегистров фиксации, регистр отбора,блок дешифрации приоритета. 9 ил.приоритетом одного чз запущенных ранее каналов ввода - вывода, то:если есть свободный более нысокийприоритет, то этот приоритет приснаинается вновь запускаемому каналу и 5выполнение команды ввода - выводапродалкается. стандартным образом;если все более высокие приоритетызаняты, то выполнение команды ввода -10вывода прекращается и Формируетсяпризнак результата, который говорито том, что канал занят. При этом запоминается условие, по которому после того, как канал ввода - вывода,приоритет которого оказался таким же,который требовался для вновь запус- .каемого канала, закончит начатуюсвязь со всеми периферийными устройствами, будет организовано повторноевыполнение команды ввода - вывода поранее неудачно запускавшемуся каналуввода - нывода,При повторном выполнении командыввода - вывода описанное микропрограммное назначение приоритетавновь запускаемому каналу ввода -вывода повторяется. Рассмотрим назначение приоритета для конкретногоканала ввода - вывода, В процессе выполнения команды ввода вывода в которой указывается номер канала (например, 3-й) й адрес периферийного устройства (например, 13-е), с которым канал должен свя 35 заться для организации передачи дан" ных, микропрограммно определяется приоритет 3-го канала, который необходимо ему установить, чтобы организовать правильную передачу данных между 3-м каналом и 13-м периферийным устройством, Для этой цели по микрокоманде, продешифрированной на де пифраторе 29 (сигнал с восьмого выхода дешифратора, который клапанирует по пятому входу элемент И-ИЛИ группы 36), с тринадцатого регистра 23 фиксации, принадлежащего 3-му каналу, считывается двухразрядный код, который через третий информационный вход 53, шестой вход элемента И-ИЛИ группы 36 стандартным образом через первый регистр 31, арифметико-логический узел 33, регистр 34 результата, второй управляющий выход 52 блока 1 микропрограммного управления, через коммутатор 14, первый информационный вход 39 блока 1 заносится в специальную ячейку (например, ячейку 1) местной памяти 30 и там запоминается.По следующеймикрокоманде, продешифрированной на дешифраторе 29 (сигнал с девятого выхода дешифратора 29, который клапанирует по седьмому входу рлемент И-ИЛИ группы 36), с регистра 24 выбора считывается восьмиразрядный код, который через второй групповой информационный вход 40, восьмой вход элемента И-ИЛИ группы 36 стандартным образом заносится в специальную ячейку (например, ячейку 2) местной памяти 30 и там запоминается.После считывания информации из регистра 23 фиксации и регистра 24 выбора микропрограммно выполняются анализы, необходимые для назначения соотнетствующего приоритета для 3-го канала, Для этой цели используется информация о том, какие каналы ввода - вывода из группы каналов запущены ранее и сколько периферийных устройств при этом запущено на каждом канале, Эта информация размещается в специальных ячейках местной памяти, например в ячейке 3, четыре тетрады которой, адресуемые по номеру канала (00 - тетрада для 1-го канала; 11 - тетрада для 4-го канала), используются для определения активности каждого канала в зависимости от того, с каким присвоенным приоритетом он работает (бит в тетраде с адресом ОО указывает, что канал работает с высшим приоритетом, бит в тетраде с адресом 11 - с. низшим приоритетом). Например, в ячейке 4, четыре бита (счетчика) которой определяют, сколько периферийных устройств по каждому каналу запущено, байт с адресом 00 - для 1-го канала, байт с адресом 11 - для 4-го канала.Предположим, что двухразрядный код, считанный из 13-го регистра 23 фиксации, равен 01, т.е. для 3-го канала необходимо назначить приоритет, равный 2. Прежде чем назначить 3-му каналу приоритет 2 необходимо определить, работает ли один из каналов группы каналов с этим приоритетом или нет, Для этой цели иэ ячейки 4, где хранится содержимое регистра 24 выбора, которое определяет, какой канал с каким приоритетом работает (нулевой и первый биты с адресацией ОО определяют высший приоритетканала,номер которого за 1278867 20писан в этих битах; шестой и седьмой биты с адресацией 11 определяют низший приоритет кайала, номер которого записан в этих битах), по адресу, который определяется приоритетом для .5 3-го канала, т.е, по адресу 01, выделяются второй и третий биты содержимого регистра 24 выбора. По этим битам, которые являются номером канала, из ячейки 2 местной памяти выбирается соответствующая тетрада, в которой анализируется бит активности, соответствующий приоритету 2, т.е. бит активности с адресом О 1.5В зависимости от результата анализа выполняются следующие действия.1. Канал, номер которого указан во втором.и третьем битах содержимого регистра 24 выбора, не работает. Выполняется анализ всех битов активности тетрады для 3-го канала.А. 3-й канал не работает. Во второй и третий биты регистра 24 выбора (ячейка 4 местной памяти) заносится номер вновь запускаемого канала 1 О, что говорит о том, что 3-му каналуприсвоен приоритет 2; в тетраде (ячейка 3 местной памяти) для 3-го канала бит по адресу 01 устанавливается в 1, т,е. 3-й канал становится активным по приоритету 2; в счетчик по адресу 10 (ячейка 4 местной памя- ти), принадлежащий 3-му каналу, до. бавляется 1, т,е. фиксируется, что по 3-му каналу запущено одно периферийное устройство.Б. 3-й канал работает, и его приоритет выше или равен приоритету вновь запускаемого 3-го канала, При 40 оритет 3-го канала не изменяется, В счетчик 3 (адрес 10) добавляется 1, т,е. фиксируется, что по 3-му каналу запущено еще одно периферийное устройство.В, 3-й канал работает, и его приоритет ниже приоритета вновь запускаемого 3-го канала, Приоритет канала устанавливается новый, Активность 3-го канала по старому приоритету снимается и устанавливается активность 3-го канала с присвоенным приоритетом 2, В счетчик 3 (адрес 1 О) добавляется 1, т.е, фиксируется, что по 3-му каналу запущено еще одно периферийное устройство.2. Канал, номер которого указан во втором и третьем битах содержимого регистра 24 выбора, работает, 3-й канал не работает. В этом случаеанализируется, есть ли свободные,более высокие приоритеты, в частностисвободен ли приоритет . Это выполняется путем анализа активности тогоканала, номер которого определяетсясодержимым нулевого и первого битоврегистра 24 выбора (ячейка 2 местнойпамяти),А. Ни один канал с приоритетомне работает, В нулевой и первый битысодержимого регистра 24 выбора заносится номер вновь запускаемого канала(10), что говорит о том, что З-му,каналу присвоен приоритет 1; в тетраде 3 по адресу 00 устанавливается битактивности 3-го канала, т,е. 3-й канал становится активным по приоритету 1; в счетчик 3-го канала добавляется 1, т.е, Фиксируется, что по 3-му,каналу. запущено одно периферийноеустроиство,Б, Один из каналов с приоритетом1 работает, Выполнение команды ввода - вывода прекращается, Микропрограммно формируется признак результата,который говорит о том,что по 3-муканалу 13-е периферийное устройствозапустить нельзя, Вместе с этим вместной памяти запоминается информация о том, что по 3-му каналу с приоритетом 2 выполнение команды вводавывода было безуспешным. Эта информация в дальнейшем анализируется каждый раз, когда один из каналов группы каналов ввода - вывода освобождается, Если канал, закончивший работу,имеет приоритет выше или одинаковый(в рассматриваемом случае приоритеты1 или 2), то по 3-му каналу микропрограммно формируется прерывание,по которому повторно выполняется попытка запуска 13-го периферийногоустройства по 3-му каналу. Информация, запомненная в местной памяти обезуспешной попытке запуска 13-гопериферийного устройства по 3-му каналу, при этом уничтожается.3. Канал, номер которого указанво втором и третьем битах содержимого регистра 24 выбора, работает,3-й канал также работает, В этомслучае анализируется установленныйприоритет для 3-го канала, Это выполняется путем выявления в тетраде3 адреса установленного бита активности 3-го канала (ячейка 3 местнойпамяти).Л, Для 3-го канала установлентакой же или более высокий приоритет,чем тот. который трР,Оуетс 51 для Вновьзяпттскаемеого 13-го периферийцоэ. оустройства по 3-му каналу. Б этом -"тслучае в тчетчик 3 (ггче лка 4 местнойпамяти) 3-го канала Добавляется 1,т.е. Фиксируе.ся, что по 3-му каналу запущее:о еще одно устройство.ь. Для 3-го кЯНЯЛЯ установлен ботОлее цтлзкий приоритет чеь тот которыи требуется дця вновь запускаемого13-го устройства по 3-му каналу. Анализируется, свобоцен ли более высокий15приоритет, чем тот, который требуется для вновь запускаемого 3 го канала (в рассматриваемом случае приоритет) Гтт 151 он свооодеп 3-му каналу перисваивдется приоритет 1, битактивности по более низкому приорите-20ту сбрасывается, а бит активности3-го канала В тетраде 3 по приоритету 1 устанавливается,ьсли приоритет 1 ЗЯнят ВыполцяРтся описдетньсц подпункт Б 2-го пункта.ПОО,па пртлсВОее 1 ия 3-му каналу ЕтужНОГО ПРИОРИ ПЕТЯ СОСтаРжИЬЕОЕ РЕГИСтРЯг 24 выбора из чейки 2 мРстной пам 51 ти 30 "тереписывдепся в регистр 24выбоэя, ПРзесыпкд Выполняется микропрограммно ста 1111 яртным образом черезЭЛЕМР Нт 11 .".ЕЕ 1 р Э(ППЫ 36 И ДЯЛ(ЗЕ ЧЕрсэптезвый регистр 31 .ЕрифметеЕко-логический узел 33, регистр 34 результата, .второи упэявля 1 пптий ветэсод .,2, .коммутатор 14, с выхода которого информация пс ситееяпу с десятого выходадесцифряторя 29 через выход 166 зане.сения записывается в регистр 24 ьы-.бора.ПОсле пэисвОРни 51 етужного приоэитета каналу ввода. - вывода и записи ин-.Формации в регистр 24 выбора и в сепучде возцтякцовения запросоэз от группыс, . 1-"- - 45 Есянялов ввода - вьевоца на обмен данными с оперативной памятью выбор ндибо- ЛЕЕ 1(РИОРИТЕтЦОГО ЦД ДаННЫй МОМЕЦт времени канала из гругпы каналов вытлолняется на мультиплексорах 1 з 9-152 путем подачи ца адрес.тьтй вход мультиплексора 49 по линиям 158 и 159 упРаЕЗЛЯЮЩИХ СнгпаЛОВ С НУЛЕВОГО т тЕЕР- вого выходов регистра 24 выбора, :ця адресный вход мультиплексора 150 по линиям 160 и 161 - с второго и третьего выходов регистра 24 выбора; на адресный вход мультиплексора 151 цо линиям 162 и 63 - с четвертого и пятого Выход 01 т регистз 11 24 выбозя ., Ня адресныи вход мультиплексора 52 по лициям 164 и 165 с пеестого и седьмого ВЕЕходов регис.тра 24 выбора.Таким образом, сигнал запрося с выхода мультиплексора 149 (линия 139) ЕтМЕЕт ВСЕГДа СЯМЬБ ВЫСОКИЙ ПРИОРИтЕт, д сигнал запроса с. Выходя мультиплекссэря Е 32 (лтцтия 1-т 2) имсРТ всеГда сд- г. ( /мый низкий приоритет.В блоке .18 приоритета запросов стандартным образам выбирается наиболее приоритетный запрос из всех запросов, выставленных группой каналов ввода - вывода, при геомоепи триггеров 130-133 и приоритетного шифратора 34. Прц ЭТОМ С ЕЕЕрвого И Втотзого ЕЗЫ хОдОВ приоэтл 1 ете 10 т 0 пиэтзяторд34 СНИМаЕТСЯ таСЭЕЕЕР От;НОГО ИЗ МЭЛЬТИПЛЕК- соров 149-152, сигнал запроса с выхода которого цд елоьеетгт приама запросов на триггеры 130-133 по сицхроьтмпульсу подсинхронизации, поступдюссего нд синхровходы триггеров 130-133 с синхровхода 21 э является самым приоритеттльгл.Для определения, какому кацалувво,ца - выведя принятле;кит самый приоритетный запрос, испо:Еьзуются двд мультиплекссрд 5: и )54 и депифратор 156, Пд пат;гьте вэссэды мупьтиплек- СорОВ 1 5 т Иэ 4 ътотля Етг 5 г т 0 Еттттн 511 158 и 159 с:Оответт:Т 11 ентто по.терКацаЛа, .ЕСОТОЭЬтй тЕОДавт Я Цд аДРЕСНЫЕ ,входы мульпиплексора 49, на вторыег гвходы мультицлс.кс эров 153 и 104 соотезетствсеццо номер того кяцялд, коТОРЫй П "ДаСЕтСЯ На ЯДРЕСНЬПт ВХОД МУЛЬ- типлексора тл т,д, Такитл образом, с выходов мультиплетссоров,53 и 154снимается помер ттэго канала, запроскотоэОГО нд дяетньтй момент ВремРниЯВЛЯСТСЯ СДМЫЬт гттЭтогЭЕЛгЕТЕЕт тм, ЭТОТ ЦОмер канала депп;фрнруется 1111:даЕееитээдтОрЕ 156 С ВЕЕХОПСЭВ тСОТОрОГО СНИМаЕТС 51 ОДИН ттЗ тИГНЯЛОБ ЗЯПЕЭОСД; С, ПСР - ,ВОГО ВЫХОтЕЯ - ДЛЯ ПЕРВОГО Канала, СВТОЗОГО ВЬЕХОДЯ ДЛ 5 т ВТОРОГО КангтЛЯИ т,д, ЭТИ ЗапРОСтя ЗЯЕЕОМИЕЕДЮТСЯ ГОсинхроимпульсу в регистре 135 хранения с вых 011 я кОтоэОГО зяп 1 эосьт поИНФОрМЯЦитЭННОМу ВЫХтздуэ,( цо СГ ЕЕЯЕОТВ бэз 101 с 17 управления и там обрабдтыЕзаетэтся стяццартцьтм Образстте,0 р м у л Я и 3 0 б э Р т Р ц и ЯУстройство д 51 я ОбЕтецд даетными ьте,-; -цу группой кандлоз ввода-вывода и23оперативной памятью по авт, св,9 1190385, о т л и ч а ю ш е е с ятем, что, с целью увеличения пропускной способности устройства за счеторганизации возможности присвоениялюбого приоритета любому каналу ввода-вывода из группы на момент выполнения этим каналом операции вводавывода, в него введены группа регистров фикбации, регистр выбора, блок 0дешифрации приоритета, причем выходырегистров фиксации группы соединеныс третьим входом логических условийблока микропрограммного управления,выход занесения которого соединен с 24входом записи регистра выбора, информационный вход которого соединен с выходом коммутатора, второй вход логических условий блока микропрограммного управления соединен с выходом регистра выбора и с информационным входом блока дешифрации приоритета, информационный выход которого соединен с информационным входом блока приоритета запросов, группа выходов запроса, группы управ-, ляющих входов и выходов которого соединены с группой входов запроса, группами управляющих выходов и входов блока дешифрации приоритета соответственно.11278867 17 2 оставитель С. Пестмалехред Л.Олейник Корректор А. 0 едактор Н. Тупи 671 Подписитвенного комитета СССРобретений и открытий Ж, Раушская наб., д. 4/5 Заказ 6840/ Проектная, 4 Производственно-полиграфическое 8 Тир ВНИИПИ Госудапо делам 113035, Москв иятие, г. Ужгород, 1278867Изобретение относится к вычислительной технике, может быть использовано при разработке процессоров, оборудование которых используется для передачи данных между каналами 5 ввода - вывода и оперативной памятью, и является усовершенствованием устройства по авт. св. У 1190385.Цель изобретения - увеличение про 10 пускной способности устройства за счет организации возможности присвоения любого приоритета любому каналу ввода - вывода иэ группы на моментвыполнения этим каналом операции ввода- вывода в зависимости от того, с каким периферийным устройством канал организует передачу данных.Ввведение в устройство для обмена данными между группой каналов ввода - вывода оперативной памятью группы регистров Фиксации позволяет задавать для каждого канала ввода - вывода такой приоритет, который определяется тем периферийным устройством, 25 с которым канал ввода - вывода организует связь.Разрядность регистра фиксации определяется количеством каналов в группе. Например, для четырех каналов в группе регистр Фиксации должен содержать два разряда.Максимальное количество регистров Фиксации, которое должно быть в каждом канале, в общем случае определяется количеством периферийных устройств, которое может быть подключенр к каналу ввода - вывода. Однако ко-, личество регистров фиксации может быть значительно уменьшено, если один 40 регистр фиксации использовать для группы периферийных устройств со смежными адресами, быстродействие которых по обмену данными с каналом вво-да - вывода составляет один порядок 45ВвеДение в устройство регистра выбора дает возможность выбора самого приоритетного канала с целью организации передачи данных в первую очередь между этим каналом и оператив 50 ной памятью.Разрядность регистра выбора определяется разрядностью регистра фиксации и количеством каналов ввода - вывода в группе, Например, для четы 55 рех каналов ввода - вывода в группе регистр выбора должен содержать восеьр- вазрядов. Введение в устройство блока дешифрации приоритета позволяет выбрать самый приоритетный канал для организации передачи данных между этим каналом и оперативной памятью.На фиг, 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 устройства, группу информационныхвходов - выходов 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 блока, ад 1278867ресный выход 46 блока, первый информационный выход 47 блока, с первогопо третий управляющие выходы 48-50блока соответственно, выход 51 выборки блока, второй информационный выход 5 52 блока, третий информационный вход53 блока.Блок управления (фиг, 3) содержит триггер 54 передачи данных, группутриггеров 55 и 56 передачи данныхканалов, первую группу элементов И57 и 58, второй 59 и первый 60 элементы ИЛИ, первый 61 и второй 62 элементы И, элемент НЕ 63, триггер 64запроса передачи данных, триггер 65первого цикла передачи, триггер 66промежуточного. цикла передачи, триггер 67 второго цикла передачи, группу триггеров 68 и 69 второго циклапередачи каналов, вторую группу элементов И 70 и 71, группу элементов 15 20 И-ИЛИ-НЕ 72 и 73, первый 74 и второй 80, вторую 81, третью 82 и четвертую 83 группы входов блока, первый 84 ивторой 85 входы блока, с первого попятый входы 86-90 блока соответственно, с первой по третью группы выходов 91-93 соответственно. Блок согласования (фиг. 4) содер,жит регистр 94 данных, буферную память 95 данных, триггер 96 обращения интерфейса, триггер 97 выборабуфера интерфейса, счетчик 98 адреса байтов, триггер 99 выбора буферапроцессора, триггер 100 номера слова, счетчик 01 двойных слов, первый102 и второй 103 узлы. синхронизации,коммутатор 104 узел 105 обмена поинтерфейсу, триггер 106 занятостирегистра данных, триггер 107 занятости группы регистров, регистр 108 кодаоперации, дешифратор 109, первую 110и вторую 111 группы элементов И-ИЛИ,с первого по шестой элементы И-ИЛИ112-117 соответственно, элемент ИИЛИ-НЕ 118, первый 119 и второй 120информационные входы блока, информационный вход - выход 121 блока, вход122 разрешения блока, синхровход 123блока, информационный выход 124 блока, первый 125 и второй 126 синхровыходы блока, выход 127 запроса блока, выход 128 записи блока, выход 129чтения блока,75 элементы И-ИЛИ, первую группуэлементов И-ИЛИ 76 и 77, вторую груп 25пу элементов И-ИЛИ 78 и 79, первую Блок приоритета запросов (фиг, 5)содержит с первого по четвертый триггеры 130-133 соответственно, приоритетный шифратор 134, регистр 135 хранения, информационный вход 136 и вы-,ход 137 блока, групповой управляющийвход 138 блока, через который по линиям 139-142 информационные входытриггеров 130-33 соединены соответственно с входом 138 блока, группо вой управляющий выход 143; с которымпервый, второй и третий выходы при"оритетного шифратора соединены соответственно линиями 144-146, групповойвход -147 запросов и групповой выход148 запросов блока.Блок 18 приоритета запросов работает следующим образом. Группу запросов, принятую из группы блоков 19согласования на групповой вход 147запросов блок 18 приоритета запросовтранслирует йа групповой выход 148запросов блока.Группа приоритетных сигналов, поступающая с группового входа 138блока на информационные входы триггеров 130-133, устанавливает эти триггеры в соответствующие состояния,Причем сигнал, поступающий по линии 39на информационный вход триггера 130,является самым приоритетным. Так каксигналы, снятые с группового управляющего входа 38 блока, поступаютасинхронно на информационные входытриггеров 130-133, то для одновременной установки этих триггеров используется подсинхронизация путем подачина синхровходы триггеров 30-133синхроимпульса с синхровхода 21 блока. Выходы триггеров 30-133 подключены к входам (с первого по четвертый) приоритетного шифратора 134, напервом 144 и втором 145 выходах которого формируется двухразрядный код,который является адресом самого приоритетного сигнала четырехразрядногослова, которое поступает на входытриггеров 130-133,Например, если триггер 130 установлен, то с первого и второго выходов приоритетного шифратора по линиям 144 и 145 будет выдан код 00, т,е.адрес первого разряда четырехразрядного слова. Если ни один триггер 130133 не введен, то возбуждается третийвыход приоритетного шиуратора по линии 146, что говорит о том, что ниодин триггер 130-133 не взведен. Ре 1278867гистр 135 хранения используется дляприема соответствующим синхроимпульсом с синхровхода 21 информации, поступающей с информационного входа136 блока, и выдачи информации с выхода регистра 135 хранения на информационный выход 137 блока,Блок дешифрации приоритета (фиг,б)содержит шесть мультиплексоров 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 управления.Устройство работает следующим образом.Имеется блок 19 согласования, буФерная память 95 данных, которая имеет две зоны заполнения данными, Емкость каждой из зон соответствуетразрядности оперативной памяти. В 5рассматриваемом случае она равна,двойному слову. Дирина разрядностибуферной памяти соответствует разрядности информационного тракта процессора, который в рассматриваемом случае равен одному слову и через тракты которого канал обменивается данными с оперативной памятью.Код операции, выполняемой блоком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 обращения интерфейса. Если триггер 96 обращения интерфейса сброшен, то выполнение обмена данными между буфернойпамятью данных и группой регистровадресации, буферной памятью до эоныдвойного слова происходит с помощьютриггера 99 выбора буфера процессора,а до слова - с помощью триггера 100номера слова. Триггер 100 номера слова во время передачи двойного словапереключается. Если триггер 96 обращения интерфейса установлен, то можетвыполняться обмен между буферной памятью 95 данных и регистром 94 дан- .ных, При этом адресация зоны происходит с помощью триггера 97 выбора буфера интерфейса, а слова и байтавнутри слова - с помощью трехразрядного счетчика 98 адреса байтов, Двухразрядный счетчик 101 двойных словуказывает количество двойных слов вбуферной, памяти 95 данных. Во времяоперации записи он показывает количество незаполненных двойных сновв буферной памяти 95 данных, во времяоперации чтения - количество заполненных двойных слов, В начале операции записи счетчик устанавливаетсяна "2" (два двойных слова не эаполнено) и во время передачи двойногослова из групп 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, с выхода второго микрокоманда поступает на входрежима блока 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)работы устройства для обмена даннымимежду группой каналов вМОда - выводаи оперативной памятью для выполнениямикрокоманды "Память" при обращениик ней процессора приняты следующиеобозначения: д - синхронизация; оприем в первый регистр 31 адресаоперативной памяти; Ь- прием двойного слова данных в выходной регистр 4; 5запись в местную память 30 модифицированного адреса оперативнойпамяти; д - выдача первого словаданных с первой группы 5 элементовИ-ИЛИ; р - выход третьего триггера 9;. 0с - выдача второго слова данных спервой группы 5 элементов И-ИЛИ;управление коммутатором 14 на выборданных из оперативной памяти; и - запись первого слова данных; к - записьвторого слова данных,Устройство для обмена данными между группой каналов .ввода - вывода игоперативной памятью для выполнениямикрокоманды "Память" при обращениик ней процессора работает следующимобразом. Из памяти 26 микрокомандблока 1 микропрограммного управленияпо адресу из регистра 27 адреса через25первую группу 35 элементов И-ИЛИ врегистр 28 микрокоманд заносится микрокоманда, поступающая на дешифратор29, с седьмого выхода которого вместную память 30 подается адрес, покоторому на первый регистр 31 считывается адрес данных оперативной памяти, который через адресный выход46 блока 1 микропрограммного управления подается на адресный выход оперативной памяти. Двойное слово данных35из оперативной памяти заносится в выходной регистр 4, из которого с помощью первой группы 5 элементов И-ИЛИна коммутатор 14 подается первое сло во данных,Управление выбором нового словаосуществляется первым элементов И-НЕ8 по установленному первому триггеру 7, который устанавливается черезпервый элемент И 6, по младшему битуадреса двойного слова из первогорегистра 31 блока 1 микропрограммного управления, Адрес данных оперативной памяти подается также наарифметико-логический узел 33, гдеон модифицируется и через регистр34 результата и коммутатор 14 записывается в местную память 30. Послеэтого управление коммутатором 14 повыходу второго элемента И 13 переключается на выбор первого слова данныхиз оперативной памяти. После записипервого слова данных по второму выходу дешифратора 29 блока 1 устанавливается третий триггер 9, который инверсным выходом на первом элементе И 6 изменяет младший бит адреса оперативной памяти, который запоминается в конце выполнения микрокомацды "Память" на первом триггере 7 и через первый элемент И-НЕ 8 изменяет управление первой группы 5 элементов И-ИЛИ на выдачу второго слова данных из выходного регистра 4 на коммутатор 14, а прямой выход третьего триггера 9 управляет передачей этого слова данных через коммутатор 14 на фоне выполнения следующей микропрограммы,На временной диаграмме (фиг, 8) работы устройства для обмепа данными между группой кацапов ввода - вывода и оперативной памятью для выполнения апларатурно сформированной микро- команды Память" считывания из оперативной памяти приняты следующие обозначения: а - синхронизация; 8 - выход триггера 65 первого цикла передачи; б - выход триггера 66 промежуточного цикла передачи; г - выход триггера 67 второго цикла передачи; д - прием в первый регистр 31 адреса оперативной памяти и счетчика байтов; е - прием двойного слова данных ввыходной регистр 4; эю - выдача первого слова данных с первой группы 5элементов И-ИЛИ;- выдача второгослова данных с первой группы 5 элементов И-ИЛИ;,ч - выход второго триггера 11; к - управление коммутатором14 на выбор данных из оперативной памяти; л - запись в местную память 30модифицированного адреса оперативнойпамяти и счетчика байтов; м - стробпервой группы 15 регистров; и - стробвторой группы 16 регистров,Устройство для обмена данными между группой каналов и оперативной памятью для считывания данных из оперативной памяти в первую 15 и вторую .16группы регистров работает следующимобразом. Из блока 17 управления вблок 1 микропрограммного управленияв регистр 28 микрокоманд заноситсяаппаратурно сформированная микрокоманда, которая поступает на дешифратор 29, с седьмого выхода которогов местную память 30 подается адрес,по которому на первый регистр 31 впервом цикле памяти считывается адпес данных оперативной памяти, кото 1278867134рый подается на адресный вход оперативной памяти и на арифметико-логический узел 33, на котором он модифицируется, Из оперативной памяти в выходной регистр 4 считывается двой ное слово данных, Младший бит адреса оперативной памяти, адресующий первое слово данных из первого регистра 31 блока 1 через первый элемент И 6, устанавливает первый триггер 7, котоЮ рый через первый элемент И-НЕ 8 управляет выбором на первой группе 5 элементов И-ИЛИ первого слова данных, которое поступает на коммутатор 14, С выхода триггера 54 передачи данных5 блока 17 управления на информационный вход второго триггера 11 подается сигнал, который устанавливает этот триггер в начале первого цикла микро- команды "Память". Второй триггер 11 управляет передачей через коммутатор 14 первого слова данных оперативной памяти, которое проходит через вторую группу 20 элементов И-ИЛИ под управлением выхода записи блока 19 согласования и через первую группу 15 регистров, так как на синхронизирующий вход подается постоянный строб и защелкивается во второй группе 16 регистров по стробу, сформированному на первой группе элементов И-ИЛИ 76 и 77 блока 17 управления по сигналам с выхода группы триггеров 55 и 56 передачи данных каналов триггера 67 второго цикла передачи и синхросигна ла.Из местной памяти 30 блока 1 микропрограммного управления во втором цикле памяти на первый регистр 31 40 считывается счетчик байтов, который указывает то количество байтов, которое осталось передать из оперативной памяти в каналы. Счетчик байтов передается на арифметико-логический узел 33, на котором он модифицируется, После сброса второго триггера 11 управление коммутатором 14 переключается на выдачу из регистра 34 результата модифицированного адреса, кото 50 рый записывается в местную память 30. Затем на втором элементе И-НЕ 10 по сигналу с выхода триггера 67 второго цикла передачи блока 17 и сигналу с синхровхода 21 устройства вырабатывается сигнал, который поступает на второй вход первого элемента И-НЕ 8 и инвертирует выходы этого элемента. Таким образом, первая группа 5 элементов И-ИЛИ выбирает второе словоданных, которое через коммутатор 14под управлением сигнала с выхода второго элемента И 13 поступает черезвторую группу 20 элементов И-ИЛИ напервую группу 15 регистров, где онои защелкивается по стробу, сформированному на второй группе элементовИ-ИЛИ 78 по сигналам с выхода группытриггеров 55 и 56 передачи данныхканалов, синхросигнала и сигнала с,выхода группы триггеров 68 и 69 второго цикла передачи каналов, Записьмодифицированного счетчика из регистра 34 результата блока 1 в местнуюпамять 30 выполняется на фоне выполнения следующей микрокоманды,На временной диаграмме (фиг, 9)работы устройства для обмена даннымимежду группой каналов ввода - выводаи оперативной памятью для выполненияаппаратурно сформированной команды"Память" записи в оперативную памятьприняты следующие условные обозначения: ц - синхронизация; о - выходтриггера 65 первого цикла передачи;Ь- выход триггера 66 промежуточногоцикла передачи; г " прием в первыйрегистр 31 адреса оперативной памя"ти; д - прием во второй регистр 32данных из второй группы 16 регистров;е - прием данных чо входной регистр2; лс- строб второй группы 16 регистров;- запись в оперативнуюпамятьУстройство для обмена даннымимежду группой каналов ввода - выводаи оперативной памятью для записиданных из первой 15 и второй 16 группрегистров в оперативную память работает следующим образом. Со второгоинформационного выхода группы 16регистров в блок микропрограммногоуправления во второй регистр 32 через вторую 36 группу элементов И-ИЛИпод управлением сигнала с выходатриггера 54 передачи данных блока 17управления принимается первое словоданных по стробу с выхода первогоэлемента И-ИЛИ 74 блока 17 управле-.ния, который перерабатывается посинхросигналу, После приема первогослова во второй регистр 32 блока 1данные через первый информационныйвыход 47 блока 1 подаются на входнойрегистр 2, где они принимаются постробу, сформированному на второмэлементе И-ИЛИ 75 блока 17, которыйвырабатывается по синхросигналу и третьему управляющему выходу блока 1,После приема первого слова данных во входной регистр 2 второе слово данных из первой группы 15 регистров 5 переписывается во вторую группу 16 регистров по стробу с выхода первой группы элементов И-ИЛИ 76 и 77 блока 17 сформированного по сигналам с выхода группы триггеров 55 и 56 пеЮ редачи данных каналов триггера 65 первог цикла передачи и синхросигнала. С выхода второй группы 16 регистров второе слово данных записывается во второй регистр 32 блока 1 через вторую группу 36 элементов И-ИЛИ по стробу с выхода первого элемента И-ИЛИ 74 блока 17, сформированного по сигналам с выхода триггера 54 передачи данных, триггера 6520 первого цикла передачи и синхросигнала, С выхода второго регистра 32 бло ка 1 второе слово данных поступает на входной регистр 2, на котором оно защелкивается по стробу с выхода второго элемента И-ИЛИ 75 блока 17, 1 сформиронанного по сигналам с выходатриггера передачи данных и синхронизирующему сигналу. Из местной памяти 30 блока 1 считывается адрес, который через первый регистр 31 передается на адресный выход оперативной памяти. По первому выходу дешифратора 29 блока 1 на элементе И 37 вырабатывается строб записи в оперативную память, который подае:ся в оперативную память 3.Устройство для обмена данными между группой каналов ввода. - вывода и40 оперативной памятью для выбора и назначения соответствующего приоритета каналу ввода - выводаиз группы каналов, выставивших запросы на организацию передачи данных между груп 45 пой каналов и оперативной памятью, работает следующим образом. При подключении определенной конфигурации периферийных устройств к группе каналов ввода-вывода на группе регистров 23 фиксации вручную,(или каким-либо другим способом) при помощи коммутационных переключателей для каждого периферийного устройства, подключенного к соответствующему каналу ввода- вывода, устанавливается информация,55 которая в рассматриваемом случае характеризуется двухразрядным словом и которая определяет приоритетность канала ввода-вывода, если этот канал организовывает связь для обмена байтами данных с периферийным устройством. Например, если принять в качестве приоритета 1 (высший приоритет) комбинацию двух разрядов слово 00, а в качестве приоритета 4 (низший) 11, тогда если для связи периферийного 6-го устройства с адресом с 1-м каналом высший приоритет необходим по отношению к другим каналам из группы каналов, то в шестнадцатом двухразрядном регистре 23 фиксации, принадлежащего 1-му каналу, фиксируется двухразрядный код 00. Это значит, если 1-й канал начинает связь для обмена данными с периферийным 16-м устройством, то для 1-го канала устанавливается высший приоритет.Установка соответствующего приоритета для любогоканала ввода - вывода. из группы каналов выполняется следующим образом, В процессе выполнения команды ввода - вывода до организации логической связи канала с периферийным устройством) микропрограммным путем определяется приоритет того канала, по которому необходимо выполнить команду ввода - вывода,и анаг.изируются установлечные приоритеты всех ранее запущенных каналов из группы каналов ввода - вывода, которые еще не закончили связь с периферийными устройствами.Если приоритет вновь запускаемого канала не пересекается с приоритетами ранее запущенных каналов, то:если приоритет вновь запускаемого канала свободен и если этот канал не работает, приоритет для данного канала присваивается и выполнение команды ввода - вывода продолжается стандартным образом;если приоритет вновь запускаемого канала ниже или равен приоритету этого же ранее запущенного канала, то старый приоритет этого канала сохраняется ивыполнение командыввода -вывода продолжается стандартным образом.если приоритет вновь запускаемого канала вьппе приоритета этого же ранее запущенного канала, то для данного канала устанавливается новый приоритет и выполнение команды ввода - вывода продолжается стандартным образом.Если приоритет вновь запускаемого канала ввода - вывода пересекается с
СмотретьЗаявка
3908709, 07.06.1985
ПРЕДПРИЯТИЕ ПЯ М-5339
ПРОНИН ВЛАДИСЛАВ МИХАЙЛОВИЧ, ПЫХТИН ВАДИМ ЯКОВЛЕВИЧ, МАЗИКИН БОРИС ВИКТОРОВИЧ, ХАМЕЛЯНСКИЙ ВЛАДИМИР СЕМЕНОВИЧ
МПК / Метки
МПК: G06F 13/00
Метки: ввода, вывода, группой, данными, каналов, между, обмена, оперативной, памятью
Опубликовано: 23.12.1986
Код ссылки
<a href="https://patents.su/17-1278867-ustrojjstvo-dlya-obmena-dannymi-mezhdu-gruppojj-kanalov-vvoda-vyvoda-i-operativnojj-pamyatyu.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для обмена данными между группой каналов ввода вывода и оперативной памятью</a>