Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Скобцовы Моделирование и тестирование

.pdf
Скачиваний:
97
Добавлен:
03.03.2016
Размер:
3.61 Mб
Скачать

заданных в виде двухмерного and6 и одномерного not6 массивов,

находится значение оператора f A> B .

gr(A,B)

{

i=n; while

((A[i]=B[i]=1)or(A[i]=B[i]=8))and(i>0)

{

i=i-1;

}

if (i=0) F=0; else

F=and16[a[i]][not16[b[i]]]

}

Рис.3.4 Алгоритм вычисления оператора А>В в алфавите B16

Кратко рассмотрим остальные операторы отношений. Очевидно, что

для вычисления ~ < ~ можно использовать предыдущий алгоритм

A B ,

поменяв А и В местами. Оператор А В является отрицанием оператора

А>В. Поэтому для его реализации следует также применить предыдущий алгоритм и затем выполнить инверсию в алфавите В16 (проще всего это сделать табличным способом, используя табл.3.3). Аналогично можно

~

~

вычислить и оператор A B .

Этот же подход позволяет определить значения операторов АВ и

А=В в алфавите B16. Для вычисления АВ используется многозначная табличная модель функции F = A B (табл.3.4) и алгоритм, подобный представленному ранее.

Арифметические операторы.

Для арифметических операторов можно разработать алгоритм линейной сложности от числа разрядов операндов. Например, алгоритм арифметического сложения в алфавите В16 состоит из поразрядного сложения операндов с формированием переноса. При этом значение i-го разряда суммы Si может быть определено с помощью многозначной

111

табличной модели функции F = A B (табл.3.4). Аналогичным образом можно использовать многозначную табличную модель функции у = а & b

(табл. 3.2) при вычислении переноса Рі в следующий разряд. Так же находится в многозначном алфавите и значение разности А-В. Этот же подход может быть использован при вычислении в многозначном алфавите операторов инкремента (INCR) и декремента (DECR).

3.7.3 Характеристические функции

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

Этот метод получил широкое распространение при разработке троичных моделей [1,3]. Для алфавитов большей значности он применяется редко.

При таком подходе велика роль кодирования многозначных алфавитов.

Будем использовать кодирование 16-значного алфавита, представленное в табл. 3.1.

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

элементарные булевы функции, то при покомпонентном задании можно использовать соответствующие характеристические функции табл.3.5.

Сначала рассмотрим покомпонентное задание условного оператора

IF A THEN Z← В ELSE Z ← С. Как было показано ранее, этот оператор может быть представлен с помощью булевой функции Z = AB AC . Тогда применяя описанный метод, можно получить многозначную модель условного оператора с помощью следующих характеристических функций:

112

Z D = A1B D A0C D AD B1C D AD B DC D AD B1C 0 AD B DC 0AD' BDC1 AD' BDC D AD' B0C1 AD' B0C D ,

Z D' = A1B0 A0C D' AD' B1C D' AD' BD'C D' AD' B1C 0 AD' B D'C 0AD B D'C1 AD B D'C D' AD B0C1 AD B0C D ,

Z 0 = A1B0 AD'C 0 AD' B DC D' A0 B DC 0 A0 BD'C 0 AD B0C DAD B D'C D AD B0C 0 AD B D'C 0 AD' B0C D' A1B D'C 0 ,

Z1 = A1B1 A0C1 AD' B1C1 AD' B1C D AD' B D'C1 AD' BD'C DAD B1C1 AD B1C1 AD B1C D' AD BDC D' .

Для вывода характеристических функций операторов отношений

можно использовать функции y=A&B, y = A B

и y =

 

. Они

 

A

могут

быть применены

и

при

построении характеристических функций

арифметических операторов. Учет свойств компонент

f Dи f D позволяет

их вычислять только в

тех

случаях, когда І компоненты аргументов

AD , AD' , B D , BD'

отличны

от нуля.

Проверку

на

равенство

нулю

векторных переменных

AD , AD' , B D , BD'

целесообразно выполнять для

целых аргументов (а не отдельных разрядов). При этом можно получить достаточно высокую скорость моделирования в многозначных алфавитах.

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

113

4.МОДЕЛИ НЕИСПРАВНОСТЕЙ

В данном разделе мы рассмотрим физические дефекты (defects), их проявление на электрическом и логическом уровне в виде отказов различных видов (failure modes). Отказы моделируются (представляются)

неисправностями (faults) на логическом и функциональном уровне.

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

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

4.1 Дефекты и неисправности

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

114

Логическая неисправность может быть определена явным или неявным образом. При явном задании неисправности необходимо индивидуально для данного дефекта в каком-либо виде задать функцию,

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

схемы).

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

Типичными неисправностями соединений компонентов системы являются обрыв (open) и замыкание (short). Обрыв соответствует нарушению соединения компонентов схемы. Причиной нарушения соединения может быть недостаток или отсутствие проводящего материала, например, в металлическом проводнике. С другой стороны,

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

115

МОП-структурах, который образует соединение с некоторым небольшим,

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

L1

L1

L2

L2

а)

б)

с

сonst0

onst1

 

U пит

земля

в)

 

мостиковая неисправность

Рис.4.1 Дефект "замыкание" и соответствующие ему возможные неисправности в зависимости от типа замыкаемых линий

На рис.4.1 а) представлено изображение, полученное электронным микроскопом, частицы примеси в интегральной схеме, которая вызывает замыкание (short) [55]. Очевидно, что в общем случае могут замкнуться несколько проводящих линий. Предположим для простоты, что частица замыкает две линии, как это показано на рис.4.1 б). Заметим, что на логическом уровне этот вид отказа может интерпретироваться различными способами в зависимости от применяемых технологий и связи между двумя металлическими линиями. На рис.4.1 в), г) показаны возможные четыре ситуации. Одна из проводящих линий может быть соединена с источником питания или с землей (рис.4.1 в), что ведет к установке выхода инвертора в высокое или низкое напряжение. Эта ситуация моделируется одиночными константными неисправностями const1 (stuck-at 1) и const0 (stuck-at 0) соответственно, которые представлены на рис.4.1 в). На рис.4.1

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

116

контактами вентилей. Слева показана ситуация замыкания выходов двух различных вентилей, которая моделируется так называемой «простой мостиковой неисправностью» (simple bridging fault). Справа показан случай замыкания выхода вентиля со своим входом, что представляется

«мостиковой неисправностью с обратной связью» (feed-back bridging fault).

В заключение раздела приведем определения и простой пример дефекта, неисправности и ошибки [49].

Определение 4.1 Дефектом в электронной системе называется непреднамеренное различие между реализованным и проектируемым

оборудованием.

Определение 4.2 Ошибкой называется неправильный выходной сигнал, производимый системой, содержащей дефект.

Определение 4.3 Представление дефекта на абстрактном функциональном уровне назовем неисправностью.

a

 

 

 

 

 

&

 

 

 

 

 

 

 

b

 

d

 

 

 

 

 

 

 

 

c

 

 

 

 

 

 

 

 

 

 

Рис.4.2

 

 

 

 

Пример вентиля

В качестве примера рассмотрим цифровую систему из трех входов a, b, с и выхода d вентиля И, представленную на рис.4.2. Очевидно, система собирается путем соединения входных a, b, с и выходного d контактов с вентилем И. Допустим, что соединение второго входа вентиля И сделано неправильно он подключен к земле” (вместо входного контакта b).

Очевидно, система с таким дефектом реализует вместо логической функции d=abc функцию d=0. Тогда для этой системы мы имеем:

дефект замыкание входа вентиля на землю”;

неисправность сигнал b постоянно установлен в логический 0;

117

ошибка при значениях входов a=1, b=1, c=1 выход d=0 (вместо d=1

висправной системе).

4.2 Физические дефекты

Физические дефекты зависят от технологии изготовления и подложки интегральных схем. Типичными дефектами интегральных схем

являются:

дефекты производства ИС пропущенные при металлизации контактные окна или участки оксида, паразитические транзисторы, пробой оксида (в МОП-структурах) и т.п.;

дефекты материалов объемные дефекты (трещины,

несовершенство кристалла), нечистота поверхности, наколы или

вкрапления оксида, погрешности травления и т.д.;

дефекты старения пробой диэлектриков, электрическое перенапряжение, нестабильность поверхностного потенциала,

электромиграция и т.д.;

дефекты упаковки ухудшение контакта, утечка в перемычках.

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

118

химических параметров материалов, таких как, например, флуктуация плотности и вязкости фоторезисторов и примесей в воде и газах.

Поскольку технологический процесс производства плат существенно отличается от изготовления ИС, то на этом этапе имеют место другие физические дефекты. В табл.4.1 представлены типичные физические дефекты, возникающие при изготовлении печатных плат с частотой

возникновения [49].

Таблица 4.1

Тип дефекта

Частота

 

 

Замыкания

51

Обрывы

1

Пропущенные компоненты

6

Неправильные компоненты

13

Перевернутые компоненты

6

Изгиб проводников

8

Неправильные аналоговые спецификации

5

Неправильная цифровая логика

5

Дефекты характеристик

5

 

 

Рис.4.3 Зависимость интенсивности отказов от времени

119

ИС могут ломаться на разных этапах эксплуатации жизни»).

Отношение интенсивности отказов к сроку «жизни» описывается хорошо известной U-образной кривой, представленной на рис.4.3. Дефекты,

которые могут быть обнаружены визуально и путем оптического сканирования, проявляются во многих ИС в течение 20 недель их эксплуатации (период «детской смертности»). В конце этого периода уровень отказов стабилизируется на 10-20 лет (нормальное время

«жизни»). Далее наступает период старения. При чрезмерной эксплуатации здесь кривая носит экспоненциальный характер. Отметим,

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

4.3 Типовые модели неисправностей

Неисправность является моделью, которая представляет эффект физического дефекта на логическом или функциональном уровне.

Отметим, что несколько различных дефектов могут представляться одной и той же неисправностью (имеет место отношение «много к одному»). С

другой стороны, одному физическому дефекту иногда может соответствовать несколько неисправностей (отношение «один ко многим»). Заметим, что неисправность обычно имеет более ясную трактовку, чем физический дефект. Будучи моделью, неисправность не всегда точно соответствует физическому дефекту, но используемые модели неисправности, как правило, полезны (эффективны) при обнаружении дефектов. Классическим примером являются одиночные константные неисправности, хотя очевидно, что эта модель не точно описывает все физические дефекты. Но тесты, построенные для этих неисправностей, оказываются эффективными и для других типов неисправностей. Однако, как и любая модель, константные неисправности

120