Язык AHDL

https://worldcuprussia-2018.com/champ-cities/goroda-chempionata-mira-po-futbolu-2018.php

Булевские выражения


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

Следующий пример демонстрирует сложное булевское выражение:

 

a[] = ((c[] & -B"001101") + e[6..1]) # (p, q, r, s, t, v);

 

Левая часть выражения может быть символическим именем, именем порта или именем группы. Для инвертирования выражения в левой части выражения можно пользоваться  операцией NOT (!). Правая часть равенства представлена булевским выражением, вычисляемым в порядке, описанном в разделе “Приоритеты булевских операторов и операций отношения”.

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

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

 

1.   Двоичное число B”001101” меняет знак и принимает вид B”110011”. Унарная операция (-) имеет наивысший приоритет.

2.   B”110011” объединяется по И с группой c[]. Эта операция имеет второй уровень приоритета, потому что она заключена в круглые скобки.

3.   Результат групповой операции, проведенной на втором шаге, прибавляется к группе e[6..1].

4.   Результат, полученный на третьем шаге, объединяется по ИЛИ с группой (p, q, r, s, t, v). Это выражение имеет наименьший уровень приоритета.

 

Результат операции присваивается группе a[ ].

 

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




Начало  Назад  Вперед