OrCAD PSpice. Анализ электрических цепей - [134]

Шрифт
Интервал

=1,4 мс получаются значения: А=1, В=1, Sum=0 и Carry=1. Часть выходного файла показана на рис. 17.38. При таком формировании входных сигналов не возникает необходимости в создании интерфейсов перехода от аналоговых к цифровым сигналам и обратно, так как используются только цифровые сигналы. В перечне элементов через U обозначаются компоненты с цифровым выходом, а через X — подсхемы.

Рис. 17.37. Входные и выходные сигналы для полусумматора


>**** 10/18/99 21:28:59 *********** Evaluation PSpice (Nov 1998) **************

>** circuit file for profile: Half1

>*Libraries:

>* Local Libraries :

>.STMLIB ".\HALF.stl"

>* From [PSPICE NETLIST] section of pspiceev.ini file:

>.lib "nom.lib"

>* Analysis directives:

>.TRAN 0 2ms 0 2us

>.PROBE

>*Netlist File:

>.INC "half-SCHEMATIC1.net"

>*Alias File:

>**** INCLUDING half-SCHEMATIC1.net ****

>* source HALF

>U_DSTM2 STIM(1,0) $G_DPWR $G_DGND В IO_STM STIMULUS=Clock2

>U_DSTM1 STIM(1,0) $G_DPWR $G_DGND A IO_STM STIMULUS=Clock1

>X_U2A   А В SUM $G_DPWR $G_DGND 7486 PARAMS:

>+ IO_LEVEL=0 MNTYMXDLY=0

>X_U1A   А В CARRY $G_DPWR $G_DGND 7408 PARAMS:

>+ IO_LEVEL=0 MNTYMXDLY=0

>**** RESUMING half-schematic1-half1.sim.cir ****

>.INC "half-SCHEMATIC1.als"

>**** INCLUDING half-SCHEMATIC1.als ****

>**** RESUMING half-schematicl-half1.sim.cir ****

>.END

>* E:\SPICE\HALF.stl written on Mon Sep 06 17:58:50 1999

>* by Stimulus Editor — Evaluation Version 9.0 ;!Stimulus Get

>;! Clock1 Digital Clock2 Digital

>;!Ok

>;!Plot Axis_Settings

>;!Xrange 0s 4ms

>;!AutoUniverse

>;!XminRes 1ns

>;!YminRes 1n

>;!Ok

>.STIMULUS Clock1 STIM (1, 1) ;! CLOCK 1kHz 0.5 1 0

>+ +0s 1

>+ +500us 0

>+ Repeat Forever

>+  +500us 1

>+  +500us 0

>+ EndRepeat

>.STIMULUS Clock2 STIM (1, 1) ;! CLOCK 2kHz 0.5 0 0

>+ +0s 0

>+ +250us 1

>+ Repeat Forever

>+  +250us 0

>+  +250us 1

>+ EndRepeat

>.STIMULUS Clock2 STIM (1, 1) ;! CLOCK 2kHz 0.5 0 0

>+ +0s 0

>+ +250us 1

>+ Repeat Forever

>+  +250us 0

>+  +250us 1

>+ EndRepeat

Рис. 17.38. Выходной файл для полусумматора

Схема для упрощения с использованием булевых функций

Цифровая схема, показанная на рис. 17.39, состоит из двух источников сигнала, одного элемента И-НЕ, и двух элементов ИЛИ-НЕ. Начните новый проект с именем mix и разместите компоненты, как показано на рисунке. В качестве учебного упражнения найдите таблицу истинности для схемы, затем на бумаге составьте булевые функции для схемы и упростите ее.

Рис. 17.39. Схема для упрощения с использованием булевых функций


