ел j
00
со
J
Изобретение относится к вычисли ТРЛЬНОЙ технике и может использовать ся для контроля работы блоков микропрограммного управления.
Цель изобретения - повышение достоверности контроля хода программ за счет обнаружения ошибок перехода.
На фиг.1 приведена схема устройства для функционального диагностирования; на фиг.2 - временная диаграмма его работы.
Устройство для функционального диагностирования содержит информационный вход 1, вход 2 признака слияния ветвей, тактовый вход 3, выход А сигнала ошибки, блок 5 пространственного сжатия информации, блок 6 сравнения, первый элемент И 7, шифратор 8, счетчик 9, второй элемент И 10, элемент И-НЕ 11, регистр 12 и распределитель 13 импульсов.
При использовании устройства для контроля блока микропрограммного управления каждая микрокоманда должна иметь, помимо полей 14 адреса, 15 микрооперации, 16 признаков, поля 17 контрольных разрядов, разряд |8 метки микрокоманды, соответствующей точке слияния ветвей микропрограммы. Информационные входы 1 устройства подключаются к выходам регистра микрокоманд, соответствующим полям 15 микроопераций, 16 признаков и 17 контрольных разрядов. Вход 2 устройства подключаются к выходу регистра микрокоманд, соответствующему разряду 18 метки. На тактовый вход 3 устройства подаются импульсы, по которым происходит запись в регистр микрокоманд кода очередной микрокоманды МК. Разрядность счетчика 9 выбирается равной количеству контрольных разрядов в соответствующем поле 17 микрокоманды.
В качестве блока 5 пространственного сжатия может использоваться любая известная схема свертки по модулю простого числа L либо схема свертки в поле GF(L) по модулю примитивного многочлена.
Устройство работает следующим образом.
Перед началом работы счетчик 9 устанавливается в нулевое начальное состояние. Цепь установки в исходное состояние на фиг.1 не показана. В разряд 18 метки микрокоманд, соответствующих точке слияния, записывается
Г
а в остальных микрокомандах в
5
0
5
0
5
0
5
0
5
этот разряд записывается О. В поле 17 контрольных разрядов каждой микрокоманды записывается такой код, чтобы после свертки в блоке 5 двоичных разрядов полей микроопераций, признаков, а также контрольных разрядов на выходе блока 5 был сформирован код, соответствующий очередному состоянию счетчика 9.
Контроль хода выполнения микропрограммы осуществляется сравнением контрольного кода, сформированного бло-р ком 5 путем сжатия двоичных разрядов полей микроопераций, признаков и контрольных разрядов, с состоянием счетчика 9. Если сформированной блоком 5 контрольный код совпадает с состоянием счетчика, то делается вывод, что микропрограмма выполняется правильно, в противном случае на выходе 4 устройства появляется сигнал ошибки.
Подобным образом устройство функционирует только при воспроизведении линейных, а также ветвящихся участков микропрограммы, не содержащих точек слияния ветвей. В этом случае каждой микрокоманде можег быть поставлено в соответствие только одно состояние счетчика 9. Указанное обстоятельство дает возможность вычислить и разместить заранее в контрольных разрядах памяти микрокоманд соответствующие
коды по указанному выше правилу. I
Однако реальные микропрограммы имеют более сложные структуры и содержат точки влияния ветвей. В указанных точках значения контрольных кодов зависят от того, по какой траектории была реализована микропрограмма. Чтобы обеспечить контроль хода микропрограммы, имеющей точки слияния ветвей, в предлагаемом устройстве в указанных точках обеспечивается установка счетчика 9 в определенное состояние - своего рода код-индентификатор соответствующей точки слияния.
В процессе воспроизведения микропрограммы в каждый момент появления в регистре микрокоманд БМУ микрокоманды, соответствующей точке слияния, на входе 2 устройства появляется сигнал 1, который разрешает поступление на вход параллельной загрузки счетчика 9 импульса, по которому происходит запись в счетчик 9 кода, сформированного на выходах шифратора 8. Если код, в который установился счетчик 9, совпадает с кодом-индентифика515
тором соответствующей точки слияния, сформированным блоком 5, можно сделать вывод об отсутствии неисправностей, в противном случае на выходе элемента И 7 появляется сигнал ошибки. Шифратор 8 осуществляет преобразование состояния счетчика, полученного в точке слияния, а код-идентификатор данной точки. Каждому выходному коду шифратора 8 соответствует несколько входных - по числу ветвей, сходящихся в данной точке. Шифратор 8 представляет из себя комбинационную схему, которая строится на основе со- ответствующей ей таблицы истинности. Возможна реализация шифратора 8 на основе ПЗУ. В этом случае входы шифратора образуют адресные входы ПЗУ, выходы которого соответствуют выходам шифратора 8.
Предположим, микропрограмма имеет две точки слияния: первой соответствует код-индентификатор 8„, второй - S. . Пусть в первой точке слияния схоп
дятся три ветви:
соответствующие им 9 в точке слияния
состояния счетчика
равны S , S и S3( , во второй точке
слияния - две ветви:
соответствующие . c-l
им состояния счетчика 9 S2 и S. Tor- да логика работы шифратора 8 описывается следующей таблицей
Входы vВыходы
s«
sks° oo...o
где S к - состояние счетчика после i выполнения последней микрокоманды. Всем другим входным кодам, отличным
от S
п
соответст, , , ,, .jj,, г и ок,
вуют выходные коды, отличные от SR,SH и 8ц. Для обеспечения возврата на
Q 5 0
5
0
5
0
5
0
1J
начальную микрокоманду в разряд 18 метки первой микрокоманды также заносится код 1.
Так как каждой точке слияния соответствует свое начальное состояние счетчика 9, неисправности, проявляющиеся в виде замены одной точки слияния другой, будут обнаружены.
Формула изобретения
Устройство для контроля хода программ, содержащее шифратор, блок сравнения и первый элемент И, выход которого является выходом сигнала ошибки устройства, первый вход соединен с выходом блока сравнения, а второй вход соединен с тактовым входом устройства, отличающееся тем, что, с целью повышения достоверности контроля за счет обнаружения ошибок перехода, оно дополнительно содержит регистр, счетчик, блок пространственного сжатия информации, второй элемент И, распределитель импульсов и элемент И-НЕ, выход которого соединен с входом параллельной загрузки счетчика, тактовый вход которого подключен к тактовому входу устройства и соединен с входом запуска распределителя импульсов, первый и второй выходы которого соединены с первыми входами элемента И и элемента И-НЕ соответственно, вторые входы которых подключены к входу признака слияния ветвей устройства, выход элемента И соединен с тактовым входом регистра, группа выходов которого соединена с группой входов шифратора, группа выходов которого соединена с группой информационных входов счетчика, группа информационных выходов счетчика соединена с группой информационных входов регистра и с первой группой входов блока сравнения, вторая группа входов которого подключена к группе выходов блока пространственного сжатия, группа входов которого образует информационный вход устройства.
, , W
J HiШ
2 73.1
n
3/-2 Ч -/ |/S/jjj /
# ,
s «
Фиг. 2
n / n
jj
s «
Фиг. 2
название | год | авторы | номер документа |
---|---|---|---|
Устройство для контроля хода микропрограмм | 1990 |
|
SU1728865A1 |
Устройство для контроля хода микропрограмм | 1990 |
|
SU1734096A1 |
Микропрограммное устройство управления | 1983 |
|
SU1104515A1 |
Микропрограммное устройство управления с контролем | 1983 |
|
SU1136162A1 |
Устройство для сопряжения цифровой вычислительной машины (ЦВМ) с абонентами | 1985 |
|
SU1298762A2 |
МОДУЛЬ МУЛЬТИМИКРОПРОГРАММНОЙ СИСТЕМЫ | 1997 |
|
RU2116665C1 |
Устройство управления контролем | 1985 |
|
SU1285471A1 |
Микропрограммное устройство для контроля и управления | 1985 |
|
SU1325476A1 |
Микропрограммное устройство управления с контролем | 1985 |
|
SU1267414A1 |
Устройство для управления восстановлением микропрограмм при сбоях | 1982 |
|
SU1056193A1 |
Изобретение относится к вычислительной технике и может использоваться для контроля работы блоков микропрограммного управления. Цель изобретения - повышение достоверности контроля хода программ за счет обнаружения ошибок перехода. Цель достигается за счет формирования контрольного кода в точках слияния ветвей микропрограмм таким образом, что он совпадает с результатом сжатия информации, содержащейся в полях микроопераций, признаков и контрольных разрядов, которое осуществляется блоком пространственного сжатия информации. Устройство содержит блок 5 пространственного сжатия информации, блок 6 сравнения, регистр 12, шифратор 8, счетчик 9, распределитель 13 импульсов, два элемента И 7, 10 и элемент И-НЕ 11. 2 ил.
Устройство для контроля электронной вычислительной машины | 1981 |
|
SU1019451A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторское свидетельство СССР N 1300479, кл | |||
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1990-07-15—Публикация
1987-12-28—Подача