Open-Drain vs. Push-Pull: Ausgänge im Vergleich
Beide sind Ausgangsstufen für digitale Signale, unterscheiden sich aber darin, wie sie H erzeugen. Ein Push-Pull-Ausgang kombiniert einen pMOS zur Versorgung und einen nMOS zur Masse und treibt H und L aktiv über Transistoren. Er ist daher schnell, und im Ruhezustand fließt kaum Strom. Ein Open-Drain-Ausgang besitzt nur den nMOS zur Masse: L zieht er aktiv nach unten, für H trennt er den Ausgang ab und ein Pull-up-Widerstand zieht die Leitung hoch. Die Anstiegsflanke ist dadurch langsamer, aber mehrere Ausgänge lassen sich an eine Leitung anschließen (Wired-AND), und die Pull-up-Spannung ist frei wählbar. Deshalb wird er für I2C und Interrupt-Leitungen verwendet.
| Merkmal | Push-Pull-Ausgang | Open-Drain-Ausgang |
|---|---|---|
| Aufbau der Ausgangsstufe | Zwei Transistoren: pMOS zur Versorgung und nMOS zur Masse (gleiche Form wie ein CMOS-Inverter) | Nur ein nMOS zur Masse. Der Drain ist auf den Pin geführt, zur Versorgung hin gibt es nichts |
| Erzeugung von H | Der pMOS schaltet ein und verbindet den Pin mit der Versorgung | Der nMOS schaltet aus und trennt den Pin ab (hochohmig); ein externer Pull-up-Widerstand zieht ihn hoch |
| Erzeugung von L | Der nMOS schaltet ein und verbindet den Pin mit Masse | Der nMOS schaltet ein und verbindet den Pin mit Masse (gleich) |
| Anstiegsgeschwindigkeit | Schnell. Der pMOS lädt die Leitung | Langsam. Bestimmt durch die Zeitkonstante RC aus Pull-up-Widerstand R und Leitungskapazität C (z. B. etwa 0,47 µs bei 4,7 kΩ und 100 pF) |
| Abfallgeschwindigkeit | Schnell. Der nMOS entlädt die Leitung | Schnell. Der nMOS entlädt die Leitung |
| Mehrere Ausgänge an einer Leitung | Nicht möglich. Treffen H und L aufeinander, fließt ein großer Strom von der Versorgung zur Masse | Möglich. Sobald ein Ausgang L ausgibt, liegt die Leitung auf L (Wired-AND) |
| Verbindung mit Schaltungen anderer Spannung | Die H-Spannung entspricht der eigenen Versorgungsspannung. Für Schaltungen mit anderer Spannung ist ein Pegelwandler nötig | Die H-Spannung wird durch die Pull-up-Spannung bestimmt und lässt sich im Rahmen der Spannungsfestigkeit des Pins an die Gegenseite anpassen |
| Stromaufnahme | Im Ruhezustand nahezu null (nur Leckstrom). Beim Umschalten fließen Lade- und Entladeströme | Solange L ausgegeben wird, fließt dauerhaft Strom durch den Pull-up-Widerstand (etwa 0,7 mA bei 3,3 V und 4,7 kΩ) |
| Typische Geschwindigkeit | Auch einige zehn MHz und mehr möglich | Begrenzt durch Pull-up-Widerstand und Kapazität. Bei I2C z. B. 100 kHz, 400 kHz, 1 MHz |
| Typische Anwendungen | Schnelle Signale wie SPI- und UART-Signale, Takte, allgemeine GPIOs und Speicherbusse | I2C und SMBus, von mehreren Bauteilen gemeinsam genutzte Interrupt- und Reset-Leitungen, Verbindung mit Schaltungen anderer Spannung, Ansteuerung von LEDs |
Die Zahlenwerte sind typische Größenordnungen und variieren je nach Prozessgeneration und Produkt.