Скачиваний:
60
Добавлен:
05.06.2015
Размер:
292.86 Кб
Скачать

63

ПРОЕКТИРОВАНИЕ ПОЛУЗАКАЗНЫХ ИС

Л Е К Ц И И 15-17

Л И Т Е Р А Т У Р А

  1. Р.Дж.Беннеттс. "Проектирование тестопригодных логических схем".

Тестопригодность Терминология, классификация.

Тестовое диагностирование – обнаружение неисправностей элементов ИС вследствие дефектов производства, эксплуатации или старения . Тестирование происходит по результату: проходит или не проходит сигнал.

Ремонтопригодность схем – это характеристика схем, включающая в себя диагностирование вида «поиск дефекта»: проверка исправности и локализация неисправности.

Неисправность может быть вызвана физическим дефектом, например, обрывом. Проявление неисправности характеризуется логическим состоянием схемы, например, типа зависания логического состояния. Поведение неисправностей адекватно отображается моделированием по логическим функциям: короткое замыкание (КЗ), проводное И, ИЛИ, обрыв (ХХ).

Первичные входы. (ПВх) – входы, чьими логическими состояниями можно непосредственно упрвлять.

Первичные выходы (Пвых) - выходы, которые можно непосредственно наблюдать.

Тест (тестовый набор) - определенное множество сигналов на ПВх и ожидаемых реакций на Пвых. Покрытие неисправностей – характеризует множество неисправностей, обнаруживаемых либо отдельным тестом либо их множеством.

Исправность ИС проверяется автоматическими диагностирующими устройствами, тестерами. Они действуют в соответствии с программой.

Программное тестирование состоит из 3-х процедур:

  1. генерация тестов;

  2. оценка эффективности тестов;

  3. реализация тестового диагностирования.

1.Генерация тестов – процедура нахождения множества тестовых входных наборов и ожидаемых реакций исправного устройства, обеспечивающего покрытие неисправностей из заданного списка. Цели такой процедуры:

  • изменение сигнала в определенном узле схемы,

  • установление активизированного пути для определенной неисправности (по узлам),

  • испытание подсхемы во всех ее состояниях.

Облегчение или усложнение процесса генерации тестовых наборов связано с управляемостью и наблюдаемостью схемы. Чем выше значения этих параметров, тем проще нахождение, проявление и транспортировка неисправностей.

2. Эффективность тестов – процедура для количественного определения степени покрытия множеством тестов заданного списка неисправностей (множества одиночных неисправностей вида «неконтролируемый «0» [н.к.0]) и н.к.1 на всех соединениях схемы. Уровень покрытия можно оценить моделированием.

Метод физического моделирования при помощи стендовых электрических испытаний ограничен возможностями доступа к элементам внутри ИС и особенностями схемы. Пример: для моделирования неисправности типа н.к.0 можно заземлить выход ТТЛ- схемы, но нельзя для случая н.к.1 соединить выход схемы с шиной питания, даже через резистор, - повреждения в схеме могут быть необратимы, вместо тестирования получим разрушение.

Практически задача решается логическим моделированием неисправности, неисправности из списка вводятся в модель схемы последовательно или комбинациями (параллельно).

3. Реализация тестового диагностирования - физический процесс тестирования. Проблемы могут быть связаны с ограничениями возможностей аппаратуры (скорость подачи тестов, ограниченность технических приспособлений…). Поиск неисправностей затруднен в цепях с обратными связями, если элементы замкнуты друг на друга и т.п.

Перечисленные процедуры требуют больших затрат на ЭВМ, специальные программы, обучение персонала, обслуживание стендов тестеров и т.д. Затраты можно снизить, если проектировать схемы с улучшенной тестопригодностью.

Тестопригодность – приспособленность схемы к обнаружению неисправностей, их локализации и реализации тестового диагностирования в пределах допустимых финансовых затрат. Нужно сокращать затраты в любом их перечисленных разделов: на ЭВМ, программы, время тестирования, обучения, обслуживания и т.д.

Различают три подхода к проектированию тестопригодных схем:

  • численная оценка управляемости и наблюдаемости, количественная мера тестопригодности;

  • структурное проектирование (иногда самотестируемых) схем с использованием свойств сканируемого пути с простотой доступа к внутренним точкам устройства. Эффективные методы генерации тестов, реализующих методы сканирования;

  • разработка практических указаний для сокращения затрат на процедуры генерации тестов и реализацию тестирования.

