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

 

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧКСНИХ

Н=СПУВЛ1К

° ««

ОПИСАНИЕ ИЗОБРЕ . :- -: "= "

К ABTOPCHGMV СВИДЕТЕПЬСТВ ;=."

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДКЛАМ ИЗОБРЕТКНИЙ И ОТНРЫтИй (21) 3803833/24-24 (22),9.10.84 (46) 15.02.86.Бюл. Y-" 6 (72) В.И.Игнатьева, А.А.Кондрашев, В.И.Румянцев и В.И.1Дтейнберг (53) 681.33((088.8) (56) Авторское свидетельство СССР

Ф 1065855, кл. G 06 F 9/22, 1982.

Патент США Р 3831148, кл. G 06 F 11/4, 1974. (54)(57) МИКРОПРОГРАММНОЕ УСТРОЙСТВО

УПРАВЛЕНИЯ С КОНТРОЛЕМ, содержащее блок памяти микрокоманд, первый и второй счетчики команд, блок коммутации адреса, элемент И, элемент

ИЛИ, триггер признака контроля, триггер ошибки, регистр адреса, регистр микрокоманд, блок .декодирования, блок синхронизации, блок снерт ки по модулю два, блок формирования контрольной суммы, причем ныход регистра адреса соединен с адресным входом блока памяти микрокоманд и первым входом блока свертки по модулю два и является выходом адреса микрокаманд устройства, выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд и с вторым входом блока свертки па модулю два и является выходом микрокоманд устрой. ства, первый информационный выход регистра мчкрокоманд соединен с информационным входом первorо счетчика команд, а второй информационный выход регистра микрокоманд соединен с входом записи переноса блока формирования контрольной суммы и информационным входом блока декодирования, первый, второй и третий выходы кстарогс соединены соответс7— вень.o 7eрнь-.- н одом элемента И, не рньм «яр аз!! я >apM В ходом блок я кам

:-б та. ии адреса и входам режима бло. а формирона :;;я контрольной суммы, с —,зрнoro HQ шест.-й выходы блока синхра;:. зяцин .-,.Q,êëþ÷åíû соотнетотвеина к с иихроннзирующю1 входам блока комм,-адни адреса, триггера признака контроля, .регистра адреса микрокомя;:ц, б .Окя памяти микрокод Hp„. регистра микракоманд и блокя . :;ОрмирОВяння контрольной суммы информациQHHwк вход регистра адреся микракоманд с единен с первым вы ходом блока ко -.Утации адреса, второй "=:ûõoд каторогс .Оединен с тактоБым входам пернагo счетчикя камянд тр .-:.ий выход блока коммутации адреса с..оецинеч с- тананачным нходом первого счетчика команд и сбнаса блока формирования контрольной суммы и триггера ошибки, а четв .ртый выход блока коммутации ядоеся соединен тяктОВым Входам второго счет.икя команд выход каторогo Q первым информационным входам блока коммутации адреса, ньгход переполнения первого сче""чика каманL; соединен Q ВхОдОм записи Ошибки блана формирования конгрольнои суммы, я информационный Выс Qp соединен с В topbIM инфар мацион м входом блока коммутации адреса, выход элемента И соединен с информационным входом триггера признака контроля, выход каторога соединен с входа:-: синхронизации триггера ошибки,. с вторым управляющим входом блока коммутации адре1211725 са и входом блокировки блока синхронизации, вход запуска блэка синхронизации является входом запуска устройства, а вход останова соединен с выходом триггера ошибки, информационный вход триггера ошибки соединен с выходом элемента И3И, пе1 вый вход которого соединен = выходом ошибки блока свертки по модулю два, о т л и ч а ю щ е е с я тем, что, с целью повышения достоверности контроля, в него введены счетчик зон памяти микрокаманд и мультиплексор контроля, информационные входы которога соединены с выходами соответствующих зон блока памяти микро«оманд, управляющие входы мультиИзобретение относится к вычислительной технике и может быть использована для повышения надежности вычислительных систем с микропрограммным управлением.

Целью изобретения является повышение достоверности контроля.

