Диагностирование дискретных устройств с памятью. Методы сканирования
Методы тестирования схем с памятью существенно сложнее аналогичных методов для комбинационных схем. Поэтому на практике часто для целей тестирования осуществляют преобразование последовательностных схем в комбинационные. Основная идея такого преобразования показана на рисунке 1. Некоторые ключи К обрывают обратные связи. Тестовые входы подключаются к внутренним переменным y 1..... y k, а тестовые выходы позволяют наблюдать значения переменных Y 1... Y k. Таким образом, все входы комбинационной схемы доступны, а все выходы наблюдаются. Рисунок 1 - Структура тестирования схем с памятью
При сканировании внутренние элементы памяти (триггеры) схемы одновременно используются для приема тестовых векторов и управления текущим состоянием схемы, а также считывают (сканируют) значения текущих внутренних переменных Y 1... Y k. Во время нормального функционирования индивидуальные триггеры сдвигового регистра работают независимо друг от друга и обеспечивают работу схемы с памятью. Во время тестирования каждый триггер становится разрядом сдвигового регистра, на который поступает тестовый вектор по входу сканирования. Последовательный тестовый вектор преобразуется в параллельный и подается на входы y 1..... y k комбинационной схемы. Затем регистр воспринимает параллельный вектор переменных Y 1... Y k (т. е. реакцию схемы на тестовый вектор) и преобразует его в последовательный вектор на выходе сканирования. По такому правилу организуется так называемая схема LSSD (Level Sensitive Scan Design), впервые использованная в фирме IBM для обеспечения тестируемости. На рисунке 2 показана схема сканирования элементов памяти с помощью сдвигового регистра RG. Он имеет тактовый вход С; вход приема последовательных данных DS; входы приема параллельных данных D 1... D k; выходы Q 1... Q k+n; управляющие входы P1, P2. Режимы работы регистра устанавливаются с помощью следующих сигналов; Р1 = Р2 = 0 – прием параллельных данных; Р1=0, Р2= 1 – выдача параллельных данных; Р1=1, Р2=0 – прием последовательных данных (сдвиг); Р1 = Р2 = 1 – сброс регистра. При нормальном режиме работы триггеры регистра играют роль элементов памяти последовательностной схемы. Периодически текущие значения внутренних переменных Y 1... Y k считываются и записываются по входам D 1... D k в триггеры регистра (Р1Р2 = 00). В следующий момент времени эти значения с выходов регистра Q 1... Q k поступают на входы комбинационной логики y 1..... y k (Р1Р2=01). Одновременно через мультиплексоры 1,..., п на входы схемы подаются новые значения входных переменных x 1..... x n. Комбинационная схема рассчитывает значения текущих переменных Y 1... Y k и т.д. В режиме тестирования сдвиговый регистр выполняет свою роль преобразования последовательных двоичных данных в параллельные и наоборот. При состоянии сигналов управления Р 1 = 1, Р 2 = 0 происходит запись последовательного тестового вектора из блока памяти тестов в регистр по входу DS. Длина тестового вектора равна k + п, так как он определяет значения входных n и внутренних k переменных. Затем тестовый вектор с выходов регистра Q 1... Q k+n подаётся на входы комбинационной схемы и происходит вычисление новых значений текущих переменных Y 1... Y k. Эти значения, которые являются ответом на тест, считываются и записываются параллельно в регистр по входам D 1... D k. В следующий период времени осуществляется сдвиг регистра на k + п тактов и выдача с выхода Q k+n последовательно двоичного слова-ответа на тестовый вектор. Это слово поступает в память ответов, где сравнивается с эталонным словом. Метод сканирования позволяет легко диагностировать последовательностные схемы как комбинационные. Однако он требует значительных затрат времени на тестирование и выключение на это время аппаратуры из нормального режима работы. Основные затраты времени связаны с тем, что тестовые слова и реакции схемы на них передаются из памяти и в память как последовательные двоичные данные. Уменьшить время тестирования можно двумя способами. Первый способ состоит в увеличении числа регистров с меньшей разрядностью, что позволяет длинное тестовое слово записывать параллельно во времени отдельными отрезками. Второй способ заключается в том, что триггеры регистра не используются как элементы памяти последовательностной схемы, а служат только для приема, хранения и передачи тестовых слов и реакций схемы. Рисунок 2 – Реализация принципов сканирования и сигнатурного анализа
На рисунке 2 показана схема диагностирования, в которой одновременно используются принципы сканирования и сигнатурного анализа (так называемая схема BILBO - Built-in Logic Block Observation). В ней применяются два управляемых сдвиговых регистра А и В. Такой регистр используется в четырех режимах в зависимости от сигналов на управляющих входах P1, P2 и S. Если Р1 = Р2 = 1, каждый триггер регистра работает независимо. Данный режим используется.при нормальном функционировании. В этом случае триггеры регистров А и В выполняют роль элементов памяти последовательностной схемы. Серии синхроимпульсов С1 и С2 не перекрываются. Поэтому пара триггеров А и В работает по алгоритму «мастер-помощник». Три других режима регистров применяются при тестировании комбинационной схемы. Если Р1 = Р2 = 0 и S = 0, то схема превращается в схему простого сдвигового регистра. При этом с помощью мультиплексора MS вход последовательных данных DS подключается к входу триггера D1, а линейная обратная связь, образованная элементами «Сложение по модулю 2» отключена. Если Р1 = Р2 = 0 и S = 1, то подключается линейная обратная связь и схема становится схемой сдвигового регистра с линейной обратной связью. Она является генератором псевдослучайных двоичных чисел (наборов), которые используются как тестовые при диагностировании комбинационной схемы. Наконец, четвертый режим получается, если Р 1 = 1, Р 2 = 0 и S =1. Данная схема сдвигового регистра с линейной обратной связью и параллельными входами играет роль сигнатурного анализатора, в которой записывается сигнатура, получаемая при тестировании комбинационной схемы. Рассмотрим подробнее работу схемы (см. рисунок 2) в режиме тестирования. В начале процесса регистр А переводится в режим приёма последовательных данных (P1 = P2 = 0, S = 0) и по входу DS из памяти в регистр загружается фиксированный двоичный набор, который определяет начало работы генератора псевдослучайных чисел. После этого на регистр А подается сигнал S = 1 и он начинает формировать псевдослучайные двоичные наборы. Эти наборы с выходов Q 1... Q k поступают на входы комбинационной схемы как тестовые y 1..... y k. Регистр В переводится в режим сигнатурного анализа (P1 = 1, P2=0, S = 1). Он фиксирует по входам D 1... D k значения сигналов Y 1... Y k как реакции на тестовые наборы. После генерации заданного числа псевдослучайных тестов в регистре В формируется сигнатура. Далее регистр В переводится в режим сдвига данных (Р1 = Р2 = 0, S = 0) и с выхода Q k сигнатура последовательно выводится в память, где сравнивается с эталонной сигнатурой. Преимуществом данного метода по сравнению с обычным сканированием является ускорение процесса тестирования. При обычном сканировании тестовые векторы и результаты тестирования пересылаются как последовательности двоичных сигналов. Это требует существенных затрат времени. Здесь же только начальный вектор псевдослучайного теста и результирующая сигнатура передаются последовательно. Остальные тестовые векторы генерируются регистром А. Недостатком является то, что не всякая комбинационная схема хорошо проверяется псевдослучайными тестами.
|