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

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.