- •Міністерство освіти і науки укпаїни донецька академія автомобільного транспорту
- •Методичні вказівки
- •Общие положения
- •Лабораторная работа №1. Построение тестов цифровых устройств методом существенного пути
- •Теоретические положения Неисправности и тесты
- •Понятие о существенном пути в системе цифрового устройства:
- •Метод существенного пути.
- •Задание
- •Лабораторная работа №2. Построение тестов цифровых устройств методом различающей функции
- •Теоретические положения Метод различающей функции.
- •Алгебра Жегалкина.
- •Задание
- •Лабораторная работа №3 Построение тестов цифровых устройств методом булевых производных
- •Теоретические положения Понятие и свойства булевой производной
- •Построения теста методом бп
- •Обобщенный алгоритм построения тестов в алфавите т6:
- •Задание
- •Лабораторная работа №5 Применение итеративных комбинационных схем для диагностирования устройств с памятью
- •Теоретические положения. Существующие подходы к тестированию устройств с памятью
- •Структурный подход
- •Итеративные комбинационные схемы
- •Пример построения теста для асинхронного rs-триггера
- •Задание
- •Список рекомендуемой литературы
Построения теста методом бп
Для построения
теста для константной неисправности
необходимо решить булево уравнение
(определить значения логических
переменных)
,
а для неисправности
— уравнение
.
Данное обстоятельство
можно распространить и на внутренние
переменные. Тест для неисправностей
(
)
внутренней линии схемы определяют
значения логических переменных, при
которых
(
)
Таким образом, входное воздействие для проверки неисправности в точке z определяется следующим образом.
Составляем функцию f(x), в которой в качестве переменной присутствует z.
Определяем частную булеву производную df(x)/dz, приводим полученное выражение к дизъюнктивной форме (ДФ).
Выбираем один из термов (например, t), полученной ДФ (см. п. 2).
Неисправность z = 0 проверяется на воздействии, при котором значения переменных x1,..., xn обеспечивают условие z × t = 1.
Неисправность z = 1 проверяется на воздействии, при котором значения переменных x1,..., xn обеспечивают условие
×
t = 1.
Задание.
Методом булевых производных найти проверяющие тесты для заданной логической схемы с неисправностями (см. задание к лабораторной работе №1).
В отчете представить аналитические расчеты, полученные тестовые наборы и выводы об их соответствии результатам, полученным в лабораторных работах №1 и №2.
Лабораторная работа №4 Структурное построение тестов цифровых устройств
Цель: изучить основные принципы структурного построения тестов ЦУ, освоить применение D-алгоритма для построения тестов, обнаруживающих константные неисправности ЦУ.
Теоретические положения
Многозначные алфавиты в генерации тестов.
Булевы функции в двузначном алфавите В2={0,1} широко используются для моделирования исправных комбинационных схем, но для описания работы схемы с неисправностью удобно использовать алфавиты большей значности. В этом случае анализ двух схем (исправной и неисправной) в двоичном алфавите заменяется анализом одной схемы в многозначном алфавите. При поданном некотором тестовом наборе для каждой линии в исправной и неисправной схеме возможны четыре комбинации значений сигналов:
00 – 0 в исправной схеме, и 0 в неисправной (символ 0 алфавита В16);
11 – 1 в исправной схеме и 1 в неисправной (символ 1 алфавита В16);
10 – 1 в исправной схеме и 0 в неисправной (символ D алфавита В16);
01 – 0 в исправной схеме и 1 в неисправной (символ D’ алфавита В16);
Здесь символы D и D’ представляют рассогласование сигналов в исправной и неисправной схемах и фактически показывают влияние данной неисправности в схеме. Символы 0,1 представляют одинаковые значения сигналов в исправной и неисправной схемах. Используется также символ u (unknown), который соответствует неопределенным значения в исправной и неисправной схемах, и символ (пустое множество), который обозначает ситуации несовместимости условий транспортировки и проявления в схеме. Указанные символы образуют алфавит Т6={, 0, 1, D, D’, u}.
Во всех структурных методах, использующих многозначные алфавиты, выполняются следующие основные этапы, которые обобщают соответствующие этапы метода одномерной активизации путей.
Активизация (sensitization) данной неисправности. При этом вносится влияние данной неисправности на соответствующей линии путем присваивания ей значения D (для неисправности const0) или D’ (для неисправности const1).
D-распространение (D-propagation), при котором значения D или D’ распространяются до одного из внешних выходов схемы. Эта процедура обеспечивает наблюдение влияния неисправности на внешних выходах.
Доопределение (justification), при котором определяются значения внешних входов схемы, обеспечивающих значения, получаемые на этапах (1) и (2).
Импликация, которая используется для снятия неопределённости на линиях схемы, которые возможны в результате присваивания некоторым линиям определённых значений.
При выполнении D-распространения в случае разветвления есть выбор возможных путей от места неисправностей к внешним выходам. Множество элементов, для которых возможно D-распространение называются D-границей (элементы имеют значения D или D’ на входе и неопределенность u на выходе).
Аналогично при выполнении этапа доопределения (justification) также возможен выбор различных вариантов продвижения к внешним входам. Множество элементов, у которых выходное значение определено (имеют значения 0 или 1), но не подтверждается входными значениями (входы имеют неопределенные значения u) называется J-границей.
Т
ак
как при генерации тестов мы используем
не двоичные, а многозначные алфавиты,
функционирование логических элементов
также должно быть описано в многозначном
алфавите. В табл. 4.1 – 4.4 представлены
модели основных вентилей в алфавите
T6.
Процедура импликации используется для максимально возможного снятия неопределенности на линиях схемы, которое возможно вследствие присваивания некоторым линиям определенных значений (как на этапе D-распространения, так и на этапе доопределения).
Различают прямую и обратную импликацию. При прямой импликации снимается неопределенность на линиях элементов-последователей данной линии. Обратная импликация снимает неопределенность у линий, являющихся предшественниками данной линии.
Прямая импликация фактически сводится к логическому моделированию в алфавите T6 фрагмента схемы, последователей линии с изменившимся сигналом. Это может быть выполнено, например, с помощью табличных многозначных моделей, приведенных в табл. 4.1 – 4.4. Типовые ситуации, где может быть выполнена обратная импликация, представлены на рис. 4.1.
Рис. 4.1 Обратная импликация
D – алгоритм.
Среди структурных методов генерации тестов, использующих многозначные алфавиты, первым был разработан D-алгоритм, который позволяет выполнять многомерную активизацию путей и гарантирует построение проверяющего теста для неизбыточной неисправности в комбинационной схеме.
Основным рабочим инструментом в D-алгоритме является техника кубов. Модели логических элементов представляются также с помощью кубов. Например, в табл. 4.5 представлены 0-кубы для вентиля 2И. Легко видеть, что данная таблица в сжатой форме содержит все условия, при которых на выходе вентиля 2И возможно значение 0. Можно показать, что множество сжатых кубов, используемое в D-алгоритме, определяется соответствующей функцией f0. Так, например, каждый терм функции f0 вентиля соответствует строке табл. 4.5. Аналогично функция f1 соответствует табл. 4.6, которая содержит 1-кубы и определяет условия, при которых на выходе вентиля 2И возможна 1.
Распространение символов D’ и D через логические элементы осуществляется с помощью D’- и D-кубов, которые определяются многозначными функциями fD' и fD соответственно. Так, табл. 4.7, содержащая D-кубы вентиля 2И, получена из функции fD вентиля 2И. Аналогично, функция fD' определяет D’-кубы (табл. 4.8).
Простым кубом неисправности h≡0(1) на выходе вентиля называется D(D’)-куб (D для неисправности h≡0, D’ для неисправности h≡1), в котором выходу вентиля присваивается D(D’), а значения входам присваиваются таким образом, чтобы на выходе исправного вентиля было значение, инверсное h. Например, комбинация 11D является простым D-кубом для неисправности h≡0 на входе вентиля 2И (рис. 4.2, а). Очевидно, что простой D-куб служит средством активизации неисправности на соответствующей линии схемы (он вносит влияние неисправности в месте ее возникновения).
Тестовый куб описывает текущее состояние сигналов на всех линиях схемы в процессе функционирования алгоритма в многозначном алфавите. Компоненты тестового куба подвергаются изменению при выполнении фазы продвижения вперед и фазы продвижения назад в D-алгоритме.
Таким образом, построение тестового куба — определение значения входов схемы, при которых на ее выходе имеет место рассогласование D/D’. То есть необходимо обеспечить значения D/D’ в месте неисправности и транспортировать его на выход.