На фиг.1 представлена функциональная схема микропрограммного устройства управления с контролем; на фиг,2 — то же, блока коммутации адреса; на фиг.3 — та же, блока декодирования; на фиг.4 — та же,, блока синхронизации; на фиг.5 — то же, блока свертки по модулю два; на фиг,б — то же,блока формирования контрольной суммы: на фиг.7 — временные диаграммы работы устройства в режиме контроля.

Иикропраграммное устройство уп— равления с контролем содержит (фиг,"j блок 1 памяти микрокоманд, первый

2 и второй 3 счетчики каманл, блок

4 коммутации адреса, элемент И 5, элемент ИЛИ 6, триггер 7 признака контроля, триггер 8 ошибки, регистр

9 адреса, регистр 10 микрокоманд, блок 11 декодирования, блок 12 синхронизации, блок 3 свертки по модулю два, блок 14 формирования контрольной суммы, счетчик 15 зон памяти микрокоманд, мультиплексор 16 контроля, первый вход 17 блока 13 выход 18 адреса микрокоманд устройплексара контроля соединены с сооТ ветствующими выходами разрядов счетчика зон памяти микрокоманд, а выход подключен к информационному входу блока Формирования контрольной суммы, разрешаюший вход которого соединен с. выходом триггера признака контроля, а выход ошибки блока формирования контрольной суммы соединен с вторым входом элемента ИЛИ, выход переполнения счетчика зан памяти микрокоманц соединен с вторым входом элемента И, а входы сброса и синхронизации соединены соответственна с третьим выходом блока ком— мутации адреса и выходом переполнения первого счетчика команд. ства, второй вход 19 блока 13, выход 20 микракоманд устройства, вход

21 записи переноса блока 14, информационный вход 2? блока 11, первый

23 и второй 24 выходы блока 11, третий выход 25 блока 11, выходы 2631 блока 12„. первый 32, второй 33 и гретий 34 выходы блока 4, четвертый выход 35 блока 4, первый информационный вход 36 блока 4, вход 37 записи ошибки блока 14, .второй информационный вход 38 блока 4, второй управляющий вход 39 блока 4, разрешающий вход 40 блоха 14, вход

41 олокировки блока 12, вход 42 заблока 12, вход 43 блока 12 выход 44 ошибки блока 13, информационный вход 45 блока 14, выход 46 ошибки блока 14.

2б Блок коммутации адреса (фиг.2) содержит мультиплексор 47 адреса и з.-гементы KJIH 48, 49,50.

Блок 11 декодирования (фиг.3) с одержит три дешифратора 51, 52, 53

2.> када микрооперации.

Блок 12 синхронизации фиг.4) содержит синхронизатор 54 и элеме |т ИДИ

Блок 13 свертки пр модулю два

ЗО фи",.5) содержит сумматор 56 по модулю два и схему 57 сравнения.

Блок 14 формирования контроль— най суммы (фиг.б) содержит универсальный сумматор 58, мультиплексоры

59, 60, мультиплексор 61 признаков, регистры 62, 63, накапливающий регистр 64 результата, триггер 65 нуля результата, триггер 66 перенося, Блок памяти хранит микрокаманды и по адресу с регистра 9 адреса микрокоманд и синхросигналу на тактовом входе выдает их в регистр 10 микрокоманд.

Первый счетчик 2 команд предназначен для адресации блока 1 в режиме контроля и перехода на микропадпрограмму контроля по адресу перехода, приходящего на информационный вход.

Второй счетчик 3 команд осуществляет адресацию блока 1 памяти при работе по основной микропрограмме.

Блок 4 коммутации адреса производит выдачу адреса микрокаманд в регистр 9 адреса либо с первого 2> либо с второго 3 счетчиков команд в зависимости от состояния триггера 7 признака контроля, а также управляет режимами работы счетчиков 2 и 3 при нулевом состоянии триггера 7 признака контроля счетчик 2 находится в режиме хранения, а счетчик

3 — в режиме счета, при единичном состоянии триггера 7 наоборот.

Триггер 7 признака контроля осуществляет управление работой всех блоков в режиме контроля.

