Добрый день можно поинтересоваться где брать литературу предложенную в курсе ?Большинство книг я не могу найти в известных источниках |
Построение тестов с использованием алфавитов большой значности
20.1. Построение тестов в 9,10-значном алфавите
Кроме шестизначного алфавита , при генерации тестов применяются алфавиты большей значности, которые позволяют более точно описывать возможные комбинации значений сигналов в исправном и неисправном устройстве и, следовательно, эффективней проводить активизацию путей в схеме [20.1]. Среди них широкое распространение получил десятизначный алфавит
, который кроме символов, имеющихся в алфавите
, включает следующие символы алфавита
-
,
,
,
[20.2,20.3]. Таким образом,
[20.2,20.3]. Иногда его дополняют еще символом
. Каждый из добавленных в
символов соответствует двум возможным комбинациям базового алфавита
.
Символ
показывает, что в исправной схеме значение сигнала на данной линии равно 0, а в неисправной - 0 или 1. Аналогично
означает - 1 в исправной схеме, а в неисправной - 0 или 1. Символ
показывает, что в неисправном ДУ значение сигнала равно 0, а в исправном - 0 или 1. Аналогично
соответствует - 1 в неисправном ДУ и 0 или 1 в исправном.
Введение дополнительных символов позволяет в некоторых случаях уменьшить неопределенность в процессе построения теста по сравнению с алфавитом
. Повышение мощности алфавита может уменьшить перебор вариантов при поиске решения. Например, возможны ситуации, когда построение теста в алфавите
идет с перебором, а в алфавитах
(и большей значности) тест строится без перебора. Если существует
путей от места неисправности до внешнего выхода, то
-алгоритм в худшем случае, например для избыточной неисправности пытается активизировать
многомерных путей. С другой стороны, алфавит
позволяет строить тесты с помощью только одномерной активизации в худшем случае
путей.
Рассмотрим схему, изображенную на рис. 20.1. Если значение линии равно
, то значение линии
будет равно либо
, либо 0, в зависимости от того, какое значение будет на линии
- 0 или 1. Очевидно, что это соответствует установлению на линии
значения
. Аналогично, при
значение линии
будет равно либо
, либо 1 в зависимости от того, какое значение будет на линии
.
То есть линии
нужно присвоить значение
. Заметим, что здесь на линиях
и
неопределенность уменьшилась с четырех возможных комбинаций до двух (это невозможно сделать в алфавите
).
На линии
в зависимости от значения
будет 0, 1 или
. Поскольку в алфавите
нет символа для этой ситуации, то линии
присваивается неопределенное значение
. При этом происходит огрубление вследствие недостаточной мощности алфавита
(в алфавите
результат был бы точнее). Символ
может возникнуть, например, на выходе вентиля "исключающее ИЛИ", если один из его входов примет значение
.
Распространение значений ,
,
,
,
назовем обобщенным D-распространением, а процедуру, с помощью которой это выполняется - обобщенным D-проходом. Эта процедура выполняется для вентилей с помощью многозначных таблиц, которые представлены в
табл. 20.1-табл. 20.4.
Отметим, что эти таблицы могут быть получены с помощью универсальной модели, описанной в
"Система многозначных алфавитов и функций"
, функций
[20.3] (если получается код символа, не принадлежащего алфавиту
, то он заменяется символом неопределенности
). Линии, имеющие значения
,
,
,
,
,
образуют обобщенную D-границу.
Рассмотрим построение теста для неисправности в схеме рис. 20.1. Линии
присваиваем значение
. Продвижение назад дает
. Выполнив обобщенное
-распространение, получим
.
Для
-распространения выбираем
(путем выбора из
и
снимаем неопределенность до символа
). Импликация приводит к установке
,
.
Далее в результате обобщенного
-распространения получаем
. Для
-распространения полагаем
(опять снимаем неопределенность путем выбора нужной комбинации
из двух возможных).
Продвижение назад, определяет
. Таким образом, тестом является набор
.