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

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

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

f=a b в троичном алфавите, используя характеристические функции,

приведенные в Табл.3.5.

Пусть a=1: a0=0, aD’=0, aD=0, a1=1, и b=0: b0=1, bD’=0, bD=0, b1=0,

тогда получаем

f 0 = 0 1 = 0, f D= 0 1 0 0 0 0 = 0,

f D = 0 1 0 0 0 0 = 0, f 1 = 1 0 0 0 0 0 = 1.

Таким образом, согласно кодированию алфавита B16 (Табл.3.1) код f 0 = 0,

f D' = 0, f D = 0 , f 1 = 1 определяет значение f=1, что соответствует

таблице истинности функции ИЛИ в троичном алфавите.

Алфавит E5, являющийся расширением алфавита E3, определяется следующим подмножеством 16-значного алфавита: 0={0}(код 1000), 1={1}(код 0001), E={0 D’ 1}(код 1101), H={0 D 1}(код 1011),

u={0 D’ D 1}(код 1111). Рассмотрим пример вычисления функции

f=a b в 5-значном алфавите, используя характеристические функции,

приведенные в Табл.3.5.

Пусть a=0: a0=1, aD’=0, aD=0, a1=0, и b=E: b0=1, bD’=1, bD=0, b1=1,

тогда получаем

f 0 = 1 1 = 1, f D= 0 1 1 1 0 1 = 1,

 

f D = 0 1 1 0 0 0 = 0, f 1 = 0 1 0 1 0 0 = 1.

 

То есть, согласно кодированию алфавита B16 (Табл.1.3) код f 0 = 1,

f D' = 1,

f D = 0 , f 1 = 1 определяет значение f=E, что соответствует

таблице

истинности функции ИЛИ в 5-значном алфавите.

На рис.3.2 представлена алгебраическая структура алфавитов E3 и E5.

В силу построения рассмотренные алфавиты являются частично упорядоченными подмножествами и образуют структуры типа верхняя

полурешетка.

91

Таблица 3.8

Элементы

Интерпретация

 

 

0×0×0

Статический 0

1×1×1

Статическая 1

0×u×1

Переход 01

1×u×0

Переход 10

0×u×0

Статическое 0-

 

состязание

 

 

1×u×1

Статическое 1-

 

состязание

Таблица 3.9

Элементы

Интерпретация

 

 

0×0×0

Статический 0

1×1×1

Статическая 1

0×E×1

Переход 01

1×H×0

Переход 10

0×u×0

Статическое 0-

 

состязание

 

 

1×u×1

Статическое 1-

 

состязание

0×H×1

Динамическое 1-

 

состязание

1×E×0

Динамическое 0-

 

состязание

 

 

Отметим, что 6-значный и 8-значный алфавиты H6 и H8

соответственно, используемые в методах анализа состязаний сигналов также могут быть получены из алфавита B16, так как определяются следующими подмножествами: H6 B2×E3×B2, H8 B2×E5×B2. При этом, как было показано в разделе 2.9.2, моделирование с анализом на состязания выполняется на трех наборах: текущем основном в алфавите B2, на промежуточном наборе: при использовании H6 - в алфавите E3 (при использовании H8 - в алфавите E5) следующем основном наборе в алфавите

B2. Такой способ моделирования с использованием трех наборов соответствует математической структуре алфавитов H6 и H8. Результаты моделирования интерпретируются в соответствии с таблицами 3.8 и 3.9

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

элемент u×u×u, соответствующий неопределенному состоянию.

92

Алфавит T6, наиболее широко применяемый в методах генерации

тестов (он будет дальше использоваться в главе 6), является подмножеством 16-значного алфавита: ={ }(код 0000), 0={0}(код 1000),

1={1}(код 0001), D={D}(код 0010), D’={D’}(код 0100),

u={0 D’ D 1}(код 1111). Рассмотрим пример вычисления функции

f=a b в 6-значном алфавите, используя характеристические функции,

приведенные в Табл.3.5. Пусть a=D: a0=0, aD’=0, aD=1, a1=0, и b=D’: b0=0,

bD’=1, bD=0, b1=0, тогда получаем

f 0 = 0 0 = 0, f D= 0 0 0 1 0 1 = 0,

 

 

f D = 1 0 0 0 1 0 = 0, f 1 = 0 0 1 1 0 0 = 1.

 

 

То есть,

согласно