Триггер 8 ошибки предназначен для индикации четной или нечетной ошибки блока 1 в режиме контроля и выработки строба останова синхронизатора при наличии этих ошибок.

Регистр 10 микрокоманд предназначен для записи микрокоманд по синхро импульсу на тактовом входе и их хранению.

Блок 1 1 декодирования осуществляет дешифрацию кода микроапераций и выработку трех управляющих стробов: настройки блока 14, загрузки счетчика 2 адресом перехода и установки триггера 7 признака контроля в состояние высокого уровня.

Блок 12 синхронизации по сигналу запуска на входе 42 осуществляет управление работой всех блоков устройства путем выработки серий синхро импульсов.

Блок !4 формирования контрольной суммы предназначен для выполнения операции контрольного суммирования с циклическим переносом в режиме контроля, 12!1725

Блок 13 свертки осуществляет контроль по модулю два адреса и микро— команды и выработку сигналя нечетной ошибки при обнаружении ошибки.

Счетчик 15 эон памяти микрокамянд осуществляет управление муль— типлексаром 16 контроля и адресацию зан памяти.

Мультиплексор 16 контроля пред-!

О назначен для согласования разрядности блока 14 и блока 1 и ввода контролируемых микрокомянд в блок

14 по зонам: сначала суммируются все микракамянды первой зоны памя-!

5 ти, потом второй и т.д.

Устройство работает следующим образам.

В исходном состояпии триггер 7 признака контроля памяти микрока20 манд обнулен, а устройства работает по основной микропрограмме.

В этом режиме работы устройства адресация блока 1 памяти микрокоманд идет по первому синхроимпульсу с второго 3 счетчика команд, т первый 2 счетчик команд находится в режиме хранения.

Г

Режим контроля блока 1 памяти микрокоманд начинается после записи в регистр 10 микрокаманд (фиг.l) микрокоманды условного перехода с возвратам на микроподпрограмму контроля (фиг,7, диаграммы 1 и 2).

Эта микрокоманда имеет в своем фор35 мате два поля. первое поле адреса, содержащее 12-разрядный адрес перехода, равный 00016, который с первого выхода регистра 10 поступает на информационный вход первого счет40 чика 2 (фиг.7, диаграмма 3); и второе поле кода микроопераций, после декодирования которого на выходах

23, 24 и 25 блока 11 декодирования появляются три управляющих строба.

45 Пока триггер 7 признака контроля обнулен (фиг.7, диаграмма 5), по стробу загрузки и сброса происходит загрузка первого счетчика 2 адресом перехода и обнуление тригге50 ра 8 ошибки, триггеров 65,66 и регистров 62, 63, 64 блока 14.

Одновременно с этим по первому синхроимпульсу происходит модификация второго -четчика 3 на +1 с запоминанием на нем адреса возвра;та в основную микропрограмму (фиг.7, диаграмма 4). После этого по второму синхроимпульсу H стробу уста121;725 нонки на выходе 23 блока 11 осущест вляется установка триггера 7 призHBKB KciHT ðGëÿ в состояние высокого уровня, что означает переход перво— го счетчика 2 в режим счета по первому синхроимпульсу, переход второго счетчика 3 в режим хранения адреса возврата и блокировку записи контролируемых микрокоманд B регистр

10 микрокоманд с помощью элемента

ИЛИ 55 блока 12 синхронизации. Адрес контролируемой микрокоманды поступает с информационного вых зда пер ного счетчика 2 через блок 4 коммутации адреса на информационный вход регистра 9 адреса микрокоманд и по третьему синхроимпульсу фиг.7, ди1 аграмма 6) записывается в него. С вы хода регистра 9 этот адрес поступает для контроля его корректности на первый вход 17 блока 13 свертки по модулю два.

По четвертому синхроимпульсу происходят обращение к блоку памя— ти микрокоманд и выборка KQHTpoJIH руемой микрокоманды по данному адресу.

Микрокоманда с выхода блока при ходит на второй вход 19 блока 13 и через мультиплексор 16 контроля на информационный вход 45 контролируемых микрокоманд блока 14.

При обнаружении нечетной ошибкк в слове микрокоманды с выхода 44 блока 13 на первый вход элемента

