OrCAD Моделирование с помощью PSpice

Цифровые компоненты

Программируемые логические матрицы. Программируемые логические матрицы (ПЛМ, PLA - Programmable Logic Arrays) имеют ряд входов, которые формируют столбцы матрицы, и ряд выходов, образующих строки. Каждый выход (строка) управляется одним логическим элементом. Совокупность управляющих сигналов составляют программу для ПЛМ, которая определяет, какие входы соединяются с логическими элементами. В состав примитивов ПЛМ входят только однотипные вентили (И, ИЛИ, И-НЕ и т.п.), поэтому реальные ИС ПЛМ составляются из нескольких примитивов в виде макромоделей.

Программа ПЛМ вводится в задание на моделирование двояко:

Однако при использовании библиотек, в которых ПЛМ оформлены в виде макромоделей, пользователю не нужно разбираться в деталях их моделей - достаточно указать имя модели ПЛМ, список узлов включениями с помощью опции TEXT указать имя JEDEC-файла, содержащего описание программы ПЛМ, как показано на следующем примере:

Х1 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. Примитивы ПЛМ вводятся в задание на моделирование предложением:

Uххх <тип ПЛМ> (<количество входов>,<количество выходов>)

+ <+узел источника питания> <-узел источника питания>

+ <входной узел>* <выходной узел>*

+ <имя модели динамики> <имя модели вход/выход>

+ [FILЕ=<имя файла>]

+ [DАТА=<флаг системы счисления> $ <данные программы>$]

+ [MNTYMXDLY= < выбор значения задержки>]

+ [IO_LEVEL=< уровень модели интерфейса>]

Имеются ПЛМ следующих типов:

PLAND - матрица логики И; PLOR - матрица логики ИЛИ;

Рис. 4.32. Программируемая логическая матрица

PLXOR - матрица логики исключающее ИЛИ;

PLNAND - матрица логики И-НЕ;

PLNOR - матрица логики ИЛИ-НЕ;

PLNXOR - матрица логики исключающее ИЛИ-НЕ;

PLANDC - матрица логики И, содержащая для каждого входа столбцы прямого и дополнительного кода;

PLORC - матрица логики ИЛИ, содержащая для каждого входа столбцы прямого и дополнительного кода;

PLXORC - матрица логики исключающее ИЛИ, содержащая для. каждого входа столбцы прямого и дополнительного кода;

PLNANDC - матрица логики И-НЕ, содержащая для каждого входа столбцы прямого и дополнительного кода;

PLNORC - матрица логики ИЛИ-НЕ, содержащая для каждого входа столбцы прямого и дополнительного кода;

PLNXORC - матрица логики исключающее ИЛИ, содержащая для каждого входа столбцы прямого и дополнительного кода.

После ключевого слова FILE указывается имя файла в формате JEDEC, в котором записана программа ПЛМ. Оно может быть указано как текстовая, константа (и тогда заключается в кавычки " ") или как текстовое выражение (заключается между вертикальными черточками | |). Если приведена опция FILE, то любые данные, приведенные после опции DATA, игнорируются. Способ адресации, принятый в файле JEDEC для расположения данных, определяется параметрами модели динамики.

Флаг системы счисления принимает значения:

Данные программы помещаются между знаками доллара $ и могут располагаться как слитно, так и разделяться одним или несколькими пробелами. Поток данных начинается с нулевого адреса, по которому программируется соединение первого входа с вентилем, управляющим первым выходом. Наличие «0» означает, что вход не подсоединен к вентилю, а «1» - наличие такого соединения (изначально все входы не подсоединены ни к каким выходам). Данные по следующему адресу управляют соединением дополнения первого входа к вентилю, управляющему первым выходом (только для ПЛМ с прямыми и дополнительными входами), или второго входа, подключенного к вентилю, управляющему первым выходом. Каждая дополнительная «1» или «0» программирует соединение следующего входа или его дополнения с вентилем, управляющим первым выходом, до тех пор, пока не переберут все входы (и их дополнения). Последующие данные программируют соединения входов со вторым выходом и т.д. Модель динамики ПЛМ имеет формат

