Краткий обзор способов контроля специализированных ЭВМ



Скачать 177.14 Kb.
Дата27.04.2016
Размер177.14 Kb.
Краткий обзор способов контроля специализированных ЭВМ

1. Способы контроля БЦВМ

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

Средства контроля, входящие в систему обнаружения ошибки, делятся на средства программного и схемного контроля.

Программный контроль разделяется на программно-логический контроль и тестовый.



Программно-логический - это контроль вырабатываемой в ма­шине информации, основанный на использовании избыточности ис­ходной и промежуточной информации. Наличие избыточности в ин­формации позволяет находить различного вида контрольные соотношения, например: sin2x + cos2x = 1. Однако это не очень удобно, и поэтому часто прибегают к двойному просчету. Избы­точность информации здесь создается путем повторения вычислений, а контрольные соотношения - это совпадение результатов 1-го и 2-го просчетов.

Тест - наиболее полный охват узлов машины и режимов их работы подбором соответствующих примеров и сочетаний операций.

Контролирующий тест - определяет факт неисправности. К контролирующим тестам предъявляется основное требование полноты контроля при минимальном объеме программы, т.к. программа теста располагается в памяти машины вместе с основной программой. Тесты на постоянном коде - совокупность примеров, в которых осуществляются определенные действия над заданными исходными величинами и результаты сравниваются с хранимыми в памяти ма­шины эталонами.

Диагностический тест - определение места неисправности. Диагностический тест строится по принципу "сужения областей".

Схемный контроль - осуществляется автоматически с помощью встроенного в машину контрольного оборудования. Для того, чтобы схемный контроль позволял проверять работу машины при каждой операции независимо от комбинаций кодов чисел, адресов и т.д., нужно строить его как контроль отдельных микроопераций либо их групп. Алгоритм выполнения каждой операции состоит из последователь­ности микроопераций, подлежащих контролю на основе использова­ния некоторой избыточной информации об исходных и промежуточных кодах, распределении сигналов в устройствах и т.д. Таким образом, если программный контроль использует избыточность исходной информации (макроинформации), то схемный контроль использует избыточность микроинформации в пределах каждой операции. Эта избыточность в отличие от избыточности при программном контроле образуется лишь при наличии избыточного оборудования.

2. Тестовый контроль

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



Программы частичной проверки арифметического устройства (АУ).

Основное назначение - обеспечить правильное выполнение вспомогательных команд последующих испытательных программ (ИП). Для этого, кроме собственно АУ, необходимо проверить правильность работы устройства управления (УУ): дешифратора кода операции, регистра команд, а также правильность выдачи управляющих импульсов из УУ.

Этими испытательными программами контролируются поразрядные операции (логическое сложение, логическое умножение, отрицание равнозначности), а также операция передачи кода.

В испытательные программы частичной проверки АУ включают проверку выполнения отдельных операций с такими исходными данными, которые создают "Тяжелый" режим работы при выполнении отдельных операций без связи с другими операциями.

Некоторые типичные "тяжелые" режимы сумматора АУ счетно-импульсного типа со сквозным переносом, построенного на триггерах с потенциальным выходом. Сложение кода, имеющего едини­цу по одному из разрядов, с кодом из всех единиц 0 ... 0010

1 ... 1111

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

Тяжелые режимы создаются также для следующих групп импульсов:

0 ... 0101 I ... 1010 I ... 1111

Следует отметить; что программу частичной проверки АУ составля­ют обычно так, что с возрастанием номеров операторов все большее число элементов схемы АУ принимают участие в работе. Вначале проверяются поразрядные операции, затем сложение. Последними выполняются умножение и деление в наиболее тяжелых режимах. При этом в описании программы должно быть указано, какие цепи впервые контролируются в каждом из примеров. Эта информация в ряде случаев позволяет определить место неисправности, руководствуясь номе­ром того оператора, после которого происходит останов. Программа проверки АУ для одноадресной машины

