Многоканальное микропрограммное устройство управления

ZIP архив

Текст

СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСКИХРЕСПУБЛИК БО 1168938%6 ВДЩ 1 Щ, ОПИСАНИЕ ИЗОБРЕТЕНИЯ ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ Н А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ(54) (57) МНОГОКАНАЛЬНОЕ МИКРОПРОГРАММНОЕ УСТРОИСТВО УПРАВЛЕНИЯ, содержащее блок памяти микропрограмм, блок памяти линейных последовательностей, блок модификации адреса, регистр микрокоманд, регистр состояния,счетчики адреса и микрокоманд, триггерпуска, генератор тактовых импульсов, первый, второй, третий, четвертый и пятый блоки элементов И, первый и второй элементы И,элемент ИЛИ, причем группа выходов первого блока элементов И соединена с группойнулевых входов регистра состояния, первыйвыход генератора тактовых импульсов соединен с первым входом первого элемента И,второй выход генератора тактовых импульсов соединен с первыми входами второго итретьего блоков элементов И и с первым входом второго элемента И, выход микроопераций блока памяти микропрограмм соединенс информационным входом регистра микрокоманд, выход окончания операции которогосоединен с вторым входом второго элементаИ, отличающееся тем, что, с целью расширения области применения и повышения коэффициента использования оборудования путем реализации многоканального режима выполнения множества микропрограмм контроля и разделения времени использованияадресного канала устройства между микропрограммами, оно дополнительно содержит(1 х 1 - 1) блоков памяти линейных последовательностей, (1 х 1 - 1) блоков модификации адреса, блок выбора рабочего канала, регистр занятия канала, регистр рабочего канала, (1 х - 1) счетчиков адреса, (1 х 1 - 1) счетчиков микрокоманд, первый и второй блоки коммутаторов, коммутатор, выход которого соединен с входом блока памяти микропрограмм, выход окончания операции регистра микро- команд соединен с первыми входами элементов И четвертого блока, выход адреса и логических условий блока памяти микропрограмм соединен с первыми информационными входами коммутаторов первого блока, выход числа микрокоманд регистра микрокомапд соединен с информационными входами счетчиков адреса блока, выход кода операции регистра микрокоманд соединен с ин- а формационными входами счетчиков адреса блока, выход запуска линейной после- фф довательности регистра микрокоманд соеди- Ъ ф нен с первыми входами элементов И первого блока, выходы которых соединены с вторыми входами соответствующих элементов ф И третьего блока, выходы элементов И третьего блока и выход второго элемента И об- фф разуют управляющий выход устройства, ну- фааа левые выходы регистра состояния соединены ф с первыми входами соответствующих эле- р ментов И пятого блока, выходы которых соединены со счетными входами соответствую- ) щих счетчиков микрокоманд и адреса блоков, М выходы счетчиков микрокоманд блока соеди- Я нены с единичными входами соответствующих разрядов регистра состояния, единичные выходы которого соединены с входами блока выбора рабочего канала и элемента ИЛИ, выход элемента ИЛИ соединен с вторым входом первого элемента И, выход ф которого соединен с входом записи регистра микрокоманд, выходы блока выбора рабочего канала соединены с информационными входами соответствующих разрядов регистра рабочего канала, выходы которого соединены с вторыми входами соответствуюгцих элементов И четвертого блока. с соот1168938 ветствуюшими управляющими входами коммутатора, с вторыми входами соответствующих элементов И второго блока, с первыми и вторыми управляющими входами соответствующих коммутаторов второго блока, выходы коммутаторов второго блока соединены с входами записи соответствующих блоков модификации адреса и с нулевыми входами соответствующих разрядов регистра занятия канала, нулевые выходы которого соединены с первыми управляющими входами соответствующих коммутаторов первого блока, а единичные выходы - с вторыми управляющими входами соответствующих коммутаторов первого блока и третьими управляющими входами соответствующих коммутаторов второго блока, вторые информационные входы коммутаторов первого блока образуют группу информационных входов устройства, выходы коммутаторов первого блока соединены с первыми информационными входами соответствующих блоков модификации адреса, выходы которых соединены с соответствующими информационными входами коммутатора, третий выход генератора 1Изобретение относится к вычислительной технике и может быть использовано при построении управляющих устройств электронных вычислительных машин с микропрограммным управлением.Цель изобретения - расширение области применения устройства и повышение коэффициента использования оборудования.На фиг. 1 представлена функциональная схема устройства; на фиг. 2 - функциональная схема блока модификации адреса; на фиг. 3 - функциональная схема блока выбора рабочего канала для четырехканального варианта построения устройства; на фиг, 4 - временные диаграммы работы генератора; на фиг. 5 - алгоритм функционирования устройства.Устройство (фиг. 1) содержит блок 1 памяти микропрограмм, группу 2 блоков памяти линейных последовательностей, блоки 3.1 в .М модификации адреса, регистр 4 микрокоманд, регистр 5 занятия каналов, регистр 6 состояния каналов, регистр 7 рабочего канала, блок 8 счетчиков адреса, блок 9 счетчиков микрокоманд, триггер 10 пуска, блок 11 выбора рабочего канала, первый блок 12 коммутаторов, второй блок 13 коммутаторов, коммутатор 14, четвертый блок 15 элементов И, третий блок 16 элементов И, первый блок 17 элементов И, второй блок 18 элементов И, пятый блок 19 5 1 О 15 го 25 тактовых импульсов соединен с первыми информационными входами коммутаторов второго блока, пятый выход генератора тактовых импульсов соединен с вторыми входами элементов И пятого блока, второй выход генератора тактовых импульсов соединен с третьими входами элементов И четвертого блока и вторыми информационными входами коммутаторов второго блока, выходы элементов И второго блока соединены с входами синхронизации и счета соответствующих счетчиков адреса и микрокоманд блоков, выходы счетчиков адреса блока соединены с входами адреса соответствующих блоков памяти линейных последовательностей группы, выходы которых образуют группу выходов микрокоманд, устройства, единичный выход триггера пуска соединен с входом генератора тактовых импульсов, единичный и нулевой входы триггера пуска образуют входы пуска и останова устройства соответствий, входы логических условий устройства соединены с вторыми информационными входами соответствующих блоков модификации адреса. 2элементов И, второй элемент И 20, элементИЛИ 21, первый элемент И 22, генератор23 тактовых импульсов, группу 24.1 - 24.Минформационных входов устройства, первые25.1 - 25,Я информационные входы блоков3.1 в .М модификации адреса, входы 26.1 -26.И логических условий устройства, управляющий 27 выход устройства, управляющий вход 28 устройства, выходы адреса илогических условий 29.1 и операций 29.2блока 1 памяти микропрограмм, выходы окончания операций 30, числа микрокоманд 31,кода операции 32, запуска линейной последовательности 33 регистра 4 микрокоманд,третий 34, четвертый 35, первый 36, второй 37, пятый 38 выходы генератора 23тактовых импульсов, группу 39 управляющих выходов устройства.Блок 31 модификации адреса (фиг. 2)содержит вход 40.1 модифицируемого разряда адреса, вход 40.2 внутренних логических условий мультиплексора 41, регистр 42адреса.Блок 11 выбора рабочего канала (фиг.З)содержит первый 43, второй 44, третий 45элементы И,На фиг. 5 приняты следующие сокрашения: КОП- код операции; МК - микрокоманда; Ащп - начальный адрес линейнойпоследовательности; мк - число микрокоманд в линейной последовательности;5 О Ак - адрес очередной микрокоманды ветвления; МП - микропрограмма; ЛП линейная последовательность; КЙА, - регистр адреса; Рбмк - регистр микрокоманд; С 4 - счетчик адреса; С 4 мк; - счетчик микрокоманд.Рассмотрим назначение основных элементов устройства.Блок 1 памяти микропрограмм предназначен для хранения начальных микро- команд линейных последовательностей и микрокоманд завершения микропрограмм. Каждая начальная микрокоманда содержит поля кода адреса и количества микрокоманд в линейной последовательности, окончания , операции и начала линейной последовательности, кода операции.Группа 2 блоков памяти линейных последовательностей предназначена для хранения микрокоманд линейных последовательностей микропрограмм, выполняемых в устройстве.Блок 3 модификации адреса предназначен для записи и хранениякодов операций и модификации и хранения адресов микрокоманд ветвления, выполняемых микропрограмм в режиме многоканальной работы.Регистр 4 микрокоманд предназначен для хранения микрокоманд, считываемых из блока 1 памяти микропрограмм на период запуска на выполнение линейных последовательностей и восстановления исходного состояния канала после завершения микропрограммы.Регистр 5 занятия каналов предназначен для сохранения состояния занятости канала в период выполнения микропрограммы до момента считывания микрокоманды окончания операции в канале.Регистр 6 состояния каналов предназначен для отслеживания состояний (свободен или занят) каналов в период выполнения линейных последовательностей. Изменение состояния регистра происходит в момент запуска линейной последовательности на выполнение и завершение линейной последовательности.Регистр 7 рабочего канала предназначен для обеспечения выбора свободного канала на время цикла работы устройства по запуску на выполнение микропрограммы или ее продолжение.Блок 11 выбора рабочего канала предназначен для выбора рабочего канала в соответствии с принципом относительного приоритета по состоянию выходов регистра 6 состояния каналов. Причем единичный потенциал на выходе блока 11 формируется только для канала с младшим номером из числа свободных. Состояние выходов блока 11 фиксируется в регистре 7 рабочего канала.Устройство работает следующим образом.В исходном состоянии все элементы памяти, за исключением регистров 5 и 6, нахо 15 20 25 30 35 40 45 50 55 лятся в нулевом состоянии, а ргьс рь:и 6 - в единичном. По сигналу пуска,ступающему на вход 28 устройствд, тэпгс 110 устанавливается в единичное состояшш,разрешая формирование управляющих последовательностей импульсов на выхолах г,нератора 23 в соответствии с временными диаграммами фиг. 4).В процессе работы устройства реализуются слелующие режимы: выбор рабочегоканала; прием кода операции; считывднпмикрокоманды ветвления; выполнение линейной последовательности; прием адресаочередной микрокоманды ветвления; завершение микропрограммы,Выбор рабочего канала произволится по тактовому импульсу, формируемому на вь- ходе 34 генератора 23, при этом разряд регистра 7, соответствуюгций рабочему каналу, устанавливается в единичное состояние. Это происходит слелующим образом. Так как регистр 6 находится в единичном состоянии, то на входы блока 11 поступаюг единичные потенциалы готовности каналов. Блок 1 осуществляег выбор рабочего кднала в соответствии с принципом относительного приоритета между каналами. Приоритет канала задается его номером, причем каналу с наименьшим номером соответствует наибольший приоритет. Таким образом, в начале работы устройства первый канал. облалающий наибольшим приоритетом, становится рабочим, т.е. на выхоле блокд 11, соответствующем первому каналу, устдндвливается единичный потенциал, а по тдктовому импульсу с выхода 34 гснердпгорд 23, поступающему на упрдвляюгций вход рсгистра 7, код состояния выхолов блока 1 записывается в регистр 7. При этом в слпничное состояние устанавливается рдзрял регистра, соответствуюцгий рабочему кд налу, в начале работы - первый. Для все каналов этот процесс протекает одинаково.В дальнейшем в устройстве реализуется режим приема кода операции по управляющему импульсу, формируемому нд выхолс Зо генератора 23. Так как регистр 5 находится в единичном состоянии, то все коммутдторь блока 12 открыты по входу кода операции (входы 24.1 - 24. М устройства ) . При этом на выходах всех коммутаторов блока 2 установлены коды операций, которые постуидют на информационные входы 25.1 -25.Х блоков 3.1 в .М, однако запись кода операции производится только в регистр 42 бло ка 3.1, соответствующего рабочему каналу, д именно в регистр 42 блока 3.1 для рдссмдтриваемого случая Это происходит по причине того, что управляющий импульс записи с выхода 35 генератора 23 проходит только через коммутатор 13.1 блока, который открыт единичным потенциалом с ьыхолов соответствующих разрядов регистров 5 и 7. С выхола блока 3.1 код операции через .ткрытый соответствующий информационный вход коммутатора 14 поступает в блок 1 памяти. Этот информационный вход коммутатора 14 открыт единичным потенциалом с выхода регистра 7 (для рабочего канала разряд регистра 7 в единичном состоянии),Микрокоманда, соответствующая принятому коду операции, записывается в регистр 4 по управляющему импульсу, формируемому на выходе 36 генератора 23. При этом элемент И 22 открыт единичным потенциалом с выхода элемента ИЛИ 21. На элемент ИЛИ 21 отслеживается наличие готовых каналов в устройстве по единичным выходам разрядов регистра 6. Таким образом, если в устройстве есть готовые каналы, то элемент И 22 открыт, в противном случае - закрыт.Считанная в регистр 4 микрокоманда мо. жет определять начало линейной последовательности либо завершение выполнения микропрограммы в канале.В режиме выполнения линейной последовательности выделяются следующие этапы: запуск, выполнение и завершение линейной последовательности.Запуск линейной последовательности на выполнение осуществляется по управляющему импульсу, формируемому на выходе 37 генератора 23. Это происходит следующим образом. После считывания микрокоманды, определяющей начало линейной последовательности, изблока 1 в регистр 4 коды адреса и количества микрокоманд в линейной последовательности с выходов 32 и 31 регистра 4 соответственно поступают на информационные входы счетчиков блоков 8 и 9. Для рассматриваемого случая в блоке 18 элементов И единичным потенциалом с выхода соответствующего разряда регистра 7 открыт элемент И 18.1, Управляющий импульс с выхода 37 генератора 23 поступает на управляющие входы счетчиков 8.1 и 9.1 блоков, в которые записываются коды адреса и количества микрокоманд соответственно.Кроме того, управляющий импульс с выхода 37 генератора 23 поступает на коммутаторы блока 13 и на элементы И блока 16.Одновременно с процессом записи кодов адреса и числа микрокоманд в счетчики 8.1 и 9.1 блоков изменяется состояние готовности канала, в котором запускается на выполнение линейная последовательность.В рассматриваемом случае единичный потенциал с выхода 33 регистра 4 через открытый элемент И 17,1 устанавливает первый разряд регистра 6 в нулевое состояние, снимая тем самым состояние готовности канала на время выполнения линейной последовательности в канале. При этом единичным потенциалом с нулевого выхода первого разряда регистра 6 открывается элемент И 19.1 блока, и последовательность тактовых импульсов с выхода 38 генератора 23 5 1 О 15 20 25 30 35 40 45 50 55 поступает на счетные входы счетчиков 8.1и 9.1. Таким образом, в первом канале на.чато выполнение линейной последовательности. В случае завершения линейной последовательности единичный сигнал переполнения с выхода счетчика 9.1 поступает наединичный вход первого разряда регистра 6и устанавливает его в единичное состояние,восстанавливая состояние готовности канала. В очередном цикле работы этот каналвновь может стать рабочим.Рассмотрим теперь какие процессы протекают в устройстве при поступлении управляющего импульса с выхода 37 генератора23 на входы коммутаторов блока 13 и элементы И блока 16.По управляющему импульсу с выхода 37генератора 23 в устройстве реализуется процесс запуска на выполнение линейной последовательности,Параллельно с запуском на выполнениелинейной последовательности в устройствеосуществляется запись адреса очередноймикрокоманды ветвления в рабочем канале в регистре 42 блока 3.1, а также формирование сигнала занятия канала на выходе27 устройства.Рассмотрим это подробнее на примерепервого канала.После считывания микрокоманды из блока 1 в регистр 4 на выходе 29,1 блока 1установлены код адреса очередной микрокоманды ветвления и код внутренних логических условий, который поступает напервый информационный вход коммутатора 12.1 блока. Этот вход открыт единичнымпотенциалом с нулевого выхода первого разряда регистра 5. С выхода коммутатора 12.1блока коды адреса и логических условий поступают на информационный вход 25.1блока 3.1. Коммутатор 13,1 блока открыт дляпрохождения управляющего импульса записи с выхода 3 генератора 23 единичным потенциалом с выхода первого разряда регистра 7, Таким образом, по управляющему импульсу с выхода 37 генератора 23 в регистр42 адреса блока 3.1. записывается код адреса очередной микрокоманды ветвления, выполняемой в этом канале микропрограммы.По этому же импульсу с выхода 37 генератора 23 на выходе 27 устройства формируется сигнал занятия канала. Информацияо номере занимаемого канала поступает свыхода 27 устройства во внешнюю операционную систему с выхода элемента И 16.1блока.После формирования управляющего импульса на выходе 37 генератора 23 циклработы устройства повторяется в рассмотренной последовательности.Отличительной особенностью работы канала, занятого выполнением микропрограммы, является запуск очередной линейнойпоследовательности по окончанию выполнения предыдущей. Для рассматриваемого1168938 Фиг.1 примера по окончанию выполнения линейной последовательности в первом канале сигналом переполнения соответствующего счетчика 9.1 блока первый разряд регистра 6 этого канала устанавливается в единичное состояние и он может быть выбран в качестве рабочего канала в соответствии с приоритетом.Так как в регистре 42 блока 3.1 этого канала записан адрес очередной микрокоманды ветвления, то при повторном выборе этого канала в качестве рабочего в соответствующий рабочему каналу регистр 42 блока 3.1 не может быть записан код операции очередной микропрограммы по управляющему импульсу с выхода 35 генератора 23. Для такого канала этот импульс не проходит через закрытый коммутатор 13.1 блока на управляющий вход соответствующего регистра 42 блока 3.1. Коммутатор 13.1 закрыт нулевым потенциалом с единичного выхода соответствующего разряда регистра 5. В дальнейшем работа в таком канале аналогична описанной. По окончанию выполнения микропрограммы в канале в регистр 4 из блока 1 считывается микрокоманда окончания операции, при этом на всех выходах регистра 4, кроме 30, установлены нулевые потенциалы, а на выходе 30 - единичный. Следующий управляющий импульс для этого канала формируется на выходе 37 генератора 23, при этом нулевые коды записываются в счетчики 8,1 и 9.1 блоков и в регистр 42 блока 3. О этого канала, Кроме того, с выхода элемента И 20 на выход 27 устройства поступает сигнал окончания операции. По этому же импульсу с выхода 37 генератора 23 в единичное состояние устанавливается соответствующий освобождаемому каналу разряд регистра 5. Работа устройства завершается по сигналу Стоп, поступающему на вход 28 устройства. При этом триггер О переводится в 20 нулевое состояние, и запрещается генерация управляющих импульсов на выходах генератора 23.Редактор Р. ЦициЗа каз 4614/42 Корректор А. ОбручаПодписноеСССРтийб., д. 4/5Проектная, 4 Составитель И. Сигалока Техред И. ВересТираж 710ВНИИПИ Государственного комитетпо делам, изобретений и откры113035, Москва, Ж - 35, Раушская наилиал ППП Патент, г. Ужгород, ул.

Смотреть

Заявка

3699089, 02.12.1983

ХАРЬКОВСКОЕ ВЫСШЕЕ ВОЕННОЕ КОМАНДНО-ИНЖЕНЕРНОЕ УЧИЛИЩЕ ИМ. МАРШАЛА СОВЕТСКОГО СОЮЗА КРЫЛОВА Н. И

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

МПК / Метки

МПК: G06F 11/00, G06F 9/22

Метки: микропрограммное, многоканальное

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

Код ссылки

<a href="https://patents.su/7-1168938-mnogokanalnoe-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Многоканальное микропрограммное устройство управления</a>

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