Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Курсовая работа

по дисциплине

«Моделирование»

Факультет:

АВТ

Группа:

АМ-109

Студент:

Преподаватель:

Дата:


Оглавление

1. Постановка задачи 3

2. Описание устройства 4

3. Проектирование в пакете DesignLab 8 5

3.1. Проектирование с использованием схемы замещения. 5

3.2. Проектирование с использованием макромодели. 12

4. Проектирование в пакете OrCAD 9.1 19

4.1. Проектирование с использованием схемы замещения. 19

4.2. Проектирование с использованием поведенческой модели. 23

6. Выводы 26

7. Список литературы 28


1. Постановка задачи

Данная работа преследует целью закрепление навыков проектирования цифровых узлов, полученных в ходе прослушивания курса лекций, лабораторных работ и выполнения РГР.

В ходе проектирования цифрового узла предполагается построение различных его моделей. С разработанном узле проводятся имитационные эксперименты, целью которых является подтверждение работоспособности узла и соответствие его временных задержек требуемым.

2. Описание устройства

Необходимо спроектировать дешифратор ИД7.

Описание выводов:

A0,A1,A2 – адресные входы;

V1,V2,V3 – входы стробирования;

0-7 – выходы дешифратора.

Рис. 1

Дешифратор, имеет три адресных входа A, три входа стробирования V, два из которых инверсные, и восемь инверсных выходов. Логический 0 на одном из выходов может появиться лишь при единственном разрешающем сочетании сигналов на входах стробирования - на инверсных входах должен быть логический 0, на прямом - логическая 1. При всех других сочетаниях сигналов на входах V на всех выходах микросхемы - логическая 1. Сигнал логический 0 при разрешающем сочетании на входах появится на том выходе дешифратора, номер которого соответствует десятичному эквиваленту кода, поданному на адресные входы.

НЕ нашли? Не то? Что вы ищете?

Таблица 1. Логическая таблица режимов работы

Входы

Выходы

A2

A1

A0

V1

V2

V3

0

1

2

3

4

5

6

7

x

x

x

x

H

H

H

H

H

H

H

H

H

H

x

x

x

L

x

x

H

H

H

H

H

H

H

H

L

L

L

H

L

L

L

H

H

H

H

H

H

H

L

L

H

H

L

L

H

L

H

H

H

H

H

H

H

H

L

H

L

L

H

H

L

H

H

H

H

H

H

H

H

H

L

L

H

H

H

L

H

H

H

H

H

L

L

H

L

L

H

H

H

H

L

H

H

H

H

L

H

H

L

L

H

H

H

H

H

L

H

H

H

H

L

H

L

L

H

H

H

H

H

H

L

H

H

H

H

H

L

L

H

H

H

H

H

H

H

L

Таблица 2. Задержки распространения

Параметр

От

До

Задержка(нс)

Типовая

Максимальная

tPLH

Адресных входов

Любого выхода

21

27

tPHL

Адресных входов

Любого выхода

20

39

tPLH

Входов стробирования

Любого выхода

14

26

tPHL

Входов стробирования

Любого выхода

13

38

Зарубежным аналогом дешифратора К555ИД7 является 74ls138. Поэтому задержки, приведенные выше были взяты из документации к аналогу, с сайта Texas Instruments.

3. Проектирование в пакете DesignLab 8

3.1. Проектирование с использованием схемы замещения.

Рис. 2 УГО проектируемого узла

При реализации схемы замещения все элементы представлены в отечественных графических обозначениях по ЕСКД, в соответствие с требованиями к данной работе. Также надо отметить, что использовались реальные микросхемы. Схема замещения приведена на рис. 3.




Рис. 3

Схема тестирования приведена на рис. 4.

Рис. 4

Ниже приведено текстовое SPICE-описание моделируемого узла (содержимое файлов *.cir и *.net). Также приведено содержимое файла описания внешних воздействий.

Файл Schematic1.cir содержит ссылки на библиотеки пользователя, файл описания внешних воздействий и другие, необходимые для моделирования файлы.

* D:\_shalag\MyKURS(DL)\Schematic1.sch