адрес ~""~ "

команда операция адрес пояснения

R. п<- а.) Посылка в См<а.\. 1_го

* исходного кода для 3 .

*• **■<> Выполнение операции над

кедами с<4,> »-<А.\)

R+A, Ср."" cJ*.T Сравнение результата опе-

г v рации с (, а..»т \

и т.д.

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



Для проверки выработки сигнала условного перехода (приз­нака) всегда приходится использовать операцию передачи управления.

Программа проверки, команды операция адрес___________пояснение

JC ft с ^ Выполнение операции, ft+, Э £ в которой оч! I, R + г. ьг> а. .1 и переход

й + j С><.г Й.+ Л Останов при i*i / I

й+Л ас ^Л Выполнение операции, *+5Г о <>л в которой ^ «■ О,

Л+е, 0«.т ^Л Останов при ^ ^0
Программа полной проверки АУ-б

Контроль АУ с помощью программы полной проверки является окончательным, поэтому она должна проверить устройство в воз­можно большей глубиной контроля. В программе должны контролиро­ваться все характерные для проверяемого АУ тяжелые режимы. Частичный и полный контроль взаимно дополняют друг друга.

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

При проверке с помощью тестов составляют обычно два вари­анта одной и той же программы. Один вариант построен с пере­адресацией команд в АУ и является основным для наладочной сис­темы ИП. В другом варианте переадресация производится в УУ. Этот вариант чаще используется для проверки ОЗУ в процессе эксплуатация уже налаженной машины.



Программный контроль ПЗУ

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


Контроль устройства управления (УУ)

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

1) прием некоторого слова в регистр команд;

2) расшифровку этого слова;

3) подготовку содержимого регистра номера команды к выборке следующий команды;

4) обращения в ОЗУ для выборки слов, являющихся исходными дан­ными при выполнении операции, и для записи результата.

При выполнении любой операции основные элементы УУ обяза­тельно участвуют в работе. Даже первые из программ в системе испытательных программ производят проверку правильности выполнения основных функ­ций УУ. Очень важно, чтобы такие первые программы в системе были наиболее простыми. Этому требованию удовлетворяет програм­ма частичной проверки АУ и УУ, построенная с применением коман­ды сравнения с остановом, которая проверяет:

1) правильность выдачи основных управляющих импульсов такта,

2) прием команды на регистр команды

3) правильность дешифрации кода операции

4) пересчет, номера команды

5) задержку выполнения элементарного такта при некоторых ариф­метических операциях.


Проверка регистра команд (РК) на запись и сброс.

Для того, чтобы по программе контроля адресной части РК можно было определить место неисправности, необходимо, чтобы после проявления неисправности останов возникал на ближайших командах. Другими словами, программа должна обладать малой свя­занностью. Легче всего определить неисправность, если останов возникает в том же такте, когда она проявилась. Этого можно добиться, применяя операцию сравнения с остановом в программах с логической схемой:

команды операция адрес пояснения Й-+3 СГ* "-4-


Проверка счетчика номера команд.

В командах передачи управления одноадресных машин единст­венный адрес используется для указания номера той ячейки, к которой осуществляется переход. Т.о., в команде невозможно ука­зать адрес для записи какого-либо кода в ОЗУ. Поэтому естест­венно применять контролирующую последовательность, состоящую из чередующихся команд посылки в ячейку и передач управления. При этом используется тот факт, что команда пере­дачи управления не изменяет содержимого сумматора АУ. Рассмо­трим программу проверки правильности передачи управления для одноадресной машины, в которой команды и числа помещаются в различных ЗУ. Для работы этой программы необходим следующий подготовительный цикл. В ячейки а , а + 1 , а +2, ... а + N - 1. ( N - равно количеству команд посылки в ячейку в последовательности) запи­сывается некоторый код β . Перед выполнением контролирующих последовательностей в сумматор заносится другой код α≠β . После правильного выполнения команд передач управления в ячейках а , а + 1 , а +2, ... а + N – 1 первоначально записанной код β должен быть заменен кодом α . Это контролируется проверочным оператором, который пе­редает управление диагностической подпрограмме в том случае, когда хотя бы в одной из ячеек остался первоначально записан­ный код.

