Метод синтеза генераторов детерминированных тестов на сетях клеточных автоматов (СКА)

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

Toffoli) и его соавторами [1]. Конечно, они очень существенно уступают аппаратным реализациям, однако вычислительные возможности персональных компьютеров постоянно растут и они несравнимо распространённее и доступнее, чем специализированные устройства.

3. Анализ подходов встроенного самотестирования однородных Сетей

 

Существует два основных подхода встроенного самотестирования, которые применяются к цифровым схемам:

  • детерминированный подход;
  • псевдослучайный подход.

 

3.1 Детерминированное тестирование

 

Согласно детерминированному подходу, в схеме находится генератор определенных тестовых последовательностей и гарантируется определенное покрытие неисправностей, основанное на принятой модели неисправности.

 

3.1.1 Основные определения и понятия

Для правильного и подробного описания этого подхода необходимо ввести основные определения и понятия.

В качестве абстрактной модели дискретного устройства (ДУ) с памятью будем использовать автомат Мили, определяемый пятеркой

 

А = (X, Y, Z, d, l), (3.1)

 

где X = { X1, X2,…., Xm } - множество букв входного алфавита;

Z = { Z1, Z2,…, Zn } - множество состояний автомата;

Y = { Y1, Y2, …Yr } - множество букв выходного алфавита;

d (Zi, Xk) = Zj; Zi, ZjZ; XkX; i, j = ; k = - множество функций переходов автомата;

l (Zi, Xk) = ya; yaY, a = - множество функций выхода автомата.

В дальнейшем изложении будут использоваться следующие обозначения и понятия:

Xj = X1 X2 … Xk - входное слово или входная последовательность из К букв;

l (Xj) = k - длина последовательности;

Yj = Y1 Y2 … Yk - выходное слово или выходная последовательность длины l (Yj) = k.

Любое конечное множество состояний автомата будем называть s-множеством. Элементы, образующие s-множество, не обязательно различны. s-множество, содержащее единственный элемент, называется простым, а содержащее несколько одинаковых элементов - кратным. s-множество, однородно, если все элементы одинаковы.

l (Zi, Xj) - выходная последовательность автомата, первоначально находящегося в состоянии Zi и проявляющаяся в результате приложения входной последовательности Xj.

Многие задачи теории автоматов (кодирование состояний, декомпозиция автоматов, минимизация числа состояний и другие) успешно решаются путем анализа разбиений состояний автомата. Термин "разбиение" имеет в математике ряд значений [10]. Вообще, под разбиением принято понимать всякое расчленение целого на части.

Определение 3.1 Пусть В подмножество Z. Разбиением pi множества Z называют совокупность таких подмножеств Bi, что их по парные пересечения - пустые множества, а объединение всех подмножеств Bi равно Z.

Подмножество Bi называют блоком разбиения pi множества Z.

Пример 3.1 Пусть Z={A, B, C, D, E, F}. Тогда

 

pa = {},

pb={ },

 

где p - разбиения множества Z.

Говорят, что для пары разбиений pa, pb, определенных на множестве Z, разбиение pa больше или равно разбиению pb (pa pb, pb pa), если каждый блок разбиения pb содержится в блоке pa. Например, разбиение pa и pb из примера 3.1 можно упорядочить в виде pa pb.

Разбиение, в котором каждый блок включает один элемент множества Z, является p (0) - разбиением, а разбиение, содержащее в одном блоке все элементы Z, является p (1) - разбиением.

Определение 3.2 Если p1 и p2 - разбиения множества Z, то произведением разбиений (p1 p2) является разбиение, полученное в результате пересечения каждого блока из p1 с каждым блоком из p2.

Например, произведение pa pb пары разбиений множества из примера 3.1 равно

 

pa pb = {}.

 

Определение 3.3 Если p1 и p2 - разбиения множества Z, то суммой разбиений (p1 + p2) является разбиение, полученное в результате объединения тех блоков p1 и p2, которые имеют, по меньшей мере, один общий элемент.

Например, сумма пары разбиений множества Z из примера 3.1 равна

 

p1 + p2= { }.

 

Если известна автоматная модель ДУ с элементами памяти, то задача построения проверяющего эксперимента сводится к нахождению входных и выходных последовательностей, которые позволяют однозначно идентифицировать автоматную диаграмму ДУ [11]. Большинство известных методов решения этой задачи основано на работе Хенни [12]. Предложенный им подход дает хорошие результаты для автоматов, которые имеют отличительные последовательности. Поэтому этот класс автоматов многие исследователи называют легко тестируемым [13]. Известна процедура нахождения отличительной последовательности автомата по его автоматной диаграмме предусматривающая построение дерева преемников автомата и применение определенных правил усечения вершин этого дерева. Процедура завершается, когда, либо найдена отличительная последовательность для заданного автомата, либо в результате построе