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
Stichwort PLL. Der grundtakt kommt z.B. von einem 8mhz Quarz, interner Oszillator, usw.
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.
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.