Documente Academic
Documente Profesional
Documente Cultură
Monte Carlo
Worst-Case / Sensitivity
Analiza Monte Carlo este cel mai bun mod de analiza a unui circuit din punct de vedere statistic, de a vedea cum se comporta acel circuit la variatii ale valorilor componentelor. Analiza Monte Carlo determina, statistic, comportarea circuitului cand valorile componentelor sunt modificate in domeniul lor de toleranta. Aceasta analiza calculeaza de asemenea productivitatea, care poate fi folosita in analize statistice referitoare la productia de serie.
.MC (analiza Monte Carlo) Scop Comanda .MC initiaza o analiza (statistica) a circuitului si obliga PSpice sa ruleze analize multiple de tipul selectat (CC, CA sau tranzitorie). Sintaxa .MC <#runs value> <analysis> <output variable> <function> [option]* + [SEED=value] Exemple .MC 10 TRAN V(5) YMAX .MC 50 DC IC(Q7) YMAX LIST .MC 20 AC VP(13,5) YMAX LIST OUTPUT ALL .MC 10 TRAN V([OUT1],[OUT2]) YMAX SEED=9321
Argumente si optiuni <#runs value> Numarul total de rulari (pentru rezultate tiparite limita superioara este 2,000, iar pentru rezultate afisate in Probe, limita este 400). <analysis> Specifica cel putin un tip de analiza: .DC (analiza CC), .AC (analiza CA), or .TRAN (analiza regim tranzitoriu). Aceasta analiza este repetata in rularile ulterioare. Toate analizele continute in circuit sunt realizate in prima rulare (rulare cu valori nominale). Doar analizele selectate sunt efectuate in rularile ulterioare. <output variable> Identica la format cu o variabila de iesire de tip .PRINT (listare). <function> c
<function> si toate optiunile [option]s (cu exceptia variabilei de iesire <output type>) nu au efecti pentru datele ce sunt salvate din simulare de catre Probe. Ele se aplica doar fisierului de iesire (Output File) Prima rulare foloseste valori nominale pentru toate componentele. Rularile ulterioare folosesc variatii ale parametrilor modelelor de simulare, variatii specificate de catre tolerantele DEV si LOT ale fiecarui model de simulare .MODEL.
Analiza Monte Carlo este foarte folositoare cand proiectantii vor o imagine aproape reala a ce se va intampla cu respectivul proiect in conditiile productiei de serie, de exemplu, cand toata gama de componente folosite in linia de asamblare are toleranta. Pentru a exemplifica se va folosi un circuit RC serie. Se doreste sa se analizeze variatia raspunsului treapta-unitate al circuitului.
10
11
12
13V
10V
5V
0V 0s 20us 40us V(OUT) 60us 80us 100us Time 120us 140us 160us 180us 200us
13
14
15
Se selecteaza R1 si se editeaza modelul EditPSpice Model Se redenumeste Rbreak cu RMonte1 prin dublu-clic pe Rbreak si se tasteaza noul nume RMonte1. Se efectueaza alte modificari in linia .MODEL astfel incat sa reflecte cele scrise mai jos:
.model RMonte1 RES R=1 DEV=2% LOT=10%
R=1 este un factor de multiplicare cu baza de 1 k. DEV=2% indica o toleranta a individului de 2% si LOT=10% indica o toleranta de 10% intre diferite loturi de componente.
16
Se selecteaza C1 si se editeaza modelul EditPSpice Model Se redenumeste Cbreak cu CMonte1 prin dublu-clic pe Cbreak si se tasteaza noul nume CMonte1. Se efectueaza alte modificari in linia .MODEL astfel incat sa reflecte cele scrise mai jos:
Numarul de rulari este 10 pentru a mentine timpul de simulare relativ scazut. Dimensiunea fisierului de iesire creste liniar cu numarul de rulari. Variabila de iesire V(Vout) este aleasa astfel incat sa corespunda cu numele nodului din circuit. Nota: Analiza Monte Carlo a fost de asemenea selectata.
18
Mai exista o optiune ce poate fi folosita impreuna cu analiza Monte Carlo, Analiza de Performanta. In cele ce urmeaza vom vedea cum se efectueaza aceasta. Clic TracePerformance Analysis Se poate opta pentru folosirea utilitarului Wizard pentru a defini ce se doreste sa se analizeze. Se va folosi aceasta optiune. Clic Next Se selelecteaza Risetime si clic Next Clic pe simbolul Name of Trace to Search. Aici selecteaza V(Vout) and clic OK Clic Next Clic Next din nou; in acest punct Wizard ar trebui sa se inchida. Acum ar trebui observata o histograma care arata distributia celor 10 timpi de urcare pentru circuit.
19
20
40 P c t 20 SEL>> 0 2.0u
2.1u
2.2u
2.3u
2.6u
2.7u
2.8u
2.9u
10V
5V
21
Sensitivity identifica care parametrii ai componentelor sunt critici pentru functionarea circuitului. Aceasta analiza determina in ce masura fiecare componenta afecteaza functionarea circuitului (actiune singulara sau impreuna cu alte componente). De asemenea modifica toate valorile pentru a simula cel mai defavorabil caz.
Se foloseste aceasta analiza pentru a determina componentele sensibile, apoi se exporta componentele utilitarului Optimizer pentru a calibra comportarea circuitului.
De asemenea se foloseste Sensitivity pentru a determina ce componente afecteaza productia cel mai tare, apoi se reduc tolerantele componentelor sensibile si se maresc la cele mai putin sensibile. Cu aceasta analiza se poate face o analiza a productiei si a costurilor de productie.
22
.WCASE (sensitivity/worst-case analysis) Scop directiva .WCASE cauzeaza inceperea unei analize de senzitivitate si cel mai defavorabil caz asupra circuitului Sintaxa .WCASE <analysis> <output variable> <function> [option]* Exemple .WCASE TRAN V(5) YMAX .WCASE DC IC(Q7) YMAX VARY DEV .WCASE AC VP(13,5) YMAX DEVICES RQ OUTPUT ALL .WCASE TRAN V([OUT1],[OUT2]) YMAX RANGE(.4u,.6u) + LIST OUTPUT ALL VARY DEV HI
23
24
Argumente si optiuni <analysis> Doar unul din tipurile CA, CC sau TRAN pot fi folosite pentru analiza. Aceasta analiza este repetata in pasi consecutivi ai analizei pentru cel mai defavorabil caz. Toate analizele cerute sunt efectuate in prima rulare (rulare cu valori nominale). Doar analiza selectata este efectuata in rularile ulterioare. <output variable> Identica la format cu o variabila de iesire de tip .PRINT (listare).
<function> Specifica operatiile ce trebuie efectuate pe valorile variabilei de iesire pentru a le reduce la o singura valoare. Aceasta valoare este baza pentru comparatiile dintre rularile nominale si cele ulterioare. Functia trebuie sa fie una din urmatoarele:
25
Rulari multiple ale analizei selectate (CC, CA sau TRAN) sunt efectuate in timp ce se variaza parametrii componentelor. Spre deoasebire de .MC (Analiza Monte Carlo), .WCASE variaza doar un parametru intr-o rulare. Aceasta permite PSpice sa calculeze senzitivitatea semnalului de iesire pentru fiecare parametru. Dupa ce se cunosc toate senzitivitatile, simularea este rulata inca o data variind toti parametrii pentru a determina cazul cel mai defavorabil. Analizele de senzitivitate si cel mai defavorabil caz sunt rulate folosind variatii ale parametrilor modelelor (specificate de campurile DEV si LOT din fiecare model de simulate .MODEL) . Alte specificatii ale comenzii .WCASE controleaza rezultatele generate de catre analiza. Se pot rula fie .MC, fie .WCASE pentru un circuit, dar nu simultan.
26