Hallo, ich route das erste mal in größerem Rahmen LVDS-Signale. Ich habe 16 LVDS-Pärchen (4 ADCs mit jeweils 4-Pärchen) welche von einem Sensor an einen FPGA geroutet werden sollen. Zo-Spezifikation=100 Ohm, f=150 MHz. Ich habe nun ein paar Verständnisprobleme, vorallem in Bezug auf die Zusammenarbeit mit dem Platinenhersteller... Es ist eine 10Layer-Paltine geworden, allerdings habe ich soviele versch. Spannungen und Signale, das nur 2 Layer wirklich für LVDS-Signale übriggeblieben sind. 1) Ich musste nun die LVDS-Signale sowohl auf den vorgesehenen 2 Layern als auch auf TOP, BOTTOM und einem weiterem internen Signal-Layer routen. Es sind also mind. 2 Vias pro Pärchen im Signalfluss. Ist das noch OK oder NO-GO? 2) Darf ich auf den LVDS-Layern auch noch andere Signale routen? 3) Bei Altium sind standartmässig 500 mil als "max. uncoupled length" eingestellt. Das halte ich ein. Aber ist das auch OK? 4) Leiterbahnbreite+Leiterbahnabstand: Ich habe mir die Polar Instruments Software-Demo besorgt und habe erst einmal für Edge Coupled Offset Stripline 1B1A, FR-4, 300µ-Substrat und Er=4.3 gerechnet um einen Anhaltspunkt zu bekommen. Allerdings ist mir nicht ganz klar, inwiefern diese Werte nun korrekt sind. Ich habe mit dem Platinenhersteller telefoniert und er meinte, ich solle die Platine einfach schicken und sie würden dann ggf. auf mich zurück kommen, falls Anpassungen gemacht werden müssen. Allerdings arbeitet dieser Hersteller nur mit Gerberfiles, ich kann ihm nicht direkt das Altium-PCB schicken. Woher weiss er denn nun, welche der Signale die 100-Spec benötigen und welche nicht, diese Information ist ja in der Gerberfiles nicht enthalten, oder doch? Mir ist der gesamte Vorgang einfach nicht ganz klar, kann mich da jemand erhellen? Wie läuft soetwas normalerweise ab? Woher soll ich den z.B. wissen ob der Hersteller nun Edge Coupled Offset Stripline 1B1A oder Edge Coupled Offset Stripline 1B2A verwendet etc? Bekomme ich diese Informationen normalerweise nicht vorab? 5) Darf ich auf den Layern auf denen ich die LVDS-Signale route weiterhin GND-fills verwenden? Zwischen den P+N-Tracks eines Pärchens habe ich kein GND-fill, aber zwischen den Pärchen schon. 6) Wieviel Abstand muss ich mind. jeweils zwischen den Pärchen einplanen? 7) Wenn ich jetzt über die gesamte Leitungslänge die 100 Ohm-Spec einhalte, benötige ich am FPGA (IBUFDS) dann noch einen 100 Ohm-Widerstand zwischen den P+N-Tracks oder hat sich das erledigt? DANKE für eure Hilfe!
:
Bearbeitet durch User
full well schrieb: > Woher > weiss er denn nun, welche der Signale die 100-Spec benötigen und welche > nicht, diese Information ist ja in der Gerberfiles nicht enthalten Ganz einfach: in so einem Fall weise ich den LVDS-Signalen nicht z.B. 10 mil Breite zu, sondern 10,1 mil - dann muss er sich nur diese Leiterbahnen anzeigen lassen. full well schrieb: > Wenn ich jetzt über die gesamte Leitungslänge die 100 Ohm-Spec > einhalte Es hat wenig Sinn, hier ein Seminar über differential pairs zu veröffentlichen, das hat in einer US-Fachzeitschrift mehrere Hefte belegt, aber 2 wesentliche Punkte daraus (es wird allerdings viel darüber diskutiert, auch z.T. mit wenig Fachverstand): 1. Die Einhaltung der Single Ended Impedanz (50 Ohm) ist für die Signalintegrität wichtiger als die differentielle Impedanz. 2. Die oft geäusserte Empfehlung, die beiden Leitungen mit dem kleinsten erlaubten Absatnd zu verlegen, ist generell falsch. Man kann selbst nachrechnen, dass die Beziehung Zd = 2 x Zs umso weniger erfüllt ist, je geringer der Abstand ist, wenn man sich die Feldverteilungen ansieht, ist das auch logisch. Es sollten aber BEIDE Impedanzen möglichst eingehalten werden. Das gelingt annähernd, wenn man den Abstand grösser wählt als das DRC-Minmum, was man auch leicht nachrechnen kann: bei der gewählten Lösung sollten die Abweichung sowohl bei 50 als auch bei 100 Ohm gering sein (ein paar Prozent). full well schrieb: > 3) Bei Altium sind standartmässig 500 mil als "max. uncoupled length" > eingestellt. Das halte ich ein. Aber ist das auch OK? Dazu musst du dir die Wellenlänge deiner Signale berechnen, verglichen damit muss der Längenunterschied gering sein. full well schrieb: > Woher soll ich den > z.B. wissen ob der Hersteller nun Edge Coupled Offset Stripline 1B1A > oder Edge Coupled Offset Stripline 1B2A verwendet etc? Der Hersteller produziert schlicht so wie in den Gerberfiles vorgesehen, es sei denn, nach seinen Berechnungen und Erfahrungen ergibt das nicht die gewünschte Impedanz, dann meldet er sich. Die Physik ist entscheidend, nicht ein Rechenmodell. full well schrieb: > 5) Darf ich auf den Layern auf denen ich die LVDS-Signale route > weiterhin GND-fills verwenden? Wenn du das in die Berechnung einbeziehst - die Impedanz ändert sich dadurch erheblich. full well schrieb: > 7) Wenn ich jetzt über die gesamte Leitungslänge die 100 Ohm-Spec > einhalte, benötige ich am FPGA (IBUFDS) dann noch einen 100 > Ohm-Widerstand zwischen den P+N-Tracks oder hat sich das erledigt? Nichts erledigt sich von selbst, wenn das FPGA keine Terminierung hat, musst du selbst dafür sorgen. full well schrieb: > 6) Wieviel Abstand muss ich mind. jeweils zwischen den Pärchen > einplanen? Da kannst du eine Berechnung des Crosstalks durchführen, oder einfach soviel Platz lassen, dass eine zusätzliche Leitung dazwischenpassen würde - das reicht meistens. Dummerweise ist das sehr abhängig von der Strecke, die die Signale parallel laufen. Es gibt aber Software zur Berechnung, die normalerweise in die CAD-Software integriert ist, weil ja daraus die Geometriedaten benötigt werden. Gruss Reinhard
Anstelle von 2 single ended haette ich eher ein coplanar paar genommen und der Abstand zum GND aussenrum etwas groesser als dazwischen.
Aeh schrieb: > haette ich eher ein coplanar paar genommen > und der Abstand zum GND aussenrum etwas groesser als dazwischen. Die GND-Planes müssen trotzdem in die Impedanzberechnung einbezogen werden (d.h. die beiden am nächsten liegenden). Das wäre dann coplanar differential stripline oder coplanar differential waveguide. Gruss Reinhard
Danke erst einmal Reinhard soweit, hast mir weitergeholfen...
Nochmal eine Frage zur uncoupled length. Ich habe jetzt max. 420mil uncoupled. Die Problematik ist das Highspeedkabel (mit dem ich auf das Mainboard gehe) bzw. die Buchse dazu. Wie man im Screenshot sieht, liegen alleine die coupled pins ca. 180mil auseinander. Ich habe von Samtec die Aussage, das es defintiv immer die pads 1+2, 3+4 usw sind, die coupled sind. Selbst wenn ich von innen an die pads route enstehen ca. 50-60mil uncouled length. Gibt es hier einen Trick um das zu reduzieren?
Hat sich erledigt, die Diff-Pairs sind 1-3, 2-4 und so weiter...hab die Samtec-infos falsch gelesen :)
Die können doch gar nicht coupled sein, dazwischen verläuft eine Masseplatte im Steckverbinder?! Sicher dass ihr da von den gleichen Pin Nummern geredet habt?
Arg... Tab mit Datenblatt offen gehabt und deinen neuen post nicht mehr gesehen ;-)
Toradex hat da eine gute Appnote für das Erstellen von High Speed PCBs. Vieleicht findest du darin noch einige gute Hinweise. http://docs.toradex.com/101123-apalis-arm-carrier-board-design-guide.pdf Cheers
LTC1043 schrieb im Beitrag #3396579: > Toradex hat da eine gute Appnote für das Erstellen von High Speed PCBs. Das ist mehr als eine Appnote, das ist schon fast ein Lehrbuch. Ich habs nicht ganz durchgelesen, aber so auf Anhieb finde ich auch nichts was irgendwie nicht richtig oder umstritten wäre, kann ich alles unterschreiben. Auch wenn drinsteht, man soll 45Grad-Winkel verwenden, was hier immer wieder erbittert bekämpft wird - schaden tun sie garantiert nicht. Gruss Reinhard
Danke erstmal für den Link, sieht sehr gut aus. Vom routing generell habe ich glaube alles eingehalten. Allerdings stellen sich mir weiterhin 2 Fragen (kann auch damit zusammenhängen das ich das Dokument jetzt nicht 100% gelesen habe :). 1. Wenn ich nun alle Diff-Pairs auf die gleiche Länge tunen möchte, verhält sich Altium etwas seltsam. Wenn ich nun den Style "miltered with lines" oder "miltered with arcs" einstelle muss ich den Gap schon extrem groß einstellen (>35mil) damit Altium tatsächlich für beide Tracks die 45°-Regel einhält. Wenn ich einen Gap >35mil einstelle wird das "innere" pair immer automatisch mit 90°-Winkeln geroutet. >35mil sind für mich aber nicht machbar, da ich den Platz einfach nicht habe. Bitte schaut euch mal den Screenshot an. Kann ich das nun so lassen, hab ich ein setting vergessen? 2. Wie gehe ich mit den Vias beim length tuning um (also dazugehörige Vias um die Diff-Pairs von einen auf den anderen Layer zu routen)? Ich meine wenn ich in jedem Diffpair die gleiche Anzahl an Vias habe, stimmt die Länge ja wieder. Was aber, wenn ich bei DIFF-Pair-1 nur einmal auf einen anderen Layer muss, bei Diff-Pair-2 aber 2mal (also 4 Vias insgesamt). So weit ich weiss, berücksichtigt Altium die Vias beim length tuning nicht. Wie berechne ich nun die zusätzlichen Längen die durch die Vias entstehen? Danke schonmal und schönes Wochenende!
full well schrieb: > Wie berechne ich nun die zusätzlichen Längen die > durch die Vias entstehen? Manuell. (ja geht wirklich nicht anders)
Na Du kennst ja hoffentlich den Lagenaufbau? Also kennst Du auch den Abstand von einer zur anderen Lage.
d.h. wenn ich folgenden Layerstack habe (Siehe Screenshot) und jetzt von Layer-LVDS1 zu Layer-TOP per VIA route, muss ich 3 x 0.3mm = 0.9mm addieren? Oder 4 x 0.3mm?
Hat noch jemand was zu dem 45°-Problem zu sagen? :)
fullwe schrieb: > Hat noch jemand was zu dem 45°-Problem zu sagen? Platz her oder hin, es ist ohnehin nicht gut, wenn der Abstand der 2 Schleifenarme nur so gross ist wie der Abstand innerhalb des Paars - da gibt es Kopplungseffekte des Signals auf sich selbst, die nicht einfach zu berechnen sind, und die vor allem nur bei einem der beiden Leiter wirken. Macht man den Abstand deutlich grösser, um das zu verringern, verschwindet auch das 45 Grad-Problem. So wie gezeichnet wäre ja der 45 Grad-Abschnitt zu kurz, um einen Einfluss zu haben, deswegen macht ihn Altium garnicht erst. Vielleicht sieht es anders aus, wenn man statt 2 x 45 Grad einen Halbkreis verwendet (Punkt 1 gilt trotzdem). Gruss Reinhard
full well schrieb: > und jetzt von > Layer-LVDS1 zu Layer-TOP per VIA route, muss ich > 3 x 0.3mm = 0.9mm addieren? Oder 4 x 0.3mm? Nichts davon ist richtig. Vias haben generell eine andere Impedanz als die Leiterbahn, also ist 1mm Via-Hülse keineswegs = 1mm Leiterbahn. Dazu kommt die Tatsache, dass Vias i.A. nicht nur von der einen auf die andere Lage gehen, sondern weiter zu anderen Lagen, also Stichleitungen bilden, und auch beim Durchgang durch GND-Lagen zusätzliche Kapazitätlast bringen. Eine allgemein gültige Angabe ist schon deshalb unsinnig, weil die genauen Eigenschaften von der Geometrie des ganzen Vias abhängen und daher selbst bei gleichen Durchmessern sich von Via zu Via unterscheiden können. Eine Software, die das alles berechnet, gibt es meines Wissens nicht zu bezahlbaren Preisen. Eine Korrektur von etwa der Länge des Vias ist besser als ganz ignorieren, mehr aber auch nicht. Notfalls müsste man den Effekt eines Vias an einem Testmuster mit geeignetem Equipment nachmessen. Ich gehe aber davon aus, dass viele real existierende Leiterplatten ohne genaue Berücksichtigung der Vias erstellt wurden und trotzdem funktionieren, wenn man nicht zuviele Vias einbaut. Gruss Reinhard
Danke... aber ich weiss nicht so ganz ob hier Altium nicht doch einfach buggy (oder von mir falsch eingestellt ist). Selbst wenn ich den Gap 10mal so groß wie die max. Amplitude (2mm zu 0.2mm) mache, verwendet AD bei mir für einen der Tracks 90°-Winkel. Reinhard Kern schrieb: > Platz her oder hin, es ist ohnehin nicht gut, wenn der Abstand der 2 > Schleifenarme nur so gross ist wie der Abstand innerhalb des Paars - da > gibt es Kopplungseffekte des Signals auf sich selbst, die nicht einfach > zu berechnen sind, und die vor allem nur bei einem der beiden Leiter > wirken. Verstanden, aber siehe oben...
das passiert übrigens auch wenn ich "...with arc" auswähle :/
Hab nochmal im AD-Forum nachgefragt. War tatsächlich falsch eingestellt. Hier die Antwort: there is a setting called "increase mitter radius", while you are tuning press the 2 (NOT on the keypad, but above the qw) to increase the mitter. You can find these settings if you press the tilde ('~') button while tuning. Jetzt hab ich auch 45°-Tracks :)
Muss noch einmal auf euch zurück kommen. Habe wieder einen elementaren Fehler begangen :/ Ich hatte das 10-Layer-PCB an den Hersteller geschickt,hatte und aber für Prepreg und Core den Standart "FR4/0.3mm" eingestellt. Jetzt kam die Platine und ist eben 3mm dick geworden, d.h. das bestimmte Pins nicht mehr am anderen Ende ankommen und ich sie nicht richtig löten kann :/ Ich hätte gerne wieder so 1.5mm bis 1.8mm PCB-Dicke. Kann mir jemand ein gutes Material (hab leider keine Ahnung was es alles so auf dem Markt gibt) nennen, welches gut geeignet ist und mir die gewünchte Dicke bei 10-Lagen liefert?! Aber auch gleichzeitig nicht zu teuer ist... Danke!
Ich wunderte mich damals als ich geantwortet hatte schon beim dem Screenshot - dachte eigentlich das wäre nur erstmal zum rumspielen so eingestellt gewesen. ;-) Sowas bespricht man am besten vorher mit dem Platinenhersteller! 10 Lagen kannst Du auch dünner als 1.5mm bekommen, das geht alles. (mit entsprechend angepassten Leiterstrukturen für Impedanzen!)
Hallo, Leiterplattenaufbauten können selbst konfiguriert und berechnet werden. Die Ausgangsmaterialien sind ab Herstellwerk in versch. Dicken lieferbar. Ein Hersteller für Basismaterial ist z.B. Isola Hier kann man Lagenaufbauten beispielhaft einsehen / berechnen: http://www.isola.de/d/multical/MultiCal3.html Grundsätzlich wird der Lagenaufbau von Entwicklung / Layout vorgegeben (natürlich auch vorher berechnet). Da gibt es auch einige Dinge zu beachten. Hier wurde mal ein ML-10 vorgestellt : Beitrag "Unterschied zwischen Core und Prepreg" Wichtig: Nicht jeder LP-Hersteller nutzt die gleichen Ausgangsmaterialien, das kann (muß) aber vorher erfragt werden, sonst sind die Berechnungen nur Schätzungen. Die unterschiedlichen Ausgangsmaterialien haben unterschiedliche el. Eigenschaften .... Nicht jeder LP-Hersteller hat "alle" Materialdicken auf Lager. Wichtig ist aber die Erkenntnis: veränderter Lagenaufbau mit veränderten Ausgangsmaterialien führt zu geänderten Leiterbreiten!!! Eine Änderung "Auf Zuruf" wird kein gutes Ergebnis liefern. Auch hier hilft einen umfangreiche Google-Suche weiter!!! Support bieten: LP-Hersteller oder auch der Verbände wie FED oder VdL... An sich ist es aber ein sehr umfangreiches Thema.... Viel Erfolg, MiSchl
Hallo, wenn du den Lagenaufbau von 3 auf 1,5 mm änderst, werden deine Leiterbahnen tendenziell schmäler - da hast du Glück gehabt, oft muss man nach Änderung der Lagen von vorne anfangen, weil nichts mehr passt. Gruss Reinhard
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.