Forum: Mikrocontroller und Digitale Elektronik "Übersprechen" innerhalb eines Latches !?


von Jonas H. (Gast)


Lesenswert?

Hallo,

ich benutze ein 8-Bit Latch 74ACT574 um asynchrone Daten zur
Weiterverarbeitung zu synchronisieren.
Das 8-Bit Latch wird mit 30 MHz getaktet. Wenn ich an D[0..7] einen
Zähler als Testgenerator anschließe, entstehen an den MSB (die gerade
auf LOW stehen) des Q[0..7] bei mehreren fallenden Flanken (z.b.
Übergang von 00011111 auf 00100000) Spikes dieser Form: ___-___.
Meistens dauern die Spikes ca 20% der CLK, manchmal, und das ist das
Problem, halten sie allerdings auch einen Takt lang.

Auf dem LogicAnalyser sieht der Q[7..0] z.B. so aus (11111110 ->
00000000 an D[0..7]):

0: --------_______
1: --------_______
2: --------_______
...
6: --------_______
7: ______-______  <- Spike! Wieso?

Was kann ich da machen? Die Stromversorgung ist einwandfrei,
Kondensator (10n, 100n) ebenfalls vorhanden, Versorgungsspannung exakt
5,00V.

Ich hoffe jemand kann mir einen Tip geben,
Vielen Dank, Jonas

PS: Das Problem tritt auch bei 100kHz, 1 MHz... auf ;-(

von A.K. (Gast)


Lesenswert?

Wenn bei einem Register oder Latch die Setup- und Hold-Time nicht
eingehalten werden, ist der Zustand vom Ausgang undefiniert.

Stichwort: Metastabilität (metastability).

Standardproblem. Manche Microcontroller haben daher an den Eingangen
mehrere Register/Latches hintereinander um die Wahrscheinlichkeit
minimieren (z.B. AVR Mega/Tiny).

von Arno H. (Gast)


Lesenswert?

Such mal unter dem Stichwort "Bounce" oder "Bouncing".
Arno

von Jonas H. (Gast)


Lesenswert?

Wieso metastabil?
Metastabilität tritt doch auf, wenn CLK und D sich nahezu gleichzeitig
ändern.
An D[7] ändert sich aber nichts. Wieso gibt es dann an Q[7] den Spike?

Hier nochmal zur Veranschaulichung:

D0: --------_______
D1: --------_______
D2: --------_______
...
D6: --------_______
D7: _____________  <- ...dauerhaft LOW

CL: -_-_-_-_-_-_-  <- CLK, Übernahme an positiver Flanke

Q0: --------_______
Q1: --------_______
Q2: --------_______
...
Q6: --------_______
Q7: ______-______  <- Spike! Wieso?

Gruß + Vielen Dank
Jonas

von Arno H. (Gast)


Lesenswert?

Weil Du eine Menge Ein- und Ausgänge gleichzeitig schaltest, treten an
den Induktivitäten der Zuleitungen inerhalb und ausserhalb des Chips
Spannungsspitzen auf und verursachen Verschiebungen der Bezugspunkte,
die zu Fehlschaltungen führen können. Der auslösende Faktor sind die
Anstiegs- und Abfallzeiten des Signals, weniger die Frequenz. Diesen
Effekt nennt man Bouncing.
Arno

von A.K. (Gast)


Lesenswert?

Ok, die Metastabilität ist's nicht (so ganz deutlich konnte ich die
Takt/Daten-Beziehung deinem Text nicht entnehmen).

Aber dafür fällt der 74ACT auf. Sind unangenehme Biester. Sehr schnell,
sehr schnelle Flankenwechsel, arge schnelle Stromspitzen. Und leiden
daher unter TIs alter Fehlentscheidung, die VCC/GND-Pins an die am
wenigsten dafür geeignete Stelle zu packen - die Ecken.

Besser geeignet: 74ACT11374. Gleiche Konfiguration aber besseres
Pinout. Mehr VCC/GND-Pins und die in der Mitte. Trotzdem ist die
Platine ebenso wichtig. Ich vermute, dass sich bei TI auch die eine
oder andere Application Note diesem Thema widmen wird.

von Jonas H. (Gast)


Lesenswert?

@A.K. Vielen Dank für den Tip mit dem anderen TI Baustein.
Habe bis jetzt den 574er von TI. Ein Motorola 574er hat nur kurze
Glitches, max. 10% der Taktlänge. Ich werde nun den 74ACT11374 testen.

Gruß Jonas

PS: Weitere Beiträge sind erwünscht ;-)

von Jadeclaw (Gast)


Lesenswert?

Dem 11374 zwischen Saft und Masse von unten einen 0.1uF SMD-Kerko
gegenklatschen.
Dann sollte Ruhe sein.
Bedrahtete Caps haben eine zu hohe Serieninduktivität.

Gruss
Jadeclaw.

von Peter Dannegger (Gast)


Lesenswert?

Wenn der höhere Stromverbrauch keine Rolle spielt, nimm doch die
F-Serie, die sind gutmütiger, da noch in TTL-Technik (geringere
Stromspitzen).


Ob die VCC/GND-Pins an den Ecken oder in der Mitte sind, hat bei mir
bisher keine Auswirkungen gehabt, eine gute Leiterbahnführung aber sehr
wohl.

Bzw. bei langen Leitunge an den Ausgängen könne Serienwiderstände
(10..22 Ohm) ware Wunder wirken.
Die AC/ACT-Typen ziehen quasi an den geladenen Leitungskapazitäten
ihren eigenen GND hoch.


Peter

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.