ПОИСК Статьи Чертежи Таблицы Проблемы тестирования систем из "Отладка микропроцессорных систем " Цифровые вычислительные системы ставят уникальные проблемы поиска неисправностей, что объясняется их организацией и структурой. Как и в других электронных системах, компоненты компьютера по разным причинам отказывают, что приводит к частичному или полному выходу систем из строя. Архитектура вычислительной системы часто превращает поиск неисправного компонента в сложную и длительную процедуру. [c.36] Значительная часть компонентов компьютера реализована на больших интегральных схемах (БИС), благодаря которым законченные подсистемы компьютера поставляются в виде готовых блоков. Примером такого блока в виде БИС служит сам микропроцессор. По мере все большего уплотнения элементов в БИС проблемы их функционального тестирования резко усложняются. Любая БИС до поставки подвергается лишь ограниченному тестированию, а отказы могут проявиться при эксплуатации из-за возникновения комбинаций сигналов, которые не применялись в процессе тестирования, или таких изменений некоторого параметра компонента, которые вызывают нехарактерное поведение микросхемы. [c.36] Кроме таких видов отказов имеются и отказы, возникающие в системе после некоторого срока эксплуатации. В общем случае они вызываются электрическими отказами из-за неисправностей компонентов или, что происходит гораздо реже, программными отказами из-за искажения хранимых в памяти кодов команд. [c.37] Двойственная природа вычислительной системы при возникновении отказа сразу же ставит следующую проблему. Если отказ не очевиден, исследователь должен решить, скрыт отказ в аппаратных средствах или вызван ошибкой в программе. На этот вопрос часто ответить не так просто, так как характер отказа может препятствовать выполнению простых диагностических тестов. Отказ в шине управления микропроцессора может препятствовать выполнению любой программы, а отказ в операционной системе может не допустить загрузку и выполнение любой тест-программы. [c.37] Таким образом, проблема определения того, скрыт отказ в аппаратных средствах или в программном обеспечении, показывает, что изготовители микропроцессорных систем серьезно отстают в части включения в них контролирующих средств, которые могли бы значительно упростить работу обслуживающего персонала. [c.38] В любой момент времени полное состояние микропроцессорной системы определяется уровнями сигналов на множестве линий. В 8-битном микрокомпьютере текущий адрес представлен состояниями 16 параллельных линий шины адреса. В то же время данные, которые считываются или записываются по этому адресу, являются двоичным кодом на 8 параллельных линиях шины данных. Для определения типа выполняемой операции необходимо также знать состоянм нескольких линий шины управления. Следовательно, для получения всей информации о передаче по шине должны быть известны состояния многих линий. Любой кусочек информации обычно существует на шине только в течение очень короткого временного интервала. Байт считываемых из памяти данных помещается на шину данных только на один период системной синхронизации длительностью, например, 250 НС. [c.38] Мультиплексирование шины усложняет тестирование, так как в любой момент времени приходится решать, какая информация находится на мультиплексируемой линии илн линиях. Вновь приходится констатировать, что обычные контрольно-измерительные приборы совершенно не приспособлены к демультиплексированию информации в таких линиях и что необходимо применять специальные приборы. [c.39] Преобразуем это число в более удобную для нас десятич-ную систему счисления. [c.40] Примерный возраст Земли оценивается в 4,7ХЮ лет, поэтому невероятно, чтобы микропроцессор выжил хотя бы ничтожную часть требуемого времени, и уж наверняка он превратится в пыль до истечения вычисленного срока. [c.40] Приведенные расчеты свидетельствуют о том, что сложную цифровую микросхему, например микропроцессор, никогда нельзя проверить полностью . [c.40] Отсюда следует, что и каждый существующий кбм-пьютер никогда не проверялся и не может быть проверен полностью в лучшем случае для проверки его функционирования применялось весьма ограниченное подмножество команд и двоичных наборов. Изготовители микросхем и автоматического испытательного- оборудования для БИС решают эту проблему, контролируя основные функции с помощью ограниченного множества двоичных тестнаборов и полагая по результатам такого контроля, что БИС будет правильно работать на всех тест-набора. . [c.40] Когда микросхема спроектирована и изготовлена опытная партия, внутренняя топология микросхемы мо--жет вызвать эффект так называемой чувствительности к набору , заключающийся в том, что определенный двоичный набор приводит к неправильной работе. Мало вероятно, чтобы такой набор появился в тестах при производстве, его действие проявляется только в условиях эксплуатации. Драйверы выходных линий обычно размещаются на периферии кристалла, а по условиям работы они рассеивают большую мощность по сравнению с другими элементами схемы. Находящиеся вблизи драйверов маломощные схемы могут изменить свои характеристики в связи с повышением температуры. Следовательно, через некоторое время после подачи питания поведение микросхемы может стать непредсказуемым. [c.41] Для поддержания работоспособности системы не должно быть отказов в некоторых ее компонентах. Эти важнейшие компоненты в совокупности называются системным ядром, и в него обычно входят ЦП, системный генератор синхронизации, шина управления и шина адреса. [c.41] ЮТ ОТКЛЮЧИТЬ ЦП от шины данных. Переключатель Sg замыкает старшую линию на землю, поэтому ЦП из любой ячейки памяти считывает шестнадцатеричный код (7F. Показанную схему применяют для реализации свободного счета Б микропроцессорах 8080, 8085 и Z80. [c.42] Когда с помощью Si шина данных разорвана и 82 замкнут на землю, ЦП осуществляет операцию считывания из памяти для выборки следующей команды. Она всегда интерпретируется как команда типа NOP, что заставляет ЦП перейти к следующему адресу памяти и произвести еще одну операцию считывания. ЦП вынужден считывать команду нет. операции из каждой ячейки памяти, в результате чего на шине адреса формируются все возможные двоичные коды. При просмотре сигналов в каждой линии шины адреса можно установить факт ее отказа, проявляющийся в замыкании на землю или на питание, в обрыве линии или в замыкании на другую линию шины адреса. [c.42] Являясь одним из наиболее сложных компонентов в системе, микропроцессор оказывается и наиболее надежным. Как уже говорилось, такую сложную БИС, как микропроцессор, невозможно проверить полностью, что заставляет их изготовителей ограничиваться функциональным тестированием микросхем. Такое тестирование означает, что каждая функция проверяется с привлечением ограниченного множества двоичных наборов. [c.43] Простейший вид тестирования ЦП в условиях эксплуатации — перевод системы в режим свободного счета. Он показывает, что ЦП правильно считывает команду с шины данных, формирует адресные наборы на шине адреса и правильно реагирует на сигналы системной синхронизации. Контролируя сигаалы в линиях системной шины, например в линии Я/Ш, можно частично проверить шину управления. [c.43] Обычно при проверке в условиях эксплуатации ЦП считается работоспособным, и специальных проверок для него не производится, за исключением перевода системы в режим свободного счета. Почти всегда тестирование осуществляется с помощью некоторой стимулирующей программы, контролирующей систему, а это предполагает способность ЦП выполнять тест-программы. [c.43] Отказавший ЦП не может проверить самого себя, что заставляет разработчика системы, который должен предусмотреть возможность контроля ЦП, включить в систему второй ЦП только для проверки первого ЦП. Очевидно, общая сложность системы с появлением аппаратных средств второго ЦП резко возрастает, что приводит к ухудшению ее надежности. Данный подход в чистом виде применяется редко из-за возникающих проблем тестирования второго ЦП и его схем. Однако идея использования одной вычислительной системы для проверки другой оказалась жизнеспособной, и большинство сложных контрольно-измерительных приборов для проверки микропроцессорных систем сами имеют встроенные микропроцессоры. [c.43] Вернуться к основной статье