Переход к диагностической подпрограмме не всегда происхо­дит автоматически, он не происходит, например, если в ниже приведенной таблице команда, стоящая в ячейке , вследствие постоянной неисправности ложно передает управление команде, стоящей в ячейке R+l+3. В таких случаях возникает зацикливание. Эту ошибку не всегда удается заметить, особенно в машинах, имеющих большое быстродействие. Для ее обнаружения надо вносить специальные изменения в схему машины.

кЖды операция адрес

в^г 6^ или-.-» г

£.+ t-ta *>■*> -^-+4-



Комплексный контроль БЦВМ

Если БЦВМ работает на выполнение одного алгоритма, то для комплексного контроля целесообразно использовать рабочую про­грамму этого алгоритма, дополнив ее некоторыми участками, обеспечивающими автоматический контроль.

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

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

В программах полной проверки АУ следует проверить выполне­ние последовательностей операций, т.к. выполнение отдельных операций уже проверено с помощью программы частичной проверки АУ.

Полная проверка состоит из контролирующей и диагностичес­кой подпрограмм.



Контрольная проверка. Одноадресный код.

команды операция адрес пояснения

^ ^с ^ Все промежуточные

л+г 8i ^ результаты образу-

.г ются в сумматоре

ус ______________&jj______________«-о_______________________

^+>J F ^^-и Проверка правильности

конечного результата

диагностической части

ft.-v*-*i следующая последовательность

Диагностическая программа (ДП) должна определить ту минималь­ную группу из последовательности операций, которая создает тяжелый режим, вызывающий проявление неисправности.

После перехода к ДП по номеру неверно выполнившейся последовательности определяются адреса ячеек, содержащих эту последовательность, и адреса соответствующий группы числовых кодов, которые будут использоваться при работе ДП. ДП определяют груп­пу команд, при выполнении которой проявляется неисправность. Более точное определение места неисправности при этом опреде­лить нельзя.



Контроль ОЗУ

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

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

Для выполнения описываемой проверки необходимо, чтобы ма­шина имела в своем составе устройство ввода, работающее на перфокартах или перфоленте. С его помощью вводятся в ОЗУ исход­ные данные и эталонные результаты. Такое устройство необходимо также для размещения исходных данных, используемых при выполне­нии испытательных программ, проверяющих отдельные устройства. Если в машине команды выдаются из ОЗУ, то с помощью устройств* ввода можно организовать быструю смену программ.

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

Схемный контроль СЦБМ

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



Контроль "четности" и "нечетности"о вводится дополнительный (n+1)-й разряд и общее число единиц слова вырабатывается либо всегда четным, либо нечетным. Признак четности определяется специальной схемой. Использование контроля нечетности имеет преимущества перед контролем четности:

1. Если в канале пропадает сигнал, то из канала поступают одни нули. При контроле четности такая ситуация возможна, и ошибка не будет обнаружена.

2. Т.к. триггер после приема всего слова должен устанавливаться в состояние, противоположное исходному, нетрудно обнаружить неисправность этого триггера. Это делается считыванием состоя­ния триггера до и после приема слова.

Контроль выборки команд при естественной последовательности адресов

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

Возможны 3 способа схемного определения информации, перед выборкой очередной команды:

1) Определение значения У(а) по предшествующим значениям У(а-1), У(а-2), … У(а-n), сохраняющимися в n - специальных регист­рах машины;

2) Определение значения У(а) по сформированному машиной адресу а очеред­ной команды;

3) непосредственное получение информации У(а) записываемой в специальных разрядах каждой предшествующей команды. Эта информация о адресе последующей команды может записываться в специальные разряды при программировании.



