100% au considerat acest document util (2 voturi)
1K vizualizări26 pagini

Proiect LDH

Documentul prezintă proiectarea și analiza dinamică în SPICE a unui circuit EDFFTR. Se descriu subcircuitele logicelor, se dimensionează tranzistoarele, se realizează simulări pentru a determina parametrii circuitului și dependența acestora de capacitatea de sarcină și timpul de tranziție al intrării de ceas. Rezultatele simulărilor sunt prezentate sub formă de grafice și tabele.

Încărcat de

Alexandru Munteanu
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
100% au considerat acest document util (2 voturi)
1K vizualizări26 pagini

Proiect LDH

Documentul prezintă proiectarea și analiza dinamică în SPICE a unui circuit EDFFTR. Se descriu subcircuitele logicelor, se dimensionează tranzistoarele, se realizează simulări pentru a determina parametrii circuitului și dependența acestora de capacitatea de sarcină și timpul de tranziție al intrării de ceas. Rezultatele simulărilor sunt prezentate sub formă de grafice și tabele.

Încărcat de

Alexandru Munteanu
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd

Universitatea Tehnic Gh.

Asachi Iai
Facultatea de electronic ,telecomunicaii i tehnologia informaiei
Specializarea: Microelectronic, optoelectronic i nanotehnologii

Proiect LDH
Numele disciplinei: Limbaje de Descriere Hardware
Numrul temei de proiect: 4
Partea I Proiectarea i analiza dinamic n SPICE a
circuitului EDFFTR
Tehnologia CMOS: CMOS_IBM_013_T55R
Anul de studiu: III
Numele studentului: Munteanu Alexandru
Grupa: 5305A
Cadrul didactic: Roxana Amriuei

An universitar: 2016-2017

Tema nr. 4

Partea I Proiectarea i analiza dinamic n SPICE a


circuitului EDFFTR
1. S se dimensioneze tranzistoarele MOS corespunztor tehnologiei date i s se
scrie netlist-ul SPICE al circuitului. (Netlist-ul se va scrie ierarhic folosind
subcircuite).
2. S se efectueze analiza tranzitorie a circuitului pentru a pune n eviden
funcionarea sa. La fiecare ieire a circuitului se va considera cte o capacitate de
sarcin. Valorile pentru tensiunea de alimentare VDD, timpii de tranziie TR ai
formelor de und de la intrri i, respectiv, capacitile de sarcin CL se vor adopta
n funcie de tehnologia impus conform tabelului urmtor:
Tehnologi
e
CMOS
VDD
TR
CL

0.13 m
1.2V
0.1ns
0.06pF

0.18
m

0.25m

1.8V
0.15n
s
0.07pF

0.35m

0.50m

2.5V
0.2ns

3.3V
0.3ns

5V
0.4n

0.08pF

0.09pF

0.1pF

3. Determinai prin simulare parametric i folosind funcii int n Probe dependena


timpilor de propagare a circuitului (de la intrarea de clock la ieiri) n funcie de
capacitatea de sarcin (CL), respectiv n funcie de timpul de tranziie (TR) al
formei de und al intrrii de clock. n ambele analize parametrice variaia
parametrilor se va face n intervalul (0.5 ... 1.5)* val. adoptat conform
tehnologiei. Determinai i notai pe graficele obinute valorile ntrzierilor de
propagare corespunztoare valorilor adoptate pentru CL i TR.
Considernd c dependena timpilor de propagare n funcie de CL este de
forma: tptotal = tpintrinsec + Kload*CL
determinai pe baza graficelor obinute valorile pentru tpintrinsec i Kload i completai
un tabel de felul urmtor (tpintrinsec corespunde valorii CL=0pF):

Descriere

tpLH
tpLHintrinsec

tpHL
Kload

tpHLintrinsec

Kload

CK Q
CK QN

4.
Determinai prin simulare parametrii de constrngere SETUP_TIME, HOLD_TIME i
durata minim a pulsului MINPW pentru pinii de intrare specificai n tabelul
urmtor:
Pin intrare

Parametru constrngere

Durata interval
[ns]

CK

SETUP_TIME_LH CK
SETUP_TIME_HL CK
HOLD_TIME_LH CK
HOLD_TIME_HL CK
MINPW_HIGH
MINPW_LOW

Pentru simulrile efectuate la fiecare din punctele 2, 3 i 4 se vor prezenta