Источники сигналов для нашего проекта должны быть такими же, как в предыдущем примере, в котором использовались компоненты DigStiml из библиотеки sourcstm. Один из таймеров (DSTIM1) имеет частоту f=1 кГц, а другой (DSTM2) — f=2 кГц. Оба таймера в начале моделирования обнулены. Используйте Place, Net Alias, чтобы маркировать узлы А, В, С, D и Vout. Подготовьте моделирование с именем mix1. Вызовите анализ переходных процессов на интервале в 2 мс с максимальным шагом в 2 мкс.

Проведите моделирование и получите в Probe все сигналы, как показано на рис. 17.40. Воспользуйтесь курсором, чтобы найти сигналы на выходах С, D, и V>out в различные моменты времени. Как следует из рисунка, при t=0,8 мс получаем А=1, В=1, С=0, D=0 и V>out=1. Убедитесь в соответствии этих результатов вашим таблицам истинности для каждой логической схемы. На рис. 17.41 показана часть выходного файла.

Рис. 17.40. Входные и выходные сигналы в схеме для упрощения


>**** 09/06/99 20:30:17 *********** Evaluation PSpice (Nov 1998) **************

>** circuit file for profile: Mix1

>*Libraries:

>* Local Libraries :

>.STMLIB ".\MIX.stl"

>* From [PSPICE NETLIST] section of pspiceev.ini file:

>.lib nom.lib

>*Analysis directives:

>.TRAN 0 2ms 0 2us

>.PROBE

>*Netlist File:

>.INC "mix-SCHEMATIC1.net"

>*Alias File:

>**** INCLUDING mix-SCHEMATIC1.net ****

>* source MIX

>U_DSTM2 STIM(1,0) $G_DPWR $G_DGND В IO_STM STIMULUS=Clock2

>U_DSTM1 STIM(1,0) $G_DPWR $G_DGND A IO_STM STIMULUS=Clock1

>X_U3A   С D VOUT $G_DPWR$G_DGND 7402 PARAMS:

>+ IO_LEVEL=0 MNTYMXDLY=0

>X_U2A   А В D $G DPWR $G_DGND 7400 PARAMS:

>+ IO_LEVEL=0 MNTYMXDLY=0

>X_U1A   ABC $G_DPWR $G_DGND 7402 PARAMS:

>+ IO_LEVEL=0 MNTYMXDLY=0

>**** RESUMING mix-SCHEMATIC1-Mix1.sim.cir ****

>.INC "mix-SСHEMATIC1.als"

>**** INCLUDING mix-SCHEMATICl.als ****

>.ALIASES

>.END

>* E:\SPICE\MIX.stl written on Mon Sep 06 20:26:10 1999

>* by Stimulus Editor — Evaluation Version 9.0

>;!Stimulus Get

>;! Clock1 Digital Clock2 Digital

>;!Ok

>;!Plot Axis_Settings

>;!Xrange 0s 4ms

>;!AutoUniverse

>;!XminRes 1ns

>;!YminRes 1n

>;!Ok

>.STIMULUS Clock1 STIM (1, 1)

>;! CLOCK 1kHz 0.5 0 0

>+ +0s 0

>+ +500us 1

>+ Repeat Forever

>+  +500us 0

>+  +500us 1

>+ EndRepeat

>.STIMULUS Clock2 STIM (1, 1)

>;! CLOCK 2kHz 0.5 0 0

>+ +0s 0

>+ +250us 1

>+ Repeat Forever

>+  +250us 0

>+  +250us 1

>+ EndRepeat

>.STIMULUS Clock2 STIM(1, 1)

>;! CLOCK 2kHz 0.5 0 0

>+ +0s 0

>+ +250us 1

>+ Repeat Forever

>+  +250us 0

>+  +250us 1

>+ EndRepeat

Рис. 17.41. Выходной файл схемы для упрощения

D-триггер

Чтобы показать работу D-триггера, начните новый проект с именем dflip. Введите схему, показанную на рис. 17.42, применив в качестве D-триггера компонент 7474 из библиотеки eval. Это — запускаемый положительным фронтом D-триггер с предварительной установкой и сбросом. Используйте компонент DigStim1 из библиотеки sourcstm для создания сигналов