> |
0 |
x |
1 |
>= |
0 |
x |
1 |
<= |
0 |
x |
1 |
||
0 |
0 |
0 |
0 |
0 |
1 |
x |
0 |
0 |
1 |
1 |
1 |
||
x |
x |
x |
0 |
x |
1 |
x |
x |
x |
x |
x |
1 |
||
1 |
1 |
x |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
x |
1 |
Рис. 1.5. Таблицы истинности троичной логики
В безусловных выражениях для узлов определены операторы &,|,^. В таких выражениях для шин, кроме перечисленных операторов, которые выполняются поразрядно, определены также операторы + – конкатенации (например, B1+B2 – объединение шин B1 и B2) и <<, >> – сдвига влево, вправо. Форма выражения в последнем случае имеет вид:
<имя шины><оператор><числовая константа>, где числовая константа указывает количество сдвигов.
Вот примеры безусловных выражений:
A1, ~A3, A1|D4, (A1|A2)&B, C1+C2, B<<"0B01", "037", [A1,A2,A3].
Четыре первых примера – это действия над узлами или шинами, остальные – действия над шинами: пятый пример – объединение шин С1 и С2, шестой пример – сдвиг содержимого шины B на один разряд влево, седьмой пример – константа, указывающая содержимое разрядов некоторой шины, восьмой пример – список узлов, входящих в шину.
Условные выражения применяются для описания состояния узлов и шин в предложениях условия и выбора. С их помощью состояниям узлов и шин присваивают значения "0", "1", "X" в зависимости от выполнения тех или иных условий.
В условных выражениях к указанным выше операндам в выражениях для узлов и для шин добавляются соответствующие условные выражения.
В условных выражениях для узлов и для шин определены операторы ==,!=. Для шин определены также операторы >,<,>=,<=. Для операндов в виде условных выражений определены операторы &&, ||.
Для узлов в качестве константы здесь применимы специальные символы "/", "\". Например, А=="/", что означает повышение уровня сигнала в узле А от "0" или "Х" до "1".
Примеры условных выражений:
[Q2,Q3,Q4]=="0B000", (R1=="1"&&R2=="1")&(S1=="0"||S2=="0").
Первый пример читается так: если все узлы шины имеют значения 0, то...
Второй пример более сложный: если R1=1 и R2=1 и S1=0 или S2=0, то...
Заголовок файла модели содержит имя примитива со списком параметров, а также списки входных (INPUT), выходных (OUTPUT), двунаправленных (INOUT) узлов и внутренних (LOCAL) узлов и шин, и имеет следующую структуру:
<имя файла> (<параметр 1>, <параметр 2>,...,)
INPUT <имя узла 1>, <имя узла 2>,...;
OUTPUT <имя узла 1> (PCL – атрибуты),...;
INOUT <имя узла 1> (PCL – атрибуты),...;
LOCAL <имя узла 1> (PCL – атрибуты),...,<имя шины>[n](PCL – атрибуты),...;
Здесь n – количество узлов в шине. Скобки после имени примитива обязательны даже в том случае, если параметры отсутствуют. В качестве параметров указываются задержки и логическая сила выходных сигналов примитива в том порядке, в котором они были указаны в атрибуте MDL при создании графического изображения примитива. Каждый список узлов и шин заканчивается точкой с запятой. По умолчанию, т.е. в том случае, если PCL–атрибуты не указаны, выходным и внутренним узлам присваиваются атрибуты PCL=(1,1,"D","D").
Например:
EXAMPLE1 ( )
INPUT A0, A1, A2, A3;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.