Разработка цифрового узла, создание его структурных и поведенческих моделей (на языках SPICE, DSL, VHDL, в пакетах DesignLab 8, OrCAD 9.1, Active-HDL 6.2), страница 6

+ IO_LEVEL=0 MNTYMXDLY=0

X_DD1_HS2_DD2_1         $N_0064 $N_0066 $N_0068 $N_0070 OUT_MY_SCH2 $G_DPWR

+  $G_DGND K555LI6 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_DD2         IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 IN9 OUT_MY_MACRO_0

+  OUT_MY_MACRO_1 OUT_MY_MACRO_2 OUT_MY_MACRO_3 $G_DPWR $G_DGND K555IV3 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_U1         IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 IN9 OUT_DesLab0 OUT_DesLab1

+  OUT_DesLab2 OUT_DesLab3 $G_DPWR $G_DGND 74LS147 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0


7.4.            Содержимое файла описания внешних воздействий.

Содержимое файла K555IV3.stl:

* Информация о месте хранения файла с внешними воздействиями, а также времени его создания и версии программы, с помощью которой он создан:

* C:\Program Files\MSim_8\Projects\KR\K555IV3\K555IV3.stl written on Fri Nov 30 18:37:22 2007

* by Stimulus Editor -- Serial Number: 100617 -- Version 8.0

;!Stimulus Get

;! IN1 Digital IN2 Digital IN3 Digital IN4 Digital IN5 Digital IN6 Digital IN7 Digital IN8 Digital IN9 Digital

;!Ok

;!Plot Axis_Settings

;!Xrange 935.1ns 1.9351us

;!AutoUniverse

;!XminRes 1ns

;!YminRes 1n

;!Ok

.STIMULUS IN1 STIM (1, 1)

+   +0s 1

+   51ns 0

+   102ns 1

+   732ns 0

+   1.494us 1

.STIMULUS IN2 STIM (1, 1)

+   +0s 1

+   116ns 0

+   169ns 1

+   772ns 0

+   1.453us 1

.STIMULUS IN3 STIM (1, 1)

+   +0s 1

+   184ns 0

+   234ns 1

+   830ns 0

+   1.411us 1

.STIMULUS IN4 STIM (1, 1)

+   +0s 1

+   257ns 0

+   306ns 1

+   876ns 0

+   1.373us 1

.STIMULUS IN5 STIM (1, 1)

+   +0s 1

+   328ns 0

+   377ns 1

+   922ns 0

+   1.331us 1

.STIMULUS IN6 STIM (1, 1)

+   +0s 1

+   406ns 0

+   452ns 1

+   966ns 0

+   1.286us 1

.STIMULUS IN7 STIM (1, 1)

+   +0s 1

+   473ns 0

+   523ns 1

+   1.011us 0

+   1.247us 1

.STIMULUS IN8 STIM (1, 1)

+   +0s 1

+   545ns 0

+   597ns 1

+   1.054us 0

+   1.204us 1

.STIMULUS IN9 STIM (1, 1)

+   +0s 1

+   620ns 0

+   665ns 1

+   1.094us 0

+   1.162us 1

7.5.            Функциональное описание проектируемого узла с помощью примитивов LOGICEXP, PINDLY, и CONSTRAINT.

Функциональное описание приоритетного шифратора К555ИВ3 с помощью логических примитивов на языке описания аппаратуры DSL выглядит так:

* K555IV3  PRIORITY ENCODER 10-4 LINE

*

* TTL LOGIC STANDARD TTL, S, LS DATA BOOK, APR 1988, TI

* JLS   8-26-92   REMODELED USING LOGICEXP, PINDLY, AND CONSTRAINT DEVICES

*

.SUBCKT K555IV3   IN1_I IN2_I IN3_I IN4_I IN5_I IN6_I IN7_I IN8_I IN9_I                                                                       *директива начала макромодели

+

+ A_O B_O C_O D_O

+ OPTIONAL: DPWR=$G_DPWR DGND=$G_DGND

+ PARAMS: MNTYMXDLY=0 IO_LEVEL=0

*

UIV3LOG LOGICEXP (9,13) DPWR DGND                               *имя примитива – IV3. В скобках – число *входов – IN1_| - IN9_| и число выходов – 13 (четыре выхода A, B, C, D и 9 внутренних цепей для *использования их в модели задержек PINDLY – IN1 – IN9)

+ IN1_I IN2_I IN3_I IN4_I IN5_I IN6_I IN7_I IN8_I IN9_I

+ IN1   IN2   IN3   IN4   IN5   IN6   IN7   IN8   IN9

+ A B C D                                                                    * имена выходных узлов логического блока

+ D0_GATE IO_LS                                                      * ссылка на модель динамики

+                                                                                 * ссылка на стандартную модель вход/выход

+ IO_LEVEL={IO_LEVEL}

+

+ LOGIC:                                                                    *логическая секция

+ IN1    = { IN1_I }

+ IN2    = { IN2_I }

+ IN3    = { IN3_I }

+ IN4    = { IN4_I }

+ IN5    = { IN5_I }

+ IN6    = { IN6_I }

+ IN7    = { IN7_I }

+ IN8    = { IN8_I }

+ IN9    = { IN9_I }

+ IN1BAR = { ~IN1 }

+ IN2BAR = { ~IN2 }

+ IN3BAR = { ~IN3 }

+ IN4BAR = { ~IN4 }

+ IN5BAR = { ~IN5 }

+ IN6BAR = { ~IN6 }

+ IN7BAR = { ~IN7 }

+ IN8BAR = { ~IN8 }

+ IN9BAR = { ~IN9 }