кодированию алфавита B16

(Табл.3.1)

код f 0 = 0,

f D' = 0,

f D = 0 ,

f 1 = 1 определяет значение

f=1, что

соответствует

таблице истинности функции ИЛИ в алфавите T6.

Широкое применение в методах генерации тестов находит также

алфавит T10, являющийся подмножеством 16-значного алфавита. Он определяется следующим его подмножеством: ={ }(код 0000), 0={0}(код 1000), 1={1}(код 0001), D={D}(код 0010), D’={D’}(код 0100), G0={0 D’}(код 1100), F0={0 D}(код 1010), G1={D 1}(код 0011), F1={D’ 1}(код 0101), u={0 D’ D 1}(код 1111). Рассмотрим пример вычисления функции f=a b в 10-значном алфавите, используя характеристические функции, приведенные в Табл.3.5. Пусть a=D: a0=0, aD’=0, aD=1, a1=0, и b=G1: b0=0, bD’=0, bD=1, b1=0, тогда получаем

f 0 = 0 0 = 0, f D= 0 0 0 0 0 0 = 0,

 

f D = 1 0 0 1 1 1 = 1, f 1 = 0 1 1 0 0 1 = 1.

 

Тогда, согласно кодированию алфавита B16 (Табл.3.1), код f 0 = 0,

f D' = 0,

f D = 1, f 1 = 1 определяет значение f=G1, что соответствует

таблице

93

истинности функции ИЛИ в алфавите T10. В генерации тестов используется также и 12-значный T12={ ,0,1,D’,D,F0,F1,G0,G1,D*,С,u} алфавит, также являющиеся расширением алфавита T6.

Из выше сказанного можно сделать заключение, что при методе кодирования, используемом в алфавите B16, описание поведения многозначных функций с помощью упорядоченного множества характеристических функций f 0 , f D, f D , f 1 может быть использовано в методах генерации тестов и моделирования логических схем,

базирующихся на применении основных многозначных алфавитов. С этой точки зрения описанная 16-значная логика (B16, ( f 0 , f D, f D , f 1 )) является универсальной математической моделью для методов генерации тестов и моделирования.

3.4 Алгебраическая структура многозначных алфавитов

Показано, что рассмотренный в разделе 3.1 16-значный алфавит B16

образует булеву алгебру, представленную на Рис.3.1 [1,4]. Используемый метод построения позволяет утверждать, что основные многозначные алфавиты, применяемые в методах генерации проверяющих тестов и моделирования ДУ, являются частично упорядоченными подмножествами

B16. Так, например, алфавиты E3 и E5 образуют структуры типа верхняя полурешетка, которые не содержат наименьший элемент. Эти структуры представлены на рис.3.2а) и рис.3.2б). Если к алфавиту E3 добавить наименьший элемент , то получим алфавит С4, также представленный на рис.3.2в)., который используется при моделировании шинных структур.

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

необходимые при моделировании или генерации тестов схем,

выполненных по какой либо новой технологии. Например, на рис.3.2г),

94

рис.3.2д) представлены алфавиты L1 и L2, которые получены из алфавита

С4 и широко используются при моделировании шинных структур.

Рис.3.1 Алгебраическая структура B16

u

u

 

(u,0)

 

(u,0)

 

 

 

 

 

0

E

H (0,0)

 

(1,0)

(1,0)

1

 

 

(0,0)

a) E3

 

 

( ,0)

 

(u,1)

 

0

1

в) C4=L0

(0,1)

(1,1)

 

 

(u,0)

б) E5

 

 

 

 

(0,0)

(1,0)

 

 

(0,2)

(1,2)

 

 

 

 

 

(u,1)

 

 

 

( ,2)

(0,1)

(1,1)

 

 

 

д) L2

 

 

 

 

( ,0)

г) L1

Рис.3.2 Алгебраическая структура многозначных алфавитов

3.5 Моделирование шинных структур

Моделирование схем, содержащих тристабильные элементы,

представляет особый интерес. Корректное моделирование таких схем даже

95

в статике требует 3-значного алфавита С3={ ,0,1}, где -представляет состояние высокого импеданса. При моделировании переходных процессов используют, как минимум, 4-значный алфавит С4= { ,0,1,u), где u интерпретируется как неопределенное значение (0 или 1 или 0).

Наибольшие трудности вызывает, как правило, моделирование шинных структур, одна из которых представлена на рис.3.3.

 

 

