Forum: Mikrocontroller und Digitale Elektronik Wie lauft das eigentlich mit dem CPU-Takt > 20MHz


von Kaj (Gast)


Lesenswert?

Hi Leute,

mich wuerde mal interessieren wie das mit dem Taktgeber bei schnelleren 
Controllern funktioniert.
Bei meinem kleinen AVR hab ich n Quarz daneben sitzen, der den Takt 
bestimmt, weil der interne Oszillator ja nicht so dolle ist.
Aber bei nem Arduino-Due(Cortex-M3, 84MHZ), Raspberry(700MHz),
UDOO (Cortex-A9, 4x 1GHz), usw. seh ich da keine externen Taktgeber 
mehr.
Wie laeuft das mit dem Taktgeber jenseits der 20MHz ab?

Freue mich auf eure Antworten :)

Gruesse

von Sean G. (atmega318)


Lesenswert?

Stichwort PLL. Der grundtakt kommt z.B. von einem 8mhz Quarz, interner 
Oszillator, usw.

von Roland .. (rowland)


Lesenswert?

Ein VCO generiert den Takt und die Phase des Takts wird nach einem 
genauen niderigeren Takt nachgeregelt. So erhält man eine hohe genaue 
Frequenz ohne hofrequenten Quarz. Eben das PLL-Prinzip.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Nein, dafür gibt es eine PLL.

Die macht aus z.B. 8MHz Quarz dann mit einem Multiplikator 336MHz und 
mit einem Divisor dann 168MHz CPU Takt (STM32F4xx).
Der STM32F4xx hat sogar mehrere PLL drin um z.B. auch den USB Takt zu 
erzeugen und für die I2S Schnittstelle, da diese jeweils andere 
Taktraten benötigen und nicht mit dem CPU Takt kompatibel sind.

Schlussendlich benötigt man für einen CPU Takt 2 Zahlen, einen 
Multiplikator und einen Divisor:
8MHz * 42 = 336Mhz / 2 = 168MHz
Und das war's.

von Kaj (Gast)


Lesenswert?

Ah ok. Vielen lieben Dank euch. :)

Dann wuensche ich euch mal einen guten Rutsch ins neue Jahr.

Gruesse

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.