Hallo, ich verwende den IC SN74LV07A, einen nicht-invertierender Treiber, dessen Ausgang oben-drain ist. Er soll über ein USB-Kabel mit einer anderen Platine kommunizieren. Um das Problem mit dem Wellenwiderstand zu lösen, möchte ich eine Serienterminierung vornehmen. Dazu muss Rs = Rz minus den Innenwiderstand der Quelle sein. Ich weiß nicht ob ich nun blind bin, aber ich finde ihn nicht im Datenblatt. http://www.ti.com/lit/ds/symlink/sn74lv07a.pdf Oder kann ich ihn aus einen der vielen Spannungs- und Stromangaben errechnen?
Hallo, Der steht in irgendeinem Baustein-Family Handbook. Aber mit einem Open Drain wird das nix. Da sind die Innenwiderstände zwischen high und low Zustand zu unterschiedlich. Gruß Anja
Anja schrieb: > Da sind die Innenwiderstände zwischen high und low Zustand zu > unterschiedlich. Wie meinst du das? Ich wäre davon ausgegangen, dass sie bei high im MΩ-Bereich liegen würden und bei low irgendwo zw. 15..50Ω. Also so wie bei einem normalen IC auch.
Moment mal.... ich habe da etwas durcheinander gebracht. Die MΩ sind ja auf der Seite von Eingängen. Nicht von Ausgängen. Verstehen tuh ich es aber trotzdem nicht.
G. schrieb: > ich verwende den IC SN74LV07A, einen nicht-invertierender > Treiber, dessen Ausgang oben-drain ist. Er soll über ein > USB-Kabel mit einer anderen Platine kommunizieren. Um das > Problem mit dem Wellenwiderstand zu lösen, möchte ich eine > Serienterminierung vornehmen. Dazu muss Rs = Rz minus den > Innenwiderstand der Quelle sein. Hmmm. Ich würde das wesentlich hemdsärmeliger versuchen: Am Empfänger mit einem Pullup terminieren, und am Sender den Open-Drain-Treiber und weiter nix. Senderseite ist so zwar total fehlangepasst, weil sie je nach Zustand zwischen Kurzschluss und Leerlauf schwankt; das dürfte aber nicht stören, weil die Empfangsseite korrekt abgeschlossen ist und somit keine Reflexionen auftreten. Speisung des Senders über das Kabel und den Pullup. Nachteil: Bei L fließen dauernd 37mA.
Anja schrieb: > Aber mit einem Open Drain wird das nix. Da hat Anja natürlich vollkommen recht. Oder der Pullup müsste auch rund 20Ω haben, aber dann gibt es kein brauchbares LOW mehr. Nimm lieber einen normalen Treiber - keinen mit Open-Drain. Dann kannst du einfach einen Serienwiderstand mit Z-(15..20Ω) nehmen. Also bei einem 50Ω-Kabel passen 33Ω sehr gut. Wenn du beim Empfänger den Open-Drain benötigst, dann gehe dort auf einen LV125 und verbinde dessen Eingang und seinen OE-Pin miteinander. Bei Low am Eingang hast du am Ausgang vom LV125 treibend Low und bei High-Input dann Hi-Z am Ausgang.
HildeK schrieb: > Nimm lieber einen normalen Treiber - keinen mit Open-Drain. > Dann kannst du einfach einen Serienwiderstand mit Z-(15..20Ω) nehmen. > Also bei einem 50Ω-Kabel passen 33Ω sehr gut. z.B. SN74LV541A USB Kabel hat übrigens 90 Ohm.
HildeK schrieb: > Da hat Anja natürlich vollkommen recht. Oder der Pullup müsste auch rund > 20Ω haben Ich hätte ja kein so großes Problem mich von meinem Gedanken mit dem open-drain zu verabschieden. Aber ich verstehe nicht, warum ihr meint, dass das nicht geht. Etwa weil die Flanke nach high dann nicht schnell genug ist? Laut Datenblatt soll der chip max. 13ns brauchen (bei 3V3).
Joe F. schrieb: > USB Kabel hat übrigens 90 Ohm Differentiell. Hat hier überhaupt nichts zu sagen. Georg
G. schrieb: > Moment mal.... ich habe da etwas durcheinander gebracht. Die MΩ sind ja > auf der Seite von Eingängen. Bei Open-Drain hast du bei high schon Recht mit MΩ-Bereich. Open Drain heißt, dass der Ausgang sich bei high im high-Z Zustand befindet.
Georg schrieb: > Joe F. schrieb: >> USB Kabel hat übrigens 90 Ohm > Differentiell. Hat hier überhaupt nichts zu sagen. Ich bin allerdings auch davon ausgegangen, dass ich Rs dann an die 90Ω anpassen müsste. Es heißt doch schließlich Rs=Rz-Ri?
G. schrieb: > Georg schrieb: >> Joe F. schrieb: >>> USB Kabel hat übrigens 90 Ohm >> Differentiell. Hat hier überhaupt nichts zu sagen. > > Ich bin allerdings auch davon ausgegangen, dass ich Rs dann an die 90Ω > anpassen müsste. Es heißt doch schließlich Rs=Rz-Ri? Ich vermute mal, dass der diff. Wellenwiderstand (zwischen D+ und D-) und der Wellenwiderstand zwischen D+/D- und GND sehr unterschiedlich sein wird. D+ und D- sind ja ein verdrilltes Adernpaar, D+ und GND nicht. Also völlig andere Geometrie im Kabel.
G. schrieb: > Ich bin allerdings auch davon ausgegangen, dass ich Rs dann an die 90Ω > anpassen müsste Nein, bei einer einzelnen Leitung eher an 45 Ohm. Georg
G. schrieb: > Ich hätte ja kein so großes Problem mich von meinem Gedanken mit dem > open-drain zu verabschieden. Aber ich verstehe nicht, warum ihr meint, > dass das nicht geht. 1. ich glaube nicht, dass der IC einen Pullup mit ca 50Ω (oder weniger, man hat ja festgestellt, dass die 90Ω die differentielle Impedanz ist) noch ordentlich nach Null ziehen kann. 2. wenn doch, dann muss er sehr kräftig und niederohmig sein. Sonst gibt es kein LOW mehr am Ausgang. 3. bei LOW hast du R81 als Serienterminierung. Der Innenwiderstand der Quelle hat ca. 15...20Ω, parallel dazu liegt R82 (wechselstrommäßig), also tatsächlich 15Ω||R82+R81. Bei HIGH hast du R81+R82. Jetzt kannst du die Widerstände so wählen, dass R81=R82≈1.5*Z ist, dann bist du mit jeder Flanke noch am nächsten dran am tatsächlichen Wellenwiderstand. (Die Parallelschaltung rührt daher, dass man hier wechseltrommäßige Betrachtungen ansetzen muss und dabei sind die Spannungsquellen kurzgeschlossen - wenn es nicht klar ist, male es dir auf) 4. Natürlich ist auch ein Push-Pull-Treiber nicht ideal und hat etwas unterschiedliche Innenwiderstände bei HIGH und bei LOW, aber das fällt dann nicht mehr auf. 10..20% Fehlanpassung machen bei Digitalsignalen keinen Ärger. Habe ich es übersehen oder hast du es noch nicht genannt: was sind das für Signale, die du übertragen musst? Möglicherweise etwas recht langsames? Woher kommt der Wunsch nach einem Open-Drain-Treiber? Wenn ich so an I²C denke in dem Zusammenhang: der Pullup wäre zu niederohmig, es ist die negative Flanke wichtig, die positive Flanke ist eh langsam. Mit einem 33Ω Serien-R könnte man die negative (schnellere) Flanke dann anpassen.
Da ein USB Kabel ein differentielles Kabel ist, sollte man auch differentiell kommunizieren, sonst ward das nichts. Was sollte man mit dem 2. Leiter tun ? offen lassen ? Fuer den Rueckkanal verwenden ?
Hier gibts viele hilfswillige Menschen, die dir korrekt antworten, dass man optimal einen Quellwiderstand R_q hat, der gleich der Leitungsimpedanz R_l ist und dass dann am Empfangspunkt R_e auch dieser Widerstand wirksam sein muss. Bei deinem Problem ist der o.C. aber KEIN PROBLEM! Grundsätzlich ist es zur Vermeidung von Reflexionen nur wichtig, dass die Abschluss-Impedanz R_e gleich der Leitungsimpedanz R_l st! Ist der Empfänger hochohmig, schaltet man einen R_e = R_l als PARALLELEN ABSCHLUSS direkt vor den Empfangsbaustein und ALLES IST GUT! Welche Impedanz R_l ein Signalleiter in deinem USB-Kabel gegen den Schirm = Masse hat, wirst du wissen, wenn du den optimalen Abschluss gefunden hast. Probierst du 50 Ohm, bist du nicht sehr weit vom Optimum entfernt. ;-)
Oldie schrieb: > Grundsätzlich ist es zur Vermeidung von Reflexionen nur wichtig, > dass die Abschluss-Impedanz R_e gleich der Leitungsimpedanz R_l > st! Das ist im Allgemeinen nicht falsch. > Ist der Empfänger hochohmig, schaltet man einen R_e = R_l > als PARALLELEN ABSCHLUSS direkt vor den Empfangsbaustein > und ALLES IST GUT! Das geht aber bei digitalen Signalen nicht. Eine normale, digitale Quelle kann seltenst einen 50Ω-Abschluss treiben. Und bei einem OC-System mit PullUp erst recht nicht. Also: nichts ist gut!
HildeK schrieb: > Das geht aber bei digitalen Signalen nicht. Mit digital hat das überhaupt nichts zu tun, sondern mit der Leistungsfähigkeit des Treibers. Für 5V-Signale an 50 Ohm braucht man Treiber mit 100 mA, das kann ein normaler LS, HC oder HCT nicht. Dafür kann man z.B. einen SN74128 nehmen, gibt noch viele andere. Georg
HildeK schrieb: >> Ist der Empfänger hochohmig, schaltet man einen R_e = R_l >> als PARALLELEN ABSCHLUSS direkt vor den Empfangsbaustein >> und ALLES IST GUT! > > Das geht aber bei digitalen Signalen nicht. ??? > Eine normale, digitale Quelle kann seltenst einen 50Ω-Abschluss > treiben. Das ist ein Problem der Dimensionierung, nicht des Schaltungs- prinzipes. > Und bei einem OC-System mit PullUp erst recht nicht. ??? Der Treiber muss bei Low einen ziemlich großen (Dauer-)Strom aufnehmen, das ist richtig. Auf diesen Nachteil hatte ich übrigens im 5. Beitrag dieser Diskussion schon hingewiesen. Auffälligerweise kann der historische 7406 einen Ausgangsstrom von 30mA aufnehmen; zusammen mit 100 Ohm Wellenwiderstand (Flach- kabel) gibt das 3V Hub...
Bei langsamen Signalen, aber schnellen Flanken, lohnt es sich über AC-Terminierung nachzudenken...
Ich danke euch recht herzlich für die vielen Antworten. Aufgrund eurer Tipps werde ich nun besser einen "normalen" push-pull Ausgang verwenden, anstatt einen open-collector. Da sich nun wegen der richtigen Wahl der Terminierung ein weiteres Problem offenbart hat, möchte ich dieses besser in einem neuen thread besprechen (sonst geriet hier alles unnötig durcheinander): [[Serienterminierung: gilt der Wellenwiderstand NUR für spezielle Adernpaare?]]
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.