C1

x1

 

 

 

y1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приемник

 

. . .

 

 

 

 

 

 

 

 

 

 

 

 

Cz

 

 

 

 

 

Приемник

xz

 

 

 

yz

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис.3.3 Шинная структура.

Таблица 3.10

C

X

Ø

0

1

u

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

u

 

 

 

 

 

 

0

 

u

 

0

u

 

 

 

 

 

 

1

 

u

 

1

u

 

 

 

 

 

 

u

 

u

 

u

u

 

 

 

 

 

 

Таблица 3.11

a Ø 0 1 u

b

0 1 u

0 0 0 u u

1 1 u 1 u

u u u u u

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

отключают устройство от шины (у=0). В табл.3.10 представлена модель такого элемента в алфавите С4, которая часто используется на практике [1].

96

Поставим в соответствие символу в принятом нами методе кодирования код-0000. Тогда 4-значный алфавит С4={ ,0,1,u) образует следующее подмножество B16: ={ } (код-0000), 0={00}(код-1000),

1={11}(код-0001),

u = {00 01 1O 11}.

 

 

На

 

 

основании табл.3.10 с

учетом принятого метода кодирования получены функции

f 0 , f D, f D , f 1

для тристабильного элемента, которые приведены в табл.3.12.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f 0

 

 

 

 

 

 

 

 

 

 

 

 

 

f D'

 

 

 

 

 

 

 

 

 

 

 

f D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f 1

 

 

 

 

 

 

 

 

 

 

 

 

 

Тристабильный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c1x0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

элемент

c0

cD'

cD

c0 cD' cDc1

c0 cD' cDc1 x0 xD' xD x1

 

c0 cD' cDc1x1

c0cD'cDc1

 

 

x0 xD' xD x1

c0cD'cDc1

 

 

 

 

 

 

c0cD'cDc1

 

 

 

 

 

 

 

 

 

 

 

 

 

c0cD'cDc1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c0 cD' cD c1

 

 

 

 

 

 

 

c0 cD' cD c1

 

 

c0 cD' cD c1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c0 cD' cD c1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a1b0

a0

 

 

 

a1b1

 

 

 

 

a1(

 

 

 

 

 

 

 

 

 

 

a0 (

aD'

 

aD

 

a1

a0

aD'

aD

aD'

aD

 

 

 

 

a0

aD'

aD

 

 

 

 

a0

 

 

 

 

 

 

b1

 

 

 

 

 

 

 

 

 

a0aDa1)

 

 

aD'aD a1)

 

aD'

aD

a1

 

 

 

 

 

 

a1b0

 

 

 

 

Шина

 

 

 

 

 

 

a0

aD'

aD

 

 

 

 

 

 

 

0

 

 

 

D'

 

 

 

D

0

 

 

0

 

 

 

 

D'

 

 

D

1

 

a0aD'aDa1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a0aD'aDa1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D'

 

D

1 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

a

 

 

 

 

a b

 

 

a

 

 

 

a

a

b

 

a

 

 

 

a

a

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b0bD'bDb1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

0

 

 

a

D'

a

D

a

1

b

0

b

D'

b

D 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Как уже отмечалось, выходы тристабильных элементов обычно подключаются к шине, модель которой в алфавите С4 представлена в табл.3.11. Если все устройства отключены, то согласно этой таблице шина находится в состоянии высокого импеданса. Это не всегда соответствует действительности, так как при некоторых технологиях в таком случае шина сохраняет предыдущее значение. То есть в этом случае значение на шине скорее является признаком сохранения предыдущего значения. На основании табл.3.11 для принятого метода кодирования получены функции f 0 , f D, f D , f 1 , которые представлены в табл.3.12.

97

Моделирование МОП-схем требует введения специальных приоритетов ("сил"). При этом с линией схемы обычно связывается два

параметра (v,s), где v C4 соответствует напряжению, а "сила" s Sn = {0,1,2,...,n} соответствует току или заряду [53]. Введение "силы"

позволяет корректно моделировать на логическом уровне специальные элементы (типа "сборка" и т.п.), которые традиционно моделировались на уровне электронных схем. Следуя [53], в этом случае алфавит

моделирования

можно представить в

виде L

= L'

L'

...L'

, где

 

 

 

 

 

n

0

 

1

 

n

 

L'

= C

4

× i и ↑

представляет операцию

конкатенации,

при

которой

i

 

 

 

 

 

 

 

 

 

 

элементы в алфавите { ,i}C4 × i и {u,i + 1}C4 × (i + 1) "стягиваются" в

(u,1+1). На рис.3.2 д) представлены диаграммы Хассе Ln [53 ] для n=0,1,2. В

