Forum: Analoge Elektronik und Schaltungstechnik Signalintegrität


von pcb (Gast)


Lesenswert?

Hey ich habe sehr wahrscheinlich ein Signalintegritätsproblem bei PCIe 
gen2.

 Ein am PCIe-host hängender externer switch verrät mir nach dem 
linux-boot, dass zwar der 5GT link aufgebaut wurde es aber dennoch zu 
"fatal uncorrectable errors" kommt.

Mein Schaltplan ist dem vom Referenzdesign 1zu1 nachgebaut, ich mutmaße 
das es eher an den PCB-Stack und meiner Berechnungen nicht optimal 
sind.. Und ich habe an der falschen Ecke gespart als ich nicht 
"impedanzkontrolle" angeclickt habe :(
Erfahrungsgemäß funktioniert das tastächlich noch bei DDR3L und gigabit 
ethernet aber PCIe...

Ich nutze einen vordefinierten Lagenaufbau von multi-cb (Type 4L-01).
https://www.multi-circuit-boards.eu/fileadmin/pdf/leiterplatten_lagenaufbau/Multi-CB_Definierter_Lagenaufbau_Impedanzen_en.pdf

Bei differentiellen Leitungen auf Layer{1,4} mit 100 Ohm wird angegeben:
  {width|space|width} = 120µm | 115µm | 120µm

Ich habe aber mein Layout wie folgt geroutet:
  {width|space|width} = 150µm | 150µm | 150µm

Mein Berechnungstool mein zum ersteren 108 Ohm und beim zweitem 104 Ohm.
Also so falsch kann es doch eigentlich nicht sein?
Liegt es an den Ungenaugkeiten bei der Fertigung, aufgrund der Tatsache, 
dass es keine Impedanzkontrolle stattfand?

von Wühlhase (Gast)


Lesenswert?

Hui, schwer zu sagen von hier aus. 100Ω und 108Ω sind schonmal 8% 
Fehler, dann noch Fertigungstoleranzen...

Aber ich habe PCI ehrlich gesagt noch nie gemacht. Sind das auch 
LVDS-Signale?

Ansonsten: Könntest du vielleicht auch ein Problem mit 
Übersprechen/Crosstalk haben?

von pcb (Gast)


Lesenswert?

>>Aber ich habe PCI ehrlich gesagt noch nie gemacht. Sind das auch
>>LVDS-Signale?
Ja zuindest ist das bei TX und RX so., wobei diese AC-mäßig zu 
entkoppeln sind. Hierbei werden nah am TX Ausgang 100nF caps 0402 
verbaut.

>>Ansonsten: Könntest du vielleicht auch ein Problem mit
>>Übersprechen/Crosstalk haben?
Ja nun ich hab mir die Spezi zu PCIe Gen2 angeschaut und habe alles 
möglichs eingehalten was da stand. Der Abstand zwischen zwei 
differentiellen paaren ist mindestens 600µm (bis an wenigen stellen, wie 
z.b. ein am IC selbst).


Ich kann Messtechnisch leider nichts machen. Meine Oscies mit 3dB 200Mhz 
kann man bei derart schnellen und kleinen Signalen einfach nur in den 
Papierkorb legen :D

5Ghz + ein paar harmonische ...

Im Rechdesign stelle ich fest, dass sogar LDO´s für die 1V(mit 1A) core 
Spannung des switches verwendet wurden. Auch hier dachte ich man könnte 
Wirkungsgradmäßig noch was besser machen und nahm nen DCDC.. hier kommen 
noch 50mV Störimpulse drauf ..

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

pcb schrieb:
> Mein Berechnungstool mein zum ersteren 108 Ohm und beim zweitem 104 Ohm.
Und lass es auch mal 80 Ohm oder 120 Ohm sein, das bringt eine stabile 
Verbindung nicht um.

> Also so falsch kann es doch eigentlich nicht sein?
Wie gut ist die Versorgung und die Abblockung der PCIe Phys? Sitzen die 
Pufferkondensatoren auf kürzestem Weg zwischen dem jeweiligen 
Versorgungs-Pärchen?

pcb schrieb:
> hier kommen noch 50mV Störimpulse drauf
... soweit du die messen kannst. Was es der PLL im Phy eben auch nicht 
leicher macht.

pcb schrieb:
> Mein Schaltplan ist dem vom Referenzdesign 1zu1 nachgebaut
Aber dann doch statt der Linearregler einen Schaltregler verwendet. Dann 
bastle doch jetzt einfach zum Test einen Linearregler dazu und disable 
den Schaltregler.

: Bearbeitet durch Moderator
von Dergute W. (derguteweka)


Lesenswert?

Moin,

Wellenwiderstand wuerd' ich ausm Bauch raus als jetzt hier eher nicht 
auf dem ersten Platz der Hochverdaechtigen sehen.

Viel eher das hier:
pcb schrieb:
> Im Rechdesign stelle ich fest, dass sogar LDO´s für die 1V(mit 1A) core
> Spannung des switches verwendet wurden. Auch hier dachte ich man könnte
> Wirkungsgradmäßig noch was besser machen und nahm nen DCDC.. hier kommen
> noch 50mV Störimpulse drauf ..

Wie siehts denn bei dir mit den Siebmitteln in den Versorgungsspannungen 
aus?
Deinen Schaltregler wirste wohl ohne extreme-dremeling stilllegen 
koennen und mal testweise extern die entsprechende Spannung einspeisen?

Ist aber natuerlich schon arg im Trueben gefischt...

Gruss
WK

Edit: Ups, zu langsam...

: Bearbeitet durch User
von Wühlhase (Gast)


Lesenswert?

pcb schrieb:
> Ja zuindest ist das bei TX und RX so., wobei diese AC-mäßig zu
> entkoppeln sind. Hierbei werden nah am TX Ausgang 100nF caps 0402
> verbaut.

Wo hast du das her, das diese noch irgendwie entkoppelt werden müssen?

Wenn die Hinweise auf die Spannungsversorgung nichts bringen, lass den 
Vcc-Umbau trotzdem erstmal wie er ist und nimm die Kondensatoren aus den 
LVDS-Leitungen wieder raus.


pcb schrieb:
> Ja nun ich hab mir die Spezi zu PCIe Gen2 angeschaut und habe alles
> möglichs eingehalten was da stand. Der Abstand zwischen zwei
> differentiellen paaren ist mindestens 600µm (bis an wenigen stellen, wie
> z.b. ein am IC selbst).

Naja, das kommt aber auch auf den Abstand zur Referenzlage an. Je 
geringer der Abstand zur Referenzlage ist, desto weniger Abstand kann 
man sich zwischen den LVDS-Leiterpärchen erlauben.

von pcb (Gast)


Angehängte Dateien:

Lesenswert?

>> > Also so falsch kann es doch eigentlich nicht sein?
>> Wie gut ist die Versorgung und die Abblockung der PCIe Phys? Sitzen die
>> Pufferkondensatoren auf kürzestem Weg zwischen dem jeweiligen
>> Versorgungs-Pärchen?
Hier dürfe ich auch nen Schnitzer haben, die Caps liegen unterhalb des 
Chips und sind aus Platzgründen nicht auf der Layerseite, auf dem der 
Chip sitzt. Dafür habe ich unter den Pins alles mit 100nF caps zu 
gepflastert. Die beiden Betriebsspannungen wurden jeweils durch einen PI 
Filter befiltert (aber dieser wirkt leider nicht gut genug). Es ist hier 
wirklich besser einen LDO zu nutzen wie im ref design, denn die vorgaben 
nach databla sind {1.0V +-10%,3.3V +-10%} und mit den Störsignalen bin 
ich ab und an locker auserhalb der spezi.
(siehe Bilder:  switch_unten, switch_oben und filter)

>> > Ja zuindest ist das bei TX und RX so., wobei diese AC-mäßig zu
>> > entkoppeln sind. Hierbei werden nah am TX Ausgang 100nF caps 0402
>> > verbaut.
>>
>> Wo hast du das her, das diese noch irgendwie entkoppelt werden müssen?
>>
>> Wenn die Hinweise auf die Spannungsversorgung nichts bringen, lass den
>> Vcc-Umbau trotzdem erstmal wie er ist und nimm die Kondensatoren aus den
>> LVDS-Leitungen wieder raus.
Das ist im Ref Design so, steht im Datenblatt und steht auch in der PCIe 
Gen 2 spezi. Die CAP´s gehören dort zwischen RX und TX, wobei diese naha 
am sender also TX zu platzieren sind.


>> > Ja nun ich hab mir die Spezi zu PCIe Gen2 angeschaut und habe alles
>> > möglichs eingehalten was da stand. Der Abstand zwischen zwei
>> > differentiellen paaren ist mindestens 600µm (bis an wenigen stellen, wie
>> > z.b. ein am IC selbst).
>>
>>Naja, das kommt aber auch auf den Abstand zur Referenzlage an. Je
>>geringer der Abstand zur Referenzlage ist, desto weniger Abstand kann
>>man sich zwischen den LVDS-Leiterpärchen erlauben.
Ja damit hst du natürlich recht. Nun habe ich einen definierten 
Lageaufbau aber heftigen Fertigungstoleranzen. Bei PCie muss ich bei 
meiner nächsten Platine unbedingt die impedanzkontrolle aktivieren, um 
innerhalb 100 Ohm +- 10% zu bleiben.


Schaut euch bitte den Layoutausschnitt an (das rote/top). Ich bin mir 
nicht sicher ob das es sinnvoll ist die Masse so tight an den 
differentiellen Leitungen zu haben.

von pcb (Gast)


Lesenswert?

Noch ein Nachtrag:
>>nach databla sind {1.0V +-10%,3.3V +-10%} und mit den Störsignalen bin
>>ich ab und an locker auserhalb der spezi
Die SPannung bricht aufgrund der Belastung von 1,08V auf 995V ein. Und 
mit den Störimpulsen bin ich dann ab und an drunter.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

pcb schrieb:
> Ich bin mir
> nicht sicher ob das es sinnvoll ist die Masse so tight an den
> differentiellen Leitungen zu haben.

Naja, wenn dann die Impedanz von dem Apparat mit der Masse gleich 
nebendran stimmt, ist alles in Butter.
Wenn du aber die Impedanz nur fuer ein Leitungspaeaerchen mit einer 
GND-Plane drunter berechnet hast, wirst du mit dem real existierenden 
PCB ziemlich grob Z maessig daneben liegen.

Gruss
WK

Edit: Wie sieht's denn mit der Massefreistellung der 
Durchkontaktierungen bei den kritischen Signalen auf den GND-Layern aus?

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

pcb schrieb:
> Schaut euch bitte den Layoutausschnitt an
Mit den Thermals hast du dir unnötige Pigtails gebaut...

Was schribt denn das Datenblatt des unbekannten Bauteils zum Pad 129?

von Wühlhase (Gast)


Lesenswert?

pcb schrieb:
>>> > Ja zuindest ist das bei TX und RX so., wobei diese AC-mäßig zu
>>> > entkoppeln sind. Hierbei werden nah am TX Ausgang 100nF caps 0402
>>> > verbaut.
>>>
>>> Wo hast du das her, das diese noch irgendwie entkoppelt werden müssen?
>>>
>>> Wenn die Hinweise auf die Spannungsversorgung nichts bringen, lass den
>>> Vcc-Umbau trotzdem erstmal wie er ist und nimm die Kondensatoren aus den
>>> LVDS-Leitungen wieder raus.
> Das ist im Ref Design so, steht im Datenblatt und steht auch in der PCIe
> Gen 2 spezi. Die CAP´s gehören dort zwischen RX und TX, wobei diese naha
> am sender also TX zu platzieren sind.

Steht da auch eine nähere Erklärung, was die bringen sollen?

Ich will mich nicht soweit aus dem Fenster lehnen und die Specs für 
blödsinnig halten, allerdings machen die Kondensatoren genau das, was du 
z.B. mit dem Sicherheitsabstand von 600µm zu verhindern suchst.

LVDS sind Stromsignale. Sowas ist in vielen Fällen relativ robust, aber 
Stromsignale reagieren allgemein allergisch auf kapazitive Kopplungen, 
das ist deren Pferdefuß.


pcb schrieb:
> Schaut euch bitte den Layoutausschnitt an (das rote/top). Ich bin mir
> nicht sicher ob das es sinnvoll ist die Masse so tight an den
> differentiellen Leitungen zu haben.

Die Masseflutung hast du doch in deiner Impedanzberechnung mit 
einbezogen, oder? Das sind zwei unterschiedliche Fälle: Leiberbahn über 
Referenzlage und Leiterbahn über Referenzlage umgeben von 
Referenzpotential.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Wühlhase schrieb:
> allerdings machen die Kondensatoren genau das, was du z.B.
> mit dem Sicherheitsabstand von 600µm zu verhindern suchst.
Sie entfernen Gleichspannungsunterschiede beim Biasing von TX und RX...

: Bearbeitet durch Moderator
von blub (Gast)


Lesenswert?

>>> > entkoppeln sind. Hierbei werden nah am TX Ausgang 100nF caps 0402
>>> > verbaut.

Bei LVDS Sata hab ich mal wenige pF gesehen.
100 nF halte ich wegen parasitaerer Effekte fuer viel zu gross.

von Wühlhase (Gast)


Lesenswert?

Lothar M. schrieb:
> Wühlhase schrieb:
>> allerdings machen die Kondensatoren genau das, was du z.B.
>> mit dem Sicherheitsabstand von 600µm zu verhindern suchst.
> Sie entfernen Gleichspannungsunterschiede beim Biasing von TX und RX...

Wären die denn so ein Problem? Immerhin liegt die Signalinformation bei 
LVDS ja in der Stromrichtung.

von P. S. (namnyef)


Lesenswert?

Kann mir auch nicht vorstellen, dass es an der Leiterbahngeometrie 
liegt. Auch, wenn man bei verkoppelten Leitungen die formelbasierten 
Impedanz-Rechner (vs. Field Solver) mit Vorsicht genießen sollte.

Wenn ich die Werte von Multi-CB in meinen Field Solver hacke, komme ich 
auf 100,7 Ohm. Bei deiner Geometrie komme ich auf 98,9 Ohm. So falsch 
kann das vermutlich nicht sein. Selbst wenn seitens des 
Leiterplattenherstellers keine Impedanzkontrolle erfolgte.

Ohne mit entsprechender Messtechnik wird man da nur im Trüben fischen 
können.
- Ist die Versorgung ausreichend gepuffert?
- Ist die Leiterbahngeometrie wirklich uniform? Also keine ungewollte 
Änderung der Impedanz durch z. B. Löcher/Schlitze in der Referenzlage, 
Vias, Asymmetrien, andere Kupferstrukturen in der Nähe der 
Signalleitungen (z. B. Kupferflutungen), ...
- Leitungen richtig abgeschlossen?

von Purzel H. (hacky)


Lesenswert?

> ... Auch hier dachte ich man könnte Wirkungsgradmäßig noch was besser machen und 
nahm nen DCDC.. hier kommen noch 50mV Störimpulse drauf ..

Je nachdem wie agressiv der Schaltregler ist, koennen die Stoerspitzen 
viel groesser sein. Eine 1ns Nadel hat ueber 1GHz Bandbreite. Auf einen 
Datenkanal mag das eher gehen, wie auf einem Clock Kanal. Ohne ein 1GHz, 
besser mehr, Scope sieht man zuwenig. Allenfalls mit dem 
Spektrumanalyzer nachschauen.

von pcb (Gast)


Lesenswert?

>> Die Masseflutung hast du doch in deiner Impedanzberechnung mit
>> einbezogen, oder? Das sind zwei unterschiedliche Fälle: Leiberbahn über
>> Referenzlage und Leiterbahn über Referenzlage umgeben von
>> Referenzpotential.

>> Gruss
>> WK
>>
>> Edit: Wie sieht's denn mit der Massefreistellung der
>> Durchkontaktierungen bei den kritischen Signalen auf den GND-Layern aus?
Ja ich nutzen einen Formelbasierenden Solver. Hierbei wird nur die 
Impedanz anhand von Er, Tracehöhe,  Abständen zwischen Referenzplane zum 
diff Signal, Leiterzugsbreite und Leiterzugsabstand gebildet. Sollte ich 
benachbarte Masse lieber weglassen oder zumindest den Abstand so 
vergrößern, dass dieser mindestens genauso groß ist wie zur Ref-plane?


>> > Schaut euch bitte den Layoutausschnitt an
>> Mit den Thermals hast du dir unnötige Pigtails gebaut...
>>
>>Was schribt denn das Datenblatt des unbekannten Bauteils zum Pad 129?
im Databla steh nur das 129 mit Masse zu verbinden ist. Du meinst da die 
Fläche so gro0 ist, erzeuge ich große schlitze und es wäre an dieser 
stelle besser, ich würde das Pad 129 ohne thermal-stege mit der Masse 
verbinden?
Ich spiele mit dem Gedanken die Masse an den beiden äußeren Lagen 
komplett wegzulassen, schlieslich habe ich diese ja bereits in den 
inneren Lagen.


>>- Ist die Versorgung ausreichend gepuffert?
Hier habe ich auch bedenken..
Was haltet ihr von folgender Möglichkeit:
5V Systemspannung (wurde erzeugt durch DCDC) -> DCDC auf 2.0V -> LDO auf 
1.0V
Der LDO bringt doch einen hohen PSRR von ca 60db mit, da dürften dann 
doch die 50mV Störungspulse eher in der Größenordnung von einigen 10µV 
.. 100µV liegen.

>>- Ist die Leiterbahngeometrie wirklich uniform? Also keine ungewollte
>>Änderung der Impedanz durch z. B. Löcher/Schlitze in der Referenzlage,
>>Vias, Asymmetrien, andere Kupferstrukturen in der Nähe der
>>Signalleitungen (z. B. Kupferflutungen), ...
Es gibt nach andere flächen in den beiden inneren lagen aber nicht 
unterhalb den diff-Leitungen. jede Diffleitungen hat maximal 2 Vias und 
einen PCIe connector. Die Vias sind sehr klein (borhdruchmesser 200µm, 
500µm Kupfer).

>>- Leitungen richtig abgeschlossen?
Ja das erfolge wie im Referenzdesign, nur die Stromversorgung ist ein 
eigenkonstrukt und hier wird es änderungen geben.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

pcb schrieb:
>>> Edit: Wie sieht's denn mit der Massefreistellung der
>>> Durchkontaktierungen bei den kritischen Signalen auf den GND-Layern aus?

> Ja ich nutzen einen Formelbasierenden Solver. Hierbei wird nur die
> Impedanz anhand von Er, Tracehöhe,  Abständen zwischen Referenzplane zum
> diff Signal, Leiterzugsbreite und Leiterzugsabstand gebildet. Sollte ich
> benachbarte Masse lieber weglassen oder zumindest den Abstand so
> vergrößern, dass dieser mindestens genauso groß ist wie zur Ref-plane?

Da gings mir eher um: Wenn du die differentiellen Signale ueber 
Durchkontaktierungen laufen laesst, dann geht die DK ja durch die 
Masseplane durch. Und da sollten die Abstaende der DK zu dieser Plane, 
also praktisch die "Loecher" im Kupfer der Masseplane tuechtig gross 
sein, sonst ist das zu kapazitiv. Aehnliche Baustelle auch bei deinen 
Koppel-Cs: Da sollte Abstand zur Masse nebendrann sein und ggf. auch 
eine Aussparung in der Groundplane direkt unter den Cs.

Bei deiner Masse eng neben den Signalen ist mir immernoch nicht ganz 
klar, ob du das dann auch richtig gerechnet hast. Es gibt "coupled 
Microstrip line" - da sollte keine Masse auf der Signallage in der Naehe 
sein und es gibt "Differential Surface Coplanar Waveguide" - da ist 
Masse in wohldefinertem Abstand auch auf der selben Lage wie die Signale 
(und zusaetzlich noch als Plane drunter).
Das sind 2 verschiedene Geometrien.

Nebenbaustelle: Das mit dem thermal Pad ist halt so ne Sache - wenn das 
nicht vollflaechig an den Rest vom Cu angebunden ist, dann wirds wenig 
helfen. Da sollten eigentlich noch moeglichst viele DKs rein, damit die 
Waerme leicht auf moeglichst viel Kupferflaeche uebertragen werden kann. 
Allerdings dabei auch ein Auge drauf haben, dass nicht beim Loeten zu 
viel Zinn in den DKs verschwindet und nicht mehr fuer die Verbindung 
zwischen Chip und PCB da ist.

Gruss
WK

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.