Анализ тестопригодности. Сиcтема CAMELOT.

Количественные оценки тестопригодности могут быть проведены до генерации тестов и могут быть сделаны счетным или алгоритмическим способом.

Счетные оценки. Главное – идентифицировать особенности схемы, характеризующие тестопригодность. Эти характеристики задаются набором показателей. Подсчитывают показатели, ухудшающие и улучшающие тестопригодность, их комбинации дают оценку тестопригодности. В этой методике не обязательно использовать ЭВМ, возможно дать рекомендации на последнем этапе проектирования схемы, например, по секционированию, расположению контактных площадок, разъемов и т.д. Оценки достаточно грубые.

Алгоритмические оценки - реализуются программно, в основе лежит анализ топологии. Анализируется каждый узел, строятся сечения схемы по уровню тестопригодности (гистограммы), находят слабые места. Основными параметрами такого анализа являются управляемость и наблюдаемость.

Управляемость (CY) - это простота решений задач подачи теста в определенный узел.

Наблюдаемость (OY) – это реагирование на выходах подсхемы в заданном состоянии окружения/

Тестопригодность любого узла есть функция управляемости и наблюдаемости этого узла:

TY(узла) = CY(узла)OY(узла).

Управляемость.

В системе CAMELOT управляемость CY принимает относительные значения от 0 до 1.

Значение CY = 1 – максимальная величина параметра соответствует первичному входу: можно установить любое логическое состояние.

Значение CY = 0 - узел не может быть установлен в одно из двоичных состояний.

Остальные узлы характеризуются значениями CY между этими границами.

Теория передачи значений CY через элементы устройства.

Рассмотрим устройство.

Если входы управляются непосредственно, входы

то управляемость выходов должна отражать

способность устройства к установке на каждом выходы

выходе 0 или 1 по логической передаточной функции.

В общем случае управляемость входов может быть не 100%-ной, поэтому управляемость выходов должна учитывать и способность выполнять логическую функцию и значения управляемости входов:

СY (вых.узла) = CTF f{ CY( вх. узлов)},

CTF – controlability transfer factor – коэффициент передачи управляемости устройства по данному выходу.

CTF – мера степени различия способности генерировать на данном выходе ” 1” от способности генерировать на данном выходе “ 0 “. Данный коэффициент зависит только от логической функции, реализуемой устройством:

N(0) – число всех способов установки “0” на данном выходе устройства,

N(1) - число всех способов установки “1” на данном выходе.

ПРИМЕРЫ.

  1. При N(0) = N(1) CTF = 1, например, в схемах эквивалентности и неэквивалентности ().

  2. При N(0) = 0, N(1) = 0 CTF = 0 - неуправляемость логическим состоянием, такое маловероятно.

  3. Инвертор: N(0) = 1, N(1) = 1: CTF = 1.

  4. Схема 2И-НЕ. N(0) = 1, N(1) = 3: CTF = 1-2/4 = 0.5.

  5. Схема 2ИЛИ-НЕ. N(0) = 3, N(1) = 1: CTF = 1-2/4 = 0.5.

  6. Схема 3И-НЕ. N(0) = 1, N(1) = 7: CTF = 1-6/8 = 1-0.75 = 0.25.

и т.д.

Вычисление CTF для схем с памятью.

Рассмотрим триггерную схему с синхронными и асинхронными управляющими логическими переменными JKT – триггер:

P

J PR

T

K

CLR

C

Логическая функция JK- триггера Qn+1 = JQn + KQn.

C учетом сигналов предзаряда Р (PR), сброса С (CLR) и синхросигнала Т ( Т=1 – условие присутствия отрицательного фронта тактового сигнала) получим:

Составим карту Карно по полученной функции. Количество переменных – 6, число минтермов 26 = 64. Можно вычислить N(1), если рассчитать количество минтермов со значением Q+ = 1.

Главное, чтобы подмножества минтермов не пересекались друг с другом. По карте N(1) = 40.

C=0 C=1

CJK

TPQ+

000

001

011

010

110

111

101

100

000

1*

1*

1*

1*

1*

1*

1*

1*

001

1

1

1

1

1

1

1

1

011

1

1

1

1

010

110

1

1

111

1

1

101

1

1

1

1

1

1

1

1

100

1*

1*

1*

1*

1*

1*

1*

1*

Звездочками помечены запрещенные состояния.

