Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Скобцовы Моделирование и тестирование

.pdf
Скачиваний:
97
Добавлен:
03.03.2016
Размер:
3.61 Mб
Скачать

не описывают всех возможных дефектов. Особенно это касается современной МОП-технологии. Поэтому разработаны другие модели неисправности (в частности, типа транзистор «постоянно открыт или закрыт»), которые более адекватно отражают физические дефекты этой технологии. В табл.4.2 представлены наиболее распространенные типовые

модели неисправности.

Таблица 4.2

Модели неисправностей

Описание

 

 

 

-1-

 

-2-

 

 

 

Одиночные

константные

Одна линия схемы принимает постоянное

неисправности

(stack-at

значение 0 или 1

faults s-a-0, s-a-1)

 

 

 

 

Кратные

константные

Две или более линий схемы имеют

неисправности

(multiple

постоянные значения сигналов

stack-at faults)

 

 

 

 

Мостиковые неисправности

Две или более линии схемы, значения

(bridging faults)

 

сигналов на которых не зависят друг от

 

 

друга в исправной схеме, становятся

 

 

электрически связанными в неисправной

 

 

 

Неисправности

 

В КМОП логике транзистор находится

«устойчивое

замыкание

постоянно в замкнутом (проводящем)

транзистора»

("stuck-on"-

состоянии

SON , "stuck-short" faults,)

 

 

 

Неисправности транзистор

В КМОП логике транзистор находится

«устойчивый

обрыв

постоянно в разомкнутом ( не проводящем)

транзистора» ("stuck-open"-

состоянии. При этом обычно он отключен

SOP faults)

 

либо от питання, либо от земли и ведет себя

 

 

при этом как элемент памяти.

 

 

Неисправности «задержка»

Вызывается задержкой распространения

 

 

сигналов в одном или более путях схемы

 

 

 

121

-1-

 

 

-2-

 

 

 

 

 

 

Перемежающиеся

Вызываются

ухудшением

внутренних

неисправности

параметров схемы. Неправильные сигналы

 

возникают при некоторых, но не всех

 

состояниях схемы. Ухудшение параметров

 

прогрессирует до тех пор, пока не проявится

 

как постоянная неисправность

 

 

 

 

 

 

 

 

Неустойчивые

Неправильные

 

значения

 

сигналов

неисправности

вызываются «наводками». Наводка может

 

быть емкостной через шину питания или

 

индуктивной

 

 

 

 

 

 

 

Дефектно ориентированные

Неисправности электрического или

 

неисправности (defect

логического уровня, которые вызываются

oriented faults)

дефектами на физическом уровне

 

 

 

Функциональные

Используются в том случае, когда цифровые

неисправности

системы описываются на функциональном

 

уровне с помощью языков описания

 

аппаратуры

и

представляются

также

 

языковыми средствами. Полнота тестов

 

также оценивается на функциональном

 

уровне (покрытие путей, ветвлений и т.п. см.

 

раздел 4.11)

 

 

 

 

 

 

Неисправности уровня ЯРП

Соответствуют неправильному выполнению

 

языковых конструкций ЯРП

 

 

 

 

Нетестируемые

Неисправности, для которых не может быть

неисправности

построен тест. Среди них:

 

 

(untestable faults)

1)избыточные

 

неисправности,

чье

 

присутствие не изменяет поведения схемы;

 

2)неисправности,

 

вызывающие

 

неправильное поведение схемы, но тесты

 

для них не могут быть построены данными

 

методами. К ним относятся, например,

 

неисправности,

препятствующие

 

инициализации последовательностных схем

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

122

4.4 Константные неисправности

Для определения этого вида неисправностей используем структурную модель в виде логической схемы. Полагаем, что одиночная константная неисправность (single stack-at fault) действует только на соединение между вентилями (при этом логические элементы функционируют правильно). Каждая линия схемы может иметь два типа этих неисправностей: константа 0 и константа 1 (s-a-0, s-a-1). Итак,

константная неисправность фиксирует на данной линии постоянное значение сигнала 0 или 1 (s-a-0, s-a-1), независимо от значения подаваемого на нее сигнала. Часто такие неисправности моделируют замыкания линии схемы на землю (s-a-0) или источник питания (s-a-1).

Примеры физических дефектов, представляемых этой моделью, показаны на рис.4.4. На рис.4.4 а) показано замыкание входа биполярного транзистора вентиля XOR на землю. Это физический дефект моделируется неисправностью s-a-0. Аналогично на рис 4.4 б) показан пробой оксида вентиля, реализованного по КМОП технологии, который также моделируется неисправностью s-a-0.

 

 

 

