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

Иллюстрации

Показать все

Реферат

 

М. П. Ткачев, 8. С. Харченко, Г. Н. Тимонькин

И. П. Барбаш и С. Н. Ткаченко (72) А втор м изобретення (71) Заявнтель (54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ

И МИКРОДИАГНОСТИКИ

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

Известно устройство, предназначенное для управления и диагностики ЦВМ с микропрограммным управлением, содержащее блок памяти, регистр команд, счетчик тактов, регистр программ и шифратор (1).

Его недостатками являются низкая экономичность, а также узкие функциональные возможности.

Известны также микропрограммные .устройства управления и диагностиро15 вания ЦВМ, содержащие блок памяти, регистр программ, регистр команд, узел пуска-останова, генератор тактов, сче 1. тчик команд, .;счетчик тактов, шифратор, триггер режима, элементы И, НЕ (21 и 3)

Недостатком этих устройств являются низкие экономичность, быстродействие и функциональная надежность.

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

3: 96881 выходом первого элемента И, первый вход которого соединен с выходом узла пуска-останова и с первым входом вто- рого элемента И, выход которого соединен со счетным входом счетчика тактов, а через третий элемент И вЂ” со считывающим входом первого блока памяти, группа выходов которого через первые входы блока элементов ИЛИ со.единена с первой группой выходов уст- !О ройства; выход регистра программ соединен с адресным входом второго блока памяти, первый вход которого соединен с входами. установки в нуль регистра программ, регистра команд, с д вторым входом установки в нуль регистра адреса, с третьим входом установки в нуль счетчика тактов и со счетным входом счетчика команд, выход .которого является вторым выходом устройства, причем группа установочных входов счетчика команд соединена с второй группой выходов регистра команд, третья группа выходов которого является третьим выходом устройства, а группа информационных входов регистра команд является первым входом устройства; второй выход второго блока памяти через четвер-. тый элемент И соединен с синхронизирующим входом преобразователя кодов, причем- второй вход четвертого элеиен30 та И соединен с нулевым выходом триг" гера режима, единичный выход которого через пятый элемент И соединен с вторым входом первого элемента И и входом первого инвертора, выход которого З соединен с вторым входом второго элемента И, причем единичный выход триггера режима соединен также с первым входом первой группы входов элемента

И-ИЛИ и с входом второго инвертора, выход которого соединен с первым входом второй группы входов элемента МИЛИ, второй вход пятого элемента И соединен с единичным выходом первого триггера переполнения счетчика тактов 4 и с первым входом шестого элемента И, выход которого является четвертым выходом устройства, а второй вход этого .элемента соединен с единичным выходом второго триггера переполнения счетчи- S0 ка тактов, причем нулевой выход первого триггера переполнения счетчика . тактов соединен с пятым выходом устройства через седьмой элемент И, второй вход которого соединен с третьей ss группой информационных входов регист- ра программ и с третьим выходом второго блока памяти, группа выходов ко5 4 торого соединена с вторыми входами блока элементов ИЛИ; выход генератора импульсов соединен с первым входом уз-. ла пуска-останова, второй вход кото" рого является вторым входом устройства, выход второго регистра адреса соединен с адресным входом третьего блока памяти, группа выходов которого соединена с первой группой информационных входов первого регистра адреса, первая группа выходов которого соединена. с адресным входом первого блока памяти, а вторая группа выходов регистра соединена с первой группой информационных входов второго регистра адреса Г4), Недостатком этого устройства является низкая достоверность функционирования и низкое быстродействие.

Низкая достоверность функционирования устройства обуславливается отсутствием контроля считывания MHKp(F команд.

8 рабочем режиме устройство управляет выполнением обычных вычислительных команд ЭВИ по рабочим микропрограммам, которые состоят из рабочих микрокоманд, записанных во втором .блоке памяти. При этом каждая микрокоманда имеет поле адреса, в котором задается адрес очередной микрокоманды. Одновременно с выполнением рабочей микропрограммы осуществляется контроль нижней и верхней границы времени ее выполнения.

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

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

9688

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

Целью изобретения является повышение достоверности функционирования и быстродействия устройства. 15

Поставленная цель достигается тем, что в устройство управления и микро-. диагностики, содержащее регистр команд, регистр программ, первый и второй регистры адреса, счетчик команд и счетчик тактов, преобразователь кодов дополнения, первый, второй и третий блоки памяти, триггеры режима, генератор импульсов, блок пуска-останова, первый коммутатор, первый и вто-р5 рой элементы НЕ, первый, второй, третий, четвертый, пятый, шестой, седьмой элементы И и блок элементов ИЛИ, причем вход команд устройства соеди нен с информационным входом регистра команд, выход начального адреса микрокоманд которого соединен с информационным входом Счетчика команд, выход кода операции регистра команд соединен с первым информационным входом регистра программ и информационным вхо- З5 дом преобразователя кодов дополнения, управляющий выход которого соединен с первым установочным входом счетчика тактов и единичным входом триггера реао жима, единичный выход которого соединен с первым управляющим, а через первый элемент НŠ— с вторым управляющим входом первого коммутатора и первым входом первого элемента И, нулевой вы15 ход триггера режима соединен с первым входом второго элемента И, выход которого соединен с управляющим входом .преобразователя кодов дополнения, первый единичный выход переполнения счетчика тактов соединен с первым входом третьего элемента И, выход которого является первым выходом неисправности устройства, второй единичный выход переполнения счетчика т актов соединен с вторыми входами третьего и первого 55 элементов И, выход которого соединен с первым входом четвертого элемента

И, и через второй элемент НŠ— с пер15 6 вым входом пятого элемента И, выход которого соединен со счетным входом счетчика тактов, нулевой выход пере полнения счетчика тактов соединен с первым входом шестого элемента И,выход которого, является вторым выходом неисправности устройства, вход пуска устройства и выход генератора тактовых импульсов соединены соответственно с первым и вторым входами блока пуска-останова, выход которого соединен с вторыми входами четвертого и пятого элементов И, выход четвертого элемента И соединен с нулевым входом триггера режима, вторым установочным входом счетчика тактов и первым уста" новочными входами регистра программ первого и второго регистров адреса, выход которого соединен с адресными входами первого блока памяти, выход первого блока памяти соединен с первым информационным входом первого регистра адреса, первый адресный выход которого соединен с первым информационным входом регистра адреса, управ" ляющий выход первого регистра адреса соединен с первым входом седьмого элемента И, выход которого соединен с управляющим входом второго блока памяти, второй адресный выход первого регистра адреса соединен с адресным входом второго блока памяти, выходы которого соединены с первыми входами блока элементов ИЛИ, выход микрооператора третьего блока памяти соедине" ны с вторыми входами блока элементов

ИЛИ, выход которого является выходом микроопераций устройства, выход регис" тра программ соединен с адресными входами третьего блока памяти, первый управляющий выход которого соединен со вторым входом шестого элемента И и вторым установочным входом регистра программ, второй и третий управляющие выходы третьего блока памяти соединены соответственно со вторым входом второго элемента И и вторым установочным входом первого регистра адреса, третьим установочным входом регистра программ, третьим установочным входом счетчика тактов, установочным входом регистра команд и счетным входом счетчика команд, выход которого является выходом адреса устройства, выход второго регистра адреса соединен с адресными входом первого блока памяти, введены регистр теста, блок коррекции, второй коммутатор, блок элементов И, восьмой элемент И, элемент ИЛИ, элеответствия считанных микрокоманд режиму работы устройства, формировать рабочие и диагностические микропрограммы при однократной записи адресов ра7 9688 мент задержки, сумматор по модулю два, причем информационный, вход устройства соединен с информационным входом блока коррекции, выход которого соединен с единичным установочным входом счетчика тактов, информационный выход преобразователя кодов дополнения и выход поля дополнения регистра команд соединены соответственно-с первым и вторым информационными входами второго 1О коммутатора, выход которого соединен с информационными счетчика тактов, второй управляющий выход третьего блока памяти соединен с первым установочным входом регистра теста, первым sS входом блока элементов И- и через элемент задержки - с первыми управляющи" ми входами второго коммутатора, единичный выход триггера режима соединен с вторым управляющим входом второго р коммутатора, первым управляющим входом коррекции, входом первого элемента НЕ, первым входом сумматора по модулю два и инверсным входом третьего элемента И, выход четвертого элемента

И соединен с вторым установочным.входом регистра тестов, выход которого соединен с вторым информационным входом блока коррекции, выход пятого weмента И соединен с управляющим входом первого блока памяти, вторым управляющим входом блока коррекции, вторым входом седьмого элемента И и прямым входом восьмого элемента И, выход которого соединен с управляющим входом третьего блока памяти, управляющий, второй и третий адресный выходы первого регистра адреса соединены соответственно с инверсным входом восьмого элемента И, вторым информационным входом регистра программ и вторым вхо4Е дом сумматора по модулю два;.-.выход ко.торого соединен с вторым информационным входом второго регистра адреса, третий управляющий выход третьего блока памяти соединен с вторым установоч4З ным входом второго регистра адреса, выход начального адреса микрокоманд регистра команд соединен с вторым входом блока элементов. И, выход которого соединен с вторым информационным вхо- SO дом первого регистра адреса, выходы второго блока памяти соединены с входами элементов ИЛИ, выходы, которых соединены с первым информационным входом первого коммутатора, управляющий у ! выход метки второго блока памяти соединен с вторым информационным входом. первого коммутатора, выход которого соединен с третьим входом блока пускаостанова, выход блока элементов ИЛИ соединен с информационным входом регистра теста.

Кроме того, узел коррекции содержит первый и второй регистры, дешифратор, первый и второй элементы задержки, сумматор по модулю два, элемент

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

ИЛИ, выход элемента ИЛИ является выходом блока, первый информационный вход блока соединен с информационным входом первого регистра и первым входом сумматора по-модулю два, выход которого соединен с информационными входами второго регистра, второй информационный вход блока и выход первого регистра соединен соответственно с первым и вторым информационными входами дешифратора, выход втОрого регистра соединен с третьим информационным входом дешифратора и вторым входом сумматора по модулю два.

Изобретение обеспечивает повышение быстродействия и достоверность функционирования устройства.

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

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

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

На фиг. 1 изображена функциональная схема предлагаемого устройства, 5 10 ход 56 узла коррекции, соответственно первый и второй выходы 57, 58 неисправности, соответственно первый, второй, третий и четвертый управляющие выходы 59-62 третьего блока памяти 19, группа выходов 63 микроопераций блока памяти 19, выход 64 первого коммутатора, выход 65 иикроопераций устройства.

Блок пуска-останова (фиг. 2)содержит триггер 66 и элемент И 67. Символом 68 на фиг. 2 обозначен выход блока пуска-останова.

Преобразователь кодов (фиг. 3) содержит дешифратор 69 с управляющии входом 43 и инфориационным входом 44, шифратор 70, имеющий (и+1) выходов, первых из которых образуют отдельную группу. Символом 71 на фиг. 3 обозначены выходы дешифратора, К-разрядность поля кода операции 2 регистра команд

1, - номер разряда первого триггера переполнения 13 счетчика тактов. 12.

Узел коррекции (фиг: 4) содержит первый элемент задержки 72, блок сум" маторов по модулю два 73, первый 74 и второй 75 регистры, второй. элемент задержки 76, элемент И 77, дешифратор 78 и элемент ИЛИ 79. Символами

80 и 81 на фиг. 4 обозначены группы выходов соответственно первого и второго регистров, 56 - выход узла коррекции, m-разрядность тестовых наборов, формируемых устройством, r-разрядность выходных реакций управления и диагностирования.

На фиг. 5 символом 82 обозначено поле кода операций, 83 - поле допол- " нения, 84 — поле адреса начальной ми" крокоманды, А и А, „ — адреса началь(Р ных микрокоманд соответственно рабо" чей и диагностической i-й микропрогpc3MMbl, П рi и П коды условий сооТ ветственно рабочей и диагностической

i""é микропрограммы, Н „. - код допол9 нения длины i-й диагностической мики ропрограммы до емкости (2-1) счетчика тактов 12; n - номер разрядного ïåðвого триггера переполнения 13 счетчика тактов, КОд „и КО „- код операции соответственно рабочей и диагностической i-й программы.

На фиг. 6 символами У59, У60, У61

У62 обозначены соответстЪенно 59, 60, 61, 62 выходы третьего блока памяти

19, У63 — выход микроопераций, MO код микроопераций; символы "1" и "0" обозначают наличие соответственно единичного и нулевого сигналов на выходе

9 96881 на фиг ° 2 - функциональная схема узла пуска-останова; на фиг. 3 - функциональная схеиа преобразователя кодов дополнения, на фиг. 4 — функциональная схема узла коррекции, на фиг. 5форматы команд, подаваемых на вход устройства, на фиг. 6 - форматы микрокоманд, формируемых устройством, на фиг. 7 - пример схемы алгоритма микродиагностики, реализуемого.устройст- 10 вом; на фиг. 8 — пример таблицы истинности, реализуемой преобразователеи кодов; на фиг. 9 - пример таблицы разрешенных наборов узла "дешифраторэлемент ИЛИ" узла коррекции; на фиг. iS

10 — пример таблицы соответствия, описывающей работу преобразователя 5 кодов дополнения (фиг. 3).

Устройство (фиг. 1) содержит регистр команд 1 с полем 2 операции, по- 2в лем 3 дополнения и полеи 4 адреса начальной микрокоманды, преобразователь

5 кодов дополнения, триггер режима 6, второй элемент И 7, элемент задержки

8, регистр теста 9, второй коммутатор 10, узел коррекции 11, счетчик 12 тактов с первым 13 и вторым 14 триггерами переполнения, первый 15, третий 16 и шестой 17 элементы И, регистр программ 18, третий блок памяти 19, первый инвертор 20, элемент ИЛИ 21, первый коммутатор 22, счетчик команд

23, генератор импульсов 24, узел пуска-останова 25, четвертый элемент И

26, второй инвертор 27, пятый элемент

35 .И 28, второй регистр адреса 29, первый блок памяти 30, блок элементов И

31, первый регистр адреса 32 с первым адресным 33, третьим адресным полем

34, вторым адресным полем 35 и управляющим полем 36, седьмой 37 и восьмой

38 элементы И, блок сумматоров по модулю два 39, второй блок памяти 40 и первый блок элементов ИЛИ 41.

Символом 42 на фиг. 1 обозначен

4S информационный вход команд, управляющий вход 43 преобразователя кодов, информационный вход 44 преобразователя кодов, управляющий выход 45 преобразователя кодов, информационный выход

46 преобразователя кодов, единичный выход 47 триггера режима 6, первый информационный вход 48 устройства, выход 49 регистра теста 9, третий выход

50 поля 4 регистра команд 1, адресный выход 51 устройства, выход 52 генера- ЭЭ тора импульсов 24, вход 53 пуска устройства, третий вход 54 узла пускаостанова, выход 55 элемента И ?6, вы11 968815 12 блока памяти, символ " " означает; что бочем режиме размещается код П условий, в данном разряде может быть как "О", пРовеРЯемых в объекте (напРимеР, в опетак и "1", в зависимости от того, вхо- рациснном блоке ЭВН) программным сподит или нет микрокоманда в диагности- собом и определяющих ход выполнения ческую микропрограмму. программы в зависимости от текущих

На фиг. 7 символами Tl, Т2, Т3, Т4, результатов вычислений. В режиме диТ5 обозначены соответственно первый, агностики в этом поле размещается таквторой, третий, четвертый и пятый те- ее код Н> дополнения числа (й) тактов стовые наборы, подаваемые на входы объ- диагностйческой микропрограммы до емекта управления и диагностирования, >6 кости счетчика тактов 12. Форматы укаR-выходные реакции объекта на подан- эанных команд показаны на фиг. 5. ные тестовые наборы, причем индекс . Вход 61 регистра команд 1 предназпри символе R соответствует номеру ре- начены для установки регистра в нуль, акции, С - состояния объекта, харак- вход 42 -. для записи информации в ретеризующие тип,и место возникновения 1Ю гистр. в нем отказа, причем индекс при С со- Преобразователь 5 кодов до 1олнения ответствует номеру состояния, R — pe- в рабочем режиме преобразует код опезультат суммирования по модулю два рации в код Н, дополнения. Этот код всех ранее полученных реакций объекта подается на выход 46 и соответствует с очередной поданной. щ минимально возможной длине микропроНа фиг. 8 символами К и Д обозна- граммы выполнения команды, заданной чены соответственно рабочие и диагнос- кодом операции. На выходе 45 при этом тические команды, индекс при которых формируется нулевой сигнал. В диагносоответствует номеру команды, N - дли- стическом режиме преобразователь 5 на микропрограммы, Н, — код дополне- 25 кодов преобразует код операции диаг" ния числа и до емкости (2"-1) счетчи- ностической команды в код, содержащий ка тактов 12:Н =(2."-1)-М, n — номер единицу в разряде, соответствующем вы9 разряда первого триггера переполнения ходу 45, и нули во всех разрядах, со13 счетчика тактов, X 44 — код опера- ответствующих выходу 46 преобразовации, У45 — сигнал на выходе 45 преоб- Зя теля 5 кодов дополнения. раэователя кодов дополнения, У46— Выдача кодов на выходы преобразосигнал на выходе 46 преобразователя вателя 5 кодов осуществляется при покодов, прочерк на пересечении строки даче разрешающего сигнала на его упи столбца означает отсутствие соответ- равляющий вход 43. ствующей информации в формате команды. Триггер 6 режима предназначен для

На фиг. 9 символом Т обозначены . фиксации режима работы устройства. Ратестовые наборы, подаваемые на вход бочему режиму соответствует нулевое объекта управления и диагностирования, состояние триггера, а режиму диагносиндекс при.символе Т соответствует но- тики - единичное. меру набора, X49 — код тестового. на- Элемент И 7 предназначен для управбора, подаваемый с входа 49 на вторую ления подачей сигнала на вход преобрагруппу информационных входов дешифра- зователя 5 кодов. тора 78 узла коррекции 11, X80 - код, Элемент задержки 8 предназначен подаваемый на первую группу информа- для задержки сигнала, разрешающего ционных входов дешифратора 79; Х8 1 - запись када дополнения Н в счетчик

4$ код, подаваемый на третью группу 81 тактов 12, на время срабатывания элеинформационных входов дешифратора 78, мента И 7 и преобразователя кодов 5.

С - состояние объекта .управления и ди- Он может быть выполнен, например, на агностирования (согласно фиг. 7), со- О-триггерах. ответствующее моменту возбуждения вы- Регистр теста 9 предназначен для хода У56 узла коррекции 11.

Я. хранения теста, поданного на объект

Рассмотрим назначение элементов управления и диагностирования. устройства (фиг. 1). Второй коммутатор 10 пред на за чен

Регистр команд 1 предназначен для для управления записью кода дополнехранения кода выполняемой команды. ния в счетчик тактов 12, В любом режиме в поле 2 размещает- . Узел коррекции 11 предназначен для

И ся код операции Y0 d в поле 4 - ад- формирования сигнала на установку всех

pec Al начальной микрокоманды реали- разрядов счетчика тактов |12 в единичзуемой микропрограммы. В поле 3 в ра- ное. состояние в момент появления на

13 9688 выходе объекта управления и диагностирования такой реакции на поданный тестовый набор, которая позволяет с требуемой глубиной однозначно определять место отказа в объекте. По этому сигналу прекращается диагностирование объекта. Место отказа в объекте может быть определено, например оператором по диагностическим таблицам, входящим обычно в состав эксплуатационно-технической документации ЭВМ, либо самой

ЭВМ программным способом. Исходными данными для этого поиска являются номер последнего поданного тестового набора, код последней полученной реак- 1$ ции и поразрядная сумма по модулю .два реакций объекта на все предыдущие наборы с реакцией объекта на последний тестовый набор.

Счетчик тактов 12 предназначен для подсчета количества сформированных устройством микрокоманд и осуществления: в рабочем режиме — проверки попадания времени (Tp ) выполнения микропрограммы в интервал между установ- 2$ ками для него нижней (Т ) и верхней

nl jn (T ) границами

П1ОУ

Т „„Т Т„, а в режиме диагностики - управление длительностью диагностической проце- Зв дуры.

При соблюдении этого соотношения в рабочем режиме к моменту окончания реализации микропрограммы триггер переполнения 13 должен установиться в единицу, а триггер переполнения 14 остаться в нуле.

Если же произойдет пропуск микрокоманды, то левая часть приведенного неравенства нарушится. При этом к моменту окончания микропрограммы триггеры 13 и 14 останутся в нуле.

Если же в результате отказов или сбоев будут сформированы "лишние" микрокоманды, то нарушается пр вая часть, неравенства. Это будет зафиксировано единичным состоянием триггеров 13 и 14., Элемент И 15 предназначен для формирования сигнала на прекращение процесса микродиагностики, как только количество обработанных тактов достигнет заданного.

Элемент И 16 предназначен для формирования сигнала неисправности устройства при нарушении соогношения fp$

$$ ,6Т с,, т. е. когда количество тактов выполнения микропрограммы окажется вы ше максимального возможного для реализуемой микропрограммы.

15 14

Элемент И 17 предназначен для формирования сигнала неисправности устройства при нарушении соотношения )lr Т,„„ „, адресов рабочих микрокоманд, считываемых из блока памяти 19.

Блок памяти 19 предназначен для хранения и выдачи операционных частей рабочих микрокоманд. Форматы микрокоманд, записанных в блоке, показаны на фиг. 6. На выходе 59 .при считывании конечной микрокоманды рабочей микропрограммы подается сигнал окончания операции, на выход 60 сигнал подается при выполнении начальной фазы рабочих и диагностических микропрограмм, на выход 61 сигнал подается при выполнении заключительной микрокоманды рабочих и диагностических микропрограмм, на выход 62 сигнал подается в одну из диагностических микропрограмм и может выполняться лишь только в рабочем режиме. На выход 63 подаются сигналы микроопераций, поступающие на входы объекта управления и диагности рованияя.

Инвертор 20 предназначен для формирования сигнала управления первым коммутатором 22. Элемент ИЛИ 21 предназначен для обнаружения факта считывания микрокоманды из блока памяти 40.

Первый коммутатор 22 предназначен для проверки соответствия типа микрокоманд, считываемых из блоков памяти

19 и 40, режиму работы устройства и формирования сигнала на выходе 65 на запрет функционирования устройства при нарушении этого соответствия.

Счетчик команд 23 предназначен для формирования и выдачи на выход 51очередной команды по сигналам с выхода

61 блока памяти 19 в зависимости от адреса, заданного в поле 4 регистра команд 1.

Генератор импульсов 24 предназначен для формирования импульсов считывания.

Узел пуска-останова 25 предназначен для управления подачей импульсов с генератора 24 при наличии единичного разрешающего сигнала на входе 3 и нулевого сигнала на входе 54.

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

Элементы НЕ 27 и И 28 предназначены для управления подачей импульсов считывания на счетный вход счетчика .тактов 12 и блока памяти 19, 30 и 40.

15 9688

Регистр адреса 29 предназначен для хранения адресов адресных микрокоманд. считываемых из блока памяти 30.

Блок элементов И 31 предназначен для управления записью адресов началь- ных микрокоманд e регистр адреса 32.

Регистр адреса 32 предназначен для хранения адресных микрокоманд, считываемых из блока памяти 30. В поле 34 задается переменная часть собственно- 1ф го поля адреса очередной адресной микрокоманды, в поле 33 — постоянная часть этого адреса.

В поле 34 задается адрес рабочей или спецйальной микрокоманды, подле- М жащей считыванию из блоков памяти 19 и 36 соответственно. В поле 36 задается метка типа микрокоманды, наличие . которой свидетельствует о том, что в

:поле 35 задан адрес специальной микро-ш команды. Отсутствию метки соответствует адрес рабочей микрокоманды.

Элементы И 37, И 38 управляют подачей импульсов считывания на управляющие входы блоков памяти 40 и 19 соот- ветственно.

Блок сумматоров по модулю два 39. предназначен для модификации переменной части адреса адресных микрокоманд в режиме диагностики. В рабочем режи" ме разряды переменной части адреса поступают на выход блока сумматоров без изменений, так как на его управляющий вход подается нулевой сигнал с единичного выхода триггера режима 6.

Блок памяти 40 предназначен для хранения операционных частей специальных микрокоманд. Блок элементов ИЛИ

41 предназначен для подлечи операционных частей рабочих и специальных микрокоманд на выход 65 устройства.

Триггер 66 узла пуска-останова предназначен для запоминания сигналов разрешения и запрещения работы устройства на входах 53 и 54 соответственно.

Элемент И 67 предназначен для управления подачей импульсов с выхода 52 генератора импульсов на выход 68 узла.

Дешифратор 69 преобразователя кодов 5 предназначен для дешифрации Кразрядного кода операции и возбуждения соответствующей выходной шины 71 при наличии разрешающего сигнала на управляющем входе 43. Шифратор 70 преобразует подаваемый на него (2 )-раз- рядный унитарный код в (n+1)-разрядный код, в котором п первых разрядов задают код Hq дополнения длины и мик15 16 ропрограммы, à (n+l)-й разряд кода задает состояние триггера 6 режима.

Логика работы преобразователя 5 ко-. дов может быть пояснена примером таблицы истинности, приведенной на фиг. 8.

В этом примере К=3, a=5.

Регистр 74 узла коррекции 11 пред} назначен для запоминания реакции объекта управления и диагностирования на очередной тестовый набор.

Регистр 75 предназначен для запоминания результата поразрядного суммирования по модулю два реакций объекта на последний тестовый набор и все наборы, предшествовавшие ему.

Сумматор по модулю два 73 осуществляет поразрядное суммирование реакций объекта на очередной тестовый набор с поразрядной суммой по модулю I два реакций объекта на все предыдущие тестовйе наборы.

Элемент задержки 72 предназначен для задержки импульса считывания микрокоманд, поСтупающего через вход 49 узла на входы регистров 74 и 75, на время, необходимое для нормирования реакции объекта на поданный тестовый набор.

Элемент задержки 76 предназначен для задержки синхроимпульса на время, необходимое для установки кода реакции на регистр 75.

Элемент И 77 предназначен для управления подачей разрешающего сигнала на управляющий вход дешифратора 78.

Дешифратор 78 предназначен для формирования сигнала на одном из .выходов в момент появления такой реакции объекта на поданный тестовый набор, которая позволяет однозначно определить место отказа в объекте (т. е. определить его состояние (фиг. 7)).

Элемент ИЛИ 79 формирует сигнал на выходе 56 узла коррекции при появлении единичного сигнала на какой-либо из выходов дешифратора 78.

Логика работы дешифратора 78 может быть пояснена на примере реализации устройством алгоритма диагностирования, схема которого приведена на фиг. 7„.

В этом примере в= 3,r=4, Задача дешиф-. ратора при этом - обнаружить момент попадания в состояние С1-С7 и сформировать сигнал на прекращение этого процесса, не ожидая, когда на объект будут поданы все тестовые -наборы, вхо- . дящие в алгоритм диагностирования. За счет этого и будет достигнуто сокращение времени выполнения алгоритма

17 96881 диагностирования, а следовательно, будет обеспечено и повышение быстродействия устройства. Так как каждому указанному состоянию однозначно соответствует определенная комбинация кода тестового набора, реакция объекта на этот набор и суммы по модулю два этой реакции со всеми предыдущими реакциями, то выходы дешифратора 78 должны возбуждать только при появлении ука- 10 занных комбинаций сигналов на его вы-. ходах, Это и показано в соответствующей фиг. 7 таблице разрешенных наборов узла "дешифратор 78 - элемент ИЛИ

79", представленной на Фиг. 9 и соот- ts ветствующей алгоритму на фиг. 7.

Элементы задержки 72 и 76 могут быть выполнены, например, на 0-триггерах.

Рассмотрим работу устройства. щ

Она возможна в диагностическом и рабочем режимах.

Независимо рт режима, перед запуском устройства в работу все его элементы памяти устанавливаются в нуль. 2

Затем в регистр команд 1 записывается код команды. Рабочая команда имеет формат, представленный на фиг. 5 а, диагностическая — на фиг. 5 б.

С поля 2 регистра 1 на информационный вход регистра программ 18 поступает код операции, устанавливающий на регистре адрес микрокоманды, которая называется начальной фазой микропрограммы. С нее начинается любая диагностическая и рабочая микропрограм«зз ма. Далее при подаче разрешающего сигнала на вход 53 устройства импульс считывания от генератора 24 проходит через блок 25 пуска-останова и эле 40 мент И 28 на считывающий вход блока памяти 30. Так как в регистре 29 при этом установлен нулевой код, то состояние выходов блока памяти 30 при этом останется нулевым, Через элемент

1И 38 импульс также поступает на счи45 тывающий вход блока памяти 19 и счи, тывает из него начальную фазу микро;програимы. При этом подается единич1ный сигнал на выход 60 блока, по которому через открытый элемент И 7 подается разрешающий сигнал на вход 43 преобразователя кодов 5 и устанавливается в нуль регистр теста .9.

Если код, подаваемый на группу йнформационных входов 44 преобразовате- > ля кодов 5, задает диагностическую микропрограмму, то сигналы на его группе выходов 46 останутся нулевыми, а

5 18 сигнал на выходе 45 станет единичным и установит триггер 6 режима в единичное состояние, зафиксировав переход устройства в режим диагностики. После срабатывания преобразователя кодов

5 сигнал с выхода 60 блока памяти 19 через элемент задержки 8 открывает входы второго коммутатора 10, в резу-, льтате чего код дополнения Н длины и диагностической микропрограммы до емкости (2 -1) счетчика тактов 12 с и» поля 3 регистра 1 поступает на вход счетчика тактов 12 и записывается в ,него.

Тем же сигналом с выхода 60 блока памяти 19 открывается блок элементов

И 31, в результате чего с поля 4 в регистр адреса 32 поступает адрес первой адресной микрокоманды и адрес пер" вой микрокоманды диагностической микропрограммы. Адрес первой адресной микрокоманды с полей 33 и 34 поступает в регистр адреса 29, при этом переменная часть адреса с поля 34 модифицируется блоком сумматоров по модулю два 39, на управляющий вход которого подан единичный сигнал с единичного выхода триггера 6 режима. Адрес первой микрокоманды диагностической микропрограммы с поля 35 подается на блок памяти 40, а через регистр 18на блок памяти 19. При этом сигналом с поля 36 (метка типа микрокоманды) открывается элемент И 37 или И 38, подготавливая путь для прохождения импульса считывания. Если в поле 35 записан адрес рабочей микрокоманды, то метка в поле 36 отсутствует, вследствие чего открытым окажется элемент И

38, который подает очередной импульс считывания на блок памяти 19, Если же в поле 35 записан адрес специальной микрокоманды, в поле 36 будет записана метка, по которой будет закрыт элемент И 38 и откроется элемент И 37, через который очередной импульс счи" тывания поступает на блок памяти 40.

Сигналы минроопераций считанной диагностической микрокоманды через блок элементов ИЛИ 41 поступают на выход

65 устройства.

Этим же импульсом в счетчик тактов

12 добавляется единица, а из блока памяти 30 считывается первая адресная микрокоманда; которая записывается в регистр 31. С полей 33 и 34 регистра в регистр адреса 29 поступает сформированный аналогично вышеописанному адрес следующей адресной микрокоман19 9688 ды. Адрес очередной диагностической микрокоманды с поля 35 регистра 32 поступает на блоки памяти 40 и 19.

Одновременно этот же импульс считывания поступает на счетный вход З счетчика тактов 12 и добавляет в него единицу. По следующему тактовому импульсу устройство работает так же, как и при считывании