Неустойчивые состояния выходов триггера возможны при следующих сочетаниях входных переменных:

P = 0 C = 1 Q = 0,

P = 1 C = 0 Q = 1,

P = 0 C = 0 Q = 0,

Итого 23 = 8 запрещенных наборов. Для 3-х сочетаний переменных всего 83 = 24 минтерма.

По карте Карно видно, что на 1- ные минтермы попало 16 запрещенных состояний, осталось

N(1) = 40 – 16 = 24. Запомним N(1) = 24.

{ Можно провести расчет единичных минтермов при помощи алгебраического выражения, воспользовавшись следующей теорией:

лемма. Если Q+ - функция n переменных, а i- й терм содержит j переменных (j  n), то число значений функции Q+ = 1, представляемое i- м термом, равно 2n-j.

Перед расчетом по этой формуле необходимо проверить подмножества минтермов на непересечение, для чего проводится следующая процедура.

процедура. Пусть два конъюнктивных терма Т1 и Т2 не удовлетворяют условию непересечения, и пусть

RC = T1/T2 - разность множеств переменных из этих термов.

Разность множеств Т1/Т2 – множество элементов, принадлежащих Т1, но не принадлежащих Т2, например:

T1 = { a,b,c,d}, T2 = { b,c,e }, T1/T2  T2/T1.

Пусть RC – непустое множество переменных X1, X2…..Xn. Преобразование пары Т1 и Т2 в совокупность непересекающихся подмножеств описывается операцией расширения:

то есть мы вводим в один из термов недостающую переменную, при этом автоматически исключаются из него минтермы, входящие в другой терм.

Проанализируем логическое выражение для функции JKT- триггера по этой процедуре:

каждый терм – это блок разбиения ( сшивания, см. карту Карно ), таким образом, в терме

В сумме число единиц N(1) = 40, как и в расчете по карте Карно. }

Рассчитаем число нулей на выходе данной схемы с учетом известного числа разрешенных переходов и числа единичных состояний.

Рассчитаем теперь коэффициент передачи управляемости для триггерной схемы:

Схема симметрична, поэтому по другому выходу получим тот же результат для CTF.

Вычисление управляемости.

Пусть в нашем устройстве n входов и m выходов. Любой вход влияет на состояние любого выхода. Управляемость выхода может существенно отличаться от управляемости соседнего выхода, поэтому в общем виде можно записать:

где f(CY(ni)) –математическая функция, пропорциональная среднему арифметическому и/или среднему геометрическому значений управляемостей входных сигналов различных типов.

Для асинхронных сигналов функция f(CY(..)) – это среднее арифметическое управляемостей входных узлов, запитываемых асинхронными сигналами; для синхронных сигналов такая функция представляет собой произведение величины управляемости тактирующего сигнала (синхросигнала) на среднее значение управляемостей входных тактируемых сигналов.

В общем виде для схем с различными типами входных сигналов получаем:

CY(выходов) = CTF(выходов) f(CY(входов)),

Для предыдущего примера схемы JKT- триггера:

число асинхронных входов i = 2 (сигналы предзаряда или выборки PR и сброса CLR),

число синхронных входов j = 3 (тактовый сигнал Т и информационные сигналы J и K).

Рассчитаем управляемость схемы. Зададимся исходным состоянием: пусть на входы сброса и предзаряда ничего не подано, они пассивны: CY(PR) = CY(CLR) = 0, а синхронизирующий тактовый сигнал (отрицательный фронт) присутствует: CY(T) = 1. Коэффициент передачи управляемости триггера рассчитали ранее CTF() = 0.8,

CY(Q+) = CTF(выхода)  f(CY(входов)) =

Логические состояния на входах фиксируются, при этом получим разные значения управляемости схемы для следующих сочетаний значений логических переменных:

CY(J) = CY(K) = 0 : CY(Q+) = 0.8  0.2  0 = 0,

CY(J) = 1, CY(K) = 0 : CY(Q+) = 0.8  0.2  1 = 0.16,

CY(J) = CY(K) = 1 : CY(Q+) = 0.8  0.2  2 = 0.32.

Управляемость в схемах с обратными связями.

Вычисление управляемости в таких схемах выполнять труднее, нужно решать систему уравнений. Рассмотрим пример простейшего RS- триггера.

СY=1 1

V1 CY=y

Соседние файлы в папке Конспекты лекций