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

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

Авторы: Мельников, Самошин

Есть еще 1 страница.

Смотреть все страницы или скачать ZIP архив

Текст

СОЮЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСКИХРЕСПУБЛИК И 9) 111) 92 6 Р 9 ОПИСАНИЕ ИЗОБРЕТЕНИЯ А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИ(56) Авторское свидетельство СССР В 596947, кл. С 06 Р 9/22, 978,Авторское свидетельство СССР И 1034037, кл. С 06 Р 9/22, 1982, (54) АДАПТИВНО МОДУЛЬ МИКРОПРОГРА 1 МНОГО УСТРОЙСТВА УПРАВЛЕНИЯ (57) Изобретение относится к вычислительной технике и может быть использовано при построении высокопроизводительных отказоустойчивых управляющих и вычислительных систем с использованием множества однотипных микро,программных модулей, выполненных в виде БИС. Целью изобретения является повышение надежности путем передачи управления дублирующим модулям. С этой целью в адаптивный модульсодержащий два блока памяти, коммутатор адреса, регистр микрокоманд,мультиплексор логических условий,триггер пуска, генератор тактовыхимпульсов, два блока элементов И,блок элементов ИЛИ, элемент И, триэлемента ИЛИ и одновибратор, введеныбуферный регистр адреса, регистр адреса микропрограммы, регистр адреса модуля-дублера, демультиплексорадреса, демультиплексор кода микроопераций, демультиплексор передачиуправления, коммутатор передачиадреса, коммутатор передачи управ -ляющей информации, триггер инициализации отказа, два триггера отказа,два сумматора по модулю два, второйблок элементов ИЛИ. 2 ил.12 Изобретение относится к вычислительной технике и может быть использовано при построении высокопроизводительных отказоустойчивых управляющих и вычислительных систем с использ ов анием множества одно тип-ных микропрограммных модулей, выполненных в виде БИС,Цель изобретения - повышение надежности путем передачи управления дублирующим модулям.1 73926 138. - 38.(п) модуля, выход 39признака отказа модуля.Первый сумматор 10 по модулю два(фиг.2) содержит первый и второй5 блоки 40 и 41 элементов суммированияпо модулю два и элемент 42 суммирования по модули два. Аналогично второй сумматор 11 по модулю два (фиг,2)содержит первый и второй блоки 43и 44 элементов суммированйя по модулю два и элемент 45 суммирования помодулю два. Назначение основных элементов На фиг.1 представлена функциональная схема адаптивного модуля микропрограммного устройства управления; на фиг,2 - функциональная схема сумматора по модулю два.1 адаптивного модуля.Блок 1 памяти предназначен дляхранения собственных микропрограммуправления, а также кодов передачиуправления аналогичным модулям. Блок2 памяти предназначен для хранения 20 микропрограмм управления к-го микропрограммного модуля дублера, а также кодов передачи управления другиманалогичным модулям. Регистр 3адреса предназначен для заданияадреса микрокоманды при считыванииинформации или из блока 1, или изблока 2. Регистр 6 микрокоманд предназначен для хранения микрокоманды.Мультиплексор 7 логических условий 30 предназначен для формирования значения модифицируемого разряда адреса очередной микрокоманды и реализует следующую логическую функцию: где У 1 - выходной сигнал мультиплексора 7;х конъюнкция К М Ы, соответствующая коду с выхода 6.1 кода логическихусловий, разрешающему прохождение модифицируемогоадресного разряда К безизменений;450(,соответствующие кодам, определяющим прохождение на выход мультиплексора 7 одного из сигналов логических условий г г г со входа 35 логических условий. Коммутатор 13 адреса микрокоманды служит для коммутации очередной микрокоманды. При наличии признака конца микропрограммы на выходе 6.5 Адаптивный модуль микропрограммного устройства управления (фиг.1)содержит первый блок 1 памяти, вто рой блок 2 памяти, регистр 3 адреса,демультиплексор 4 адреса, буферныйрегистр 5 адреса, регистр 6 микрокоманд с полями: поле 6.1 кода логических условий, поле 6,2 модифици-,руемого разряда адреса, поле 6.3кода микроопераций, поле 6.4 коданемодифицируемых разрядов адреса,поле 6.5 признака метки конца микропрограммы, поле 6.6 контрольного признака четности, мультиплексор7 логических условий, демультиплексор 8 кода микроопераций, демультиплексор 9 передачи управления, первый сумматор 10 по модули два, втоу = х а + х г + х г х г24 2МФ 1 К фрой сумматор 11 по модулю два, регистр 12 адреса микропрограммы, коммутатор 13 адреса, первый блок 14элементов И, первый блок 15 элемен-,тов ИЛИ, первый элемент ИЛИ 16, триг.гер 17 пуска, генератор 18 тактовыхимпульсов, одновибратор 19, элементИ 20, второй элемент ИЛИ 21, третийэлемент ИЛИ 22, регистр 23 адресамодуля-дублера, коммутатор 24 передачи управляющей информации, комму- х 2= М,с 72, .Ы, х = сС Мтатор 25 передачи адреса, триггер26 инициализации отказа, первый их 4= 01 Ы 20 ес - конъюнкции,4 1 2С,второй триггеры 27 и 28 отказа, второй блок 29 элементов ИЛИ, второйблок 30 элементов И и имеет вход 31пуска модуля, информационный вход32 модуля, первый вход 33 кода операции модуля, вторые входы 34,134. (и) кода операции модуля, вход 35логических условий модуля, первыйи второй выходы 36 и 37 микроопераций модуляинформационные выходы20 25 30 35 40 55 регистра 6 очередной адрес микрокоманды коммутируется или с входа 33 кода операции, или с входа 34,в 34,(п) от других аналогичных модулей. При отсутствии признака конца микропрограммы адрес очередной микрокоманды коммутируется в зави - симости от хода выполнения микропрограммы. Демультиплексор 4 предназначен для изменения направления передачи адресов микрокоманд, в зависимости от режима функционирования модуля, В режиме обработки собственной микропрограммы выборка микрокоманд производится из блока 1, в режиме обработки микропрограммы основного модуля (в случае отказа его собственного блока 1) выборка микрокоманд производится из блока 2. Регистр 5 служит для хранения адреса микрокоманды, с которой продолжается выполнение собственной микропрограммы после завершения выполнения микропрограммы основного модуля (если его собственный блок 1 отказал) через блок 2 данного модуля-дублера,Блок 14 элементов И служит для разрешения продолжения выполнения собственной микропрограммы после того, как обработка микропрограммы отказавшего основного модуля через блок 2 данного модуля завершена.Блок 15 элементов ИЛИ предназначен для сборки микрокоманд в зависимости от режима функционирования модуляДемультиплексор 8 служит для разделения выдачи кодов микроопераций в зависимости от обрабатываемой в данный момент микропрограммы (или собственной, или отказавшего основного модуля). Элемент ИЛИ 16 предназначен для сборки сигналов для инициации работы модуля. Триггер 17 пуска служит для запуска генератора 18, включение которого происходит по сигналу пуска или с входа 31, или при поступлении информации от аналоговых модулей с входа 34.1 - 34.(п), или при поступлении кода операции на вход 33 модуля. Генератор 18 тактовых импульсов служит для синхронизации работы модуля. На его выходах формируются первый и второй тактовые импульсы. Блок 29 элементов ИЛИ предназначен для сборки кода операции с входа 33 и кодов адресов с входов 34.1 34,(п-) с последующей передачейчерез коммутатор 13 адреса на регистр 3. Одновибратор 19 предназначен для формирования импульса поокончании микропрограммы (команды),что характеризуется появлением признака конец команды на выходе поля6.5 регистра 6, Элемент ИЛИ 21 иэлемент И 20 служат для формированиясигнала на прекращение работы модуля. Элемент ИЛИ 22 служит для сборки сигналов на обнуление триггера 26 илипосле завершения обработки микропрограммы, или после отказа блока 2 приобработке микропрограммы от основного модуля.1Регистр 23 адреса модуля-дублера .(для данного модуля) предназначен для хранения информации адреса того модуля, в котором имеется блок 2 с ,набором микропрограмм, идентичным набору микропрограмм блока 1 данного модуля, т.е. регистр 23 хранит информацию о том, куда необходимо передать код операции, если блок 1 данного модуля отказал. Регистр 12 предназначен для хранения информации об адресе микропрограммы и выдачи ее аналогичному модулю-дублеру (содержащему набор микропрограмм блока 1 данного модуля в случае отказа блока 1 данного модуля. Триггер 26 отказа предназначен для инициализации отказа блока 1 основного модуля, микропрограмма которого обрабатывается через блок 2 данного модуля-дублера. Блок 30 элементов И служит для разрешения записи адреса микропрограммы в регистр 12, еслиосновной модуль находится в работоспособном состоянии. Коммутатор 24 предназначен для коммутации управляющей информации (адреса микрокоманды) в зависимости от режима работы модуля при передаче информациив другой аналогичный модуль. Коммутатор 25 служит для коммутации адреса передачи управления (т.е. адреса модуля, которому необходимо передать информацию) в зависимости отрежима функционирования модуля. Демультиплексор 9 предназначен дляпередачи управления другому аналогичному модулю по выходам 38,138.(п) модуля. Сумматор 1 О служит для обнаружения отказа блока 1.Сумматор 11 служит для обнаруженияотказа блока 2. Триггеры 27 и 28ного модуля; в режиме передачи управ ления модулю-дублеру при отказе основного блока памяти данного модуля; в режиме обработки микропрограммы основного модуля при отказе его первого блока памяти аналогичным модулем-дублером.Адаптивный модуль работает следующим образом.В исходном состоянии элементы памяти, кроме регистра 23, находятся в нулевом состоянии. В регистр 23 записана информация об адресе модуля-дублера для данного модуля. 1 О 15 20 Режим обработки собственной микропрограммы. Работа модуля начинается с поступления на вход 31 сигнала пуска,Данный сигнал через элемент 16 поступает на вход установки триггера 17 и устанавливает его в еди - ничное достояние. Сигнал с прямого выхода триггера 17 разрешает прохождение с входа 33 кода операции через блок 29 и коммутатор 13 на регистр 3 по концу первого тактового импульса, поступающего с гене - ратора 18. Код операции определяет начальный адрес микропрограммы. Ввиду того, что триггер 26 находится в нулевом состоянии (т.е. его основной модуль исправен), нулевой сигнал с прямого выхода триггера 26, поступая на управляющие входы демультиплексоров 4 и 8, а также инверсные входы блока 14 определяет обработку данных модулем србственной микропрограммы через блок 1. Второй тактовый импульс с выхода генератора 18 производит запись информации иэ блока 1 в регистр 6 по адресу, хранящемуся в регистре 3. При записи информации в регистр 6с выхода поля 6.3 на выход 36 модуля выдается первая микрокоманда на управление, например, операционным устройством. На выходе 6,5 регистра 6 сигнал логического нуля поступает на управляющий вход коммутатора 13 и разрешает запись адреса оче 25 30 35,40 45 50 55 отказа служат для хранения признаков отказа блокови 2 соответственно,Адаптивный модуль может Функционировать в следующих режимах: в ре 5 жиме обработки собственной микропрог. раммы; в режиме передачи управления аналогичному модулю при отсутствии отказа основного блока памяти данредной микрокоманды в зависимости от информации, находящейся в поле 6.1, поле 6.2 и поле 6.4. Если микро- команда является микрокомандой линейной последовательности, то код адреса определяется кодом немодифицируемых разрядов адреса с выхода 6.4 и модифицируемым разрядом адреса с выхода 6.2 регистра 6. В этом случае модифицируемый разряд адреса при нулевом коде логических условий с выхода 6.1 регистра 6 через мультиплексор 7 проходит без изменения.Если микрокоманда является микро- командой ветвления, то адрес очередной микрокоманды определяется постоянной частью кода адреса (немодифи - цируемой частью) и переменной частью (модифицируемым разрядом адреса).Если проверяемое логическое условие выполнено, то модифицируемая часть кода адреса имеет единичное значение, и сформированный таким образом адрес очередной микрокоманды через коммутатор 13 поступает на регистр 3 по тактовому импульсу с выхода генератора 18. Далее модуль функционирует аналогично указанному.Режим передачи управления аналогичному модулю при отсутствии отказа основного блока памяти данного модуля. При выполнении микропрограмм модуль может передать управление аналогичному модулю, Передача управления осуществляется следующим об-. разом. С выхода 6,1 регистра 6 выдает ся код номера модуля, которому необходимо передать управление. Если блок 1 исправен (нулевой сигнал с прямого выхода триггера 27), то информация с поля 6.1 регистра 6 о коде номера модуля, которому передается управление, через коммутатор 25 поступает на управляющий вход демультиплексора 9, на информационный вход которого через коммутатор 24 поступает адрес микропрограммы с поля 6.4 регистра 6, После передачи управления через демультиплексор 9 другому аналогичному модулю данный модуль продолжает функционировать в режиме обработки собственной микропрограммы. После прихода адреса, с которого необходимо начать. выдачу микрокоманд,от другого модуля по одному из входов 34.1 - 34,(п) данный адресчерез блок 29 поступает наинформа 1273926ционный вход коммутатора 13 и на элемент 16. На выходе элемента 16 появляется сигнал, который перебрасывает триггер 17 в единичное состояние и тем самым запускает генератор 5 18. Первым тактовым импульсом с. выхода генератора 18, поступающим на синхровход регистра 3, информация через коммутатор 13 заносится в регистр 3. По этому адресу происходит О считывание информации из блока 1. Далее модуль работает аналогично указанному.Режим передачи управления модулю - дублеру при отказе основного блока 15 памяти данного модуля, По мере выдачи информации модулем происходит ее контроль в сумматорах 10 (контролирует блок 1) и 11 (контролирует блок 2) (фиг.2) . При этом происходит 20 контроль как адресной, так и операционной информации и при искажении одного из кодов или несоответствии адреса выбранной микрокоманде сумматор 10 (11) формирует сигнал отказа 25 соответствующего блока памяти, Этот сигнал с приходом тактового импульса на синхровход соответствующего триггера 27 или 28 перебрасывает данный триггер В единичное состоя ние. При отказе блока 1 единичный сигнал с прямого выхода триггера 27 через элемент 21 обнуляет триггер 17, а также производит перекоммутацию и передачу управления определен- З 5 ному модулю-дублеру, адрес которого хранится в регистре 23, а код операции, при выполнении которой произошел отказ, хранится в регистре 12. Управляющая информация с регистров 2340 и 12 через коммутаторы 24 и 25, а также сигнал отказа с триггера 27 поступает на демультиплексор 9, который производит передачу кода операции (адреса невыполненной в данном 45 модуле микропрограммы) определенному модулю-дублеру. После отказа блока 1 данный моДуль способен выполнять функции модуля-дублера по отношению к определенному модулю устройства, т.е. в блоке 2 данного модуля хранит. ся набор микропрограмм, идентичный набору микропрограмм блока 1 заранее определенного модуля устройства.55 Режим обработки микропрограммы основного модуля при отказе его пер вого блока памяти аналогичным модулем-дублером.В этом режиме от отказавшего модуля, например, на вход 34.1 поступает управляющая информация, по которой триггер 26 устанавливается в единичное состояние, запрещая тем самым через блок 30 запись пришедшего кода операции в регистр 12 (в нем продолжает храниться информация об адресе текущей микропрограммы данного модуля), Единичнъй сигнал с прямого выхода триггера 26, поступая на управляющие входы демультиплексоров 4 и 8, а также на инверсные входы блока 14 организует хранение текущей микроко - манды в регистре 5 и определяет обработку данным модулем пришедшего кода операции через блок 2 и выдачу операционных микрокоманд на выход 37 модуля. Если при выполнении микропрограммы отказ блока 2 не происходит, то после окончания обработки микропрограммы с выхода поля 6.5 регистра 6 единичный сигнал через одновибратор 19 и элемент 22 обнуляет триггер 26 и выполнение прерванной микропрограммы через блок 1 про- должается. При обнаружении отказа блока 2 единичный сигнал с прямого выхода триггера 28 через элемент 22 также обнуляет триггер 26, продолжая тем самым выполнение прерванной микропрограммы, а на выходе 39 модуля появляется единичный сигнал, говорящий о том, что произошел такой отказ блока 1 основного модуля и блока 2 данного модуля-дублера, что определенный набор микропрограмм этих двух блоков памяти выполниться не сможет (полный отказ данного набора микропрограмм). Если выполнение собственной микропрограммы в данном модуле не прерывалось обращениями к блоку 2 со стороны основного модуля, то . после окончания микропрограммы сигнал с выхода поля 6.5 регистра 6 обнуляет триггер 17 через элемент 20, так как триггер 28 находился в нулевом состоянии. Если он был в единичном состоянии (был запрос к блоку 2), то по окончании микропрограммы запроса триггер 17 не обнуляется (так как на инверсном входе элемента 20 присутствует единичный сигнал) и модуль продолжает выполнение собственной микропрограммы через блок 1 аналогично укаэанному.510 Адаптивный модуль микропрограммного устройства управления, содер-жащий два блока памяти, коммутатор адреса, регистр микрокоманд, мультиплексор логических условий, триггерпуска, генератбр тактовых импульсов,два блока элементов И, блок элементов ИЛИ, элемент И, три элементаИЛИ и одновибратор, причем выходпервого блока элементов И соединен садресным входом первого блока памяти, выход поля логических условий,выход модифицируемого разряда адреса и выход немодифицируемых разрядов адреса регистра микрокомандподключены соответственно к управляющему входу и первому информационному входу мультиплексора логических условий и немодифицируемым разрядам первого информационного входакоммутатора адреса, выход мультиплексора логических условий соединен смодифицируемым разрядом первого инФормационного входа коммутатора адреса, вход пуска модуля подключен кпервому входу первого элемента ИЛИ,выход которого соединен с входом установки триггера пуска, прямой выход триггера пуска подключен к входузапуска генератора тактовых импульсов, первый выход которого соединенс синхровходом регистра адреса, выход коммутатора адреса подключен кинформационному входу регистра адреса, вход логических условий модулясоединен с вторым информационным входом мультиплексора логических условий, второй выход генератора тактовых импульсов подключен к синхровходу регистра микрокоманд, о т л ич а ю щ и й с я тем, что, с цельюповьппения надежности путем передачи управления дублирующим модулям,он содержит буферный регистр адреса,регистр адреса микропрограммы, регистр адреса модуля-дублера, демультиплексор адреса, демультиплексоркода микроонераций, демультиплексорпередачи управления, коммутаторпередачи адреса, коммутатор передачи управляющей информации, триггеринициализации отказа, два триггераотказа, два сумматора по модулю два,второй блок элементов ИЛИ, причемвыход первого блока памяти соединенс первым входом первого блока зле 15 20 25 30 35 40 45 50 55 к информационному входу регистрамикрокоманд, выход кода микроопераций регистра микрокоманд соединен с информационным входом демультиплексо ра кода микроопераций, первый выход которого подключен к первому выходу микроопераций модуля и первому входу первого сумматора по модулю два, второй выход демультиплексора кода микроопераций соединен с вторымвыходом микроопераций модуля и пер вым входом второго сумматора по модулю два, выход логических условийрегистра микрокоманд, выход немодифицируемых разрядов адреса регистрамикрокоманд и выход мультиплексоралогических условий подключены к первым входам первого и второго сумматоров по модулю два, выход контрольного признака четности регистра микрокоманд соединен с вторыми входамипервого и второго сумматоров по модулю два, первый вход кода операциимодуля подключен к первому входу второго блока элементов ИЛИ, остальныеивходов которого (и - число модулей микропрограммного устройствауправления) соединены с одноименными входами второй группы входов кода операции модуля, -й вход (1- 1, и)-й группы вторых входовкода операции модуля подключен квходу установки триггера инициализации отказа, единичный выход которогосоединен с инверсным входом элемента И, инверсными входами первого ивторого блоков. элементов И, управляющими входами демультиплексора адреса и демультиплексора кода микроопераций, выход второго блока эле-ментов ИЛИ подключен к второму входу первого элемента ИЛИ, второму информа. ционному входу коммутатора адреса ипрямому входу второго блока элементов И, выход которого соединен с информационным входом регистра адресамикропрограммы, выход регистра адреса микропрограммы подключен к первому информационному входу коммутатора передачи управляющей информации,выход которого соединен с информационным входом демультиплексора передачи управления, п -1 выходов которого являются информационными выходами,модуля, выход немодифицируемых 15 аз 1рядов адреса регистра микрокоманд ивыход мультиплексора логических усло.вий подключены к второму информационному входу коммутатора передачиуправляющей информации, единичныйвыход триггера пуска соединен с пря-.мым управляющим входом коммутатораадреса, выход регистра адреса подключен к информационному входу демультиплексора адреса, первый выход которого соединен с входом буферного регистра адреса,. выход буферного регистра адреса подключен к пря.мому входу первого блока элементовИ, выход которого соединен с третьим входом первого сумматора по модулю два, выход первого сумматора по 5модулю два подключен к информационному входу первого триггера отказа, единичный выход которого соединен с информационным входом демультиплексора передачи управления, прямыми и инверсными управляющими входами коммутатора передачи адреса икоммутатора передачи управляющейинформации и первым входом второгоэлемента ИЛИ, выход которого подключен к входу сброса триггера пуска, выход признака конца микропрограммы регистра микрокоманд соединенс информационным входом демультиплек.сора кода микроопераций, инверсным 30управляющим входом коммутатора адреса и входом одновибратора, выходкоторого подключен к первому входутретьего элемента ИЛИ и прямомувходу элемента И, выход элемента И соединен с вторым входом второгоэлемента ИЛИ, первый выход генератора тактовых импульсов подключен ксинхровходу регистра адреса микропрограммы и синхровходам первого ивторого триггеров отказа, единичныйвыход второго триггера отказа соединен с выходом признака отказа модуля и вторым входом третьего элемента ИЛИ, выход которого подключенк входу сброса триггера инициализации отказа, выход второго сумматорапо модулю два соединен с информационным входом второго триггера отказа,второй выход демультиплексора адреса подключен к третьему входу второго сумматора по модулю два и адресному входу второго блока памяти,выход которого соединен с вторымвходом первого блока элементов ИЛИ,выход контрольного признака четностирегистра адреса подключен к четвертымвходам первого и второго сумматоров по модулю два, информационныйвход модуля соединен с входом регистра адреса модуля-дублера, выход которого подключен к первому информационному входу коммутатора передачиадреса, второй информационный входкоторого соединен с выходом кодалогических условий регистра микрокоманд, а выход коммутатора передачиадреса подключен к управляющему входу демультиплексора передачи управления.1273926Ю 0Составитель Г.Виталиев Редактор С.Лисина Техред Л.Сердюкова Корректор А, Зимокосов Заказ 6478/47 Тираж 671 Подписное ВНИИПИ Государственного комитета СССРпо делам изобретений и открытий113035, Москва, Ж, Раушская наб.,д. 4/5 Производственно-полиграфическое предприятие, г.ужгород, ул. Проектная, 4

Смотреть

Заявка

3789059, 13.09.1984

ФИЛИАЛ "ВОСХОД" МОСКОВСКОГО ОРДЕНА ЛЕНИНА И ОРДЕНА ОКТЯБРЬСКОЙ РЕВОЛЮЦИИ АВИАЦИОННОГО ИНСТИТУТА ИМ. СЕРГО ОРДЖОНИКИДЗЕ

САМОШИН ВЛАДИМИР НИКОЛАЕВИЧ, МЕЛЬНИКОВ ВЛАДИМИР АЛЕКСЕЕВИЧ

МПК / Метки

МПК: G06F 9/22

Метки: адаптивный, микропрограммного, модуль, устройства

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

Код ссылки

<a href="https://patents.su/9-1273926-adaptivnyjj-modul-mikroprogrammnogo-ustrojjstva-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Адаптивный модуль микропрограммного устройства управления</a>

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