Transcript of Federico Bizzarri Dipartimento di Elettronica e Informazione, Politecnico di Milano P.za Leonardo da...
- Slide 1
- Federico Bizzarri Dipartimento di Elettronica e Informazione,
Politecnico di Milano P.za Leonardo da Vinci 32, I-20133 Milano,
Italy e-mail: bizzarri@elet.polimi.it Analisi numerica di circuiti
analogico/digitali: determinazione della soluzione di regime e
degli effetti dovuti al rumore
- Slide 2
- Slide 3
- Milano, 17/18 gennaio 2013 A chi serve? A chi ha a che fare con
lanalisi o la sintesi (con la progettazione) di circuiti
elettrici/elettronici che, a regime, presentano un comportamento
periodico. A cosa serve? Ad estendere a questi tipi di circuiti
analisi che si basano sulla risoluzione del problema variazionale
che descrive il sistema linearizzato attorno alla sua traiettoria
(di regime) nello spazio di stato (matrice di transizione o matrice
fondamentale o matrice di sensibilit rispetto alle condizioni
iniziali). Quando serve? Quando i circuiti in esame sono descritti
da modelli che presentano discontinuit delle variabili elettriche o
delle loro derivate. Analisi numerica di circuiti
analogico/digitali: determinazione della soluzione di regime e
degli effetti dovuti al rumore 3
- Slide 4
- Milano, 17/18 gennaio 2013 A cosa serve? Ad estendere a questi
tipi di circuiti analisi che si basano sulla risoluzione
dellequazione variazionale che descrive il sistema linearizzato
attorno alla sua traiettoria nello spazio di stato (matrice di
transizione o matrice fondamentale o matrice di sensibilit rispetto
alle condizioni iniziali). Metodi di shooting per il calcolo veloce
della soluzione di regime Analisi di stabilit (moltiplicatori di
Floquet) Analisi del rumore in oscillatori Funzioni di
trasferimento tempo varianti Quando serve? Quando i circuiti in
esame sono descritti da modelli che presentano discontinuit delle
variabili elettriche o delle loro derivate. Un circuito analogico
con interruttori Un circuito misto analogico-digitale Un circuito
in parte descritto con un linguaggio behavioural Un circuito per
cui la ALU del calcolatore che lo simula non in grado di seguirne
variazioni molto rapide Analisi numerica di circuiti
analogico/digitali: determinazione della soluzione di regime e
degli effetti dovuti al rumore 4
- Slide 5
- Milano, 17/18 gennaio 2013 Sommario (cenni delle cose che serve
sapere e che si usano abitualmente quando si lavora con circuiti
analogici descritti da campi vettoriali smooth che ammettono una
soluzione di regime periodica) Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
5
- Slide 6
- Milano, 17/18 gennaio 2013 Sommario estensione ai circuiti
misti analogico/digitali Sistemi dinamici ibridi (un cenno)
Saltation matrix Derivazione nel caso switching Formulazione
generale Un esempio semplice di applicazione Un esempio pi
complesso (Type-II 3-state PFD PLL) Il simulatore circuitale PAN
6
- Slide 7
- Milano, 17/18 gennaio 2013 Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
Sommario (cenni delle cose che serve sapere e che si usano
abitualmente quando si lavora con circuiti analogici descritti da
campi vettoriali smooth che ammettono una soluzione di regime
periodica) 7
- Slide 8
- Milano, 17/18 gennaio 2013 Modified nodal analysis (MNA)
1.L'analisi nodale modificata permette, dato un circuito (non
patologico) in generale dinamico descritto mediante equazioni
topologiche (le leggi di Kirchhoff per le tensioni e le correnti) e
le equazioni costitutive dei componenti che lo compongono, di
formulare un modello in grado di descriverne il comportamento. 3.Il
modello che lMNA fornisce per le reti dinamiche (in generale non
lineari) un insieme di equazioni algebriche e differenziali che
costituiscono una DAE (differential algebraic equation). Si riduce
ad un sistema di sole equazioni algebriche per le reti adinamiche
(resistive). 2.Le incognite del modello fornito dallMNA sono i
potenziali di nodo del circuito (espressi rispetto a un nodo di
riferimento) e le correnti di lato di tutti quei componenti che non
sono controllabili in tensione. 4.LMNA fondamentale per poter
descrivere in modo sistematico un circuito e analizzarne il
comportamento mediante un simulatore. 8
- Slide 9
- Milano, 17/18 gennaio 2013 Modified nodal analysis (MNA) KCL
KVL Nodo di riferimento KCL 9
- Slide 10
- Milano, 17/18 gennaio 2013 Modified nodal analysis (MNA)
10
- Slide 11
- Milano, 17/18 gennaio 2013 Modified nodal analysis (MNA) Il
modello che lMNA fornisce (in generale) un insieme di equazioni
algebriche e differenziali che costituiscono una DAE (differential
algebraic equation) ma ci limiteremo al caso in cui esso sia
semplicemente una ODE (ordinary differential equation). Questa
ipotesi non fa perdere generalit agli argomenti che vedremo per due
ragioni: 1.Sarebbe possibile ma pi complicato lavorare direttamente
su una DAE 2.Se si trascurano connessioni patologiche*, esiste
sempre una opportuna trasformazione che utilizza trasferitori
ideali di potenza e permette di ottenere, a partire dal circuito di
partenza, un circuito identico ma modellabile mediante una ODE. *
Maglie di soli induttori e generatori di tensione e tagli di soli
condensatori e generatori di corrente 11
- Slide 12
- Milano, 17/18 gennaio 2013 Modified nodal analysis (MNA) In
generale si prevede di aver a che fare con legami del tipo
carica-tensione e flusso-corrente di tipo non lineare. In questo
caso, come nel nostro esempio, condensatori e induttori sono
lineari. 12
- Slide 13
- Milano, 17/18 gennaio 2013 Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
Sommario (cenni delle cose che serve sapere e che si usano
abitualmente quando si lavora con circuiti analogici descritti da
campi vettoriali smooth che ammettono una soluzione di regime
periodica) 13
- Slide 14
- Analisi Steady-State (Shooting) L'analisi e la progettazione di
circuiti elettronici, che prevedono a regime un funzionamento di
tipo periodico, si avvalgono di metodi di simulazione numerici di
tipo "steady-state. CIRCUITO ELETTRONICO SMOOTH In modo efficiente,
cio non si vuole fare una lunga simulazione del transitorio e poi
ricavare la soluzione di regime ma si cerca direttamente la
soluzione di regime! Milano, 17/18 gennaio 2013 Non un capriccio:
se progettiamo ad esempio un oscillatore ad alto Q, la simulazione
della convergenza allorbita di regime pu impiegare ore ed ore di
simulazione! 14
- Slide 15
- Milano, 17/18 gennaio 2013 Ad esempio Shooting (T=
6.2871s)Analisi in transitorio (Oscillatore di Van der Pol) 15
- Slide 16
- Milano, 17/18 gennaio 2013 Come ottenere in modo efficiente la
soluzione di regime? Assumiamo che il circuito sia autonomo
(possiamo quindi scegliere t 0 = 0 ) e normalizziamo il tempo t
rispetto al periodo incognito T ( = t/T). Il sistema diventa
periodico di periodo 1. Sia la funzione di transizione di stato da
0 a. Impostiamo il problema trovare la soluzione periodica di
regime come un problema al contorno cio un Boundary Value Problem
(BVP) Idea: posso provare a capire di quanto cambiare la condizione
iniziale e il periodo affinch lorbita si chiuda? Dovrei capire
quanto il punto finale sensibile rispetto al punto iniziale e al
periodo 16
- Slide 17
- Milano, 17/18 gennaio 2013 Come ottenere in modo efficiente la
soluzione di regime? Sia una opportuna condizione di fase che
garantisce lunicit della soluzione del Boundary Value Problem (BVP)
unequazione algebrica non lineare che dipende da riscriviamo BVP
come purtroppo il problema cos definito ammette infinite soluzioni
che scivolano in fase! Trovare la condizione iniziale e il periodo
tali da far chiudere lorbita 17
- Slide 18
- Milano, 17/18 gennaio 2013 Questo BVP che dipende da N 1
incognite un sistema di N 1 equazioni algebriche non lineari che pu
essere risolto numericamente, ad esempio, con il metodo di Newton.
Come ottenere in modo efficiente la soluzione di regime? 18
- Slide 19
- Milano, 17/18 gennaio 201319
- Slide 20
- Milano, 17/18 gennaio 2013 Alla quarta iterazione: Alla decima
iterazione: Allundicesima iterazione: 20
- Slide 21
- Come ottenere in modo efficiente la soluzione di regime? La La
soluzione corrente adeguata? END La SI La NO Sensibilit della
traiettoria rispetto alle condizioni iniziali Milano, 17/18 gennaio
201321
- Slide 22
- Milano, 17/18 gennaio 2013 Come ottenere in modo efficiente la
soluzione di regime? Problema Linearizzato Sistema di ODE lineari e
tempovarianti 22
- Slide 23
- Milano, 17/18 gennaio 2013 Se la matrice Jacobiana J f di f
esiste allora il problema linearizzato pu essere risolto in
parallelo al problema non lineare originale e permette di calcolare
la sensibilit della soluzione rispetto alle condizioni iniziali.
Come ottenere in modo efficiente la soluzione di regime? una volta
trovata la soluzione periodica di regime 23
- Slide 24
- Il sistema variazionale Operativamente la soluzione del sistema
ODE e la matrice di sensibilit rispetto alle condizioni si ricavano
in parallelo risolvendo un problema di tipo Forward Sensitivity
Analysis (FSA) Se x s (t) soluzione allora possibile calcolare
leffetto x s (t) sulla soluzione di una perturbazione x 0 delle
condizioni iniziali come x s (t) = ( t, t 0 ) x 0 (t 0 ) Milano,
17/18 gennaio 201324
- Slide 25
- Matrice sensibilit rispetto alle condizioni iniziali - Propriet
- Propriet di composizionePropriet di mapping Milano, 17/18 gennaio
201325
- Slide 26
- Milano, 17/18 gennaio 2013 Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
Sommario (cenni delle cose che serve sapere e che si usano
abitualmente quando si lavora con circuiti analogici descritti da
campi vettoriali smooth che ammettono una soluzione di regime
periodica) 26
- Slide 27
- Milano, 17/18 gennaio 2013 Analisi del sistema linearizzato
attorno allorbita di regime Una volta determinata lorbita di
regime, possibile utilizzare la linearizzazione del sistema
originale attorno ad essa per determinare gli effetti dovuti a
piccoli segnali periodici che la perturbino (periodic small signal
analysis - PAC). ipotesi 27
- Slide 28
- Sistema di equazioni differenziali lineari tempo- varianti
periodico del primo ordine (LTVP). Se e u(t) sono continue
nellintervallo di definizione di t allora il problema ammette una
sola soluzione. Lintegrale generale (linsieme di tutte le soluzioni
k ) del sistema omogeneo associato al problema LTV un sottospazio
di dimensione N. Matrice fondamentale dal Teorema Liouville.
Analisi del sistema linearizzato attorno allorbita di regime
Milano, 17/18 gennaio 2013 ancora una ancora matrice fondamentale.
28
- Slide 29
- Ammette unica soluzione Ammette unica soluzione (Formula di
Lagrange) Matrice risolvente canonica o matrice di transizione
Analisi del sistema linearizzato attorno allorbita di regime
Milano, 17/18 gennaio 201329
- Slide 30
- Il calcolo della matrice di transizione risulta quindi
fondamentale perch assumendo un ingresso periodico di piccolo
segnale lunico elemento che serve per calcolare come si riflette
sullo stato del sistema Analisi del sistema linearizzato attorno
allorbita di regime Milano, 17/18 gennaio 201330
- Slide 31
- Vediamo un esempio con loscillatore di Van der Pol Analisi del
sistema linearizzato attorno allorbita di regime Milano, 17/18
gennaio 2013 (Attenzione: nello spazio di stato la traiettoria si
interseca perch il sistema perturbato non autononomo) 31
- Slide 32
- Analisi del sistema linearizzato attorno allorbita di regime
Milano, 17/18 gennaio 2013 Traiettoria di grande segnale
visualizzata su 3 periodi del sistema non perturbato ovvero 11
periodi della perturbazione. Traiettoria di piccolo segnale
visualizzata su 3 periodi del sistema non perturbato ovvero 11
periodi della perturbazione. 32
- Slide 33
- Analisi del sistema linearizzato attorno allorbita di regime
Milano, 17/18 gennaio 2013 Lo spettro del piccolo segnale presenta
armoniche sottomultiple della fondamentale di grande segnale dato
che la sua fondamentale 1/3 di questultima. 33
- Slide 34
- Analisi del sistema linearizzato attorno allorbita di regime
Milano, 17/18 gennaio 2013 In questo caso lo spettro del piccolo
segnale ha la stessa fondamentale del grande segnale. 34
- Slide 35
- Milano, 17/18 gennaio 2013 Singole frequenze diverse in
ingresso generano spettri diversi in uscita. Singole frequenze
diverse in ingresso possono dare contributi su frequenze identiche
in uscita. 35
- Slide 36
- Milano, 17/18 gennaio 2013 Cosa si pu fare con la periodic
small signal analysis 1.Stabilisco dove inserire una sorgente di
piccolo segnale (come termine additivo di una delle ODE che
descrivono il sistema) Calcolo leffetto di piccolo segnale di
questa sorgente su tutte le variabili di stato che mi interessano
ottenendo uno spettro opportuno per ciascuna di esse. Si stabilisce
cos una relazione tra una singola frequenza in ingresso e uno
spettro in uscita. 2.Stabilisco dove inserire una sorgente di
piccolo segnale (come termine additivo di una delle ODE che
descrivono il sistema) Faccio una scansione per tanti valori della
frequenza della sorgente in ingresso e per ciascun valore (come al
punto 1.) ottengo uno spettro. Fisso un valore di riferimento in
frequenza, identico per ciascuno spettro in uscita, e calcolo il
valore dello spettro a quella frequenza. Costruisco un grafico e
metto in ascissa le frequenze su cui ho eseguito la scansione in
ingresso e in ordinata il valore estratto da ogni spettro alla
medesima frequenza fissata. 3.Fisso un insieme di frequenze
possibili in ingresso e un insieme di frequenze in uscita. Per
ciascuna frequenza in uscita calcolo il contributo (se esiste) di
ciascuna delle frequenze in ingresso. Costruisco un grafico e metto
in ascissa le frequenze scelte in uscita e in ordinata i contributi
ottenuti. In questo modo posso valutare, in una banda di interesse,
leffetto di un rumore per sovrapposizione degli effetti in
frequenza. 36
- Slide 37
- Milano, 17/18 gennaio 2013 Sommario (cenni delle cose che serve
sapere e che si usano abitualmente quando si lavora con circuiti
analogici descritti da campi vettoriali smooth che ammettono una
soluzione di regime periodica) Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
37
- Slide 38
- Matrice di transizione - Propriet per sistemi lineari tempo
varianti periodici - Milano, 17/18 gennaio 2013 Matrice di
Monodromia Assumiamo che Esponenti di Floquet (per ipotesi N
distinti) Moltiplicatori di Floquet Decomposizione Floquet (1883)
38
- Slide 39
- Matrice di transizione - Propriet per sistemi lineari tempo
varianti periodici - Milano, 17/18 gennaio 2013 una matrice
fondamentale Poich la soluzione del sistema di equazioni lineari
tempo varianti (periodico) esprimibile come combinazione lineare
delle colonne di una matrice fondamentale Le costanti c i dipendono
dalle condizioni iniziali del problema. Periodicit: un esponente
nullo ( : un moltiplicatore unitario) Stabilit: altri esponenti con
parte reale negativa (altri moltiplicatori nel cerchio unitario) 39
matrice diagonale
- Slide 40
- Milano, 17/18 gennaio 2013 Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
Sommario (cenni delle cose che serve sapere e che si usano
abitualmente quando si lavora con circuiti analogici descritti da
campi vettoriali smooth che ammettono una soluzione di regime
periodica) 40
- Slide 41
- Milano, 17/18 gennaio 2013 L 0 : ciclo limite soluzione
periodica del problema non lineare di partenza : (sezione di
Poincar) superficie localmente ortogonale ad L 0 P : Mappa di
Poincar associata a L 0 (punto fisso per la mappa) Definiamo un
sistema di coordinate ( 1, 2, , N-1 ) su per il quale il punto x 0
lorigine. La stabilit del ciclo L 0 identica a quella del punto x 0
per la mappa. Il punto x 0 stabile se gli autovalori di A giacciono
nel cerchio di raggio unitario Stabilit Si dimostra che gli N -1
autovalori di A sono gli N -1 autovalori non unitari di 41
- Slide 42
- Milano, 17/18 gennaio 2013 Ad esempio Shooting (T= 6.2871s)
(Oscillatore di Van der Pol) 42
- Slide 43
- Milano, 17/18 gennaio 2013 Modified Nodal Analysis Analisi
Steady State (matrice di sensibilit rispetto alle condizioni
iniziali) Analisi di piccolo segnale periodica Teoria di Floquet
Stabilit Rumore (di fase e rumore di ampiezza) negli oscillatori
Sommario (cenni delle cose che serve sapere e che si usano
abitualmente quando si lavora con circuiti analogici descritti da
campi vettoriali smooth che ammettono una soluzione di regime
periodica) 43
- Slide 44
- Milano, 17/18 gennaio 2013 Rumore di fase e rumore di ampiezza
negli oscillatori In generale, come abbiamo gi accennato, quando
parliamo degli effetti di un rumore che ipotizziamo
sufficientemente piccolo e additivo, pensiamo ad un disturbo che
vada a sommarsi al segnale noiseless che ci interessa. ipotesi Pi
realisticamente opportuno pensare che leffetto del rumore si
rifletta sul segnale noiseless con due contributi distinti che ne
deteriorano due caratteristiche: lampiezza e la fase. Amplitude
deviation Phase deviation (o Phase Response) In generale il rumore
di fase preoccupa molto di pi i progettisti di quanto non faccia il
rumore di ampiezza e cercheremo di capire qualitativamente perch.
44
- Slide 45
- Milano, 17/18 gennaio 2013 Rumore di fase e rumore di ampiezza
negli oscillatori Una prima considerazione: se la soluzione
perturbata molto vicina alla soluzione noiseless, cio c una piccola
amplitude deviation, pu comunque essere presente una phase
deviation consistente! 45
- Slide 46
- Milano, 17/18 gennaio 2013 Rumore di fase e rumore di ampiezza
negli oscillatori Inoltre, se il ciclo limite stabile, potremmo
perfino avere il caso in cui un piccolo disturbo che agisce tipo un
ping produce un effetto in ampiezza che si attenua e svanisce e una
perturbazione in fase che non si recupera mai pi! Le linee blu sono
isocrone: se parto da punti che stanno su una stessa isocrona
arrivo sul ciclo nello stesso tempo *. Attenzione: le isocrone sono
unapprossimazione della dinamica non lineare. In realt dai punti
rosso e verde si giunge allorbita in un tempo infinito altrimenti
le traiettorie si intersecherebbero violando lunicit locale della
soluzione. 46
- Slide 47
- Milano, 17/18 gennaio 2013 Rumore di fase e rumore di ampiezza
negli oscillatori Se parto da isocrone diverse arrivo sullorbita in
tempi diversi e poi rimango sfasato per sempre! Nota importante:
recupero completamente la deviazione di ampiezza iniziale ma
leffetto sulla fase irreparabile! 47
- Slide 48
- gli effetti sullampiezza del ciclo delle (piccole)
perturbazioni (dovute a sorgenti di rumore) si attenuano quindi il
rumore di ampiezza non di grande interesse. Rumore di fase e rumore
di ampiezza negli oscillatori il ping perturba porta la traiettoria
lasciandola sulla stessa isocrona.
- Slide 49
- Rumore di fase e rumore di ampiezza negli oscillatori gli
effetti sulla fase del ciclo delle (piccole) perturbazioni (dovute
a sorgenti di rumore) potrebbero non attenuarsi mai pi!. il ping
perturba porta la traiettoria non spostandola dallattrattore ma
facendola scivolare sulle isocrone.
- Slide 50
- Milano, 17/18 gennaio 2013 Rumore di fase e rumore di ampiezza
negli oscillatori E possibile scomporre gli effetti totali di
rumore, ottenuti ad esempio mediante analisi periodiche di piccolo
segnale, in contributi in fase e contributi in ampiezza? La
risposta s e si deve passare attraverso una vecchia conoscenza: la
matrice di transizione di stato. Nel contesto della teoria dei
circuiti stata proposta una teoria allinizio degli anni 2000 da
Alper Demir et al. (e poi applicata/dettagliata da altri) che
permette di scomporre questi contributi. Si basa su metodi di
proiezione della perturbazione lungo un particolare vettore
tempovariante e, in realt, anche nei primi anni 2000 * non era del
tutto nuova perch in altri contesti (oscillatori pi in senso lato)
nota dal 1960 (Teorema di Malkin). Non entriamo in alcun tipo di
dettaglio ma si afferma soltanto che per ottenere il rumore di fase
necessario calcolare landamento temporale (in un periodo)
dellautofunzione sinistra (corrispondente al moltiplicatore
unitario) della matrice di transizione. A. Demir, A. Mehrotra, J.
Roychowdhury, Phase Noise in Oscillators: A Unified Theory and
Numerical Methods for Characterization, IEEE Transactions on
Circuits and Systems I: Fundamental Theory and Applications, vol.
47, No. 5, pp. 655--674, May 2000. 50
- Slide 51
- Milano, 17/18 gennaio 2013 in conclusione Matrice di
transizione elemento chiave per Analisi steady state Analisi di
piccolo segnale periodica Stabilit Rumore di fase Matrice di
transizione e modello variazionale Deve esistere la matrice
Jacobiana di f 51
- Slide 52
- Milano, 17/18 gennaio 2013 Cosa succede se La caratteristica
del resistore non lineare diventata piecewise smooth e possiamo
descrivere la dinamica del sistema facendo ricorso a 2 campi
vettoriali: Levento x 1 =0 governa lo switching tra i due campi
vettoriali e lo spazio di stato 2D partizionato dalla superficie
52
- Slide 53
- Milano, 17/18 gennaio 2013 Cosa succede se In corrispondenza
della commutazione del campo vettoriale, lo stato del sistema
continuo ma lo Jacobiano del sistema presenta una discontinuit.
Provo a fare una simulazione in transitorio cercando, durante
levoluzione dello stati il passaggio per zero della variabile x 1 e
regolando cos la commutazione tra i due campi vettoriali 53
- Slide 54
- Milano, 17/18 gennaio 2013 Cosa succede se Se prolunghiamo un
po lanalisi in transitorio e riportiamo lorbita ottenuta sul piano
di stato ci accorgiamo che c convergenza verso un orbita periodica,
come nel caso smooth. E possibile utilizzare il metodo di shooting
per ricavare lorbita di regime in modo efficace e avere a
disposizione il sistema variazionale che permetta tutte le
considerazioni fatte per i sistemi smooth? 54
- Slide 55
- Milano, 17/18 gennaio 2013 Cosa succede se Nel nostro caso,
purtroppo lo Jacobiano del sistema non definito ma non proprio
ovunque Vale ovunque tranne che per x 1 =0 Allora provo ad
applicare lalgoritmo di shooting e mi accorgo che 55
- Slide 56
- Milano, 17/18 gennaio 2013 Cosa succede se converge T= 6.3975 s
ma la matrice di monodromia sbagliata! 56
- Slide 57
- Milano, 17/18 gennaio 2013 Cosa succede se Il sistema switching
con lo Jacobiano non definito a cavallo della discontinuit del
campo vettoriale tale da permettere al metodo di shooting (basato
sul metodo di Newton) di convergere perch la discontinuit non
troppo accentuata In altre parole il metodo di Newton converge
perch lessere iterativo gli permette di correggere non solo le
condizioni iniziali ma anche piccoli errori dello Jacobiano.
(Esistono versioni astute del metodo di Newton che non ricalcolano
lo Jacobiano ad ogni iterazione ma solo quando si rendono conto che
la convergenza troppo lenta) Se vogliamo per estendere gli
strumenti cha abbiamo visto ai casi in cui lo Jacobiano non
definito dobbiamo fare qualcosa di pi 57
- Slide 58
- Sistemi dinamici ibridi I sistemi dinamici ibridi sono
costituiti da processi di evoluzione dinamica continui/discreti che
interagiscono con processi logici o decisionali Sistemi dinamici a
impatto Lo stato presenta discontinuit nel tempo Sistemi dinamici
switching Campo vettoriale discontinuo ma stato continuo (sistemi
di Filippov) (Sistemi con campo vettoriale continuo ma non
differenziabile) Milano, 17/18 gennaio 201358
- Slide 59
- 59 I sistemi dinamici ibridi sono costituiti da processi di
evoluzione dinamica continui/discreti che interagiscono con
processi logici o decisionali Processo di evoluzione dinamica
Processo logico decisionale Milano, 17/18 gennaio 2013 Sistemi
dinamici ibridi 59
- Slide 60
- Estensione per i sistemi ibridi della matrice di sensibilit
rispetto alle condizioni iniziali Piecewise smooth Ordinary
Differential Equations M. Di Bernardo, C. Budd, A. Champneys, and
P. Kowalczyk, Piecewise-smooth Dynamical Systems, Theory and
Applications. London: Springer-Verlag, 2008. Piecewise smooth
Differential Algebraic Equations F. Bizzarri, A. Brambilla, G.
Storti Gajani, Steady State Computation and Noise Analysis of
Analog Mixed Signal Circuits, IEEE Transactions on Circuits and
Systems I: Fundamental Theory and Applications, vol. 59, No. 3, pp.
541-554, March 2012. Milano, 17/18 gennaio 2013 Sistemi dinamici
ibridi 60
- Slide 61
- Saltation Matrix Regione 1 Campo vettoriale f 1 Regione 2 Campo
vettoriale f 2 Switching Manifold IC non perturbata IC perturbata
in t 1 t 0 in t Primo obiettivo al primordine. Secondo obiettivo al
primordine. Milano, 17/18 gennaio 201361
- Slide 62
- Saltation Matrix Il punto viola approssimato da unespansione
centrata nel punto blue approssimato da unespansione centrata nel
punto blue Il punto rosso approssimato da unespasione centrata nel
punto verde Milano, 17/18 gennaio 201362
- Slide 63
- Saltation Matrix Consideriamo adesso la linearizzazione del
manifold prima nel punto rosso e poi nel punto verde Milano, 17/18
gennaio 201363
- Slide 64
- Saltation Matrix Milano, 17/18 gennaio 201364
- Slide 65
- Saltation Matrix Saltation matrix S Milano, 17/18 gennaio
201365
- Slide 66
- Saltation Matrix switching e manifold tempo-variante Milano,
17/18 gennaio 201366
- Slide 67
- Saltation Matrix impatto e manifold tempo-variante Jacobiano
della funzione di mapping Milano, 17/18 gennaio 201367
- Slide 68
- Saltation Matrix Il caso completo (switching, impatto e
manifold tempo-variante) Milano, 17/18 gennaio 201368
- Slide 69
- Un oscillatore switching misto analogico digitale F. Bizzarri,
A. Brambilla, G. Storti Gajani, Extension of the variational
equation to analog/digital circuits: Numerical and experimental
validation, International Journal of Circuit Theory and
Applications, (published online) oct. 2012, DOI: 10.1002/cta.1864.
Milano, 17/18 gennaio 201369
- Slide 70
- Un oscillatore switching misto analogico digitale Milano, 17/18
gennaio 201370
- Slide 71
- Un oscillatore switching misto analogico digitale Simulazioni
numeriche Loscillatore stato simulato numericamente con un metodo
di shooting per determinarne lorbita di regime e il corrispondente
andamento temporale dellautofunzione v 1. Traiettoria di regime
Stato continuo ma non derivabile Autofunzione v 1 (t) Milano, 17/18
gennaio 201371
- Slide 72
- Un oscillatore switching misto analogico digitale Misure
sperimentali Loscillatore stato realizzato su breadboard ed stato
iniettato rumore bianco mediante un generatore di funzioni connesso
come un generatore di tensione in serie ad R4. Le misure sono state
effettuate ai capi di C1. Total noise simulato Total noise misurato
Phase noise Demir Total noise misurato Total noise Spectre Milano,
17/18 gennaio 201372
- Slide 73
- Type-II 3-state PFD PLL: un esempio pi complesso F. Bizzarri,
A. Brambilla, G. Storti Gajani, Periodic small signal analysis of a
wide class of type-II phase locked loops through an exhaustive
variational model, IEEE Transactions on Circuits and Systems I:
Fundamental Theory and Applications, vol. 59, No. 10, pp 2221 -
2231, October 2012. Un PLL (Phase-Locked Loop o Phase Lock Loop) un
sistema di controllo che genera un segnale in uscita la cui fase ha
un relazione ben precisa con quella di un segnale di riferimento in
ingresso. Un PLL un circuito elettronico composto da (composizione
minima) un oscillatore a frequenza variabile controllabile
tipicamente in tensione VCO (Voltage Controlled Oscillator) un
rivelatore di fase PD (Phase Detector) Il rivelatore di fase PD
confronta la fase del segnale di riferimento in ingresso con la
fase del segnale generato dal VCO e aggiusta la frequenza di
funzionamento di questultimo in modo da mantenere le due fasi
agganciate. Il segnale in uscita dal PD viene utilizzato quindi per
controllare loscillatore nellanello di retroazione. Milano, 17/18
gennaio 201373
- Slide 74
- Type-II 3-state PFD PLL: un esempio pi complesso Dal momento
che la frequenza la derivata della fase rispetto al tempo, se un
PLL in grado di agganciare due segnali in fase automaticamente li
aggancia anche in frequenza. Milano, 17/18 gennaio 2013 Le tipiche
applicazioni di un PLL sono quindi frequency synthesizer (pu
generare un segnale in uscita che ha una frequenza multipla di
quella del segnale di riferimento) demodulation ( in grado di fare
il tracking di una frequenza in ingresso e quindi demodulare
eventuali contenuti informativi modulati in essa) Esistono diversi
approcci per la simulazione di un PLL che spesso si rifanno alla
definizione di macro-modelli in grado di cogliere le
caratteristiche salienti del funzionamento del circuito ma che
perdono totalmente (o quasi) il legame con la tecnologia dei
componenti reali (transistor) che vengono utilizzati per realizzare
il PLL. 74
- Slide 75
- Milano, 17/18 gennaio 2013 Type-II 3-state PFD PLL: un esempio
pi complesso DigitalAnalog CP: Charge Pump (pompa di carica).
Converte luscita logica del PFD in un segnale analogico in grado di
controllare il VCO. LPF: Low Pass Filter (filtro passa basso).
Serve per ridurre il ripple in uscita dalla CP dovuto al fatto che
pilotata da segnali con fronti molto bruschi. ID: Integer Divider
(divisore intero). Fa s che il PFD analizzi la posizione relativa
tra i due segnali ingresso e uscita al PLL ogni N ID cicli del VCO.
Unarchitettura mista analogica digitale 75
- Slide 76
- Milano, 17/18 gennaio 2013 Type-II 3-state PFD PLL: un esempio
pi complesso Unarchitettura mista analogica digitale Ipotesi: un
segnale positivo in uscita da CP accelera il VCO (viceversa uno
negativo) Stato S1 : U=0 e D=1 il VCO viene decelerato Stato S3 :
U=1 e D=0 il VCO viene accelerato Stato S2 : U=0 e D=0 il VCO
mantiene la frequenza imposta dal segnale in uscita dal LPF PFD
viene modellato come una macchina a stati Fronte di salita del
segnale di riferimento Fronte di salita del segnale generato dal
VCO Quanto il PLL in aggancio il PFD si trova in S2 76
- Slide 77
- DigitalAnalog Dinamica della parte analogicaDinamica della
parte digitale con il divisore intero di frequenza. Assumiamo N ID
=1. Type-II 3-state PFD PLL: un esempio pi complesso Milano, 17/18
gennaio 201377
- Slide 78
- Sistema variazionale associato al modello della PLL Questo
blocco esprime la sensibilit delle x F rispetto alle x V ed nullo
il modello variazionale errato! Il modello variazionale cos
ottenuto non risente della parte digitale del circuito come
possiamo inserirla? Type-II 3-state PFD PLL: un esempio pi
complesso Milano, 17/18 gennaio 201378
- Slide 79
- s REF (t, ) = s REF (2 f REF t+ ) Type-II 3-state PFD PLL: un
esempio pi complesso Milano, 17/18 gennaio 201379
- Slide 80
- s REF (t, ) = s REF (2 f REF t+ ) La frequenza di lavoro del
VCO controllata da una combinazione lineare delle variabili di
stato x F di LPF f VCO = f VCO ( T x F ) f VCO ( T x F ) = N ID f
REF Type-II 3-state PFD PLL: un esempio pi complesso Milano, 17/18
gennaio 201380
- Slide 81
- s REF (t, ) = s REF (2 f REF t+ ) La frequenza di lavoro del
VCO controllata da una combinazione lineare delle variabili di
stato x F di LPF f VCO = f VCO ( T x F ) f VCO ( T x F ) = f REF La
macchina digitale sia sensibile ai passaggi per lo zero di s REF e
s VCO e definiamo quindi due superfici luogo delle commutazioni del
PFD h REF (x F, x V,, t) s REF (t, ) = 0 h VCO (x F, x V,, t) s VCO
(x V ) = 0 Type-II 3-state PFD PLL: un esempio pi complesso Milano,
17/18 gennaio 201381
- Slide 82
- Type-II 3-state PFD PLL: un esempio pi complesso Milano, 17/18
gennaio 201382
- Slide 83
- Milano, 17/18 gennaio 201383
- Slide 84
- Una volta specificati i manifold h REF (x F, x V,, t) s REF (t,
) = 0 h VCO (x F, x V,, t) s VCO (x V ) = 0 possiamo calcolare
facilmente le Saltation Matrices in P 1, P 2, P 3 e P 4. Type-II
3-state PFD PLL: un esempio pi complesso Milano, 17/18 gennaio
201384
- Slide 85
- Type-II 3-state PFD PLL: un esempio pi complesso Milano, 17/18
gennaio 201385
- Slide 86
- Type-II 3-state PFD PLL Milano, 17/18 gennaio 201386
- Slide 87
- Type-II 3-state PFD PLL Milano, 17/18 gennaio 201387
- Slide 88
- Type-II 3-state PFD PLL Cosa accade lungo lorbita che si
proietta in C 0 ? lungo questorbita la pompa di carica non si
accende mai e quindi I(U, D) = 0 sembra quindi che il campo
vettoriale non abbia discontinuit e si possa utilizzare il modello
variazionale presentato prima che origina la seguente matrice di
transizione: Milano, 17/18 gennaio 201388
- Slide 89
- Type-II 3-state PFD PLL Questa matrice tuttavia sbagliata perch
considera la PLL come se fosse in anello aperto. P 0 il punto in
cui collassano P 1 e P 2 oppure P 3 e P 4 si pu verificare
facilmente che se P 1 P 2 e P 3 P 4 allora S(P 1 ) S(P 2 ) = S(P 3
) S(P 4 ) = S PLL S PLL dipende da istante in cui la traiettoria
passa per P 0 espressione dei manifold di switch dal campo
vettoriale S PLL dipende Milano, 17/18 gennaio 201389
- Slide 90
- Risultati numerici (MATLAB ) Identifico un modello semplificato
equivalente ignorando tutti i parassiti e facendo un fitting della
caratteristica driving point Voltage Controlled Linear Capacitor
Caratteristica polinomiale di ordine 7 Milano, 17/18 gennaio
201390
- Slide 91
- Risultati numerici (MATLAB ) Milano, 17/18 gennaio 201391
- Slide 92
- Risultati numerici (MATLAB ) Sweep Analysis: variando x F1 per
trovare f VCO ( x F1 )= 12220 MHz Se x F1 = x F2 il filtro in
equilibrio Simulazione VCO isolato da t 0 = 0 fino a trovare
listante t * in cui x V1 passa per 0 con derivata negativa Scelgo *
tale che s REF ( t *, * ) = 0 con derivata negativa In t * VCO e
segnale di riferimento sono sincroni e quindi per tutto T REF la
pompa di carica rimane spenta Milano, 17/18 gennaio 201392
- Slide 93
- Risultati numerici (ambiente MATLAB ) Da t 0 a t * la pompa di
carica non interviene e quindi uso il modello variazionale della
PLL in anello aperto Milano, 17/18 gennaio 201393
- Slide 94
- Risultati numerici (ambiente MATLAB ) In t * inserisco la
Saltation Matrix S PLL che simula leffetto dellinserimento del PFD
e della CP. Lascia inalterata la traiettoria di regime ma corregge
opportunamente la matrice di transizione che pu essere cos usata
nella PAC e PNOISE. Milano, 17/18 gennaio 201394
- Slide 95
- Risultati numerici (MATLAB ) In t * inserisco usando la
Saltation Matrix SPLL che simula leffetto dellinserimento del PFD e
della CP. Lascia inalterata la traiettoria di regime ma corregge
opportunamente la matrice di transizione che pu essere cos usata
nella PAC e PNOISE. Milano, 17/18 gennaio 201395
- Slide 96
- Risultati numerici (MATLAB ) Inietto una corrente (piccolo
segnale periodico) su C0 e misuro leffetto su x F1. PAC estesa con
Saltation Matrix Risultati ottenuti con una AMS Transient Analysis
con simulatore circuitale Spettro di x F1 in dB Normalizzato
rispetto alla perturbazione Milano, 17/18 gennaio 201396
- Slide 97
- Risultati numerici (MATLAB ) Inietto una corrente (piccolo
segnale periodico su C0 e misuro leffetto su x V1. Spettro di x V1
in dB Normalizzato rispetto alla perturbazione PAC estesa con
Saltation Matrix Risultati ottenuti con una AMS Transient Analysis
con simulatore circuitale VCO in anello aperto Milano, 17/18
gennaio 201397
- Slide 98
- Risultati numerici (MATLAB ) Dal modello lineare della PLL x F1
(t) Milano, 17/18 gennaio 201398
- Slide 99
- PAN: a general purpose circuit simulator Milano, 17/18 gennaio
2013 http://brambilla.ws.dei.polimi.it/ E un simulatore circuitale
SPICE like scaricabile, usabile e con tanti esempi da provare senza
manuale (per ora!). E un concorrente reale dei maggiori simulatori
industriali (ELDO di Mentor Graphics e SPECTRE di Cadence) e, tra
le molte cose che in grado di fare, contiene metodi numerici basati
sulluso della Saltation Matrix. Tutto ci che vi ho fatto vedere non
appare allutente come un incubo matematico ma del tutto nascosto
anche la definizione dei manifold! 99
- Slide 100
- Risultati numerici (simulatore circuitale PAN) Milano, 17/18
gennaio 2013100
- Slide 101 VDD/2 ? -IP : 0 i2 ww gnd down gnd vccs func=v(down)
> VDD/2 ? IP*1.2 : 0 vpump ww w vsource ; Output filter
parameters C0=10pF C1=100pF R1=50K IP=15uA c1 w gnd capacitor c=C0
icon=0 r1 w rc resistor r=R1 c2 rc gnd capacitor c=C1 icon=0 ipac w
gnd isource pacmag=1 ; Vco xlim tune gnd w vcvs
func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd tune VCO Vdd vdd gnd
vsource vdc=VDD model MP mos2 type=p kp=80u vt0=-0.5 lambda=10m
model MN mos2 type=n kp=200u vt0= 0.5 lambda=10m subckt VCO x1 vdd
gnd tune globalnets=no In1 x1 x2 vdd gnd tune INV IC=1 In2 x2 x3
vdd gnd tune INV In3 x3 x1 vdd gnd tune INV Pn x2 gnd port
noise=10*log10(1.66e-20*1M^2)+30 r=1M ends subckt INV in out vdd
gnd vc globalnets=no parameters IC=0 DELTA_C=8pF C0=20pF K=3 Mp out
in vdd vdd MP w=100u l=1u Mn out in gnd gnd MN w=40u l=1u Cp out z1
capacitor c=C0 ic=IC Xcp1 z2 gnd z1 vc ccvs gain1=1 Xcp out vc z2
vccs func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include "
Ndiv.v" verilog_include "Ndiv.v Risultati numerici (simulatore
circuitale PAN) ; Vco xlim tune gnd w vcvs
func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd tune VCO Vdd vdd gnd
vsource vdc=VDD model MP mos2 type=p kp=80u vt0=-0.5 lambda=10m
model MN mos2 type=n kp=200u vt0= 0.5 lambda=10m subckt VCO x1 vdd
gnd tune globalnets=no In1 x1 x2 vdd gnd tune INV IC=1 In2 x2 x3
vdd gnd tune INV In3 x3 x1 vdd gnd tune INV Pn x2 gnd port
noise=10*log10(1.66e-20*1M^2)+30 r=1M ends subckt INV in out vdd
gnd vc globalnets=no parameters IC=0 DELTA_C=8pF C0=20pF K=3 Mp out
in vdd vdd MP w=100u l=1u Mn out in gnd gnd MN w=40u l=1u Cp out z1
capacitor c=C0 ic=IC Xcp1 z2 gnd z1 vc ccvs gain1=1 Xcp out vc z2
vccs func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends Milano, 17/18 gennaio
2013101">
- ground electrical gnd ; Analyses parameters parameters N=48
FVCO=53M FREF=FVCO/N PERIOD=1/FREF TSTOP=80u VDD=2.5 Tran0 tran
tstop=TSTOP+2*PERIOD tmax=0.01/FVCO tmin=100f uic=1 cmin=0 method=2
order=6 Sh shooting fund=FREF solver=4 method=2 order=6 floquet=yes
restart=no tmax=0.1m/FREF cmin=0 eabstol=0.1m fft=no fftharms=1024
annotate=3 + 0x20 PnX pnoise onodes=["x"] annotate=3 harms=140
refh=N freq=[1M,500k,100k,10k,1k,100] ; Reset PFD vres_n res_n gnd
vsource t=0 v=0 t=PERIOD v=0 t=PERIOD+10p v=VDD t=2*TSTOP v=VDD ;
Reset divider vres_c res_c gnd vsource t=0 v=0 t=10/FVCO v=0
t=10/FVCO+10p v=VDD t=2*TSTOP v=VDD ; Reference signal vin ref gnd
vsource v1=0 v2=VDD td=1n tr=1n tf=1n width=PERIOD/2 period=PERIOD
; Division factor vn n gnd vsource vdc=N/2 xn n gnd a2d
dignet="pd.HalfN" ; Interface to the digital phase detector. The
phase detector is described with Verilog x1 ref gnd a2d
dignet="pd.ref" vl= 0.40*VDD vh=0.60*VDD x2 x gnd a2d
dignet="pd.fb" vl=-0.01*VDD+VDD/2 vh=0.01*VDD+VDD/2 x3 res_n gnd
a2d dignet="pd.res_n" vl= 0.40*VDD vh=0.60*VDD x4 res_c gnd a2d
dignet="pd.res_c" vl= 0.40*VDD vh=0.60*VDD x5 up gnd d2a
dignet="pd.up" vl=0 vh=VDD x6 down gnd d2a dignet="pd.down" vl=0
vh=VDD ; Charge pump i1 ww gnd up gnd vccs func=v(up) > VDD/2 ?
-IP : 0 i2 ww gnd down gnd vccs func=v(down) > VDD/2 ? IP*1.2 :
0 vpump ww w vsource ; Output filter parameters C0=10pF C1=100pF
R1=50K IP=15uA c1 w gnd capacitor c=C0 icon=0 r1 w rc resistor r=R1
c2 rc gnd capacitor c=C1 icon=0 ipac w gnd isource pacmag=1 ; Vco
xlim tune gnd w vcvs func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd
tune VCO Vdd vdd gnd vsource vdc=VDD model MP mos2 type=p kp=80u
vt0=-0.5 lambda=10m model MN mos2 type=n kp=200u vt0= 0.5
lambda=10m subckt VCO x1 vdd gnd tune globalnets=no In1 x1 x2 vdd
gnd tune INV IC=1 In2 x2 x3 vdd gnd tune INV In3 x3 x1 vdd gnd tune
INV Pn x2 gnd port noise=10*log10(1.66e-20*1M^2)+30 r=1M ends
subckt INV in out vdd gnd vc globalnets=no parameters IC=0
DELTA_C=8pF C0=20pF K=3 Mp out in vdd vdd MP w=100u l=1u Mn out in
gnd gnd MN w=40u l=1u Cp out z1 capacitor c=C0 ic=IC Xcp1 z2 gnd z1
vc ccvs gain1=1 Xcp out vc z2 vccs
func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include " Ndiv.v"
verilog_include "Ndiv.v Risultati numerici (simulatore circuitale
PAN) ; Vco xlim tune gnd w vcvs func=min(VDD,max(0,VDD/2-v(w))) osc
x vdd gnd tune VCO Vdd vdd gnd vsource vdc=VDD model MP mos2 type=p
kp=80u vt0=-0.5 lambda=10m model MN mos2 type=n kp=200u vt0= 0.5
lambda=10m subckt VCO x1 vdd gnd tune globalnets=no In1 x1 x2 vdd
gnd tune INV IC=1 In2 x2 x3 vdd gnd tune INV In3 x3 x1 vdd gnd tune
INV Pn x2 gnd port noise=10*log10(1.66e-20*1M^2)+30 r=1M ends
subckt INV in out vdd gnd vc globalnets=no parameters IC=0
DELTA_C=8pF C0=20pF K=3 Mp out in vdd vdd MP w=100u l=1u Mn out in
gnd gnd MN w=40u l=1u Cp out z1 capacitor c=C0 ic=IC Xcp1 z2 gnd z1
vc ccvs gain1=1 Xcp out vc z2 vccs
func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends Milano, 17/18 gennaio
2013101
- Slide 102 VDD/2 ? -IP : 0 i2 ww gnd down gnd vccs func=v(down)
> VDD/2 ? IP*1.2 : 0 vpump ww w vsource ; Output filter
parameters C0=10pF C1=100pF R1=50K IP=15uA c1 w gnd capacitor c=C0
icon=0 r1 w rc resistor r=R1 c2 rc gnd capacitor c=C1 icon=0 ipac w
gnd isource pacmag=1 ; Vco xlim tune gnd w vcvs
func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd tune VCO Vdd vdd gnd
vsource vdc=VDD model MP mos2 type=p kp=80u vt0=-0.5 lambda=10m
model MN mos2 type=n kp=200u vt0= 0.5 lambda=10m subckt VCO x1 vdd
gnd tune globalnets=no In1 x1 x2 vdd gnd tune INV IC=1 In2 x2 x3
vdd gnd tune INV In3 x3 x1 vdd gnd tune INV Pn x2 gnd port
noise=10*log10(1.66e-20*1M^2)+30 r=1M ends subckt INV in out vdd
gnd vc globalnets=no parameters IC=0 DELTA_C=8pF C0=20pF K=3 Mp out
in vdd vdd MP w=100u l=1u Mn out in gnd gnd MN w=40u l=1u Cp out z1
capacitor c=C0 ic=IC Xcp1 z2 gnd z1 vc ccvs gain1=1 Xcp out vc z2
vccs func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include "
Ndiv.v" verilog_include "Ndiv.v Risultati numerici (simulatore
circuitale PAN) ; Charge pump i1 ww gnd up gnd vccs func=v(up) >
VDD/2 ? -IP : 0 i2 ww gnd down gnd vccs func=v(down) > VDD/2 ?
IP*1.2 : 0 vpump ww w vsource ; Output filter parameters C0=10pF
C1=100pF R1=50K IP=15uA c1 w gnd capacitor c=C0 icon=0 r1 w rc
resistor r=R1 c2 rc gnd capacitor c=C1 icon=0 ipac w gnd isource
pacmag=1 Milano, 17/18 gennaio 2013102">
- ground electrical gnd ; Analyses parameters parameters N=48
FVCO=53M FREF=FVCO/N PERIOD=1/FREF TSTOP=80u VDD=2.5 Tran0 tran
tstop=TSTOP+2*PERIOD tmax=0.01/FVCO tmin=100f uic=1 cmin=0 method=2
order=6 Sh shooting fund=FREF solver=4 method=2 order=6 floquet=yes
restart=no tmax=0.1m/FREF cmin=0 eabstol=0.1m fft=no fftharms=1024
annotate=3 + 0x20 PnX pnoise onodes=["x"] annotate=3 harms=140
refh=N freq=[1M,500k,100k,10k,1k,100] ; Reset PFD vres_n res_n gnd
vsource t=0 v=0 t=PERIOD v=0 t=PERIOD+10p v=VDD t=2*TSTOP v=VDD ;
Reset divider vres_c res_c gnd vsource t=0 v=0 t=10/FVCO v=0
t=10/FVCO+10p v=VDD t=2*TSTOP v=VDD ; Reference signal vin ref gnd
vsource v1=0 v2=VDD td=1n tr=1n tf=1n width=PERIOD/2 period=PERIOD
; Division factor vn n gnd vsource vdc=N/2 xn n gnd a2d
dignet="pd.HalfN" ; Interface to the digital phase detector. The
phase detector is described with Verilog x1 ref gnd a2d
dignet="pd.ref" vl= 0.40*VDD vh=0.60*VDD x2 x gnd a2d
dignet="pd.fb" vl=-0.01*VDD+VDD/2 vh=0.01*VDD+VDD/2 x3 res_n gnd
a2d dignet="pd.res_n" vl= 0.40*VDD vh=0.60*VDD x4 res_c gnd a2d
dignet="pd.res_c" vl= 0.40*VDD vh=0.60*VDD x5 up gnd d2a
dignet="pd.up" vl=0 vh=VDD x6 down gnd d2a dignet="pd.down" vl=0
vh=VDD ; Charge pump i1 ww gnd up gnd vccs func=v(up) > VDD/2 ?
-IP : 0 i2 ww gnd down gnd vccs func=v(down) > VDD/2 ? IP*1.2 :
0 vpump ww w vsource ; Output filter parameters C0=10pF C1=100pF
R1=50K IP=15uA c1 w gnd capacitor c=C0 icon=0 r1 w rc resistor r=R1
c2 rc gnd capacitor c=C1 icon=0 ipac w gnd isource pacmag=1 ; Vco
xlim tune gnd w vcvs func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd
tune VCO Vdd vdd gnd vsource vdc=VDD model MP mos2 type=p kp=80u
vt0=-0.5 lambda=10m model MN mos2 type=n kp=200u vt0= 0.5
lambda=10m subckt VCO x1 vdd gnd tune globalnets=no In1 x1 x2 vdd
gnd tune INV IC=1 In2 x2 x3 vdd gnd tune INV In3 x3 x1 vdd gnd tune
INV Pn x2 gnd port noise=10*log10(1.66e-20*1M^2)+30 r=1M ends
subckt INV in out vdd gnd vc globalnets=no parameters IC=0
DELTA_C=8pF C0=20pF K=3 Mp out in vdd vdd MP w=100u l=1u Mn out in
gnd gnd MN w=40u l=1u Cp out z1 capacitor c=C0 ic=IC Xcp1 z2 gnd z1
vc ccvs gain1=1 Xcp out vc z2 vccs
func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include " Ndiv.v"
verilog_include "Ndiv.v Risultati numerici (simulatore circuitale
PAN) ; Charge pump i1 ww gnd up gnd vccs func=v(up) > VDD/2 ?
-IP : 0 i2 ww gnd down gnd vccs func=v(down) > VDD/2 ? IP*1.2 :
0 vpump ww w vsource ; Output filter parameters C0=10pF C1=100pF
R1=50K IP=15uA c1 w gnd capacitor c=C0 icon=0 r1 w rc resistor r=R1
c2 rc gnd capacitor c=C1 icon=0 ipac w gnd isource pacmag=1 Milano,
17/18 gennaio 2013102
- Slide 103 VDD/2 ? -IP : 0 i2 ww gnd down gnd vccs func=v(down)
> VDD/2 ? IP*1.2 : 0 vpump ww w vsource ; Output filter
parameters C0=10pF C1=100pF R1=50K IP=15uA c1 w gnd capacitor c=C0
icon=0 r1 w rc resistor r=R1 c2 rc gnd capacitor c=C1 icon=0 ipac w
gnd isource pacmag=1 ; Vco xlim tune gnd w vcvs
func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd tune VCO Vdd vdd gnd
vsource vdc=VDD model MP mos2 type=p kp=80u vt0=-0.5 lambda=10m
model MN mos2 type=n kp=200u vt0= 0.5 lambda=10m subckt VCO x1 vdd
gnd tune globalnets=no In1 x1 x2 vdd gnd tune INV IC=1 In2 x2 x3
vdd gnd tune INV In3 x3 x1 vdd gnd tune INV Pn x2 gnd port
noise=10*log10(1.66e-20*1M^2)+30 r=1M ends subckt INV in out vdd
gnd vc globalnets=no parameters IC=0 DELTA_C=8pF C0=20pF K=3 Mp out
in vdd vdd MP w=100u l=1u Mn out in gnd gnd MN w=40u l=1u Cp out z1
capacitor c=C0 ic=IC Xcp1 z2 gnd z1 vc ccvs gain1=1 Xcp out vc z2
vccs func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include "
Ndiv.v" verilog_include "Ndiv.v Risultati numerici (simulatore
circuitale PAN) ; verilog_include " Ndiv.v" verilog_include "Ndiv.v
; Interface to the digital phase detector. The phase detector is
described with Verilog x1 ref gnd a2d dignet="pd.ref" vl= 0.40*VDD
vh=0.60*VDD x2 x gnd a2d dignet="pd.fb" vl=-0.01*VDD+VDD/2
vh=0.01*VDD+VDD/2 x3 res_n gnd a2d dignet="pd.res_n" vl= 0.40*VDD
vh=0.60*VDD x4 res_c gnd a2d dignet="pd.res_c" vl= 0.40*VDD
vh=0.60*VDD x5 up gnd d2a dignet="pd.up" vl=0 vh=VDD x6 down gnd
d2a dignet="pd.down" vl=0 vh=VDD ; Analyses parameters parameters
N=48 FVCO=53M FREF=FVCO/N PERIOD=1/FREF TSTOP=80u VDD=2.5 Tran0
tran tstop=TSTOP+2*PERIOD tmax=0.01/FVCO tmin=100f uic=1 cmin=0
method=2 order=6 Sh shooting fund=FREF solver=4 method=2 order=6
floquet=yes restart=no tmax=0.1m/FREF cmin=0 eabstol=0.1m fft=no
fftharms=1024 annotate=3 + 0x20 PnX pnoise onodes=["x"] annotate=3
harms=140 refh=N freq=[1M,500k,100k,10k,1k,100] Milano, 17/18
gennaio 2013103">
- ground electrical gnd ; Analyses parameters parameters N=48
FVCO=53M FREF=FVCO/N PERIOD=1/FREF TSTOP=80u VDD=2.5 Tran0 tran
tstop=TSTOP+2*PERIOD tmax=0.01/FVCO tmin=100f uic=1 cmin=0 method=2
order=6 Sh shooting fund=FREF solver=4 method=2 order=6 floquet=yes
restart=no tmax=0.1m/FREF cmin=0 eabstol=0.1m fft=no fftharms=1024
annotate=3 + 0x20 PnX pnoise onodes=["x"] annotate=3 harms=140
refh=N freq=[1M,500k,100k,10k,1k,100] ; Reset PFD vres_n res_n gnd
vsource t=0 v=0 t=PERIOD v=0 t=PERIOD+10p v=VDD t=2*TSTOP v=VDD ;
Reset divider vres_c res_c gnd vsource t=0 v=0 t=10/FVCO v=0
t=10/FVCO+10p v=VDD t=2*TSTOP v=VDD ; Reference signal vin ref gnd
vsource v1=0 v2=VDD td=1n tr=1n tf=1n width=PERIOD/2 period=PERIOD
; Division factor vn n gnd vsource vdc=N/2 xn n gnd a2d
dignet="pd.HalfN" ; Interface to the digital phase detector. The
phase detector is described with Verilog x1 ref gnd a2d
dignet="pd.ref" vl= 0.40*VDD vh=0.60*VDD x2 x gnd a2d
dignet="pd.fb" vl=-0.01*VDD+VDD/2 vh=0.01*VDD+VDD/2 x3 res_n gnd
a2d dignet="pd.res_n" vl= 0.40*VDD vh=0.60*VDD x4 res_c gnd a2d
dignet="pd.res_c" vl= 0.40*VDD vh=0.60*VDD x5 up gnd d2a
dignet="pd.up" vl=0 vh=VDD x6 down gnd d2a dignet="pd.down" vl=0
vh=VDD ; Charge pump i1 ww gnd up gnd vccs func=v(up) > VDD/2 ?
-IP : 0 i2 ww gnd down gnd vccs func=v(down) > VDD/2 ? IP*1.2 :
0 vpump ww w vsource ; Output filter parameters C0=10pF C1=100pF
R1=50K IP=15uA c1 w gnd capacitor c=C0 icon=0 r1 w rc resistor r=R1
c2 rc gnd capacitor c=C1 icon=0 ipac w gnd isource pacmag=1 ; Vco
xlim tune gnd w vcvs func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd
tune VCO Vdd vdd gnd vsource vdc=VDD model MP mos2 type=p kp=80u
vt0=-0.5 lambda=10m model MN mos2 type=n kp=200u vt0= 0.5
lambda=10m subckt VCO x1 vdd gnd tune globalnets=no In1 x1 x2 vdd
gnd tune INV IC=1 In2 x2 x3 vdd gnd tune INV In3 x3 x1 vdd gnd tune
INV Pn x2 gnd port noise=10*log10(1.66e-20*1M^2)+30 r=1M ends
subckt INV in out vdd gnd vc globalnets=no parameters IC=0
DELTA_C=8pF C0=20pF K=3 Mp out in vdd vdd MP w=100u l=1u Mn out in
gnd gnd MN w=40u l=1u Cp out z1 capacitor c=C0 ic=IC Xcp1 z2 gnd z1
vc ccvs gain1=1 Xcp out vc z2 vccs
func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include " Ndiv.v"
verilog_include "Ndiv.v Risultati numerici (simulatore circuitale
PAN) ; verilog_include " Ndiv.v" verilog_include "Ndiv.v ;
Interface to the digital phase detector. The phase detector is
described with Verilog x1 ref gnd a2d dignet="pd.ref" vl= 0.40*VDD
vh=0.60*VDD x2 x gnd a2d dignet="pd.fb" vl=-0.01*VDD+VDD/2
vh=0.01*VDD+VDD/2 x3 res_n gnd a2d dignet="pd.res_n" vl= 0.40*VDD
vh=0.60*VDD x4 res_c gnd a2d dignet="pd.res_c" vl= 0.40*VDD
vh=0.60*VDD x5 up gnd d2a dignet="pd.up" vl=0 vh=VDD x6 down gnd
d2a dignet="pd.down" vl=0 vh=VDD ; Analyses parameters parameters
N=48 FVCO=53M FREF=FVCO/N PERIOD=1/FREF TSTOP=80u VDD=2.5 Tran0
tran tstop=TSTOP+2*PERIOD tmax=0.01/FVCO tmin=100f uic=1 cmin=0
method=2 order=6 Sh shooting fund=FREF solver=4 method=2 order=6
floquet=yes restart=no tmax=0.1m/FREF cmin=0 eabstol=0.1m fft=no
fftharms=1024 annotate=3 + 0x20 PnX pnoise onodes=["x"] annotate=3
harms=140 refh=N freq=[1M,500k,100k,10k,1k,100] Milano, 17/18
gennaio 2013103
- Slide 104 VDD/2 ? -IP : 0 i2 ww gnd down gnd vccs func=v(down)
> VDD/2 ? IP*1.2 : 0 vpump ww w vsource ; Output filter
parameters C0=10pF C1=100pF R1=50K IP=15uA c1 w gnd capacitor c=C0
icon=0 r1 w rc resistor r=R1 c2 rc gnd capacitor c=C1 icon=0 ipac w
gnd isource pacmag=1 ; Vco xlim tune gnd w vcvs
func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd tune VCO Vdd vdd gnd
vsource vdc=VDD model MP mos2 type=p kp=80u vt0=-0.5 lambda=10m
model MN mos2 type=n kp=200u vt0= 0.5 lambda=10m subckt VCO x1 vdd
gnd tune globalnets=no In1 x1 x2 vdd gnd tune INV IC=1 In2 x2 x3
vdd gnd tune INV In3 x3 x1 vdd gnd tune INV Pn x2 gnd port
noise=10*log10(1.66e-20*1M^2)+30 r=1M ends subckt INV in out vdd
gnd vc globalnets=no parameters IC=0 DELTA_C=8pF C0=20pF K=3 Mp out
in vdd vdd MP w=100u l=1u Mn out in gnd gnd MN w=40u l=1u Cp out z1
capacitor c=C0 ic=IC Xcp1 z2 gnd z1 vc ccvs gain1=1 Xcp out vc z2
vccs func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include "
Ndiv.v" verilog_include "Ndiv.v Risultati numerici (simulatore
circuitale PAN) ; verilog_include " Ndiv.v" verilog_include "Ndiv.v
`timescale 10ps/1ps `delay_mode_path module pd (up, down); output
up, down; reg res_n; reg res_c; reg up, down; reg reset; reg ref,
fb, fbx; reg [15:0] Count; reg [15:0] HalfN; initial begin reset =
0; up = 0; down = 0; res_c = 0; res_n = 0; fb = 0; fbx = 0; end
always @(posedge fb or !res_c) begin if( !res_c ) Count = 0; else
begin Count = Count + 1; if(Count >= HalfN || HalfN == 0) begin
Count = 0; fbx = !fbx; end always @(posedge ref or posedge reset or
!res_n) begin if (reset | !res_n) up = 0; else up = 1; end always
@(posedge fbx or posedge reset or !res_n) begin if (reset | !res_n)
down = 0; else down = 1; end always @(up or down) begin if (up
& down) begin #2 reset = 1; #2 reset = 0; end always @ (!res_n)
reset = !res_n; endmodule Milano, 17/18 gennaio 2013104">
- ground electrical gnd ; Analyses parameters parameters N=48
FVCO=53M FREF=FVCO/N PERIOD=1/FREF TSTOP=80u VDD=2.5 Tran0 tran
tstop=TSTOP+2*PERIOD tmax=0.01/FVCO tmin=100f uic=1 cmin=0 method=2
order=6 Sh shooting fund=FREF solver=4 method=2 order=6 floquet=yes
restart=no tmax=0.1m/FREF cmin=0 eabstol=0.1m fft=no fftharms=1024
annotate=3 + 0x20 PnX pnoise onodes=["x"] annotate=3 harms=140
refh=N freq=[1M,500k,100k,10k,1k,100] ; Reset PFD vres_n res_n gnd
vsource t=0 v=0 t=PERIOD v=0 t=PERIOD+10p v=VDD t=2*TSTOP v=VDD ;
Reset divider vres_c res_c gnd vsource t=0 v=0 t=10/FVCO v=0
t=10/FVCO+10p v=VDD t=2*TSTOP v=VDD ; Reference signal vin ref gnd
vsource v1=0 v2=VDD td=1n tr=1n tf=1n width=PERIOD/2 period=PERIOD
; Division factor vn n gnd vsource vdc=N/2 xn n gnd a2d
dignet="pd.HalfN" ; Interface to the digital phase detector. The
phase detector is described with Verilog x1 ref gnd a2d
dignet="pd.ref" vl= 0.40*VDD vh=0.60*VDD x2 x gnd a2d
dignet="pd.fb" vl=-0.01*VDD+VDD/2 vh=0.01*VDD+VDD/2 x3 res_n gnd
a2d dignet="pd.res_n" vl= 0.40*VDD vh=0.60*VDD x4 res_c gnd a2d
dignet="pd.res_c" vl= 0.40*VDD vh=0.60*VDD x5 up gnd d2a
dignet="pd.up" vl=0 vh=VDD x6 down gnd d2a dignet="pd.down" vl=0
vh=VDD ; Charge pump i1 ww gnd up gnd vccs func=v(up) > VDD/2 ?
-IP : 0 i2 ww gnd down gnd vccs func=v(down) > VDD/2 ? IP*1.2 :
0 vpump ww w vsource ; Output filter parameters C0=10pF C1=100pF
R1=50K IP=15uA c1 w gnd capacitor c=C0 icon=0 r1 w rc resistor r=R1
c2 rc gnd capacitor c=C1 icon=0 ipac w gnd isource pacmag=1 ; Vco
xlim tune gnd w vcvs func=min(VDD,max(0,VDD/2-v(w))) osc x vdd gnd
tune VCO Vdd vdd gnd vsource vdc=VDD model MP mos2 type=p kp=80u
vt0=-0.5 lambda=10m model MN mos2 type=n kp=200u vt0= 0.5
lambda=10m subckt VCO x1 vdd gnd tune globalnets=no In1 x1 x2 vdd
gnd tune INV IC=1 In2 x2 x3 vdd gnd tune INV In3 x3 x1 vdd gnd tune
INV Pn x2 gnd port noise=10*log10(1.66e-20*1M^2)+30 r=1M ends
subckt INV in out vdd gnd vc globalnets=no parameters IC=0
DELTA_C=8pF C0=20pF K=3 Mp out in vdd vdd MP w=100u l=1u Mn out in
gnd gnd MN w=40u l=1u Cp out z1 capacitor c=C0 ic=IC Xcp1 z2 gnd z1
vc ccvs gain1=1 Xcp out vc z2 vccs
func=DELTA_C/C0*atan(K*v(vc))*v(z2) ends ;verilog_include " Ndiv.v"
verilog_include "Ndiv.v Risultati numerici (simulatore circuitale
PAN) ; verilog_include " Ndiv.v" verilog_include "Ndiv.v `timescale
10ps/1ps `delay_mode_path module pd (up, down); output up, down;
reg res_n; reg res_c; reg up, down; reg reset; reg ref, fb, fbx;
reg [15:0] Count; reg [15:0] HalfN; initial begin reset = 0; up =
0; down = 0; res_c = 0; res_n = 0; fb = 0; fbx = 0; end always
@(posedge fb or !res_c) begin if( !res_c ) Count = 0; else begin
Count = Count + 1; if(Count >= HalfN || HalfN == 0) begin Count
= 0; fbx = !fbx; end always @(posedge ref or posedge reset or
!res_n) begin if (reset | !res_n) up = 0; else up = 1; end always
@(posedge fbx or posedge reset or !res_n) begin if (reset | !res_n)
down = 0; else down = 1; end always @(up or down) begin if (up
& down) begin #2 reset = 1; #2 reset = 0; end always @ (!res_n)
reset = !res_n; endmodule Milano, 17/18 gennaio 2013104
- Slide 105
- Risultati numerici (simulatore circuitale PAN) Soluzione di
regime (steady-state) ottenuta con rapporto divisione N ID = 1.
Notare il mismatch U e D sintomo di un mismatch inserito sulla CP.
I moltiplicatori di Floquet pi significativi. PSS esteso con
Saltation Matrices Milano, 17/18 gennaio 2013105
- Slide 106
- References F. Bizzarri, A. Brambilla, G. Storti Gajani, Steady
State Computation and Noise Analysis of Analog Mixed Signal
Circuits, IEEE Transactions on Circuits and Systems-I forthcoming.
F. Bizzarri, A. Brambilla, G. Storti Gajani, "Periodic Small Signal
Analysis Of A Wide Class of Type-II Phase Locked Loops Through an
Exhaustive Variational Model, IEEE Transactions on Circuits and
Systems-I, under revision. F. Bizzarri, A. Brambilla, G. Storti
Gajani, Extension of the variational equation to analog/digital
circuits: Numerical and experimental validation, International
Journal of Circuit Theory and Applications, (published online) oct.
2012,DOI: 10.1002/cta.1864. F. Bizzarri, A. Brambilla, G. Storti
Gajani, "Phase Noise Simulation in Analog Mixed Signal Circuits: An
Application to Pulse Energy Oscillators", IEEE Transactions on
Circuits and Systems-II: Express Briefs, vol. 58, No. 3, pp.
154-158, March 2011. F. Bizzarri, A. Brambilla, G. Storti Gajani,
"Noise in a Phase-Quadrature Pulsed Energy Restore Oscillator, in
Proceedings of the European Conference on Circuit Theory and Design
(ECCTD'11), Linkping, Sweden, August 29-31, 2011, pp. 478-481. F.
Bizzarri, X. Wei, "Phase Noise Analysis of a Mechanical Autonomous
Impact Oscillator with a MEMS Resonator, in Proceedings of the
European Conference on Circuit Theory and Design
(ECCTD'11),Linkping, Sweden, August 29-31, 2011, pp. 762-765.
Milano, 17/18 gennaio 2013106