настоящее время наиболее распространенными являются алфавиты типа

L2. При этом высший приоритет (s=0) соответствует линиям схемы,

связанным с питанием или землей. Выходам логических элементов обычно присваивается следующий приоритет (s=1). И самый низкий приоритет

(s=2) имеют элементы, у которых сигналы хранятся на емкостях. Как правило, наибольшие трудности вызывает моделирование специальных элементов типа "сборка". Математически моделирование "сборки"

сводится к операции # - нахождению наименьшей верхней грани в Ln [53].

Например, (V,S)=#((1,1), ( ,2), ( ,2)) =(1,1).

Функции f 0 , f D, f D , f 1 используются при моделировании логических элементов для вычисления параметра v. "Сила" s определяется типом элемента и применяемой технологией. Существуют различные модификации многозначных алфавитов, являющихся подмножествами L2.

Интересным и важным для практики представляется 9-значный алфавит,

предложенный в [54]. Этот алфавит получается из L2 удалением элемента

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

98

Представленные выше модели тристабильного элемента и шины используют четыре компоненты f 0 , f D, f D , f 1 . Но при моделировании в алфавитах С4, Ln достаточно использовать только две компоненты и не все

термы f 0 , f 1 . При этом модели тристабильного элемента и шины

существенно упрощаются. Для тристабильного элемента в этом случае

получаем

f 0 = c0c1x0 c0c1 c0c1 и

f 1 = c0c1 x1 c0c1 c0 c1 .

Аналогично для шины имеем f 0 = a0 b0 ,

f 1 = a1 b1.

3.6 Комбинированные характеристические переменные и функции

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

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

Определение 3.1 Назовем комбинированными характеристическими переменными двоичные переменные, определяемые в соответствии со следующими правилами:

xG1

= xD x1 : x = G1 B

xG1

= 1 B

 

;

 

16

 

2

 

 

xF1

= xDx1 : x = F1 B

xF1

= 1 B

;

 

 

16

 

2

 

 

 

xG0 = xDx0 : x = G0 B xG0

= 1 B

 

;

 

16

 

2

 

xF0 = xD x0 : x = F0 B xF0

= 1 B

 

.

 

16

 

2

 

 

Для характеристических и комбинированных характеристических переменных выполняются свойства, указанные ниже.

3.1. x0 xDxD x1 = 1.

Доказательство: В левой части равенства присутствуют все основные характеристические переменные, соответствующие всем элементам базового алфавита B4. Как следует из интерпретации его элементов, они

99

описывают все возможные пары значений ДУ в разных технических состояниях (исправное и неисправное) и в различные моменты времени.

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

сущности, выражение x0 xDxD x1 можно определить как характеристическую переменную неопределенного значения uB16: xu, так как элемент u определяется следующим подмножеством алфавита B4

{0 D’ D 1}.

Следствие: xG1 xG0 = 1, xF1 xF0 = 1.

3.2. Если x B2 xG1 = xF1 = x1 = x, xG0 = xF0 = x0 = x .

Доказательство: Истинность этого утверждения следует из определения комбинированных переменных.

3.3. Конъюнкция (логическое умножение) характеристических переменных

выполняется согласно Табл.3.13.

Таблица 3.13

&

x0

xD’

xD

xD

xG1

xF1

xG0

xF0

x0

x0

0

0

0

0

0

x0

x0

xD’

0

xD’

0

0

0

xD’

xD’

0

xD

0

0

xD

0

xD

0

0

xD

x1

0

0

0

x1

x1

x1

0

0

xG1

0

0

xD

x1

xG1

x1

0

xD

xF1

0

xD’

0

x1

x1

xF1

xD’

0

xG0

x0

xD’

0

0

0

xD’

xG0

x0

xF0

x0

0

xD

0

xD

0

x0

xF0

Результат логического умножения характеристических переменных определяется пересечением подмножеств базового алфавита B4 , которыми задаются соответствующие элементы алфавита B16 (Табл.3.1).

Пересечение определяется как покомпонентная конъюнкция соответствующих характеристических векторов. Конфликтная ситуация,

100