Forum: Mikrocontroller und Digitale Elektronik 8MHz Quarz, aber STM32 läuft mit 72MHz.


von Beni (Gast)


Lesenswert?

Wie kann das funktionieren?

Vielen Dank für eine kurze Erklärung.

von rmu (Gast)


Lesenswert?

Frequenzvervielfacher. Mal 9.

von Joe F. (easylife)


Lesenswert?

rmu schrieb:
> Frequenzvervielfacher

auch PLL genannt.

von Syn Thetisator (Gast)


Lesenswert?

Joe F. schrieb:
> auch PLL genannt.

Nein. Eine PLL ist kein Vervielfacher.

von Ralph S. (jjflash)


Lesenswert?

Syn Thetisator schrieb:
> Nein. Eine PLL ist kein Vervielfacher.

und was ist es dann????

PLL steht für: Phase looked loop

Zitat Wikipedia:
1
Eine Phasenregelschleife, auch als englisch phase-locked loop (PLL)
2
bezeichnet, ist eine elektronische Schaltungsanordnung, die die Phasenlage
3
und damit zusammenhängend die Frequenz eines veränderbaren Oszillators über
4
einen geschlossenen Regelkreis so beeinflusst, dass die Phasenabweichung
5
zwischen einem äußeren Referenzsignal und dem Oszillator oder einem daraus
6
abgeleiteten Signal möglichst konstant ist.

Bei einer PLL wird (kann) ein vielfaches einer Frequenz abgeleitet 
werden !

von M. L. (ado)


Lesenswert?

Kannst ja mal mit STM32CubeMX
deine Konfiguration nachbauen und dann den Unterschied zu deinem Code 
suchen.

von Cyborg (Gast)


Lesenswert?

Wie hast du denn die Frequenz fest gestellt?

Hört sich so an, als wenn der Oszillator auf einer Oberwelle schwingt.
Kann passieren wenn der ganze Kreis, die Kondensatoren fehlen oder
falsch dimensioniert, oder defekt sind. Datenblatt des Herstellers
beachten.

von avr (Gast)


Lesenswert?

Ralph S. schrieb:
> Bei einer PLL wird (kann) ein vielfaches einer Frequenz abgeleitet
> werden !

Wenn ein Frequenzteiler in der Rückkopplung ist, stimmt das. Mit einer 
pll kann man aber deutlich mehr machen, als Frequenzen zu vervielfachen. 
Das ist eine der Anwendungen, aber keine grundlegende Eigenschaft.

von Ralph S. (jjflash)


Lesenswert?

avr schrieb:
> Das ist eine der Anwendungen, aber keine grundlegende Eigenschaft.

stimmt ... :-) ich hatte ja auch das "kann" in Klammern!

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Ralph S. schrieb:
> stimmt ... :-) ich hatte ja auch das "kann" in Klammern!

Deine vorherige rhetorische Frage "und was ist es dann????" implizierte, 
dass Du der Feststellung von Syn Thesizer widersprochen hättest.

Streng genommen geht es bei der PLL überhaupt nicht um Frequenzen, 
sondern nur um Phasenlagen. Für eine Frequenzsynchronisation nimmt man 
daher in manchen Fällen eine FLL (Frequency Locked Loop):

https://de.wikipedia.org/wiki/Frequency_Locked_Loop

Mit Hilfe einer PLL kann man hingegen z.B. auch Taktrückgewinnung aus 
manchen kombinierten Daten-Takt-Signalen betreiben, z.B. bei PCI 
Express/SATA/SAS. Durch Verwendung eines geeigneten Phasendiskriminators 
kann dabei auch eine niedrigere Frequenz als die des Eingangssignals 
entstehen.

von Ralph S. (jjflash)


Lesenswert?

Andreas S. schrieb:
> Deine vorherige rhetorische Frage "und was ist es dann????" implizierte,
> dass Du der Feststellung von Syn Thesizer widersprochen hättest.

Habe ich und habe ich auch nicht !

(ein klassisches "jein" also).

Für die Taktgewinnung in einem STM32 wird der PLL als 
Frequenzvervielfacher "mißbraucht" (ich hoffe dass ich jetzt nicht 
wieder anstößig bin)

Phasendiskrimininator ... lange her. Das letzte mal als ich das selbst 
verwendet hatte, habe ich UKW - Radios gebaut (zur Demodulation). 
Komplett analog und selbstgewickelten Spulen (und natürlich ohne PLL).

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Ralph S. schrieb:
> Für die Taktgewinnung in einem STM32 wird der PLL als
> Frequenzvervielfacher "mißbraucht" (ich hoffe dass ich jetzt nicht
> wieder anstößig bin)

Du hättest auch das unanstößige Wort "gebraucht" verwenden können...

Streng gesehen wird die Frequenzvervielfachung durch den Oszillator 
bewirkt und nicht durch die PLL. Gemäß vieler gebräuchlicher 
Definitionen und Beschreibungen erzeugt die PLL nur die Steuerspannung 
für den Oszillator. Der bzw. die Frequenzteiler gehören aber je nach 
technischer Ausführung der PLL ggf. zur PLL oder eben auch nicht.

von Joe F. (easylife)


Lesenswert?

Ja, alles irgendwie richtig, ich war da nicht ganz so präzise wie in 
diesem Forum erforderlich ;-)
VCO, Clock Dividers und PLL generieren letztlich den Systemtakt synchron 
zum Quarz.
Landläufig bezeichnet man diesen Gesamtblock eben zusammenfassend oft 
als "die PLL", z.B. wenn es darum geht die Divider zu konfigurieren.

