Цифровые компоненты
Программируемые логические матрицы
Программируемые логические матрицы (ПЛМ, PLA – Programmable Logic Arrays) имеют ряд входов, которые формируют столбцы матрицы, и ряд выходов, образующих строки. Каждый выход (строка) управляется одним логическим элементом. Совокупность управляющих сигналов составляют программу для ПЛМ, которая определяет, какие входы соединяются с логическими элементами. В состав примитивов ПЛМ входят только однотипные вентили (И, ИЛИ, И-НЕ и т.п.), поэтому реальные ИС ПЛМ составляются из нескольких примитивов в виде макромоделей.
Программа ПЛМ вводится в задание на моделирование двояко:
- предварительно записав ее в файл в формате JEDEC и указав его имя в описании примитива конкретной ПЛМ;
- включив данные программы непосредственно в описание ПЛМ (используя конструкцию DATA=…), что менее удобно.
Однако при использовании библиотек, в которых ПЛМ оформлены в виде макромоделей, пользователю не нужно разбираться в деталях их моделей – достаточно указать имя модели ПЛМ, список узлов включениями с помощью опции TEXT указать имя JEDEC-файла, содержащего описание программы ПЛМ, как показано на следующем примере:
X1 IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 IN9 IN10 IN11 IN12 IN13 IN14
+
OUT1 OUT2 OUT3 OUT4 PAL14H4 TEXT: JEDEC_FILE
=
"myprog.jed"
Здесь в схему включена ПЛМ типа PAL14H4,.программируемая из файла myprog .jed. Примитивы ПЛМ вводятся в задание на моделирование предложением:
Uxxx
<тип ПЛМ>
(
<количество входов>
,
<количество выходов>
)
+
<+узел источника питания>
<-узел источника питания>
+
<входной узел>
*
<выходной узел>
*
+
<имя модели динамики>
<имя модели вход/выход>
+
[FILE
=
<имя файла>
]
+
[DATA
=
<флаг системы счисления>
$
<данные программы>
$]
+
[MNTYMXDLY
=
<выбор значения задержки>
]
+
[IO_LEVEL
=
<уровень модели интерфейса>
]
Рис. 4.32. Программируемая логическая матрица
Имеются ПЛМ следующих типов:
- PLAND – матрица логики И;
- PLOR – матрица логики ИЛИ;
- PLXOR – матрица логики исключающее ИЛИ;
- PLNAND – матрица логики И-НЕ;
- PLNOR – матрица логики ИЛИ-НЕ;
- PLNXOR – матрица логики исключающее ИЛИ-НЕ;
- PLANDC – матрица логики И, содержащая для каждого входа столбцы прямого и дополнительного кода;
- PLORC – матрица логики ИЛИ, содержащая для каждого входа столбцы прямого и дополнительного кода;
- PLXORC – матрица логики исключающее ИЛИ, содержащая для. каждого входа столбцы прямого и дополнительного кода;
- PLNANDC – матрица логики И-НЕ, содержащая для каждого входа столбцы прямого и дополнительного кода;
- PLNORC – матрица логики ИЛИ-НЕ, содержащая для каждого входа столбцы прямого и дополнительного кода;
- PLNXORC – матрица логики исключающее ИЛИ, содержащая для каждого входа столбцы прямого и дополнительного кода.
После ключевого слова FILE указывается имя файла в формате JEDEC, в котором записана программа ПЛМ. Оно может быть указано как текстовая, константа (и тогда заключается в кавычки " ") или как текстовое выражение (заключается между вертикальными черточками | |). Если приведена опция FILE, то любые данные, приведенные после опции DATA, игнорируются. Способ адресации, принятый в файле JEDEC для расположения данных, определяется параметрами модели динамики.