Кодовый метод оперативного аппаратного контроля машинной

информации

Для определение контрольной характеристики Qa числа А по какому-либо модулю α, подсчитывается по этому модулю количество Na. единиц в коде двоичного числа и берется до­полнение полученного вычета до модуля α (последнее действие производится для возможности обнаружения потери числа вместе с его контрольной характеристикой, например: А = 1,1101100 I, содержит - Na = 6 единиц. Его контрольная характеристика по модулю 4 при кодовом методе контроля равна: Qa = [4 – 1 - (6)(mod4)](mod4) = (4 – 1 - 2)(mod4) = 1(mod4) .

Схемы сверток при кодовом методе предназначены для определения остатка от количества единиц в коде "контролируемого "слова" А: (Na)(mod4)

Практический интерес представляют кодовый метод контроля по модулю 2 - "на нечетность" как наиболее экономичный по слож­ности аппаратуры и контроль по модулю 4 как более эффективный.



Контроль логических операций (сложение, умножение, сравнение) Очевидные правила:

1. Кол-во единиц Nν в коде логической суммы двух чисел равно сумме единиц в кодах исходных чисел минус число единиц Nλ в коде логического произведения этих чисел.

2. Кол-во единиц Nλ в коде логического произведения двух чисел равно сумме единиц в кодах исходных чисел минус число единиц Nν в коде логической суммы этих же чисел.

3. Кол-во единиц N в коде результата операций поразрядного сравнения двух чисел (сложение по модулю 2) равно сумме единиц в кодах слагаемых минус удвоенное число единиц Nλ , в коде логического произведения этих чисел.

Обозначив через Qν , Qλ и Q контрольные характери­стики результата операций ν , λ, и  над числами полу­чим правила для контроля этих операций

Ц^ = { Gk4t 3<. - ^ j ) С ^-°^ А»)

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

Например, контроль логического сложения А и В произво­дится по следующему алгоритму:

- выполнить операцию логического умножения исходных числе А и В

- с помощью схемы свертки сформировать контрольный код логичес­кого произведения

- в сумматоре контрольных кодов вычислить ожидаемый контрольный *ЗД &\ результата операций логического сложения

* выполнить собственно операцию логического сложения чисел А я 1

- схемой вбертки определить контрольный код Q,» , получен­ной логической суммы А и В,

- сравнить между собой ожидаемый квнтрольный код G*>> , вычис-

i ленный ранее, с Ч* ■

И в случае их несовпадения выдать сигнал ошибки.



Математические основы кодового метода контроля арифметических операций. !. Операция сложения.

Общее количество единиц в коде слагаемых равно сумме еди­ниц результата и возникших в процессе сложения единиц переноса



ИДИ

". Умножение.

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

результатов в сумматоре ^,

Однако »ти правила справедливы лишь при выполнении действий с Абсолютными значенный двоичных чисел без учета их знака.

Алгоритм контроля сложения с учетом знака Анализируются знаки слагаемых

I. Еслм оба числа А и В положительны и сложение производится а прямом коде, то

1) в-сумматоре контрольных кодов производится сложение по моду­лю ot- контрольных характеристик слагаемых (а^З^О^а, Xу

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

3) схемой свертки формируется контрольный код от числа единиц перено.ов по модулю А, : Q ^ _ ^ х_{ ^ ^( ^^ ^

4) из сод(ркимого сумматора контрольных кодов вычитается по модулю Л. значение Э^« '. ( 3 *.* О&- ч>„^}(^\ <\.) = ф& ' для получения ожидаемой контрольной характеристики результата.

5) схема свертки формирует контрольную характеристику Q t от полученной я результате сложения чисел суммы С « А + В _;

6) производится сравнение >^с с Q t ; в случае несовпадения вырабатывается сигнал ошибки.

П. Если котя бы одно слагаемое отрицательно и сложение произво­дится в обратном коде:

