Файл, содержащий описание поведенческой модели, состоит из двух частей: заголовка и списка предложений и имеет расширение .PML.
В языке PML алфавит – латинский, но комментарии можно писать русскими буквами. Формат свободный, большие и малые буквы воспринимаются одинаково. Ниже приводятся основные конструкции языка PML.
, – разделитель,
; – конец предложения,
/* – начало комментария,
*/ – конец комментария,
{,} – фигурные скобки (для объединения двух и более предложений в список) – операторные скобки типа begin – end,
"0" – логический 0,
"1" – логическая 1,
"Х" – логически неопределенное состояние Х,
"/" – фронт сигнала (переход из состояния "0" или "X" в состояние "1"),
"\" – срез сигнала (переход из состояния "1" или "X" в состояние "0").
Символы "/" и "\" можно применять для входных, двунаправленных и внутренних узлов.
Для описания времени задержки и типа логического сигнала используется специальная запись PCL–атрибут, имеющая следующий формат:
PCL=(R,F,Dh,Dl) (Подробнее см. выше).
Переменные языка PML – это имена узлов и шин.
Узел – это входной, выходной или двунаправленный вывод примитива, а также некоторая фиктивная внутренняя точка примитива (внутренний узел), которая применяется для упрощения записи функций, выполняемых примитивом. Каждый узел должен иметь имя. Имена узлов указываются в соответствующих списках заголовка файла (INPUT, OUTPUT, INOUT, LOCAL). Над узлами определены операции: ~, &, |, ^, ==, != (обозначения операций см. ниже).
Шина – это фиктивное объединение (конкатенация) узлов. Шина обозначается именем или списком входящих в нее узлов, разделенных запятыми и заключенных в прямые скобки, например, [A1,A2,...An]. Количество узлов в списке не более 31. Первым в списке указывается старший разряд, последним – младший разряд. Отдельный k–ый разряд шины имеет обозначение <имя шины>[k]. Имя шины должно быть указано в заголовке файла в списке LOCAL. В других списках его запись не допускается. Кроме операций, указанных для узлов, над шинами определены также операции: + – конкатенация, <<, >> – сдвиг влево, вправо, ==, !=, >, <, >=, <= (обозначения см. ниже), которые выполняются над числами, представляющими состояния разрядов шины.
Имена узлов и шин могут содержать до 8 алфавитноцифровых символов и не должны разделяться пробелами.
В подсистеме моделирования системы PCAD программа PCLOGS, реализует асинхронное троичное моделирование дискретных устройств, поэтому каждый узел, включая и отдельные узлы шины, может находиться в одном из трех состояний: логический ноль – "0", логическая единица – "1" и логически неопределенное состояние "X" (возможно "0", возможно "1").
Константа всегда заключается в двойные кавычки " " и может быть записана в виде числа:
"255" – десятичная константа,
"0ХC8F" – шестнадцатеричная константа,
"0255" – восьмеричная константа (префикс 0 обязателен),
"0B101101" – двоичная константа, или в виде отдельных символов:
"s", "S", "d", "D", "z", "Z", "r", "R", "0", "1", "X", "/", "\".
Вот операторы языка PML в порядке понижения их приоритета:
( ) – скобки,
~ – инверсия,
+ – конкатенация,
<<, >> – сдвиг влево или вправо,
& – булевское И (логическое умножение),
| – булевское ИЛИ (логическое сложение),
^ – булевское исключающее ИЛИ,
<, <=, >, >=, ==, != – операторы отношения (меньше, меньше или равно, больше, больше или равно, равно, не равно),
&& – операция логического условия "И",
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.