- •Министерство общего и профессионального образования российской федерации
- •Учебное пособие Воронеж 2000
- •Учебное издание
- •394026 Воронеж, Московский поспект, 14
- •1. Тестовое диагностирование в цифровой технике:
- •1.1. Введение
- •1.2. Тестовое диагностирование в цифровой технике: цепи и терминология
- •1.3. Процедуры и проблемы программного тестирования
- •1.4. Необходимость проектирования тестопригодных схем
- •2. Анализ тестопригодности: система camelot
- •2.1. Количественная оценка тестопригодности
- •2.2 Принципы вычисления управляемости
- •2.3 Принципы вычисления наблюдаемости
- •2.4 Принципы вычисления тестопригодности
- •2.4.1. Тестопригодность как функция управляемости и наблюдаемости
- •2.5. Применение системы camelot на практике.
- •2.5.1. Количественная оценка проектируемых схем.
- •2.5.2. Автоматический выбор контрольных точек.
- •2.5.3 Методика генерации тестов вручную.
- •2.5.4. Методика автоматической генерации тестов
- •2.6. О других системах анализа тестопригодности
- •2.7. Заключительные замечания о методах анализа
- •3. Методы структурного проектирования
- •3.1. Принцип метода сканирования: сканируемый путь
- •3.2. Сканирование с произвольным доступом
- •3.3. Метод сканирования, чувствительного к уровню тактового сигнала
- •3.4. Недостатки и достоинства методов сканирования
- •3.5. Методы самотестирования: bilbo
- •3.5.3. Устройство встроенного поблочного диагностирования логических схем (bilbo)
- •3.6. Заключительные замечания о методах сканирования
- •4. Генерация тестов для схем, реализующих принцип сканирования
- •4.1. Алгоритм podem, условные обозначения, понятия и принципы
- •4.1.5. Вычисление относительных значении управляемости
- •4.2. Процедура podem
- •4.2.1. Пример 1. Основной принцип podem
- •4.2.2. Пример 2. Многомерный d-проход
- •4.2.3. Пример 3. Переопределение состояний первичных входов
- •4.2.4. Заключение относительного алгоритма podem
- •4.3. Процедура raps
- •4.3.1 Пример 4. Процедура raps
- •4.3.2. Заключение о процедуре raps
- •4.4. Методика выполнения процедур raps и podem
- •4.4.1 Использование статического сжатия тестов
- •4.4.2. Использование динамического сжатия тестов
- •4.5. Замечание относительно процедуры моделирования неисправностей
- •4.6. Заключительные замечания о процедурах podem и raps
- •5. Практические рекомендации по проектированию тестопригодных схем
- •5.1. Средства поддержки процедуры генерации тестов
- •5.2. Средства поддержки процедур тестирования и поиска неисправностей
- •Содержание
4.5. Замечание относительно процедуры моделирования неисправностей
В процессе обсуждения процедур PODEM и RAPS предполагалось, что существуют эффективные средства моделирования неисправностей. Имеется несколько методов моделирования поведения логических схем при наличии в них неисправностей, однако их подробный анализ выходит за рамки данного пособия. Тем не менее моделирование неисправностей является важной и существенной частью процесса генерации тестов в процедуре PODЕM, и потому в этом разделе комментируется метод, который использовался разработчиками этой процедуры.
Основной чертой, характеризующей эффективность метода моделирования поведения комбинационных логических схем на заданном входном наборе, является возможность определить, какие неисправности (по предположению, из множества произвольных неисправностей) обнаруживаются на первичных выходах схемы. «Эффективность» означает вычисление с высокой скоростью и экономичное использование процессорного времени. Методы моделирования неисправностей разделяются на три вида: последовательное, параллельное и конкурентное моделирование. Последовательное моделирование неисправностей определяет поведение схемы в присутствии неисправности при рассмотрении только одной неисправности за цикл моделирования. Методы параллельного и конкурентного моделирования позволяют моделировать некоторое множество копий схемы за один цикл, где каждая копия соответствует неисправной схеме с присутствующей в ней определенной неисправностью.
Параллельные и конкурентные методы сложнее метода последовательного моделирования и в основном разработаны как методы моделирования общего назначения для обработки широкого класса комбинационных и последовательностных схем. Однако было установлено, что метод последовательного моделирования имеет определенные преимущества для комбинационных схем; где простота схемы сочетается с простотой процедуры моделирования. Метод моделирования, называемый теперь методом распространения одиночной неисправности (РОН), состоит из следующих основных шагов.
Шаг 1. Определить исходный список неисправностей (ИСН), список обнаруживаемых неисправностей (СОН) и список проверяющих тестов (СПТ). Исходный список неисправностей включает все одиночные неисправности типа н-к-1, н-к-0 на первичных входах и выходах вентилей; СОН первоначально пуст; СПТ содержит те тесты, которые определены процедурой RAPS или сгенерированы процедурой PODEM.
Шаг 2. Подать первый тестовый набор из СПТ в схему и определить логические значения всех узлов исправной схемы.
Шаг 3. Для каждого вентиля с логическим состоянием выхода 1(0) моделировать воздействие неисправности н-к-0 (н-к-1) на его выходе при условии, что эти неисправности не были обнаружены предыдущим тестом, т. с. при условии, что неисправность входит в ИСН, а не в СОН.
Шаг 4. Если неисправность выхода вентиля распространяется на наблюдаемый выходной узел (первичный выход схемы или вход сканируемого триггера-защелки), то неисправность обнаруживается этим тестом: в противном случае — не обнаруживается. Исключить обнаруживаемые неисправности из ИСН и включить в СОН. Отметить тест в СПТ как существенный.
Шаг 5. Повторить шаги 2 — 4 для каждого неотмеченного теста.
Предельная скорость выполнения процедуры моделирования может быть увеличена следующими способами.
А. На шаге 1 ИСН может быть сокращен путем априорного анализа групп эквивалентных неисправностей в схеме. Две неисправности или более эквивалентны, если все они обнаруживаются одним и тем же множеством тестов. Тест, построенный для некоторой одной неисправности, обнаруживает все другие эквивалентные ей неисправности. Например, рассмотрим трехвходовый вентиль И-НЕ. Единственный тест для обнаружения любой из трех неисправностей н-к-0 на входах вентиля (одиночных или кратных) состоит из всех 1 на входах и тем самым вызывает появление ожидаемого правильного значения 0 на выходе вентиля. Оказывается, что это единственный тест, устанавливающий на выходе вентиля низкий уровень и, следовательно, позволяющий обнаружить неисправность н-к-1 выхода вентиля. Таким образом, в действительности, три неисправности и-к-0 входов и неисправность н-к-1 выхода вентиля эквивалентны. В результате все неисправности, кроме одной, можно исключить из ИСН. (Для генерации тестов обычно не имеет значения, какая из неисправностей остается в ИСН, для процедуры моделирования неисправностей обычно более удобно оставлять неисправность выхода вентиля.)
Понятие эквивалентности неисправности образует основу эффекта «размножения» неисправностей, в которой локальные эквивалентные неисправности (неисправности, связанные с одним и тем же элементом, как в примере с вентилем И-НЕ) объединяются вместе для образования более мощного множества эквивалентных неисправностей. Например, неисправность н-к-1 любого входа вентиля ИЛИ-НЕ эквивалентна неисправности н-к-0 его выхода. Следовательно, для вентиля И-НЕ, запитывающего вентиль ИЛИ-НЕ, эквивалентную группу образуют следующие неисправности:
н-к-0 каждого входа вентиля И-НЕ;
н-к-1 выхода вентиля И-НЕ,
н-к-1 каждого входа вентиля ИЛИ-НЕ,
н-к-0 выхода вентиля ИЛИ-НЕ.
В схеме из двух вентилей лишь одно такое множество эквивалентных неисправностей включает 50% всех одиночных неисправностей схемы типа н-к-1, н-к-0. Тест, покрывающий какую-либо одну из этих неисправностей, будет автоматически покрывать все другие неисправности из этого множества.
Устранение эквивалентных неисправностей из ИСН обычно позволяет сократить в пределе до 50% неисправностей из первоначально заданного множества. С учетом неоднократных повторений шага 3 процедуры моделирования это сокращение дает значительную экономию времени моделирования.
Б. Логические состояния узлов схемы на шагах 2 и 3 могут быть определены за один проход программы при условии, что состояние выхода каждого вентиля анализируется в правильной последовательности, т. е. значение выхода вентиля оценивается лишь в том случае, когда известны логические значения на всех его входах. Использование правила нумерации узлов схемы, описанного в подразделе 4.1.5, обеспечивает правильную последовательность вычислений.
В. Неисправности на шаге 3 выбираются в результате проверки двух условий: принадлежит ли исправность все еще ИСН и является ли неисправность потенциально наблюдаемой для данного теста? Неисправность некоторого узла схемы является потенциально наблюдаемой, если переход узла из фиксированного логического состояния в неизвестное состояние Х вызывает появление логического значения Х на одном или нескольких наблюдаемые выходных узлах. Если логическое значение Х не распространяется на наблюдаемый выходной узел, то неисправность этого узла и любого другого Х-значного узла является ненаблюдаемой. Потенциально наблюдаемые неисправности являются тем единственным типом неисправностей, которые следует моделировать.
Утверждается, что на практике предварительное выполнение фазы Х-распространения перед процедурой полного моделирования неисправностей позволяет весьма эффективно уменьшить общее время моделирования. Затраты времени на выполнение процесса Х-распространения более чем компенсируются экономией времени на моделирование лишних ненаблюдаемых неисправностей.