Für ein Projekt, das ich entwerfe, verwende ich ein IS42s32800 (TSOP) SDRAM mit einem LPC1788 (QFP) Mikrocontroller. Auf der Leiterplatte habe ich 4 Schichten mit einer Masseebene direkt unter der oberen Signalschicht und einer VDD-Ebene direkt über der unteren Signalschicht. Die durchschnittlichen Leiterbahnen zwischen der CPU und dem RAM sind 60 mm lang, wobei die längste Leiterbahn 97 mm lang ist, die Taktleitung 53 mm lang ist und auf keiner Leitung Abschlusswiderstände montiert sind. Was mich interessiert, ist, ob es absolut notwendig ist, Abschlusswiderstände auf DRAM-Leitungen zu haben oder nicht. Würde dieses Design ohne sie funktionieren oder sollte ich es nicht einmal ohne die Widerstände versuchen?
Wenn die Frequenz/Anstiegszeit und der Abstand hoch genug sind, um Probleme zu verursachen, dann benötigen Sie eine Terminierung.
Bei einer längsten Leiterbahn von 97 mm werden Sie wahrscheinlich ohne sie davonkommen (anhand der Ergebnisse der Berechnungen unten). Wenn Sie ein PCB-Paket haben, das IBIS-Modelle und Simulationen auf Platinenebene verarbeitet (z Sie benötigen sie aus den Ergebnissen.
Wenn Sie diese Funktion nicht zur Verfügung haben, können Sie mit SPICE einige grobe Berechnungen durchführen.
Ich hatte ein kleines Durcheinander mit LTSpice , hier sind die Ergebnisse (fühlen Sie sich frei, Dinge zu korrigieren, wenn jemand einen Fehler sieht)
Wenn wir annehmen:
Wenn Sie wCalc (ein Übertragungsleitungsrechner-Tool) verwenden , das auf den Mikrostreifenmodus eingestellt ist, und die Zahlen eingeben, erhalten wir:
Wenn wir nun diese Werte mit dem verlustbehafteten Übertragungsleitungselement in LTSpice eingeben und simulieren, erhalten wir:
Hier ist die Simulation der obigen Schaltung:
Aus diesem Ergebnis können wir ersehen, dass wir bei einer Ausgangsimpedanz von 100 Ω keine Probleme erwarten sollten.
Nur aus Interesse, sagen wir, wir hätten einen Treiber mit einer Ausgangsimpedanz von 20 Ω, das Ergebnis wäre ganz anders (selbst bei 50 Ω gibt es eine Über-/Unterschwingung von 0,7 V. Beachten Sie, dass dies teilweise auf die Eingangskapazität von 5 pF zurückzuführen ist, die ein Klingeln verursacht. Das Überschwingen bei 2 ns wäre ohne Kapazität geringer [~ 3,7 V], also wie Kortuk darauf hinweist, überprüfen Sie auch konzentrierte Parameter, auch wenn Sie nicht als TLine behandelt werden - siehe Ende):
Eine Faustregel lautet: Wenn die Verzögerungszeit (Zeit für die Signalübertragung vom Treiber zum Eingang) mehr als 1/6 der Anstiegszeit beträgt, müssen wir die Spur als Übertragungsleitung behandeln (beachten Sie, dass einige sagen 1/8, andere sagen wir 1/10, was konservativer ist) Mit einer Verzögerung von 0,525 ns und einer Anstiegszeit von 2 ns, was 2 / 0,525 = 3,8 (<6) ergibt, müssen wir es als TLine behandeln. Wenn wir die Anstiegszeit auf 4 ns erhöhen -> 4 / 0,525 = 7,61 und dieselbe 20-Ω-Simulation erneut durchführen, erhalten wir:
Wir können sehen, dass das Klingeln viel geringer ist, also müssen wahrscheinlich keine Maßnahmen ergriffen werden.
Um die Frage zu beantworten, vorausgesetzt, ich bin mit den Parametern in der Nähe, dann ist es unwahrscheinlich, dass Sie Probleme haben, wenn Sie sie weglassen - zumal ich eine Anstiegs- / Abfallzeit von 2 ns gewählt habe, die schneller ist als das LPC1788-Datenblatt (S. 88 Tr min = 3 ns, Tfall min = 2,5 ns)
Um sicher zu gehen, würde es wahrscheinlich nicht schaden, einen 50-Ω-Vorwiderstand an jeder Leitung anzubringen.
Wie oben erwähnt, können wir, selbst wenn die Leitung keine Übertragungsleitung ist, immer noch ein Klingeln haben, das durch die konzentrierten Parameter verursacht wird. Die Spur L und der Empfänger C können viel Klingeln verursachen, wenn das Q hoch genug ist.
Als Faustregel gilt, dass als Reaktion auf eine perfekte Schritteingabe ein Q von 0,5 oder weniger nicht klingelt, ein Q von 1 16 % Überschwingen und ein Q von 2 44 % Überschwingen hat.
In der Praxis ist kein Schritteingang perfekt, aber wenn der Signalschritt eine signifikante Energie über der LC-Resonanzfrequenz hat, wird es zu einem Nachschwingen kommen.
Wenn wir also für unser Beispiel mit einer Treiberimpedanz von 20 Ω die Leitung einfach als konzentrierten Schaltkreis behandeln, ist Q:
(Kapazität ist 5 pF Eingangskapazität + Leitungskapazität - Leitungswiderstand wird ignoriert)
Die Antwort auf eine perfekte Schritteingabe wird sein:
Die Überschwingspitze im ungünstigsten Fall beträgt also 3,3 V + 2,23 V = ~ 5,5 V
Für eine Anstiegszeit von 2 ns müssen wir aufgrund der Anstiegszeit die LC-Resonanzfrequenz und darüber die spektrale Energie berechnen:
Ruffrequenz = 1 / (2PI * sqrt(LC)) = 1 / (2PI * sqrt(62,36nH * 9,511pF)) = 206MHz
Ruffrequenz = = 206MHz
Eine Anstiegszeit von 2 ns hat eine signifikante Energie unterhalb der (Faustregel) "Knie" -Frequenz, die lautet:
0,5 / Tr = 0,5 / 2 ns = 250 MHz, was über der oben berechneten Ruffrequenz liegt.
Bei einer Kniefrequenz, die genau der Klingelfrequenz entspricht, beträgt das Überschwingen etwa die Hälfte der perfekten Schritteingabe. Bei einer ~1,2-fachen Kniefrequenz sehen wir also wahrscheinlich etwa 0,7 der perfekten Schrittantwort:
Also 0,7 * 2,23 V = ~1,6 V
Geschätzte Überschwingspitze mit 2 ns Anstiegszeit = 3,3 V + 1,6 V = 4,9 V
Die Lösung besteht darin, Q auf 0,5 zu reduzieren, was a entspricht
= 162 Ω Widerstand (160 Ω reichen).
Mit dem 100-Ω-Treiberwiderstand von oben würde dies einen 60-Ω-Vorwiderstand bedeuten (daher würde das „Hinzufügen eines 50-Ω-Vorwiderstands nicht schaden“ oben)
Simulationen:
Perfekte Schrittsimulation:
2 ns Anstiegszeitsimulation:
Lösung (mit 100 Ω Rdrv + 60 Ω Vorwiderstand = 160 Ω insgesamt R1 hinzugefügt):
Wir können sehen, dass das Hinzufügen des 160-Ω-Widerstands die erwartete kritisch gedämpfte Reaktion bei 0 V Überschwingen erzeugt.
Die obigen Berechnungen basieren auf Faustregeln und sind nicht ganz genau, sollten aber in den meisten Fällen nahe genug kommen. Das ausgezeichnete Buch „High Speed Digital Design“ von Jonhson und Graham ist eine ausgezeichnete Referenz für diese Art von Berechnungen und vieles mehr (lesen Sie das NEWCO-Beispielkapitel für ähnlich wie oben, aber besser – vieles davon basierte auf Erkenntnissen daraus Buch)
Altera empfiehlt ihre Verwendung mit einigen Arten von SDRAM in diesem Dokument, sagt aber, dass sie vermieden werden können, indem interne Terminierung für das FPGA und SDRAM verwendet wird, falls dies angeboten wird. Keine der FPGA-Karten, die ich mit SDRAM habe, hat eine externe Terminierung an den Anschlüssen, und die Geräte haben keine interne Terminierung. Es sieht so aus, als ob sie idealerweise verwendet werden sollten, aber in der Praxis werden sie oft weggelassen. Du solltest davonkommen.
Matt Jung
özg
Jesus Kastane