schema de test, fiierul SPICE (.cir) i formele de und sau caracteristicile
reprezentative pe baza crora s-au determinat parametrii cerui n tabele.
Mai jos sunt prezentate descrierea, schema bloc i tabelul de funcionare al
circuitului.

Partea I - SPICE - Proiectarea i analiza dinamic n SPICE a


circuitului EDFFTR
Simbolul logic al bistabilului:

Schema electric la nivel de poart logic:

Aceasta conine pori logice de tip: NOR3, AND2, inversoare i


inversoare comandate.
Structura intern a acestora ct i dimensionarea
tranzistoarelor se vor prezenta n continuare:
Descrierea n PSpice a porii inversoare:
*SUBCIRCUIT INVERSOR
.subckt INV 1 2 3
MN1 2 1 0 0 NMOS L=0.5U W=1U
MP1 2 1 3 3 PMOS L=0.5U W=4.28U
.ends

Descrierea n PSpice a porii NAND2:


*SUBCIRCUIT NAND2
.subckt NAND2 1 2 4 5
4

MN1 3 1 0 0 NMOS L=0.5U W=1U


MN2 4 2 3 3 NMOS L=0.5U W=1U
MP1 4 1 5 5 PMOS L=0.5U W=2.14U
MP2 4 2 5 5 PMOS L=0.5U W=2.14U
.ends

Descrierea n PSpice a porii AND2:


*SUBCIRCUIT AND2
.subckt AND2 1 2 4 5
Xnand2 1 2 3 5 NAND2
Xinv 3 4 5 INV
.ends

Descrierea n PSpice a porii NOR3:


*SUBCIRCUIT NOR3
.subckt NOR3 1 2 3 5 4
MN1 5 1 0 0 NMOS L=0.5U W=1U
MN2 5 2 0 0 NMOS L=0.5U W=1U
MN3 5 3 0 0 NMOS L=0.5U W=1U
MP1 7 1 4 4 PMOS L=0.5U W=12.84U
MP2 6 2 7 7 PMOS L=0.5U W=12.84U
MP3 5 3 6 6 PMOS L=0.5U W=12.84U
.ends

Descrierea n PSpice a porii inversoare comandate:


*SUBCIRCUIT INVERSOR COMANDAT
.subckt INVC 1 2 3 4 5
5

MN1 7 3 0 0 NMOS L=0.5U W=1U


MN2 4 1 7 7 NMOS L=0.5U W=1U
MP1 4 1 6 6 PMOS L=0.5U W=4.28U
MP2 6 2 5 5 PMOS L=0.5U W=4.28U
.ends

Descrierea PSpice a subcircuitului EDFFTR:


.subckt EDFFTR 1 2 3 16 14 15 19
X1 1 4 19 INV
X2 2 5 19 INV
X3 3 6 19 INV
X4 5 3 7 19 AND2
X5 6 12 8 19 AND2
X6 4 7 8 9 19 NOR3
X7 9 18 17 10 19 INVC
X8 10 11 19 INV
X9 11 18 17 10 19 INVC
X10 11 17 18 12 19 INVC
X11 12 13 19 INV
X12 13 18 17 12 19 INVC
X13 13 14 19 INV
X14 12 15 19 INV
X15 16 17 19 INV
X16 17 18 19 INV
.ends

Circuitul de test pentru punerea n eviden a


funcionalitii circuitului:
.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 0.4N 0.4N 5N 90N)
VD 2 0 PULSE(0 5 0 0.4N 0.4N 12N 16N)
VE 3 0 PULSE(5 0 0 0.4n 0.4N 30N 60n)
.param vdd=5
.param tr=0.4n
CL1 14 0 0.01p
CL2 15 0 0.01p
.TRAN 1n 100n
.PROBE
.END

Determinarea timpilor de propagare:


>> Determinarea timpului de propagare intrinsec CL=0
7

.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 0.4N 0.4N 5N 90N)
VD 2 0 PULSE(0 5 0 0.4N 0.4N 12N 16N)
VE 3 0 PULSE(5 0 0 0.4n 0.4N 30N 60n)
.param vdd=5
.param tr=0.4n
CL1 14 0 {CL}
CL2 15 0 {CL}
.TRAN 1n 100n
.param CL=0p
.PROBE
.END

-pentru iesirea Q:

-> t pLHintrinsecQ

t pLHintrinsecQ =40.201 ns39.427 ns=0.774 ns

-> t pHLintrinsecQ

