Методы структурного проектирования и самотестирования.
Различают следующие виды структурного проектирования тестопригодных схем:
Сканирование.
Сканирование пути (scan path);
Сканирование с произвольным доступом (random access scanning);
Проектирование, чувствительное к уровню сканирования (level sensitive scan design).
II. Самотестирование методом сигнатурного анализа.
Сначала вкратце охарактеризуем самотестирование. Эта методика предполагает наличие встроенного поблочного диагностирования логических схем. Сигнатурный анализ (СА) - это метод самотестирования, основанный на использовании встроенного генератора тестовых наборов. Встроенные средства контроля - это коды обнаружения и исправления ошибки: проверки на четность, коды Хэмминга и т.п.
Наиболее распространенным методом структурного проектирования является сканирование, причем сканируемый путь – самый простой и наглядный. Главное условие применение такого метода – обязательное распределение схемы на комбинационную часть и элементы памяти, которые управляются синхросигналами (см. левый рисунок ниже).
СКАНИРУЕМЫЙ ПУТЬ
y
Пвых
y Пвых
о о х
У1
о У1
х
о о
х У2 о х У2
х х
0
х Уn-1 о о х Уn-1
0
0 0
х Уn 0 х Уn
Пвх Пвх
М21
управление
сканированием
системный тактовый
импульс вход сканируемых
данных
системный тактовый импульс
Примечание: соединения в схемах только в местах со значком (х), М21 - обозначение схемы мультиплексора «2 в 1»
Для обеспечения алгоритма сканируемого пути нужно обеспечить:
- отдельную проверку элементов памяти (ЭП),
- возможность установить внутренние переменные независимо от предыдущего состояния,
- выходные состояния комбинационной части схемы нужно непосредственно наблюдать, то есть установить определенные состояния на выходах ЭП.
Перечисленные условия можно реализовать, если преобразовать структурную схему, как показано на предыдущем рисунке слева. Последовательностная часть тестируемой схемы преобразуется в сдвиговый регистр при помощи поставленных схем мультиплексоров 21. Теперь можно осуществлять следующую последовательность тестирования:
Установить режим сканирования. Элементы памяти (ЭП) преобразуются в сдвиговый регистр. Проверить ЭП, использовать тесты
“бегущий «0»” или “бегущую «1»” от входа к выходу сканируемых данных
через ЭП,
тест проверки сдвигового регистра, проверка всех комбинаций переходов при подаче последовательности 00110011.
Определить множество тестов проверки комбинационной части схемы
при полном управлении всеми входами,
непосредственно наблюдая состояния всех выходов,
далее по процедуре расчета (оценки) тестопригодности.
Во избежание логических состязаний из-за различных времен задержки в активизированных путях рекомендуется использовать в качестве ЭП двухступенчатые M-S – триггеры.
Сканирование с произвольным доступом применяется в схемах со структурой ЗУПВ, так как нужны схемы дешифраторов для обеспечения произвольной выборки, а любой ЭП – это адресуемый триггер-защелка с раздельными входами «сброса» и «установки».
Сканирование, чувствительное к уровню сканирования – это развитие предыдущего типа сканирования с организацией ЭП накопителя в сдвиговые регистры на триггерах-защелках.
Недостатки методов сканирования:
Увеличение аппаратных затрат, введение дополнительных входов, выходов,
соединений.
Увеличение времени тестового диагностирования.
Невозможность тестирования на предельных рабочих частотах схемы.
Ограничение возможностей проектировщиков использованием определенных логических схем (правда, соединения выполняются творчески).
Достоинства методов сканирования:
Проверка достоверности работы и временной анализ схемы. Возможна автоматизация тестирования.
Генерация тестов нужна только для комбинационной части схемы.
Облегчается доступ к внутренним узлам схемы, улучшается поиск неисправностей.
Простота генерации тестов.
При сравнении нескольких вариантов проекта какого-либо устройства критерием, определяющим выбор варианта, служит стоимость тестирования.
Интересно и перспективно использовать методы структурного проектирования, сочетающие элементы сигнатурного анализа (СА) и методики сканирования. Такой подход называется поблочное диагностирование логических схем (BILBO = built - in logic block observation)
При проектировании схем с высокой тестопригодностью также полезно учесть некоторые советы, сформулированные в результате работы разработчиков ИС. Отметим, что эти советы полезны при проектировании не только полузаказных и не только интегральных схем.
ПРАКТИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ПРОЕКТИРОВАНИЮ
ТЕСТОПРИГОДНЫХ СХЕМ
Стремиться к максимальным значениям управляемости и наблюдаемости в схеме. Улучшать доступ к внутренним точкам схемы. Использовать мультиплексоры и демультиплексоры совместно со сдвиговыми регистрами.
Исключать логическую избыточность. Узел схемы логически избыточен, если все значения на выходе схемы не зависят от логического состояния узла на всех входных переборах и последовательности состояний. Логические состязания могут быть на основе необнаруженных неисправностей.
Физически разделять аналоговые и цифровые схемы: крутые фронты в ЦИС дают наводки в АИС.
Разбивать большие схемы на подсхемы для уменьшения затрат на генерацию тестов.
Имеем n микросхем. Затраты на 1) генерацию тестов пропорциональны n2, 2) затраты на моделирование неисправностей n3, для n = 100 без разбиения на блоки и с разбиением на блоки получим:
1) 1002 = 104, 1003 = 106,
2)
502+502
= 5103,
503+503
= 25104,
экономия в 2 раза , в 4 раза.
Избегать пользоваться асинхронными логическими схемами. Асинхронные схемы обладают высоким быстродействием, т.к. оно определяется только их собственными задержками, но они труднее диагностируются.
Обеспечивать простоту начальной установки элементов памяти.
Обеспечить возможность разрыва цепей обратных связей. Особенно удачно будет, если удастся включать в ОС сигнал тестирования или его запрета:
Ucc
Сигнал теста Ucc сигнал запрета
Избегать использовать одновибраторы, поскольку невозможно непосредственное наблюдение сигнала с выхода. Заодно возникает проблема быстодействия тестера.
Подключать нагрузку ко всем неиспользуемым входам и к выходам устройств с тремя состояниями и с открытыми коллекторами.
Избегать использования диагностически неразличимых групп элементов (проводное И, проводное ИЛИ) и узлов с большим числом ветвлений.
Разрывать длинные цепи на счетчиках.