1) одновременно с обращением отрицательного числа из прямого кода в обратный производится корректировка его контрольных раз­рядов по формул ^ « С <А - i - 1л_ - Q «,") С *«оЛ. <-Х. ) ^

( Д- - s - Уч- ) ~ величина постоянная для данной ЭВМ при оп­ределенной разрядности W основной информации и модуле контроля ^ ■

2) в суммамре контрольных кодов производится сложение по моду­лю cL контрольных характеристик обратного кода слагаемых:

3) при сложении чисел на регистре переносов фиксируются едини­цы первичного шреноса в количестве ( ->/*»,,)., j

4) схемой свертки формируется контрольная характеристика от числа единиц первичного переноса

5) в сумматоре контрольных кодов производится вычитание по модулю cV :

U«4+f^-C ?~А 1<*««1Д) г ^



6) проведяется наличие единицы циклического переноса:

а) если единица циклического переноса отсутствует, схемой свертки формируется контрольный код q'c результата С = А+В и сопоставляется с содержимым сумматора контрольных кодов Q« \

б) если возникла единица циклического переноса, то

- на регистре переносов фиксируются единицы вторичного перено­са в кол-ве (.-''*«,-)«■ ;

- схема свертки формирует контрольный код ( Fn^) ~ от количества единиц вторичного переноса

- полученный контрольный код CF»«f \s вычисляется аз содержи­мого сумматора контрольных кодов

для образования ожидаемо! контрольной характеристики результата операции сложения С » А + В

- схемой свертки формируется проверочный код Ft результата операции сложения С = А + В

- производится сравнение F. с Ffc

L . Если результат сложения отрицателен, то паред высылкой его из АУ он обращается иэ обратного кода в прямой с одновременной корректировкой контрольной характеристики результата в соответ­ствии с зависимостью: Р*. 2.(Д-~^~ *v- ■^<=uV-Ј^-) .

Контроль умножения

Для случая умножения, выполняемого с числами в прямом коде, начиная с младших разрядов множителя, и при получении при бли-женного значения кода произведения:

1. Анализируются знаки сомножителей для выбора ф-лы, по которо! производится преобразование контрольных характеристик •,

2. На каждом j-j-. такте сложения фиксируются единицы перено­сов с образованием от иих контрольно* эдэактеристики (.<>««<.}; ;

3. При сдвиге частичных результатов в сумматоре производится корректировка контрольных разрядов кода произведения (учет изменения контрольного кода из-за теряемых единиц).

4. После окончания умножения схемой свертки формируется контроль­ная характеристика када приближенного произведения .

5. Производится проверка выполнения необходимых контрольных со­отношений по одной из ниже приведенных формул в зависимости от знака сомножителей.

2) А •* 1&,' ft>», , С: < О;

3) A > о -t ft. -<. ъ ; d < о J

4) A-'O^ft^o>c>»'1

Сравнение кодового и числового контроля При одинаковой избыточности в кодировании информации (2-х дополнительных разрядах) кодовый контроль по модулю 4 обладает рядом преимуществгаред числовым контролем по модулю 3: I. Большая эффективность по обнаружению тройных ^оиибок при равной эффективности по обнаружению одиночных и двойных ошибок

2. В ЭВМ, у которых контроль передач и хранение информации ор­ганизован по модулю 2, кодовый контроль по модулю 4 для провер­ки правильности переработки информации обеспечивает сквозной " непрерывный контроль в числовом и адресном трактах. Это имеет ' место благодаря^тому, что контрольная характеристика слова по модулю 2 представляет собой младший разряд контрольной характе­ристики этого же слова по модулю 4.



3. Сумматор контрольных кодов по модулю 4 принципиально проце, чем по модулю 3, т.к. отсутствует цепь циклического переноса из старшего разряда в иладший.


База данных защищена авторским правом ©bezogr.ru 2016
обратиться к администрации

    Главная страница