Z

 

 

R1

 

B

 

 

 

 

 

 

 

 

A

Z

 

 

 

 

A

R1

 

 

 

 

 

 

 

 

A 0

 

A

Z

 

=1

 

 

R2

 

0 Z

 

 

0

 

 

 

 

B

 

 

 

 

а)

 

б)

 

Рис.4.4 Примеры физических дефектов, представляемых константными

неисправностями

123

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

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

Рассмотрим для примера тест для 3-входового вентиля И (рис.4.2),

проверяющий одиночные константные неисправности.

Таблица 4.3

a b c

d

Проверяемые

неисправности

 

 

 

 

 

1 1 1

1

a0, b0, c0, d0,

0 1 1

0

a1, d1

1 0 1

0

b1, d1

1 1 0

0

c1, d1

 

 

 

Очевидно, что тест, представленный табл.4.3, проверяет все одиночные константные неисправности входов и выхода этого вентиля,

поскольку для каждой неисправности в тесте есть входной набор, на котором исправный и неисправный вентиль дают различные выходные реакции. При этом первый входной набор проверяет константные неисправности a 0, b 0 , c 0, d 0. Второй набор проверяет неисправность a 1, третий b 1, четвертый c 1.

Физический дефект может моделироваться и кратной константной неисправностью, при которой несколько линий принимают постоянное значение 0 или 1 одновременно. Отметим, что число кратных константных

124

неисправностей растет экспоненциально с числом неисправных линий m,

составляющих данную неисправность. Для схемы с N линиями имеется 2N

одиночных константных неисправностей и 3N всевозможных кратных константных неисправностей (включая и одиночные), поскольку каждая линия может быть исправной, либо иметь неисправности s-a-0, s-a-1 (3

возможных события). Очевидно, что для подмножества из m

фиксированных линий имеется 2m кратных константных неисправностей.

Число

таких подмножеств определяется

C(N,m) =

N!

 

.

Поэтому

m!(N m)!

 

 

 

 

 

число

константных неисправностей с

кратностью

не более

k равно

k

C(N,i)2i .

i=1

4.5 Сокращение списков неисправностей

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

Рассмотрим для простоты комбинационную схему с одним выходом,

которая реализует в исправном состоянии булеву функцию f0 (X ) , а с некоторой i-ой неисправностью fi (X ) . Очевидно, на тестовом проверяющем наборе X=t необходимо f0 (t) fi (t) =1.

Определение 4.4. Две неисправности f1 и f2 назовем эквивалентными, если любой тестовый набор, проверяющий одну неисправность, проверяет также и другую. Таким образом, их тестовые множества T1 и T2 идентичны: T1 T2 ,T2 T1.

125

f1(A) f2 (A) = 0

s-a0

s-a1

 

s-a0 s-a1

 

s-a0

s-a1

 

&

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

s-a0

s-a1

 

 

 

s-a0

s-a1

 

s-a0

s-a1

 

 

s-a0 s-a1

 

s-a0

s-a1

 

&

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

s-a0

s-a1

 

 

 

 

s-a0

s-a1

 

 

s-a0 s-a1

s-a0

s-a0

 

 

 

 

 

 

s-a1

s-a1

 

 

 

 

 

 

s-a0 s-a1

s-a0

s-a1

 

 

 

s-a0

s-a1

 

 

 

 

s-a0 s-a1

s-a0

s-a1

s-a1

s-a0

Рис.4.5 Эквивалентность и доминирование неисправностей вентилей

Для таких неисправностей очевидно для

произвольного набора A. Рассмотрим множество одиночных константных неисправностей вентиля И, представленного на рис.4.2. Очевидно,

константные неисправности s-a-0 входов вентиля a, b, c эквивалентны неисправности s-a-0 его выхода d. Поэтому для последующей обработки можно оставить только одного представителя класса эквивалентных неисправностей, например, s-a-0 входа a. Аналогично константные неисправности s-a-1 входов вентиля ИЛИ эквиваленты неисправности s-a-1

его выхода. Для инвертора неисправность s-a-0 (s-a-1) входа эквивалентна неисправности его выхода s-a-1 (s-a-0) (Рис.4.5).

Определение 4.5. Неисправность f1 доминирует над неисправностью f2, если тестовое множество последней T2 является подмножеством тестового множества T1 неисправности f1, т.е. T2 T1.

Таким образом, любой тестовый набор, проверяющий f2, проверяет также и неисправность f1 (будем обозначать это отношение f2 f1).

