Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП_надежность и диагностика.doc
Скачиваний:
84
Добавлен:
20.03.2016
Размер:
3.87 Mб
Скачать
      1. Тестовое диагностирование процессора

Процессор представляет собой главный функциональный элемент любого контроллера или вычислительной машины. Выше было отмечено, что тест процессора, как правило, входит составной частью в тест мультирежимной системы, поэтому коротко рассмотрим правила его построения [23]. Надо сказать, что здесь возможны, по крайней мере, два различных подхода, поставляющие тесты, которые существенно различаются классами обнаруживаемых отказов. Об одном из тестов можно говорить как о достаточно полном и ориентированном на широкий класс отказов. Представляется, что сферой его применения может быть технологический контроль при производстве процессоров. При другом подходе рассматриваемый класс отказов заметно сужается, что объясняется нацеленностью этого теста на применение в бортовых системах. В последнем случае предполагается, что микросхема процессора достаточно надежна, и отказы в ней, скорее всего, могут возникать лишь в интерфейсах с внешней средой. Ниже прокомментируем лишь первый подход. Сразу отметим, что при построении теста для процессора не возникают многие из отмеченных выше проблем, характерных для систем общего вида и требующих использования различных установочных и транслирующих последовательностей.

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

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

  1. обработка данных,

  2. управление обработкой данных,

  3. хранение и передача данных,

  4. управление передачей данных,

  5. реакция на внешние сигналы.

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

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

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

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

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

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