Forum: Mikrocontroller und Digitale Elektronik Digitalzähler, Komparatoren und Laufzeiten bei "hohen" Frequenzen


von Andre G. (andgst01)


Lesenswert?

Schönen Donnerstag Abend!

Mal eine ganz grundsätzliche Frage:

Sagen wir ich habe ein Taktsignal das ich mit einem UND-Gatter anahnd 
des aktuellen Wertes eines Zählers schalten möchte.
Also zum Beispiel 10 Taktzyklen lang das Taktsignal zum Ausgang der 
Schaltung durchlassen, dann 5 Taktzyklen das Taktsignal nicht zum 
Ausgang der Schaltung durchlassen, ...

Ich würde einfach den aktuellen Zählstand mit Komparatoren mit 
konstanten Werten vergleichen.
Das Taktsignal wird mit einem UND-Gatter gesteuert.
So weit so gut in der Theorie, mit idealen Bauteilen die keine 
Laufzeiten haben.


Was mir nicht klar ist ist wie man die "Laufzeiten" der Komparatoren und 
der Gatter in der Realität ausgleicht.

Sagen wir der Zählerstand geht von 0x09 auf 0x0A, dann braucht es ein 
paar Nanosekunden bis der Komparator sein Ausgangssignal ausgibt und 
noch ein paar Nanosekunden bis das UND-Gatter das Taktsignal durchlässt.

Bei einem Taktsignal von 60 MHz sind ein paar Nanosekunden doch 
relevant, gerade wenn man das Taktsignal möglichst "genau" durchschalten 
möchte.

Soll ich die Komparatoren einfach einen Wert "früher" schalten lassen 
und dann ein FlipFlop verwenden um zu speichern "bei der nächsten 
steigenden Flanke schalte das Taktsignal zum Ausgang durch / nicht zum 
Ausgang durch"?

von Cartman (Gast)


Lesenswert?

> ganz grundsätzlich

solltest du ein paar, also mehr als eins, von den Buechern lesen,
auf denen "Digitaltechnik" oder "Digitale Schaltungstechnik" steht.

Wenn du das bewaeltigt hast, brauchst hier nicht mehr fragen.
Und sei froh, dass ich deinen "Realisierungsvorschlag" nicht
weiter kommentiere.

von Andre G. (andgst01)


Lesenswert?

Cartman schrieb:
>> ganz grundsätzlich
>
> solltest du ein paar, also mehr als eins, von den Buechern lesen,
> auf denen "Digitaltechnik" oder "Digitale Schaltungstechnik" steht.
>
> Wenn du das bewaeltigt hast, brauchst hier nicht mehr fragen.
> Und sei froh, dass ich deinen "Realisierungsvorschlag" nicht
> weiter kommentiere.

Gut, werde ich machen ...

von Wolfgang (Gast)


Lesenswert?

Andre G. schrieb:
> Sagen wir der Zählerstand geht von 0x09 auf 0x0A, dann braucht es ein
> paar Nanosekunden bis der Komparator sein Ausgangssignal ausgibt ...

Erstmal kommt es auf den Typ des Zählers an, wie sich in deinem Beispiel 
die betroffenen beiden Bits ändern. Auch da gibt es schon das Problem, 
dass dies nicht exakt gleichzeitig passiert.
Bau alles als Synchrone Logik auf, dann gibt es nach Zustandsänderungen 
ausreichend Zeit bis zur nächsten Signaländerung.

Stichwort: Synchrone und Asynchrone Logik

von Egon D. (Gast)


Lesenswert?

Andre G. schrieb:

> Soll ich die Komparatoren einfach einen Wert "früher"
> schalten lassen und dann ein FlipFlop verwenden um zu
> speichern "bei der nächsten steigenden Flanke schalte
> das Taktsignal zum Ausgang durch / nicht zum Ausgang
> durch"?

Ungefähr das ist das Prinzip der synchronen Logik.

von W.S. (Gast)


Lesenswert?

Andre G. schrieb:
> Das Taktsignal wird mit einem UND-Gatter gesteuert.

Das ist so etwa die allerschlechteste Idee, falls du nicht alle 
beteiligten Schaltverzögerungen genauestens berechnet hast und damit das 
UND zu einem ungefährlichen Zeitpunkt umschaltest.

Woanders macht man es meist so, daß man zumindest die erste Stufe eines 
darauffolgenden Zählers als eine Kombi aus D-FF und EXOR macht, wo dann 
der Zustand des zweiten EXOR auswählt, ob das FF bei der Taktflanke Q 
oder /Q lädt. Aber so etwas geht erstmal nur bei Zählern. Das Prinzip 
dahinter ist, daß man das originale Taktsignal nicht anfaßt, sondern 
lediglich seine Wirkung auf die Folgestufe zunichte macht. Beim obigen 
Beispiel wird das FF zwar weiter getaktet, aber wenn es immerzu nur den 
bereits gespeicherten Zustand übernimmt, dann ist das quasi ein 
Stillstehen.

W.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.