Устройство для сопряжения центрального процессора с группой арифметических процессоров

Номер патента: 1254495

Авторы: Михнов, Петров, Степанов, Шаляпин

ZIP архив

Текст

СОЮЗ СООЕТСНИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИК А 1 С 06 Р ИОАННЕ ИЗОБРЕ К АЮТОРСИ е НТРИФМЕ вычислиисполь ГОСУДАРСТОЕКНЫЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ(54) УСТРОЙСТВО ДЛЯ СОПРЯГРАЛЬНОГО ПРОЦЕССОРА С ГРУПП(57) Изобретение относитсятельной технике и может быт зовано при построении высокопройзводительных вычислительных систем в качестве средства для сопряжения центрального процессора с арифметическими процессорами. Целью изобретения является повышение быстродейстия вычислительной системы за счет обеспечения переключения вычислительных операций с программных на аппаратные средства и наоборот. Устройство содержит блок управления, регистр возврата в программу, регистр кода операции, регистр диагностического перехода, регистр адреса, регистр номера, блок памяти, узел сравнения, дешифратор, два триггера, два элемен .та ИЛИ, два элемента И. 1 з.п.ф-лы, 12 ил., табл.1254417врата в программу, регистр адреса, блок памяти, регистр кода операции, регистр номера, регистр диагностического перехода, узел сравнения, два триггера и два элемента ИЛИ, причем вход чтения регистра возврата в программу соединен с первым входом логического условия блока микропрограммного управления и подключен к выходу чтения центрального процессора, 1 О вход записи регистра возврата в программу соединен с вторым входом логического условия блока микропрограммного управления, первым входом первого элемента ИЛИ и подключен к выхо ду подтверждения захвата центрального процессора, выход первого триггера соединен с третьим входом логического условия блока микропрограммного управления и подключен к входу запроса захвата центрального процессора, выход второго триггера подключен к входу готовности центрального процессора, выход узла сравнения соединен с четвертым входом логического условия блока микропрограммного управления, первым входом второго элемента ИЛИ, первым входом установки регистра возврата в программу и подключен к входу сброса центрального процессора, вход записи блока памяти подключен к выходу записи центрального процессора, первый вход узла сравнения соединен с входом чтения блока памяти и подключен к вы 35 ходам неисправности арифметических процессоров группы, пятый вход логического условия блока микропрограммного управления подключен к выходам конца выполнения операции арифме- тических процессоров группы, первый выход блока микропрограммного управления подключен к входам запуска арифметических процессоров группы, второй выход блока микропрограммного45 управления соединен с входом записи регистра кода операции и подключен к входам "Команда/данные" арифметйческих процессоров группы, первый информационный выход регистра возврата в программу, информационные выходы регистра кода операции, регистра ди- агностическогЬ перехода и информационные входы блока памяти подключены к информационному входу-выходу центрального процессора, информационным входам-выходам арифметических процессоров группы и информационному. входу"выходу внешней памяти программ,95 18информационные входы регистра возврата в программу, регистра диагностического перехода, первый информационный выход регистра адреса и адресный вход блока памяти подключенык адресному выходу центрального процессора и адресному входу внешнейпамяти программ, второй информационный выход регистра возврата в программу подключен к входу разрешениявыборки внешней памяти программ, третий выход блока микропрограммногоуправления соединен с первым входомчтения регистра адреса, с вторым вхо"дом первого элемента И и подключенк входу записи внешней памяти программ, четвертый выход блока микропрограммного управления соединенс вторым входом чтения регистра адреса и подключен к входу чтения внешнейпамяти программ, при этом пятый выходблока микропрограммного управлениясоединен с единичным входом первоготриггера, нулевой вход которого соединен с шестым входом логическогоусловия блока микропрограммногоуправления, с вторым входом второгоэлемента ИЛИ, с входом записи регистра адреса, с входом разрешения регистра возврата в программу, с входом записи регистра номера, с входомзаписи регистра диагностического перехода, с установочным входом регистра кода операции и первым информационным выходом блока памяти, второйинформационный выход которого соединен с информационными входами регистра кода операции, регистра номераи регистра адреса, второй информационный вход которого соединен с седьмым входом логического условия блокамикропрограммного управления, шестойвыход которого соединен с вторым входом второго элемента И, информационный выход регистра номера соединенс информационными входами дешифрато-.ра, разрешаюЩий вход которого соединен с седьмым выходом блока микропрограммного управления, восьмой выходкоторого соединен с входом чтениярегистра диагностического перехода,второй вход узла сравнения. соединенс выходом дешифратора, девятый выходблока микропрограммного управлениясоединен с вторым входом установкирегистра возврата в программу ис вторым входом первого элемента ИЛИ, выход которого соединен с единичным входом второго триггера, ну20 495 19 1254 левой вход которого соединен с выходом второго элемента ИЛИ.2, Устройство по и. 1, о т л и ч а ю щ е е с я тем, что блок микропрограммного управления содержит па 5 мять микрокоманд, регистр микрокоманд, счетчик микрокоманц, два триггера, счетчик, дешифратор, генератор импульсов, элемент задержки, восемь элементов И, элемент ИЛИ, элемент И ИЛИ, элемент НЕ, причем первый вход первого элемента И соединен с тактовым входом дешифратора и является первым входом логического условия блока, первый вход второго элемен" та И является вторым входом логического условия блока, второй вход первого элемента И является третьим входом логического условия блока, синхровход счетчика микрокоманд соединен с первым входом третьего элемента И и является четвертым входом логического условия блока, первый вход элемента И-ИЛИ является пятым входом логического условия блока, единичный вход первого триггера соединен с нулевым входом счетчика микрокоманд и является шестым входом логического условия блока, второй вход элемента И-ИЛИ является седьмьм входом логического условия блока, первый, вто" рой,третий, четвертый и пятый выходы регистра микрокоманд являются пер.вым, вторым, пятым, шестым, седьмым выходами блока соответственно, выходы четвертого и пятого элементов И явля- З 5 ются третьим и четвертым выходами блока соответственно, шестой выход регистра микрокоманд соединен с нулевым входом первого триггера и является девятым выходом блока, первый,40 второй и третий выходы дешифратора образуют восьмой выход блока, при этом в блоке микропрограммного управления первый выход дешифратора соединен с входом элемента задержки, выход которого соединен с. нулевым входом счетчика и третьим входом элемента И-ИЛИ, выход которого соединенс первым входом элемента ИЛИ, выходкоторого соединен с первым входомшестого элемента И, выход которогосоединен с вторым входом третьегоэлемента И, выход которого соединенсо счетным входом счетчика микроко.манд, выход которого соединен с адресным входом памяти микрокоманд,информационный выход которой соединен с информационным входом регистрамикрокоманд, седьмой и восьмой выходыкоторого соединены соответственнос единичным и нулевым входами второго триггера, выход которого соединенс вторым входом второго элемента И,выход которого соединен с четвертымвходом элемента И-.ИЛИ, пятый, шестой,седьмой и восьмой входы которого соединены с девятым выходом регистрамикрокоманд и входом элемента НЕ, выход которого соединен с вторым входом элемента ИЛИ, второй вход шестого элемента И соединен с выходом седьмого элемента И, первый вход которогосоединен с первым входом восьмогоэлемента И, с выходом первого триггера и с третьим входом первого элемента И, выход которого соединен со счетным входом счетчика, выход которогосоединен с информационным входом дешифратора, первый и второй выходыгенератора импульсов соединены соответственно с вторыми входами седьмого и восьмого элементов И, выходвосьмого элемента И соединен с первыми входами четвертого и пятого элементов И и с входом записи регистрамикрокоманд, десятый и одиннадцатййвыходы которого соединены с вторымивходами четвертого и пятого элементов И соответственно.Заказ 4722/5 е ственно-полиграфическое предприятие, г,ужг ул.Проектная, 4 Прои Ъгпассг Ж сР 7 гФ Гт 4 лгк чжин оллю юга НИИПИ по 1303Тираж 671осударственного комилам изобретений и оМосква, Ж, Раушс Подписета СССрытийя наб3 125449 Изобретение относится к вычисли= тельной технике и может быть исполь зовано при построении высокопроизводительных вычислительных систем (ВС) в качестве средства для сопряжения центрального процессора (ЦП) с арифметическими процессорами (АП).Цель изобретения - повышение быстродействия работы ВС за счет обеспечения переполнения вычислительных 10 операций с программных на аппаратные средства и наоборот.На фиг, 1 представлена блок-схема устройства; на фиг. 2 - блок-схема ЦП; на Фиг. 3 - блок-схема АП; на фиг. 4 - схема блока памяти (БП); на Фиг. 5 - блок-схема регистра адреса; на Фиг. 6 - блок-схема регистра кода операции; на Фиг. 7 -блок-схема регистра возврата в программу, на 2 О фиг, 8 - блок-схема регистра диагностического перехода; на фиг. 9 - блоксхема узла сравнения; на Фиг. 10 - блок-схема регистра номера; на фиг.11 - блок-схема блока межпрограммного 25 управления (БУ); нафиг. 12 - временная диаграмма перехода в основную программу.Устройство содержит (фиг.1) ЦП 1, АП 2, регистр 3 возврата в программу, ЗО блок 4 памяти, регистр 5 кода операции, регистр 6 диагностического перехода, узел 7 сравнения, регистр 8 ад" реса, регистр 9 номера, дешифратор 10, первый элемент И 11, первый триг 35 гер 12, второй триггер 13, первый элемент ИЛИ 14, второй элемент ИЛИ 15, второй элемент И 16, блок 17 микропрограммного управления, шину 18 адреса, шину 19 данных, выход "Чтение ЦП" (Чт, ЦП) 20, выход "Подтверждение захвата ЦП" (ПЗх ЦП) 21, выход "Запись ЦП " (ЗщЦП) 22, вход "Сброс ЦП" (Сб, ЦП) 23, вход "Запрос захвата ЦП" (ЗЗхЦП) 24, вход "Готовность ЦПф (Гт,ЦП) 25, выход "Неисправность АП"45 (Нс,АП) 26, вход "Выборка кристалла АП" (ВК АП) 27, вход "Чтение АП" (Чт,АП) 28, выход "Конец выполнения операции АП" (КВО АП) 29, вход "Запись АП" (Зп/АП) 30, вход "Команда данные АП" (К/Д АП) 31, вход "Запуск АП" 32, вход "Разрешение выборки внешней памяти программы" (РВВ ПП) 33, вход "Чтение внешней памяти программы" (Чт. ВПП) 34, вход "Запись внешней памяти программы" (Зп,ВПП) 35.ЦП 1 (фиг, 1) содержит буфер 36 адреса, буфер 37 данных, блок 38 ре 5 2гистров, внутреннюю магистраль 39,арифметико-логическое устройство 40,блок 4 1 управлен ч, блок 42 управления обменом, блок 43 синхронизации,В устройстве применен ЦП серии К 580ИК 80, КО,348.393,ТУ.АП 2 (фиг. 3) содержит операциончый блок 44, сумматор 45, блок 46управления, первую комбинационнуюсхему 47, триггер 48 неисправности,счетчик 49 ошибок, вторую комбинационную схему 50.Блок 4 памяти (Фиг. 4) содержитпервый коммутатор 51, второй коммутатор 52, оперативное запоминающее .устройство (ОЗУ) 53, шинный формирователь 54, элемент НЕ 55, группу элементов И 56, элемент ИЛИ 57, ассоциативное запоминающее устройство(АЗУ) 58, состоящее из дешифратора 59, регистров 60, элементов 61сравнения, шифратора 62,Регистр 8 адреса (Фиг. 5) содержитпервый элемент 63 задержки, элемент И 64, второй элемент 65 задержки, третий элемент 66 задержки,первый счетчик 67, второй счетчик 68,третий счетчик 69, четвертый счетчик 70, первую буферную схему 71,вторую буферную схему 72, четвертыйэлемент 73 задержки, пятый элемент 74задержки, элемент И-ИЛИ 75.Регистр 5 кода операции (Фиг.6)содержит элемен НЕ 76, элемент 77задержки, элемент И 78, многорежимныйбуферный регистр (МБР) 79, например, типа К 589 ИР 12, состоящий из элемента И 80, элемента И-ИЛИ 81, элемента ИЛИ 82, группы триггеров 83,группы элементов И 84.Регистр 3 адреса (Фиг. 7) содержитпервый элемент И 85, первый элементИЛИ 86, второй элемент И 87, второйэлемент ИЛИ 88, элемент НЕ 89, триггер 90, МБР 91, третий элемент И 92,МБР 91 выполнен аналогично МБР 79(фиг. 6),Регистр 6 диагностического перехода (Фиг. 8) содержит элемент 93 задержки, первый элемент НЕ 94, элемент И 95, второй элемент НЕ 96, третий элемент НЕ 97, первый МБР 98,второй МБР 99, третий МБР 100. МБР 98100 выполнены аналогично МБР 79Регистр 9 номера (фиг. 10) содержит элемент 105 задержки, элемент И 106, регистр 107,БУ 17 (фиг. 11) содержит память 108 микрокоманд, регистр 109микрокоманд, счетчик 110 микрокоманд,элемент И-ИЛИ 111, элемент 112 задержки, первый элемент И 113, счетчик 114, дешифратор 115, четвертый ипятый элементы И 116, триггер 117, 10генератор 118 импульсов, седьмой ивосьмой элементы И 119, второй триггер 120, второй, третий, шестой элементы И 121 - 123, элемент ИЛИ, 124,элемент НЕ 125. 15В основе построения устройства лежат два принципа: принцип модульногопредставления программного и аппаратного обеспечения ВС и принцип взаимозаменяемости программных и аппаратных модулей. Под модулем (программным или аппаратным) понимается объект, обладающий функциональной завершенностью, реализующий конечное число функций соответственно програм- дмным или аппаратным путем.В устройстве в качестве аппаратного модуля используется АП, который,в случае реализации нескольких вычислительных операций выступает как многофункциональный аппаратный модуль.При этом, в общем случае, для обработки информации АП должен получитьвходные данные той или иной операциии кодоперации (команду) в соответствии с требованиями алгоритма решаемой 5задачи. По окончании процесса вычисления АП выдает обработанные данныекак результаты.Модульное программирование, помимо сокращения времени на разработку 4 Опрограммного обеспечения, делает егоболее наглядным и понятным. позволя-.ет независимо от. других программныхмодулей кодировать и тестировать их.При этом все программные модулиоформляются в виде подпрограмм, представляющих единый механизм, которому передается управление программойи от которого возвращается управление программе. Кроме того, использо Ованне подпрограмм значительно сокращает обт ем программной памяти за счетвозможности многократного обращенияк однажды написанной и отлаженнойподпрограмме, нет необходимости производить ее многократное дублирование в основной программе. Как и дляАП, подпрограмма должна получить некоторые входные данные и выдать результаты.Вопрос о том, где размещать данные и каким образом их передаватьв подпрограмму является очень важным для организации вычислительногопроцесса. Поэтому рассмотрим различные способы передачи данных, разработанные для микропроцессорной системы (ИПС), между основной программой и подпрограммой, Для этого разделим все существующие способы передачи данных на две группы в зависимости от их расположения по отношению к ЦП; внутри ЦП и вне его. К первой группе относятся способы передачи данных с использованием внутренних регистров ЦП или специальногостека, встроенного внутрь ЦП. Вторуюгруппу составляют способы обмена данными через внешнюю память программы ВПП. Следует отметить, что, в основном, загрузке данных во внутренние регистры или специальный стек ЦПпредшествует нх хранение в ВПП. Вторая группа способов передачи данныхчаще используется для организацииподпрограмм. Поэтому можно считать,что наиболее общими способами передачи данных являются способы передачи через ВПП. В данном устройствеиспользуются только способы передачиданных, при которых возможен доступк данным всем обрабатывающим модулямсистемы данное устройство использует-ся в МПС, в которых имеет место только вторая группа способов передачиданных в подпрограммы),Инициирование выполнения подпрограммы осуществляется путем указания ее имени в команде вызова подпрограммы. Имя подпрограммы метка в поле ассемблерной строки) ассоциируется с адресом той ячейки памяти, в которой размещается первый байт команды подпрограммы и которой передается управление из точки вызова. Затем обычным образом выполняются команды подпрограммы, а по ее завершению управление передается в точку вызова. При выполнении команды вызова подпрограммы текущее содержимое программного счетчика ЦП загружается в стек, а в программный счетчик загружается адрес перехода, Содержимое программного счетчика передается по шине адреса в память и сигналом "Чтение" производится выборка первого байта5 12544 команды (код первой операции подпрограммы), которая принимает управление процессом, после чего начинает выполняться первая команда подпрограммы, затем вторая и т.д, Заключительной командой каждой подпрограммы является однобайтная команда возврата, которая извлекает адрес возврата. из стека и передает его в программный счетчик. Далее выполняется команда, О находящаяся в вызывающей программе сразу после команды вызова подпрограммы.Появление АП в МПС вызвано тен" денцией повышения производительнос" 15 ти ВС, Поскольку универсальныемикропроцессоры (в том числе, серии К 580) малоэффективны для выполнения сложных математических операций (типа операций умножения, деления, возведе ния в степень, нахождения логарифма, вычисления тригонометрических функций и т.п.), которые они выполняют программным путем и затрачивают много времени, то увеличение производитель ности и вычислительмой мощности универсальных микропроцессоров достигается путем включения совместно с ними .АП, ориентированных на выполнении сложных математических операций. Как правило, АП подключаются к ЦП в качестве дополнительных периферийных устройств, функционирование которых происходит по инициативе и под управлением ЦП. Данное устройство в составе ИПС осуществляет "перехват" и передачу в АП 2 тех арифметических операций, на эффективное выполнение кото О рых ориентирован АП 2 и которые в однопроцессорной системе реализуются программными средствами, с последующей передачей входных данных в АП 2 и выдачей результатов в нужную об ласть программной памяти, В случае неисправного состояния АП 2, выполняющего функцию, устройство передает операции неисправного ЬП 2 программным средствам. Причем в дальнейшем обращения к данному АП 2 не производится до устранения его неисправности.Для пояснения принципа действия . устройства необходимо предварительно рассмотреть организацию составляющих его блоков. Центральным блоком устройства является блок 4 памяти (фиг. 4), предназначенный для определения конфигурации ИПС. Блок 4 по 95 Ьстроен в виде "памяти-каталога" на основе ассоциативного запоминающего устройства (АЗУ) и функционирует в двух режимах: настройки и рабочем.В режиме настройки блок 4 производит формирование так называемой коммутационной матрицы из дескриптора аппаратно-реализуемых функций и информационно-управляющих слов АП 2. При этом в регистры 60 АЗУ 58 записывают метки подпрограмм, имеющих эквивалентную реализацию в аппаратном исполнении на АП 2, а в ячейки ОЗУ 53 - информацию, необходимую АП 2 для обработки операций и обмена в ВПП (фиг. 18); начальные адреса входных данных, начальные адреса выходных данных, код операции, номер АП, длину обрабатываемого слова (например, в байтах), длину результата. Запись производится под управлением ЦП 1, причем таким образом, что имеет место взаимооднозначное соответствие между дескриптором (меткой) к-ой подпрограммы, помещаемой в к-й регистр 60 АЗУ 58, и содержимым к-той ячейки ОЗУ 53, Изменяя определенным образом разрядность полей ОЗУ 53, а также объем АЗУ 58, можно получить как требуемое количество аппаратно-реализуемых функций и АП 2, включаемых в ИПС, так и необходимую длину обрабатываемого слова.Запись в к-й регистр 60 и к-тую ячейку ОЗУ 53 производится следующим образом.На шину адреса 18 ЦП 1 устанавливает адреса, соответствующие к-му регистру 60 и к-й ячейке ОЗУ 53, На шину данных 19 передаются метки к-й подпрограммы и соответсвующие начальный адрес входных данных, начальный адрес выходных данных, код к"й операции, номер АП, длина входного слова и длина выходного слова. Сигналом с выхода "Зп.ЦП" 22 происходит переключение первого коммутатора 51, второго коммутатора 52 и шинного формирователя 54 в режим настройки. При этом шина адреса 18 коммутируется с дешифратором 59 и адресными входами ОЗУ 53, шина 19 данных коммутируется с регистрами 60 и информационными входами-выходами ОЗУ 53, Этим же сигналом с выхода "Зп,ЦП" 22 производится запись к-й метки подпрограммы в к-й регистр 60 (дешифратор 59 от" крывает входы к-го регистра 60) и соответствующей информации в к-тую7 1254 ячейку ОЗУ 53 (сигнал с выхода "Зп, ЦП" 22 поступает на входы "Запись" и "Разрешение выборки" ОЗУ 53). Осущетвляя переэаписькоммутационной матрицы, можно и: реориентировать устройство на обработку требуемого количества прикладных программ.Процесс настройки значительно упрощается в связи с требованиями к оформлению спецификаций для каж О дой подпрограммы. В этих спецификациях указывается где находятся данные (адреса входных данных), обрабатываемые подпрограммой; где будут размещены результаты (адреса выходных 15 данйых), полученные при выполнении подпрограмм.Кроме того, ва многих ассемблерах имеются специальные средства, облег" чающие работу программиста с подпро О граммами. Ассемблер дает возможность транслировать подпрограмму отдельно. Затем он собирает информацию обо всех ссылках на подпрограмму в основной программе и передает ее специаль ной программе-загрузчику, которая заменяет эти ссылки адресами. Сигнал "Пуск" переключает в единичное состояние первый триггер 12 и второй триггер 13. При этом с выхода первого триггера. 12 сигнал поступает на вход "33 х., ЦП" 24 ч в БУ 17, а с выхода второго триггера 13 - на вход "Гт;ЦП" 25.В процессе обработки информации в ИПС данное устройство выявляет обращение к аппаратно-реализуемой функции и, прежде чем принять на себя управление системои, подготавливает В рабочем режиме второй коммутатор 52 подключает шину 18 адреса к информационным входам регистров 60 и первым входам (входам А) элементов 6 1 сравнения. Выходы шифратора 62 в рабочем режиме открыты. Поскольку вторые входы (входы В) элементов 61 сравнения соединены с выходами ре 35 гистров 60, то при поступлении на первые входы элементов 61 сравнения с шины 18 адреса кода, равного содержимому к-го регистра 60, на выходе к-ого элемента 61 сравнения появ-40 ляется сигнал, который поступает на прямой вход одного из элементов И 56, Если на инверсном входе этого же к-го элемента И 56 нет сигнала Нс, АП 26, то сигнал с к-той схе 1 11 45 мы 61 сравнения переключает элемент ИЛИ 57 в единичное состояние (сигн 1нал Пуск ). Сигнал с к-го элемента 61 сравнения поступает также на один из входов шифратора 62, на выходе которого появляется код, соогветству щий адресу к-той ячейки ОЗУ 53. Сигнал "Пуск" производит переключение первого коммутатора 51 и шинного формирователя 54 таким об.разом, чтобы они подключали соответ-. ственно выходы шифратора 62 с адресными входами ОЗУ 53 и информационные 495 8входы-выходы ОЗУ 53 с входами регистров 5, 8 и 9. Этот же сигнал "Пуск" подается на входы "Чтение" и "Разрешение выборки" ОЗУ 53, чем осуществляется выборка к-той ячейки ОЗУ 53, в регистр 5 - кода к-той операции,в регистр 8 - адресов входных и выходных данных и длин слов, в регистр 9 - номера АП.Расчеты показывают, что времени, в течение которого на шине адреса 18 присутствует адрес ячейки ВПП (для К 580 - в течение 1 - 3 тактов, равных 1,5 мкс при тактовой частоте 2 ИГц), достаточно для выявления обращения к аппаратно-реализуемой функции, подачи сигнала на вход "33 х. ЦП" 24 и выборки содержимого к-той ячейки ОЗУ 53 н регистры 5, 8 и 9.Таким образом, после настройки блок 4 содержит дескриптор аппаратно- реализуемых функций и информационноуправляюще слова АП 2, что,.в целом, фиксирует конфигурацию ИПС.Остальные узлы устройства несут следующую Функциональную нагрузку, Сигнал "Пуск" с выхода элемента ИЛИ 57 (фиг.4) открывает входы регистра 5 (фиг,6) и регистра 9 (фиг. 10), таким образом, что вначале п,оизводится обнуление содержимого триггеров 83 и регистра 107. Элементы 77 и 105 задержки имеют задержку на время сброса (обнуления) триггеров 83 и регистра 107 соответственно. Затем сигнал "Пуск" поступает на входы "С" элемента И-ИЛИ 81 и регистра 107 соответственно, чем разрешается запись в триггеры 83 и регистр 107 данных по информационным входам. Сигнал нз БУ 17 на вход элемента НЕ 76 открывает выходы регистра 5, в результате чего содержимое последнего подается на шину 19 данных. Содержимое регистра 107 (номер АП) подается на вход дешифратора 10.50 9 12544 обратный переход в программу. Организация аппаратного перехода в основную программу происходит следующим образом. Сигнал "Пуск" переключает в единичное состояние триггер 90 ре 5 гистра 3 (фиг. 7). Сигнал с выхода триггера 90 поступает на инверсный вход элемента И 92. Прямой вход последнего соединен с выходом МПС, управляющим разрешением выборки ВПП 10 (обычно это 15-й разряд шины 18 адреса), В результате происходит блокировка ВПП. При появлении сигнала с выхода "Чт,ЦП" 20 на шину 19 данных поступает код команды выхода из подпрограммы РЕТ из МЕР 91, выполненный аналогично МБР 79. Сброс команды РЕТ происходит при исчезновении сигнала "Пуск", а сброс блокировки ВПП - при появлении сигнала с выхода "ПЗх,ЦП" 21,20 Временная диаграмма (фиг. 12) поясняет организацию аппаратного перехода в основную программу. ЦП 1 выставляет единичный сигнал на выходе "ПЗх ЦП" 21 в начале третьего такта машинного цикла "Чтение", если сигнал на вход "33 х,ЦП" 21 поступил в первом такте за 180 нс до нарастающего фронта второго синхроимпульса,в противном случае этот сигнал ПЗх выставляется в третьем такте следующего машинного цикла .МАЗУ 58, выполненное на современней элементной базе, имеет очень малое время срабатывания (порядка 70 нс), что позволяет в 1-3 тактахЭ 5 первого машинного цикла ЦП 1 произвести необходимые действия по подготовке перехода в основную программу. Блокировка ВПП происходит также 40 при появлении сигнала на выходе узла 7 (фиг. 9). Сброс блокировки ВПП при этом производится специальным сигналом с выхода БУ 17.45Сигнал "Пуск", поступающий на вход регистра. 8 (фиг, 5), производит вначале обнуление счетчиков 67-70, а затем разрешает запись данных в них с выхода шинного формирователя 54 (фиг.4) по информационным входам счетчиков 67-70. Элемент 63 задержки имеет задержку на время сброса (обнуления) счетчиков 67-70. При этом в первый счетчик 67 записывается начальный адрес входных данных, во второй счетчик. 68 - начальный адрес выходных данных, в третий счетчик 69 " длина входных данных, в чет 95 10вертый счетчик 70 - длина выходных данных. При появлении сигналов из БУ 17 (с выхода первой группы элемен тов И 116) открывается буферная схема 71 или 72 с тремя состояниями. При этом содержимое первого счетчика 67 или второго счетчика 68 поступает на шину 18 адреса. При отсутствии сигналов из БУ 17 буферные схемы 71 и 72 находятся в состоянии высокого сопротивления. Элементы 65 и 66 задержки (с задержкой на время выборки содержимого счетчиков 67-70) передают сигналы на счетные входы счетчиков 67-70 после выборки их содержимого. Таким образом, при каждом обращении к счетчикам их содержимое будет увеличено на единицу (для счетчиков 67 и 68) или уменьшено на единицу (для счетчиков 69 и 70). При равенстве нулю счетчиков 69 и 70 на их выходах появляется сигнал, поступающий через элемент И-ИЛИ 75 на вход элемента И-ИЛИ 111 БУ 17, чем прекращается обращение к ПП, Элементы 73 и 74 задержки имеют задержку на времр выборки очередной микрокоманды из памяти 108 микрокоманд (фиг. 11).При появлении сигнала "Пуск" с выхода элемента ИЛИ 57 на вход.регистра. 6 (фиг. 8) вначале производится обнуление содержимого МБР 98 и 99. Элемент задержки имеет задержку на время сбрасывания (обнуления) МБР 98 и МБР 99. После этого сигнал "Пуск" разрешает запись в МБР 98 и МБР 99 содержимого шины 18 адреса по информационным входам. Причем, в МБР 99 записывается содержимое младших разрядов (7 - О) шины 18 адреса, а в МБР 98 - содержимое старших разрядов (15 - 8) шины 18 адреса. Сигналы из БУ 17 (с выхода дешифратора 115) разнесенные во времени, открывают выходы МБР 98-100. При этом на шину 19 данных поступает код команды безусловного перехода и адрес перехода (содержимое МБР 100, затем МБР 99, МБР 98). Код команды безусловного перехода в МБР 100 появляется при включении питания на устройство.Входы узла 7 (входы элементов И 101, фиг. 9) соединены с выходами дешифратора 10 и выходами "Нс. АП" 26 всех АП 2 структуры ИПС, При наличии сигналов с этих блоков на одном иэ элементов И 101 на его выходе появляется сигнал, который через элемент ИЛИ 102 переключает триг95 12в унитарных кодах (каждому разряду микрокоманды сопоставляется управляю- - щий сигнал БУ 17). Работу БУ поясняет таблица, представляющая собой по" следовательность и кодировку микроко манд (расшивку), находящихся в памяти 108 микрокоманд.Разряды микрокоманды поступают: ХО - на элементы И-ИЛИ 111 и НЕ 125; Х 1 - на единичный вход триггера 120; Х 2 - на нулевой вход триггера 120; ХЗ на вход дешифратора 10; Х 4 в . на вход элемента И 16; Х 5 - на входы регистра 5 и "К/Д АП" 31; Хб - на вход первого элемента И первой группы элементов И 116; Х 7 - на вход "Запуск АП". 32; Х 8 - на вход элемента И 116; Х 9 - на нулевой вход триггера 12; Х 10 - на входы регистра 3 и нулевой вход триггера 117,При наличии единицы в нулевом разряде микрокоманды БУ находятся в режиме "Ожидание" до прихода одного из внешних сигналов на элемент И-ИЛИ 111. При нулевом состоянии этого разряда в очередноМ такте производится прибавление единицы в счетчик 110 и выборка очередной микрокоманды из памяти 108 микрокоманд в регистр 109.Рассмотрим работу БУ 17 (фиг.11). При запуске. БУ (появление сигнала Пуск" на единичном входе триггера 117) на выходе регистра 109 появляется нулевая ИК, которая переключает триггер 120 в единичное состояние. Устройство посылает в это время сигнал на вход "ЗЗх,ЦП" 24, Сигнал "ПЗх, ЦП" 21 поступает на вход элемента И 12 и производит выборку, первой микрокоманды в регистр 109, которая сбрасывает триггер 120. 0 0 0 . 0 0 0 1 1 0 О 0 0 0 1 0 О О 0 1 О 0 0 0 0 1 0 1 0 0 0 1 0 0 0 0 О 0 1, 0 0 0 0 0 0 О О 0 0 1 0 0 0 0 1 12544 гер 103 в единичное состояние. С выхода последнего сигнал подается на входы "Сб. ЦП" 23, регистра 3, БУ 17 и элемента ИЛИ 15. Элемент 104 задержки задерживае сигнал на время не менее трех тактов работы ЦП 1, необходимое для сброса внутренних регистров ЦП 1 (для К 580). После чего сигнал на выходе триггера 103 сбрасывается, ОУправляет работой всех блоков устройства в активном режиме блок 17 управления (фиг, 11). В качестве синхронизирующего элемента использует двухтактный ГИ 118, синхросигналы с которого поступают на блоки МГА после появления сигнала "Пуск" на единичный вход триггера 117. Этим же сигналом производится начальная установка (обнуление) счетчика 110, С вы" 2 О ходов элементов И 119 тактовые импульсы поступают: первый - на вход записи регистра 109 и элементы И 16, второй - на элемент И 123. По первому синхроимпульсу производится запись 25 и выдача управляющих сигналов из регистра 109 на внутренние узлы БУ и в узлы устройства. По второму синхро-импульсу происходит прибавление единицы к содержимому счетчика 1 10 и выборка микрокоманды из памяти 108 микрокоманд. На вход БУ, помимо сигнала "Пуск", поступают сигналы с выходов узла 7, "Чт.ЦП" 20, "ПЗх ЛП" 21 (фиг. 1), регистра 8 (фиг.5), "КВО АП" 29, а также сигнал с выхода эле 35 мента 112 задержки. Последние четыре сигнала предназначены для определения времени выборки очередной микрокоманды.В БУ используется система с жесткой последовательностью микрокоманд. 0 0 0 О 0 О 0 10 О 0 0 0 0 0 0 О 0 1 О 0 1 О 0 О 0 0 О ВС помощью этой МК БУ 17 управляет передачей входных данных из ВПП в АП 2. Так как сигнал "Данные" на входе К/Д АП" 31 является альтернативным по отношению к сигналу Коман да", то в пятом разряде МК при записи/чтении данных АП 2 находится нуль. Поскольку, в общем случае, в структуре МПС может содержаться несколько АП 2, то на вход каждого из них долж" З 0 на идти соответствующая линия с выхода дешифратора 10. Инициализация того или иного АП 2 будет определяться содержимым регистра 5. Из этих же соображений все линии, идущие на вхо-З35 ды и выходы АП 2, подключены к соответствующим входам и выходам остальных АП 2 (на фиг. 1 выведены косыми линиями на общую шину). Окончание передачи данных в АП 2 происходит при появлении сигнала из регистра 8, по которому выбирается вторая микро- команда. Вторая микрокомандауправляет записью кода операции в АП 2, Затем поступает сигнал на вход "Запуск АП" 32 - выполняется третья микрокоманда. После этого БУ переходит в режим "Ожидание" - выполняется четвертая микрокоманда (АП 2 обрабатывает входные данные).50При появлении сигнала на выходе "КВ АП" 29 (сигнал импульсного характера длительностью, равной времени выборки очередной команды иэ памяти 108 микрокоманд производится выборка пятой микрокоманды, с помощью которой проверяется исправность АП 2. Если на выходе триггера 48 неисправности (фиг, 3) устанавливается еди 7 8 9 10 1 ф 0 0 О О 0 0 0 0 0 1 0 0 0 О О 0 10 0 0 0 0 0 О ничный сигнал, то с выхода узла 7(фиг. 9) сигнал поступает непосредственно на вход "С" счетчика 110,по которому разрешается запись в счетчик 110. содержимого его информационных входов. В данном случае на информационных входах счетчика 110 присутствует код "9", т.е. осуществляется принудительная адресация к девятой микрокоманде. Если АП 2 исправен, то с выхода узла 7 не поступает сигнал на вход счетчика 110 ипроисходит выборка шестой микрокоманды, которая управляет чтением результата из АП 2 в ВПП, Окончание передачи результата в ВПП происходит припоявлении сигнала из регистра 8,по которому выбирается седьмая микрокоманда. Эта микрокоманда сбрасываетв нуль триггер 12, чем снимается захват шин ЦП 1. Восьмая микрокомандаостанавливает БУ 17,При помощи девятой микрокомандыустройство осуществляет переход к соответствующей подпрограмме. При этомБУ находится в режиме "Ожидание" доприхода сигнала с выхода элемента 112 задержкиСигналы, поступающие с выхода "ЧтЦП" 20, разрешаютвыборку кода команды безусловногоперехода и адреса перехода на шину 19данных (фиг. 8). Сигналы эти разнесены во времени по машинным циклам ЦП 1.Первый сигнал через элемент И 113,счетчик 114 поступает на вход дешифратора 115, на соответствуйщем выходе которого появляется сигнал, поступающий на выборку МБР 100. Аналогично следующие два сигнала с выхода54495 16В свою очередь, АП 2 выставляет сигнал "Нс, АП" 26 (в случае неисправности АП 2), который также поступаетна узел 7. Затем производится либовыдача результата из АП 2 в ВПП (если АП 2 исправен), либо переходк подпрограмме (если АП 2 неисправен), которая реализует данную функцию.О В первом случае производятся аналогичные действия со стороны устройства. С выхода БУ 17 сигналы поступают на вход дещифратора 1 О, в регистр 8 (формирование адресов резуль тата), на вход элемента И 11 (режимчтения АП 2) и на вход "Зп.ВПП" 35(режим записи в ВПП). После чего осуществляется снятие захвата шин ЦП 1сигналом из БУ 17 на нулевой вход 20 триггера 12 и остановка БУ 17. В результате ЦП 1 переходит к обработкедальнейшей программы. 12 Получив управление, устройство определяет АП 2, который будет производить обработку функции, и засылает в него данные по шине 19 данных из ВПП в режиме прямого доступа к памяти. Сигналы с выхода БУ 17 поступают35 на входы дешифратора 10 (инициирование соответствующего АП 2), элемента И 16 (режим записи в АП 2) регистра 3 (формирование адресов данных), Чт, ПП 33 (режим чтения ПП) . По окон 40 чании записи данных в АП 2 производится запись в него кода операции также по шине 19 данных. При этом сигналы с выхода БУ 17 поступают на входы регистра 5 (выборка кода операции),45 дешифратора 10, элемента И 1,6 (режим записи в АП 2). После этого с выхода БУ 17 поступает сигнал на вход "Запуск АП" 32, при котором начинается обработка данных (вычисление функции), Затем устройство ожидает50 окончания в вычислении функции в АП 2, При появлении сигнала с выхода "КВ АП" 29 устройство проверяет исправность АП 2, производящего вычисление функции. Для этого с выхода БУ 17 по-.55 дается сигнал на вход дешифратора 10, который иницирует соответствующий АП 2, и поступает на узел 7 (фиг.9)."Чт,ЦП" 20 производят выборку содержимого МБР 99 и МЕР 98 (адрес перехода). Причем, выход дешифратора 115, соединенный с элементом НЕ 94, соединен также с элементом 112 задержки, сигнал с которого поступает по окон чании сигнала с выхода "Чт, ЦП" 20, чем осуществляется переход к десятой микрокоманде. Десятая микрокоманда сбрасывает сигнал на входе "Гт, ЦП" 25 сигналом на нулевой вход триггера 12. Одиннадцатая микрокоманда снимает блокировку ВПП и останавливает БУ 17,В процессе обработки информации в МПС данное устройство выявляет обращение к аппаратно-реализуемой функции, выставляет запрос на захват шин ЦП 1 в случае появления такого обращения, выдает информацию на соответствующие узлы устройства из памяти- каталога и, прежде чем принять на себя управление системой, подготавливает обратный переход в основную программу (засылает в регистр команд ЦП 1 команду возврата из подпрограммы РЕТ), а также подготавливает возможный переход к соответствующей подпрограмме. Во втором случае для передачи управления подпрограмме необходимо произвести переход к ее первой команде. Для этого с выхода узла 7 сигнал поступает на вход "Сб, ЦП" 23 (длительностью не менее трех тактов машинного цикла ЦП 1), на вход регистра 3 (блокировка ВПП), на выходы БУ 17 и элемента ИЛИ 15 (снятие захвата шин ЦП 1 и установка сигнала на вход "Гт, ЦП" 25), При появлении сигнала с выхода "Чт. ЦП" 20 осуществляется выдача на шину 19 данных кода команды безусловного перехода и адреса перехода к подпрограмме. Затем происходит сброс сигнала на входе "Гт.ЦП" 25, блокировка ВПП сигналом из БУ 17 на вход регистра 3 и останов БУ 17. Формула изобретения 1. Устройство для сопряжения центрального процессора с группой арифметических процессоров, содер"ащее дешифратор и два элемента И, причем выходы первого и второго элементов И подключены к входам чтения и записи арифметических процессоров группы соответственно, выход дешифратора соединен с первыми входами первого и второго элементов И и подключен к входам выборки арифметических процессоров группы, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия, в него введены блок микропрограммного управления, регистр воз

Смотреть

Заявка

3810130, 10.11.1984

ЛЕНИНГРАДСКИЙ ОРДЕНА ЛЕНИНА ЭЛЕКТРОТЕХНИЧЕСКИЙ ИНСТИТУТ ИМ. В. И. УЛЬЯНОВА

МИХНОВ ЮРИЙ ПАВЛОВИЧ, ПЕТРОВ ГЕННАДИЙ АЛЕКСЕЕВИЧ, СТЕПАНОВ ВИКТОР СТЕПАНОВИЧ, ШАЛЯПИН ВЛАДИМИР ВАЛЕНТИНОВИЧ

МПК / Метки

МПК: G06F 13/00

Метки: арифметических, группой, процессора, процессоров, сопряжения, центрального

Опубликовано: 30.08.1986

Код ссылки

<a href="https://patents.su/16-1254495-ustrojjstvo-dlya-sopryazheniya-centralnogo-processora-s-gruppojj-arifmeticheskikh-processorov.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для сопряжения центрального процессора с группой арифметических процессоров</a>

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