.MODEL <имя модели динамики> UPLD {(параметры модели динамики)}

Параметры этой модели приведены в табл. 4.40.

Таблица 4.40. Параметры модели динамики ПЛМ

Идентификатор

Параметр

Значение по умолчанию

Единица измерения

TPLHMN

Время задержки на выход при переключении 0->1, минимальное значение

0

с

TPLHTY

То же, типичное значение

0

с

TPLHMX

То же, максимальное значение

0

с

TPHLMN

Время задержки на выход при переключении 1->0, минимальное значение

0

с

TPHLTY

То же, типичное значение

0

с

TPHLMX

То же, максимальное значение

0

с

OFFSET

Адрес данных, управляющих подключением первого входа к первому выходу (в файле JEDEC)

0

-

COMPOFFSET

Адрес данных, управляющих подключением дополнения первого входа к первому выходу (в файле JEDEC)

1

-

INSCALE

Количество адресов для программирования изменения состояния каждого входа (в файле JEDEC)

1

-

OUTSCALE

Количество адресов в файле JEDEC для программирования изменения состояния каждого выхода (вентиля)

2

-

Приведем пример дешифратора 3x8 (рис. 4.33). Входные узлы обозначим IN1 (старший разряд), IN2, IN3 (младший разряд). Если все входы находятся в состоянии «0», выход OUT1=«1». Если IN1 и IN2 - в состоянии «0», a IN3 - в состоянии «1», OUT2=«1» и т.д. Данные программы для удобства чтения записаны в виде массива. В комментариях сверху от программы указаны имена входных узлов, находящихся в состоянии «1» - true (Т) и «0» - false (F, дополнительный код); в комментариях в конце строк указаны имена выходных узлов, управляемых вентилем.

Рис. 4.33. Дешифратор 3x8, реализованный на ПЛМ

UDECODE PLANDC(3,8); 3 входа, 8 выходов

+ $G_DPWR $G_DGND ; Узлы источника питания и "земли"

+ IN1 IN2 IN3 ; Входы

+ OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8 ; Выходы

+ PLD_MDL ; Имя модели динамики ПЛМ

+ IO_STD ; Имя модели вход/выход ПЛМ

+ DATA=B$ ; Данные программы ПЛМ

*IN1 IN2IN3

* TF TF TF

+ 01 01 01 ; OUT1

+ 01 01 10;OUT2

+ 01 1001 ;OUT3

+ 01 1010;OUT4

+ 1001 01 ;OUT5

+ 1001 10;OUT6

+ 101001 ;OUT7

+ 10 10 10$;OUT8

.MODEL PLD_MDL UPLD(...); Определение модели динамики ПЛМ

Словарь основных терминов

Jumper — перемычка

Junction — электрическое соединение

К

Keepin — область, содержащая все компоненты определенной группы, например, компоненты определенной высоты Keepout — область, не содержащая компоненты определенной группы

L

Layout — схема размещения, компоновка (в системе OrCAD чертеж ПП) Logical mode — рассмотрение конкретных экземпляров из наборов объектов (синоним instance)

М

Macro — макрокоманда В качестве примера рассмотрим модель двигателя постоянного тока с пусковым трехступенчатым реостатом

Manhattan length — расстояние по Манхеттену, равное сумме длин катетов между начальной и конечной точкой (иногда называется расстоянием «на такси»).

Manufacturing — оптимизация результатов трассировки проводников для улучшения внешнего вида ПП и технологичности ее изготовления.

MCAD — Mechanical Computer Aided Design — программное обеспечение проектирования механических устройств

Mirror — зеркальное отображение

Miter — сглаживание — замена изгиба проводника под прямым углом на два изгиба под углом 45° или дугу

Model Editor — программа расчета параметров математических моделей по паспортным данным в формате программы PSpice