* Schematics Version 8.0 - July 1997

* Fri Nov 26 17:04:41 2004

** Analysis setup **

.tran 20ns 4000ns

.STMLIB "D:\_shalag\MyKURS(DL)\Schematic1.stl"

* From [SCHEMATICS NETLIST] section of msim. ini:

.lib "D:\_shalag\MyKURS(DL)\MYLIB. lib"

.lib "nom. lib"

.INC "Schematic1.net"

.INC "Schematic1.als"

.probe

.END

Файл Schematic1.net содержит полный список цепей, моделируемой схемы (сюда включены и цепи схемы замещения):

* Schematics Netlist *

X_U1A Q0 Q1 Q2 Q3 $N_0001 $G_DPWR $G_DGND 74LS22 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_U1B Q4 Q5 Q6 Q7 $N_0002 $G_DPWR $G_DGND 74LS22 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

U_DSTM1 STIM(1,0) $G_DPWR $G_DGND HS1_A0 IO_STM STIMULUS=A0

U_DSTM2 STIM(1,0) $G_DPWR $G_DGND HS1_A1 IO_STM STIMULUS=A1

U_DSTM3 STIM(1,0) $G_DPWR $G_DGND HS1_A2 IO_STM STIMULUS=A2

U_DSTM4 STIM(1,0) $G_DPWR $G_DGND V1 IO_STM STIMULUS=V1

U_DSTM5 STIM(1,0) $G_DPWR $G_DGND V2 IO_STM STIMULUS=V2

U_DSTM6 STIM(1,0) $G_DPWR $G_DGND V3 IO_STM STIMULUS=V3

X_HS1_DD1_1 HS1_A0 HS1_A0bar $G_DPWR $G_DGND K555LN1 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD1_2 HS1_A1 HS1_A1bar $G_DPWR $G_DGND K555LN1 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD1_3 HS1_A2 HS1_A2bar $G_DPWR $G_DGND K555LN1 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD2_1 V1 $N_0003 $N_0004 HS1_V $G_DPWR $G_DGND K555LI3 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD1_4 V2 $N_0003 $G_DPWR $G_DGND K555LN1 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD1_5 V3 $N_0004 $G_DPWR $G_DGND K555LN1 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD3_1 HS1_A0bar HS1_A1bar HS1_A2bar HS1_V Q0 $G_DPWR $G_DGND

+ K555LA1 PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD3_2 HS1_A0 HS1_A1bar HS1_A2bar HS1_V Q1 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD4_1 HS1_A0bar HS1_A1 HS1_A2bar HS1_V Q2 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD4_2 HS1_A0 HS1_A1 HS1_A2bar HS1_V Q3 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD5_1 HS1_A0bar HS1_A1bar HS1_A2 HS1_V Q4 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD5_2 HS1_A1bar HS1_A2 HS1_A0 HS1_V Q5 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD6_1 HS1_A0bar HS1_A2 HS1_A1 HS1_V Q6 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

X_HS1_DD6_2 HS1_A2 HS1_A1 HS1_A0 HS1_V Q7 $G_DPWR $G_DGND K555LA1

+ PARAMS:

+ IO_LEVEL=0 MNTYMXDLY=0

Файл Schematic1.stl содержит описания внешних воздействий:

* D:\_shalag\MyKURS(DL)\Schematic1.stl written on Thu Nov 25 18:48:33 2004

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

;!Stimulus Get

;! A0 Digital A1 Digital A2 Digital V1 Digital V2 Digital V3 Digital

;!Ok

;!Plot Axis_Settings

;!Xrange 0s 16us

;!AutoUniverse

;!XminRes 1ns

;!YminRes 1n

;!Ok

.STIMULUS A0 STIM (1, 1) ;! CLOCKP 126ns 63ns 0 0

+ +0s 0

+ +63ns 1

+ Repeat Forever

+ +63ns 0

+ +63ns 1

+ EndRepeat

.STIMULUS A1 STIM (1, 1) ;! CLOCKP 252ns 126ns 0 0

+ +0s 0

+ +126ns 1

+ Repeat Forever

+ +126ns 0