t pHLintrinsecQ =47.200 ns46.601 ns=0,599 ns

- pentru iesirea QN
-> t pLHintrinsecQN
9

t pLHintrinsecQN =48.199 ns47.358 ns=0.841 n

-> t pHLintrinsecQN

t pHLintrinsecQN =55.636 ns54.602ns=1.034 ns

-tptotal:
.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 0.4N 0.4N 5N 90N)
VD 2 0 PULSE(0 5 0 0.4N 0.4N 12N 16N)
VE 3 0 PULSE(5 0 0 0.4n 0.4N 30N 60n)
CL1 14 0 {CL}
CL2 15 0 {CL}
10

.param vdd=5
.param tr=0.4n
.param CL=0.1p
.STEP PARAM CL 0.05p 0.15p 0.01p
.TRAN 0.1N 70n
.PROBE
.END

Functiile tinta definite:


tpLHinv(1,2)=x2-x1
{
1| search forward level(50%,n)!1;
2| search forward level(50%,p)!2;
}
tpHLinv(1,2)=x2-x1
{
1|search forward level(50%,p)!1;
2| search forward level(50%,n)!2;
}
Acestea au fost testate corespunzator pentru fiecare caz.
Ieirea QN LH param CL (0.05 0.15pF)

Ieirea Q HL param CL (0.05 0.15pF)


11

Tp

total

HL in ieirea Q pentru CL minim:

12

Tp

total

HL in ieirea Q pentru CL minim=3.4778ns-2.6005ns=0.87ns

Tp

total

HL in ieirea Q pentru CL maxim:

Tp

total

HL in ieirea Q pentru CL maxim=3.9339ns-2.6005ns=1.33ns

Din relaia: tptotal= tpintrinsic+Kload*CL


tp

Kload= CL

Tp

total

Kload=

1,330,87
0,150,05

LH in ieirea QN pentru CL minim:

13

=4.6;

Tp

total

LH in ieirea QN pentru CL minim=4.1995ns-3.5194ns=0.68ns

Tp

total

LH in ieirea QN pentru CL maxim:

Tp

total

LH in ieirea QN pentru CL maxim=4.1995ns-3.7717ns=0.42ns

Din relaia tptotal= tpintrinsic+Kload*CL


14

tp

Kload= CL

0,680,42
0,050,15

Kload=

Iesirea Q HL param TR (0.5 - 1.5n):

Iesirea QN LH param TR (0.5 - 1.5n):

15

=2.6;

Ieirea QN HL param CL (0.05 -0.15 pF)

Ieirea Q LH param CL (0.05 -0.15 pF)

16

Tptotal

LH in ieirea Q pentru CL minim:

tptotal LH in ieirea Q pentru CL minim=4.1990ns-3.5200ns=0.679ns


tptotal LH in ieirea Q pentru CL maxim:

tptotal

LH in ieirea Q pentru CL maxim=4.1990ns-3.7731ns=0.4259ns

Din relaia: tptotal= tpintrinsic+Kload*CL


tp

Kload= CL

Kload=

0.6790.4259
0.050.15

17

=2.531;

tptotal HL in ieirea QN pentru CL minim:

tptotal HL in ieirea QN pentru CL minim=3.4765ns-2.6010ns=0.8755ns


tptotal HL in ieirea QN pentru CL maxim:

tptotal HL in ieirea QN pentru CL maxim=3.9348ns-2.6010ns=1.3338ns


Din relaia tptotal= tpintrinsic+Kload*CL
tp

Kload= CL

Kload=

1.33880.8755
0.150.05

Iesirea Q LH param TR (0.2-0.6n)

18

=4.633;

Iesirea QN HL param TR (0.2-0.6n)

In urma analizelor si calculelor respective se completeaza tabelul:


tpLH
Descriere

tpLHintrinsec

CK Q

0.774 ns

CK QN

0,841 ns

tpHL
Kload

2.531
2.6

19

tpHLintrinsec

0,599 ns
1.034 ns

Kload

4.6
4.633

4.Determinarea parametrilor de constrangere


Setup_time este timpul minim dinaintea frontului activ de ceas n
care este obligatoriu ca semnalul de intrare sa fie stabil (s nu se
nregistreze tranziii).
Determinarea timpului SETUP_TIME_LH
.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(0 5 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 {tr} {tr} 5N 90N)
VD 2 0 PULSE(0 5 {7.495n-DL} {tr} {tr} 12N 16N)
VE 3 0 PULSE(5 0 0 {tr} {tr} 30N 60n)
.param vdd=5
.param tr=30p
CL1 14 0 {CL}
CL2 15 0 {CL}
.param CL=0.1p
.param DL=0
.step param dl 0n 0.1n 10p
.TRAN 0.0001N 14n 1n
.PROBE
.END

