- •Міністерство освіти і науки укпаїни донецька академія автомобільного транспорту
- •Методичні вказівки
- •Общие положения
- •Лабораторная работа №1. Построение тестов цифровых устройств методом существенного пути
- •Теоретические положения Неисправности и тесты
- •Понятие о существенном пути в системе цифрового устройства:
- •Метод существенного пути.
- •Задание
- •Лабораторная работа №2. Построение тестов цифровых устройств методом различающей функции
- •Теоретические положения Метод различающей функции.
- •Алгебра Жегалкина.
- •Задание
- •Лабораторная работа №3 Построение тестов цифровых устройств методом булевых производных
- •Теоретические положения Понятие и свойства булевой производной
- •Построения теста методом бп
- •Обобщенный алгоритм построения тестов в алфавите т6:
- •Задание
- •Лабораторная работа №5 Применение итеративных комбинационных схем для диагностирования устройств с памятью
- •Теоретические положения. Существующие подходы к тестированию устройств с памятью
- •Структурный подход
- •Итеративные комбинационные схемы
- •Пример построения теста для асинхронного rs-триггера
- •Задание
- •Список рекомендуемой литературы
Обобщенный алгоритм построения тестов в алфавите т6:
В начале всем линиям схемы даются значения u.
Для заданной неисправности выбирается D/D’-куб неисправности на неисправном элементе.
Выбранный D/D’-куб неисправности проверяется на совместимость с текущим тестовым кубом.
Текущий тестовый куб модифицируется с учетом значений в координатах выбранного D/D’-куба неисправности. При этом некоторые координаты тестового куба приобретают определенные значения.
Фаза продвижения вперед (D-проход): значение D/D’ транспортируется к координате тестового куба, описывающей выход. В данном случае используются D/D’-кубы вентилей, расположенные на пути к выходу, входные координаты которых в тестовом кубе имеют значения D/D’, а выходная координата равна u.
Фаза продвижения назад: при помощи 0/1-кубов устраняются неопределенности в тестовом кубе.
Тест считается найденным, если все координаты тестового куба получают определенные значения.
Операция, обеспечивающая модификацию тестового куба, называется пересечением. Пусть имеется два вектора: А={а1, а2, …, аn} и B={b1, b2, …, bn}. Тогда операция пересечения С = А В, выполняемая поразрядно (ci = ai bi), определяется следующим образом:
В таблице 4.9 показана модель данной операции в алфавите Т6. Из этого определения следует, что она по существу является операцией снятия неопределенности, описываемой u.
Таблица 4.9
0
1
D
D’
u
0
0
0
1
1
1
D
D
D
D’
D’
D’
u
0
1
D
D’
u
Моделью логической схемы в D-алгоритме является система таблиц D/D’-кубов и 0/1- кубов вентилей схемы, в которых столбцы соответствуют линиям схемы, а строки — кубам.
Реализацию D-алгоритма рассмотрим на примере задачи нахождения теста для следующего КЦУ с константной неисправностью S18 (X91), схема показана на рис. 4.3.
Для начала трансформируем данное КЦУ с систему связанных таблиц, заполняемых кубами элементов. Табл. 4.10 и 4.11 содержат соответственно D/D’-кубы и 0/1- кубы для схемы КЦУ на рис. 4.3. В этих таблицах пустые ячейки соответствуют неопределенным значениям координат (u).
Таблица 4.10 D/D’-кубы заданного КЦУ
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
|
G1 |
t1 |
D |
|
|
|
1 |
|
|
|
D |
|
|
|
|
|
|
|
t2 |
1 |
|
|
|
D |
|
|
|
D |
|
|
|
|
|
|
|
|
t3 |
D |
|
|
|
D |
|
|
|
D |
|
|
|
|
|
|
|
|
t4 |
D’ |
|
|
|
1 |
|
|
|
D’ |
|
|
|
|
|
|
|
|
t5 |
1 |
|
|
|
D’ |
|
|
|
D’ |
|
|
|
|
|
|
|
|
t6 |
D’ |
|
|
|
D’ |
|
|
|
D’ |
|
|
|
|
|
|
|
|
G2 |
t7 |
|
|
|
|
|
D |
0 |
|
|
D |
|
|
|
|
|
|
t8 |
|
|
|
|
|
0 |
D |
|
|
D |
|
|
|
|
|
|
|
t9 |
|
|
|
|
|
D |
D |
|
|
D |
|
|
|
|
|
|
|
t10 |
|
|
|
|
|
D’ |
0 |
|
|
D’ |
|
|
|
|
|
|
|
t11 |
|
|
|
|
|
0 |
D’ |
|
|
D’ |
|
|
|
|
|
|
|
t12 |
|
|
|
|
|
D’ |
D’ |
|
|
D’ |
|
|
|
|
|
|
|
G3 |
t13 |
|
|
|
D |
|
|
|
0 |
|
|
D |
|
|
|
|
|
t14 |
|
|
|
0 |
|
|
|
D |
|
|
D |
|
|
|
|
|
|
t15 |
|
|
|
D |
|
|
|
D |
|
|
D |
|
|
|
|
|
|
t16 |
|
|
|
D’ |
|
|
|
0 |
|
|
D’ |
|
|
|
|
|
|
t17 |
|
|
|
0 |
|
|
|
D’ |
|
|
D’ |
|
|
|
|
|
|
t18 |
|
|
|
D’ |
|
|
|
D’ |
|
|
D’ |
|
|
|
|
|
|
G4 |
t19 |
|
|
|
|
|
|
|
|
D |
|
|
1 |
|
D |
|
|
t20 |
|
|
|
|
|
|
|
|
1 |
|
|
D |
|
D |
|
|
|
t21 |
|
|
|
|
|
|
|
|
D |
|
|
D |
|
D |
|
|
|
t22 |
|
|
|
|
|
|
|
|
D’ |
|
|
1 |
|
D’ |
|
|
|
t23 |
|
|
|
|
|
|
|
|
1 |
|
|
D’ |
|
D’ |
|
|
|
t24 |
|
|
|
|
|
|
|
|
D’ |
|
|
D’ |
|
D’ |
|
|
|
G5 |
t25 |
|
|
|
|
|
|
|
|
|
|
D |
|
1 |
|
D |
|
t26 |
|
|
|
|
|
|
|
|
|
|
1 |
|
D |
|
D |
|
|
t27 |
|
|
|
|
|
|
|
|
|
|
D |
|
D |
|
D |
|
|
t28 |
|
|
|
|
|
|
|
|
|
|
D’ |
|
1 |
|
D’ |
|
|
t29 |
|
|
|
|
|
|
|
|
|
|
1 |
|
D’ |
|
D’ |
|
|
t30 |
|
|
|
|
|
|
|
|
|
|
D’ |
|
D’ |
|
D’ |
|
|
G6 |
t31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D |
0 |
D |
t32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
D |
D |
|
t33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D |
D |
D |
|
t34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D’ |
0 |
D’ |
|
t35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
D’ |
D’ |
|
t36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D’ |
D’ |
D’ |
|
Узел Х2 |
t37 |
|
D |
|
|
D |
D |
|
|
|
|
|
|
|
|
|
|
t38 |
|
D’ |
|
|
D’ |
D’ |
|
|
|
|
|
|
|
|
|
|
|
Узел Х3 |
t39 |
|
|
D |
|
|
|
D |
D |
|
|
|
|
|
|
|
|
t40 |
|
|
D’ |
|
|
|
D’ |
D’ |
|
|
|
|
|
|
|
|
|
Узел Х10 |
t41 |
|
|
|
|
|
|
|
|
|
D |
|
D |
D |
|
|
|
t42 |
|
|
|
|
|
|
|
|
|
D’ |
|
D’ |
D’ |
|
|
|
|
Таблица 4.11 0/1- кубы заданного КЦУ
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
|
G1 |
c1 |
0 |
|
|
|
u |
|
|
|
0 |
|
|
|
|
|
|
|
c2 |
u |
|
|
|
0 |
|
|
|
0 |
|
|
|
|
|
|
|
|
c3 |
D |
|
|
|
D’ |
|
|
|
0 |
|
|
|
|
|
|
|
|
c4 |
D’ |
|
|
|
D |
|
|
|
0 |
|
|
|
|
|
|
|
|
c5 |
1 |
|
|
|
1 |
|
|
|
1 |
|
|
|
|
|
|
|
|
G2 |
c6 |
|
|
|
|
|
0 |
0 |
|
|
0 |
|
|
|
|
|
|
c7 |
|
|
|
|
|
1 |
u |
|
|
1 |
|
|
|
|
|
|
|
c8 |
|
|
|
|
|
u |
1 |
|
|
1 |
|
|
|
|
|
|
|
c9 |
|
|
|
|
|
D |
D’ |
|
|
1 |
|
|
|
|
|
|
|
c10 |
|
|
|
|
|
D’ |
D |
|
|
1 |
|
|
|
|
|
|
|
G3 |
c11 |
|
|
|
0 |
|
|
|
0 |
|
|
0 |
|
|
|
|
|
c12 |
|
|
|
1 |
|
|
|
u |
|
|
1 |
|
|
|
|
|
|
c13 |
|
|
|
u |
|
|
|
1 |
|
|
1 |
|
|
|
|
|
|
c14 |
|
|
|
D |
|
|
|
D’ |
|
|
1 |
|
|
|
|
|
|
c15 |
|
|
|
D’ |
|
|
|
D |
|
|
1 |
|
|
|
|
|
|
G4 |
c16 |
|
|
|
|
|
|
|
|
0 |
|
|
u |
|
0 |
|
|
c17 |
|
|
|
|
|
|
|
|
u |
|
|
0 |
|
0 |
|
|
|
c18 |
|
|
|
|
|
|
|
|
D |
|
|
D’ |
|
0 |
|
|
|
c19 |
|
|
|
|
|
|
|
|
D’ |
|
|
D |
|
0 |
|
|
|
c20 |
|
|
|
|
|
|
|
|
1 |
|
|
1 |
|
1 |
|
|
|
G5 |
c21 |
|
|
|
|
|
|
|
|
|
|
0 |
|
u |
|
0 |
|
c22 |
|
|
|
|
|
|
|
|
|
|
u |
|
0 |
|
0 |
|
|
c23 |
|
|
|
|
|
|
|
|
|
|
D |
|
D’ |
|
0 |
|
|
c24 |
|
|
|
|
|
|
|
|
|
|
D’ |
|
D |
|
0 |
|
|
c25 |
|
|
|
|
|
|
|
|
|
|
1 |
|
1 |
|
1 |
|
|
G6 |
c26 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
0 |
c27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
u |
1 |
|
c28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
u |
1 |
1 |
|
c29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D |
D’ |
1 |
|
c30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D’ |
D |
1 |
|
D-алгоритм работает со следующими объектами:
система D/D’-кубов и 0/1-кубов;
текущий тестовый куб;
несколько стеков:
стек установки (инициализации) — содержит D/D’-кубы неисправности;
стек D-границы — содержит D/D’-кубы;
стек доопределения — содержит 0/1-кубы.
Для заданной неисправности X91 выбираем первый из двух имеющихся D’-кубов неисправности: 0 u D’. Оставшийся D’-куб этой неисправности заносим в стек установки.
Стек установки:
-
Линии
Эл-ты
X1
X5
X9
G1
u
0
D’
Выполняем пересечение исходного тестового куба ТК0 с выбранным кубом неисправности:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
ТК0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
КН |
0 |
|
|
|
u |
|
|
|
D’ |
|
|
|
|
|
|
|
ТК1 |
0 |
|
|
|
|
|
|
|
D’ |
|
|
|
|
|
|
|
Заносим в стек D-границы все элементы, имеющие на входах значения D/D’, а на выходах значение u.
Стек D-границы:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
|
G4 |
t22 |
|
|
|
|
|
|
|
|
D’ |
|
|
1 |
|
D’ |
|
|
t24 |
|
|
|
|
|
|
|
|
D’ |
|
|
D’ |
|
D’ |
|
|
|
Поскольку импликацию на данном этапе провести невозможно, выбираем очередной куб из стека D-границы, и пересекаем с ним текущий тестовый куб:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
ТК1 |
0 |
|
|
|
|
|
|
|
D’ |
|
|
|
|
|
|
|
t22 |
|
|
|
|
|
|
|
|
D’ |
|
|
1 |
|
D’ |
|
|
ТК2 |
0 |
|
|
|
|
|
|
|
D’ |
|
|
1 |
|
D’ |
|
|
Так как в координате появился X14 появилось значение D’, пополняем стек D-границы:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
|
G4 |
t24 |
|
|
|
|
|
|
|
|
D’ |
|
|
D’ |
|
D’ |
|
|
G6 |
t34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D’ |
0 |
D’ |
t36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D’ |
D’ |
D’ |
|
Поскольку в текущем тестовом кубе определилась координата X12=1, проводим относительно нее процедуру импликации. Здесь возможна только обратная импликация на узле (X10, X12, X13), в результате чего координаты X10 и X13 получают значения 1:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
ТК2 |
0 |
|
|
|
|
|
|
|
D’ |
1 |
|
1 |
1 |
D’ |
|
|
Так как на выходе не появилось значение D/D’, выбираем из стека из стека D-границы очередной куб, и пересекаем с ним текущий тестовый куб:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
ТК2 |
0 |
|
|
|
|
|
|
|
D’ |
1 |
|
1 |
1 |
D’ |
|
|
t34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
D’ |
0 |
D’ |
ТК3 |
0 |
|
|
|
|
|
|
|
D’ |
1 |
|
1 |
1 |
D’ |
0 |
D’ |
Поскольку в текущем тестовом кубе определилась координата X15=0, проводим относительно нее процедуру обратной импликации, в результате чего координата X11 получает значение 0. Дальнейшее проведение обратной импликации дает нули в координатах X3, X4, X7 и X8. В данной ситуации появляется возможность проведения обратной импликации от координаты X10, в результате чего получаем определенные значения координат X6=1, X2=1 и X5=1. В результате процедуры импликации все координаты тестового куба оказались определены, и на выходе появилось значение D’:
Линии Кубы |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
X11 |
X12 |
X13 |
X14 |
X15 |
X16 |
ТК3 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
D’ |
1 |
0 |
1 |
1 |
D’ |
0 |
D’ |
Таким образом, тест найден без использования фазы доопределения.
