Wieder etwas aus der digitalen Küche ;-)
MD.jpg
Eine Multiplexer-/Demultiplexer-Schaltung - schon komplex und faszinierend
Worum geht es?
Links liegen vier Signale parallel an vier AND-Gattern an:
- A = HIGH
- B = LOW
- C = LOW
- D = LOW
Diese vier Signale sollen rechts über weitere vier AND-Gatter - getrennt - ausgegeben werden.
Der Haken an der Sache ist, dass dafür nur eine Leitung zur Verfügung steht, nämlich die über das OR-Gatter in der Mitte.
Welches Signal macht jetzt das Rennen von links nach rechts?
Denn wenn alle vier Signale gleichzeitig durch das OR-Gatter stürmen, werden auch alle vier rechts gleichzeitig angezeigt.
Aber das soll ja vermieden werden.
Die Lösung ist, die Signale nacheinander - seriell - durch das OR-Gatter laufen zu lassen.
Ein Signal nach dem anderen wird angezeigt.
Der Zustand eines Signales kann dabei nur HIGH oder LOW bzw. 1 oder 0 sein, mehr versteht die Schaltung nicht. Entweder leuchtet die zughörige Anzeige oder sie tut das nicht.
Als Bild:
Am linken Ufer eines Flusses stehen vier Personen die alle zum rechten Ufer übersetzen möchten.
Es kann aber jeweils nur eine Person über den Fluss gebracht werden.
Also einigen sich die Personen, eine nach der anderen zu übersetzen.
Als erster steigt A ein und überquert den Fluss, dann B, dann C und schließlich D.
Und in der Reihenfolge, in der sie mit der Fähre über den Fluss gefahren sind, stellen sich die vier am rechten Ufer wieder auf.
=> Parallel wird zu seriell wird wieder zu parallel.
Master und Slave flipfloppen
Für das Durchschalten der Signale A, B, C und D ist das JK-Master-Slave-Flipflop unten zuständig.
Es wird von einem Rechteckgenerator mit 5 Hz getaktet und schaltet seinen Ausgang Q in gleichen Abständen zwischen HIGH und LOW.
Damit wird, gemeinsam mit einer Direktverbindung zum Ausgang des Signalgenerators, eine Wahrheitstabelle der Reihe nach abgearbeitet, die daneben zu sehen ist.
Jedes Signal wird mit einem bestimmten Code durchgeschaltet.
- A mit 0/0
- B mit 1/0
- C mit 0/1
- D mit 1/1
Diese Codes bildet der Signalgenerator gemeinsam mit dem Flipflop.
Die Anzeigen S1 und S0 zeigen den jeweils gebildeten Code an.
Hier ist es gerade 0/0 was das Signal A von links nach rechts durchschaltet während die anderen Signale auf Warteposition sind.
Am Oszillogramm darunter sieht man den Status der drei Eingänge des AND-Gatters rechts oben, das für das Signal A zuständig ist.
Immer wenn alle drei Eingänge auf HIGH liegen, leuchtet an seinem Ausgang rechts die Anzeige.
Im Oszillogramm werden diese drei Eingänge mit HIGH angezeigt. Dort, wo der blaue und gelbe Cursor stehen.
---
Es ist nicht einfach, abstrakte Vorgänge mit Sprache so zu beschreiben, dass sie vollständig und genau wiedergegeben werden.
Ein Mathematiker ist im Vorteil, er beschreibt den Ablauf als Gleichung oder Funktion und braucht dafür nicht viele Worte ;-)
Vielleicht kann man den Multiplex-/Demultiplex-Vorgang einfacher darstellen?