: Bearbeitet durch User
von Andreas R. (daybyter)


Lesenswert?

Kleiner Tipp: man kann den Multiplikator auch ändern. Dann gehen auch 
über 100 MHz.

: Bearbeitet durch User
von M. K. (sylaina)


Lesenswert?

Ihr hängt euch aber auch auf an der PLL, meine Güte...

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Die PLL ist ein fester Bestandteil der Takterzeugung bei m.W. allen 
STM32. Der Clocktree, den man in der Familienreferenz zu deinem MC 
anschauen kann, besteht aus mindestens 2 Oszillatoren (HSI und HSE) und 
wird normalerweise im Startup konfiguriert.
Der HSE wird vom Quarz angetrieben und wahlweise durch den 
Referenzteiler geteilt (PLL Referenz). Der interne VCO des STM32 erzeugt 
den Systemtakt und wird durch einen Prescaler geteilt und mit der PLL 
Referenz verglichen und nachgeregelt, so das Referenzfrequenz und 
Prescalerausgang gleich sind.
Das ermöglicht verschiedene Systemtakte. Bei der o.a. Konfiguration ist 
z.B. Referenzteiler = 2 und Prescaler = 18. So wird eine interne 
Referenz von 4 MHz mit 18 multipliziert = 72 MHz. Denkbar sind auch 
andere Kombination wie z.B. 8 und 72, oder eben 1 und 9.
Dabei darf die max. VCO Frequenz aber nicht überschritten werden, weil 
er sonst aussetzt.

: Bearbeitet durch User
von Bernd K. (prof7bit)


Lesenswert?

Joe F. schrieb:
> Ja, alles irgendwie richtig, ich war da nicht ganz so präzise wie in
> diesem Forum erforderlich ;-)
> VCO, Clock Dividers und PLL generieren letztlich den Systemtakt synchron
> zum Quarz.

Das letzte L in PLL steht für Loop.

Teiler und VCO ist alles IN der Loop, somit also fester Bestandteil 
dieser konkreten Erscheinungsform von PLL. Diese konkrete PLL also ist 
ein Vervielfacher.

: Bearbeitet durch User
von Thomas Forster (Gast)


Lesenswert?

Beni schrieb:
> Wie kann das funktionieren?

Da gabts doch erst vor kurzem ein schönes Bild dazu:

Beitrag "Re: STM32F407VGT6 China Board not working Tips?"

von Syn Thetisator (Gast)


Lesenswert?

Bernd K. schrieb:
> Diese konkrete PLL also ist ein Vervielfacher.

Nö. Diese eben nicht. Wie gerade Matthias sehr treffend richtig
ausgeführt hat:

Matthias S. schrieb:
> besteht aus mindestens 2 Oszillatoren (HSI und HSE) und
> wird normalerweise im Startup konfiguriert.
> Der HSE wird vom Quarz angetrieben und wahlweise durch den
> Referenzteiler geteilt (PLL Referenz). Der interne VCO des STM32 erzeugt
> den Systemtakt und wird durch einen Prescaler geteilt und mit der PLL
> Referenz verglichen und nachgeregelt, so das Referenzfrequenz und
> Prescalerausgang gleich sind.

Ein Vervielfacher würde auf einer Grundfrequenz schwingen und
eine der (vielen) Oberwellen ausfiltern, verstärken und weitergeben.
Im Falle eines STM des TOs würde also die Frequenz von 8 MHz auf
72MHz, oder in vielen anderen Fällen, auf 168 MHz vervielfacht, was
nicht der Fall ist.

Somit behaupte und bestätige ich nochmals meine Aussage:

Syn Thetisator schrieb:
> Nein. Eine PLL ist kein Vervielfacher.

Und die besagte schon gar nicht.

von Bernd K. (prof7bit)


Lesenswert?

Syn Thetisator schrieb:
> Der interne VCO des STM32 erzeugt
>> den Systemtakt und wird durch einen Prescaler geteilt und mit der PLL
>> Referenz verglichen und nachgeregelt, so das Referenzfrequenz und
>> Prescalerausgang gleich sind.

Ja. Dieses Gesamtgebilde nennt man PLL:
1
Ausgang <---- VCO ---> Teiler ---> Phasenkomparator <- Eingang (Referenzfreq)
2
               ^                           |
3
               |  Phasenregelkreis (PLL)   |
4
               |                           |
5
                -------- Filter <----------
Diese konkrete oben hingemalte PLL (==Regelkreis) beinhaltet einen 
Teiler, (beachte die Bestandteile des rechteckigen Kreises im Mittelteil 
[der ist nur deswegen rechteckig weil ich keine runden ASCII-Zeichen 
habe, denk Dir das einfach als Kreis im übertragenen Sinne]) das ganze 
Gebilde vervielfacht also die Eingangsfrequenz genau um den 
Teilerfaktor, sie ist somit ein Frequenzvervielfacher.

es gibt auch PLLs ohne Teiler für andere Zwecke (zum Beispiel 
Taktrückgewinnungen bei Datenübertragungen), aber diese konkrete PLL 
hier beinhaltet zufällig einen Teiler.

: Bearbeitet durch User
Beitrag #4958341 wurde von einem Moderator gelöscht.
Beitrag #4959470 wurde von einem Moderator gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.