Geht nicht gibt's nicht

.

Donnerstag, 16. August 2012

PLL - dynamische Simulation in der Phasenebene


Dynamische PLL-Simulationen gehören zu den zeitaufwendigeren Entwicklungsaufgaben, vor allem, wenn das Aufstartverhalten oder die Reaktion auf Frequenzsprünge untersucht werden sollen. Aber es gibt eine trickreiche Möglichkeit, den Zeitaufwand in Grenzen zu halten. Dazu verlegt man die Simulation in die Ebene, die der PLL am besten liegt: in die Phasenebene.

PLL Simulationsmodell

Das hier beschriebene Simulationsmodell für LTspice nutzt aus, dass die PLL einen Phasenintegrator darstellt. Die Phase eines sinusförmigen Signals schreitet längs der Zeitachse gemäss folgender Beziehung voran:


d_phi(t) / d_t = 2*Pi*f (t)

oder

phi(t) = 2*Pi* Integral( f(t)dt )


Wird nun die Frequenz eines Signals als Spannung dargestellt, dann ergibt die zeitliche Integration dieser Spannung die Phase des  Signals. Ohne Berücksichtigung der Periodizität mit 2*Pi steigt die Phase längs der Zeitachse an. Es werden also folgende Analogien verwendet:

Frequenz:      Spannung

Phase:           Integral der Spannung


Der Phasendetektor ermittelt den Phasenunterschied zwischen Referenz- und Oszillatorsignal. Allerdings ist die tatsächliche Übertragungsfunktion des Phasendetektors periodisch mit 2*Pi (zwoPi...). Diese Periodizität wird im Modell unter Verwendung der LTspice-Syntax für verhaltensgesteuerte Quellen (BV) durch die folgende Funktion erreicht:

V_pfd=Kd * (V_fref - V_fout) / (2*Pi) - int( (V_fref - V_fout) / (2*Pi))

Kd entspricht der Steilheit des Phasendetektors, sie wird aber aus Vereinfachungsgründen im Modell zu 1 angenommen. Kd wird in der Realität z.B. durch den Charge-Pump-Strom beeinflusst. Den Charge-Pump-Strom kann man ebensogut beim Loopfilter berücksichtigen. Die Division durch 2*Pi normiert gleichzeitig das Ausgangssignal auf 2*Pi, so dass einem Phasenunterschied von Pi/2 (90°) einer Ausgangsspannung von 0.25 entspricht.

Das Loop-Filter beinhaltet sowohl einen Integral- als auch einem Proportionalanteil, wobei beide Teile in der Stromebene realisiert sind. Der Proportionalanteil schiebt während eines Vergleichsintervalls die Phase, der Integralanteil bewirkt die Frequenzänderung.  Die Stromquellen des Loop-Filters werden direkt durch die periodische Phasendifferenz gesteuert. Es spielt dabei keine Rolle, ob das Loop-Filter einen konstanten Strom über eine variable Zeit (die Zeitdauer des Phasenunterschiedes) integriert oder einen variablen Strom über eine konstante Zeitdauer, so wie das hier umgesetzt wurde.

Integral- und Proportionalanteil des Loopfilters sind getrennt einstellbar Ki bzw Kp), wobei der Proportionalstrom als proportionale Kopie des Integralstromes implementiert ist. Der Charge-Pump-Strom des Integralanteils (Ipd) und die Steilheit des Spannungs-Stromumsetzers (Kvi) sind parametrisierbar, ebenso die Oszillatorsteilheit (Ko). Da die Ausgangsfrequenz durch eine Spannung repräsentiert wird, kann eine Frequenzteilung durch einfache Spannungsteilung (ndiv) vorgenommen werden.

PLL Testbench

Hier nun das komplette Modell, so direkt lauffähig unter LTspice:


Nachfolgend sind die Simulationsergebnisse für Anlauf sowie die Reaktion auf einen Frequenzsprung einer 13.56MHz-PLL dargestellt.


Fazit

Das hier gezeigte Modell ermöglicht eine extrem schnelle Bestimmung der dynamischen Parameter einer PLL, ohne dabei den Ergebnissen aus einer Simulation im Zeitbereich nachzustehen. Aufgrund der Parametrisierbarkeit können sehr unterschiedliche PLLs simuliert  werden. Da die rechenintensiven Berechnungen im Zeitbereich haupsächlich im Bereich von Oszillators und Frequenzteiler entfallen, liegt die Ausführungszeit im Sekundenbereich. Im Vergleich zu einer herkömmlichen Simulation im Zeitbereich ergibt sich eine Beschleunigung der Simulation um den Faktor 10-100.

Downloads



0 Kommentare:

Kommentar veröffentlichen