126

Поэтому для дальнейшей обработки достаточно в список неисправностей включить f2.

Возвращаясь назад к примеру вентиля рис.4.2, находим, что тест для неисправности s-a-1 любого входа элемента И проверяет неисправность s- a-1 его выхода. Здесь неисправность d 1 выхода вентиля доминирует над неисправностью s-a-1 любого его входа и поэтому может быть удалена из списка неисправностей этого вентиля. Для определенности оставим в списке неисправность входа a 0. Таким образом, из восьми возможных одиночных константных неисправностей этого вентиля в списке неисправностей следует оставить только четыре: a 1, b 1, c 1, a 0.

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

отсутствуют.

В общем виде, локальное сокращение списка неисправностей для вентиля выполняется согласно следующим правилам[49]:

1)Для вентиля с n входами из всех 2(n+1) возможных неисправностей необходимо рассматривать n+1 одиночных константных неисправностей.

2)При этом удаляются обе неисправности s-a-0, s-a-1 выхода любого вентиля и оставляются одиночные константные неисправности типа s-a-0 (s-a-1) для каждого входа вентиля ИЛИ, НЕ-ИЛИ (И, НЕ-И) и одна неисправность любого входа противоположного типа s-a-1 для ИЛИ, НЕ-

ИЛИ (s-a-0 для И, НЕ-И).

3) Одиночные константные неисправности выхода вентиля НЕ и

неинвертирующего буфера удаляются, а входа оставляются.

127

4) Для узла разветвления сокращение неисправностей не производится,

так как между ними нет отношения эквивалентности и доминирования.

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

Рассмотрим в качестве примера комбинационную схему, не содержащую разветвлений, которая представлена на рис.4.6.

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

1.{A 0, B 0, H 0};

2.{C 1, D 1, F 1, G 0};

3.{E 0, G 0, V 0};

4.{H 1,V 1, Z 1};

5.{F 0, G 1} .

 

 

 

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

H

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

Z

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

G

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

V

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис.4.6.Пример схемы для сокращения списка неисправностей

Поскольку отношения эквивалентности транзитивны и учитывая то,

что классы 2, 3 содержат одну и туже неисправность G 0, они могут быть объединены в один класс.

128

Кроме отношений эквивалентности между неисправностями имеют

место следующие отношения доминирования.

6.A 1 H 1; поэтому неисправность A 1 может представлять в списке H 1 и все эквивалентные ей неисправности класса 4.

7.C 0 F 0; поэтому неисправность C 0 может представлять в списке F 0 и все эквивалентные ей неисправности класса 5.

8.V 0 Z 0; но неисправность V 0 принадлежит классу 3,

который объединен с классом 2. Поэтому любая неисправность из этого класса также доминирует над Z 0;

9.B 1 H 1;

10.D 0 F 0;

11.E 1 V 1.

Используя эти отношения эквивалентности и доминирования, мы можем сократить список неисправностей до семи: {A 0, A 1, B 1, C 0,

C 1, D 0, E 1}. Здесь: A 0 представляет класс 1; C 1 – объединенные классы 2 и 3; A 1 и C 0 представляют классы соответственно классы 4 и 5 вследствие отношений доминирования 6 и 7; неисправности B 1, D 0,

E 1 представляют классы 9, 10, 11 соответственно. Отметим, что этот сокращенный список не единственен, так как неисправности A 0, C 1

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

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

129

Определение 4.6. Внешние входы и ветви разветвлений называются контрольными точками (checkpoints) комбинационных схем.

Известна следующая теорема контрольных точек [44,49].

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

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

d

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис.4.7 Пример схемы с разветвлениями для сокращения списка неисправностей

Эта теорема позволяет сразу существенно сократить исходное множество рассматриваемых неисправностей. Отметим, что множество одиночных константных неисправностей для контрольных точек также может быть сокращено путем анализа отношений эквивалентности и доминирования. Рассмотрим применение теоремы о контрольных точках на примере схемы рис.4.7. Эта схема содержит 7 контрольных точек: 5

внешних входа a, b, c, d, e и 2 ветви разветвления g, h. Поэтому исходное множество неисправностей содержит 14 одиночных неисправностей - s-a-0, s-a-1 для каждой контрольной точки (из всевозможных 24-х). Дальнейший анализ позволяет это множество еще сократить. Так как неисправности a 0 и b 0 эквивалентны, то последнюю можно удалить. Аналогично можно удалить неисправность d 0, которая

130