ИЛИ 6 приходит строб нечетной ошибки, а при несравнении контрольнок и эталонной сумм с выхода 46 блока

14 на второй вход элемента ИЛИ 6 пс— ступает строб многократной ошибки.

Эти стробы устанавливают триггер 8 ошибки в состояние высокого уровня, что приводит к появлению на выходе триггера 8 строба останова синхронизатора в блоке 12 синхронизации.

Контроль блока 1 памяти микрокоманд при этом прекрашается, а содержимое регистра 9 адреса микрокоманд и регистра 10 микрокоманд выдается соответственно на выходы 18 и 20 устройства и высвечивается на экране дисплея с целью определения адреса ошибки.

При отсутствии ошибок в блоке процесс контроля продолжается ав— томатически до переполнения счетчика 15 зон памяти микрокоманд.

Сигнал переполнения с выхода переполнения счетчика 15 приходит на второй вход элемента И 5 и устанаЬливает в состояние низкого уровня триггер 7 признака контроля, что означает возвращение в основную микропрограмму по адресу возврата на втором сч= ò÷èêå 3, переход первого

;G * счетчика 2 в режим хранения а второго счетчика 3 в режим счета по +1.

Блок 4 коммутации адреса микрокоманд (фиг.2j осуществляет через мультиплексор 47 адреса выдачу адре1 са микрокоманды с второго счетчика

3 либо с первого счетчика 2 в зависимости от состояния триггppB 7 приз нека контроля..Когда триггер 7 обнулен, к выходу мультиплексора 47 под— ключается вход 36, в противном слу— чае — вход 38.

На первый упоавляющий вхсд блока

4 с выхода 24 блока 11 декодирова— ния приходит строб загрузки первого счетчика 2 адресом перехода. На выходах 33 и 34 блока 4 появляются сиг палы счета по +1 второго 3 и первого 2 "÷åò÷èêàâ, В блоке 11 (фиг.3) пзоисходит декодирование на дешифра.

3П тзрах 51,52,53 кода микроопераций

9 .:-«ихздящего на вход 22 блока 11.

На выходе 23 блока 11 появляется отрицательный строб установки тригг а 7 в состояние высокого урîBHÿ на выходе 24 — отрицательный строб настзойки универсального сумматора

58 блока 14 на режим выполнения операции арифметического суммирования с циклическим переносом. Блок

12 синхронизации (фиг.41 осуществляаЦ) ет согласование работы всех блоков устройства после прихода на вход 42

=..эпуска внешнего сигнала запуска.

Синхронизатор 54 вырабатывает

Ll j сять синхроимпульсов отрицатель- àé полярности, сдвинутых один отнзсительно другого. На выходах 2631 блока 12 появляются соответственнз первый., второй, третий, четвертый, девятый и десятыи синхроимпульсы. На вход останова 43 блока !

2 приходит строб останова синхронизатора с выхода триггера 8 ошибки, Элемент ИЛИ 55 необходим для блокировки записи контролируемых микрокоманд в регистр 10 микрокоманд. Пока триггер 7 признака конт7 роля находится в состоянии высокого. уровня, на входе 41 блокировки и на выходе 30 блока 12 высокий уровень напряжения и запись микрокоманд в регистр 10 непроизводится. В бло.ке 14 формирования контрольной суммы (фиг.б) происходит контрольное. суммирование ячеек памяти 1. Так как разрядность блока 14 меньше разрядности памяти микрокоманд, необходимо разбить блок 1 памяти микрокоманд на зоны. Разрядность ячейки каждой зоны равна разрядности блока 14. Вследствие такого разбиения на зоны можно использовать для контрольного суммирования АЛУ, уже имеющееся в составе ЭВМ, и вводить минимальный объем контрольного оборудования.

Число таких эон блока 1 равно

N. = — 1 и где m — разрядность слова микрокоманды в блоке 1;

n — разрядность универсального сумматора 58 в блоке 14, тогда, например, при m=56 и n=16

N =4.

Контрольное суммирование микрокоманд блока 1 проводят по зонам: сначала суммируется содержимое первой зоны, потом — второй зоны и т.д. В первой зоне находится часть слова микрокоманды с 1-го по 16-й разряды, во второй зоне — с 17-ro по 32-й разряды и т.д.

В последней ячейке каждой зоны памяти записана в дополнительном коде эталонная сумма всех предыдущих ячеек зоны. Поэтому при отсутствии ошибок в зоне памяти накапливающий регистр 64 результата и триггер 65 нуля результата после суммирования в универсальном сумматоре 58 содержимого ячеек одной зоны памяти обнуляются.

Процесс суммирования происходит следующим образом.

В исходном состоянии регистры 62, 63, 64 и триггеры 65 и бб обнулены стробом, приходящим на вход сброса блока 14. Потом на информационный вход 45 приходит контролируемая микрокоманда, которая через мультиплексор 60 поступает на регистр 63 операнда, на вход регистра 62 операнда поступает через мультиплексор

59 содержимое регистра 64 результата. В универсальном сумматоре 58

21 1725 8 происходит суммирование содержимого регистров 62 и 63 по переднему фронту десятого синхроимпульса, приходящего на вход синхронизации блока 14.

Настройку сумматора 58 на режим выполнения операции арифметического суммирования с циклическим переносом осуществляет строб, приходящий на вход режима. Посче суммирования результат записывается по заднему фронту десятого синхроимпульса в регистр 64 результата, а перенос — в триггер 66 переноса. Перенос через мультиплексор 61 признаков приходит на вход переноса сумматора 58 для участия в последующих операциях суммирования.

После окончания суммирования всех ячеек одной зоны памяти первый счетчик 2 переполняется и на вход 37 записи блока 14 приходит сигнал переполнения, разрешающий запись в триггер 65.

Если в зоне памяти были обнаружены ошибки, то триггер 65 нуля результата находится в состоянии высокого уровня и на выходе 46 ошибки блока !4 появляется строб ошибки.

Этот строб устанавливает триггер 8 ошибки в состояние высокого уровня

30 что приводит к останову синхронизатора 54 в блоке 12 синхронизации.

При этом содержимое регистра 9 адреса микрокоманд высвечивается на экране дисплея для определения адреса эоны памяти микрокоманд с четной ошибкой.

Блок 13 свертки по модулю два (фиг.5) осуществляет контроль адреса и слова микрокоманды путем их сум мирования по модулю два в многовходовом сумматоре 56 по модулю два и сравнения в схеме 57 полученной суммы с контрольным разрядом, дополняющим полученную сумму до нечетности.

При обнаружении нечетной ошибки с выхода ошибки блока 13 на первый вход элемента ИЛИ 6 приходит строб нечетной ошибки, устанавливающий триггер 8 ошибки в состояние высокого уровня, что приводит к появлению на входе 43 останова синхронизатора 54 строба останова.

Мультиплексор !6 контроля (фиг,1)

5> предназначен для ввода контролируемых микрокоманд в блок 14 по зонам памяти. Число зон памяти равно числу информационных входов мультиплек

cocтавляет

0 O .i 1b HO H О уммирования ячеек всех

1 памяти микрокоманд

-:0H блока счетчик 15 зон памяти микрокоманд тся и сбрасывается в нуль.

jiePe!-j ЗЛНЯЕ

ПЕРРПОЛНЕНИЯ C в b! х Од а с 1-! p i ОЙ вход ЗЛР ступает на втор и сбрась«вает в нака контроля ( что означает и ль три.-фиг.7, пикопен реИЕ P. OC H0B жима кон о оля и Возвра«««ен раграмму ло адр

1<1;1И« 1< P C 1 i

В«-.-а 1-:..:;;, B

1 СО«!Г, / ., ДИ

Рcy ВОЗ—

1 к Оман. "! ором с::.: чике

3г вам@а Й 1 . !! -. . iM(4 1 б"ф" "1":., 1

1

1 1

I .! чь сора 1 б контроля, Toi-.-j,.-j разрядность счетчика 1 5 зон памяти мик!Зокоманд

13=1 01 о ) где 11 — Число разрядов счетчика 15

М вЂ” число зо-i памяти, «3апример,, при М=-4 1 1=2,,«

В первоначальный момент времени счетчик 15 обыулен и к Hb«xоду мульти««лексор", Iб «<0Hгроля подключается

Р. о пер13ы:j ин«130рмадион!lь«Й вхо"., т . е . в бпoê 1 пист"..пеют ячейки пег.вой

3 Оны памят 13 . 1 акт Огый в хОД j:."- j т -1 и

1 5 C oej;Hi:CH c fbi iодом пеp C «i !n:1«1. с 4 eTчика 2 «< 01.,::,i! . IIO— зтому после окон- .анип с.уммирования

Яче ..=1< i«P p2 01 -. -Зоны памя - и jj рвь<Й cH = т

1«ик 22 пср ел ол«1 ie-.с я;я с б вась«ва РТ1- я в нуль,, а содержимое сетч.li<à "; ув Рли -;иваР Тс Я на + I и к Бь1хогv

M :"Hbò!«ïHåêcoðà 1с контро;«я iloäêëþ÷»Р Г Г Я e <) 13 j Ор ОЙ и;1:Рор«1 а«,"!01111ь!Й 13 хо!

1 . <, в блОк I j«приходит со, !Оржимое

Я1«РР1< втОРОЙ зо«lы памЯти и T ° Д. .3днов ремеHHo с у«3е.!ичРнием со держимого счетчика 15 на +! раз— ре«11ается запись нуля речул1.-;ата в триггер 05 блока 1l«. После кснт—

Си« нал.

"ика 1 г,о ме1та И 5 г ер г при! а.-ра1.;ма 5 ) l21l725

М И B бт Злюка сонхрс- Ож 5тка гЬюАрай юю / r

:Q

" у

f.г

3

1 .. f

1 ! п!

1 ;

«!!

1 !

1 И

1 ((1

/-, 1!! /! / лг

;, Убг !.

7-. .

) Г . б, ; ) " )

1 (J

:1 . - ::Ъ: | 6./

М, p „

;,I, 1, pt, Р ъ УУ. ! ! 1

J !

"

; .

). ,, (,) . р,,, I t !

1 !

l р ( ф-;

t.

I ": б.":б

1 ,,э.; 1 б — -- C --- — — — — — .- . !

1 ,:, / ;... б,б б,,б

: : °

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

 

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

Изобретение относится к области цифровой вычислительной техники, применяется при построении алгоритмически распределенных устройств (систем) микропрограммного управления вычислительных и управляющих систем высокой производительности

Изобретение относится к автоматике и вычислительной технике

Изобретение относится к автоматике и вычислительной технике

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении алгоритмически распределенных устройств микропрограммного управления вычислительных и управляющих систем высокой производительности, реализующих параллельные алгоритмы обработки информации

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении распределенных систем программного управления, а также подсистем логического управления многоуровневых АСУ

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении систем управления технологическими процессами

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении систем управления технологическими процессами

Изобретение относится к автоматике и цифровой вычислительной технике и может найти применение при построении управляющих и вычислительных систем высокой производительности, а также подсистем логического управления многоуровневых иерархических автоматизированных систем управления

Изобретение относится к автоматике и цифровой вычислительной технике и может быть использовано при построении алгоритмически распределенных устройств микропрограммного управления вычислительных и управляющих систем высокой производительности, проектируемых на базе однотипных БИС (СБИС) и реализующих параллельные алгоритмы обработки информации

Изобретение относится к автоматике и вычислительной технике, предназначено для выполнения требуемых функций программного управления с автоматическим перезапуском при «зависании» прикладной программы и автоматическим переходом в режим сохранения оперативной информации с помощью резервного источника напряжения питания при отключении или аварии основного источника напряжения питания и может быть использовано, например, в качестве ядра микроконтроллерной или микропроцессорной системы (М-системы) обработки информации и управления в реальном времени с поддержкой режима аппаратного сторожевого таймера для перезапуска при «зависании» прикладной программы М-системы, проектируемой с учетом следующих основных принципов [1]: программного управления, магистрального обмена информацией, модульного построения и наращивания вычислительной мощности

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

Наверх