PICO / rp2040 - Verständnisproblem zu Timer / DIV_FRAC

Gast #7163661
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.
#7163685
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.
Gast #7163708
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren