Welche Vorzüge birgt die Methode 1 gegenüber der Methode 2 (oder
umgekehrt)?
Ich kann mir denken, dass die ausschließliche Signalführung von links
nach rechts insgesamt günstig ist, wobei nur die HF-Anteile ein Problem
mit den vielen Knicken haben könnten.
Oder aber ist das deutlich gegenläufige Design wie im unteren bild
vorzuziehen? Wann?
Wie verhält es sich im Bezug auf elektrische und magnetische Abstahlung?
Ganz sicher bewirken beide Methoden unterschiedliche Ergebnisse, oder?
Die beiden sind rechnerisch angeblich gleich lang und sie verbrauchen
(optisch zumindest) ungefähr denselben Platz.
Von der Geometrie her wäre es bei diesem Beispiel 3 vielleicht ein
Unterschied: Man könnte direkt verbinden und würde etwa 6 Biegungen
unterbringen, bei entsprechend grösserer Breite von geschätzt 5
Rastereinheiten.
EDA-Designer schrieb:> Die beiden sind rechnerisch angeblich gleich lang und sie verbrauchen> (optisch zumindest) ungefähr denselben Platz.>> Von der Geometrie her wäre es bei diesem Beispiel 3 vielleicht ein> Unterschied: Man könnte direkt verbinden und würde etwa 6 Biegungen> unterbringen, bei entsprechend grösserer Breite von geschätzt 5> Rastereinheiten.
So routest mal n BGA chip. Dann kannst du pro Layer ne halbe Reihe oder
so rausführen. Bringt nix, weil du zu viel Fanout Platz unterm BGA
verbrätst. Außerdem ist die Reference Plane unterm BGA nicht die Beste.
Auf welchen Aspekt /Beispiel bezieht sich Deine Antwort?
Bei einem komplexen Chip würde man natürlich erst einmal die Leitungen
nach Draussen führen, um Platz zu haben, sage ich mal. Zunächst bezog
ich mich mehr auf solche Anschlüssen wie Oszillatoren.
EDA-Designer schrieb:> Auf welchen Aspekt /Beispiel bezieht sich Deine Antwort?>> Bei einem komplexen Chip würde man natürlich erst einmal die Leitungen> nach Draussen führen, um Platz zu haben, sage ich mal. Zunächst bezog> ich mich mehr auf solche Anschlüssen wie Oszillatoren
Achso, tut mir leid. Es laufen parallel noch zwei DDR(2) SDRAM threads,
deswegen bin ich irgendwie davon ausgegeangen. Wenn du so viel Platz
hast, wie bei einem Oszillator, dann ist das natürlich kein Problem.
Auf der anderen Seite, mit was willst du bei einem einfachen Oszillator
die Trace length matchen?
... matchen, wenn es ein differentieller Ausgang ist.
Ich verstehe aber immer noch nicht den Einwand mit dem Gehäuse. Wolltest
Du ausdrücken, dass die eine Methode sich für "unterm Chip" weniger gut
eignet? - wegen der unsicheren Referenzierung?
Diese Überlegung habe ich auch schon getroffen. Das die GND Plane unter
dem Chip u.U. ziemlich zerpflückt ist, bekommt man dort keine
Gegenkapazität hin.
Stellt sich die Frage, wie man das berücksichtigt: Längere Leitungen,
als über GND, nehme ich an? Dürfte man sich dann unter dem Chip relativ
grössere Differenzen in der Leitungslängen erlauben, als draussen?
Oder sollte man die Längen unter dem Chip ebenfalls möglichst gut
matchen, damit ein gleichmäßiges Verhältnis von gut referenzierten und
schlecht referenzierten Bereichen entsteht?
EDA-Designer schrieb:> Die beiden sind rechnerisch angeblich gleich lang und sie verbrauchen> (optisch zumindest) ungefähr denselben Platz.
Ds ist ein Trugschluss, da du bei der länglichen Variante mehr Platz
zwischen den Leitungen lassen musst um das Übersprechen gering zu
halten.
EDA-Designer schrieb:> Ich verstehe aber immer noch nicht den Einwand mit dem Gehäuse.
Du hast unter dem BGA Chip halt nicht nur ein Signal sondern sehr viele.
Die wollen alle nach außen. Entsprechend kannst du die Leiterbahn nicht
5 mal um den Pin wickeln bevor du ihn raus-routest weil du sonst alle
anderen Signale außen rum keinen Platz mehr haben.
EDA-Designer schrieb:> Bei einem komplexen Chip würde man natürlich erst einmal die Leitungen> nach Draussen führen, um Platz zu haben, sage ich mal.
Ja genau. Anders macht es kaum Sinn und ist Platzverschwendung, das kann
man sich direkt unter dem BGA nicht leisten.
> ... dass die eine Methode sich für "unterm Chip" weniger gut> eignet? - wegen der unsicheren Referenzierung?
So unsicher ist die gar nicht - wenn die GND-Plane aus Löchern (den
Vias) und nicht aus Schlitzen besteht, was passiert, wenn die
Via-Durchmesser zu gross sind. Dann kann beim Fluten der Planes die
GND-Fläche nicht mehr zwischen den Pins "durchfliessen".
(Selbstverständlich haben in der GND-Plane Signale nix verloren)
Wenn du das so machst, dann sieht dein Signal immer GND unter (über)
sich. Ist natürlich nicht optimal, aber das ist der beste Kompromiss.
> Oder sollte man die Längen unter dem Chip ebenfalls möglichst gut> matchen, damit ein gleichmäßiges Verhältnis von gut referenzierten und> schlecht referenzierten Bereichen entsteht?
siehe oben.
Gruss Uwe
nun, es kommt entscheidend darauf an, ob du einen Parallelbus abgleichen
musst (Ram, PCI z.B.) oder einen Seriellen, der mit Diff.Pairs arbeitet
(USB, PCI-express).
Bei ersterem ist nur wichtig, daß alle Leitungen am Empfänger etwa die
Gleiche Länge haben, und idealerweise kaum parallel verlaufen.
(Idealerweise kreuz und quer)
bei diff. pairs ist es ungleich komplizierter: dort sollte die
Ausgleichstelle direkt nach der Störung sein, d.h. idealerweise hinter
jeder Kurve. Damit das Signal nicht zu lange mit einem Versatz unterwegs
ist. Des weiteren kommt bei mehreren Parallelen Signallanes (PCI
Express, USB3.0 ...) hinzu, daß Störungen durch Lagenwechsel
idealerweise bei Allen Lanes gleich sind, d.h. sie sollten die gleichen
Lagenwechsel mitmachen um an Ende die selben Impedanzsprünge zu haben.
Aber ob man es sooo genau nehmen muss ist fraglich. Was aber wichtig
ist: Bei Impedanzgeführten Leitungen in Lagenaufbauten mit mehreren
Bezugsflächen sollte man bei jedem Lagenwechsel auch in der Nähe ein GND
Via mit einbringen um Ausgleichsströme direkt mitführen zu können.
Uwe N. schrieb:> Wenn du das so machst, dann sieht dein Signal immer GND unter (über)> sich.
Stimmt nur, wenn man keine Blind/Buried Vias benutzt.
Gruss Reinhard
Christian B. schrieb:> sollte man bei jedem Lagenwechsel auch in der Nähe ein GND> Via mit einbringen um Ausgleichsströme direkt mitführen zu können.
Eines? 4 werden empfohlen.
Gruss Reinhard
ok, mindestens 1. In meinen High Speed designs war meisst nur Platz für
2 und das hat niemandem geschadet, auch dem Signal nicht.
4 ist sehr optimistisch, wenn ich bei jedem Diff.Pair Lagenwechsel 4 GND
Vias anbringe sind das insgesammt 6 vias. jedes hat einen
Bohrdurchmesser von sagen wir 0.25mm (Laservias sind hier ja nicht zu
betrachten) d.h. der Restring ist dann mindestens 0,45mm. das ganze 2mal
nebeneinander und 3mal in der Höhe benötigt schon ziemlich viel Raum
oder?
Die Designvorschläge und Empfehlungen gehen immer davon aus, daß man
massig platz und eine Lagenanzahl -> unendlich hat. Die Realität ist
leider fast immer anders
Reinhard Kern schrieb:> Uwe N. schrieb:>> Wenn du das so machst, dann sieht dein Signal immer GND unter (über)>> sich.> Stimmt nur, wenn man keine Blind/Buried Vias benutzt.
Was die vergrabenen Vias betrifft, stimme ich zu. Bei Blindvias klappt
das (je nach Lagenaufbau) schon, siehe Beispiel:
BS - Signale
i2 - GND
i3 - Signale
i4 - VCC
i5 - GND
LS - Signale
Ein Blindvia von BS nach i3 sieht immer GND ober/ unter sich. Hier hat
man zusätzlich den Vorteil, das die Referenzebene nicht wechselt - man
benötigt hier keine GND-Vias. Die werden "nur" bei Referenzebenwechsel
nötig, z.B. bei Via von BS nach LS oder i3 nach LS.
Gruss Uwe
P.S.: Aspect Ratio nicht vergessen/ missachten!
Christian B. schrieb:> Bei ersterem ist nur wichtig, daß alle Leitungen am Empfänger etwa die> Gleiche Länge haben, und idealerweise kaum parallel verlaufen.> (Idealerweise kreuz und quer)
Das ist ernst gemeint? Wegen der sich ausbildenden kapazitiven Kopplung
nehme ich an?
Genau, um ein Übersprechen zu minimieren. Das ist bei einem Parallelen
Bus natürlich problematischer als bei einem Differentiellen Pair im
seriellen. Oder man legt jeweils eine GND Leitung dazwischen (wie z.B.
in den UDMA133 Kabeln gemacht)
Christian B. schrieb:> ist bei einem Parallelen>> Bus natürlich problematischer als bei einem Differentiellen Pair im>> seriellen.
Habe mir jetzt diverse Designs angesehen: Da laufen die Busse schön brav
parallel! (uc<->DDR und FPGA <->) Wissen das die Designer nicht?
Frage: Wie würde man "kreuz und quer" gezielt darstellen?
vom Platz her käme nur ein abwechselndes Queren einzelner Leiterbahnen
gegen der Restbus in Frage, jeweils mit mindestens einem Via pro
Wechsel.
Das kann es aber auch nicht sein.
Ist das aber wirklic hvon Nachteil?
Wenn die Busleitungen lange parallel verlaufen, ergibt sich zwar eine
grosse Kapazität, aber sie ist ja für alle Leitungen gleich (erhöht) und
es kommt ja mehr auf Gleichheit an, als auch anderes.
nein, die Busse werden auch kaum die ganze strecke parallel verlaufen.
Stückweise sicherlich. Aber dann auch so, daß eine durchlaufende
Taktflanke möglichst nicht auf 2 signalen gleich läuft. d.h. Mäander bei
einer Leitung am Anfang, bei der anderen ans Ende legen. Dazwischen kann
dann schon parallel geroutet werden. Es kommt immer auch auf die
Freuqenzen an. im unteren MHz Bereich ist das alles noch nicht so wild,
aber wenns dann schon über 100MHz geht sollte man sich überlegen, was
man da so zusammen baut.
Christian B. schrieb:> d.h. Mäander bei> einer Leitung am Anfang, bei der anderen ans Ende legen.
Nein, das ist genau der falsche Weg, dann laufen Pulse nicht
nebeneinander, sondern versetzt, und dadurch stört ein Puls auf einer
Leitung einen statischen Zustand auf der anderen, die Störungen werden
dadurch maximiert.
Alle Busse arbeiten nach dem Prinzip, dass der Zustand zu einem
bestimmten Zeitpunkt umgeschaltet wird und zu einem anderen Zeitpunkt,
wenn die Signale stabil sind, abgefragt wird. Den Schaltpunkt gezielt
zeitlich zu verschmieren ist eine eindeutig negative Massnahme, damit
werden die Time Margins für Setup/Hold usw. verringert.
Wenn du nach deinem Grundsatz einen PCI-Bus verlegst, kommen die Signale
auf den Einsteckkarten zu unterschiedlichen Zeiten an und der Bus ist
nicht mehr funktionsfähig.
Gruss Reinhard
Reinhard Kern schrieb:> und dadurch stört ein Puls auf einer> Leitung einen statischen Zustand auf der anderen,
Das wäre aber immer der Fall, denn irgendwann muss ja getaktet werden.
Reinhard Kern schrieb:> Den Schaltpunkt gezielt zeitlich zu verschmieren ist eine eindeutig negative
Massnahme
Ok, in der Busbetrachtung wird es deutlich: alle sollen zur gleichen
Zeit schalten, damit die "unlesbaren" Zeiten zusammenfallen. Die
Augenmaximalöffnungen müssen bei den Bussignalen beim selben Zeitpunkt
liegen. Soweit ist mir das auch klar.
Die Mäanderfrage hätte aber ihre Bedeutung bei den Reflexionen und zwar
weniger, wegen der indivduellen Angleichung, sondern der Gesamtlänge:
Ich habe mir nämlich überlegt, dass die Reflexionen ja auch in
Abhängigkeit der Länge über die Leitung laufen und dann, wenn sie am Pin
ankommen, maximal stören.
Daher komme ich zu dem Schluss, dass man Bauteile so gruppieren muss,
bzw die Leitungen so verlängern muss, dass die Ports zeitlich exakt in
den Laufzeittälern der Signale liegen, wie bei einer stehenden
Wasserwelle sozusagen.
Dann fallen die Umschaltzeitpunkte mit dem Eintreffen der Reflexionen
zusammen, verhunzen das Signal so richtig, aber niemanden stört es, weil
es nicht abgetastet wird.
?
****************
kleiner Nachtrag: Die zurücklaufenden Reflexionen fallen in den
Schaltzeitpunkt des Treibers. Was passiert da? Werden die besser
geschluckt?
R. K. schrieb:> ?
Dann soll das eine Frage sein? Also, man designt auf Leiterplatten nicht
mit Reflexionen, sondern diese sind durch die Terminierung
auszuschliessen. Ausnahme ist der PCI-Bus, bei dem sind tatsächlich die
Reflexionen am Ende in das Design einbezogen worden, was schon immer als
abenteurlich galt. Und wegweisend war das auch nicht, aus allen
möglichen Gründen, u.A. ist das Design meines Wissens ausgelegt auf 4
Steckplätze und funktioniert anders nicht mehr so zuverlässig. Die
Nachfolgenormen haben das auch nicht mehr weiterentwickelt, sondern
verwenden richtige Wellenleiter.
Das ist auch einfach eine Frage der Laufzeit, für GHz-Systeme dauert es
viel zu lang bis der Impuls zurückkommt. Eine sich wie eine Welle von
der Quelle aus über die LP ausbreitende Flanke kann man dagegen
wunderbar synchron verarbeiten, wobei synchron in dem Fall überall auf
der LP ein anderer Zeitpunkt ist. Ich will damit nicht behaupten, dass
das trivial wäre, ein bisschen HF-Basiswissen braucht man schon.
Gruss Reinhard
Reinhard Kern schrieb:> Dann soll das eine Frage sein? Also, man designt auf Leiterplatten nicht> mit Reflexionen, sondern diese sind durch die Terminierung auszuschliessen
Schon klar, aber kein Abschluss ist ideal, schon wegen des nichtlinearen
Treiberverhaltens, ein bissl was kommt zurück.
>für GHz-Systeme dauert es viel zu lang bis der Impuls zurückkommt.
Hm, der impuls kommt aber zurück (soviel es eben halt ist) und wenn er
denselben Takt nicht stört, weil der vorüber ist, dann eben einen der
nächsten, oder?
Aus einer RAM-Doku habe ich entnommen, dass man mit 165ps/inch rechnen
kann. Das wären gut 50% der Lichtgeschwindigkeit, was mir plausibel ist.
Bei einer Taktfrequenz von 200MHz reichte das somit für 75cm, bei 2GHz
aber nur für 7,5cm und damit unter 4cm für die halbe Distanz.
Bei einer Anordnung wie der hier: Treiber - RAM1 - RAM2 mit je 2cm
Abstand, ist das Signal 6cm unterwegs wenn es vom RAM2 einmal
reflektiert und nach dem Treiber wieder bei ihm ankommt. Es hat dabei
zweimal einen Abschluss von 90% "gesehen" und hätte immer noch 9%
Amplitude.
Reinhard Kern schrieb:> Nein, das ist genau der falsche Weg, dann laufen Pulse nicht> nebeneinander, sondern versetzt, und dadurch stört ein Puls auf einer> Leitung einen statischen Zustand auf der anderen, die Störungen werden> dadurch maximiert.
Ok, das leuchtet mir ein. Da hab ich wohl etwas Mißverstanden. Bisher
hatte es nicht die Rolle gespielt, da bei den High Speed Designs die ich
bisher gemacht habe immer so wenig Platz vorhanden war, daß man Glück
hatte die Mäander überhaupt irgendwo unterzubringen. Erstaunlicherweise
liefen die Designs dennoch auf Anhieb. Allerdings hab ich dort auch die
Leitungen eher kreuz und quer über die Lagen geführt, sie waren somit
kaum parallel, was vermutlich den negativen Effekt des versetzten
Mäanders wieder ausgeglichen hat da die Leitungen gegenseitig kaum
übersprechen konnten.
Hallo,
ich hatte das auch hauptsächlich auf Differential Pairs gemünzt. Das ist
in Bernds Link timing1 auf Seite 6 auch schön erläutert, besser könnte
ich es auch nicht. Prinzipiell müssen positiver und negativer Puls
möglichst genau nebeneinander her laufen, sonst funktioniert das
Differentielle daran nicht.
Gruss Reinhard