Forum: Mikrocontroller und Digitale Elektronik AVR Verzögerung CLKI nach CLKO


von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Nabend,

gibt es irgendwo Informationen darüber wie groß die Latenz zwischen CLKI 
und CLKO z.B. bei den 8 Bit AVR ist? Ich meine damit nicht die 
Verzögerung durch den Reset oder Startup sondern was nach einer 
einmaligen Synchronisation letztlich an Verzögerung übrig bleibt. Ebenso 
würde mich interessieren wie groß die Latenz zwischen steigender 
Taktflanke des CLK und dem Ende eines Befehls (z.B. bei OUT, dem 
Anliegen der Daten auf dem Port) ist.

: Bearbeitet durch User
von Pandur S. (jetztnicht)


Lesenswert?

Das sind ja die Oszillator Pins...da sollte der Quarz dazwischen sein.. 
was soll die Frage ?

von Stefan F. (Gast)


Lesenswert?

Was nicht im Datenblatt steht wird nicht garantiert.

Also wäre ein Dokument mit diesen Angaben (wenn es ein gäbe) kaum 
hilfreich.

von npn (Gast)


Lesenswert?

Pandur S. schrieb:
> Das sind ja die Oszillator Pins...da sollte der Quarz dazwischen
> sein..
> was soll die Frage ?

Heissen die Oszillator-Pins nicht vielmehr XTAL1 und XTAL2?
CLKO ist der Pin für den Output Buffer...

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Pandur S. schrieb:
> Das sind ja die Oszillator Pins...da sollte der Quarz dazwischen sein..
> was soll die Frage ?

Kann man machen, muss man aber nicht. Zum Einen kann man natürlich auch 
einfach ein Rechteck an CLKI anlegen (z.B. bei ATTiny25/45/85), zum 
Anderen gibt es durchaus AVRs wo der CLKO nicht auf XTAL2 liegt (z.B. 
bei ATMega48/88/168/328).

Stefan ⛄ F. schrieb:
> Was nicht im Datenblatt steht wird nicht garantiert.
>
> Also wäre ein Dokument mit diesen Angaben (wenn es ein gäbe) kaum
> hilfreich.

Als Abschätzung ob es überhaupt Sinn macht einen Gedanken weiter zu 
verfolgen durchaus. Mir z.B. würde schon eine halbwegs bekannte minimale 
Verzögerung reichen.

: Bearbeitet durch User
von S. Landolt (Gast)


Lesenswert?

Einfach messen, am konkreten Controllertyp, hätte ich da vorgeschlagen - 
mehr kann unsereiner ja auch nicht.

Z.B. ATmega88, XTAL1 -> CLKO: so ganz grob 11 ns bei 5.0 V, 16 ns bei 
3.0 V.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

S. Landolt schrieb:
> Einfach messen, am konkreten Controllertyp, hätte ich da vorgeschlagen -
> mehr kann unsereiner ja auch nicht.
>
> Z.B. ATmega88, XTAL1 -> CLKO: so ganz grob 11 ns bei 5.0 V, 16 ns bei
> 3.0 V.

Ja, darauf wirds wohl hinauslaufen, wollte nur vorab mal fragen, hätte 
ja sein können das es da bereits Erfahrungswerte gibt. Werde einfach mal 
einen Tiny als Taktgeber mit verschiedenen Frequenzen programmieren und 
dann die Verzögerungen bei Reset/Startup, zwischen CLKI und CLKO sowie 
zwischen CLKI und OUT Port bei verschiedenen Slave Controllern messen.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

So, hab jetzt erstmal ein paar Messungen gemacht und festgestellt das 
ich für einen vernünftige Messung besseres Equipment brauche. Allerdings 
zeichnet sich für mich schon ab das die Verzögerung für meine Zwecke 
deutlich zu klein ist.

Bei 5V und einem Takt von 279kHz an einem Tiny85 lag die Verzögerung 
zwischen CLKI und CLKO (steigend) bei etwa 0.8ns und zwischen CLKI 
(steigend) und OUT PB0 bei etwa 14ns.

von npn (Gast)


Lesenswert?

Tim T. schrieb:
> Allerdings zeichnet sich für mich schon ab das die Verzögerung
> für meine Zwecke deutlich zu klein ist.

Welche Mindest-Verzögerung benötigst du denn für deine Zwecke?

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Ich hätte eine Verzögerung von 5+ ns gebraucht um die Holdzeit für einen 
weiteren IC hinter einem zweiten AVR zu garantieren.

von m.n. (Gast)


Lesenswert?

Tim T. schrieb:
> Ich hätte eine Verzögerung von 5+ ns gebraucht um die Holdzeit für einen
> weiteren IC hinter einem zweiten AVR zu garantieren.

Dafür kann man im einfachsten Fall zwei Inverter xx04 in Reihe schalten 
oder, wenn es platzsparend sein soll, auch 74LVC2G04/xx14 im SOT23-6 
oder SC70-6 Gehäuse. Mit einem Kondensator zwischen den beiden Invertern 
kann man die Verzögerungszeit noch ein paar ns verlängern.

von m.n. (Gast)


Lesenswert?

m.n. schrieb:
> Mit einem Kondensator zwischen den beiden Invertern
> kann man die Verzögerungszeit noch ein paar ns verlängern.

... C von Ausgang gegen GND natürlich.

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.