+ +126ns 1

+ EndRepeat

.STIMULUS A2 STIM (1, 1) ;! CLOCKP 504ns 252ns 0 0

+ +0s 0

+ +252ns 1

+ Repeat Forever

+ +252ns 0

+ +252ns 1

+ EndRepeat

.STIMULUS V1 STIM (1, 1) ;! CLOCKP 1008ns 504ns 1 200ns

+ +0s 1

+ +200ns 0

+ Repeat Forever

+ +504ns 1

+ +504ns 0

+ EndRepeat

.STIMULUS V2 STIM (1, 1) ;! CLOCKP 2016ns 1008ns 1 200ns

+ +0s 1

+ +200ns 0

+ Repeat Forever

+ +1.008us 1

+ +1.008us 0

+ EndRepeat

.STIMULUS V3 STIM (1, 1) ;! CLOCKP 4032ns 2016ns 1 200ns

+ +0s 1

+ +200ns 0

+ Repeat Forever

+ +2.016us 1

+ +2.016us 0

+ EndRepeat

Далее приведены временные диаграммы, полученные в ходе тестирования. На рис. 6 и 7 показаны задержки распространения сигнала от входов стробирования до выходов. На рис. 8-11 показаны задержки распространения от адресных входов до выходов. Задержки показаны только для выходов 0 и 1. Задержки распространения до выходов 0,2,4,6 одинаковы; и до выходов 1,3,5,7 тоже одинаковы. Отметим что задержки отличаются от задержек реального элемента.


Рис. 5

Рис. 6

Рис. 7

Рис. 8

Рис. 9

Рис. 10

Рис. 11


3.2. Проектирование с использованием макромодели.

Поскольку УГО символа ничем не отличается от УГО символа в предыдущем пункте, то оно не приводится. По аналогичной причине не приводится схема тестирования.

Текст макромодели:

* K555ID7_2 DECODER/DEMULTIPLEXER 3-8 LINE

*

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

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

*

.SUBCKT K555ID7_2 V1_I V2BAR_I V3BAR_I A0_I A1_I A2_I

+ Q0_O Q1_O Q2_O Q3_O Q4_O Q5_O Q6_O Q7_O

+ OPTIONAL: DPWR=$G_DPWR DGND=$G_DGND

+ PARAMS: MNTYMXDLY=0 IO_LEVEL=0

*

U555ID7LOG LOGICEXP (6,15) DPWR DGND

+ V1_I V2BAR_I V3BAR_I A0_I A1_I A2_I

+ V1 V2BAR V3BAR A0 A1 A2 ENABLE

+ Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

+ D0_GATE IO_LS

+ IO_LEVEL={IO_LEVEL}

+

+ LOGIC:

+ V1 = { V1_I }

+ V2BAR = { V2BAR_I }

+ V3BAR = { V3BAR_I }

+ A0 = { A0_I }

+ A1 = { A1_I }

+ A2 = { A2_I }

+ A0BAR = { ~A0 }

+ A1BAR = { ~A1 }

+ A2BAR = { ~A2 }

+ ENABLE = { ~V2BAR & ~V3BAR & V1 }

+ Q0 = { ~(ENABLE & A2BAR & A1BAR & A0BAR) }

+ Q1 = { ~(ENABLE & A2BAR & A1BAR & A0 ) }

+ Q2 = { ~(ENABLE & A2BAR & A1 & A0BAR) }

+ Q3 = { ~(ENABLE & A2BAR & A1 & A0 ) }

+ Q4 = { ~(ENABLE & A2 & A1BAR & A0BAR) }

+ Q5 = { ~(ENABLE & A2 & A1BAR & A0 ) }

+ Q6 = { ~(ENABLE & A2 & A1 & A0BAR) }

+ Q7 = { ~(ENABLE & A2 & A1 & A0 ) }

*

U555ID7DLY PINDLY (8,0,7) DPWR DGND

+ Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

+ ENABLE V1 V2BAR V3BAR A0 A1 A2

+ Q0_O Q1_O Q2_O Q3_O Q4_O Q5_O Q6_O Q7_O

