Multiplexer
Übersicht
- Zweck: Der Multiplexer (MUX) ist eine Digitalkomponente, die eines von mehreren Eingangssignalen auswählt und an eine einzelne Ausgangsleitung weiterleitet. Er fungiert als digital gesteuerter Schalter, der eine von mehreren Dateneingangsleitungen zum Ausgang führt.
- Symbol: Der Multiplexer wird als rechteckiger Block mit zwei Dateneingängen (D0, D1), einem Auswahleingang (Sel) und einem einzelnen Ausgang (Y) dargestellt.
- Rolle in DigiSim.io: Der DigiSim.io-Multiplexer ist ein 2-zu-1-MUX (2:1), der anhand einer einzigen Auswahlleitung zwischen zwei Dateneingängen wählt und damit als grundlegender Datenauswahlbaustein in Digitalschaltungen dient.

Funktionsbeschreibung
Logikverhalten
Der DigiSim.io-Multiplexer ist ein 2-zu-1-MUX. Er nutzt einen einzelnen Auswahleingang (Sel), um zu bestimmen, welcher der beiden Dateneingänge (D0 oder D1) an den Ausgang (Y) durchgereicht wird. Bei Sel=0 ist Y gleich D0. Bei Sel=1 ist Y gleich D1.
Wahrheitstabelle (2-zu-1-Multiplexer):
| Sel | D0 | D1 | Y |
|---|---|---|---|
| 0 | 0 | X | 0 |
| 0 | 1 | X | 1 |
| 1 | X | 0 | 0 |
| 1 | X | 1 | 1 |
Eingänge und Ausgänge
Eingänge (3 insgesamt):
- D0 (Daten 0): 1-Bit-Dateneingang, ausgewählt bei Sel=0.
- D1 (Daten 1): 1-Bit-Dateneingang, ausgewählt bei Sel=1.
- Sel (Auswahl): 1-Bit-Steuereingang, der bestimmt, welcher Dateneingang (D0 oder D1) am Ausgang erscheint.
Ausgang (1 insgesamt):
- Y (Ausgang): 1-Bit-Ausgang, der den Wert des ausgewählten Dateneingangs widerspiegelt.
Konfigurierbare Parameter
- Laufzeitverzögerung: Die Zeit, die der Ausgang benötigt, um nach einer Auswahl- oder Eingangsänderung zu wechseln.
Visuelle Darstellung in DigiSim.io
Der Multiplexer wird als rechteckiger Block dargestellt, wobei sich die beiden Dateneingänge (D0, D1) auf einer Seite und der Auswahleingang (Sel) typischerweise unten befinden. Der Ausgang (Y) liegt auf der gegenüberliegenden Seite. In einer Schaltung zeigt die Komponente durch Farbänderungen auf den Verbindungsleitungen den aktiven Datenpfad und die Logikzustände visuell an.
Pädagogischer Wert
Schlüsselkonzepte
- Datenauswahl: Veranschaulicht das Konzept, ein Signal aus mehreren Optionen zu wählen.
- Digitales Schalten: Verdeutlicht, wie digitale Systeme Daten dynamisch leiten.
- Binäre Codierung: Zeigt, wie binäre Auswahlwerte bestimmten Datenpfaden entsprechen.
- Kombinatorische Logik: Führt ein, wie sich komplexe Logikfunktionen mit Multiplexern realisieren lassen.
Lernziele
- Verstehen, wie Multiplexer den Datenfluss in digitalen Systemen lenken.
- Lernen, wie binäre Auswahlcodes bestimmen, welcher Eingang zum Ausgang geleitet wird.
- Die Rolle von Multiplexern beim Aufbau größerer digitaler Systeme erkennen.
- Multiplexer zur Implementierung verschiedener kombinatorischer Logikfunktionen einsetzen.
- Erfassen, wie Multiplexer in bestimmten Schaltungsentwürfen die Bauelementezahl reduzieren können.
Anwendungsbeispiele/Szenarien
- Datenauswahl: Auswahl einer von mehreren Datenquellen zur Verarbeitung.
- Bus-Systeme: Steuerung, welches Gerät Zugriff auf einen gemeinsamen Datenbus erhält.
- Logikimplementierung: Realisierung jeder beliebigen kombinatorischen Logikfunktion mithilfe eines Multiplexers mit Konstanten und Variablen als Eingängen.
- Parallel-zu-Seriell-Wandlung: Sequenzielle Auswahl von Bits aus einem Paralleleingang.
- Speichersysteme: Adressierung und Auswahl bestimmter Speicherzellen oder Wörter.
Technische Hinweise
- Es besteht eine Beziehung zwischen der Anzahl der Auswahlleitungen (S) und der Anzahl der Dateneingänge (I): 2^S = I. Beispielsweise verwendet der DigiSim.io-2-zu-1-Multiplexer 1 Auswahlleitung, um zwischen 2 Dateneingängen zu wählen.
- Durch Kaskadierung mehrerer Multiplexer lassen sich größere Multiplexer bilden. Beispielsweise lässt sich aus zwei 4:1-Multiplexern und einem 2:1-Multiplexer ein 8:1-Multiplexer aufbauen.
- Multiplexer können mit Demultiplexern kombiniert werden, um bidirektionale Datenleitsysteme zu schaffen.
- In physischen Implementierungen können Multiplexer während Übergängen der Auswahlleitung kurze Ausgangsglitches aufweisen.
Eigenschaften
- Kanalanzahl: Beschrieben als N:1 (z. B. 2:1, 4:1, 8:1, 16:1)
- Auswahlleitungen: log₂(N) Auswahleingänge zur Auswahl unter N Dateneingängen
- Laufzeitverzögerung: Zeitdifferenz zwischen Eingangsänderung und stabilem Ausgang
- Fan-Out: Anzahl der Logikgatter, die getrieben werden können
- Stromverbrauch: Steigt typischerweise mit der Kanalanzahl
- Aktivierungssteuerung: Manche Multiplexer enthalten einen Aktivierungseingang
- Datenbreite: Kann 1-Bit oder mehrbittig sein (Bus-Multiplexer)
- Glitch-Immunität: Eigenschaft, transiente Fehlausgaben während Übergängen zu vermeiden
Arten von Multiplexern
Binäre Multiplexer
- 2:1 (1 Auswahlleitung)
- 4:1 (2 Auswahlleitungen)
- 8:1 (3 Auswahlleitungen)
- 16:1 (4 Auswahlleitungen)
Bus-Multiplexer
- Verarbeiten mehrere Bits parallel
- Übliche Breiten: 4-Bit, 8-Bit, 16-Bit, 32-Bit
Analoge Multiplexer
- Schalten analoge Signale
- Erhalten die Signalintegrität bei niedrigem Widerstand im eingeschalteten Zustand
Baum-Multiplexer
- Aufgebaut durch Kaskadierung kleinerer Multiplexer
- Werden für großmaßstäbliche Implementierungen verwendet
Bidirektionale Multiplexer
- Erlauben den Signalfluss in beide Richtungen
- Werden in bidirektionalen Bussen verwendet
Anwendungen
Datenauswahl und -führung
- Auswahl zwischen mehreren Datenquellen
- Speicheradressmultiplexen in DRAM
- Bus-Arbitrierung in Computersystemen
Kommunikationssysteme
- Zeitmultiplexen (TDM) zur Kanalteilung
- Leitungswahl in der Telekommunikation
- Anwendungen für Netzwerkvermittlung
Logikimplementierung
- Implementierung boolescher Funktionen
- Lookup-Tabellen (LUTs) in FPGAs
- Programmierbare Logik-Arrays
Test und Debugging
- Signalabgriff und -überwachung
- Auswahl von Testpunkten
- Routing diagnostischer Signale
Arithmetische Schaltungen
- ALU-Funktionsauswahl
- Bedingte Operationen
- Bitmanipulationsfunktionen
Steuerungssysteme
- Auswahl des Betriebsmodus
- Konfiguration von Signalpfaden
- Implementierung von Zustandsmaschinen
Implementierung
Multiplexer können implementiert werden mit:
Elementaren Logikgattern
- AND-, OR- und NOT-Gattern
- Transmissionsgattern
Integrierten Schaltungen
- 74xx-Serie:
- 74157: Vierfach-2:1-Multiplexer
- 74153: Doppelter 4:1-Multiplexer
- 74151: 8:1-Multiplexer
- 74150: 16:1-Multiplexer
- 74xx-Serie:
Auf Transistorebene
- CMOS-Pass-Transistoren
- Transmissionsgatter
- Tri-State-Puffer
HDL-Entwürfe (Verilog/VHDL)
- Case-Anweisungen
- Bedingte Zuweisungen
- Parametrisierte Designs
Schaltungsimplementierung (2:1-MUX)
Ein einfacher 2:1-Multiplexer kann mit elementaren Logikgattern realisiert werden:
AND-OR-Gatter-Implementierung
graph LR
Input0[Input I0] --> AndGate0[AND Gate]
SelectS[Select S] --> NotGate[NOT Gate]
NotGate --> AndGate0
Input1[Input I1] --> AndGate1[AND Gate]
SelectS --> AndGate1
AndGate0 --> OrGate[OR Gate]
AndGate1 --> OrGate
OrGate --> OutputY[Output]
Transmissionsgatter-Implementierung
graph LR
Input0[Input I0] --> TransGate0[Transmission Gate 0]
Input1[Input I1] --> TransGate1[Transmission Gate 1]
TransGate0 --> OutputY[Output]
TransGate1 --> OutputY
SelectS[Select S] --> TransGate1
SelectS --> NotGate[NOT Gate]
NotGate --> TransGate0
Verwandte Komponenten
- Demultiplexer: Führen die Umkehroperation aus (1-zu-N-Routing)
- Codierer: Wandeln mehrere Eingangsleitungen in Binärcode um
- Decodierer: Wandeln Binärcode in mehrere Ausgangsleitungen um
- Bus-Transceiver: Bidirektionale Datenübertragung mit Richtungssteuerung
- Selektoren: Ähnlich wie Multiplexer, jedoch mit anderer Steuerlogik
- Crossbar-Schalter: Gitter aus Multiplexern für flexible Verbindungen
- Prioritätscodierer: Wählen den Eingang mit der höchsten Priorität aus
- Digitale Schalter: Elektronische Pendants zu mechanischen Schaltern
- Multiplexer-Bäume: Kaskadierte Multiplexer für eine große Eingangsanzahl
- Programmierbare Logik-Arrays: Verwenden Multiplexer als Bausteine