Forum: Mikrocontroller und Digitale Elektronik PICO / rp2040 - Verständnisproblem zu Timer / DIV_FRAC


von Michael S. (Gast)


Lesenswert?

PICO  rp2040 - Verständnisproblem zu Timer  DIV_FRAC

Bei den 8-Bit-AVRs wird der Systemtakt über einen Prescaler durch 2^n 
geteilt und damit wird der Timer/Counter gefüttert.

Beim rp2040 sieht das zunächst ähnlich aus, der Systemtakt wird durch 
DIV_INT (8 oder 16 Bit) reduziert.

Soweit ist alles verständlich.

Aber nun gibt es da noch den DIV_FRAC (4 oder 8 Bit), mit dem jeder 
Systemtakt in weiteren 1/16 bzw, 1/256 Schritten unterteilt werden kann.

Da müsste ja ein Taktgenerator vorhanden sein, der bis zu 256× schneller 
taktet als der Systemtakt ?
125MHz × 256, das wäre sehr sportlich.

Gibt es irgendwo Beschreibungen, wie das realisiert wird ?
Bisher bin tch leider nicht fündig geworden.

Hier zur Veranschaulichunng:
Die Statemachines der PIOs sind bei DIV_INT = 0x0001 mit 125 MHz 
getaktet.
Mit DIV_INT = 0xffff wird der Takt auf ca. 1907 Hz reduziert.

Zwischen zwei benachbarten Teilern (z.B. 0xfffe und 0xffff) können mit 
DIV_FRAC noch einmal 255 Zwischenwerte gewählt werden (natürlich nur 
einer aus 255 !).

Das ist dann effektiv ein 24 Bit Teiler.

Vorab schönen Dank für Hinweise.

Michael S.

von Falk B. (falk)


Lesenswert?

Michael S. schrieb:
> Da müsste ja ein Taktgenerator vorhanden sein, der bis zu 256× schneller
> taktet als der Systemtakt ?

Nein.

> 125MHz × 256, das wäre sehr sportlich.

Ja.

> Gibt es irgendwo Beschreibungen, wie das realisiert wird ?
> Bisher bin tch leider nicht fündig geworden.

Ist ein gebrochenrationaler Teiler, siehe DDS. Es werden einfach 
Takte ausgelassen. Dadurch entsteht Jitter.

von Olaf (Gast)


Lesenswert?

> Gibt es irgendwo Beschreibungen, wie das realisiert wird ?

Im Datenblatt???  2.18.2. Calculating PLL parameters

Es ist halt eine PLL mit fraktionalem Teiler. Du kannst da auch
hoehere Frequenzen innerhalb der PLL verwenden, aber natürlich
gibt es da Grenzen. Höhere Multiplikatoren koennen aber sinnvoll
sein wenn man mit einem kleineren externen Takt arbeitet.

Ich empfehle DRINGENST sich genau an die Vorgaben im Datenblatt
zu halten. Wer glaubt da irgendwas abschreiben/hinschludern zu
koennen kann auch gerne mal eine PLL mit jitter oder lock-Problemen
bekommen. Natuerlich dann device und Temperatur abhaengig.

Olaf

von Michael S. (Gast)


Lesenswert?

Danke für die Hinweise.

Michael S.

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.