+ IO_LS

+ MNTYMXDLY={MNTYMXDLY} IO_LEVEL={IO_LEVEL}

+

+ BOOLEAN:

+ ABLE1 = { CHANGED(ENABLE,0) & CHANGED(V1,0) }

+ ABLE2 = { CHANGED(ENABLE,0) & (CHANGED(V2BAR,0) | CHANGED(V3BAR,0)) }

+ ADDRA = { CHANGED(A0,0) }

+ ADDRB = { CHANGED(A1,0) }

+ ADDRC = { CHANGED(A2,0) }

+ ADDR = { CHANGED(A0,0) | CHANGED(A1,0) | CHANGED(A2,0) }

+

+ PINDLY:

+ Q0_O = {

+ CASE (

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,20NS,41NS)

+ )

+ }

+ Q1_O = {

+ CASE (

+ ADDRA & TRN_LH, DELAY(-1,09NS,27NS),

+ ADDRA & TRN_HL, DELAY(-1,10NS,39NS),

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ Q2_O = {

+ CASE (

+ ADDRB & TRN_LH, DELAY(-1,19NS,27NS),

+ ADDRB & TRN_HL, DELAY(-1,19NS,39NS),

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,19NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,19NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ Q3_O = {

+ CASE (

+ ADDRA & TRN_LH, DELAY(-1,09NS,27NS),

+ ADDRA & TRN_HL, DELAY(-1,10NS,39NS),

+ ADDRB & TRN_LH, DELAY(-1,19NS,27NS),

+ ADDRB & TRN_HL, DELAY(-1,19NS,39NS),

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ Q4_O = {

+ CASE (

+ ADDRC & TRN_LH, DELAY(-1,19NS,27NS),

+ ADDRC & TRN_HL, DELAY(-1,19NS,39NS),

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ Q5_O = {

+ CASE (

+ ADDRA & TRN_LH, DELAY(-1,09NS,27NS),

+ ADDRA & TRN_HL, DELAY(-1,10NS,39NS),

+ ADDRC & TRN_LH, DELAY(-1,19NS,27NS),

+ ADDRC & TRN_HL, DELAY(-1,19NS,39NS),

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ Q6_O = {

+ CASE (

+ ADDRB & TRN_LH, DELAY(-1,19NS,27NS),

+ ADDRB & TRN_HL, DELAY(-1,19NS,39NS),

+ ADDRC & TRN_LH, DELAY(-1,19NS,27NS),

+ ADDRC & TRN_HL, DELAY(-1,19NS,39NS),

+ ADDR & TRN_LH, DELAY(-1,19NS,20NS),

+ ADDR & TRN_HL, DELAY(-1,19NS,41NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ Q7_O = {

+ CASE (

+ ADDR & TRN_LH, DELAY(-1,09NS,27NS),

+ ADDR & TRN_HL, DELAY(-1,10NS,39NS),

+ ABLE1 & TRN_LH, DELAY(-1,19NS,26NS),

+ ABLE1 & TRN_HL, DELAY(-1,18NS,38NS),

+ ABLE2 & TRN_LH, DELAY(-1,12NS,18NS),

+ ABLE2 & TRN_HL, DELAY(-1,20NS,32NS),

+ DELAY(-1,21NS,41NS)

+ )

+ }

+ WIDTH:

+ NODE = A0

+ MIN_LO = 50NS

+ MIN_HI = 50NS

+

+ WIDTH:

+ NODE = A1

+ MIN_LO = 50NS

+ MIN_HI = 50NS

+

+ WIDTH:

+ NODE = A2

+ MIN_LO = 50NS

+ MIN_HI = 50NS

+

+ WIDTH:

+ NODE = V1

+ MIN_LO = 50NS

+ MIN_HI = 50NS

+

+ WIDTH:

+ NODE = V2BAR

+ MIN_LO = 50NS

+ MIN_HI = 50NS

+

+ WIDTH:

+ NODE = V3BAR

+ MIN_LO = 50NS

+ MIN_HI = 50NS

*

.ENDS

Для демонстрации контроля временных соотношений в данную модель вводится контроль минимального времени удержания сигнала на адресных входах и входах стробирования.

Далее приведены результаты тестирования (рис. 12-18) полученного элемента, из которых видно, что задержки идентичны задержкам элемента построенного на основе схемы замещения.

Также приводится иллюстрация контроля временных соотношений (рис. 19-20), для чего были немного изменены временные диаграммы сигналов, поступающих на адресные входы (увеличена частота сигнала).


Рис. 12

Рис. 13

Рис. 14

Рис. 15

Рис. 16

Рис. 17

Рис. 18


Рис. 19

Рис. 20


4. Проектирование в пакете OrCAD 9.1

4.1. Проектирование с использованием схемы замещения.

Рис. 21 УГО проектируемого узла

Схема замещения приведена на рис. 22, схема тестирования на рис. 23.

По результатам тестирования (рис. 24-30) видно, что задержки несколько отличаются от задержек данного элемента при проектировании в Design Lab – это обусловлено отличием задержек в моделях элементов, на которых строилась схема замещения, стандартных библиотек OrCAD и Design Lab.


Рис. 22

Рис. 23


Рис. 24

Рис. 25

Рис. 26

Рис. 27

Рис. 28

Рис. 29

Рис. 30


4.2. Проектирование с использованием поведенческой модели.

УГО элемента и схема тестирования не приводятся, в силу того, что они идентичны УГО и схеме тестирования, приведенным в предыдущем пункте.

Поведенческая модель на VHDL:

LIBRARY ieee;

USE ieee. std_logic_1164.all;

USE work. orcad_prims. all;

ENTITY \K555ID7\ IS PORT(

\A0\ : IN std_logic;

\A1\ : IN std_logic;

\A2\ : IN std_logic;

\V1\ : IN std_logic;

\V\\2\\\ : IN std_logic;

\V\\3\\\ : IN std_logic;

\0\ : OUT std_logic;

\1\ : OUT std_logic;

\2\ : OUT std_logic;

\3\ : OUT std_logic;

\4\ : OUT std_logic;

\5\ : OUT std_logic;

\6\ : OUT std_logic;

\7\ : OUT std_logic;

VCC : IN std_logic;

GND : IN std_logic);

END \K555ID7\;

ARCHITECTURE model OF \K555ID7\ IS

SIGNAL V : std_logic;

BEGIN

V <= (\V1\ AND NOT \V\\2\\\ AND NOT \V\\3\\\) AFTER 23 ns;

\0\ <= NOT ( NOT \A0\ AND NOT \A1\ AND NOT \A2\ AND V ) AFTER 20 ns;

\1\ <= NOT ( \A0\ AND NOT \A1\ AND NOT \A2\ AND V ) AFTER 10 ns;

\2\ <= NOT ( NOT \A0\ AND \A1\ AND NOT \A2\ AND V ) AFTER 20 ns;

\3\ <= NOT ( \A0\ AND \A1\ AND NOT \A2\ AND V ) AFTER 10 ns;

\4\ <= NOT ( NOT \A0\ AND NOT \A1\ AND \A2\ AND V ) AFTER 20 ns;

\5\ <= NOT ( \A0\ AND NOT \A1\ AND \A2\ AND V ) AFTER 10 ns;

\6\ <= NOT ( NOT \A0\ AND \A1\ AND \A2\ AND V ) AFTER 20 ns;

\7\ <= NOT ( \A0\ AND \A1\ AND \A2\ AND V ) AFTER 10 ns;

END model;

В модели, по заданию, должен быть реализован контроль временных соотношений. В языке VHDL он реализуется конструкциями типа:

assert (A0'STABLE(50ns))

Report "Warning!!!"

Severity warning;

Но если добавлять данную проверку в модель, то при каждом изменении проверяемого сигнала будет возникать предупреждение, в силу того, что сигнал сразу после переключения не является стабильным. Возможно было бы, в случае тактируемого элемента осуществлять данную проверку при переключении синхросигнала. В данном же случае это не реализуемо.

Далее приводятся результаты тестирования модели. Задержки распространения можно посмотреть в тексте модели и убедится, что они полностью соответствуют задержкам элемента, построенного на схеме замещения.


Рис. 31


6. Выводы

В ходе выполнения данной работы был спроектирован элемент К555ИД7, построены различные модели данного элемента, проведены имитационные эксперименты. Все это было проделано в двух различных пакетах автоматического проектирования. Необходимо так же отметить, что некоторые моменты были изучены более глубоко, это относится в частности к контролю временных соотношений в моделях элементов. Учитывая вышесказанное можно считать поставленную задачу выполненной. Остается поделиться впечатлениями от работы с пакетами автоматического проектирования:

Design Lab 8

Надо сказать, что большинство отрицательных эмоций, полученных при работе в данном пакете вызвано тем, что пакет «устарел». Но «устаревание» можно отнести по большей части только к интерфейсным решениям, сами же принципы проектирования можно успешно изучать используя данный пакет, что прекрасно иллюстрируется применением его в при освоении дисциплины «Моделирование». Несовершенство интерфейса порождает иногда странное поведение – например Design Lab отказался отображать номера некоторых выходов элемента (рис. 1). От этого иногда правда можно избавиться путем изменения номера несколько раз подряд, но только лишь иногда. Сразу отмечу, что очень радует диалог выбора элементов из библиотек: очень удобно реализован поиск как по имени, так и по описанию. Одним словом интерфейс является одним из камней преткновения при общении с данным пакетом.

Не очень удачная реализация проектов. Доставляет неудобства работа с пользовательскими библиотеками - приходится лезть в дебри меню, для их подключения/отключения ( некоторым плюсом является то что в части случаев Design Lab берет на себя подключение новых библиотек).

Редактор входных сигналов вполне удобен.

К моделятору и постпроцессору моделирования по большому счету также нет претензий – все довольно удобно. Немного неудобна работа с временными диаграммами – но можно вполне приспособиться. Хотя как известно не пользователь должен приспосабливаться под программный продукт, а наоборот.

Про несовершенство языка DSL можно и не говорить – это заметно любому, кто хоть немного знаком с VHDL.

Порадовала реализация контроля временных соотношений в PSpice моделях – все просто и изящно.

Немного непривычно смотрится реализация справочной системы – комбинация формата справки Windows и документации в PDF. К содержанию справочной системы никаких претензий нет – все изложено кратко и понятно. А при знании английского языка можно большинство возникающих вопросов решить обращением к справке.

OrCAD

В отличие от Design Lab интерфейс сразу же располагает к работе с пакетом.

Очень удобная организация проектов, фактически нет проблем с переносом проектов с одной машины на другую (сюда можно отнести и работу с пользовательскими библиотеками). Хорошо реализовано рисование схем. Например очень удобна возможность выделения всей цепи, да и расстановка имен цепей реализовано хорошо. В пакете акцент сделан на визуальню часть, что в общем удобно. Например ввод номеров выводов микросхемы в упаковочной информации осуществляется переключением между секциями. Хотя не знаю почему, но именно этот момент оставил у меня неоднозначные ощущения – вроде и удобно, но в Design Lab как бы привычнее. Больше возможностей по сравнению с Design Lab при рисовании УГО элементов.

Понравилась реализация редактора входных сигналов – во-первых все просто и понятно в плане интерфейса; во-вторых широкие возможности задания сигналов.

В работе моделятора не понравилась реакция на предупреждения – с одно стороны остановка его работы выгодна в плане акцентирования внимания на проблеме, но если предупреждений возникает много, а моделирование необходимо продолжать – то это очень сильно раздражает. В Design Lab вывод диалога со списком предупреждений удобнее на порядок. Работа с постпроцессором моделирования удобна и не вызывает нареканий.

В отношении VHDL меня смутила реализация контроля временных соотношений – странно что в столь мощном языке встречается не очень удачно реализованный момент.

Справочная система как и в случае с Design Lab порадовала.

7. Список литературы

1. Сайт компании Texas Instruments www.

2. Зубчук по цифровой схемотехнике. — Киев “Техника”, 1990 г.

3. Справочная система OrCAD.

4. Справочная система PCAD.