Иллюстрированный самоучитель по OrCAD


Цифровые компоненты - часть 16


/p>

Приведем пример дешифратора 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(...); Определение модели динамики ПЛМ

Запоминающие устройства.

Запоминающие устройства (ЗУ) подразделяются на постоянные ЗУ (ROM, Read Only Memories) и оперативные ЗУ (RAM, Random Access Read-Write Memories).

Постоянные запоминающие устройства (ПЗУ).

Существует два способа записи данных в ПЗУ для последующего моделирования:

  • обычно данные предварительно записываются в файл в формате Intel Hex и перед началом моделирования они из него считываются;

  • данные записываются непосредственно в описании ПЗУ с помощью конструкции DATA=...

ПЗУ (рис. 4.44) вводится в задание на моделирование предложением

Uxxx

ROM

(<количество адресных входов>,<количество выходов>) + <+узел источника питания> <-узел источника питания> + <вход разрешения чтения>


+ <старший разряд адреса> . . .<младший разряд адреса> + <старший разряд выхода> . . <младший разряд выхода> +,<имя модели динамики> <имя модели вход/выход> - + [FILE=<имя файла>]




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