Двухуровневое устройство для управления памятью микрокоманд

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

Авторы: Беликов, Дворецкий, Мартюгин, Обухов

ZIP архив

Текст

, 15134 СОЮЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН 19) 6 Р 9/44 15/38 СУДАРСТВЕННЫЙ НОМИТЕТ ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯИ ГКНТ СССР АНИЕ ИЗОБРЕТЕНИЯ К АВТОРСКОМУ С 8 ИДЕТЕЛЬСТВУ 4118/24-2410.8710,89 Бюл, В 37(54) ДВУХУРОВНЕВОЕ УСТРОЙСТВО ДЛЯУПРАВЛЕНИЯ ПАМЯТЬЮ МИКРОКОМАНЦ(57) Изобретение относится к программируемым, адаптивным, распределенным системам памяти и может быть использовано в вычислительных системахдинамической архитектуры, для реализации операционных систем, сложныхимитаторов при построении комплексовотладки. Устройство содержит блокпамяти адресных микрокоманд, блок 23памяти кодов настройки, узлы 29 операционных микрокоманд,коммутаторы 5,6 32 адреса, регистры 3,4,31 адреса, регистры 14, .15 хранения, регистры 2 выдачи, блоки 7, 8, 33 модификации адреса, группу элементов ИЛИ 13 и1513448обеспечивает адаптивное управлениепроцессом Формирования операционныхмикрокоманд с оперативным изменением6 архитектуры и алгоритмов Аункциониро 5вания. 3 ил. 2 таблИзобретение относится к вычислительной технике и может быть использовано для управления памятью 15 микрокоманд при реализации программируемых адаптивных, распределенных, иерархических, систем памяти в специализированных управляющих и вычислительных системах динамической архитектуры, при реализации операционных систем, сложных имитаторов при построении комплексов отладки.Цель изобретения - повышение быстродействия и расширение Аункциональ ных возможностей за счет расширения средств настройки и адаптивной рас пределенной обработки инАормации,На фиг.1 приведена Аункциональная схема предлагаемого устройства; 30 на фиг,2 - функциональная схема блока модификации адреса, на Аиг,З - схема перестановки операционных микропрограмм.35двухуровневое устройство для управления памятью микрокоманд содержит блок 1 памяти адресных микрокоманд(Аиг. 1), блок 2 памяти кодов настройки, регистр 3 адреса, регистр 4 адре са кодов настройки, коммутатор 5адреса микрокоманд, коммутатор 6 адреса кодов настройки, блок 7 модификации адреса, блок 8 модиАикации адреса кодов настройки, первый 9, вто- . 45рой 10, третий 11 и четвертый 12 элементы задержки, блок 13 элементовИЛИ, первый 14 и второй 15 регистрыхранения адресных микрокоманд, первый 16 и второй 17 регистры хранения50кодов настройки, первый 18 и второй 19информационные входы устройствапервый 20 и второй 2 1 входы синхрониза. ции устройства, первый 22 и второй 23входы установки в "0" устройства,пер- . вый 24 и второй 25 входы условий устройства, И регистров 26 выдачи, вход 27 синхронизации регистров 26 выдачи, группу 28 выходов устройства, И узлов 29 операционных микрокоманд.Каждый узел 29 операционных микрокоманд содержит блок 30 памяти операционных микрокоманд, регистр 31 адреса операционных микрокоманд, коммутатор 32 адреса операционных микрокоманд, блок 33 модификации адресаоперационных микрокоманд, первый 34и второй 35 элементы задержки, первый 36 и второй 37 информационные входы узла операционных микрокоманд,третий вход 38 синхронизации устройства,вход 39 установки в "0" группы устройства, первый 40 и второй 41 выходы,входы 42 условий группы устройства.Каждый из блоков 7,8 и 33 модификации адреса содержит (фиг.2) регистра 43, поразрядный сумматор 44 помодулю два, вход 45 синхронизации,первую 46 группу входов, вход 47 группы условий блока, группу 48 выходовблока.Регистры 3 и 4 адреса предназначены для временной записи кода адресаочередной микрокоманды и информациио состоянии узлов операционных микрокоманд,Регистр 3 адреса разбит на зоны(Фиг.1), где К 1 - зона адреса очередной микрокоманды; К 2.К 2, -части зоны инАормации о состояниисоответственно (1М) узлов операционных микрокоманд, На выходе регистра адреса Аормируется адрес микрокоманды, дешифрируемый в блоке 1 памяти,Регистр 4 адреса кодов настройки раз-.бит на зоны (фиг,1), где К 1 - зона адреса очередного кода настройки; К 2фуК 2 ц - части зоны информации о состоянии соответственно (1, , И) узловоперационных микрокоманд, На выходерегистра адреса кодов настройки Аормируется адрес кода настройки, дешифрируемый в блоке 2 памяти,1513 448 6 внешней информации, Затем на входы 18и 19 устройства подается адрес, по 5Блок 1 памяти предназначен для хранения кодов адресных микрокоманд и информации об адресе очередных адресных микрокоманд, а также для хранения инАормации по координации работы узлов 29 операционных микрокоманд и разбит на ряд полей памяти, каждбму из которых соответствует своя группа выходов блока 1 памяти, Разделение бло;0 ка 1 памяти на поля и соответствующие им группы выходов приведены на фиг.1, где П 1 - поле управления коммутатором адресаф П 2 П 2- поля координации работы соответственно (1 М) узлов операционных микрокоманд; ПЗ - поле адресных микрокоманд; П 4 - поле адресов проверки условий формирования адресных микрокоманд; П 5 - после немодифицируемых адресов очередной адресной 20 микрокоманды; П 6 - поле управления регистрации хранения.Блок памяти 2 предназначен для хранения адресов кодов настройки и имеет аналогичный блоку памяти 1, сос тав и назначение полей памяти.Коммутатор 5 адреса, коммутатор 6 адреса кодов настройки и коммутатор 32 операционных микрокоманд предназначен для формирования зоны К 1 регистров адреса 3, 4, 31 соответственно в зависимости от инАормации, записанной в поле П 1 соответствующих блоков памяти.Если соответствующий полю П 1 первый инйормационный выход соответствующего блока памяти имеет значение "Лог,1", то соответствующий коммутатор адреса переключается на прием очередного входного слова с входа 18 (36) устройства, а если данный выход имеет значение "Лог,0", то соответствующий коммутатор адреса переключается на прием следующего адреса очередной микрокоманды (кода настройки)поступающего с группы выходов соответствующего блока модификации адреса . и пятой группы выходов соответствую,щего: блока памяти (поля П 5)., Регистр 31 адреса узла операционных микрокоманд предназначен для временной записи адреса очередноЯ операционной микрокоманды (или начального адреса) выходной последовательности операционных микрокоманд) и инАормации по координации работы узла55 операционных микрокоманд.Регистр 31 адреса разбит на зоны (Фиг.1), где К 1 - зона адреса очередной операционной микрокоманды; К 2эона информации по координации работы узла операционных микрокоманд,На выходе регистра адреса 31 формируется адрес, дешифрируемый в блоке 30памяти операционных микрокоманд.Блок 30 памяти операционных микрокоманд предназначен для храненияоперационных микрокоманд и информацииоб адресе очередной операционной микрокоманды, а также для хранения информации о состоянии узла операционныхмикрокоманд, Блок 30 памяти разбитна ряд полей памяти, каждому из которых соответствует своя группа выходов блока 30 памяти, Разделение блока 30 памяти на поля и соответствующие им группы выходов приведены наАиг.1, где П 1 - поле управления коммутатором адреса узла операционныхмикрокоманд; П 2 - поле информации осостоянии узла операционных микрокоманд; ПЗ - поле кодов операционных микрокоманд; П 4 - поле адресовпроверки условий формирования операционных микрокоманд; П 5 - поле немодифицируемых адресов очередной операционной микрокоманды,Блок 7 модиАикации адреса адресных микрокоманд предназначен для изменения условий формирования адреса очередной адресной микрокоманды, а также для направления процесса Формирования адреса по одному из возможных путей,определяемому соответствующими внешними условиями,Блоки 8 и 33 модификации адресовкодов настройки и операционных микрокоманд имеют аналогичное назначениеи отличаются, например, разрядностью.Устройство работает в двух режимах: настройки и основном. В режиме настройки. работает толькоблок 2 памяти кодов настройки, На входкоммутатора адреса кодов настройки 6 с одного из входов 19 через блок 13 элементов ИЛИ устройства подаетсяединичный сигнал, обеспечивающий переключение коммутатора 6 ца прием которому соответствующим сицхроимпульсом производится запись данных вблок 2 памяти кодов настройки (входы данных и записи не показаны). Записьданных циклически повторяется дотех пор, пока не будут заполцецы корректирующими кодами все необходимыедля изменения функционирования блока 1 памяти адресных микрокоманд зоныблока 2 памяти кодов настройки, Наэтом режим заканчивается.Работа устройства в основном режиме происходит следующим образом.В начале производится обнуление,устройства. Для этого на входы всехрегистров адреса подаются сигнал 1 Осброса, а затем синхроимпульсы,обеспечивающие считывание нулевых ячееквсех блоков памяти устройства. Информация, записанная по нулевому адресу,переводит все коммутаторы адреса на прием информации извне и устанавливает нулевые значения на входах К 2К 2 регистров 3 и 4Затем на информационный вход устройства подается код операции. 20.По соответствующему синхроимпульсу в регистры 3 и 8 адреса блоков памяти 1 и 2 (поле К 1) записывается свыхода коммутаторов 5 и 6 код операции, формируя совместно с информацией о состоянии блоков памяти операционных микрокоманд (поле К 2) начальный адрес микропрограмм блока па,мяти адресных микрокоманд и блокапамяти кодов настройки, и этим жесинхроимпульсом, задержанном на элементах задержки 9 и 10, производитсявыборка информации на этих блокахпамяти,Информация полей П 2, ПЗ поступаетна вход регистров хранения и выдается на входы узлов операционных микрокоманд с выходов регистров 14 и 15,или 16 и 17 в зависимости от значенияпризнака коррекции в коде операции исоответственно от значения поля П 6блоков памяти.Признак коррекции формируется вслучае необходимости изменения функционирования узлов операционных микро 45команд, в частности при реализацииоперации перестановки операционныхмикропрограмм, На Фиг.З приняты следующие обозначения.АК 1-АКЗ-коды адресных микрокоманд; К 1-КЗ коды операционных микрокоманд, По нулевомузначению признака коррекций блок 1 памяти адресных микрокоманд выходит вобласть памяти основной работы, гдев поле П 6 записано единичное значе 55ние, открывающее, при выполнении операции чтения из этого блока, регистры 14 и 15 выдачи, при этом блок 2 памяти кодов настройки переходит в зону с нулевым значением доля П 6, блокируя выходы регистров 16 и 17, При единичном значении признака коррекции происходит обратное, Блок 1 памяти адресных микрокоманд переходит в область с нулевым значением поля П 6 а блок 2 памяти кодов настройки переходит в область с единичным значением поля П 6, т.е, коды адресных микрокоманд поступают на входы узлов операционных микрокоманд из этого блока.Информация поля П 2 по соответствующему синхроимпульсу записывается в регистры 31 адреса (поле К 2)(1. М) узлов 29 операционных микрокоманд. В эти же регистры 31 (поле К 1) записывается с выходов коммутаторов 32 информация поля ПЗ, формируя начальный адрес операционной микропрограммы, Через время, определяемое временем задержки элемента 35, будет произведена выборка информации из блоков 30 памяти операционных микрокоманд,1(аждая очередная микрокоманда может быть либо выходным кодом линейной последовательности микрокоманд, либо ее код зависит от некоторых условий, определяющих ветвление соответствующего участка микропрограммы, В этом случае информация поля П 1 блоков памяти устройства поступает на управляющие входы соответствующих коммутаторов .и переключает их на прием слов полей П 4, П 5 соответствующих блоков памяти, Очередной немодифицируемый адрес Формируется в поле П 5 блока памяти и поступает на коммутатор. Адрес проверки условий ветвления формируется в поле П 4 блока памяти и модифицируется некоторыми внешними условиями в блоке модификации адреса, после чего также поступает на коммутатор адреса, где формируется адрес очередной микро- команды, который через коммутатор поступает на входы регистра адреса, "Информация о состоянии каждого из (1М) узлов 29 операционных микрокоманд поступает с выходов П 2 блоков 30 памяти операционных микрокоманд на входы зоны К 2 регистров адреса. блоков 1 и 2 памяти, создавая дополнительный код перехода на фиксируемую, заранее заданную, область памяти этих блоков, в частности, информация о занятости узлов операционных Микрокоманд обеспечивает пере 1513448 10ход блоков памяти адресных микрокоманд и настройки в области циклического ожидания сигналов об освобождении, блокирующую выдачу информации изэтих блоков,Коды операционных микрокоманд свыходов полей ПЗ блоков 30 памятиузлов операционных микрокоманд поступаютна входы регистров 26 выдачи иФпо соответствующим синхроимпульсамс выходов элементов 35 задержки записываются в них, после чего поступают на выходы устройства,1 15Блоки 7,8 и 33 модификации адреса работают следующим образом.На вход группы условий подается параллельный код входных условий и по синхроимпульсу, подаваемому на вход синхронизации блока, записывается в регистр 43, через регистр 43 (при наличии единицы в первом разряде первой группы подаваемой на управляющий вход регистра) подаются на вход поразрядного сумматора 44 по модулю два. Одновременно параллельный код входных условий подается на второй вход поразрядного сумматора 44. На третий вход поразрядного сумматора 44 подается адрес проверки условий ветвления с первой группы входов блока модификации адреса,Работа поразрядного сумматора 44 описывается следующим уравнением (уравнение описывает операции над -м 35 разрядом входных слов)(А 1 Ч В 3.) ОфС 1 р 1)дгде А - .-й разряд слова, хранящегося в запоминающем регистре; 4 ОВ - -й разряд слова входныхусловий, подаваемого непосредственно на сумматор 34,Сх - -й разряд адреса проверкиусловий ветвления,45Р 1 - 1-й разряд выходного словаблока модификации адреса,Ч - операция ЛОГИЧЕСКОЕ ИЛИ;О+ - операция СЛОЖЕНИЕ ПО МОДУЛЮДВА. 50Таким образом., блок модификации ад,реса реализует функцию модификации адреса как в зависимости от содержания текущего кода входных условий, так и от содержимого заранее.поданного в произвольный момент времени кода входных условий, зафиксированного по соответствующей команде в запоминающем регистре. Рассмотрим работу устройства в слуъ чае возникновения неисправности в отдельных блоках, Факт возникновения неисправности в блоке памяти операционных микрокоманд может быть зафиксирован при выходе этого блока из рабочей зоны путем задания изменения значений поля адресов проверки условий П 4 при выходе из этой зоны. Данное изменение выводит блок памяти опера- ционных микрокоманд в область памяти, содержащую в поле П 2 код неисправности, который выводит блоки памяти адресных микрокоманд или кодов настройки в область памяти, содержащую процедуры, адаптирующие устройство к возникшей неисправности.Наличие блока 2 памяти кодов настройки с соответствующими связями обеспечивает дополнительные возможности повышения достоверности функционирования устройства.Зафиксированная узлами 29 операционных микрокоманд неисправность блока 1 памяти адресных микрокоманд выводит узлы 44 на участок памяти, в поле П 2 которого записан код, выводящий (через зону К 2 регистра адреса) блок 1 памяти адресных микрокоманд в зону, блокирующую (с использованием поля Пб) выдачу информации из этого блока, а блок 2 памяти кодов настройки в зону, разрешающую (поле Пб) выдачу этого блока 2 информации, дублирующей информацию блока 1 памяти адресных микрокоманд, Тем самым про" изводится подмена одного блока памяти другим.В табл,1 приведен пример структуры прошивок памяти операционных микрокоманд, в табл,2 - адресных (в случае трех блоков операционных микро- команд)Формула изобретенияДвухуровневое устройство для управления памятью микрокоманд, содержащее коммутатор адреса микрокоманд, регистр адреса, блок памяти адресных микрокоманд, блок модификации адреса и с первого по И-й узлы операционных микрокоманд, первые информационные выходы которых являются с первого но И-й выходами устройства соответственно, первый информационный вход коммутатора адреса микрокоманд является первым информационным входом20 устройства, выход коммутатора адреса микрокоманд соединен с первым инАормационным входом регистра адреса, выход которого соединен с адресным входом блока памяти адресных микрокоманд, выходы первого, пятого и четвертого полей которого соединены с управляющим входом и разрядами первой группы второго инАормационного входа коммутатора адреса микрокоманд и первым инАормационным входом блока модификации адреса, второй информационный вход и разряды выходов которого соединены соответственно с первым входом условий устройства и с разрядами второй группы второго информационного входа коммутатора адреса микрокоманд, вторые информационные выходы с первого по М-й узлов операционных микрокоманд соединены с второго по (И+1)-й информационными входами регистра адреса соответственно, входы условий и установки в 0 с первого по И-й узлов операционных 25 микрокоманд образуют группы входов условий и установки в 0" устройства, соответственно, входы синхронизации регистра адреса, блока памяти адресных микрокоманд, блока модийикации ад-ЗО реса и с первого по И-й узлов операционных микрокоманд являются соответствующими входами группы входов синхронизации устройства, вход установки виО регистра адреса является первым одноименным входом устройства, о тл и 35 ч а ю щ е е с я тем, что, с целью повышения быстродействия и расширения функциональных возможностей за счет расширения средств настроики и адаптивОнной распределенной обработки информации, в него введены коммутатор адреса кодов настройки, регистр адреса кодов настройки, блок памяти кодов настройки, блок модификации адреса кодов на-45 стройки, блок элементов ИЛИ, первый и второй регистры хранения адресных микрокоманд и первый и второй регистры хранения кодов настройки, первый инАормационный вход коммУтатоРа адРеса 50 кодов настройки соединен с первым инАормационным входом устройствавыход коммутатора адреса кодов настройки соединен с первым информационным входом регистра адреса кодов настройки,вход установки в 0 и выход которогосоединены с вторым входом установки в"0" устройства и с адресным входомблока памяти кодов настройки, выходыс первого по пятое полей которого соединены с первым входом. блока элементов ИЛИ, информационными входами первого и второго регистров хранения кодов настройки, первым инАормационнымвходом блока модификации адреса кодовнастройки и разрядами первой группывторого информационного входа коммутатора адреса кодов настройки, разрядывторой группы второго информационноговхода которого соединены с разрядамивыхода блока модификации адреса кодовнастройки, второй информационныйвход которого является вторым входомусловий устройства, выходы второго итретьего полей блока памяти адресныхмикрокоманд соединены с информационными входами первого и второго регистров хранения адресных микрокомандсоответственно, выходы которых.соединены с выходами первого и второго регистров хранения кодов настройки ипервым и вторым информационными входами всех узлов операционных микрокоманд соответственно, вторые информационные выходы которых соединены свходами первой группы блока элементов .ИЛИ, выход и выходы группы которого соединены с управляющим входомкоммутатора адреса кодов настройки ис второго по (И+1)-й инАормационнымивходами регистра адреса кодов настрой;ки соответственно, входы второй группы и второй вход блока элементовИЛИ являются вторым инАормационнымвходом и входом управления режимомустройства соответственно, входысинхронизации регистра адреса кодовнастройки, блока памяти кодов настройки, блока модиАикации адреса кодовнастройки,перых и вторых регистровхранения адресных микрокоманд и кодовнастройки являются соответствующими13 4 1513448 1 Таблица П 1 П 2 ПЗП 4 П 5 Иикрокоманды ОО 10 10 10 00 10 10 00 10 00 11 РОО К 11 Кгг К 13 К 14 К 21 К 22 К 23 К 31 К 32 КМО АО АК 1 0 0 0 0 Е 0 0 Е Р Е Е АК 2 пгэ АО АЕ 0000 АК 2 АК 2 АКЗ АКЗ АК 1 АВ.2 0000 АКЗ АК 1 ВКЗ АК 1 АКЗ АК 2 0000 АК 1 АК 1 АКО АК 2 АЙО АКО АЗ АЮ АБЕП р и м е ч а н и е: АМ - область памяти при наличии сигналов неисправности от узлов операционных микрокоманд;АР - область памяти при наличии признакакоррекции,АЯ - -я область памяти ожидания сигналов готовности узлов операционных микрокоманд. Фиг Иикрокоманды П 1 П 21 П 22 1 ).00 АК 1+100 АК +200 АК 1+300 - АО00 АВ 2+100 АК 2+2АО АО00 АКЗ+00 АО00 АО. й.Таблица 2ШПЗ П 4 П 5 П 6ЪюАКО 00 00 1000 00 А 1+1. 1000 00 А 1+2 1000 00 АО 1000 00 А 2+1 1000 00 АО000 00 АОАМ ОАР ОАЯ 01513448 Составитель В,Кумыкампдактор Л,Зайцева Техред Л.Олийнык Корректор О,Цип Подписное СССРтениям и ская наб,Гагарина, 10 Ужгор БпОк ОЯИямИ а 3 увснв ииирясиан 8Заказ 6080/48 Тираж 668 ВНИИПИ Государственного комитета по изоб 113035, Москва, Ж, РаПроизводственно-издательский комбинат Патент Юпак паттиКОЗОЙ Насяойкатиям при ГК4/5

Смотреть

Заявка

4354118, 02.10.1987

ПРЕДПРИЯТИЕ ПЯ В-2969

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

МПК / Метки

МПК: G06F 17/27, G06F 9/44

Метки: двухуровневое, микрокоманд, памятью

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

Код ссылки

<a href="https://patents.su/8-1513448-dvukhurovnevoe-ustrojjstvo-dlya-upravleniya-pamyatyu-mikrokomand.html" target="_blank" rel="follow" title="База патентов СССР">Двухуровневое устройство для управления памятью микрокоманд</a>

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