20

setup_time_LH=8.0150ns-7.5100ns=0.505ns

Determinarea SETUP_TIME_HL:
.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 {tr} {tr} 5N 90N)
VD 2 0 PULSE(0 5 {7.495n-DL} {tr} {tr} 12N 16N)
VE 3 0 PULSE(5 0 0 {tr} {tr} 30N 60n)
.param vdd=5
.param tr=30p
CL1 14 0 {CL}
CL2 15 0 {CL}
.param CL=0.1p
.param DL=0
21

.step param dl 0n 0.1n 10p


.TRAN 0.0001N 14n 1n
.PROBE
.END

setup_time_HL=8.0150ns-7.5100ns=0.505ns

Hold_time este timpul minim de dup frontul activ de ceas n care este
obligatoriu ca semnalul de intrare s fie stabil (s nu se nregistreze tranziii).
Determinarea timpului HOLD_TIME_LH:

.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 {tr} {tr} 5N 90N)
VD 2 0 PULSE(0 5 6.98n 30p 30p {0.92N+dl} 6.8n)

22

VE 3 0 PULSE(5 0 0 {tr} {tr} 30N 60n)


.param vdd=5
.param tr=30p
CL1 14 0 {CL}
CL2 15 0 {CL}
.param CL=0.1p
.param DL=0
.step param dl 0.n 0.09n 10p
.TRAN 0.0001N 14n 1n
.PROBE
.END

hold_time_LH=6.9945ns-6.0451ns=0.9494ns

Determinarea timpului HOLD_TIME_HL


.inc netlist.cir
23

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} 2n 4n)
VRN 1 0 PULSE(5 0 0 {tr} {tr} 5N 90N)
VD 2 0 PULSE(5 0 6.98n 30p 30p {0.92N+dl} 6.8n)
VE 3 0 PULSE(5 0 0 {tr} {tr} 30N 60n)
.param vdd=5
.param tr=30p
CL1 14 0 {CL}
CL2 15 0 {CL}
.param CL=0.1p
.param DL=0
*.step param dl 0.n 0.09n 10p
.TRAN 0.0001N 14n 1n
.PROBE
.END

24

hold_time_HL=6.9950ns-6.0450ns=0.95ns

Calculul MINPW_HIGH
.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(0 5 0 {tr} {tr} {pw} 4n)
VRN 1 0 PULSE(5 0 0 {tr} {tr} 5N 90N)
VD 2 0 PULSE(0 5 0 30p 30p 2n 6n)
VE 3 0 PULSE(5 0 0 {tr} {tr} 30N 60n)
.param vdd=5
.param tr=30p
CL1 14 0 {CL}
CL2 15 0 {CL}
.param CL=0.1p
.param pw=0.1n
.STEP PARAM pw 0.05N 0.1N 0.01N
.TRAN 0.001N 44n 1n
.PROBE
.END

Calculul MINPW_LOW

25

.inc netlist.cir

.inc CMOS_IBM_013_T55R.txt
XEDFFTR 1 2 3 16 14 15 19 EDFFTR
VDD 19 0 {vdd}
VCK 16 0 PULSE(5 0 0 {tr} {tr} {pw} 4n)
VRN 1 0 PULSE(5 0 0 {tr} {tr} 5N 90N)
VD 2 0 PULSE(5 0 0 30p 30p 2n 6n)
VE 3 0 PULSE(5 0 0 {tr} {tr} 30N 60n)
.param vdd=5
.param tr=30p
CL1 14 0 {CL}
CL2 15 0 {CL}
.param CL=0.1p
.param pw=0.1n
.STEP PARAM pw 0.05N 0.1N 0.01N
.TRAN 0.001N 44n 1n
.PROBE
.END

Pin intrare

Parametru constrngere

Durata interval
[ns]

SETUP_TIME_LH CK
SETUP_TIME_HL CK
HOLD_TIME_LH CK

CK

HOLD_TIME_HL CK
MINPW_HIGH
MINPW_LOW

26

0.505
0.505
0.9494
0.95

S-ar putea să vă placă și